Этого треда уже нет.
Это копия, сохраненная 2 июня 2016 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
41 Кб, 662x355
Ruby Thread #714375 В конец треда | Веб
Предыдущий: https://2ch.hk/pr/res/685932.html (М)

Принимаются изменения в шапку треда в виде пулл-реквестов:
https://github.com/meoweg/2ch-pr-ruby

Как показывать код:
Быстро - https://pastebin.com
С исполнением - https://ideone.com
Требуется аккаунт GitHub - https://gist.github.com

FAQ:

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 Grimm
Practical Object-Oriented Design in Ruby
Refactoring Ruby Edition
Ruby 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.io

6. Что почитать по рельсам?
http://guides.rubyonrails.org
http://ruby.railstutorial.org
API: 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.com

9. Я не могу в английский, что делать, анон?
Идти учить английский, без него тут делать нечего.

10. Есть ли у руби русское коммьюнити?
Нет. Вернее есть, но оно протухло и там полно людей у которых чсв высоко.
Яркий пример - rub\~QyANUSi#6jabberPUNCTUMrD`_u
А еще есть русская слак конфа - 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.com

12. Зачем нужны тесты и как их писать?
http://rusrails.ru/a-guide-to-testing-rails-applications
http://habrahabr.ru/post/163597/
Вместо этого можно прочитать классную книгу Everyday Rails Testing

13. Где можно задать глупые и не очень вопросы?
- здесь
- stackoverflow.com
- тематические slack-конфы
- а вообще, гугли, с вероятностью в 90% ответ на твой вопрос уже висит на stackoverflow.

14. Как фокнуть\сделать фичу\исправить баг, сложно ли это?
Нет, не сложно. На rubyflow появляется много новостей с реализацией новой библиотеки, вы можете сделать тесты, фичу для него, старые либы также обрастают багами, улучшайте их! пишите код.

15. В чём писать код?
Atom, Brackets, Sublime Text, TextMate, Vim, GNU Emacs. Для особо упоротых энтерпрайз-макак есть rubymine, плагины к эклипс и нетбинс.

16. Можно ли писать на руби с под windows?
Можно, но придется обрасти костылями в виде виртуальной машины, придется сходу разбираться с Vagrant и многим другим. Чем дальше ты продвигаешься, тем ближе становится ясно, что пора перекатываться на linux/mac

17. Руби язык одного фреймворка?
Есть еще Sinatra, Hanami (ранее Lotus), Volt, Grape, отличные штуки для DevOps - Chef, Puppet и годные генераторы для бложиков - Jekyll, Middleman, всё это активно используется в продакшене

18. Можно ли делать игры на Ruby?
Можно, но не нужно. Гем Gosu.

19. Ютуб каналы
Youtube driven development...
Вот тебе пара каналов, но никому не говори что учишься по видео.
https://www.youtube.com/channel/UCIQmhQxCvLHRr3Beku77tww/videos
https://www.youtube.com/channel/UCfWZwsP8trUy5uHJg8gcGIQ
https://www.youtube.com/channel/UCSI77lJlzlCFPLdV1RSAoYQ
https://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_2ch
4. Не стесняемся постить свои репозитории, наши эксперты с радостью отревьювят вас.

После этого тебе будут нужны паттерны, без них твой код превратится в говно. Впрочем, с ними тоже превратится. Один из часто используемых - 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.
>>729066>>731738
#2 #714400
стрёк
#3 #714496
Рубаны, учу Руби, уже стоит переходить на рельсы, если я уже могу в алгоритмы, классы и синтаксис? Обучаюсь по шапке треда, сейчас дочитываю Ruby Way.
И еще вопрос, я плохо читаю чужой код, как подтянуть такой ценный навык?
>>714561>>714563
#4 #714508
ебать такие тряпки. хуею с этих белых людей

https://gist.github.com/wojtekmach/c54d8e25de4cccbcf6450087084f362c
>>714554>>715253
#5 #714554
>>714508
Надо было по-нашему - нахуй послать сразу, забиться на Петровско-Разумовской, конструктивно пояснить по ебалу за гнилой базар.
ЭЛИКСИР СИЛА
>>714559>>716812
#6 #714559
>>714554
почему в зк нет треда по елексиру, всем похуй?
>>715250
#7 #714561
>>714496
синатру первой попробуй. она довольно простая.
#8 #714563
>>714496
взять небольшой гем с гитхаба (поищи, их ебаные тыщи, уж какой нибудь интересный найдешь), поиграйся. авось функционал полезный добавишь.
105 Кб, 1270x612
#9 #714587
Что это блять за магическая компания, и каких эльфов они ищут на 500 евро в день??
>>714645>>723157
#10 #714604
Аноны, а как в раби сделать джойн выборок базы данных?
>>714623
#11 #714623
>>714604
в рельсовом ActiveRecord? http://api.rubyonrails.org/classes/ActiveRecord/QueryMethods.html#method-i-joins
Советую для упрощения запросов ActiveRecord юзать squeel.

Если не зависишь от ActiveRecord, используй Sequel, он заебатый.
14 Кб, 687x119
#12 #714632
Перенес проект в виртуалке из папки с автоматической синхронизацией виртуалбокса, в папку с ручным деплоем. + 200% к скорости тестов, и порядка 300% ускорение рельсов в dev окружении.

Охуеть.
>>743003
#13 #714645
>>714587
Дай ссыль на вакансю, плз
>>714678
#15 #715250
>>714559
есть тред по ерлангу, все шизики там
#16 #715253
>>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.


все правильно мужик сказал, поддерживаю
>>715313>>715537
#17 #715313
>>715253
Может и правильно, но на личности не надо было переходить - будто это как-то поможет. Опенсорс же, возьми и захуячь правильно, хули выебываться.
#18 #715537
>>715253

>пок кукарек нимагли как рельсах сделать кокок


ясно, как по мне наоборот, чем меньше в элихире от рубей, тем лучше
#19 #715543
>>715537
Там и так от них нихуя кроме do-end.
773 Кб, 1024x731
#20 #715833
Кто имел дело с Capybara+PhantomJS (адаптер Poltergeist)? Почему она упорно 1 из 10 запросов не хочет выполнять синхронно? Логинюсь на Фейсбук, а на следующей команде оказываюсь незалогинен? Таймаут увеличивал в разы.
>>715954
#21 #715905
>>715537
Чому не просто эрланг тогда?
>>715933
#22 #715933
>>715905
За форс эрланга не платят
#23 #715954
>>715833
как дебагил? скриншоты делал?

Если, че, добавь в spec/support

module 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?
end
end

RSpec.configure do |config|
config.include WaitForAjax, type: :feature
end

и юзай в тестах.
>>732254
#24 #716074
В проекте используется сторонний API. Чтобы тестировать код, я создал фейковое приложение на синатре, шлю запросы к нему вот так:

>config.before(:each) { stub_request(:any, /api.com/).to_rack(FakeAPI) }



Проблема заключается в том, что в продакшене ответ будет чистым JSON, а в тестовом окружении это JSON, завёрнутый в Rack::MockResponse, плюс хедеры etc. Естественно, весь код любезно заточен под один тип ответа.

Никак не соображу, куда и как вставить костыль, чтобы унифицировать данные.
>>716090>>716148
#25 #716090
>>716074

>используется сторонний API. Чтобы тестировать код, я создал фейковое приложение на синатре


Поехавший? VCR же есть
>>716093
#26 #716093
>>716090
Это пройденный этап, VCR не подходит
>>716105
#27 #716105
>>716093
Хуёво проходил, попробуй ещё раз.
>>716125
#28 #716125
>>716105
Я понимаю твое желание помочь, но вопрос был о другом.
>>716126
#29 #716126
>>716125
Для начала ты пояснишь почему тебе не подходит очевидное, а потом мы, возможно, начнём тратить свои мозговые ресурсы.
#31 #716222
>>715537

>ясно, как по мне наоборот, чем меньше в элихире от рубей, тем лучше


я хуй знает что тебе ясно стало, но там с точностью наоборот, он жаловался что вместо нормальной современной архитектуры хосе пилит клон рельсов на эрланге, повторяя ошибки рэилс-комьюнити
>>716297
#32 #716297
>>716222
И какие в рельсах ошибки? То чтотам нет ивент драйвен архитектуры?
#33 #716321
>>716297
но ивент-дривен сосёт, в илонге/элихире как раз не инвент-дривен, ивент-дривен - это нода/твистед/ивентмашин
#34 #716445
>>716297
Эктиврекорд. Убогие хелперы. Отсутствие view models.
>>732256
#35 #716446
>>716297
Манки патчинг. Монолитная архитектура.
>>716955>>732256
#36 #716812
>>714554
скажи эрланг вм круто!
>>716957
#37 #716955
>>716446
Скажи пример не монолитного фреймворка? Микросервисов можно и на рельсах наебашить.
>>717003
#38 #716957
>>716812
Садись на миллион потоков сразу.
13 Кб, 996x253
#39 #716977
Анон, поясни за маштабирование. Вот есть amazon и beanstalk. Хочу туда залить свое приложение.
Не совсем понимаю концепцию работы с ним. Посмотрим на картинку - примерно так я представляю архитектуру проекта.
Вот у нас есть ngnix, который работает с http запросами, http-кеширование вот это всё.
Так же есть App сервер с puma и рельсами, собственно само предложение. Amazon вежливо предлагает обернуть приложение в beanstalk - легко задеплоить, масштабирование из коробки и вот это всё. То есть как бы puma преднастроена и сама все круто сделает.

Остались web сервера, которые я не знаю, как размещать. Просто запилить обычные инстансы и настроить там кеширование и т.д.? Или их тоже можно куда-нибудь завернуть?

Олсо, я не знаю куда воткнуть сервер memcached. Где он должен быть в идеале?
Также есть проблема с размещением API сервера. У него два назначения.
1. Отдавать обычным пользователям контент (как на харкаче json формат) + принимать какие-нибудь post запросы.
2. Работа с БД для внутреннего приложения, которое не доступно из-вне.
В итоге я решил пользовательский функционал оставить в приложении, а для внутреннего сервиса запилить личный API сервер, который будет использоваться внутри облака 2-3 приложениями. Однако я не знаю куда его воткнуть.
#40 #717003
>>716955
причем здесь микросервисы? нужна нормальная модульная архитектура.
#41 #717073
>>716977
Я не знаю, бамп что ли.
#42 #717162
Рельсовики, а вы только рельсами и занимаетесь? Никогда не возникало желания заняться серьёзным программированием, а не крудошлепствовать на рельсах, которые ближе к CMS, чем к фреймворку?
>>717168
#43 #717168
>>717162

> рельсах, которые ближе к CMS,


