Предыдущий: https://2ch.hk/pr/res/685932.htmlПринимаются изменения в шапку треда в виде пулл-реквестов:https://github.com/meoweg/2ch-pr-rubyКак показывать код:Быстро - https://pastebin.comС исполнением - https://ideone.comТребуется аккаунт GitHub - https://gist.github.comFAQ:1. C чего мне начать, чтобы стать рубистом?Отличным началом будет Programming Ruby (The Pragmatic Programmers Guide), читать Eloquent Ruby и The Well Grounded Rubyist после прочтения первой толку особо не даст, одни и теже вещи, дальше читаем Ruby Way, затем познаем метапрограммирование с Metaprogramming Ruby. А дальше открываем Ruby cookbook 2015 года, Пишем свой код во время чтения.Следующий уровень, продвинутые книги по руби:Confident Ruby by Avdi GrimmPractical Object-Oriented Design in RubyRefactoring Ruby EditionRuby Under a Microscope для любителей залезть под капот.Документация по стандартным библиотекам http://ruby-doc.org/Можно пройти руби онлайн - http://tryruby.org/levels/1/challenges/0И ещё раз онлайн: http://www.codewars.com/?language=ruby Не веришь в свои силы? Прочитал уже книжек много и силы свои хочешь познать, сделай - http://rubykoans.comИ вот еще https://rubymonk.com/ - Матц одобряет.2. Какой gem посмотреть, чтобы понять, как писать код?Лучше всего посмотреть небольшие gem'ы вроде cancancan, pundit, camping.А еще можешь полистать на гитхабе гемы с нарастающей популярностю.https://github.com/trending?l=rubyТам еще нет тысяч строк, и тебе будет легче понять.3. Есть ли GUI для руби?Да. Есть обвязки к Qt, GTK, wxWidgets, Shoes, fxruby (одобренный). Впрочем, писать приложение с GUI на серверной технологии - плохая идея.4. Можно ли писать на руби мобильное ПО?Да. Для iOS есть RubyMotion терпимого качества, для Android - лагающий и падающий, но всеми силами развивающийся ruboto. Для WinPhone до сих пор ничего не завезли.5. Как установить разные версии рубей?Легко и просто: https://github.com/sstephenson/rbenvИ это тоже, легко и просто: https://rvm.io6. Что почитать по рельсам?http://guides.rubyonrails.orghttp://ruby.railstutorial.orgAPI: http://api.rubyonrails.orgПрекрасные туториалы в стиле for dummies - http://www.theodinproject.com/ruby-on-rails , а вот тут все тоже, но на русском http://codenamecrud.ru/Классический вводный туториал, где делается с нуля клон твиттера, для новичков в rails самое то - https://www.railstutorial.org/bookДля дотошных читателей есть The Rails 4 Way.7. Хорошие практики по руби и рельсам?Читаем Rails AntiPatterns, смотрим Rails Best Practices, также неплохо посмотреть Rails Recipes.Почитайте еще Grimm A. - Objects on RailsЕще продвинутое чтиво - http://tutorials.jumpstartlab.com/8. Ruby/Rails блоги, рассылки и твитторыIRC каналы на FreeNode: #ruby, #ruby-core, #RubyOnRails, #rails (не очень активен).Твитторы @rails, @dhh, @yukihiro_matz, @wycats, @tenderloveРассылки ruby-core, rails-core, rails-talkПодкасты:- http://rubyrogues.com- http://ruby5.envylabs.comСкринкасты:- http://railscasts.com- https://peepcode.com- https://www.destroyallsoftware.com- http://railsforzombies.comБлоги:- rubyflow.com - каждый день новости, новые библиотеки, обновления, все дела.- rubysource.com - читаем интервью, хорошие практики, и безумные сравнения упоротого дибила-индуса на самом деле их пропускаем- rubyinside.com - новости, туториалы.- rubyweekly.com- http://37signals.com/svn- http://yehudakatz.com- http://afreshcup.com9. Я не могу в английский, что делать, анон?Идти учить английский, без него тут делать нечего.10. Есть ли у руби русское коммьюнити?Нет. Вернее есть, но оно протухло и там полно людей у которых чсв высоко.Яркий пример - [email protected]А еще есть русская слак конфа - https://invite-me-to-2chpr.herokuapp.com/ она общая, но есть очень активный руби канал.Так же русская гугл группа, активная - https://groups.google.com/forum/#!forum/ror2ruЕще вот - https://onrails.club/11. Какие гемы стоит знать?capybara, rack, rspec, devise, cancancan, simple_form, solr, sinatra, тысячи их.Поиск гемов https://www.ruby-toolbox.com12. Зачем нужны тесты и как их писать?http://rusrails.ru/a-guide-to-testing-rails-applicationshttp://habrahabr.ru/post/163597/Вместо этого можно прочитать классную книгу Everyday Rails Testing13. Где можно задать глупые и не очень вопросы?- здесь- stackoverflow.com- тематические slack-конфы- а вообще, гугли, с вероятностью в 90% ответ на твой вопрос уже висит на stackoverflow.14. Как фокнуть\сделать фичу\исправить баг, сложно ли это?Нет, не сложно. На rubyflow появляется много новостей с реализацией новой библиотеки, вы можете сделать тесты, фичу для него, старые либы также обрастают багами, улучшайте их! пишите код.15. В чём писать код?Atom, Brackets, Sublime Text, TextMate, Vim, GNU Emacs. Для особо упоротых энтерпрайз-макак есть rubymine, плагины к эклипс и нетбинс.16. Можно ли писать на руби с под windows?Можно, но придется обрасти костылями в виде виртуальной машины, придется сходу разбираться с Vagrant и многим другим. Чем дальше ты продвигаешься, тем ближе становится ясно, что пора перекатываться на linux/mac17. Руби язык одного фреймворка?Есть еще Sinatra, Hanami (ранее Lotus), Volt, Grape, отличные штуки для DevOps - Chef, Puppet и годные генераторы для бложиков - Jekyll, Middleman, всё это активно используется в продакшене18. Можно ли делать игры на Ruby?Можно, но не нужно. Гем Gosu.19. Ютуб каналыYoutube driven development...Вот тебе пара каналов, но никому не говори что учишься по видео.https://www.youtube.com/channel/UCIQmhQxCvLHRr3Beku77tww/videoshttps://www.youtube.com/channel/UCfWZwsP8trUy5uHJg8gcGIQhttps://www.youtube.com/channel/UCSI77lJlzlCFPLdV1RSAoYQhttps://www.youtube.com/channel/UCPIyDzf1vwWc8EQJGUX-vYw - тут на ру$$ком даже.20. Как и где искать работу?Легко и просто - http://rubyjobs.ru/Не так просто - https://upwork.com/Еще вконтакте есть группы по руби/рельсам, там иногда постят вакансии. Еще в русской гугл группе постят вакансии. Новичку будет сложно, но возможно.TODO лист для ньюфагов:И так, ты поставил руби, уже сгенерировал свой первый проект rails new pidarasНачни уже с платинового пути, блог >> клон твиттера >> своя имейджборда >> свой гем >> дальше сам придумаешь.Рекомендации:1. Для блога, создать роли, Админ, Пользователь (можно использовать паттерн form object). Прикрутить лайки, комментарии.2. По твиттеру, следуя гайду Хартла, пиши все то что он предлагает в качестве доп. заданий, например оповещение по нику (@eblan: привет)3. По имиджборде: воссоздать по возможности полный функционал, в этом случае придется ознакомится с javascript/jquery/coffeescript, но тебе так или иначе придется. Еще хорошей фичей будет использование background job и крон тасков (sidekiq, whenever), чтобы заполнять свою борду тредами и постами с другой борды, можно использовать api двача, чтобы вытягивать треды и посты - https://github.com/ID25/api_2ch4. Не стесняемся постить свои репозитории, наши эксперты с радостью отревьювят вас.После этого тебе будут нужны паттерны, без них твой код превратится в говно. Впрочем, с ними тоже превратится. Один из часто используемых - Service Object.https://netguru.co/blog/service-objects-in-rails-will-help - о сервисахЕще паттернов - https://robots.thoughtbot.com/back-to-basics-solidНо самый читаемый код, как и следовало ожидать, даёт функциональное программирование. Начни отсюда:http://www.sitepoint.com/functional-programming-techniques-with-ruby-part-i/http://www.sitepoint.com/functional-programming-techniques-with-ruby-part-ii/http://www.sitepoint.com/functional-programming-techniques-with-ruby-part-iii/http://www.sitepoint.com/functional-programming-pure-functions/http://www.sitepoint.com/functional-programming-ruby-value-objects/Только не переборщи. Руби - не функциональный язык, и иногда такой код может работать медленней.Прочитал? Теперь рефактори то, что уже написал. И не забывай покрывать тестами.Хорошим финалом будет деплой, это пожалуй самое болезненное, и ничего общего с деплоем на heroku, где тыц тыц и готово. Придется поковыряться со смежными вещами и узнать много нового, уже устоявшийся гем для таких дел - Capistrano.Не забывайте спрашивать у анонасов вопросы, код лучше показывать через gist или pastebin с подсветочкой.Ну, а мы открываем очередной Ruby Thread.
стрёк
Рубаны, учу Руби, уже стоит переходить на рельсы, если я уже могу в алгоритмы, классы и синтаксис? Обучаюсь по шапке треда, сейчас дочитываю Ruby Way.И еще вопрос, я плохо читаю чужой код, как подтянуть такой ценный навык?
ебать такие тряпки. хуею с этих белых людейhttps://gist.github.com/wojtekmach/c54d8e25de4cccbcf6450087084f362c
>>714508Надо было по-нашему - нахуй послать сразу, забиться на Петровско-Разумовской, конструктивно пояснить по ебалу за гнилой базар. ЭЛИКСИР СИЛА
>>714554почему в зк нет треда по елексиру, всем похуй?
>>714496синатру первой попробуй. она довольно простая.
>>714496взять небольшой гем с гитхаба (поищи, их ебаные тыщи, уж какой нибудь интересный найдешь), поиграйся. авось функционал полезный добавишь.
Что это блять за магическая компания, и каких эльфов они ищут на 500 евро в день??
Аноны, а как в раби сделать джойн выборок базы данных?
>>714604в рельсовом ActiveRecord? http://api.rubyonrails.org/classes/ActiveRecord/QueryMethods.html#method-i-joinsСоветую для упрощения запросов ActiveRecord юзать squeel. Если не зависишь от ActiveRecord, используй Sequel, он заебатый.
Перенес проект в виртуалке из папки с автоматической синхронизацией виртуалбокса, в папку с ручным деплоем. + 200% к скорости тестов, и порядка 300% ускорение рельсов в dev окружении.Охуеть.
>>714587Дай ссыль на вакансю, плз
>>714645http://www.bullhornreach.com/job/2218996_senior-ruby-on-rails-developer-500-per-day-leeds-leeds-united-kingdomудачи братюнь.
>>714559есть тред по ерлангу, все шизики там
>>714508>The Elixir community has still not recognized Canonical Model problems as the root cause of most of their woes in Rails. Furthermore, it has not started to embrace the event-centric and event stream-centric approach to architecture that at once eliminates the possibility for Canonical Model to crop up (even unintentionally), and leverages OTP for its intended strengths.все правильно мужик сказал, поддерживаю
>>715253Может и правильно, но на личности не надо было переходить - будто это как-то поможет. Опенсорс же, возьми и захуячь правильно, хули выебываться.
>>715253>пок кукарек нимагли как рельсах сделать кококясно, как по мне наоборот, чем меньше в элихире от рубей, тем лучше
>>715537Там и так от них нихуя кроме do-end.
Кто имел дело с Capybara+PhantomJS (адаптер Poltergeist)? Почему она упорно 1 из 10 запросов не хочет выполнять синхронно? Логинюсь на Фейсбук, а на следующей команде оказываюсь незалогинен? Таймаут увеличивал в разы.
>>715537Чому не просто эрланг тогда?
>>715905За форс эрланга не платят
>>715833как дебагил? скриншоты делал?Если, че, добавь в spec/supportmodule WaitForAjax def wait_for_ajax Timeout.timeout(Capybara.default_max_wait_time) do loop until finished_all_ajax_requests? end end def finished_all_ajax_requests? page.evaluate_script('jQuery.active').zero? endendRSpec.configure do |config| config.include WaitForAjax, type: :featureendи юзай в тестах.
В проекте используется сторонний API. Чтобы тестировать код, я создал фейковое приложение на синатре, шлю запросы к нему вот так:>config.before(:each) { stub_request(:any, /api.com/).to_rack(FakeAPI) }Проблема заключается в том, что в продакшене ответ будет чистым JSON, а в тестовом окружении это JSON, завёрнутый в Rack::MockResponse, плюс хедеры etc. Естественно, весь код любезно заточен под один тип ответа.Никак не соображу, куда и как вставить костыль, чтобы унифицировать данные.
>>716074>используется сторонний API. Чтобы тестировать код, я создал фейковое приложение на синатреПоехавший? VCR же есть
>>716090Это пройденный этап, VCR не подходит
>>716093Хуёво проходил, попробуй ещё раз.
>>716105Я понимаю твое желание помочь, но вопрос был о другом.
>>716125Для начала ты пояснишь почему тебе не подходит очевидное, а потом мы, возможно, начнём тратить свои мозговые ресурсы.
>>716074https://github.com/bblimke/webmock
>>715537>ясно, как по мне наоборот, чем меньше в элихире от рубей, тем лучшея хуй знает что тебе ясно стало, но там с точностью наоборот, он жаловался что вместо нормальной современной архитектуры хосе пилит клон рельсов на эрланге, повторяя ошибки рэилс-комьюнити
>>716222И какие в рельсах ошибки? То чтотам нет ивент драйвен архитектуры?
>>716297но ивент-дривен сосёт, в илонге/элихире как раз не инвент-дривен, ивент-дривен - это нода/твистед/ивентмашин
>>716297Эктиврекорд. Убогие хелперы. Отсутствие view models.
>>716297Манки патчинг. Монолитная архитектура.
>>714554скажи эрланг вм круто!
>>716446Скажи пример не монолитного фреймворка? Микросервисов можно и на рельсах наебашить.
>>716812Садись на миллион потоков сразу.
Анон, поясни за маштабирование. Вот есть amazon и beanstalk. Хочу туда залить свое приложение. Не совсем понимаю концепцию работы с ним. Посмотрим на картинку - примерно так я представляю архитектуру проекта. Вот у нас есть ngnix, который работает с http запросами, http-кеширование вот это всё. Так же есть App сервер с puma и рельсами, собственно само предложение. Amazon вежливо предлагает обернуть приложение в beanstalk - легко задеплоить, масштабирование из коробки и вот это всё. То есть как бы puma преднастроена и сама все круто сделает. Остались web сервера, которые я не знаю, как размещать. Просто запилить обычные инстансы и настроить там кеширование и т.д.? Или их тоже можно куда-нибудь завернуть?Олсо, я не знаю куда воткнуть сервер memcached. Где он должен быть в идеале?Также есть проблема с размещением API сервера. У него два назначения. 1. Отдавать обычным пользователям контент (как на харкаче json формат) + принимать какие-нибудь post запросы. 2. Работа с БД для внутреннего приложения, которое не доступно из-вне. В итоге я решил пользовательский функционал оставить в приложении, а для внутреннего сервиса запилить личный API сервер, который будет использоваться внутри облака 2-3 приложениями. Однако я не знаю куда его воткнуть.
>>716955причем здесь микросервисы? нужна нормальная модульная архитектура.
>>716977Я не знаю, бамп что ли.
Рельсовики, а вы только рельсами и занимаетесь? Никогда не возникало желания заняться серьёзным программированием, а не крудошлепствовать на рельсах, которые ближе к CMS, чем к фреймворку?
>>717162> рельсах, которые ближе к CMS,Да ты, смотрю, неплохо разбираешься!
>>717168Рельсы, джанго и подобное - это скорее готовая CMS, которую нужно обмазать под себя. К программированию это имеет мало отношения.
>>717172Я и говорю, здорово шаришь! Молодец!
>>717172зарепортил пехепешника.
Сап аноны! В общем я нубас 22lvl, программировать вообще не умею, только хеллоу ворд на паскале в школе запускал. Решил изучать язык с нуля, не могу определится - что для меня лучше - ява или руби? Сфера применения ввиду того что всё равно стартовать с нуля - безразлична. Т.е. что мобильные платформы, что фронтэнд, что бэкэнд - без разницы. Ну разве что 3дэ-игори и драйвера точно не планируются.Основные критерии - максимально быстро вкатиться в уровень джуна, и потом максимально быстро дорасти до хорошего уровня зп. Желательно с вариантами работать по удаленке - не хиккан, но схема "утро роллтон метро офис" - вгоняет в депрессию. Руби вроде подходит под эти критерии лучше, но смущает то, что рабочих вакансий мало и так же мало обучающих материалов и проч. Ну и "это же скриптовый говноязык, то ли дело си-подобные боги"Прошу ссаными тряпками не гнать, маней не обзывать - мне главное определиться что изучать, а там понять - моё это или не моё. Готов к тяжелому труду работы над собой, осознаю что легким путь не будет.Что скажете?
>>717239Джава. И выйди из треда.
>>717239Жава и руби неудачные варианты для новичка. Языки сложные, возможностей мало, работы тоже мало, а на каждую вакансию десяток макак. Сейчас каждый школьник учит жаву или раби, а потом не знает что делать с ними. Лучше попробуй Haskell. На нём и конкуренция пониже, и зарплаты больше, и сам язык понятней. В Sublime Text как раз есть режим для него. По книгам. Если есть хоть немного знаний программирования, читай это: http://www.ozon.ru/context/detail/id/30425643/ Если совсем новичок, пойдет эта книга: http://www.ozon.ru/context/detail/id/28346038/ Ну и куча онлайн-учебников. Вот, например: https://anton-k.github.io/ru-haskell-book/book/home.html Хороший учебник, всё расписано подробно. Сам по нему учился. Рекомендую.
>>717227Иди лечись, если везде пхпшники мерещатся. Особенно учитывая, что рабирельсы имеет гораздо больше общего с пхп, чем другие языки.
>>716977Что, котаны, совсем никаких идей?
>>717249Толсто и баянисто.
>>716977Бампусик.
>>717249На самом деле да. Я когда изучал руби всё больше осознавал, что он ещё больше пехепе, чем сам пехепе.
>>717778А какова ПДК у пехепе? И где чистый найти?
>>716977Ну хуй знает анончик, похоже ты один среди нас такой йоба архитектор. И вопрос скорее общий чем конкретно по рельсам. Надо найти слак, гиттер где тусуются такие же. Если найдешь, кино ссылочку сюда, мне тоже интересно почитать что они пишут. Но к сожалению на твой вопрос мне ответить нечего.
Тред умер вместе с языком?
вопрос, у меня есть сущность в activerecord, я вывожу все записи со всеми параметрами, получается большая таблица. Как сделать так чтобы можно было нажать кнопку фильтр на этой же странице что бы все отфильтровалось по определенным параметрам и остались только нужные записи, и без перезагрузки страницы?
>>720617AJAXJAX
>>720629Спасибо, а где найти хороший и простой пример? И почему сажа
>>720617RANSACKRANSACK
>>720647спасибо за помощь.
Начал недавно изучать руби/рельсы - внезапно повернулся фриланс на html ccs js + пришлось накатать маленький скрипт на пхп. Вот думаю, а может и остаться? Какие перспективы у руби, он рили умирает?
>>720771умирает, уходи в пхп
>>720771да нихуя он не умирает, как же вы заебали.я джуниором нашел работу за 1 день на реддите.150-300$ в неделю, опыт 3 года, на гитхабе шаром покати.
>>720921Да ты неудачник. Я за час нашёл работу на дваче. 500$ в неделю стабильно. Опыта нет, из проектов - только визитка для себя.
>>721073
>>721074Рассказывай историю успеха
>>721074что за платежка?
>>721098уже в паре тредов писал же
>>721074Я и говорю - неудачник.
>>721073>на дваче.Где на дваче искать работку? В воркаче штоле, лол?
>>721337Нет, в программаче иногда мелькают предложения. Некоторые прямо в тред нужного языка пишут, некоторые свой тред создают, который быстро трут.
>>721346Эйчары сидят на двощах? Ну это вообще пушка.
>>721254ну рассказывай историю успеха, хуле.
>>721350Сижу как то в /б/, проигрываю с пикч с говном. Вдруг смотрю, новый тред. В нём какой то эйчар крупной компании (не буду называть, деанон), жаловался, как мало рельсокодеров. Говорит уже зарплату в три раза поднял, согласился на дополнительные премии и удаленку, а никто не идёт, кругом одни пхпшники. Ну я ему отписал, что могу поработать, скинул почту. Он мне отписал, обещал чуть ли не отсосать и отдать мне девственность его первой дочери, если я соглашусь поработать. Я зарплату выпросил побольше. Ну он мне дал задание, сказал выбирать подход и гемы самому, лишь бы работало. В начале недели он мне присылает список заданий, в основном простые. Я их за пару дней делаю и в конце недели отправляю готовый код, а он присылает деньги. По компании - аутсорсовая компания на шведов, продажи одной узкоспециализированной дорогой хуйни.
>>721352Атвичаешь на свой рот?
>>721355я тебе атвичаю, но не отвечаю
>>721352А сейчас он ищет рабов?
>>721352Пиздец, каждый раз захожу в пр, а тут такой манямирок цветет и благоухает. три года занимаюсь программированием еще ни копейки этим говном не заработал
>>721372Пока штат укомплектован, но если будут места, я отпишу в тред.
>>721352т.е. тебе похуй, что чел на тебе зарабытывает раз в 5 больше + у тебя социалки и нихуя нет.
Посоны, возьмите кто-нибудь к себе на полставочки. Я сеньор 15 лет в кодинге, 8 лет в вебе, 3 года в рельсах. Разумеется, знаю всевозможную сопроводительную парашу. Могу чатиться по-английски.Все проекты под NDA, портфолио нет. Чтобы доказать свою состоятельность, готов поработать за еду пару недель.[email protected]
БЛЯ, АНОН ПОЯСНИ ЗА МАШТАБИРОВАНИЕЯ тут сейчас уже охуею. Нет, я не пилю суппет твиттер с охуенной пропускной способностью. Пока просто интересуюсь, как реализовать все это в теории. Вот анон, есть приложение на рельсах. В нем фрагментное кеширование - первая стратегия.Потом предположим есть memcached, который кеширует http запросы. По логике вещей. Я делаю как? Приходит запрос -> он идет на баланс нагрузки.Баланс нагрузки отправаяет его на один из серверов, где крутится ngnix. Он смотрит в кеше, есть ли совпадающий результат. Если нет, то отправляет запрос к серверам, на которых крутится puma + rails приложение. И оно выполняет. Все верно?
>>721385>чел на тебе зарабытывает раз в 5 большеНачальник зарабатывает на работнике в 5 раз больше, заказчик зарабатывает на начальнике в 10 раз больше, чиновник получает с заказчика в 15 раз больше, а депутат имеет их всех. Ты что, предлагаешь мне бросить работу потому, что кто-то зарабатывает больше меня?>социалки и нихуя нетМне хватает. Социалку и подобное я могу себе позволить сам. А касательно опыта и легальности - две волшебные буквы: ИП.
>>721420Бля, ахуительное резюме, пожалуй скопирую его.
>>721420>Все проекты под NDAДвачую братиш, я тоже помогал гуглу разрабатывать поисковик, писал ядро Windows у Microsoft, а по вечерам делал социалочки Цукербергу и Дурову. Просто всё под NDA, поэтому доказать не могу.
>>721424Вот нахуй ты об этом думаешь? Сначала запусти потом когда будет лежать проект будешь думать, все это можно сделать разными методами но тебе это нафиг не нужно
>>721424>отправляет запрос к серверам, на которых крутится puma + rails приложениеТы написал почему-то rails вместо go.
>>721352скилы какие у тебя? какие задания дают?
>>721439Блядь, вот когда ляжет, как-то думать не хочется. Все же сейчас хочется теорию изучить. >>721442А какие проблемы?
>>721352скинь пример заданий плз, чтоб знать какие бабки требовать с заказчиков
>>721445Пили свой Двач и запускай, потом думать будешь https://www.digitalocean.com/community/tutorials/how-to-scale-ruby-on-rails-applications-across-multiple-droplets-part-1https://www.nateberkopec.com/2015/07/29/scaling-ruby-apps-to-1000-rpm.html
>>721618Во. Уже какие-то понятные вещи. На самом деле в целом я концепцию уловил. Только сейчас столкнулся с тем, что не совсем понимаю, как в инфраструктуре Amazon развернуть этот проект. Сервера приложения можно завернуть в beanstalk и там маштабирование из коробки. А вот куда запихнуть ngnix - без понятия.
>>721787Амазон дорогой и голимый, лучше узай DOА вообще есть OVH которому нет конкурентовПочитай о Docker
>>721822У меня просто только на Amazon есть куча денег для тестов. Поэтому выбирать не приходится.
Вообще для 1000 и более запросов есть куда более легкие фрейсворки, нежели rails, например sinatra.
>>721973Собственно, Синатра превосходит рельсы почти по всем параметрам. Но у Синатры есть один фатальный недостаток - быдлу её выучить гораздо сложней, чем зазубрить одинаковые действия в рельсах и повторять их. Рельсы - это просто триумф манки-патча, неудивительно, что быдлу так нравится.
>>722030пиздуй писать твиттер на синатре, посмотрим как быстро ты изобретешь рельсы... а нет, не изобретешь, ибо слишком тупой.
>>722041Рельсодебил думает, что все задачи заключаются в написании твиттеров.
>>721973>писать хайлоад на руби
>>722064нужно понимать пределы того или иного инструмента. Сейчас админку пишут на rails/pg оттуда выгружают, скажем в redis/mongo и раздают чем-то более легковесным.
Как обратиться к определённой строке в файле? Чтобы до этого не проходить все строки. Ну, допустим, я знаю номер строки, которая мне нужна. Как мне к ней обратиться?!
>>722163Только если ты знаешь длины всех строк в файле. Тогда можно прочитать нужные байты по смещению, которое нужно рассчитать. Да, так делают. Придумай свой формат, работай с оглавлением, угорай по байтоёбству.Файлы не хранятся на диске как массивы строк. Файлы хранятся тупо как последовательность байт.Ну и ещё вспомним, что utf8 - ебанутая кодировка с переменным количеством байт (в общем случае) на символ.
>>722163Штатными средствами руби этого никак не сделать, лучшее что можно предложить, это лишь читать файл (File.open и .gets/.readline; вместо File.read) до тех пор пока не будет получена нужная строка и сразу прекратить чтение.Или пилить своё расширение на сишке для чтения нужного смещения в файле.>>722180Норм кодировка, не гони. Всяко лучше богомерзких cp1251, koi8-r и прочих iso. Все минусы для программистов с лихвой искупаются плюсами для всего мирового сообщества.
>>722381IO#seekIO#binreadИ String#unpack для распаковки ёба-бинарных структур.
>>722387Оу, буду знать. Правда тут нужно знать не номер строки, а номер символа из начала строки и номер последнего символа строки.>>722163А какая у тебя вообще задача? )))
>>722381>Норм кодировка>переменная длина символа
>>722456Мыши против сыра, пользователи интернета против возможности забыть о ебле с кодировками ._.Я это к тому что ничего лучше UTF-8 нет, а с кодировками должны ебаться мы (разработчики), чтобы этого потом не делали энд юзвери.
>>722495на самом деле чечня[/spoier] UTF-8 крутоно эта переменная длина символа в байтах в неожиданных местах вылезает боком (см. семитские языки, модификаторы слева-направо + подгон под ширину экрана)
test
>>722573>но эта переменная длина символа в байтах в неожиданных местах вылезает боком В каких неожиданных местах? Если ты работаешь с текстом с известной кодировкой или технологией в которой по стандарту используется UTF-8, то неожиданных мест у тебя нет.>см. семитские языки, модификаторы слева-направоНу вот опять жиды-рептилоиды виноваты!>подгон под ширину экранаМеняешь лоджик на работу с символами, а не байтами и всё.
Для чего используют eventmachine?
>>722951EventMachine is an event-driven I/O and lightweight concurrency library for Ruby. It provides event-driven I/O using the Reactor pattern, much like JBoss Netty, Apache MINA, Python's Twisted, Node.js, libevent and libev.EventMachine is designed to simultaneously meet two key needs:Extremely high scalability, performance and stability for the most demanding production environments.An API that eliminates the complexities of high-performance threaded network programming, allowing engineers to concentrate on their application logic.
>>722951Если совсем тупой https://habrahabr.ru/post/106809/
>>722951хотел бы уточнить при каких нагрузках и условиях приходилось применять ивент-машину?
>>722682>жидытащемта я арабский имел в виду в основном>Меняешь лоджик на работу с символами,ладноhttp://appleinsider.com/articles/15/05/26/bug-in-ios-notifications-handling-crashes-iphones-with-a-simple-text
>>722994>жиды>тащемта я арабский имел в виду в основномодна семитская группа, что с них взять?
У меня в проекте ебаная куча nested форм, я уже заебался трахаться с cocoon и accepts_nested. че делать?
>>723080Прекратить усложнять предметную область. А вообще фронтовать и CQRS-ить вместо серверного рендеринга форм и ебли с моделями.
>>723086я бы рад, но придумываю поеботу эту не я, а заказчик
>>722979>>722983Это я, само собой, читал. Только все равно непонятно. Ну веб-сервера там, тот же thin, еще faye знаю, на нем работает. А куда еще его засунуть можно?>>722987Да.
>>723130Очень классно отправлять пользователям всякие нотификации и обновления данных в реальном времени. Если же вместо вебсокетов долбить бэкэнд поллингом, сервер ляжет уже при сотне онлайна.Если заморочиться, можно ещё и принимать с клиента данные и обрабатывать на бэке. Аутентификации из коробки нет, нихуя нет, ведь твой EM\Faye сервер - это по сути отдельный скрипт вообще, самостоятельный и без рельсоокружения. Хотя для Faye есть джем faye-rails, который предоставляет какую-то интеграцию, но я не пробовал.А в пятых рельсах вон сделали ActionCable. Вполне себе симпатичный такой код выходит, и код выполняется в контексте рельсоприложения без танцев с бубном. Т. е. хорошо сделали, годно, можно юзать не парясь особо. Реализация использует потоки, т. е. это не самая эффективная реализация, но зато можно писать код не парясь по поводу асинхронного цирка (как если бы писать на EM\faye). И по бенчмаркам вполне сносно работает - для запредельного хайлоада не подходит, но потребности 99% сайтов вполне удовлетворит - держит порядка нескольких тысяч подключений. Есть ньюансы для задротов... https://blog.ably.io/rails-5-actioncable-the-good-and-bad-parts-1b56c3b31404
>>723138Кстати этот ActionCable все на ноде сделан или они его на Руби переписали? я понмю раньше в релсах нода была мима давно на говно рельсах не ездил
>>714587Обычная контрактная работа. Просто обычно контрактникам не платят всякие соцпакеты и подобную поеботу, поэтому твои 120к в год резко теряют пару десятков процентов на налогах, страховках, етц. Но если ты живучий русский Иван и тебе это нахуй не нужно, можешь нихуя не платить и получать свои 500 фунтов в день.а ещё контрактники обычно не имеют карьерного роста и контракты максимум на год, которые могут ещё и в любой момент разорвать без каких-либо обязательств, карочи такое
>>723156Открыл ссылку ок через Redis’ Pub/Sub
>>722994>apple>bug-in-ios-notifications-handling-crashes-iphones-with-a-simple-textНу баг и что? Все данные нужно проверять. Ты же пытаешься защититься от SQL-иньекций проверяя ввод пользователя, так и здесь. Такая же ситуация со всякими игровыми консолями, которые ломают картинками(!), потому что в bsd'шной libpng(tiff/gif) лежит древний баг, который никто не чинит.Сделали тяп-ляп и потом исправили, дело-то житейское. Стандарт UTF-8 это благо.
>>723259Ну-ка, ролл.
>>723353>Higher/lower, heads/tailsНепонел.
>>723156>я понмю раньше в релсах нода была для минификаторов жи
>>723259>Ты же пытаешься защититься от SQL-иньекций проверяя ввод пользователя,нит рельсо магия меня и так защитит
>>723355тип игра в монетку, в угадай число
>>723361Напиши простой like на AR. Магии мало, надо ещё знать как.
>>723259roll
Посоны, а почему руби-тред такойф мертвый? Я рельсы учу, неужели зря?
>>724653Ты опоздал на год.
>>724654У тебя ХАЙП ПРОШЁЛ опять? Не перестаю проигрывать.
>>724678хайп в каждом новом треде проходит лол, пока будут хомяки учиться только по Хартлу, то работы будет овердахуя.
>>724733Хартл же крут разве нет?Как раз его собирался сейчас пройти, а ты меня опечалил анон.Что же делать?
>>724733>Рабисты верят, что если несколько раз повторить, что работы много, то работы правда станет много. Главное почаще повторять.
Играем в игру "Найди раби среди десяти самых востребованных технологий". Он даже у ПЕРЛА соснул.
>>724772Для всех этих языков не могут найти программистов, вот и всё))) Труп няшечкиперла насилуют только в яндексе каком-нибудь и букингкоме.
>>724812Тащемта главный юзер перла - НАСА.
>>724772Что за наркоманию ты сюда принес?Иди посмотри на indeed или upwork
>>724815Интересно что в роскосмосе юзают и евро/джапокосмосах тоже.
ебать, почитал комменты на реддите, совсем говенные жуниоры требуют 25$/h
>>725354это для тех кто живет в US, попробуй потребуй такой рейт и скажи что ты хохол.
>>725373вот им ли не похуй? лишь бы работу сделал.
>>725538Представь, что ты CEO, а к тебе приходит обоссаный чурка и просит ЗП 100к рублей. Да, он внезапно демонстрирует навыки крепкого рельсо-миддла. Но это ЧУРКА, БЛЯДЬ. КАКИЕ 100К НАХУЙ. ПОШЁЛ ВОН, ПОШЁЛ ВОН!..
>>725579Это пидорашенский манямир, на самом деле там немного другие мотивы.
>>725582
>>725579> Да, он внезапно демонстрирует навыки крепкого рельсо-миддла. Тогда это же не чурка.
>>725582Это украинский манямир, в Рашке расизма нет (не считая кучки поехавших скинхедов, с которыми жестко борются).
>>725877>украинский манямирКстати, какого хуя он проскакивает в треде. И сюда тянут свою политхуйню.
Объясните что требуется. Единственные заваленные тесты. Что есть Environment Variable? Это та, что в массиве ENV и отдельном файле? Ибо если да -- я сделал это, так как именно из этого массива скрипт берёт ссылки и ключ апи.http://pastebin.com/qBu3xWSj
>>725898Вот что пишут:http://pastebin.com/7a5e2hsR
>>725898>>725900Блядь, я мечтаю чтобы все вендоблядки сдохли к хуям собачим в муках и боли, суки. Какие вы тупорылые мрази всё таки.
>>726079Даааа. Поскорее бы.
Бля. Анон. Поясни за бизнес логику. Что она из себя представляет. Все время слышу, что её отделяют и обновляют и кококо. Что это из себя вообще представляет?Вот вот есть у меня crud приложение. Добавляет записи. Например, складывает значения первой и второй колонки, затем заносит в третью. Это уже бизнес логика? А как её отделяют? Создают отдельный класс, который это делает или как?
>>727139Да, начни тупо пилить классы на каждый экшен. В контроллере у тебя останется обработка параметров, рендеринг результата и, возможно, редиректы. Всё что между этим - бизнес-логика.Спустя время ты войдёшь во вкус и начнёшь понимать, как это всё грамотно организовывать.Классы "операций" получаются хорошо тестируемые, повторно используемые, а также их можно друг с другом комбинировать. Кто-то называет это "сервисы", кто-то "юзкейсы". Кто-то именует такие классы глаголами, типа CreateUser (кстати, збс идея, мне очень импонирует). У нас в проектах мы называем "операции".Есть даже микрофреймворки для организации таких классов. https://github.com/markets/awesome-ruby#abstraction Вот в этой секции есть парочка, а также релейтед джемы.Фреймворк trailblazer вообще полностью посвящён этой методологии. (И не только этой, но слой классов-экшенов там централен).
>>727139Ну, по хорошему, модели должны быть плоскими как сиськи твоей девушки, и иметь в себе лишь логику сохранения данных. Даже валидации выносят из моделей, если они сложные. Сложение выносишь в какой нибудь сервисный объект, и вызываешь оттуда model.create с уже посчитаннымии Полями. Представьте, что рельсы - это способ доставки, один из многих. Сегодня ты юзаешь rails, а завтра переедаешь другой объект с тем же интерфейс от в сервисный объект, допустим сохранение в текстовый файл. Полиморфизм жи.Попробуй gem reform для начала, поможет с формами разобраться, если сложные.Я тебе завтра кучу ссылок скину, как домой пРиду, по теме.
Да, хорошее замечание - там где раньше в тестах тебе приходилось бы стать в базу данных, ты сможешь играться с сервизными объектами. На сложных проектах ускорить можно очень сильно.
И еще почитай про 7 способ рефракторинга толстый моделей
Пацаны, а для чего Руби вообще используется? Чем рельсы отличаются от просто Руби?
>>727142Эта хрень называется CQRS.http://blog.byndyu.ru/2014/07/command-and-query-responsibility.html
>>727283Ну и сервис-обджекты конечно, куда без них. Туда я кладу всякие калькуляторы и т.п. - всё что без побочных эффектов.
Есть одна модель, и к ней надо прикрутить две связи has_one, которые указывают на одну и ту же модель. Что-то типа:http://pastebin.com/RZaNmWj2Как это сделать? Как написать миграцию? Я пытаюсь. В роутах невероятный ужас получается: http://pastebin.com/eiDfisVR который идет в контроллер Shoe и распидорасивает методы create и updateЧую, что есть кошерный путь. Наведите на мысль. Полиморфность не подходит, там одна модель belongs_to разным. А у меня одна модель дважды belongs_to одной.
>>727908class_name: 'Shoe'быстрофикс
Вышел Ruby 2.3.1rvm install ruby 2.3.1
>>727908>>727911STI единственное решение?
>>727908какое нахуй STI, просто делаешь class_name: 'bla', foreign_key: :bla_id
>>728228Как миграцию написать?
>>728245Я за то, чтобы ты написал её хорошо.
>>725579к тебе приходил чурка на собес?
>>714375 (OP)Js, Python, Ruby? На данный момент всего знаю на базовом уровне.Куда лучше углубляться для заработка программированием?
>>729066очевидно jsразвелось же вас
>>729066конечно JS!мне тут конкуренты не нужны.
>>729070>>729228Аргументы? Или вы пизданули ради того чтоб пздануть на самоподдуве?
>>729394платят за них практически одинаково, но на жсе тебе ждет куда большее количество головной боли и баттхерт.хз насчет других стран, но в сшашке начальная зарплата джуниора руби - 60-70к в год. Ниже - зашквар.
>>729526>джуниора руби - 60-70к в годДа, а ещё отсосут на собеседовании! Это деньги миддла, и то 70 уже высоковато. Ниже 50 зашквар вот, и он предназначен для тех самых джуниоров. Но на самом деле все эти космические цифры из американского манямира не работают нигде, кроме как там. Во вне ты будешь в лучшем случае получать 40 миддлом, а 50 и выше - это уже ебать сеньор.
https://docs.google.com/forms/d/1FrfcZtTDCzyiCQjT9Y0YSYNtH5WLhNRuImw9vRwFGm4/viewformрейт анкету на риелс погроммиста.Про "Помимо MVC я использовал паттерны, которые сделали мою жизнь легче" вопрос вообще пушка. Что за buzzwords? пояснитеМою жизнь уже ничего легче не сделает, с тех пор как я стал динамопетушком, зачем на больное давить-то.
>>729637Не хватает поля "Желаемая зарплата".
>>729637google slomalsya?https://ru.wikipedia.org/wiki/Модные_слова
>>729603я говорю о калифорнии, нью йорке, бостоне, сиэттле - т.е. богатых местах.
>>729603это если на контрактную работу с американскими заказчиками не идти, а сосать задешево у европейцев.
>>729676Так и я тоже не о техасском ранчо говорю. Редко кто ищет джуниоров за такие деньги.>>729681Ещё б кто взял. Сказали: разговорный хуевый и теперь ты нинужен, хотя думали, что раз грамотно пишешь, то и говоришь так же. Другие так вообще не отвечают даже не предложения. Трустори, пойду "сосать".
Аноны, вообще похуй какой линукс? Или нужен определенный? Расскажите, няши :з
>>729996бери убунту в виртуалку через вагрант, не ошибешься. в сети куча готовых конфигов. или скачай превью виндоус 10, где линукс встроен.
>>729997Спасибо тебе, няшечка. Добра
>>730000рекомендую еще сверху обмазаться docker/ansible
>>729997Он ещё не встроен.
>>730283уже выпускали превью
>>729637"Masha pila sok".split.map(&:size).reverse.reduce(:)Что им даст ответ на последний вопрос?
>>730352reduce(&:звездочка звездочка)макаба сожрала кусок моего кода.
>>730352Ну ты круче зделал.Я сначала массив в переменную забил, потом сохранил результат acc = array.pop.length И итерировал с reverse, сохраняя в acc значение acc word.lengthпоэтому мне не напишут
>>730352Тебе тоже не напишут, потому что reverse!
>>730377Зачем мне мутировать что то? Тем более я проверил заранее и результат совпадает.>>730367Хуя ты все переусложнил. Ты кстати к ним в офис хочешь? Сколько у тебя опыт в руби и вообще в программировании?
>>730483>Зачем мне мутировать что то?А зачем создавать новый объект зря?
>>730367Ебать ты даун
>>730483>>730499https://repl.it/CLOu/0Кстати, моя реализация быстрее на ~40%. Так вот, икспертики.
>>730556Ты на этом ничего не сэкономишь, наркоман. Не говоря уж о том, что меришь неправильно, надо через bmbm.
>>730567Лан, сорри, пожалуй, ты прав.Хотя при увеличении итераций таки мой метод немного быстрее. Если же итераций мало и строки более-менее длинные, то одинаково.
Нужна помощь.Допустим, у меня есть гем (Rails Engine), где мне надо создать несколько презентеров (обычные PORO). Я вижу несколько вариантов как это организовать:1. Как в рельсах: app/presenters/my_gem/user_presenter.rb и класс MyGem::UserPresenter2. В гем раз: lib/my_gem/presenters/user_presenter.rb и класс MyGem::UserPresenter3. В гем два: lib/my_gem/presenters/user.rb и класс MyGem::Presenters::UserКак, на ваш взгляд, лучше сделать?
>>7311543
как во вьюхе показать пробел на новой строке? Вот например 1 2у меня получается 12Короче говоря как сделать чтобы трифорс был правильный?
>>731438nbsp
Есть два не стула, не варианта выбора - Руби и РНР.Что их них следует выбрать, чтобы как можно быстрее вкатиться во фриланс за еду? Работа в офисе не интересует - живу в лютой мухосрани и переездов пока не планирую.Сам в программировании не полный ноль, раньше довольно много писал на питоне, ну и инглиш знаю хорошо. Не знаю, в какой тред писать, поэтому не обессудьте.
>>731560PHP. Научись темы на вордпресс натягивать и вперед.
>>731564Ну чтобы натягивать шаблоны на cms даже школота способна
>>731568Ты не поверишь...
>>731587Я умею натягивать шаблоны на быдлопрессы, если ты об этом
Дискас.
>>731689Синтаксис языка поприятнее. И на питоне нет рельс кококо джанга кудах кудах, НО НЕТА вообще вся скриптопараша по сути похожая.
>>731560С руби на фриланс хуй вкатишься. С руби вообще хуй куда вкатишься в 2016.Лучше иди жс учи, React Native и Electron, например.
>>731690неудачник, че.
>>731690серьезно, блять. джуниоров не хватает, спамьте на джобспоттинге, линкедине, реддите, просто ЗАГУГЛИТЕ RAILS JOBSкококо работы нету. вам бы только на пехапе, неосиляторы
>>731694Но я осилятор, а у тебя детектор сломан, мелкобуквенный еблан. Пишу 4 года на рельсах и вообще в вебе лет 10 уже. Просто уходи.
>>731695тогда чего говоришь, что работы нету? руби постоянно в десятке самых популярных языков.или тебе нужен ХАЙП? Он у рельс прошел, и слава богу.он сейчас у жаваскрипта, адок с ебаной кучей приходяще-уходящих библиотек и системами сборки
>>731696Ты - мелкобуквенный, к таким доверия и уважения нет.
>>731697аргументный аргумент. пришел на двачи ради грамматики.
>>731691>С руби вообще хуй куда вкатишься в 2016.АРГУМЕНТИРУЙ
>>731690Дискас.
>>714375 (OP)Ruby/RoR тред и ни слова про CoC (convention over configuration). Краеугольный камень это.
>>731738Ruby magic (CoC) versus Python’s explicitness.
>>731738>>731720>>731739https://bernardopires.com/2014/03/rails-vs-django-an-in-depth-technical-comparison/
>>731720Единственное что я отрывочно слышал, так что питоноебы говорят что у них там развитый хайлоад, дохера всяких гайдов а на рубях нельзя.Не знаю мифы это или правда, недостаточно знаний
>>731801Возможно это просто питонохайп так влияет.
>>731801>развитый хайлоадОтчасти>дохера всяких гайдовНет*питон-пидор8
>>731719>>731695Две диаметральные противоположности в треде. Ну и кому верить?
>>731803Я помню писал раньше не питоне. Тоже какие-то отрывочные знание.Но очень очень нехватало bundle и gem из коробки, единствено что я помню.Все это хождение по сайтом, скачивание инсталеров всяких библиотек, особенно на windows просто бесило. Там уже что нибудь удобное завезли?
>>731805Лол нет.Ну впринципе если привыкнуть к этому говну, то довольно удобно становится. на ноль делю, даПлюс я не знаю как с рубином, но в питоне вкатываться на работу достаточно тяжело.
>>731808Ну вот что дейсвтиетльно не завезли.Ну вот я накачал этих wishmaster.exe у меня скрипт работает. Посылаю по почте скрипт, у заказчика не работат.Мне нужно ещё интсрукцию приложить, где все эти wishmaster.exe скачать, чтобы заработало?
>>731812Ну или объяснить как эти костыли запускатьбтв решил к вам в руби вкатиться, пожелайте мне удачи и веселого говнокода
>>731560пиши на питоне, задрал
>>731560На PHP гораздол легче найти работу за еду, уровня джумлы, вордпреса и прочих битрисков. Но тебе это работа не понравиться.
>>731855>понравится
@работы на рельсах нетhttps://news.ycombinator.com/item?id=11405239CTRL+F rails
>>732058>107 результатовЧто сказать-то хотел?
>>732079работы на рельсах докуя.
>>732058Там всего несколько позиций с возможностью удалённой работы.А на биржах фриланса тысячи открытых вакансий рельсовиков.
>>732085>>732090Так получается, что тут один семенящий дибил форсит про работы-нет на руби?
>>732090Хех, на каких биржах?
>>732141Fl.ru
>>732145взлольнул
КАК С НИМ РАБОТАТЬ?Опишите в двух словах. Или дайте ссылку на пример.
>>732236vk = VokntakteApi::Client.new(token)user_data = vk.users.get(user_id = 1)[0]puts user_data['first_name'] + ' ' + user_data['last_name']#=> Павел Дуров
>>732252>vk.users.get(user_id = 1)Бля, на питоне писал недавно. Конечно:vk.users.get(user_id: 1)
>>715954Спасибо за ответ. Только сейчас заметил. Как проверю - отпишу, помогло или нет.
>>716445>ЭктиврекордНе пользуйся. Альтернативы: ROM, паттерн репозиторий.>Убогие хелперыНе пользуйся>Отсутствие view models.Есть. Гем Draper.>>716446>Манки патчинг.Чем плохо в контексте крупного фреймворка?>Монолитная архитектура.Создай свою архитектуру. Придётся написать много кода и надо немного знать внутренности рельс. Но в итоге кода всё равно будет меньше, чем на других фреймворках.
>>732256Ты так все интересно расписал, нет ли у тебя ссылок на подробнее почитать про эту архитектуру выше?
>>732252>>732253А библиотеки надо подключать какие-то?
Как выучить английский на уровне понятия книги?Я ньюфаг, опыта программирования практически нет (только базовые знания что такое переменная, словарь, массив и т.д).
>>732266>опыта программирования практически нет>английский не знаешьВсё очень плохо. Я например с дипломом погромиста и хуевым знанием английского. Читаю доки, но медленно. В айти так и не вошел, хотя некоторое время работал.
>>732266Пиздуй к репетитору английского, если есть деньги. Если нет - самообразование.И вообще зря ты сразу в руби пошел, если до этого не кодил.
>>732256>паттерн репозиторий.Разве это не функциональный паттерн? Удобно ли с будет с ним жить в ООП среде?
>>732266>берешь>и учишь
>>732256лол, покажи мне адаптеры популярных библиотек к rom или sequel. хз где ты работаешь, но мне не позволяют стать астронавтом архитектуры.
>>732256и драпер это ебаное кривое говно, которое ломается как копейка. загляни в исходный код - оно на соплях, криво висит привязанное к рельсам
>>732366Двачую, да и декораторы в логике вывода нахрен не нужны, одна путаница от них. Лучше просто тупые хелперы использовать, без побочных эффектов.
>>732314А куда лучше всего?
>>732497Lingualeo.
>>732365>>732366>>732373
Посоны, хочу сделать полную сепарацию Rails и FrontEnd.То есть отдельный проект с RailsAPI и отдельный проект с каким нибудь хипстерским JS-фронтентдом. Делается это для того чтобы делать несколько(неопредленное количество) сайтов на разных доменах и хостингах, которые в целом имеют одинаковые функионал, но разные роут, дизайн, сео. А так же чтобы не плодить на каждом хостинге по инстансу сервера котоорая будет жрать память, деньги за хостинг, синхронизацией данных между друг другом и т.п.В целом хочу один ёба хостинг с рельсами и куча всяких говнохостингов, которые возможно даже PHP не воспринмют, на которых лежит html+js+css, которые соеденяется по REST API с главным.Просто опыта такого нет, фремворков JS не знаю вообще(кроме жеквери), когда смотрю на список этих фреймворков просто не понимаю что из них можно выбрать, что говно, что нет, что поддерживает, что нет.
надоел пхп, захотелось поковырять руби. Что на нем можно написать? браузерную игру можно написать или проще на жс будет? одни и те же гостевухи шлепать как-то остоебало.
>>733044Ты можешь это сделать и без хипстерских js фреймворков. http://guides.rubyonrails.org/engines.html
>>732497Если хочешь просто поиграться - то возможно pascal. Если же нет - тогда мб питон, тут хуй знает.
>>733085Это все равно система с бэкндом, у меня задача полнстью отделенный фронтенд, способный работать на хостинге вообще без серверного языка.
бля, я фшоке, читаю документацию. в чем смысл ваших рубей? все то же самое, как в пхп, только функции по-другому названы. вообще ахуеть.
>>733168зарепортил толстого.
>>733168Руби придумали умные люди, которым надоело конкурировать с Рафой в пхп. Основная задача рубиста - найти лоха, который поверит в революционность и необходимость этой замечательной технологии.
>>733044Спасибо что сообщил нам. Держи нас в курсе.
>>733177Хех, спасибо что сообщил что ты в курсе. Держи в курсе, что ты в курсе, няш:3
>>733044Бери любой новомодный ангуляр, а в рельсах отдавай данные json. Для четвертых рельс https://github.com/rails-api/rails-apiА в пятых можно будет сгенерировать API-приложение из коробки.
>>733201ну нахуй ангуляр, опять перепишут с нуля без совместимости.
>>733201А ангуляр же может вообще без бекенда жить, включа роутинг страниц и прочее?
Месяц-два назад в /pr появлялся рубист, который предлагал в своём треде помощь вкатывающимся. Накидал задачек, примерный план обучения и скинул его в виде gist'а. Я запомнил, что у него на гитхабе в качестве аватара джин синий. Есть у кого списочек тех заданий?
>>733229https://2ch.hk/pr/arch/2016-02-19/res/659661.html0 секунд поиска
>>733231Спасибо, я искал по слову ruby и ничего не нашёл.
>>733220да. SPA же
>>733235SPA != без бэкэнда
>>733232https://www.google.ru/search?&q=site:2ch.hk%2Fpr+ruby+gistВот так нашел
>>733236в его случае ==.
>>733175ну я так и понял. поэтому и учу, кстати. пока что там все как в уи фреймворке - модели, контроллеры генерируются.
>>733261>уи
>>733262ЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮИИИИИИ
>>733261ЮИ ФРЕЙМВОРК АБСОЛЮТНАЯ КОПИЯ РЕЛЬСОВ ТОЛЬКО БЕЗ РУБИМАГИИ и RUBYTOOLBOXОТ PHP МАГИИ ХОЧЕТСЯ БЛЕВАТЬ
>>733262пхп магия это когда все работает через пизду и колено?
>>733270То есть если убрать миллионов гемов, а руби заменить на пхп, получится УЮ ФРЕЙМВОРК, где конечно же нужно велосипедить на каждый чих
>>733272PHP МАГИЯ ЭТО КОГДА<?php ?>?>?>?><?php <?php ?>?><?php <?php ?>?><?php <?php ?>?><?php <?php ?>?><?php <?php >?>?><?php <?php ?>?><?php <?php ?>?><?php <?php >?>?><?php <?php ?>?><?php <?php ?>?><?php <?php php <?php ?>?><?php <?php ?>?><?php <?php >?>?><?php <?php ?>?><?php <?php ?>?><?php <?php >?>?><?php <?php ?>?><?php <?php ?>?><?php <?php >?>?><?
>>733273Не знаю как в Yii, но в Rails миллион гемов из-за разбивки на эти самые миллион гемов, модульность и другая культура разработки.Если убрать гемы и юйки, то у руби останется няшная рубимагия, а у PHP набор багов заложенных ещё на ранних стадиях разработки языка. Незакрытый тег "<?php" яркий пример.
>>733168бля, я фшоке, ебу бабу. в чем смысл ваших баб? все то же самое, как и в мужиках, только хуй не торчит. вообще ахуеть.
>>733267Итт пхпблядки даже не знают, как правильно произносится их любимый говнофреймворк.http://www.yiiframework.com/forum/index.php/topic/1031-how-to-correctly-pronounce-yii/
Не "йии", не "юи", не "уи".А "и".Ии фреймворк.Лол, блядь. И фреймворк нахуй. Пиздос блядь. Просто пиздос.Потому что автор - ебаный китаец-шизофреник.А код внутри - говно. Я изучал и допиливал его в своё время. Это ад и погибель.
>>733279Не знаю что за баг, но современные бест практисы наоборот говорят, что нахрен не нужно его закрывать, настраивайте нормально конфиги. Отчего пхп конечно же не перестает быть говном
>>733371бест практисы для пхп как фантик вокруг говна.
>>733371Лол, так я говорю про незакрытость тега "<?php". Зачем открывающий тег если нет закрывающего, выкинули бы и начальный тогда уж.Бест-практисы PHP это борьба с совершенно нелепыми багами. И это не от конфигов зависит (ну может можно конфигами поправить, но это отдельный пиздец, конфиг_ини, лол)
>>733352Не китаец, а бурят.
Не слышал про баги в пхп, просто синтаксис и конструкции языка какие-то уебищные.
>>733486Ну тут скорее не баги даже, а плохая проработка архитектуры языка и самого интерпретатора.
>>733486фрактал плохого дизайна.свг
>>733218будто что-то другое не перепишут
>>732099>Так получается, что тут один семенящий дибил форсит про работы-нет на руби?получается тут один семенящий дибил форсит про то что работа есть
>>732099>>733819А вы не один человек случаем? В каждом треде один говорит, что работы нет, другой спрашивает про семёна.
>>733821тоже вариант
Рельсаны, поясните долбоебу за колбекиИмеем класс со следующей ботвой.before_save :grow_penisprivatedef grow_penis unless self.penis_size > 25 self.save else self.destroy endendкак правильно заставить коллбек before_save не сейвить модель без её удаления?
>>733863Во-первых, коллбэки говно и не нужны, во-вторых, используй правильный коллбэк before_create и возвращай в нем false, чтоб не сохранять. А если хочешь удалить всех с "неправильными" членами - просто выполни соответствующий запрос один раз. В-третьих, никогда не пиши unless-else.
>>733889Ещё проще - захуячь валидацию длины члена и не еби моск с колбасками.
>>733889>>733891Спасибо за ответы.А можно пояснить за неиспользование 'unless-else' ?
>>733896Самому-то мозг не рвёт эта конструкция: если не-не-больше 25, то?
>>733897не рвёт, я на русский не перевожу это в голове, а на английском норм
>>733925На английском тоже хуйня тащемта. Норм когда там нет else.
>>733925Вау, логика начала зависеть от языка.
>>734037Так ты сам к языку конструкцию свел, лалка. Еще и перевел неправильно.Правильнее такЕсли ложно, что член больше 25, тоТвое "если не-не-больше 25, то" в коде так выглядит: if !( !( penis_size > 25 ))что действительно не очень для понимания.
before_save :grow_penisprivatedef grow_penisfalse if self.penis_size <= 25end
>>734146
>>734144>Если ложно, что член больше 25, тоЭто просто unless, а не unless-else. Людям проще думать положительными условиями, потому что они без дополнительных слов работают. Если член, то 1, иначе 2, а не "Если ложно, что член". Это как негативы смотреть, вместо фотографий, вроде понятно, а всё равно какая-то хуйня.Если ложно, что член больше 25, то вырасти член, а иначе, если не-ложно, что член больше 25...[/b] Давайте так не жить, короче.
>>734144«if !( !( penis_size > 25 ))» — это конечно дичь, но имхо unless это как-то уже слишком сахарно. Хотя может сказывается мой опыт начального знания паскаля и си.
>>734165
>>734471
>>734473Люблю картинки как на 4 ветвёртой, стена текста в растре, с длинющими строками чтобы уж точно пришлось увеличивать и елозить мышкой по столу.
>>734483Engineers suck cockЧто тут непонятного?
>>734486Ну это американская/гейропейская специфика.Не виноваты же мы что когда общество имеет денег хоть жопой жуй, у них возникают затруднения с определением собственного пола и ориентации.
>>734500Нет. Мем пошёл из-за того, что среди инженеров очень мало женщин.Anyone who still believes in the meme only has to look at a biology classroom. It smells of old unused pussy.Math is at 50% female, so is physics, chem, etc.The only place where there are relatively no females in engineering, where they make up a solid 10% but that has reason.You know that thing about pulling your pants down in prison to signal that you are open to get fucked in the ass? Majoring in engineering is literally the same thing, but for college students. Women just recognize the gay men club engineering is and step aside, but of course, the really big fucking sluts can't help but include themselves in the neverending ass fucking so they make up that 10% of women hoping that one day an engineer will mistake them for a guy and fuck them too.What is true, according to the regressive left, is that being female is no longer 'enough' minority status. I mean, you need to at least be gay.
>>734533Нет и приводит пасту на английском языке. Я прям не знаю, честное слово, дьюд, ватафак? Просто признай, что это западная специфика.
>>734543Я думал тут все англицкий знают.
>>734545Бля, ты прикидываешься или просто не хочешь замечать очевидное?
>>734551Инженегры сосут хуйцы. Тут всё понятно.
>>734562Понятно.
как c помощью paperclip хранить в 1 поле ИЛИ файл любого типа, ИЛИ Картинку, которую потом нужно ужать? (в зависимости от условия)
>>734582бля, ну никто?(
>>734582Никак. Разные вещи. Даже если так можно, то не нужно.
Еще по гостевухе на питоноджанге и жавахибернете сделать и можно будет говорить, что я на все лапы вебмакака.А вообще я вот я учу дохуя всего и делаю какие-то вещи для себя, так я когда перечисляю все это и говорю, что нет опыта коммерческой разработке, но есть какие-то мелкие поделки на перечисленных вещах, то все почему-то так удивляются и не верят. Это нормально?
>>734653можно, уже сделал. has_attachment :file, styles: lamdba { |file| file.shit? { thumb: '100x100#'} : {} }
Киньте какой-нибудь хороший пример с pundit/enum, хотя бы с 2 покрытыми policy контроллерами.
>>735046щито?rspec-pundit-matchers.
>>734655>А вообще я вот я учу дохуя всего и делаю какие-то вещи для себя, так я когда перечисляю все это и говорю, что нет опыта коммерческой разработке, но есть какие-то мелкие поделки на перечисленных вещах, то все почему-то так удивляются и не верят. Это нормально?Предложение звучит как набор оправданий для себя и для других, даже через двач видно. Заказчику в целом все равно какие ты там переделки умеешь использовать, ему скучно это слушать в целом, ему нужно знать что ты сможешь сделать результат который принесет ему прибыль, а то что у тебя там полон гитхаб переделок законченных на 5%, но очень интересных, это хорошо, но не прибыльно. Когда спрашивают про коммерческую разраобтку, спрашивают, знаешь ли ты про сроки, планирование, поддержку, и все остальное.
>>735191я даже не знаю, как можно сделать проект коммерческим. заделать что-то типа платной системы отзывов с базой данных на моем серваке? но это же надо дохуя за бд платить. в голове у меня только крутятся вещи, которые можно делать в рамках хобби - всякие там гостевухи и браузерки, но их на хлеб не намажешь. я не оправдываюсь, просто я наверное тупой, медленный или от жизни отстал. все-таки кодинг - это уже больше для шустрых мальчиков-хипстеров из больших городов, которые ваяют что-то свое в перерывах между игрой в дотку. я в эту картину не вписываюсь.
>>735240Законченный проект, это коммерчески успешный проект.Посмотри на nginx например, Сысоев в опенсорсе его допилил и бесплатно выложил и ему всё равно денег предложили.В твоём случае ты должен сделать в своей репе законченный проект, с хорошим README.md, чтобы в нём были значки о прохождении тестов и сборки и некая документация. Короче всё как в лучших домах европы.Коммерческий человек не может посмотреть в код и разобраться какой-ты охуенный, а вот на README.md посмотрит с интересом и там должна быть конфетка.
>>735354Ну да, мне кажется 90% опенсорса никогда не дорастут до nginx, ведь нет дяди, который стоит и подгоняет сроками и quality test. Люди останавливаются, когда попенсорс не приносит удовольствия, приятные фичи закончились, осталась ебля.
>>735405Ну я говорил скорее про портфолио, в роли которого обычно выступает опенсорс для своих разработчиков.
>>735354Но ведь этот законченный проект тоже не будет коммерческим. Таких высот, как написание своего сервера мне все равно не достигнуть. А очередную гостевуху или браузерку вряд ли кто-то оценит. А других идей у меня все равно нет. Да и надоело уже писать всякое говно и выкладывать на гитхаб, прям как бомж с протянутой рукой трачу свое время годами: нуууу возьмииитеее ну плиииз. Нормальные чуваки создают такие проекты, на которые быдло само тянется и умоляет взять деньги, чтобы им попользоваться. надо какую-то голден идею, хуй знает.
>>735430Я считаю тут нужно сразу понять кому ты себя продаёшь. Крутой охуенный проект это для конечных пользователей.А тебе как начинающему разработчику, надо продавать себя работодателю, которому прежде всего нужен компетентный человек, готовый работать как профессионал.Именно поэтому у тебя должен быть гитхаб с твоим самописным блогом, где человек работодателя сможет взглянуть на твой код, оформление и проработку ридмишки, коммиты (их атомарность и осмысленность) — тогда проверяющий скажет, этот человек начинающий, но видно что не валенок и знает как и с чем работать.В живописи есть такая фигня, которая отличат картину от наброска. Набросок может быть нарисован красками, проработан, но с какими-то отогнутыми углами холста (или о ужас просто листа). А картина же будет на идеально ровном холсте, а лучше в рамке, как законченное произведение.Баклана у которого в коде охуенный код, а в ридми «Readme supposed to be here...» очень часто с работой прокатят. Мир поменялся за прошедшие десять лет, у индустрии появились стандарты, стайлгайды и прочая муть, а я ведь просто хотел писать видеоигры, а не решать задачки матановые.
Парни, я тут совсем новенький. Допустим, мне надо сделать красивый сайтец, а к нему бэк на рельсах. Так вот, можно, чтобы мне фрилансер сделал сайт, а я уже к нему запилил бэк?
>>735439Можно, в самом простом случае тебе надо будет дать деньги и получить html/css/js файлики. Можешь поискать исполнителя знакомого с рельсой, который будет верстать и собирать под всякие less/sass/haml и прочие фронт-проессоры для рельсы.
>>735443Ага, отлично. Меня первый вариант устраивает, я сам учу рельсу, хочу запилить кое-что.
>>735444http://jsonapi.org/
Ребята, проведем небольшой опрос? Возраст? 20 Местоположение Рашка Сколько времени знакомы с рельсами? Пошел 4й год. Сколько времени работаете, используя рельсы? (за бабло т.е.)? 3й месяц Какой часовой рейт/зарплата? 15$, 20 часов в неделю Куда планируете свалить? США, флорида/джорджия/южная калифорния.
>>735450Мало что понял, благодарю в любом случае.>>73545517ДС3 дня, а так я андроид макака(2 года)4 месяца(опять же, андроид)25к в месяц за 1-2 часа в суткиСША, Канада, Франция
>>735463спасибо.бля, забыл добавить - кто/откуда заказчик?
>>735464Знакомый из конфы разработчиков.
>>735465Из дс. Опять обосрался.
Вкатываюсь в рельсы, делая ёба сервис.Задумался, вот, что лучше - скаффолдинг и потом допиливать его, или модели с контроллерами отдельно генерить и на них уже всё что надо вешать?
Рубиисты!Есть ли сейчас смысол заниматься конкретно рельсами? Какая сейчас востребованность этой технологии? Если, например, я хочу свалить за бугор, найду ли я там себе пристанище со своими рубями?
>>735761Да.
>>735782Но мне почему-то кажется, что руби подыхает полегоньку
>>735722Зависит от задачи
>>735822Да. Еще пара лет и его заменят хаскелем в элитных проектах, а гостевухи будут делать на джаваскрипте и голанге.
>>735849Ну например, скаффолдить можно то, что подлежит редактированию пользователем. (таблицу статей, пользователей, категорий). ВОт ещё... связную таблицу для has_many :through (что бы связать категории с материалом например) через g migration делать? Модель же не нужна под неё?
>>735455>возраст21>местоположение Страна без газа, Крыма и Донбасса>сколько времени знакомы с рельсами?Немного, был раньше питон-адептом>Сколько времени работаете, используя рельсы? (за бабло т.е.)?Еще не работаю>Куда планируете свалить?Планирую выпиливаться, а не сваливать куда-то
https://rubyheroes.com/heroes/2016Просто торжество феминотолерастии.
>>736249А хотя там одна Акира затесалась, мимикрируя, лол. Возможно, отбой тревоги тогда.
>>736249 >>736255Не твоя — вот ты и бесишься!
>>736249Чет проиграл с этих тянок с репами с 0 звездами.
О, боже, как же я завидую рубистам!0) Симпатичные ретро end, заместо вечно просирающихся отступов1) Статические методы без костылей2) @, @@ и т.д.3) Крутые разделители в виде ::4) Тернарий ? : , святое дерьмо иисуса, как же я люблю этот оператор!мимо-питонист-со-стажем
>>736432>0) Симпатичные ретро end, заместо вечно просирающихся отступовХуйня. Скобки читаемее портянок из эндов.>1) Статические методы без костылейНорм.>2) @, @@ и т.д.Норм.>3) Крутые разделители в виде ::Хуйня.>4) Тернарий ? : , святое дерьмо иисуса, как же я люблю этот оператор!Нечитаемая хуйня. В своем коде нормально, чужой еод с этим говном нечитаем.
>>736470Он про скобки ничего не говорил, он в принципе сравнивал. Чё ты как валенок себя ведёшь.
Что лучше, использовать инстансные переменные как есть (@hui, @pizda) или задавать их в attr_accessor под private?Какие подводные камни?
[1, 2, 3].map(&:-@)
>>736549Картинка явно зашоплена, синего и рыжего там не могло быть.
>>736470
>>736643нахуй ты сюда минифай засунул, ещё влупи байткод для большей жести.
>>736249>второй квартал 2016 года>все места занятыЛел.Кстати, за что они туда попадают-то? За написание очередной очень нужной книжки "рабе длйа детеий" и хэловорлд на гитхабе?
>>736655За вагину между ног, что ты как маленький.
>>736658>вагину между ног
>>736663Да, она похожа на вачовских.Заподозрил что-то не то.
>>736663Так я не понял. Значет это бывший жирный мужик, который сделал операцию и стал жирной телкой, при этом он ещё теперь он ещё топит за феминизм.
>>736669таких дофига в ойти последнее время
>>736663 >>736666 >>736669А чё вам трансгендерный феминизм не нравится?Ватники дофига, флюродросите Путину В.В.?????У американцев анусы разбиты, а у вас дороги — сами подумайте кому хуже живётся.
>>736688Всем похуй на чужие анусы, горит от ебаного форса этого мусора. Тот(та) же Коралайн – не пишет нихуя, но "кококо я погроммистКА" и работает в житхабе просто по тому, что форсила эту хуйню.В опенсорсе теперь есть два вида мудаков – самолично Торвальдс который кладёт всех хуями и всем похуй, либо феменистки/трансфеменистки, которые увидев что-то что им не нравится в твоём твиттере могут начать ебать мозги, и эта хуйня только усиляется. Скоро начнут из корпораций выгонять за их репорты, тут конечно Путины и прочие личности виноваты.
>>736690Давно уже.https://habrahabr.ru/post/218207
У меня тут непонятная хуйня возникла. В проекте бэктрейс ошибки перестал отображаться. Теперь просто ОШИБКА и все, хуй знает что произошло. Подробностей ни в консольке нет, ни в браузере — прост редиректит на 500.НО. В некоторых коммитах все работает нормально. Коммиты вообще никак друг с другом не связаны. Я нашел два таких методом тыка.Как только переключаешься с "рабочего" коммита на нерабочий — бектрейс ломается. Разница между коммитами (рабочим и нерабочим) в одном файле, который вообще к делу не относится.Этот файл можно взять с нерабочего коммита, тем самым сделав рабочий и нерабочий коммиты идентичными, но ничего не ломается. Нужно сделать именно чекаут, чтобы сломалось.В интернетах нашел только предложение апгрейдить рельсы (не помогло) и выставить _в каждом_ .rb файле кодировку, мол, кто-то там у вас `ActionView::Template::Error` портит. У остальных кодеров в проекте такой проблемы нет. Пробовал полностью клонировать проект в новое место — там то же самое.В итоге после установки джема `better_errors` проблема исчезла, но... Что за хуйня??
>>736694В таких случаях помогает переустановка виндувс.
>>736694Вспомню традиции русских форумов и скажу одно:"Телепаты в отпуске". Мы не можем посмотреть в чем там проблема без исходников, которые ты конечно же не дашь, так что вопрос закрыт.
>>736694Что если logger проставить? попробуй на другом сервере запустить, thin напрмер
>>736690Лол, я думал ты оценишь мою толстоту. Так-то я тоже за Путина и сам офигеваю со всей это ЛГБТ-шумихи. Просто интересно когда они программировать-то успевают?Ещё кстати у них фишка это волосы в кричащие цвета красить.А что там у тебя вместо веб-сервера? Поищи error.log какой-нибудь. Вдруг там что-то на уровне интерпретатора (правда у меня было такое только когда писал в cgi-стиле).
Эээхь>>736698 → >>736694
>>736695Но я прыщеблядь.>>736696И что ты в исходниках смотреть будешь?>>736697В контроллерах логи не работают. В `development.rb` работает. Видимо, где-то на пути к контроллерам все ломается..Сервер и так thin стоял. На пуме запустил, такая же ситуация.>>736698thin только в `development.log` пишет, вроде бы. Оно же в консольку уходит.
>>736694Короче, для начала делаешь git bisect пока не находишь коммит, в котором впервые произошла эта хуита. Ну и если он прямо текущий, я бы попробовал его разрушить и заново закоммитить.
>>736708Пацаны не поймут если я с мастером что-то делать начну, у них-то все работает.Вот так сейчас мастер у меня работает:sdflk43 HEAD - нерабочийqweasdf - нерабочийawef3 - рабочийasdf34 - нерабочийasfe432r - не рабочийразница между этими коммитами уровня "переименовал переменную в тесте"если чекаутить файл из нерабочего коммита (а там разница только в этом файле), то все продолжает работать32asdfwe - рабочийНа других бранчах тоже не работает (на каких-то, наверное, работает).Пробовал создавать бранч от рабочего коммита и мержить туда остальной мастер и тогда оно ломается.В крайнем случае, раз чекаут нормально работает, можно было бы взять рабочий коммит и отчекаутить весь вообще проект рекурсивно, но пока что и так работает, с `better_errors`.
>>736694>Нужно сделать именно чекаут, чтобы сломалось.Не то имел ввиду. Нужно сделать чекаут "нерабочего" коммита чтобы все сломалось. Если сделать чекаут файла из нерабочего коммита (а один единственный файл это и есть разница между этими двумя коммитами) — то логи работают. Это мне так повезло и я нашел коммиты с разницой в один файл, так-то есть и коммиты с разницей в охуилион файлов.В общем, раз в development.rb логи работают, а в контроллерах уже не работают, то остается только расставлять логи во всем порядке загрузки рельс и смотреть где они сломаются.
Я не понял, все же работает сейчас.Зачем тратить часы на выяснения этого говна, займись работой.
>>736694Может, проблема с кодировкой или CR\LF\CRLF.
>>73545525Рашка5 лет2 года15$Никуда не планируювы тут с 12 на рельсах кодите что ли?
>>736916если CRUD'о ебашилово назвать кодингом, то..
А стоит ли переписывать вьюхи с ерб на какой-нибудь слим, ерубис? Вообще есть ли какой-то профит в скорости рендеринга от смены шаблонизатора?
>>737269На слиме классные шаблончики получаются, слим няшка же. И быстро работает, но это вторично.
>>737271>слимЭто же джейд.
>>737281пук ты хотел сказать
>>737271а кто тестил на реальных проектах насколько slim лучше haml?
>>737337были бенчмарки, слим самый быстрый. гугли
>>737352Тем не менее хамл намного популярнее.
>>737369В слиме исправлены многие неудобства хамла. Слим более богат фичами. В новых проектах популярнее слим. Хамла много в легаси-говне.
>>737352сейчас глянул, да слим реально быстр, даже догнал по сути hamlit, причём пол года назад ещё существенно отставал.свежее: https://travis-ci.org/k0kubun/hamlit/jobs/125316387
>>737337На реальных в шаблоны иногда лезут верстальщики и фронтенд-макаки. В какой рот они дружно твой хамл со слимом, можешь сам догадаться.
>>737418Въёбаныйврот? Похоже у нас рекурсия каламбуров.
>>737418В какой рот нужны такие работники - сам знаешь. Нахер с ними работать?
>>737418Хз, у нас верстальщики норм с haml, но slim не знают, или делают вид, что не знают.
>>737556разница между ними в разы меньше, чем между erb
Если фронт не знает слим, ему просто ставится задача на 4 часа "выучить слим".
>>737644Если бэк не знает ерб, ему просто ставится задача на 4 часа "выучить ерб", а хипстерское говно вроде слима остается для домашних проектов.
>>737646Ну это ты глупость какую-то по-детсадовски в ответ кукарекнул. Что за бэк не знает ерб? И слим не хипстерское, не говно, и не для домашних проектов. Все свежие проекты деляются на слиме, погугли, блядь, тупой болван.
Какой даун будет учить erb/slim 4 ЕБАНЫХ ЧАСА?
>>737658Ну я например. Я до него с питоном не был знаком, поэтому к ебаным отступам привыкал несколько дней.
Есть такая проблема - в модели есть метод, который создает новый текстовый файл и записывает данные туда. Но после этого не могу удалить этот файл ни рубями, ни вручную, пока не остановлю сервер. Если создаю чистый файл, ничего не записывая туда все проходит норм. Как удалить файл?метод модели def generate_file data = [] file = File.new("#{Rails.root}/public/files/#{self.id}.txt", "w+") self.books.each do |book| data << book.author.to_s end File.open(file, "w+") do |f| f.write(data.join("\n#\n")) end end
>>737669Ты открываешь файл, но не закрываешь. Алсо, у тебя какая-то ёбань в коде, так не делают обычно.
>>737679Хм, действительно. Добавил f.close, и вроде удалилось.Думал что если записать в файл в блоке то он автоматически закроется.>Алсо, у тебя какая-то ёбань в коде, так не делают обычно. А как? Мне нужно чтобы кнопкой генерировался файл на сервере с данными из таблицы, а потом я отправляю его через send_file.
>>737684Не делай File.new отдельно. Оставь только File.open.
>>737684А лучше вообще замени на IO.write или IO.binwrite.
>>737684IO.write(file_name, books.map { |b| b.author.to_s }.join("\n#\n"))
кто напишет код короче?!
>>737724Это не "короче", а "по-нормальному".
>>737724как вас унииизили, субханАлла, короче!
Какой лучший способ импортировать файл в Google Docs? (html->таблица).Столько разных библиотек, что я даже хз
>>737684Этому не место в модели, вынеси в отдельный класс и вызывай, хотя бы, в контроллере.
>>737644Вопрос "а нахуя тащить это в продашкн и ебать мозги фронтам и тянке-верстальщице с 8 классами образования" остается открытым.
>>737770Сочувствую вашей говноконторе.
>>737776Сочувствую долбоебам, которые тащат слим без причин, просто НУ ВЕДЬ ТАМ ЖИ ОТСТУПЫ!!1
>>737777Какие отступы, что ты несёшь? У тебя персональный бугурт, видимо. И да, ваши фронты дно и даже глубже дна, если для них лаконичность синтаксиса шаблонов = ёбля мозгов.
>>736549Как это работает? Я про -@Ссылку на доку, пожалуйста.
>>737808В руби есть перегрузка операторов. Например, можно объявить метод "плюс" и написать кастомную логику сложения объекта заданного класса с другим объектом. Точный список доступных для перегрузки методов где-то есть, почти все можно перегружать. Метод с названием "-@" - это метод операции "унарный минус".Амперсанд перед объектом при вызове методов пытается конвертировать объект в Proc. Можно определить метод to_proc у класса и использовать его, типа, вот так: array.map(&my_object).to_proc у символов определён примерно так:def to_proc proc { |arg| arg.send(self) }endЧто мы и любим постоянно использовать в конструкциях типа User.all.map(&:full_name)Соответственно arr.map(&:-@) эквивалентно arr.map { |x| x.send(:-@) } или arr.map { |x| -x }
>>737814домо оригато годзаймаста
>>737814Но причем здесь блджад @?
>>737841чтобы отличить бинарный минус от унарного
>>737841Матц так решил. Назвать метод унарного минуса -@. Чтоб можно было писать смайлики в коде.
>>737814Спасибо. я с какого-то перепугу решил, что @ - это ссылка на объект, передаваемый в блок
Rendered collection (0.0ms) Rendered collection (0.0ms) Rendered collection (0.0ms) Rendered collection (0.0ms) Rendered collection (0.0ms) Rendered collection (0.0ms) Rendered collection (0.0ms) Rendered collection (0.0ms) Rendered collection (0.0ms) Rendered collection (0.0ms) Rendered collection (0.0ms) Rendered collection (0.0ms)??? появилось после { includes :model_name }
>>738408пояснил проблему как бог
>>738433ладно похуй, как я понял этот трюк что-то вроде ленивой загрузки, хотя вроде как АR быстрее высрал.
Руби основы примерно освоил, иду по туториалу Хартла инб4 хуета, вроде норм, но как посмотришь на шапку треда или на пикрилейтед, то накатывает чувство пиздеца, что я никогда не смогу освоить и 20% рельс и не смогу ничего своего написать. Это нормально?Олсо параллельно ПОДРАБАТЫВАЮ за гроши - верстаю (и бек тоже) маленького сайта одной местной фармакомпании.
>>739441А компы настраиваешь бухгалтерии?
>>739441Л. О. Л.После Java (я начинающая андроид-макака на удалёнке) рельсы - это как перейти с Gta V на сапёра.ИМХО рельсы настолько легки, что мне они кажутся нереально сложными. Объявил переменную - обращаешься к ней отовсюду, нет скобок у методов, бла, бла, бла...https://www.railstutorial.org/book/Ты же тут учишь, да? Я тоже. 9.3.3, идёт третий день обучения.
>>739640А по существу есть что сказать?
>>739676Нет, я довн.Пойду 10 главу переписывать.
>>739640ты сейчас смешал синтаксис руби и рельсы, и вообще хуй пойми какое сравнение.
>>739714Двачую.
>>739714Я просто аутист, простите.
Бля в руби 2.3.0 добавили наконецтоки блядь нормальные провкерки на нул в навгиации, вместо костылеебского .try(:jopa)джва года ждал
>>739787huita.try(:jopa).try(:[],:govno)
>>739441Не вижу ничего сложного в пике, 80% знания уровня "хело ворлд", погалеришь на дядю пару месяцев и все узнаешь
>>739800и поймешь что принцип 80/20 очень даже правдив. дебаггинг какой-нибудь лютой хуйни, поддержка легаси, попытка вызывать какой-то кривой сервис, нужный заказчику...
>>739791>>739787Парни, там уже 2.3.1 релизнулись
>>739876image = user&.profile&.thumbnails&.large?%?%:;
>>739883если тебе приходится писать такой код, у тебя дома что-то не так.
>>739787Вообще-то больше одного трая за раз говорит о том, что ты делаешь что-то не так.
>>736249А серьезно, нахуй? Типа глянте у нас в руби есть телочки, так клево. Я блядь на них посмотрел и захотелось в пхп съебать.
>>740236самое забавное в прошлые года вполне ебабельные тянучки были, а теперь все скатилось в sjw, в общем сраная америка катится в сраное говно
>>740236Типа "мы ничего такого в виду не имели, мы толерантны, нинад в полицию, только не по лицу плес(((".
>>740236>телочки
Какой-то петух из вашего треда срет в треде олимпиадников.
>>740326Симпатичные девушки нужны только для парней без фантазии.
>>740326Вылизал бы им письки.
>>736249Я воспринимаю это как популяризацию руби за счёт совеременных толерастных тенденций. Вот самый влиятельный трап руби-сообщества (пикрел) придумал Code of Conduct, в котором по сути прописные истины, и теперь эта хуйня используется в кадом проекте (CoC есть в репе Go, Rust, Node.js). Зато руби пропиарился, мол, мы впереди планеты всей не только по инфраструктуре и экстремальному программированию, но и по толерастии.
>>736690>В опенсорсе теперь есть два вида мудаков – самолично Торвальдс который кладёт всех хуями и всем похуйТорвальдс охуенен. Во многом его характеру и стилю как общения, так и управления проектом, Линукс так взлетел.
>>741941fixВо многом БЛАГОДАРЯ его характеру и стилю как общения, так и управления проектом, Линукс так взлетел.
Как с помощью devise разрешить пользователю совершить действие из емейла?т.е. у меня есть documents#action (GET). Какой-нибудь токен можно сгенерировать на сервере, чтобы запрос из емейла выглядел /documents?token=blabla, и потом расшифровать, и убедиться, что он верный?
>>742761А причем здесь devise вообще? Сохраняй токен и проверяй, делов-то.
Я знаю почему в этом треде появляется лишь 13 постов в день. Просто у руби-разработчиков столько работы, что некогда отвлекаться.
>>742832ну я вечером захожу, днем работаю, так что ты прав.
Посны я нубас, так что вот. Например у меня есть блог, есть у постов метод шоу, мне нужно что бы там была форма отправки комента, я так понимаю, что нужно в экшне написать @comment = Comment.new , во вьюхе форма заполнится, а чё дальше то делать. В случае создания поста форма заполняется в new, а пост создается в create. Как мне из show поста пойти в create коммента? В какую сторону гуглить?
>>742898https://mkdev.me/posts/vsyo-chto-nuzhno-znat-o-routes-params-i-formah-v-rails
>>714632Поподробнее братан
>>743003Да что подробнее, человек мучается на винде с вагрантами.
>>742761>Как с помощью devise разрешить пользователю совершить действие из емейла?Во-первых, для авторизации юзай Pundit, в Devise только аутентификация.Во-вторых, выкинь Devise на помойку, пока не поздно. Используй Authlogic или Sorcery.
>>743190Во-первых, ты меня не понял, мне нужно было провести аутентификацию с помощью GET запроса из емейла. Pundit и так юзаю.Во-вторых, выкидывать devise мне никто не даст, хотя меня он уже заебал, ибо легаси.В третьих, проблема решается с помощью prepend_before_action :shit в нужном контроллереdef shit user = ... sign_in(user, event: authentication)end
>>743190Че эт devise не модный стал?
Ребят, безумная фронтенд мартышка забегает в тред. Можете пояснить за актив модел сериалайзер? Суть такова: есть пагинация через каминари и пагинируемая модель с ассоциациями. От каминари мне нужен next_page, от сериалайзера модели с ассоциациями.Вот если просто в рут запрашивать модели таким образом:[CODE] def index @examples = Example.includes(:association, :another_association) .page(params[:number]) .per(20) respond_to do |format| format.html format.json { render json: @examples } end end[/CODE]то вызывается сериалайзер, все has_many и belongs_to мапятся в готовый джсон и просто охуеть как круто.Но если в таком виде:[CODE] def index @examples = Example.includes(:association, :another_association) .page(params[:number]) .per(20) respond_to do |format| format.html format.json { render :json => { examples: @examples, next: @examples.next_page } } end end[/CODE]то сериалайзер не вызывается, т.е. сериализируется сама модель без ассоциаций и нужный мне next_page. Подскажите пожалуйста, как можно этот вопрос разрешить правильным образом, чтобы и через актив модел сериалайзер, и некст пейдж, и ДХХ одобрил, и вообще. А то сейчас я держу стейт пагинации на клиенте, что само по себе уже неприятно и непрактично.
>>743190он популярный, но ебать кривой.
>>743588код закинь куда нибудь, хуй прочтешь
>>743627Да чет куклоскрипт меня подвел с коде тегом. Я так-то что-то нашманил уже вроде. На Аппликейшн контроллере сделал метод pagination и там извлекаю next_page: object.next_page. А потом на любом контроллере format.json { render json: @collection, meta: pagination(@collection), adapter: :json }. Магия жи есть. Это конечно всё круто, когда просто работает. Особенно после нода или гоу, где простыни писать надо по малейшему поводу.
Приветствую всех.Платина.Насколько сложно перекатиться из PHP разработки (yii2) в Ruby? Насколько сложно найти удаленную/постоянную работу новичку?В вакансиях почти всегда пишут опыт разработки Ruby 2+ года. В настоящее время пол года кодил хэлоу ворды на PHP, в т.ч. на yii2, до этого освоил верстку и делал сайты на wp, в качестве дизайнера (программирование отдавал фрилансерам). Недавно разместил резюме на hh, откликнулся на 20+ вакансий с hh и weblancer.net. Прошел два удаленных собеседования, выполнил тестовое задание, на этой недели приступаю "PHP web программистом", если все будет ок. В противном случае, буду рассылать дальше резюме. Судя по отклику работодателей, и по сравнению с рассылкой резюме дизайнера (лол), я смогу найти работу. Планирую полгода работать на данной должности, копить деньги и параллельно повышать скилл. Поэтому выбор, либо углубиться в PHP и понаехать в ДС в поисках работы в более-менее серьезной компании, либо выучить новый язык, не меняя сферы Web. Рассматриваю Ruby(RoR)/Python(Django)/C#(ASP.NET).Сколько часов мне потребуется, чтобы пройти все задачи и прочитать всю литературу из ОП поста, занимаясь этим в свободное от основной работы времени, с учетом того, что у меня уже базовые навыки (ООП, базы данных, MVC, DOM/HTML/CSS)? Какие реальные задания, проекты мне нужно выполнить, чтобы получить работу?Так ли важен опыт разработки именно на Ruby, зачтется ли реальный опыт PHP разработки?Каков уровень зарплат по сравнению с другими языками, может быть тут есть тот, кто уже перекатывался, и может ответить?Большое спасибо.
>>743928>Насколько сложно перекатиться из PHP разработки (yii2) в Ruby? Насколько сложно найти удаленную/постоянную работу новичку?Новичку - вкатиться в руби сложно, а работу найти не реально.
>>743958Платиновый ответ на платиновый вопрос. Ты прошел все задачи, прочел литературы из оп поста? Сколько времени изучал? Расскажи про свой опыт.
>>743958Тебя ткнуть еблом в не-русскоязычные вакансии, или сам найдешь?
>>744018>Тебя ткнуть еблом в сотни не-русскоязычных индусов на каждую вакансию, или сам найдешь?
Среди местных анонасов есть те, для кого Ruby не был первым языком программирования, и те кто имеют опыт коммерческой разработки на других яп?
>>743958иди-ка ты нахуй. google hacker news who is hiring; ctrl+f rails
>>743958иди-ка ты нахуй. google hacker news who is hiring; ctrl+f rails>>744078https://news.ycombinator.com/item?id=11611867113 результатов, 1 минута поиска.
еще есть angel.co, joboffers и hiring.com
>>743928мой совет - как только получится, вали с русскоязычных бирж труда и всегда работай с зарубежными заказчиками. Для них 2k$ в месяц для программиста это пиздец как мало, столько даун в макдаке получает. Тут важнее продать себя, чем быть охуенным программистом.
Господа, ещё такой вот вопрос есть по рельсам. Мне по дестрою в респонсе контроллера нужна инстанция удалённой модели на клиенте. Но, насколько я понимаю, @model.destroy в def destroy методе дестроит модель и получить к ней доступ в respond_to do блоке не получится, т.к. она была уничтожена двумя строчками выше. Я могу очевидным образом сохранить модель в переменную до дестроя, x = @model и в respond блоке вовращать саму переменную x, несмотря на то, что модель была уничтожена.Пример: http://pastebin.com/v7q5KA7QНасколько это практично, в плане будет ли GC освобождать память и в целом является ли такой подход анти паттерном?
http://pora-valit.livejournal.com/4515638.htmlчет мне мои 15$ кажутся плохой оплатой, пойду заказчика уламывать на 20$ (будет 1600$ в месяц на полставки)
>>744104ебать говнокод :) юзай activemodel serializers, и какой-нибудь responders по желанию.
>>744127Нинужно, если там только не over 9000 круда.
>>7441271. В чем говнокод?2. Это и есть активмодел сериалайзер, какое это отношене имеет к ситуации?
>>744142у тебя должно быть все настроено так, чтобы было просто `respond_to :html, :json`.
>>744080>>744078>>744018Везде нужны звёздные сеньоры-комбайны с 5 лет опыта и портфолио. Вакансии есть, но нигде не берут новичков.А охуительные ебланы с ctrl+f ссылками могут соснуть. Почти все вакансии там on site. Вы понимаете, что это значит? Нет, вам не предложат релокейшен. Просто это вакансии для белых людей, пусть даже они тупые. А если ты сеньор из отсталой раисси, тебя шлют на хуй. А вакансий на удалёнку там 3.5 штуки, понимаете, да? Не надо тыкать в сотни результатов по ctrl+f, там нет сотни подходящих вакансий, там свободных вообще нет. Придурок тупой, зла не хватает блядь, умничает тут.
>>744309Два чаю. В половине вакансий сразу пишут "us residents only".
Новичок в рельсах - это бомба и генератор говна. На руби и рельсах говнокодить можно легче и более изощрённей, чем на пхп. Ни один здравомыслящий руководитель не станет нанимать рельсоджуниора, который не отдаёт себе отчёта в своих действиях. И учить джунов не выгодно, потому что они всегда сваливают через год, когда становятся малость полезными. И ставить джунов на проекты к сеньорам не взлетает, потому что, охуеть не встать, сеньоры от этого ДРОПАЮТСЯ из конторы.
>>744309Все верно, но ещё хуже - даже опыт и портфолио не помогают.
>>744309ты чего думаешь, тебе будет на блюде с голубой каемочкой написано junior remote rails?лолприкинь, можно попытаться с ними добазариться, показать профиль, а не ныть на дваче, и сосать рашкины зарпалаты по 40к. это вообще только 1 несчастный линк, ты другие вообще открывал?
https://www.upwork.com/o/jobs/browse/?contractor_tier=1&q=rails&sort=create_time%2Bdesc
https://whoishiring.io/search/37.090/-95.713/3/?search=rails&remote=true&order=distance
>>744364>>744325>>744312>>744309Кто из вас до кодил коммерческие проекты на других языках, кроме Ruby?
>>744470неа.
Есть поля Document#id и Document#label, как построить форму так, чтобы она присылала[1, 'shit'], [2, 'shit']?
Помогите ребят, уже намучалсяЕсть моделиDocument has_many :responses Field has_many :responsesResponse belongs_to :document belongs_to :field value(string)Как сделать такой поиск по документам? можно юзать squeel
http://railsguides.net/belongs-to-association-and-validate-presence-with-nested-attributes/#comment-962569920Чет в голосину с этой хуйни. Белым людям похуй, а пидорахену с не менее хуевым английским глаза видите ли режет.
>>744739Но там ведь правда текст весь состоит из ошибок...
ПЕРЕКАТП https://2ch.hk/pr/res/744747.htmlЕ https://2ch.hk/pr/res/744747.htmlР https://2ch.hk/pr/res/744747.htmlЕ https://2ch.hk/pr/res/744747.htmlК https://2ch.hk/pr/res/744747.htmlА https://2ch.hk/pr/res/744747.htmlТ https://2ch.hk/pr/res/744747.html
ПЕРЕКАТЕ https://2ch.hk/pr/res/744747.htmlР https://2ch.hk/pr/res/744747.htmlЕ https://2ch.hk/pr/res/744747.htmlК https://2ch.hk/pr/res/744747.htmlА https://2ch.hk/pr/res/744747.htmlТ https://2ch.hk/pr/res/744747.html