Да ты, смотрю, неплохо разбираешься!
>>717172
#44 #717172
>>717168
Рельсы, джанго и подобное - это скорее готовая CMS, которую нужно обмазать под себя. К программированию это имеет мало отношения.
>>717175>>717227
#45 #717175
>>717172
Я и говорю, здорово шаришь! Молодец!
#46 #717227
>>717172
зарепортил пехепешника.
>>717249
#47 #717239
Сап аноны! В общем я нубас 22lvl, программировать вообще не умею, только хеллоу ворд на паскале в школе запускал. Решил изучать язык с нуля, не могу определится - что для меня лучше - ява или руби? Сфера применения ввиду того что всё равно стартовать с нуля - безразлична. Т.е. что мобильные платформы, что фронтэнд, что бэкэнд - без разницы. Ну разве что 3дэ-игори и драйвера точно не планируются.
Основные критерии - максимально быстро вкатиться в уровень джуна, и потом максимально быстро дорасти до хорошего уровня зп. Желательно с вариантами работать по удаленке - не хиккан, но схема "утро роллтон метро офис" - вгоняет в депрессию. Руби вроде подходит под эти критерии лучше, но смущает то, что рабочих вакансий мало и так же мало обучающих материалов и проч. Ну и "это же скриптовый говноязык, то ли дело си-подобные боги"
Прошу ссаными тряпками не гнать, маней не обзывать - мне главное определиться что изучать, а там понять - моё это или не моё. Готов к тяжелому труду работы над собой, осознаю что легким путь не будет.
Что скажете?
>>717240>>717248
#48 #717240
>>717239
Джава. И выйди из треда.
#49 #717248
>>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 Хороший учебник, всё расписано подробно. Сам по нему учился. Рекомендую.
#50 #717249
>>717227
Иди лечись, если везде пхпшники мерещатся. Особенно учитывая, что рабирельсы имеет гораздо больше общего с пхп, чем другие языки.
>>717269>>717778
#51 #717250
>>716977
Что, котаны, совсем никаких идей?
#52 #717269
>>717249
Толсто и баянисто.
#53 #717746
>>716977
Бампусик.
#54 #717778
>>717249
На самом деле да. Я когда изучал руби всё больше осознавал, что он ещё больше пехепе, чем сам пехепе.
>>717827
#55 #717827
>>717778
А какова ПДК у пехепе? И где чистый найти?
2044 Кб, 395x350
#56 #718296
>>716977
Ну хуй знает анончик, похоже ты один среди нас такой йоба архитектор. И вопрос скорее общий чем конкретно по рельсам. Надо найти слак, гиттер где тусуются такие же. Если найдешь, кино ссылочку сюда, мне тоже интересно почитать что они пишут. Но к сожалению на твой вопрос мне ответить нечего.
#57 #720525
Тред умер вместе с языком?
#58 #720617
вопрос, у меня есть сущность в activerecord, я вывожу все записи со всеми параметрами, получается большая таблица. Как сделать так чтобы можно было нажать кнопку фильтр на этой же странице что бы все отфильтровалось по определенным параметрам и остались только нужные записи, и без перезагрузки страницы?
>>720629>>720647
sage #59 #720629
>>720617
AJAX
J
A
X
>>720636
#60 #720636
>>720629
Спасибо, а где найти хороший и простой пример? И почему сажа
#61 #720647
>>720617
RANSACK
RANSACK
>>720649
#62 #720649
>>720647
спасибо за помощь.
#63 #720771
Начал недавно изучать руби/рельсы - внезапно повернулся фриланс на html ccs js + пришлось накатать маленький скрипт на пхп. Вот думаю, а может и остаться? Какие перспективы у руби, он рили умирает?
>>720775>>720921
#64 #720775
>>720771
умирает, уходи в пхп
#65 #720921
>>720771
да нихуя он не умирает, как же вы заебали.

я джуниором нашел работу за 1 день на реддите.
150-300$ в неделю, опыт 3 года, на гитхабе шаром покати.
>>721073
#66 #721073
>>720921
Да ты неудачник. Я за час нашёл работу на дваче. 500$ в неделю стабильно. Опыта нет, из проектов - только визитка для себя.
>>721074>>721337
#68 #721098
>>721074
Рассказывай историю успеха
>>721122
#69 #721113
>>721074
что за платежка?
#70 #721122
>>721098
уже в паре тредов писал же
22 Кб, 798x329
#71 #721254
>>721074
Я и говорю - неудачник.
>>721350
#72 #721337
>>721073

>на дваче.


Где на дваче искать работку? В воркаче штоле, лол?
>>721346
#73 #721346
>>721337
Нет, в программаче иногда мелькают предложения. Некоторые прямо в тред нужного языка пишут, некоторые свой тред создают, который быстро трут.
>>721348
#74 #721348
>>721346
Эйчары сидят на двощах? Ну это вообще пушка.
#75 #721350
>>721254
ну рассказывай историю успеха, хуле.
>>721352
#76 #721352
>>721350
Сижу как то в /б/, проигрываю с пикч с говном. Вдруг смотрю, новый тред. В нём какой то эйчар крупной компании (не буду называть, деанон), жаловался, как мало рельсокодеров. Говорит уже зарплату в три раза поднял, согласился на дополнительные премии и удаленку, а никто не идёт, кругом одни пхпшники. Ну я ему отписал, что могу поработать, скинул почту. Он мне отписал, обещал чуть ли не отсосать и отдать мне девственность его первой дочери, если я соглашусь поработать. Я зарплату выпросил побольше. Ну он мне дал задание, сказал выбирать подход и гемы самому, лишь бы работало. В начале недели он мне присылает список заданий, в основном простые. Я их за пару дней делаю и в конце недели отправляю готовый код, а он присылает деньги. По компании - аутсорсовая компания на шведов, продажи одной узкоспециализированной дорогой хуйни.
#77 #721355
>>721352
Атвичаешь на свой рот?
>>721369
#78 #721369
>>721355
я тебе атвичаю, но не отвечаю
#79 #721372
>>721352
А сейчас он ищет рабов?
>>721378
#80 #721375
>>721352
Пиздец, каждый раз захожу в пр, а тут такой манямирок цветет и благоухает.
три года занимаюсь программированием еще ни копейки этим говном не заработал
#81 #721378
>>721372
Пока штат укомплектован, но если будут места, я отпишу в тред.
#82 #721385
>>721352
т.е. тебе похуй, что чел на тебе зарабытывает раз в 5 больше + у тебя социалки и нихуя нет.
>>721425
#83 #721420
Посоны, возьмите кто-нибудь к себе на полставочки. Я сеньор 15 лет в кодинге, 8 лет в вебе, 3 года в рельсах. Разумеется, знаю всевозможную сопроводительную парашу. Могу чатиться по-английски.

Все проекты под NDA, портфолио нет. Чтобы доказать свою состоятельность, готов поработать за еду пару недель.

sh]#ledaruANUSgmax$wilPUNCTUMcoWEDm
>>721428>>721429
#84 #721424
БЛЯ, АНОН ПОЯСНИ ЗА МАШТАБИРОВАНИЕ
Я тут сейчас уже охуею. Нет, я не пилю суппет твиттер с охуенной пропускной способностью. Пока просто интересуюсь, как реализовать все это в теории.

Вот анон, есть приложение на рельсах. В нем фрагментное кеширование - первая стратегия.
Потом предположим есть memcached, который кеширует http запросы.

По логике вещей. Я делаю как?

Приходит запрос -> он идет на баланс нагрузки.
Баланс нагрузки отправаяет его на один из серверов, где крутится ngnix. Он смотрит в кеше, есть ли совпадающий результат.
Если нет, то отправляет запрос к серверам, на которых крутится puma + rails приложение. И оно выполняет.

Все верно?
>>721439>>721442
#85 #721425
>>721385

>чел на тебе зарабытывает раз в 5 больше


Начальник зарабатывает на работнике в 5 раз больше, заказчик зарабатывает на начальнике в 10 раз больше, чиновник получает с заказчика в 15 раз больше, а депутат имеет их всех. Ты что, предлагаешь мне бросить работу потому, что кто-то зарабатывает больше меня?

>социалки и нихуя нет


Мне хватает. Социалку и подобное я могу себе позволить сам. А касательно опыта и легальности - две волшебные буквы: ИП.
#86 #721428
>>721420
Бля, ахуительное резюме, пожалуй скопирую его.
#87 #721429
>>721420

>Все проекты под NDA


Двачую братиш, я тоже помогал гуглу разрабатывать поисковик, писал ядро Windows у Microsoft, а по вечерам делал социалочки Цукербергу и Дурову. Просто всё под NDA, поэтому доказать не могу.
#88 #721439
>>721424
Вот нахуй ты об этом думаешь?

Сначала запусти потом когда будет лежать проект будешь думать, все это можно сделать разными методами но тебе это нафиг не нужно
>>721445
#89 #721442
>>721424

>отправляет запрос к серверам, на которых крутится puma + rails приложение


Ты написал почему-то rails вместо go.
>>721445
#90 #721444
>>721352
скилы какие у тебя? какие задания дают?
#91 #721445
>>721439
Блядь, вот когда ляжет, как-то думать не хочется. Все же сейчас хочется теорию изучить.

>>721442
А какие проблемы?
>>721618
#92 #721463
>>721352
скинь пример заданий плз, чтоб знать какие бабки требовать с заказчиков
#94 #721787
>>721618
Во. Уже какие-то понятные вещи.
На самом деле в целом я концепцию уловил. Только сейчас столкнулся с тем, что не совсем понимаю, как в инфраструктуре Amazon развернуть этот проект.
Сервера приложения можно завернуть в beanstalk и там маштабирование из коробки.
А вот куда запихнуть ngnix - без понятия.
>>721822
#95 #721822
>>721787
Амазон дорогой и голимый, лучше узай DO

А вообще есть OVH которому нет конкурентов

Почитай о Docker
>>721860
#96 #721860
>>721822
У меня просто только на Amazon есть куча денег для тестов. Поэтому выбирать не приходится.
#97 #721973
Вообще для 1000 и более запросов есть куда более легкие фрейсворки, нежели rails, например sinatra.
>>722030>>722064
#98 #722030
>>721973
Собственно, Синатра превосходит рельсы почти по всем параметрам. Но у Синатры есть один фатальный недостаток - быдлу её выучить гораздо сложней, чем зазубрить одинаковые действия в рельсах и повторять их. Рельсы - это просто триумф манки-патча, неудивительно, что быдлу так нравится.
>>722041
#99 #722041
>>722030
пиздуй писать твиттер на синатре, посмотрим как быстро ты изобретешь рельсы... а нет, не изобретешь, ибо слишком тупой.
>>722059
#100 #722059
>>722041
Рельсодебил думает, что все задачи заключаются в написании твиттеров.
#101 #722064
>>721973

>писать хайлоад на руби

>>722075
#102 #722075
>>722064
нужно понимать пределы того или иного инструмента. Сейчас админку пишут на rails/pg оттуда выгружают, скажем в redis/mongo и раздают чем-то более легковесным.
#103 #722163
Как обратиться к определённой строке в файле? Чтобы до этого не проходить все строки.
Ну, допустим, я знаю номер строки, которая мне нужна. Как мне к ней обратиться?!
#104 #722180
>>722163
Только если ты знаешь длины всех строк в файле. Тогда можно прочитать нужные байты по смещению, которое нужно рассчитать. Да, так делают. Придумай свой формат, работай с оглавлением, угорай по байтоёбству.

Файлы не хранятся на диске как массивы строк. Файлы хранятся тупо как последовательность байт.

Ну и ещё вспомним, что utf8 - ебанутая кодировка с переменным количеством байт (в общем случае) на символ.
>>722381
#105 #722381
>>722163
Штатными средствами руби этого никак не сделать, лучшее что можно предложить, это лишь читать файл (File.open и .gets/.readline; вместо File.read) до тех пор пока не будет получена нужная строка и сразу прекратить чтение.

Или пилить своё расширение на сишке для чтения нужного смещения в файле.

>>722180
Норм кодировка, не гони. Всяко лучше богомерзких cp1251, koi8-r и прочих iso. Все минусы для программистов с лихвой искупаются плюсами для всего мирового сообщества.
>>722387>>722456
77 Кб, 329x480
#106 #722387
>>722381
IO#seek
IO#binread

И String#unpack для распаковки ёба-бинарных структур.
>>722393
#107 #722393
>>722387
Оу, буду знать. Правда тут нужно знать не номер строки, а номер символа из начала строки и номер последнего символа строки.
>>722163
А какая у тебя вообще задача? )))
#108 #722456
>>722381

>Норм кодировка


>переменная длина символа

>>722495
#109 #722495
>>722456
Мыши против сыра, пользователи интернета против возможности забыть о ебле с кодировками ._.

Я это к тому что ничего лучше UTF-8 нет, а с кодировками должны ебаться мы (разработчики), чтобы этого потом не делали энд юзвери.
>>722573
#110 #722573
>>722495
на самом деле чечня[/spoier] UTF-8 круто
но эта переменная длина символа в байтах в неожиданных местах вылезает боком (см. семитские языки, модификаторы слева-направо + подгон под ширину экрана)
>>722682
#111 #722661
test
1857 Кб, 4000x2667
#112 #722682
>>722573

>но эта переменная длина символа в байтах в неожиданных местах вылезает боком


В каких неожиданных местах? Если ты работаешь с текстом с известной кодировкой или технологией в которой по стандарту используется UTF-8, то неожиданных мест у тебя нет.

>см. семитские языки, модификаторы слева-направо


Ну вот опять жиды-рептилоиды виноваты!

>подгон под ширину экрана


Меняешь лоджик на работу с символами, а не байтами и всё.
>>722994
#113 #722951
Для чего используют eventmachine?
#114 #722979
>>722951
EventMachine 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.
>>723130
#115 #722983
>>722951
Если совсем тупой

https://habrahabr.ru/post/106809/
>>723130
#116 #722987
>>722951
хотел бы уточнить при каких нагрузках и условиях приходилось применять ивент-машину?
>>723130
#117 #722994
>>722682

>жиды


тащемта я арабский имел в виду в основном

>Меняешь лоджик на работу с символами,


ладно

http://appleinsider.com/articles/15/05/26/bug-in-ios-notifications-handling-crashes-iphones-with-a-simple-text
>>723032>>723259
#118 #723032
>>722994

>жиды


>тащемта я арабский имел в виду в основном


одна семитская группа, что с них взять?
#119 #723080
У меня в проекте ебаная куча nested форм, я уже заебался трахаться с cocoon и accepts_nested. че делать?
>>723086
#120 #723086
>>723080
Прекратить усложнять предметную область. А вообще фронтовать и CQRS-ить вместо серверного рендеринга форм и ебли с моделями.
>>723100
#121 #723100
>>723086
я бы рад, но придумываю поеботу эту не я, а заказчик
#122 #723130
>>722979
>>722983

Это я, само собой, читал. Только все равно непонятно. Ну веб-сервера там, тот же thin, еще faye знаю, на нем работает. А куда еще его засунуть можно?

>>722987

Да.
>>723138
115 Кб, 355x600
#123 #723138
>>723130
Очень классно отправлять пользователям всякие нотификации и обновления данных в реальном времени. Если же вместо вебсокетов долбить бэкэнд поллингом, сервер ляжет уже при сотне онлайна.

Если заморочиться, можно ещё и принимать с клиента данные и обрабатывать на бэке. Аутентификации из коробки нет, нихуя нет, ведь твой EM\Faye сервер - это по сути отдельный скрипт вообще, самостоятельный и без рельсоокружения. Хотя для Faye есть джем faye-rails, который предоставляет какую-то интеграцию, но я не пробовал.

А в пятых рельсах вон сделали ActionCable. Вполне себе симпатичный такой код выходит, и код выполняется в контексте рельсоприложения без танцев с бубном. Т. е. хорошо сделали, годно, можно юзать не парясь особо. Реализация использует потоки, т. е. это не самая эффективная реализация, но зато можно писать код не парясь по поводу асинхронного цирка (как если бы писать на EM\faye). И по бенчмаркам вполне сносно работает - для запредельного хайлоада не подходит, но потребности 99% сайтов вполне удовлетворит - держит порядка нескольких тысяч подключений. Есть ньюансы для задротов... https://blog.ably.io/rails-5-actioncable-the-good-and-bad-parts-1b56c3b31404
>>723156
#124 #723156
>>723138
Кстати этот ActionCable все на ноде сделан или они его на Руби переписали? я понмю раньше в релсах нода была

мима давно на говно рельсах не ездил
>>723158>>723360
#125 #723157
>>714587
Обычная контрактная работа. Просто обычно контрактникам не платят всякие соцпакеты и подобную поеботу, поэтому твои 120к в год резко теряют пару десятков процентов на налогах, страховках, етц. Но если ты живучий русский Иван и тебе это нахуй не нужно, можешь нихуя не платить и получать свои 500 фунтов в день.

а ещё контрактники обычно не имеют карьерного роста и контракты максимум на год, которые могут ещё и в любой момент разорвать без каких-либо обязательств, карочи такое
#126 #723158
>>723156
Открыл ссылку

ок через Redis’ Pub/Sub
377 Кб, 1450x1080
#127 #723259
>>722994

>apple


>bug-in-ios-notifications-handling-crashes-iphones-with-a-simple-text


Ну баг и что? Все данные нужно проверять. Ты же пытаешься защититься от SQL-иньекций проверяя ввод пользователя, так и здесь. Такая же ситуация со всякими игровыми консолями, которые ломают картинками(!), потому что в bsd'шной libpng(tiff/gif) лежит древний баг, который никто не чинит.

Сделали тяп-ляп и потом исправили, дело-то житейское. Стандарт UTF-8 это благо.
#128 #723353
>>723259
Ну-ка, ролл.
>>723355
#129 #723355
>>723353

>Higher/lower, heads/tails


Непонел.
>>723363
#130 #723360
>>723156

>я понмю раньше в релсах нода была


для минификаторов жи
#131 #723361
>>723259

>Ты же пытаешься защититься от SQL-иньекций проверяя ввод пользователя,



нит рельсо магия меня и так защитит
>>723369
#132 #723363
>>723355
тип игра в монетку, в угадай число
#133 #723369
>>723361
Напиши простой like на AR. Магии мало, надо ещё знать как.
#134 #724217
#135 #724653
Посоны, а почему руби-тред такойф мертвый? Я рельсы учу, неужели зря?
>>724654
#136 #724654
>>724653
Ты опоздал на год.
>>724678
#137 #724678
>>724654
У тебя ХАЙП ПРОШЁЛ опять? Не перестаю проигрывать.
>>724733
#138 #724733
>>724678
хайп в каждом новом треде проходит лол, пока будут хомяки учиться только по Хартлу, то работы будет овердахуя.
>>724747>>724754
#139 #724747
>>724733
Хартл же крут разве нет?
Как раз его собирался сейчас пройти, а ты меня опечалил анон.
Что же делать?
#140 #724754
>>724733

>Рабисты верят, что если несколько раз повторить, что работы много, то работы правда станет много. Главное почаще повторять.

99 Кб, 540x960
#141 #724772
Играем в игру "Найди раби среди десяти самых востребованных технологий". Он даже у ПЕРЛА соснул.
>>724812>>724817
#142 #724812
>>724772
Для всех этих языков не могут найти программистов, вот и всё))) Труп няшечкиперла насилуют только в яндексе каком-нибудь и букингкоме.
>>724815
#143 #724815
>>724812
Тащемта главный юзер перла - НАСА.
>>724819
#144 #724817
>>724772
Что за наркоманию ты сюда принес?
Иди посмотри на indeed или upwork
#145 #724819
>>724815
Интересно что в роскосмосе юзают и евро/джапокосмосах тоже.
#146 #725354
ебать, почитал комменты на реддите, совсем говенные жуниоры требуют 25$/h
>>725373
#147 #725373
>>725354
это для тех кто живет в US, попробуй потребуй такой рейт и скажи что ты хохол.
>>725538
#148 #725538
>>725373
вот им ли не похуй? лишь бы работу сделал.
>>725579
#149 #725579
>>725538
Представь, что ты CEO, а к тебе приходит обоссаный чурка и просит ЗП 100к рублей. Да, он внезапно демонстрирует навыки крепкого рельсо-миддла. Но это ЧУРКА, БЛЯДЬ. КАКИЕ 100К НАХУЙ. ПОШЁЛ ВОН, ПОШЁЛ ВОН!..
#150 #725582
>>725579
Это пидорашенский манямир, на самом деле там немного другие мотивы.
>>725601>>725877
201 Кб, 640x480
#151 #725601
#152 #725874
>>725579

> Да, он внезапно демонстрирует навыки крепкого рельсо-миддла.


Тогда это же не чурка.
#153 #725877
>>725582
Это украинский манямир, в Рашке расизма нет (не считая кучки поехавших скинхедов, с которыми жестко борются).
>>725880
#154 #725880
>>725877

>украинский манямир


Кстати, какого хуя он проскакивает в треде. И сюда тянут свою политхуйню.
#155 #725898
Объясните что требуется. Единственные заваленные тесты. Что есть Environment Variable? Это та, что в массиве ENV и отдельном файле? Ибо если да -- я сделал это, так как именно из этого массива скрипт берёт ссылки и ключ апи.
http://pastebin.com/qBu3xWSj
>>725900>>726079
#156 #725900
>>725898
Вот что пишут:
http://pastebin.com/7a5e2hsR
>>726079
#157 #726079
>>725898
>>725900
Блядь, я мечтаю чтобы все вендоблядки сдохли к хуям собачим в муках и боли, суки. Какие вы тупорылые мрази всё таки.
>>726112
#158 #726112
>>726079
Даааа. Поскорее бы.
#159 #727139
Бля. Анон. Поясни за бизнес логику. Что она из себя представляет. Все время слышу, что её отделяют и обновляют и кококо. Что это из себя вообще представляет?

Вот вот есть у меня crud приложение. Добавляет записи. Например, складывает значения первой и второй колонки, затем заносит в третью. Это уже бизнес логика? А как её отделяют? Создают отдельный класс, который это делает или как?
>>727142>>727147
397 Кб, 730x1032
#160 #727142
>>727139
Да, начни тупо пилить классы на каждый экшен. В контроллере у тебя останется обработка параметров, рендеринг результата и, возможно, редиректы. Всё что между этим - бизнес-логика.

Спустя время ты войдёшь во вкус и начнёшь понимать, как это всё грамотно организовывать.

Классы "операций" получаются хорошо тестируемые, повторно используемые, а также их можно друг с другом комбинировать. Кто-то называет это "сервисы", кто-то "юзкейсы". Кто-то именует такие классы глаголами, типа CreateUser (кстати, збс идея, мне очень импонирует). У нас в проектах мы называем "операции".

Есть даже микрофреймворки для организации таких классов. https://github.com/markets/awesome-ruby#abstraction Вот в этой секции есть парочка, а также релейтед джемы.

Фреймворк trailblazer вообще полностью посвящён этой методологии. (И не только этой, но слой классов-экшенов там централен).
>>727283
#161 #727147
>>727139
Ну, по хорошему, модели должны быть плоскими как сиськи твоей девушки, и иметь в себе лишь логику сохранения данных. Даже валидации выносят из моделей, если они сложные.
Сложение выносишь в какой нибудь сервисный объект, и вызываешь оттуда model.create с уже посчитаннымии Полями. Представьте, что рельсы - это способ доставки, один из многих. Сегодня ты юзаешь rails, а завтра переедаешь другой объект с тем же интерфейс от в сервисный объект, допустим сохранение в текстовый файл. Полиморфизм жи.
Попробуй gem reform для начала, поможет с формами разобраться, если сложные.
Я тебе завтра кучу ссылок скину, как домой пРиду, по теме.
#162 #727148
Да, хорошее замечание - там где раньше в тестах тебе приходилось бы стать в базу данных, ты сможешь играться с сервизными объектами. На сложных проектах ускорить можно очень сильно.
#163 #727149
И еще почитай про 7 способ рефракторинга толстый моделей
#164 #727247
Пацаны, а для чего Руби вообще используется? Чем рельсы отличаются от просто Руби?
#165 #727283
>>727284
#166 #727284
>>727283
Ну и сервис-обджекты конечно, куда без них. Туда я кладу всякие калькуляторы и т.п. - всё что без побочных эффектов.
#167 #727908
Есть одна модель, и к ней надо прикрутить две связи has_one, которые указывают на одну и ту же модель. Что-то типа:
http://pastebin.com/RZaNmWj2
Как это сделать? Как написать миграцию? Я пытаюсь. В роутах невероятный ужас получается: http://pastebin.com/eiDfisVR который идет в контроллер Shoe и распидорасивает методы create и update
Чую, что есть кошерный путь. Наведите на мысль. Полиморфность не подходит, там одна модель belongs_to разным. А у меня одна модель дважды belongs_to одной.
#168 #727911
>>727908
class_name: 'Shoe'
быстрофикс
>>728176
#169 #727923
Вышел Ruby 2.3.1

rvm install ruby 2.3.1
#170 #728176
>>727908
>>727911
STI единственное решение?
#171 #728228
>>727908
какое нахуй STI, просто делаешь class_name: 'bla', foreign_key: :bla_id
>>728245
#172 #728245
>>728228
Как миграцию написать?
>>728276
#173 #728276
>>728245
Я за то, чтобы ты написал её хорошо.
#174 #729059
>>725579
к тебе приходил чурка на собес?
#175 #729066
>>714375 (OP)
Js, Python, Ruby? На данный момент всего знаю на базовом уровне.
Куда лучше углубляться для заработка программированием?
>>729070>>729228
#176 #729070
>>729066
очевидно js
развелось же вас
>>729394
#177 #729228
>>729066
конечно JS!

мне тут конкуренты не нужны.
>>729394
#178 #729394
>>729070
>>729228
Аргументы? Или вы пизданули ради того чтоб пздануть на самоподдуве?
>>729526
#179 #729526
>>729394
платят за них практически одинаково, но на жсе тебе ждет куда большее количество головной боли и баттхерт.
хз насчет других стран, но в сшашке начальная зарплата джуниора руби - 60-70к в год. Ниже - зашквар.
>>729603
#180 #729603
>>729526

>джуниора руби - 60-70к в год


Да, а ещё отсосут на собеседовании! Это деньги миддла, и то 70 уже высоковато. Ниже 50 зашквар вот, и он предназначен для тех самых джуниоров. Но на самом деле все эти космические цифры из американского манямира не работают нигде, кроме как там. Во вне ты будешь в лучшем случае получать 40 миддлом, а 50 и выше - это уже ебать сеньор.
>>729676>>729681
#181 #729637
https://docs.google.com/forms/d/1FrfcZtTDCzyiCQjT9Y0YSYNtH5WLhNRuImw9vRwFGm4/viewform

рейт анкету на риелс погроммиста.

Про "Помимо MVC я использовал паттерны, которые сделали мою жизнь легче" вопрос вообще пушка. Что за buzzwords? поясните

Мою жизнь уже ничего легче не сделает, с тех пор как я стал динамопетушком, зачем на больное давить-то.
#182 #729639
>>729637
Не хватает поля "Желаемая зарплата".
#184 #729676
>>729603
я говорю о калифорнии, нью йорке, бостоне, сиэттле - т.е. богатых местах.
>>729694
#185 #729681
>>729603
это если на контрактную работу с американскими заказчиками не идти, а сосать задешево у европейцев.
>>729694
#186 #729694
>>729676
Так и я тоже не о техасском ранчо говорю. Редко кто ищет джуниоров за такие деньги.

>>729681
Ещё б кто взял. Сказали: разговорный хуевый и теперь ты нинужен, хотя думали, что раз грамотно пишешь, то и говоришь так же. Другие так вообще не отвечают даже не предложения. Трустори, пойду "сосать".
#187 #729996
Аноны, вообще похуй какой линукс? Или нужен определенный? Расскажите, няши :з
>>729997
#188 #729997
>>729996
бери убунту в виртуалку через вагрант, не ошибешься. в сети куча готовых конфигов. или скачай превью виндоус 10, где линукс встроен.
>>730000>>730283
#189 #730000
>>729997
Спасибо тебе, няшечка. Добра
>>730194
sage #190 #730194
>>730000
рекомендую еще сверху обмазаться docker/ansible
#191 #730283
>>729997
Он ещё не встроен.
>>730302
#192 #730302
>>730283
уже выпускали превью
367 Кб, 2190x1673
#193 #730352
>>729637
"Masha pila sok".split.map(&:size).reverse.reduce(:)

Что им даст ответ на последний вопрос?
#194 #730354
>>730352
reduce(&:звездочка звездочка)
макаба сожрала кусок моего кода.
#195 #730367
>>730352
Ну ты круче зделал.

Я сначала массив в переменную забил, потом сохранил результат acc = array.pop.length
И итерировал с reverse, сохраняя в acc значение acc word.length

поэтому мне не напишут
>>730483>>730499
#196 #730377
>>730352
Тебе тоже не напишут, потому что reverse!
>>730483
208 Кб, 1200x1550
#197 #730483
>>730377
Зачем мне мутировать что то? Тем более я проверил заранее и результат совпадает.

>>730367
Хуя ты все переусложнил. Ты кстати к ним в офис хочешь? Сколько у тебя опыт в руби и вообще в программировании?
>>730489>>730556
#198 #730489
>>730483

>Зачем мне мутировать что то?


А зачем создавать новый объект зря?
#199 #730499
>>730367
Ебать ты даун
>>730556
#200 #730556
>>730483
>>730499
https://repl.it/CLOu/0

Кстати, моя реализация быстрее на ~40%. Так вот, икспертики.
>>730567
#201 #730567
>>730556
Ты на этом ничего не сэкономишь, наркоман. Не говоря уж о том, что меришь неправильно, надо через bmbm.
>>730598
#202 #730598
>>730567
Лан, сорри, пожалуй, ты прав.

Хотя при увеличении итераций таки мой метод немного быстрее. Если же итераций мало и строки более-менее длинные, то одинаково.
70 Кб, 300x451
#203 #731154
Нужна помощь.

Допустим, у меня есть гем (Rails Engine), где мне надо создать несколько презентеров (обычные PORO). Я вижу несколько вариантов как это организовать:

1. Как в рельсах: app/presenters/my_gem/user_presenter.rb и класс MyGem::UserPresenter
2. В гем раз: lib/my_gem/presenters/user_presenter.rb и класс MyGem::UserPresenter
3. В гем два: lib/my_gem/presenters/user.rb и класс MyGem::Presenters::User

Как, на ваш взгляд, лучше сделать?
>>731183
#204 #731183
#205 #731438
как во вьюхе показать пробел на новой строке? Вот например
1
2
у меня получается
1
2
Короче говоря как сделать чтобы трифорс был правильный?
>>731454
#206 #731454
234 Кб, 590x441
#207 #731560
Есть два не стула, не варианта выбора - Руби и РНР.
Что их них следует выбрать, чтобы как можно быстрее вкатиться во фриланс за еду? Работа в офисе не интересует - живу в лютой мухосрани и переездов пока не планирую.
Сам в программировании не полный ноль, раньше довольно много писал на питоне, ну и инглиш знаю хорошо.
Не знаю, в какой тред писать, поэтому не обессудьте.
#208 #731564
>>731560
PHP. Научись темы на вордпресс натягивать и вперед.
>>731568
#209 #731568
>>731564
Ну чтобы натягивать шаблоны на cms даже школота способна
>>731587
#210 #731587
>>731568
Ты не поверишь...
>>731595
#211 #731595
>>731587
Я умею натягивать шаблоны на быдлопрессы, если ты об этом
В чем преимущество перед Python? #212 #731689
Дискас.
>>731690
#213 #731690
>>731689
Синтаксис языка поприятнее. И на питоне нет рельс кококо джанга кудах кудах, НО НЕТ

А вообще вся скриптопараша по сути похожая.
#214 #731691
>>731560
С руби на фриланс хуй вкатишься. С руби вообще хуй куда вкатишься в 2016.

Лучше иди жс учи, React Native и Electron, например.
>>731719
#215 #731692
>>731690
неудачник, че.
#216 #731694
>>731690
серьезно, блять. джуниоров не хватает, спамьте на джобспоттинге, линкедине, реддите, просто ЗАГУГЛИТЕ RAILS JOBS
кококо работы нету. вам бы только на пехапе, неосиляторы
>>731695
#217 #731695
>>731694
Но я осилятор, а у тебя детектор сломан, мелкобуквенный еблан. Пишу 4 года на рельсах и вообще в вебе лет 10 уже. Просто уходи.
>>731696>>731804
#218 #731696
>>731695
тогда чего говоришь, что работы нету? руби постоянно в десятке самых популярных языков.
или тебе нужен ХАЙП? Он у рельс прошел, и слава богу.
он сейчас у жаваскрипта, адок с ебаной кучей приходяще-уходящих библиотек и системами сборки
>>731697
#219 #731697
>>731696
Ты - мелкобуквенный, к таким доверия и уважения нет.
>>731698
#220 #731698
>>731697
аргументный аргумент. пришел на двачи ради грамматики.
#221 #731719
>>731691

>С руби вообще хуй куда вкатишься в 2016.


АРГУМЕНТИРУЙ
>>731804
В чем преимущество Rails перед Django? #222 #731720
>>731690
Дискас.
>>731740>>731801
CoC #223 #731738
>>714375 (OP)
Ruby/RoR тред и ни слова про CoC (convention over configuration). Краеугольный камень это.
>>731739>>731740
#224 #731739
>>731738
Ruby magic (CoC) versus Python’s explicitness.
>>731740
#226 #731801
>>731720
Единственное что я отрывочно слышал, так что питоноебы говорят что у них там развитый хайлоад, дохера всяких гайдов а на рубях нельзя.
Не знаю мифы это или правда, недостаточно знаний
>>731802>>731803
#227 #731802
>>731801
Возможно это просто питонохайп так влияет.
#228 #731803
>>731801

>развитый хайлоад


Отчасти

>дохера всяких гайдов


Нет
*питон-пидор8
>>731805
230 Кб, 1920x1200
#229 #731804
>>731719
>>731695
Две диаметральные противоположности в треде. Ну и кому верить?
#230 #731805
>>731803
Я помню писал раньше не питоне.
Тоже какие-то отрывочные знание.
Но очень очень нехватало bundle и gem из коробки, единствено что я помню.
Все это хождение по сайтом, скачивание инсталеров всяких библиотек, особенно на windows просто бесило.
Там уже что нибудь удобное завезли?
>>731808
#231 #731808
>>731805
Лол нет.
Ну впринципе если привыкнуть к этому говну, то довольно удобно становится. на ноль делю, да
Плюс я не знаю как с рубином, но в питоне вкатываться на работу достаточно тяжело.
>>731812
#232 #731812
>>731808
Ну вот что дейсвтиетльно не завезли.
Ну вот я накачал этих wishmaster.exe у меня скрипт работает.
Посылаю по почте скрипт, у заказчика не работат.
Мне нужно ещё интсрукцию приложить, где все эти wishmaster.exe скачать, чтобы заработало?
>>731815
#233 #731815
>>731812
Ну или объяснить как эти костыли запускать
бтв решил к вам в руби вкатиться, пожелайте мне удачи и веселого говнокода
#234 #731826
>>731560
пиши на питоне, задрал
#235 #731855
>>731560
На PHP гораздол легче найти работу за еду, уровня джумлы, вордпреса и прочих битрисков.
Но тебе это работа не понравиться.
>>731856
#236 #731856
>>731855

>понравится

#237 #732058
@работы на рельсах нет
https://news.ycombinator.com/item?id=11405239
CTRL+F rails
>>732079>>732090
#238 #732079
>>732058

>107 результатов


Что сказать-то хотел?
>>732085
#239 #732085
>>732079
работы на рельсах докуя.
>>732099
#240 #732090
>>732058
Там всего несколько позиций с возможностью удалённой работы.

А на биржах фриланса тысячи открытых вакансий рельсовиков.
>>732099>>732141
#241 #732099
>>732085
>>732090
Так получается, что тут один семенящий дибил форсит про работы-нет на руби?
>>733819>>733821
#242 #732141
>>732090
Хех, на каких биржах?
>>732145
#243 #732145
>>732148
#244 #732148
>>732145
взлольнул
VK API #245 #732236
КАК С НИМ РАБОТАТЬ?
Опишите в двух словах. Или дайте ссылку на пример.
>>732252
#246 #732252
>>732236
vk = VokntakteApi::Client.new(token)
user_data = vk.users.get(user_id = 1)[0]
puts user_data['first_name'] + ' ' + user_data['last_name']
#=> Павел Дуров
>>732253>>732265
#247 #732253
>>732252

>vk.users.get(user_id = 1)


Бля, на питоне писал недавно. Конечно:
vk.users.get(user_id: 1)
>>732265
#248 #732254
>>715954
Спасибо за ответ. Только сейчас заметил. Как проверю - отпишу, помогло или нет.
#249 #732256
>>716445

>Эктиврекорд


Не пользуйся. Альтернативы: ROM, паттерн репозиторий.

>Убогие хелперы


Не пользуйся

>Отсутствие view models.


Есть. Гем Draper.
>>716446

>Манки патчинг.


Чем плохо в контексте крупного фреймворка?

>Монолитная архитектура.


Создай свою архитектуру. Придётся написать много кода и надо немного знать внутренности рельс. Но в итоге кода всё равно будет меньше, чем на других фреймворках.
#250 #732260
>>732256
Ты так все интересно расписал, нет ли у тебя ссылок на подробнее почитать про эту архитектуру выше?
#251 #732265
>>732252
>>732253
А библиотеки надо подключать какие-то?
#252 #732266
Как выучить английский на уровне понятия книги?
Я ньюфаг, опыта программирования практически нет (только базовые знания что такое переменная, словарь, массив и т.д).
#253 #732269
>>732266

>опыта программирования практически нет


>английский не знаешь


Всё очень плохо. Я например с дипломом погромиста и хуевым знанием английского. Читаю доки, но медленно. В айти так и не вошел, хотя некоторое время работал.
#254 #732314
>>732266
Пиздуй к репетитору английского, если есть деньги. Если нет - самообразование.
И вообще зря ты сразу в руби пошел, если до этого не кодил.
>>732497
#255 #732320
>>732256

>паттерн репозиторий.


Разве это не функциональный паттерн? Удобно ли с будет с ним жить в ООП среде?
#256 #732340
>>732266

>берешь


>и учишь

#257 #732365
>>732256
лол, покажи мне адаптеры популярных библиотек к rom или sequel. хз где ты работаешь, но мне не позволяют стать астронавтом архитектуры.
>>732560
#258 #732366
>>732256
и драпер это ебаное кривое говно, которое ломается как копейка. загляни в исходный код - оно на соплях, криво висит привязанное к рельсам
>>732373>>732560
#259 #732373
>>732366
Двачую, да и декораторы в логике вывода нахрен не нужны, одна путаница от них. Лучше просто тупые хелперы использовать, без побочных эффектов.
>>732560
#260 #732497
>>732314
А куда лучше всего?
>>732526>>733140
#261 #732526
>>732497
Lingualeo.
#263 #733044
Посоны, хочу сделать полную сепарацию Rails и FrontEnd.
То есть отдельный проект с RailsAPI и отдельный проект с каким нибудь хипстерским JS-фронтентдом.
Делается это для того чтобы делать несколько(неопредленное количество) сайтов на разных доменах и хостингах, которые в целом имеют одинаковые функионал, но разные роут, дизайн, сео.
А так же чтобы не плодить на каждом хостинге по инстансу сервера котоорая будет жрать память, деньги за хостинг, синхронизацией данных между друг другом и т.п.

В целом хочу один ёба хостинг с рельсами и куча всяких говнохостингов, которые возможно даже PHP не воспринмют, на которых лежит html+js+css, которые соеденяется по REST API с главным.

Просто опыта такого нет, фремворков JS не знаю вообще(кроме жеквери), когда смотрю на список этих фреймворков просто не понимаю что из них можно выбрать, что говно, что нет, что поддерживает, что нет.
#264 #733066
надоел пхп, захотелось поковырять руби. Что на нем можно написать? браузерную игру можно написать или проще на жс будет? одни и те же гостевухи шлепать как-то остоебало.
#265 #733085
>>733044
Ты можешь это сделать и без хипстерских js фреймворков.
http://guides.rubyonrails.org/engines.html
>>733162
#266 #733140
>>732497
Если хочешь просто поиграться - то возможно pascal. Если же нет - тогда мб питон, тут хуй знает.
#267 #733162
>>733085
Это все равно система с бэкндом, у меня задача полнстью отделенный фронтенд, способный работать на хостинге вообще без серверного языка.
#268 #733168
бля, я фшоке, читаю документацию. в чем смысл ваших рубей? все то же самое, как в пхп, только функции по-другому названы. вообще ахуеть.
#269 #733170
>>733168
зарепортил толстого.
#270 #733175
>>733168
Руби придумали умные люди, которым надоело конкурировать с Рафой в пхп.
Основная задача рубиста - найти лоха, который поверит в революционность и необходимость этой замечательной технологии.
>>733261
#271 #733177
>>733044
Спасибо что сообщил нам. Держи нас в курсе.
>>733184
#272 #733184
>>733177
Хех, спасибо что сообщил что ты в курсе. Держи в курсе, что ты в курсе, няш:3
#273 #733201
>>733044
Бери любой новомодный ангуляр, а в рельсах отдавай данные json. Для четвертых рельс https://github.com/rails-api/rails-api
А в пятых можно будет сгенерировать API-приложение из коробки.
>>733218>>733220
#274 #733218
>>733201
ну нахуй ангуляр, опять перепишут с нуля без совместимости.
>>733817
#275 #733220
>>733201
А ангуляр же может вообще без бекенда жить, включа роутинг страниц и прочее?
>>733235
#276 #733229
Месяц-два назад в /pr появлялся рубист, который предлагал в своём треде помощь вкатывающимся. Накидал задачек, примерный план обучения и скинул его в виде gist'а. Я запомнил, что у него на гитхабе в качестве аватара джин синий. Есть у кого списочек тех заданий?
>>733231
#277 #733231
>>733232
121 Кб, 1000x635
#278 #733232
>>733231
Спасибо, я искал по слову ruby и ничего не нашёл.
>>733240
#279 #733235
>>733220
да. SPA же
>>733236
#280 #733236
>>733235
SPA != без бэкэнда
>>733241
#282 #733241
>>733236
в его случае ==.
#283 #733261
>>733175
ну я так и понял. поэтому и учу, кстати. пока что там все как в уи фреймворке - модели, контроллеры генерируются.
>>733262>>733270
#284 #733262
>>733267>>733272
#285 #733267
>>733262
ЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮИИИИИИ
>>733347
#286 #733270
>>733261
ЮИ ФРЕЙМВОРК АБСОЛЮТНАЯ КОПИЯ РЕЛЬСОВ ТОЛЬКО БЕЗ РУБИМАГИИ и RUBYTOOLBOX
ОТ PHP МАГИИ ХОЧЕТСЯ БЛЕВАТЬ
>>733273
#287 #733272
>>733262
пхп магия это когда все работает через пизду и колено?
>>733275
#288 #733273
>>733270
То есть если убрать миллионов гемов, а руби заменить на пхп, получится УЮ ФРЕЙМВОРК, где конечно же нужно велосипедить на каждый чих
>>733279
#289 #733275
>>733272

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 <?php >?>?><?
#290 #733279
>>733273
Не знаю как в Yii, но в Rails миллион гемов из-за разбивки на эти самые миллион гемов, модульность и другая культура разработки.

Если убрать гемы и юйки, то у руби останется няшная рубимагия, а у PHP набор багов заложенных ещё на ранних стадиях разработки языка. Незакрытый тег "<?php" яркий пример.
>>733371
#291 #733289
>>733168
бля, я фшоке, ебу бабу. в чем смысл ваших баб? все то же самое, как и в мужиках, только хуй не торчит. вообще ахуеть.
#292 #733347
>>733267
Итт пхпблядки даже не знают, как правильно произносится их любимый говнофреймворк.

http://www.yiiframework.com/forum/index.php/topic/1031-how-to-correctly-pronounce-yii/
#293 #733352
Не "йии", не "юи", не "уи".

А "и".

Ии фреймворк.

Лол, блядь. И фреймворк нахуй. Пиздос блядь. Просто пиздос.

Потому что автор - ебаный китаец-шизофреник.

А код внутри - говно. Я изучал и допиливал его в своё время. Это ад и погибель.
>>733448
#294 #733371
>>733279
Не знаю что за баг, но современные бест практисы наоборот говорят, что нахрен не нужно его закрывать, настраивайте нормально конфиги. Отчего пхп конечно же не перестает быть говном
>>733380>>733447
#295 #733380
>>733371
бест практисы для пхп как фантик вокруг говна.
#296 #733447
>>733371
Лол, так я говорю про незакрытость тега "<?php". Зачем открывающий тег если нет закрывающего, выкинули бы и начальный тогда уж.
Бест-практисы PHP это борьба с совершенно нелепыми багами. И это не от конфигов зависит (ну может можно конфигами поправить, но это отдельный пиздец, конфиг_ини, лол)
#297 #733448
>>733352
Не китаец, а бурят.
#298 #733486
Не слышал про баги в пхп, просто синтаксис и конструкции языка какие-то уебищные.
>>733668>>733766
#299 #733668
>>733486
Ну тут скорее не баги даже, а плохая проработка архитектуры языка и самого интерпретатора.
#300 #733766
>>733486
фрактал плохого дизайна.свг
#301 #733817
>>733218
будто что-то другое не перепишут
#302 #733819
>>732099

>Так получается, что тут один семенящий дибил форсит про работы-нет на руби?


получается тут один семенящий дибил форсит про то что работа есть
>>733821
#303 #733821
>>732099
>>733819
А вы не один человек случаем? В каждом треде один говорит, что работы нет, другой спрашивает про семёна.
>>733822
#304 #733822
>>733821
тоже вариант
#305 #733863
Рельсаны, поясните долбоебу за колбеки

Имеем класс со следующей ботвой.

before_save :grow_penis

private

def grow_penis
unless self.penis_size > 25
self.save
else
self.destroy
end
end

как правильно заставить коллбек before_save не сейвить модель без её удаления?
>>733889
#306 #733889
>>733863
Во-первых, коллбэки говно и не нужны, во-вторых, используй правильный коллбэк before_create и возвращай в нем false, чтоб не сохранять. А если хочешь удалить всех с "неправильными" членами - просто выполни соответствующий запрос один раз. В-третьих, никогда не пиши unless-else.
>>733891>>733896
#307 #733891
>>733889
Ещё проще - захуячь валидацию длины члена и не еби моск с колбасками.
>>733896
#308 #733896
>>733889
>>733891
Спасибо за ответы.

А можно пояснить за неиспользование 'unless-else' ?
>>733897
#309 #733897
>>733896
Самому-то мозг не рвёт эта конструкция: если не-не-больше 25, то?
>>733925
#310 #733925
>>733897
не рвёт, я на русский не перевожу это в голове, а на английском норм
>>733963>>734037
#311 #733963
>>733925
На английском тоже хуйня тащемта. Норм когда там нет else.
#312 #734037
>>733925
Вау, логика начала зависеть от языка.
>>734144
#313 #734144
>>734037
Так ты сам к языку конструкцию свел, лалка. Еще и перевел неправильно.

Правильнее так
Если ложно, что член больше 25, то

Твое "если не-не-больше 25, то" в коде так выглядит:
if !( !( penis_size > 25 ))
что действительно не очень для понимания.
>>734220>>734337
#314 #734146
before_save :grow_penis

private

def grow_penis
false if self.penis_size <= 25
end
>>734165
63 Кб, 694x801
#315 #734165
>>734471
#316 #734220
>>734144

>Если ложно, что член больше 25, то


Это просто unless, а не unless-else. Людям проще думать положительными условиями, потому что они без дополнительных слов работают. Если член, то 1, иначе 2, а не "Если ложно, что член". Это как негативы смотреть, вместо фотографий, вроде понятно, а всё равно какая-то хуйня.
Если ложно, что член больше 25, то вырасти член, а иначе, если не-ложно, что член больше 25...[/b] Давайте так не жить, короче.
#317 #734337
>>734144
«if !( !( penis_size > 25 ))» — это конечно дичь, но имхо unless это как-то уже слишком сахарно. Хотя может сказывается мой опыт начального знания паскаля и си.
#320 #734483
>>734473
Люблю картинки как на 4 ветвёртой, стена текста в растре, с длинющими строками чтобы уж точно пришлось увеличивать и елозить мышкой по столу.
>>734486
#321 #734486
>>734483
Engineers suck cock
Что тут непонятного?
>>734500
#322 #734500
>>734486
Ну это американская/гейропейская специфика.

Не виноваты же мы что когда общество имеет денег хоть жопой жуй, у них возникают затруднения с определением собственного пола и ориентации.
>>734533
#323 #734533
>>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.
>>734543
#324 #734543
>>734533
Нет и приводит пасту на английском языке. Я прям не знаю, честное слово, дьюд, ватафак? Просто признай, что это западная специфика.
>>734545
#325 #734545
>>734543
Я думал тут все англицкий знают.
>>734551
#326 #734551
>>734545
Бля, ты прикидываешься или просто не хочешь замечать очевидное?
>>734562
#327 #734562
>>734551
Инженегры сосут хуйцы. Тут всё понятно.
>>734567
#328 #734567
>>734562
Понятно.
#329 #734582
как c помощью paperclip хранить в 1 поле ИЛИ файл любого типа, ИЛИ Картинку, которую потом нужно ужать? (в зависимости от условия)
>>734648>>734653
#330 #734648
>>734582
бля, ну никто?(
#331 #734653
>>734582
Никак. Разные вещи. Даже если так можно, то не нужно.
>>734683
#332 #734655
Еще по гостевухе на питоноджанге и жавахибернете сделать и можно будет говорить, что я на все лапы вебмакака.

А вообще я вот я учу дохуя всего и делаю какие-то вещи для себя, так я когда перечисляю все это и говорю, что нет опыта коммерческой разработке, но есть какие-то мелкие поделки на перечисленных вещах, то все почему-то так удивляются и не верят. Это нормально?
>>735191
#333 #734683
>>734653
можно, уже сделал. has_attachment :file, styles: lamdba { |file| file.shit? { thumb: '100x100#'} : {} }
#334 #735046
Киньте какой-нибудь хороший пример с pundit/enum, хотя бы с 2 покрытыми policy контроллерами.
>>735123
#335 #735123
>>735046
щито?
rspec-pundit-matchers.
#336 #735191
>>734655

>А вообще я вот я учу дохуя всего и делаю какие-то вещи для себя, так я когда перечисляю все это и говорю, что нет опыта коммерческой разработке, но есть какие-то мелкие поделки на перечисленных вещах, то все почему-то так удивляются и не верят. Это нормально?


Предложение звучит как набор оправданий для себя и для других, даже через двач видно.

Заказчику в целом все равно какие ты там переделки умеешь использовать, ему скучно это слушать в целом, ему нужно знать что ты сможешь сделать результат который принесет ему прибыль, а то что у тебя там полон гитхаб переделок законченных на 5%, но очень интересных, это хорошо, но не прибыльно.
Когда спрашивают про коммерческую разраобтку, спрашивают, знаешь ли ты про сроки, планирование, поддержку, и все остальное.
>>735240
#337 #735240
>>735191
я даже не знаю, как можно сделать проект коммерческим. заделать что-то типа платной системы отзывов с базой данных на моем серваке? но это же надо дохуя за бд платить. в голове у меня только крутятся вещи, которые можно делать в рамках хобби - всякие там гостевухи и браузерки, но их на хлеб не намажешь. я не оправдываюсь, просто я наверное тупой, медленный или от жизни отстал. все-таки кодинг - это уже больше для шустрых мальчиков-хипстеров из больших городов, которые ваяют что-то свое в перерывах между игрой в дотку. я в эту картину не вписываюсь.
>>735354
#338 #735354
>>735240
Законченный проект, это коммерчески успешный проект.
Посмотри на nginx например, Сысоев в опенсорсе его допилил и бесплатно выложил и ему всё равно денег предложили.

В твоём случае ты должен сделать в своей репе законченный проект, с хорошим README.md, чтобы в нём были значки о прохождении тестов и сборки и некая документация. Короче всё как в лучших домах европы.

Коммерческий человек не может посмотреть в код и разобраться какой-ты охуенный, а вот на README.md посмотрит с интересом и там должна быть конфетка.
>>735405>>735430
#339 #735405
>>735354

Ну да, мне кажется 90% опенсорса никогда не дорастут до nginx, ведь нет дяди, который стоит и подгоняет сроками и quality test.
Люди останавливаются, когда попенсорс не приносит удовольствия, приятные фичи закончились, осталась ебля.
>>735419
#340 #735419
>>735405
Ну я говорил скорее про портфолио, в роли которого обычно выступает опенсорс для своих разработчиков.
#341 #735430
>>735354
Но ведь этот законченный проект тоже не будет коммерческим. Таких высот, как написание своего сервера мне все равно не достигнуть. А очередную гостевуху или браузерку вряд ли кто-то оценит. А других идей у меня все равно нет. Да и надоело уже писать всякое говно и выкладывать на гитхаб, прям как бомж с протянутой рукой трачу свое время годами: нуууу возьмииитеее ну плиииз.
Нормальные чуваки создают такие проекты, на которые быдло само тянется и умоляет взять деньги, чтобы им попользоваться. надо какую-то голден идею, хуй знает.
>>735438
#342 #735438
>>735430
Я считаю тут нужно сразу понять кому ты себя продаёшь.
Крутой охуенный проект это для конечных пользователей.
А тебе как начинающему разработчику, надо продавать себя работодателю, которому прежде всего нужен компетентный человек, готовый работать как профессионал.

Именно поэтому у тебя должен быть гитхаб с твоим самописным блогом, где человек работодателя сможет взглянуть на твой код, оформление и проработку ридмишки, коммиты (их атомарность и осмысленность) — тогда проверяющий скажет, этот человек начинающий, но видно что не валенок и знает как и с чем работать.

В живописи есть такая фигня, которая отличат картину от наброска. Набросок может быть нарисован красками, проработан, но с какими-то отогнутыми углами холста (или о ужас просто листа).
А картина же будет на идеально ровном холсте, а лучше в рамке, как законченное произведение.

Баклана у которого в коде охуенный код, а в ридми «Readme supposed to be here...» очень часто с работой прокатят. Мир поменялся за прошедшие десять лет, у индустрии появились стандарты, стайлгайды и прочая муть, а я ведь просто хотел писать видеоигры, а не решать задачки матановые.
#343 #735439
Парни, я тут совсем новенький. Допустим, мне надо сделать красивый сайтец, а к нему бэк на рельсах. Так вот, можно, чтобы мне фрилансер сделал сайт, а я уже к нему запилил бэк?
>>735443
#344 #735443
>>735439
Можно, в самом простом случае тебе надо будет дать деньги и получить html/css/js файлики. Можешь поискать исполнителя знакомого с рельсой, который будет верстать и собирать под всякие less/sass/haml и прочие фронт-проессоры для рельсы.
>>735444
#345 #735444
>>735443
Ага, отлично. Меня первый вариант устраивает, я сам учу рельсу, хочу запилить кое-что.
>>735450
#346 #735450
>>735463
#347 #735455
Ребята, проведем небольшой опрос?
Возраст?
20
Местоположение
Рашка
Сколько времени знакомы с рельсами?
Пошел 4й год.
Сколько времени работаете, используя рельсы? (за бабло т.е.)?
3й месяц
Какой часовой рейт/зарплата?
15$, 20 часов в неделю
Куда планируете свалить?
США, флорида/джорджия/южная калифорния.
#348 #735463
>>735450
Мало что понял, благодарю в любом случае.
>>735455
17
ДС
3 дня, а так я андроид макака(2 года)
4 месяца(опять же, андроид)
25к в месяц за 1-2 часа в сутки
США, Канада, Франция
>>735464
#349 #735464
>>735463
спасибо.
бля, забыл добавить - кто/откуда заказчик?
>>735465
#350 #735465
>>735464
Знакомый из конфы разработчиков.
>>735466
#351 #735466
>>735465
Из дс.
Опять обосрался.
436 Кб, 531x346
#352 #735722
Вкатываюсь в рельсы, делая ёба сервис.

Задумался, вот, что лучше - скаффолдинг и потом допиливать его, или модели с контроллерами отдельно генерить и на них уже всё что надо вешать?
>>735849
#353 #735761
Рубиисты!
Есть ли сейчас смысол заниматься конкретно рельсами? Какая сейчас востребованность этой технологии? Если, например, я хочу свалить за бугор, найду ли я там себе пристанище со своими рубями?
>>735782
#354 #735782
>>735822
#355 #735822
>>735782
Но мне почему-то кажется, что руби подыхает полегоньку
>>735854
#356 #735849
>>735722
Зависит от задачи
>>735869
#357 #735854
>>735822
Да. Еще пара лет и его заменят хаскелем в элитных проектах, а гостевухи будут делать на джаваскрипте и голанге.
#358 #735869
>>735849
Ну например, скаффолдить можно то, что подлежит редактированию пользователем. (таблицу статей, пользователей, категорий).

ВОт ещё... связную таблицу для has_many :through (что бы связать категории с материалом например) через g migration делать? Модель же не нужна под неё?
#359 #735878
>>735455

>возраст


21

>местоположение


Страна без газа, Крыма и Донбасса

>сколько времени знакомы с рельсами?


Немного, был раньше питон-адептом

>Сколько времени работаете, используя рельсы? (за бабло т.е.)?


Еще не работаю

>Куда планируете свалить?


Планирую выпиливаться, а не сваливать куда-то
#360 #736249
https://rubyheroes.com/heroes/2016
Просто торжество феминотолерастии.
#361 #736255
>>736249
А хотя там одна Акира затесалась, мимикрируя, лол. Возможно, отбой тревоги тогда.
>>736360
720 Кб, 400x400
59 Кб, 200x200
#362 #736360
>>736249 >>736255
Не твоя — вот ты и бесишься!
#363 #736393
>>736249
Чет проиграл с этих тянок с репами с 0 звездами.
#364 #736432
О, боже, как же я завидую рубистам!

0) Симпатичные ретро end, заместо вечно просирающихся отступов
1) Статические методы без костылей
2) @, @@ и т.д.
3) Крутые разделители в виде ::
4) Тернарий ? : , святое дерьмо иисуса, как же я люблю этот оператор!

мимо-питонист-со-стажем
>>736470
#365 #736470
>>736432

>0) Симпатичные ретро end, заместо вечно просирающихся отступов


Хуйня. Скобки читаемее портянок из эндов.

>1) Статические методы без костылей


Норм.

>2) @, @@ и т.д.


Норм.

>3) Крутые разделители в виде ::


Хуйня.

>4) Тернарий ? : , святое дерьмо иисуса, как же я люблю этот оператор!


Нечитаемая хуйня. В своем коде нормально, чужой еод с этим говном нечитаем.
>>736477>>736643
#366 #736477
>>736470
Он про скобки ничего не говорил, он в принципе сравнивал. Чё ты как валенок себя ведёшь.
#367 #736536
Что лучше, использовать инстансные переменные как есть (@hui, @pizda) или задавать их в attr_accessor под private?
Какие подводные камни?
26 Кб, 288x215
#368 #736549
[1, 2, 3].map(&:-@)
>>736594>>737808
#369 #736594
>>736549
Картинка явно зашоплена, синего и рыжего там не могло быть.
611 Кб, 1104x505
#370 #736643
>>736649
#371 #736649
>>736643
нахуй ты сюда минифай засунул, ещё влупи байткод для большей жести.
#372 #736655
>>736249

>второй квартал 2016 года


>все места заняты


Лел.
Кстати, за что они туда попадают-то? За написание очередной очень нужной книжки "рабе длйа детеий" и хэловорлд на гитхабе?
>>736658
#373 #736658
>>736655
За вагину между ног, что ты как маленький.
>>736663
17 Кб, 522x133
#374 #736663
>>736658

>вагину между ног

49 Кб, 600x400
#375 #736666
>>736663
Да, она похожа на вачовских.
Заподозрил что-то не то.
>>736688
#376 #736669
>>736663

Так я не понял. Значет это бывший жирный мужик, который сделал операцию и стал жирной телкой, при этом он ещё теперь он ещё топит за феминизм.
>>736672>>736688
#377 #736672
>>736669
таких дофига в ойти последнее время
#378 #736688
>>736663 >>736666 >>736669
А чё вам трансгендерный феминизм не нравится?
Ватники дофига, флюродросите Путину В.В.?????
У американцев анусы разбиты, а у вас дороги — сами подумайте кому хуже живётся.
>>736690
#379 #736690
>>736688
Всем похуй на чужие анусы, горит от ебаного форса этого мусора. Тот(та) же Коралайн – не пишет нихуя, но "кококо я погроммистКА" и работает в житхабе просто по тому, что форсила эту хуйню.
В опенсорсе теперь есть два вида мудаков – самолично Торвальдс который кладёт всех хуями и всем похуй, либо феменистки/трансфеменистки, которые увидев что-то что им не нравится в твоём твиттере могут начать ебать мозги, и эта хуйня только усиляется. Скоро начнут из корпораций выгонять за их репорты, тут конечно Путины и прочие личности виноваты.
#380 #736691
#381 #736694
У меня тут непонятная хуйня возникла. В проекте бэктрейс ошибки перестал отображаться. Теперь просто ОШИБКА и все, хуй знает что произошло. Подробностей ни в консольке нет, ни в браузере — прост редиректит на 500.

НО. В некоторых коммитах все работает нормально. Коммиты вообще никак друг с другом не связаны. Я нашел два таких методом тыка.

Как только переключаешься с "рабочего" коммита на нерабочий — бектрейс ломается. Разница между коммитами (рабочим и нерабочим) в одном файле, который вообще к делу не относится.
Этот файл можно взять с нерабочего коммита, тем самым сделав рабочий и нерабочий коммиты идентичными, но ничего не ломается. Нужно сделать именно чекаут, чтобы сломалось.

В интернетах нашел только предложение апгрейдить рельсы (не помогло) и выставить _в каждом_ .rb файле кодировку, мол, кто-то там у вас `ActionView::Template::Error` портит. У остальных кодеров в проекте такой проблемы нет. Пробовал полностью клонировать проект в новое место — там то же самое.

В итоге после установки джема `better_errors` проблема исчезла, но... Что за хуйня??
#382 #736695
>>736694
В таких случаях помогает переустановка виндувс.
>>736706
#383 #736696
>>736694
Вспомню традиции русских форумов и скажу одно:
"Телепаты в отпуске".
Мы не можем посмотреть в чем там проблема без исходников, которые ты конечно же не дашь, так что вопрос закрыт.
>>736706
#384 #736697
>>736694
Что если logger проставить? попробуй на другом сервере запустить, thin напрмер
>>736706
#385 #736698
>>736690
Лол, я думал ты оценишь мою толстоту.
Так-то я тоже за Путина и сам офигеваю со всей это ЛГБТ-шумихи. Просто интересно когда они программировать-то успевают?
Ещё кстати у них фишка это волосы в кричащие цвета красить.

А что там у тебя вместо веб-сервера? Поищи error.log какой-нибудь. Вдруг там что-то на уровне интерпретатора (правда у меня было такое только когда писал в cgi-стиле).
>>736699>>736706
35 Кб, 220x360
#386 #736699
Эээхь
>>736698>>736694
#387 #736706
>>736695
Но я прыщеблядь.

>>736696
И что ты в исходниках смотреть будешь?

>>736697
В контроллерах логи не работают. В `development.rb` работает. Видимо, где-то на пути к контроллерам все ломается..

Сервер и так thin стоял. На пуме запустил, такая же ситуация.

>>736698
thin только в `development.log` пишет, вроде бы. Оно же в консольку уходит.
#388 #736708
>>736694
Короче, для начала делаешь git bisect пока не находишь коммит, в котором впервые произошла эта хуита. Ну и если он прямо текущий, я бы попробовал его разрушить и заново закоммитить.
>>736713
#389 #736713
>>736708
Пацаны не поймут если я с мастером что-то делать начну, у них-то все работает.

Вот так сейчас мастер у меня работает:
sdflk43 HEAD - нерабочий
qweasdf - нерабочий
awef3 - рабочий
asdf34 - нерабочий
asfe432r - не рабочий
разница между этими коммитами уровня "переименовал переменную в тесте"
если чекаутить файл из нерабочего коммита (а там разница только в этом файле), то все продолжает работать
32asdfwe - рабочий

На других бранчах тоже не работает (на каких-то, наверное, работает).

Пробовал создавать бранч от рабочего коммита и мержить туда остальной мастер и тогда оно ломается.

В крайнем случае, раз чекаут нормально работает, можно было бы взять рабочий коммит и отчекаутить весь вообще проект рекурсивно, но пока что и так работает, с `better_errors`.
#390 #736793
>>736694

>Нужно сделать именно чекаут, чтобы сломалось.


Не то имел ввиду. Нужно сделать чекаут "нерабочего" коммита чтобы все сломалось. Если сделать чекаут файла из нерабочего коммита (а один единственный файл это и есть разница между этими двумя коммитами) — то логи работают. Это мне так повезло и я нашел коммиты с разницой в один файл, так-то есть и коммиты с разницей в охуилион файлов.

В общем, раз в development.rb логи работают, а в контроллерах уже не работают, то остается только расставлять логи во всем порядке загрузки рельс и смотреть где они сломаются.
#391 #736815
Я не понял, все же работает сейчас.
Зачем тратить часы на выяснения этого говна, займись работой.
#392 #736834
>>736694
Может, проблема с кодировкой или CR\LF\CRLF.
#393 #736916
>>735455
25
Рашка
5 лет
2 года
15$
Никуда не планирую

вы тут с 12 на рельсах кодите что ли?
>>737260
#394 #737260
>>736916
если CRUD'о ебашилово назвать кодингом, то..
#395 #737269
А стоит ли переписывать вьюхи с ерб на какой-нибудь слим, ерубис? Вообще есть ли какой-то профит в скорости рендеринга от смены шаблонизатора?
>>737271
#396 #737271
>>737269
На слиме классные шаблончики получаются, слим няшка же. И быстро работает, но это вторично.
>>737281>>737337
#397 #737281
>>737271

>слим


Это же джейд.
>>737331
sage #398 #737331
>>737281
пук ты хотел сказать
#399 #737337
>>737271
а кто тестил на реальных проектах насколько slim лучше haml?
>>737352>>737418
#400 #737352
>>737337
были бенчмарки, слим самый быстрый. гугли
>>737369>>737381
#401 #737369
>>737352
Тем не менее хамл намного популярнее.
>>737375
#402 #737375
>>737369
В слиме исправлены многие неудобства хамла. Слим более богат фичами. В новых проектах популярнее слим. Хамла много в легаси-говне.
#403 #737381
>>737352
сейчас глянул, да слим реально быстр, даже догнал по сути hamlit, причём пол года назад ещё существенно отставал.
свежее: https://travis-ci.org/k0kubun/hamlit/jobs/125316387
#404 #737418
>>737337
На реальных в шаблоны иногда лезут верстальщики и фронтенд-макаки. В какой рот они дружно твой хамл со слимом, можешь сам догадаться.
#405 #737421
>>737418
Въёбаныйврот? Похоже у нас рекурсия каламбуров.
#406 #737449
>>737418
В какой рот нужны такие работники - сам знаешь. Нахер с ними работать?
#407 #737556
>>737418
Хз, у нас верстальщики норм с haml, но slim не знают, или делают вид, что не знают.
>>737618
#408 #737618
>>737556
разница между ними в разы меньше, чем между erb
#409 #737644
Если фронт не знает слим, ему просто ставится задача на 4 часа "выучить слим".
>>737646>>737770
#410 #737646
>>737644
Если бэк не знает ерб, ему просто ставится задача на 4 часа "выучить ерб", а хипстерское говно вроде слима остается для домашних проектов.
>>737650
#411 #737650
>>737646
Ну это ты глупость какую-то по-детсадовски в ответ кукарекнул. Что за бэк не знает ерб? И слим не хипстерское, не говно, и не для домашних проектов. Все свежие проекты деляются на слиме, погугли, блядь, тупой болван.
#412 #737658
Какой даун будет учить erb/slim 4 ЕБАНЫХ ЧАСА?
>>737660
#413 #737660
>>737658
Ну я например. Я до него с питоном не был знаком, поэтому к ебаным отступам привыкал несколько дней.
#414 #737669
Есть такая проблема - в модели есть метод, который создает новый текстовый файл и записывает данные туда. Но после этого не могу удалить этот файл ни рубями, ни вручную, пока не остановлю сервер. Если создаю чистый файл, ничего не записывая туда все проходит норм. Как удалить файл?
метод модели
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
>>737679
#415 #737679
>>737669
Ты открываешь файл, но не закрываешь. Алсо, у тебя какая-то ёбань в коде, так не делают обычно.
>>737684
#416 #737684
>>737679
Хм, действительно. Добавил f.close, и вроде удалилось.Думал что если записать в файл в блоке то он автоматически закроется.

>Алсо, у тебя какая-то ёбань в коде, так не делают обычно.


А как? Мне нужно чтобы кнопкой генерировался файл на сервере с данными из таблицы, а потом я отправляю его через send_file.
#417 #737689
>>737684
Не делай File.new отдельно. Оставь только File.open.
#418 #737691
>>737684
А лучше вообще замени на IO.write или IO.binwrite.
#419 #737692
>>737684

IO.write(file_name, books.map { |b| b.author.to_s }.join("\n#\n"))
#420 #737724
кто напишет код короче?!
>>737729>>737740
#421 #737729
>>737724
Это не "короче", а "по-нормальному".
#422 #737740
>>737724
как вас унииизили, субханАлла, короче!
#423 #737746
Какой лучший способ импортировать файл в Google Docs? (html->таблица).
Столько разных библиотек, что я даже хз
#424 #737759
>>737684
Этому не место в модели, вынеси в отдельный класс и вызывай, хотя бы, в контроллере.
#425 #737770
>>737644
Вопрос "а нахуя тащить это в продашкн и ебать мозги фронтам и тянке-верстальщице с 8 классами образования" остается открытым.
>>737776
#426 #737776
>>737770
Сочувствую вашей говноконторе.
>>737777
#427 #737777
>>737776
Сочувствую долбоебам, которые тащат слим без причин, просто НУ ВЕДЬ ТАМ ЖИ ОТСТУПЫ!!1
>>737781
#428 #737781
>>737777
Какие отступы, что ты несёшь? У тебя персональный бугурт, видимо. И да, ваши фронты дно и даже глубже дна, если для них лаконичность синтаксиса шаблонов = ёбля мозгов.
#429 #737808
>>736549
Как это работает? Я про -@
Ссылку на доку, пожалуйста.
>>737814
711 Кб, 1350x2079
#430 #737814
>>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 }
#431 #737829
>>737814
домо оригато годзаймаста
#432 #737841
>>737814
Но причем здесь блджад @?
>>737844>>737845
#433 #737844
>>737841
чтобы отличить бинарный минус от унарного
#434 #737845
>>737841
Матц так решил. Назвать метод унарного минуса -@. Чтоб можно было писать смайлики в коде.
#435 #737893
>>737814
Спасибо.

я с какого-то перепугу решил, что @ - это ссылка на объект, передаваемый в блок
#436 #738408
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 }
>>738433
#437 #738433
>>738408
пояснил проблему как бог
>>738468
#438 #738468
>>738433
ладно похуй, как я понял этот трюк что-то вроде ленивой загрузки, хотя вроде как АR быстрее высрал.
351 Кб, 1852x2596
#439 #739441
Руби основы примерно освоил, иду по туториалу Хартла инб4 хуета, вроде норм, но как посмотришь на шапку треда или на пикрилейтед, то накатывает чувство пиздеца, что я никогда не смогу освоить и 20% рельс и не смогу ничего своего написать. Это нормально?

Олсо параллельно ПОДРАБАТЫВАЮ за гроши - верстаю (и бек тоже) маленького сайта одной местной фармакомпании.
#440 #739490
>>739441
А компы настраиваешь бухгалтерии?
#441 #739640
>>739441
Л. О. Л.
После Java (я начинающая андроид-макака на удалёнке) рельсы - это как перейти с Gta V на сапёра.
ИМХО рельсы настолько легки, что мне они кажутся нереально сложными. Объявил переменную - обращаешься к ней отовсюду, нет скобок у методов, бла, бла, бла...
https://www.railstutorial.org/book/
Ты же тут учишь, да? Я тоже. 9.3.3, идёт третий день обучения.
>>739676>>739714
#442 #739676
>>739640
А по существу есть что сказать?
>>739682
#443 #739682
>>739676
Нет, я довн.
Пойду 10 главу переписывать.
#444 #739714
>>739640
ты сейчас смешал синтаксис руби и рельсы, и вообще хуй пойми какое сравнение.
>>739757>>739781
#445 #739757
>>739714
Двачую.
#446 #739781
>>739714
Я просто аутист, простите.
#447 #739787
Бля в руби 2.3.0 добавили наконецтоки блядь нормальные провкерки на нул в навгиации, вместо костылеебского .try(:jopa)
джва года ждал
#448 #739791
>>739787
huita.try(:jopa).try(:[],:govno)
>>739876
#449 #739800
>>739441
Не вижу ничего сложного в пике, 80% знания уровня "хело ворлд", погалеришь на дядю пару месяцев и все узнаешь
>>739821
#450 #739821
>>739800
и поймешь что принцип 80/20 очень даже правдив.
дебаггинг какой-нибудь лютой хуйни, поддержка легаси, попытка вызывать какой-то кривой сервис, нужный заказчику...
#451 #739876
>>739791
>>739787
Парни, там уже 2.3.1 релизнулись
>>739883
#452 #739883
>>739876
image = user&.profile&.thumbnails&.large

?%?%:;
>>739909
#453 #739909
>>739883
если тебе приходится писать такой код, у тебя дома что-то не так.
#454 #739918
>>739787
Вообще-то больше одного трая за раз говорит о том, что ты делаешь что-то не так.
#455 #740236
>>736249
А серьезно, нахуй? Типа глянте у нас в руби есть телочки, так клево. Я блядь на них посмотрел и захотелось в пхп съебать.
19 Кб, 200x200
10 Кб, 200x200
#456 #740326
>>740236
самое забавное в прошлые года вполне ебабельные тянучки были, а теперь все скатилось в sjw, в общем сраная америка катится в сраное говно
>>741270>>741273
#457 #740346
>>740236
Типа "мы ничего такого в виду не имели, мы толерантны, нинад в полицию, только не по лицу плес(((".
172 Кб, 1600x900
#458 #740365
>>740236

>телочки

#459 #741236
Какой-то петух из вашего треда срет в треде олимпиадников.
#460 #741270
>>740326
Симпатичные девушки нужны только для парней без фантазии.
#461 #741273
>>740326
Вылизал бы им письки.
59 Кб, 200x200
#462 #741939
>>736249
Я воспринимаю это как популяризацию руби за счёт совеременных толерастных тенденций. Вот самый влиятельный трап руби-сообщества (пикрел) придумал Code of Conduct, в котором по сути прописные истины, и теперь эта хуйня используется в кадом проекте (CoC есть в репе Go, Rust, Node.js). Зато руби пропиарился, мол, мы впереди планеты всей не только по инфраструктуре и экстремальному программированию, но и по толерастии.
#463 #741941
>>736690

>В опенсорсе теперь есть два вида мудаков – самолично Торвальдс который кладёт всех хуями и всем похуй


Торвальдс охуенен. Во многом его характеру и стилю как общения, так и управления проектом, Линукс так взлетел.
>>741942
#464 #741942
>>741941
fix
Во многом БЛАГОДАРЯ его характеру и стилю как общения, так и управления проектом, Линукс так взлетел.
#465 #742761
Как с помощью devise разрешить пользователю совершить действие из емейла?
т.е. у меня есть documents#action (GET). Какой-нибудь токен можно сгенерировать на сервере, чтобы запрос из емейла выглядел /documents?token=blabla, и потом расшифровать, и убедиться, что он верный?
>>742789>>743190
#466 #742789
>>742761
А причем здесь devise вообще? Сохраняй токен и проверяй, делов-то.
#467 #742832
Я знаю почему в этом треде появляется лишь 13 постов в день. Просто у руби-разработчиков столько работы, что некогда отвлекаться.
>>742836
#468 #742836
>>742832
ну я вечером захожу, днем работаю, так что ты прав.
#469 #742898
Посны я нубас, так что вот. Например у меня есть блог, есть у постов метод шоу, мне нужно что бы там была форма отправки комента, я так понимаю, что нужно в экшне написать @comment = Comment.new , во вьюхе форма заполнится, а чё дальше то делать. В случае создания поста форма заполняется в new, а пост создается в create. Как мне из show поста пойти в create коммента? В какую сторону гуглить?
>>742988
#471 #743003
>>714632
Поподробнее братан
>>743012
#472 #743012
>>743003
Да что подробнее, человек мучается на винде с вагрантами.
#473 #743190
>>742761

>Как с помощью devise разрешить пользователю совершить действие из емейла?


Во-первых, для авторизации юзай Pundit, в Devise только аутентификация.
Во-вторых, выкинь Devise на помойку, пока не поздно. Используй Authlogic или Sorcery.
#474 #743218
>>743190
Во-первых, ты меня не понял, мне нужно было провести аутентификацию с помощью GET запроса из емейла. Pundit и так юзаю.
Во-вторых, выкидывать devise мне никто не даст, хотя меня он уже заебал, ибо легаси.
В третьих, проблема решается с помощью prepend_before_action :shit в нужном контроллере
def shit
user = ...
sign_in(user, event: authentication)
end
#475 #743561
>>743190
Че эт devise не модный стал?
314 Кб, 400x400
#476 #743588
Ребят, безумная фронтенд мартышка забегает в тред. Можете пояснить за актив модел сериалайзер? Суть такова: есть пагинация через каминари и пагинируемая модель с ассоциациями. От каминари мне нужен 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. Подскажите пожалуйста, как можно этот вопрос разрешить правильным образом, чтобы и через актив модел сериалайзер, и некст пейдж, и ДХХ одобрил, и вообще. А то сейчас я держу стейт пагинации на клиенте, что само по себе уже неприятно и непрактично.
314 Кб, 400x400
#476 #743588
Ребят, безумная фронтенд мартышка забегает в тред. Можете пояснить за актив модел сериалайзер? Суть такова: есть пагинация через каминари и пагинируемая модель с ассоциациями. От каминари мне нужен 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. Подскажите пожалуйста, как можно этот вопрос разрешить правильным образом, чтобы и через актив модел сериалайзер, и некст пейдж, и ДХХ одобрил, и вообще. А то сейчас я держу стейт пагинации на клиенте, что само по себе уже неприятно и непрактично.
>>743627
#477 #743625
>>743190
он популярный, но ебать кривой.
#478 #743627
>>743588
код закинь куда нибудь, хуй прочтешь
>>743667
#479 #743667
>>743627
Да чет куклоскрипт меня подвел с коде тегом. Я так-то что-то нашманил уже вроде. На Аппликейшн контроллере сделал метод pagination и там извлекаю next_page: object.next_page. А потом на любом контроллере format.json { render json: @collection, meta: pagination(@collection), adapter: :json }. Магия жи есть. Это конечно всё круто, когда просто работает. Особенно после нода или гоу, где простыни писать надо по малейшему поводу.
#480 #743928
Приветствую всех.

Платина.

Насколько сложно перекатиться из 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 разработки?
Каков уровень зарплат по сравнению с другими языками, может быть тут есть тот, кто уже перекатывался, и может ответить?

Большое спасибо.
>>743958>>744088
#481 #743958
>>743928

>Насколько сложно перекатиться из PHP разработки (yii2) в Ruby? Насколько сложно найти удаленную/постоянную работу новичку?



Новичку - вкатиться в руби сложно, а работу найти не реально.
#482 #743968
>>743958
Платиновый ответ на платиновый вопрос.

Ты прошел все задачи, прочел литературы из оп поста? Сколько времени изучал? Расскажи про свой опыт.
#483 #744018
>>743958
Тебя ткнуть еблом в не-русскоязычные вакансии, или сам найдешь?
>>744023>>744309
#484 #744023
>>744018

>Тебя ткнуть еблом в сотни не-русскоязычных индусов на каждую вакансию, или сам найдешь?

#485 #744033
Среди местных анонасов есть те, для кого Ruby не был первым языком программирования, и те кто имеют опыт коммерческой разработки на других яп?
#486 #744078
>>743958
иди-ка ты нахуй. google hacker news who is hiring; ctrl+f rails
>>744080>>744309
#487 #744080
>>743958
иди-ка ты нахуй. google hacker news who is hiring; ctrl+f rails>>744078
https://news.ycombinator.com/item?id=11611867
113 результатов, 1 минута поиска.
>>744309
#488 #744082
еще есть angel.co, joboffers и hiring.com
#489 #744088
>>743928
мой совет - как только получится, вали с русскоязычных бирж труда и всегда работай с зарубежными заказчиками. Для них 2k$ в месяц для программиста это пиздец как мало, столько даун в макдаке получает. Тут важнее продать себя, чем быть охуенным программистом.
#490 #744104
Господа, ещё такой вот вопрос есть по рельсам. Мне по дестрою в респонсе контроллера нужна инстанция удалённой модели на клиенте. Но, насколько я понимаю, @model.destroy в def destroy методе дестроит модель и получить к ней доступ в respond_to do блоке не получится, т.к. она была уничтожена двумя строчками выше. Я могу очевидным образом сохранить модель в переменную до дестроя, x = @model и в respond блоке вовращать саму переменную x, несмотря на то, что модель была уничтожена.
Пример: http://pastebin.com/v7q5KA7Q
Насколько это практично, в плане будет ли GC освобождать память и в целом является ли такой подход анти паттерном?
>>744127
#491 #744124
http://pora-valit.livejournal.com/4515638.html
чет мне мои 15$ кажутся плохой оплатой, пойду заказчика уламывать на 20$ (будет 1600$ в месяц на полставки)
#492 #744127
>>744104
ебать говнокод :) юзай activemodel serializers, и какой-нибудь responders по желанию.
>>744140>>744142
#493 #744140
>>744127
Нинужно, если там только не over 9000 круда.
#494 #744142
>>744127
1. В чем говнокод?
2. Это и есть активмодел сериалайзер, какое это отношене имеет к ситуации?
>>744208
#495 #744208
>>744142
у тебя должно быть все настроено так, чтобы было просто `respond_to :html, :json`.
#496 #744309
>>744080
>>744078
>>744018
Везде нужны звёздные сеньоры-комбайны с 5 лет опыта и портфолио. Вакансии есть, но нигде не берут новичков.

А охуительные ебланы с ctrl+f ссылками могут соснуть. Почти все вакансии там on site. Вы понимаете, что это значит? Нет, вам не предложат релокейшен. Просто это вакансии для белых людей, пусть даже они тупые. А если ты сеньор из отсталой раисси, тебя шлют на хуй. А вакансий на удалёнку там 3.5 штуки, понимаете, да? Не надо тыкать в сотни результатов по ctrl+f, там нет сотни подходящих вакансий, там свободных вообще нет. Придурок тупой, зла не хватает блядь, умничает тут.
#497 #744312
>>744309
Два чаю. В половине вакансий сразу пишут "us residents only".
>>744470
#498 #744313
Новичок в рельсах - это бомба и генератор говна. На руби и рельсах говнокодить можно легче и более изощрённей, чем на пхп. Ни один здравомыслящий руководитель не станет нанимать рельсоджуниора, который не отдаёт себе отчёта в своих действиях. И учить джунов не выгодно, потому что они всегда сваливают через год, когда становятся малость полезными. И ставить джунов на проекты к сеньорам не взлетает, потому что, охуеть не встать, сеньоры от этого ДРОПАЮТСЯ из конторы.
#499 #744325
>>744309
Все верно, но ещё хуже - даже опыт и портфолио не помогают.
>>744470
#500 #744364
>>744309
ты чего думаешь, тебе будет на блюде с голубой каемочкой написано junior remote rails?
лол
прикинь, можно попытаться с ними добазариться, показать профиль, а не ныть на дваче, и сосать рашкины зарпалаты по 40к. это вообще только 1 несчастный линк, ты другие вообще открывал?
>>744470
#503 #744470
>>744364
>>744325
>>744312
>>744309

Кто из вас до кодил коммерческие проекты на других языках, кроме Ruby?
>>744501
#504 #744501
>>744470
неа.
#505 #744554
Есть поля Document#id и Document#label, как построить форму так, чтобы она присылала

[1, 'shit'], [2, 'shit']?
14 Кб, 681x133
#506 #744644
Помогите ребят, уже намучался

Есть модели
Document
has_many :responses

Field
has_many :responses

Response
belongs_to :document
belongs_to :field
value(string)

Как сделать такой поиск по документам? можно юзать squeel
#507 #744739
http://railsguides.net/belongs-to-association-and-validate-presence-with-nested-attributes/#comment-962569920

Чет в голосину с этой хуйни. Белым людям похуй, а пидорахену с не менее хуевым английским глаза видите ли режет.
>>744742
#508 #744742
>>744739
Но там ведь правда текст весь состоит из ошибок...
Тред утонул или удален.
Это копия, сохраненная 2 июня 2016 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /pr/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски