Главная Настройка Mobile Контакты NSFW Каталог Пожертвования Купить пасскод Pics Adult Pics API Архив Реквест доски Каталог стикеров Реклама
Доски


[Ответить в тред] Ответить в тред

Check this out!


[Назад][Обновить тред][Вниз][Каталог] [ Автообновление ] 507 | 53 | 195
Назад Вниз Каталог Обновить

Предыдущий: https://arhivach.org/thread/256121/ Принимаются Аноним 22/07/17 Суб 00:39:52  1029529  
.png (88Кб, 959x833)
.png (49Кб, 512x512)
.jpg (3862Кб, 3596x1648)
Предыдущий: https://arhivach.org/thread/256121/

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

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

Конференция
https://2chpr.slack.com/messages/ruby/
Получить приглашение: https://invite-me-to-2chpr.herokuapp.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 (одобренный).

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. Есть ли у руби русское коммьюнити?
Нет. Вернее есть, но оно протухло и там полно людей у которых чсв высоко.
Яркий пример - ruby@conference.jabber.ru
А еще есть русская слак конфа - https://russiandevs.slack.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.
Аноним 22/07/17 Суб 00:41:50  1029531
Анон, вот почему я, залетный аутист перекатываю? А?
Покушать принес вам.
https://github.com/arbox/ruby-style-guide
Аноним 22/07/17 Суб 00:53:30  1029535
А ещё я обосрался с ОПом.
Аноним 22/07/17 Суб 09:56:21  1029601
На оп-картинки можно было поставить и другие, надоели эти унылые мемасики.
Аноним 23/07/17 Вск 11:29:26  1030059
как относитесь к trailblazer?
Аноним 23/07/17 Вск 14:55:35  1030125
>>1030059
I heard you laek OOP, so we put OOP in your OOP, so you can OOP while you OOP.
Аноним 23/07/17 Вск 15:38:30  1030135
>ВНИМАНИЕ ВАЖНЫЙ ВОПРОС:

Друзья, заясните зачем вы в 2к17 году до сих пор изучаете Ruby? Это же мертвый язык. Эту нишу заполнил Python. В руби есть только руби он рельс, у которого уже давно спал хайп и сейчас только идет поддержка легаси стартапов.
Не разумнее ли сразу нырять в Питон?
Аноним 23/07/17 Вск 16:42:57  1030167
>>1030135
Удваиваю вопрос.
Аноним 23/07/17 Вск 17:39:49  1030194
>>1030059

Ненужное, прибитое гвоздями говно.
Аноним 23/07/17 Вск 18:30:14  1030206
>>1030135
Если не перекатываться из разработки в МЛ, то менять руби на питон, это как шило на мыло. Если уж менять стек, то на что-нибудь по-лучше scala, elixir/erlang, в крайнем случае на java, если хочется стабильности.
Аноним 23/07/17 Вск 18:52:41  1030214
>>1030206
> на java, если хочется стабильности
Ага, у delphi'стов тоже когда-то была стабильность.
Аноним 23/07/17 Вск 18:58:55  1030217
>>1030214
Думаю java скорее ждет судьба cobol, а не delphi.
Аноним 24/07/17 Пнд 19:13:29  1030772
Дайте хоть шуму немного, или уже все рубисты вымерли?
Аноним 24/07/17 Пнд 21:17:46  1030835
>>1030214
ващет джаве до сих пор нет вменяемой альтернативы, это передовой промышленный язык.
Полная настоящая мультиплатформенность, скорость как у плюсов, простота и логичность, огромное количество инструментария и библиотек, обратная совместимость.
Менять всё это на немного синтаксического сахарка? Пффф
Аноним 26/07/17 Срд 13:23:14  1031933
Аноны, как автозапуск сервиса сделать в рубях? Запускаю через консоль и то девелоперскую версию, т.к. production не настроил.
nohup rails s &
Аноним 26/07/17 Срд 14:15:51  1031966
>>1031933
Делай глобальную исталяцию rvm.
Накатывай bundler, пиши для systemd юнит-файл, ну и там типа:
bundle exec rails s
Аноним 26/07/17 Срд 16:05:51  1032039
>>1031966
бля, чет я уже приуныл(
Аноним 26/07/17 Срд 16:14:25  1032044
cap00001The Vid[...].jpg (87Кб, 1280x720)
>>1032039
Да не знаю я чё те надо бака-гайдзин урусайный!!!!11
Аноним 26/07/17 Срд 16:56:40  1032085
Стоит ли добавить такой блог в список ссылок?
http://blog.topolyan.com/tag/ruby/

Отличие в том, что статьи на русском, а на русском языке довольно мало качественного контента по Ruby или RoR.
Аноним 27/07/17 Чтв 08:53:25  1032386
Есть какой-нибудь гайд как врубить hot reload в webpacker в новой рельсе?
какой пиздец
Аноним 27/07/17 Чтв 10:37:05  1032441
Аноны, у меня проблема такая с Rails, есть выборка из БД с пагинатором will_paginate. Задача, есть записи о координатах объекта. Есть связанная таблица координат. Когда выбираю записи, идет подзапрос подсчета координат для каждой записи(это так я по отладчику вижу, когда вручную запускаю rails)
select count(*) from coords where message_id=123
Все запросы по 200, 300 ms
затем хуяки и сразу 1200 ms.
С ЧЕГО НАЧИНАТЬ КОПАТЬ???
Аноним 27/07/17 Чтв 10:43:56  1032443
>>1032441
не могу понять в чем дело, вручную у меня подзапросы идут в 10ms, rails это делает за 200-500, че бля за хуйня, че за хуйня то, батюшки!!!! Естественно когда там 40 сообщений на странице, для каждого надо подсчитать сколько в нем координатным записей, все это занимает 10 секунд при рендеринге, а то и больше.
Аноним 27/07/17 Чтв 10:45:15  1032444
>>1031966
с systemd я и приуныл, там что-то навороченное, но видно буду разбираться, я использую rbenv, разобрался с конфигурирование бд(поправил в файле настроек) а еще что-то надо делать с зависимостями всякими js
Аноним 27/07/17 Чтв 11:12:59  1032461
cap0000248d9944[...].jpg (99Кб, 720x1280)
>>1032444
Ну или системд или докер-шмокер: и там и там надо по локоть лезть в чащи у гущи манов десу.
Ты мужик нау — итс таим ту конфигурять.
Если ты ещё и деньги этим зарабатываешь, так и вообще везунчик.
Аноним 27/07/17 Чтв 11:22:59  1032464
>>1032461
так-то да, но у меня слишком дохуя разных задач, что бы можно было спокойно разбираться, я делаю надежные системы с высоким риском опиздюлиться если что не так, раньше сидел на системе сервисов, конфигурировал все через services, уровни запуска и т.д., а тут как поднавалали docker systemd. Пока пускаю первое руби приложение в продакшн, уже опиздюливаясь каждый день, но таков путь, что-то новое можно изучить только через боль и слезы.
Аноним 27/07/17 Чтв 12:11:38  1032482
>>1032441
попробуй подгружать лениво
Аноним 27/07/17 Чтв 13:16:28  1032515
cap00001A.Cure.[...].jpg (337Кб, 1920x1080)
>>1032464
Я бы тебе помог, но я просто бака-гайдзин любитель потеребить чинко на сочную манко, который только сейчас проходит туториал хартла и параллельно читает совершенный код (но не всерьёз, просто читаю, без претензий на ¨это¨ самое).
Аноним 27/07/17 Чтв 16:35:32  1032674
send_file отправляет текст вместо файла, чяднт?
Аноним 27/07/17 Чтв 17:32:58  1032707
>>1032674
всё, решил target: "_blank"
Аноним 28/07/17 Птн 17:11:27  1033340
Ruby-meetup 6 в Москве

https://www.youtube.com/playlist?list=PLiWUIs1hSNeOA6D8CynSFIAk6YJpEJSH5
Аноним 28/07/17 Птн 17:27:41  1033358
cap000101501064[...].jpg (165Кб, 1280x720)
>>1033340
Ничё так спич, мне нравится. Не ожидал такое от рамблера.
Аноним 28/07/17 Птн 21:36:09  1033613
Правда ли, что в Ruby приведение к булевому типу - это два восклицательных знака?

Блять, серьёзно?
$bar = (bool) $foo;
Аноним 28/07/17 Птн 22:04:21  1033624
>>1033613
Нет, это просто ебланский workaround.
Аноним 28/07/17 Птн 23:22:55  1033666
3sQoR8d.jpg (169Кб, 768x1024)
>>1033613
>>1033624
Что за хуйню несёт этот уёбок и причём тут глобальные переменные?
Аноним 29/07/17 Суб 00:57:53  1033689
>>1033666
Он про эту хуйню
!!foo
хз кто эти пользуется на практике
Аноним 29/07/17 Суб 01:16:56  1033695
>>1033613

В руби нет булева типа.
Аноним 31/07/17 Пнд 09:39:13  1034765
Вот есть условный класс Hyu, в котором есть метод который через три пизды создает объекты другого класса Pizda. Как вызвать инстансную переменную класса Hyu в классе Pizda. Передать через аргументы не могу, слишком дохуя там методов и классов через которые передать ногу сломаешь.
Аноним 01/08/17 Втр 19:10:54  1035642
e73f1c02-76d3-1[...].png (1531Кб, 1920x1080)
>>1034765
Блин из-за твоих аллюзий к хую и пизде не могу думать о программировании, похоже это не моё.
А ведь в случае Foo и Bar у меня могло что-то получиться(((((
Аноним 01/08/17 Втр 19:19:20  1035647
>>1035642
Давно интересуюсь, а что такое бар? Меню-бар, тул-бар, скролл-бар, фу-бар.
Аноним 01/08/17 Втр 19:39:10  1035663
cap00001[Horrib[...].jpg (145Кб, 1920x1080)
>>1035647
https://en.wikipedia.org/wiki/Foobar
https://www.ietf.org/rfc/rfc3092.txt
Аноним 01/08/17 Втр 19:45:56  1035668
ВАЖНАЯ НОВОСТЬ:

ТУТ поткатились сведения, что руби на рельсах стремительно хуячит в безну. Быстрее выпрыгивайте с этого рубинового поезда пока не поздно и пересаживайтесь на другой!

https://thenextweb.com/dd/2017/07/26/ruby-rails-major-coding-bootcamp-ditches-due-waning-interest/#.tnw_DbzSMt3r
Аноним 01/08/17 Втр 19:55:36  1035674
>>1035668
Радио-Т послушал?
Аноним 01/08/17 Втр 19:58:47  1035677
>>1035674
Да:-)
Аноним 01/08/17 Втр 19:58:53  1035678
>>1035668
С самого начала было понятно, что вся эта ажиотация вокруг руби и рельсов - нездоровая хуйня, типа продукции эппл.
Аноним 01/08/17 Втр 19:59:21  1035679
>>1035674
Да:-)
Аноним 01/08/17 Втр 20:01:18  1035681
>>1035679
Значит ты примерно такой же гей-пидор как я, поздравляю.
Аноним 01/08/17 Втр 20:04:54  1035684
>>1035681
Не, я нормальный, я же Golang программист.
Аноним 01/08/17 Втр 20:05:36  1035685
>>1035684
Да, ты нормальный гей.
Есть тут Рубиняши работавшие с Django? Аноним 01/08/17 Втр 21:56:07  1035747
Поясните, пожалуйста, за Рельсы. В чем отличие от Джанги?
Сам пайтон програмист с 5ю годами опыта, знакомый предложил перекатиться в его фирму и вдохнуть вторую жизнь в их проект на РоР.
Проект - интернет-магазин с CRM и сорт оф 1С-торговля. По зп дает столько же сколько и сейчас платят, но офис в 3х минутах ходьбы в огромном частном доме(Ростов. хуле). Ну и текущая работа достала и до нее 40мин и перспектив никаких.
Просто хочется понять, понравится мне писать на Рельсах или нет. Пока посмотрел доки, глянул пару несложных проектов на гитхабе, впечатление что документация хуже, а сам РоР смесь Питона с ПХП(что не есть плохо, как будто взяли Питон и заточили как пхп под веб).
Есть ли как в ПХП библиотеки под каждый пук или как в Джанге, т.е. похуже.
Как с документацией? Как общее впечатление? Не появляется ли со временем чувства, что делаешь одно и то же?
Аноним 01/08/17 Втр 22:14:44  1035758
>>1035747
Иди на rubygems.org, вбивай в поиск любое слово и смотри.
Аноним 03/08/17 Чтв 20:49:02  1037146
у классов есть статическая перменная. она не менялась, но нужно сделать так, что бы менялась.

class Model
.. @db = MySql.new

образцы Model, с разными @db, должны быть разными объектами.

делаю:

def new_Model(db)
.. klass = Class.new(Model)
.. klass.db = db
.. klass

A1 = new_Model(MySql.new)
A2 = new_Model(Postgresql.new)

A1.db == A2.db
=> false

как бы ты это сделал?
Аноним 04/08/17 Птн 00:25:35  1037403
[ENE-FAST] Neon[...].jpg (233Кб, 1440x1080)
>>1037146
Что ты понимаешь под статической переменной и почему не используешь сеттеры и геттеры (у тебя код по сути ошибку выдавать должен).
Мужик, давай серьёзнее подходи к кодингу.
Аноним 04/08/17 Птн 01:08:14  1037445
>>1037403
https://repl.it/JwOO/0
вот.

статическая переменная, это class variable.
Аноним 04/08/17 Птн 01:11:05  1037451
2017-08-04-0109[...].png (21Кб, 718x888)
>>1037445
по ссылке, это как jsbin, можно запускать ruby программы из веб косноли.

ну или вот пик.
Аноним 04/08/17 Птн 02:30:14  1037483
[UTW-THORA] Eva[...].jpg (238Кб, 1920x1080)
>>1037445
Ты нигде не используешь class variable (@@), у тебя там только instance variable (@).
Зачем ты аксессор в методы класса пихаешь, если у тебя нет переменных класса (чего ты видимо не понимаешь).
Зачем ты создаёшь объекты из классов в которых только методы класса и переменные недоступные через аксессоры.
Вообще непонятно, что ты там делаешь, омич.
Аноним 04/08/17 Птн 03:35:24  1037505
[HorribleSubs] [...].jpg (237Кб, 1280x720)
>>1037451
Блин, персматриваю, что ты делаешь и вот этот Class.new, но всё равно с трудом вдупляю, что именно ты делаешь. Разберись с @ и @@ как минимум.
Аноним 04/08/17 Птн 04:09:25  1037514
>>1037483
ошибся, это не class variable.

но попробуй в примере добавить:
p Model.db

разве что, @db в объявлении класса не наследуются и пример не показывает что я хочу. но можно сделать что бы наследовался: https://stackoverflow.com/a/13629724/2560309

пример с class variable:

class Model
.. @@db = MyDb.new
.. def self.find(id) # использует @@db

class User < Model

user = User.find(id) # использует db = MyDb
# нужно не на совсем, переключить db
User.db = MyNewDb.new
user2 = User.find(id2) # использует db = MyNewDb
теперь я хочу вернуться к MyDb.
но я же затер ссылку на MyDb. нужно сохранить ссылку на MyDb, потом ее восстановить.
как это сделать без такой возни?

что-то такое:
_User = User.with_db(MyNewDb.new) # но способ с Class.new не будет работать с @@db
do_something(_User)
_User.find(id)
Аноним 04/08/17 Птн 04:27:37  1037518
>>1037514
>нужно сохранить ссылку на
Воу, вот тут даже не знаю как. может тебе дополнительную переменную использовать, вручную написать акссессоры и геттеры, как рекомендуют на стеке.

Если реализуешь свою задумку кинь сюда код, интересно будет посмотреть.
Аноним 04/08/17 Птн 07:50:14  1037543
По активности ваших тредов создаётся ощущение, что руби умирает (рейтинги языков тоже создают такое ощущение), хайп прошел что ли? Количество вакансий не уменьшилось?
Аноним 04/08/17 Птн 08:09:34  1037546
One-Punch Man -[...].jpg (184Кб, 1920x1080)
>>1037543
Блин я тут года три наверное вижу тебя)))
А руби конечно умирает, чем ему ещё заняться-то?
Аноним 04/08/17 Птн 08:12:18  1037547
>>1037543
Зайчик, элита по определению не может быть многочисленной, а элитные треды не могут быть быстрочятиками.
Аноним 04/08/17 Птн 08:23:51  1037550
>>1037547
>Руби
>Илита
Чем вы отличаетесь от пхпшников?
Аноним 04/08/17 Птн 08:24:46  1037551
>>1037543
> активности ваших тредов

ОП прошлых тредов куда-то пропал, а остальным немножко похуй, вот и весь секрет.
Аноним 04/08/17 Птн 08:33:47  1037557
>>1037550
Тем, что на пхп крутится 80% интернета, а на руби три сайта запилено двумя с половиной калеками. При этом все эти сайты о рельсах.
Аноним 06/08/17 Вск 00:56:10  1038830
Вангую чувака который опять придёт говорить, что руби умер, после того как послушает последний Радио-Т)))
Аноним 06/08/17 Вск 02:05:49  1038846
>>1038830

Это рельсам вашим лопату вручили, чтоб могилу себе копали, а руби - нужна.

мимо jruby-господин
Аноним 06/08/17 Вск 17:13:52  1039135
Сэр Юмпутун из Чикаго , прекрасная леди из фейсбуг, бубук из яндекс еще какой-то фраер, сегодня жестко в течении 1 часа имели Руби он рельсника, когда он пришел на подкаст пояснить, что рубя еще жива и имеет спрос в 2к17 году. Хоть он и отмахивался трусами от мух как мог, но никого не убидил в нужности рельс.

Так что , все пришли к выводу, что Жанга , спринг бут , и Golang это гуд.
А руби он рельсник отправился дальше к себе в картофельную страну , делать стартапы на RoR
https://radio-t.com/p/2017/08/05/podcast-557/Y
Аноним 06/08/17 Вск 17:15:16  1039136
>>1039135
Рабочая ссылка
https://radio-t.com/p/2017/08/05/podcast-557/
Аноним 06/08/17 Вск 17:35:04  1039147
>>1039135
>Спонсоры этого выпуска DigitalOcean, Vscale и Тинькофф
>критикуют рельсы
Аноним 06/08/17 Вск 17:59:47  1039162
>>1039135
Не слушал, но в целом согласен с тем что нинужно.

>Жанга
Жава и голанг - ок за счет типизации, скорости исполнения, многопоточности, но жанга еще более нинужна чем рельсы, как это аргументировали?
Аноним 06/08/17 Вск 18:04:53  1039166
>>1039135

Тема холиварная, но интервьюеры хуевые - не смогли раскрыть гостя. От повторения тезисов с их стороны кровь из ушей. Закрыл через пять минут, после очередного 'руби не нужно'.
Аноним 06/08/17 Вск 18:40:43  1039210
>>1039166
Ну все правильно, если уж пришел Рельсы свои защищать, ту нужно как то хорошо подготовится и выписать на листок список из киллер фич, чтобы можно было нормально отбиваться. Ясный пень, что Юмпутун и Бубук будут всячески подъябывать гостя и троллить.

Ты послушай выпуск подкаста, который шел где-то год назад. До этого Юмпутун сильно дристал на Golang и говорил , что не нужен этот яп.

После, какой-то Ильюша гофер ворвался на программу и пояснил за Golang.
С тех пор у юмпутуна голанг намба ван язык
Аноним 06/08/17 Вск 18:42:32  1039211
>>1039162
>голанг
>типизация
Ну это вообще interface!
Аноним 06/08/17 Вск 18:45:12  1039213
>>1039162
Потому что жанга это по сути низкоуровневый кмс, на которой ты можешь очень быстро сделать что нибудь годное
Аноним 06/08/17 Вск 18:55:25  1039219
>>1039166
>>1039210
На самом деле забавно, потом себя повёл так: типа приходи ещё гость и вообще ты молодец ему говорит.
Мне кажется умпутун просто хотел похайпить немного (и ему удалось, этот хитрый лис знает своё дело).

А слова Вовика про перл на самом деле можно считать справедливыми. Ну поддерживает же перловые регулярки? Поддерживает.
Можно писать запутанный код? Легко.

С чем можно всерьёз поспорить так это, выводы ксюши и вовика на счёт стайлгайдов — мол сначала дают и потом отбирают выразительные средства, хотя в том же питоне практически сначала существует и дзен и пеп, который по сути стайлгайд.
Аноним 06/08/17 Вск 19:18:52  1039243
>>1039210
> Ясный пень, что Юмпутун и Бубук будут всячески подъябывать гостя и троллить.

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

Но вот так уж получилось, интересную мне часть выпуска они провалили. Поэтому на это

> Ты послушай выпуск подкаста, который шел где-то год назад.

отвечу отказом. Слушать их не интересно. Ну ненужен раби, так ненужен.

Аноним 06/08/17 Вск 19:27:28  1039260
>>1039213
Так же как и рельсы, которые в целом всегда были (и остаются) более развитым и популярным решением по сравнению с жангой.

Проблема вообще не в рельсах или джанге. Столько скриптовых язычков в принципе нинужно. Они особо друг от друга ничем не отличаются, при этом вынуждают хранить в голове кучу бесполезной информации, потому что то там, то сям, приходится сталкиваться с каждым из них.

Это говно на раби, это на пхп, тут на питоне, здесь 100500 диалектов лиспа. У каждого языка свои библиотеки, свои особенности, свое окружение - все это надо помнить (а потому использовать, чтобы не забыть), а окружение поддерживать.

Каким бы не был плохим джаваскрипт (а он начиная с ES6 не такой и ужасный) - лучше пусть все интерпритируемое говно пердолят на нем, к чему мы в итоге и идем. Даже со всеми транспайлерами сегрегация все равно не такая огромная получается.
Аноним 06/08/17 Вск 23:44:48  1039650
>>1039135
раньше DSLи были популярны.
поэтому rails может казаться магическим.

вот dsl который имитирует комманду linux, route:

ssh '192.168.0.123' do
.. route add default gw '192.168.0.24'
.. route del default gw
end

на js:
ssh('192.168.0.123', (cmd) => {
.. cmd.route(add(default(gw('...'))))
})
Аноним 08/08/17 Втр 12:18:05  1040584
Сап рубибоги, написал небольшой api на синатре для своей прилаги на андройд. Просто отдает некоторые json файлы по urlам. Могу ли я где-нибудь захостить такую штуку за бесплатно?
Аноним 08/08/17 Втр 13:34:02  1040616
>>1040584
Heroku
Аноним 08/08/17 Втр 13:53:33  1040631
>>1040584
OpenShift
Аноним 09/08/17 Срд 00:12:55  1041088
Сап!
Подскажите, как можно на рубях запилить docx? С табличками и картинками.
Аноним 09/08/17 Срд 06:56:52  1041159
>>1041088
на rubygems.org искать по ключевому слову docx не пробовал?
Аноним 09/08/17 Срд 10:37:48  1041205
>>1041159
Искал, но у каждого гема есть фатальный недостаток, увы.
Аноним 09/08/17 Срд 11:36:04  1041235
>>1041205
>фатальный недостаток
Лол, ну так напиши сам.
А вообще я посмотрел, и там похоже один гем который создавался для полного цикла работы и позволял создавать docx.
Имхо, хорошая возможность запилить такой гем.
Аноним 09/08/17 Срд 12:32:04  1041251
>>>>1041235
>Лол, ну так напиши сам.

Щас бы ради время тратить на опен-сорс.
Аноним 09/08/17 Срд 12:32:22  1041254
>>1041251

комьюнити*
Аноним 09/08/17 Срд 15:54:45  1041419
>>1041235
С радостью бы запилил, но знаний маловато, а времени ещё меньше.
Аноним 09/08/17 Срд 16:41:08  1041454
>>1041419
Эх, писечка, у меня та же фигня.
Аноним 12/08/17 Суб 05:56:04  1042962
Здарова, посоны и посонессы. На связи прошлый ОП руби-тредов, который с головой погряз с работе и заходит к вам раз в полгода ридонли. Что уныло-то так?
Аноним 12/08/17 Суб 18:49:36  1043257
>>1042962
Все, похоронили руби. Мы тут всем тредом бреем бороды и перекатываемся java, писать некогда, еще весь core изучать.
Аноним 12/08/17 Суб 19:34:11  1043272
>>1043257
>Сначала руби
>Потом java
Может хватить учить вечно умирающие продукты?
Аноним 12/08/17 Суб 20:00:03  1043288
>>1043272
И что же порекомендует изучить благородный дон? Может быть вечно молодой хаскель или вечно живой кобол? Или может быть стоит стать ближе к народу и перейти на js?
Аноним 12/08/17 Суб 20:23:47  1043304
>>1043288
Сярп и асп.нет к вашим услугам
Или если хотите ещё словить хайпа, то питон, он на западе как раз разгоняется
Аноним 12/08/17 Суб 21:04:14  1043320
>>1043288

GO
O
Аноним 12/08/17 Суб 21:18:32  1043327
>>1043304
Ну это толсто, сударь. Вы бы ещё сказали, что go набирает обороты. Язык топ-10, а работы на нём как не было, так и нет! Вот незадача!
Аноним 13/08/17 Вск 02:34:25  1043503
>>1043327
Ну в России и в iot работы нет, а в белых странах она есть
Аноним 13/08/17 Вск 11:04:06  1043572
Народ, поясните, почему рубисты такие пидоры и считают что те, кто пользуется IDE, графической оболочкой для гита, нормальными текстовыми редакторами(а не vim) - инвалиды и не настоящие программисты?
Аноним 13/08/17 Вск 11:19:46  1043576
>>1043572
Потому что хипсторы на хайпе а сейчас они активно укатываются в жс
Аноним 13/08/17 Вск 11:37:52  1043583
>>1043576
Я сам кодирую на JS и учу ноду, вроде не хипстор. Даже под виндой девелопю, а сервер на виртуалке.
Аноним 13/08/17 Вск 11:44:30  1043588
>>1043576
Даже думал вкатиться в рубин
Аноним 13/08/17 Вск 11:51:35  1043594
>>1043583
Если сервером управляешь через консольку через ssh, то норм.
Аноним 13/08/17 Вск 11:52:30  1043595
>>1043576
Эликсир, не?
Насчет жс - то тут уже всем приходится, на рынку труда фуллстек подороже будет.
Аноним 13/08/17 Вск 16:26:30  1043795
>>1042962
Потому что нет работы. Не понимаю, зачем я несколько лет назад послушал долбоёбов, которые говорили ДА РАБОТЫ ДОХУЯ БАБЛО ДОЛЛАРЫ КАТИСЬ БЫСТРЕЙ!!!1
Эй, бойцы! Вас опять наебали!
Аноним 13/08/17 Вск 16:46:47  1043803
>>1043594
Да так вообще-то белые люди и делают.
Аноним 14/08/17 Пнд 14:40:36  1044452
Так я не понял.
Месяц вкатывался в руби, щас начал в рейлс. Мне ничего не светит с работой?
Аноним 14/08/17 Пнд 14:45:25  1044458
>>1044452
Твой рубиновый хайп трейн сошел с рельс
Аноним 14/08/17 Пнд 19:07:40  1044564
А чё это вы тут[...].webm (638Кб, 446x360, 00:00:10)

Аноним 14/08/17 Пнд 19:29:43  1044568
>>1044452
Можешь оставить его в качестве хобби. Вкатывайся в более реальные вещи.

Я недавно тоже был молодой и шутливый. В итоге устраиваюсь джавистом. Руби это здорово, но жрать хочется уже сегодня.
Аноним 16/08/17 Срд 16:53:19  1045441
Мой рубиновый поезд пошел под откос
Ржа времен сожрала ваши рельсы
Гем судьбы паутиной и пылью порос
Вот и кончились красные пьесы
Аноним 16/08/17 Срд 16:59:52  1045442
>>1045441
А сами тайно изучаем руби, чтобы вкатывальшики не узнали. Им лишь бы хайп, а то что в питухоне невозможно dsl делать, им безразлично - они до такого не допрут.
Аноним 16/08/17 Срд 17:02:36  1045444
>>1045442
>питухоне невозможно dsl делать
https://habrahabr.ru/company/pt/blog/319320/
Аноним 16/08/17 Срд 17:07:16  1045445
>>1045444
Ну ты понял - в самом питонокоде - имелось в виду.
Аноним 17/08/17 Чтв 00:12:41  1045667
>>1043795
Рубя конечно не питон, за два дня не учится, но несколько лет... Я за четыре года в рубях научился писать расширения на Сях, создавать из обычных модулей shared-контексты rspec, специфичные для тестирования каждого уровня абстракции от моделей до интеграции, написал под один проект библиотеку для создания форм-обьектов, интеракторов, туеву хучу рельсовых валидаторов, перехуячил традиционную схему использования pundit в контроллерах, набросал гору примитивов ФП и модели акторов. Сегодня вот захуячил map-reduce чтоб файлы на s3 переименовать под новую схему путей. Выучил es7 и реакт, чтоб не переписывать огромный фронтенд сделал либу для интеграции реактовых компонентов в существующий генерируемый рельсой html. При этом я даже не претендую на какие-то глубокие познания в CS. Парсеров не пишу, о сложности алгоритмов думал в последний раз в школе на олимпиадах, ибо в sql/redis все реализовано, берешь и используешь. Я бы сказал, обычная работа обычного веб-разработчика на непятистраничном проекте. Когда представляю, как бы такой проект писался на js или go с их простынями шаблонного кода вместо средств языковой выразительности, метапрограммирования и нормальной системы типизации, похуй, статической или динамической, начинаю понимать, почему кроме микросервисов на них нихуя не пишут. Кстати у нас есть сервисы на питоне и го, написал и забыл, удобно. Поддерживается все это, и код, и devops тремя людьми всего, при более чем 30 серверах на проекте.

Как-то так работаем, а начинал 4 года назад с raillsturorial. Чё ты там несколько лет в руби учишь непонятно, даже с четвертью этих знаний работа за пару недель находится. Впрочем, типичный /pr, захожу уже чтоб душу отвести и поплакаться, что до сих пор не в Калифорнии живу.
Аноним 17/08/17 Чтв 01:12:06  1045687
>>1043595
>Эликсир
Был бы хорош, если бы не слабоватая (в сравнение с рубишной) типизация, доставшаяся от эрланговой вм. Под слабой типизацией я имею ввиду, конечно, неявные преобразования типов. А так вроде даже работа есть, на rubyjobs регулярно видел вакансии, когда мониторил.
>Фулстек
Давно уже сказано:
1. либо ты охуенный бекендер и каждый день делаешь нелегкий выбор между консистентностью и масштабируемостью, или, держа в голове десятки узлов sql, mongo, redis, memcached, rabbitmq, микросервисов и туеву хучу бизнес логики, пытаешься понять где нужные данные уже посчитаны и как их извлечь, чтобы хотя бы приблизиться к удовлетворяющему клиентов времени реакции одной части системы на изменение в другой её части в условиях eventual consistency
2. либо пилишь формочки на реакте и однообразные апишки для них на рельсе
3. Либо ноешь на двачах что нет работы
Аноним 17/08/17 Чтв 01:30:44  1045693
>>1043572
Потому что в условиях стартапа, где 3 человека поддерживают помимо рельсового приложения несколько микросервисов на 3 других языках в совершенно разных средах, 2 персистентных хранилища данных, 3 редис сервера, rabbitmq, кучу балансеров, несколько кеширующих серверов, шеф-конфигурацию для деплоя всего этого дерьма на 30+ серверов с 4 тысячами строк рецептов, при полном отсутствии спецификации на всю эту инфраструктуру, даже переключение с ide на консоль чтобы посмотреть как там называется ключ конфигурации третьего бакета на aws s3 в другом репозитории:
>grep -ne "s3:" ../backend/config/secrets.yml
137:s3:
>sed -n '137,170p' config/secrets.yml
.....
Занимает так много времени, что тебя будет раздражать и ты сам придёшь к этому.

Хотя для формошлепов мб IDE норм.
Аноним 17/08/17 Чтв 05:38:32  1045729
>>1045693
А вот и успешные стараперы подтянулись, которые работу за 10 человек делают и жалуются
Аноним 17/08/17 Чтв 09:05:42  1045742
>>1045687
>Под слабой типизацией я имею ввиду, конечно, неявные преобразования типов.
Единственное неявное преобразование в эликсире, это Integer -> Float.
Аноним 17/08/17 Чтв 10:29:48  1045764
>>1045693
Звучит как работа сисадмина.
Аноним 17/08/17 Чтв 10:47:10  1045765
Я совсем ещё зелёный, поэтому прошу помощи.
В общем пишу плагин для Redmine на рельсах. Суть его в создании дерева задач. В контроллере объявил переменную для поиска проекта с параметром его id. Во вьюшке загружаю массив всех задач (без подзадач) этого проекта. И для каждой задачи с помощью итератора each ищу все подзадачи с помощью root_id. Сортируются они по времени создания, а надо чтобы выглядело: Отец 1
Сын 1
Сын сына )
Сын 2
Отец 2
Сын
....
Как реализовать подобную сортировку, если есть массив с отцами у которых (root_id = id отца, parent_id = nil) и массив детей у которых (root_id = id отца самого первого, parent_id = id задачи от которой наследуется, например для сын сына это сын 1, для сын 1 это отец 1).
Аноним 17/08/17 Чтв 10:50:34  1045768
>>1045693

вим все равно не нужен.
Аноним 17/08/17 Чтв 10:59:15  1045771
>>1045768
А чем плох вим, очередной неосилятор режимов и/или консольки?
Аноним 17/08/17 Чтв 11:02:52  1045774
>>1045771

Конкретно в твоем случае

>grep -ne "s3:" ../backend/config/secrets.yml

Речь идет о выборе шелла и навыках в смежной профессии devOps'a.

А вим не нужен, потому что я хочу писать код, но не возится месяц с настройкой текстового редактора.
Аноним 17/08/17 Чтв 11:05:04  1045775
>>1045774
>А вим не нужен, потому что я хочу писать код, но не возится месяц с настройкой текстового редактора.
Понятно, очередной неосилятор. А мне-то показалось, что ты про реальные минусы (конекретно вима) хотел что-то сказать.
А если бы ты хотел код писать, то не вымораживался тут на доске.
Аноним 17/08/17 Чтв 11:06:35  1045777
>>1045775
> мне-то показалось, что ты про реальные минусы (конекретно вима)

Некогда с очередным дурачком в спецолимпиде участвовать, сорри. Ты подебил!
Аноним 17/08/17 Чтв 11:08:56  1045779
>>1045777
Слушай ну круто ты психологию применил, типа и согласился со мной и пассивно-агрессивно укусил — аки течная сучка.
Аноним 17/08/17 Чтв 11:09:41  1045780
>>1045775
>Реальные минусы вима
Приходится пердолится, что бы начать писать код, сказали же
Про неосиляторство можешь не продолжать даже, ещё спроси почему все генту с арчем не устанавливают, каштомизация же. Нужно использовать инструмент, а не бороться с ним
>Если бы хотел писать код, то не сидел бы тут
Я че, должен это все время делать без права заходить в программач?
Аноним 17/08/17 Чтв 11:13:23  1045783
>>1045780
Я и без конфига и плагинов писал, ничего сложного.
А плагины поставил и конфиг написал, вместо того чтобы на бордах сидеть.
Неосилятор.
Аноним 17/08/17 Чтв 11:46:08  1045786
>>1045783
Ну мне то не надо ничего писать, что бы ide работало, и все удобства есть, пока ты пердолишься, люди код пишут
Аноним 17/08/17 Чтв 12:36:05  1045803
>>1045786
>и все удобства есть, пока ты пердолишься, люди код пишут
Нет, как раз таки написал один раз конфиг и больше не возвращаюсь к нему. Всё работает абсолютно предсказуемо.
Наверное ты сразу пишешь код конечно, ну как сразу после того как система отвиснет после очередного индексирования проекта, ой вот уже и ноут заряжать надо или просто остудить в морозилке)))
Аноним 17/08/17 Чтв 12:49:09  1045808
>>1045803
>очередного индексирования проекта
Использование вим ускоряет работу файловой системы?
>ноут
Нормальные люди работает за десктопом с полноценным процессоров, а не мобильной затычкой с урезанными частотами и за 2-3 мониторами 24+ дюймов, а не 15 дюймовой щелью.
Аноним 17/08/17 Чтв 12:56:17  1045809
>>1045808
>Нормальные люди
Они как раз используют ноутбуки, чтобы всегда иметь возможность кодить.
Будто блин что-то мешает подключить ноут к двум мониторам — ты к нам из 15 века пишешь, крестьянин? Все уже давно используют либо доки либо usb-c на макбуках для организации работы. Приходишь на работу и подключаешь одним кабелем (или ставишь синкпад на док) и работаешь.

На самом деле я не против десктопов, но IDE и на десктопе будет тормозиьт пока проект возюкает.

>Использование вим ускоряет работу файловой системы?
Вот и прорезались программистские знания — проблема тут не в ФС совсем.
А так конечно ускоряет, ещё волосы шелковистые становятся, а борода более окладистой.
Аноним 17/08/17 Чтв 13:01:06  1045810
>>1045780
А это традиция такая. Вот в C менеджмент с памятью - это не удобно и пердолинг. Надо динамически и dick'лоративно.
Только пердолинг с памятью ускоряет работу программы, а пердолинг с текстовым редактором нет.

Аноним 17/08/17 Чтв 13:04:52  1045812
>>1045810
Смешал в кучу системное программирование с прикладным и dsl'ным.
Аноним 17/08/17 Чтв 13:07:20  1045814
>>1045809

>Нормальные люди
> всегда иметь возможность кодить.

https://www.youtube.com/watch?v=bP0ktrxdHUw
Аноним 17/08/17 Чтв 13:15:32  1045817
>>1045814
Точно также можно было ответить и на твоё «Нормальные люди», так что не надо тут.
Аноним 17/08/17 Чтв 13:17:04  1045818
>>1045817

Надо-надо, как же нормальный человек в толчке, без возможности кодить, жить будет!
Аноним 17/08/17 Чтв 13:22:07  1045819
>>1045818
Ну началось, в ход пошло всё: глупенькие видюшки с тытрубы для 12-летних детей, и унылые гротески.

Я тоже так могу:
Ну как же это кодить без 30-ядерного зиона!? У меня в атоме просто курсор не будет нормально двигаться без высаженных под 100% минимиум 6 ядер, и 8 гигабайт слитой оперативки ещё на этапе загрузки редактора. Нормальный человек и в текст-то не сможет вникнуть без массива из 12 мониторов (хотя это для слабаков, нужна парочка другая IMAX-проекторов).
Аноним 17/08/17 Чтв 13:29:03  1045823
>>1045819

Атом, кстати, говно, хотя и красивое. Мне vscode внезапно нравится, эдакий опенсорсный клон сублайма.

По сабжу. В 2017 не уметь в синхронизацию настроек для редакторов (ide) для рабочих компов - ну не знаю, зашквар какой-то. Ты хоть папочку в дропбоксе создай, мань. Не таскать же железо с собой постоянно.
Аноним 17/08/17 Чтв 13:34:56  1045826
>>1045823
Спасибо, у меня уже есть папочка на гитхабе.
А таскать ноут с собой дико удобно, можно быстро перемещаться и по своему зданию и по рабочим делам. Не знаю чё ты так вцепился в десктопы, я понимаю если ты был бы 3D-моделлер, фотошопер или видеомейкер — вот где реально нужно постоянно обсчитывать дофига всего и действительно по делу (меши генерить, трансформировать, текстуры ресайзить, эффекты накладывать), а не копошиться в коде проекта как свинья в грязи каждые пять минут да ещё и оправдывать этим покупку дорого хардвера (ты же не компилируешь там даже, а тупо код пишешь, а компилиция вообще на билд-серверах).
Аноним 17/08/17 Чтв 13:54:45  1045832
>ноутбук, что бы кодить везде
>пердолинг с vim
>илитарность
>называет неосилятором всех, кто хочет работать, а не пердолится
Еще одно подтверждение, что руби используют высокомерные хипсторы
Аноним 17/08/17 Чтв 13:57:05  1045833
>>1045742
Вот как минимум:

The reason we can compare different data types is pragmatism. Sorting algorithms don’t need to worry about different data types in order to sort. The overall sorting order is defined below:

number < atom < reference < function < port < pid < tuple < map < list < bitstring
Аноним 17/08/17 Чтв 13:59:18  1045836
>>1045832
>илитарность
Нечего, сказать — обвини оппонента в элитизме, при этом рассуждая про нормальных людей и тех кто может себе позволить очень дорогой десктоп, а кто нет (при этом забывая о ценах на лаптопы).
Аноним 17/08/17 Чтв 14:06:54  1045843
>>1045832
> руби используют высокомерные хипсторы

Я бы не был столь категоричен, он же признался в шкомпилировании; попахивает залетным растаманом, но это не точно.
Аноним 17/08/17 Чтв 14:07:13  1045844
>>1045836
Ты студентик что ли? Хороший пк можно купить через пол года, после начала работы
Стаж какой у тебя?
Аноним 17/08/17 Чтв 14:09:08  1045845
>>1045844
>(при этом забывая о ценах на лаптопы)
Аноним 17/08/17 Чтв 14:10:38  1045847
>>1045843
Руби и раст? Ну это как то слишком прогрессивно
Аноним 17/08/17 Чтв 14:23:07  1045855
>>1045774
>Конкретно в твоем случае
Ты другому человеку ответил, ну да ладно.

>>1045764
>Звучит как работа сисадмина.
>>1045774
>grep -ne "s3:" ../backend/config/secrets.yml
>Речь идет о выборе шелла и навыках в смежной профессии devOps'a.
Другие члены моей команды, пожалуй, девопсы, да. Я иногда правлю шеф-конфигурацию, мб пару строк в шаблоне конфига, не более. В остальном я с девопс не имею ничего общего.

Вообще, мб мой пример не очень удачный был. Вим крут не тем, что в консольке работает, а механизмами работы с текстом офк. Всякие Vim-mode в IDE и текстовых редакторах обычно сильно уступают ему в возможностях. Руби-среда хороша автоматизацией. Многие функции IDE берут на себя консольные тулзы. Можно подключить к ним графический вывод. Весь рабочий стол становится IDE. Короче, ощущение нехватки функции в редакторе проходит после написания rake-задачи, ее заменяющей. А вот ощущение от нехватки фич Вима не проходит, пока не вернёшься к виму.
Аноним 17/08/17 Чтв 14:30:21  1045859
>>1045855
>Всякие Vim-mode в IDE и текстовых редакторах обычно сильно уступают ему в возможностях
В каких например? vim-mode в Idea вполне неплох.

Функции IDE, впрочем, действительно нинужны по большей части. Пользовался исключительно из-за навигации (find symbol, go to definition) и автокомплита, качественной реализации которых нет ни в одном редакторе.
Аноним 17/08/17 Чтв 14:53:05  1045874
>>1045765
>Как реализовать подобную сортировку, если есть массив с отцами у которых (root_id = id отца, parent_id = nil) и массив детей у которых (root_id = id отца самого первого, parent_id = id задачи от которой наследуется, например для сын сына это сын 1, для сын 1 это отец 1).
Обьединяй в один массив, и делай
>tasks.sort do |a, b|
> if a.parent_id || b.parent_id
> next -1 if a.parent_id.nil?
> next 1 if b.parent_id.nil?
> end
> a.name <=> b.name
>end
Замени последнюю строку, если сравниваешь не по имени, а как-то иначе
Аноним 17/08/17 Чтв 14:57:43  1045876
>>1045765
А, у тебя вложенность больше одного бывает? Почему бы тебе тогда не пройтись по дереву рекурсивно, на каждом шаге итерации добавляя задачу в конец массива? Создай класс, в инициализаторе создай пустой массив, объяви в нем функцию рекурсивного обхода, принимающую корень дерева как аргумент.
Аноним 17/08/17 Чтв 16:10:37  1045890
>>1045833
Согласен, два неявных преобразования, но второе объясняется тем, что в эрланге все иммутабельно, а для иммутабульных мапов тебе нужна возможность сравнивать элементы в ней (элементы в дереве).
Аноним 17/08/17 Чтв 16:20:16  1045896
Господа ниндзи, а подскажите пожалуйста следующую штуку:

Есть app на rails 4.2 и mountable engine. В основной апликухе поднят action cable, всё прекрасно работает - каналы регаются, бродкасты летают.
Вот в упор не пойму, как зарегать новый канал из engine. Подскажите пожалуйста, c меня как обычно.
Аноним 17/08/17 Чтв 16:24:36  1045898
>>1045826
>можно быстро перемещаться и по своему зданию и по рабочим делам
Можно, конечно, но ты уверен, что разработчиком работаешь, если тебе постоянно приходится куда-то перемещаться?

>ты же не компилируешь там даже, а тупо код пишешь, а компилиция вообще на билд-серверах
Нет, я запускаю/компилирую код у себя на машине в большинстве случаев.

>оправдывать этим покупку дорого хардвера
Хороший десктоп стоит не дороже макбука.

Я не отрицаю нужность ноутбуков, я говорю, что работать (не бегать по зданию или еще куда-то) за десктопом удобнее.
Аноним 17/08/17 Чтв 18:16:10  1045930
>>1045898
>Нет, я запускаю/компилирую код у себя на машине в большинстве случаев.
Ты там хеллоу-ворлд девелопишь?

>Я не отрицаю нужность ноутбуков, я говорю, что работать (не бегать по зданию или еще куда-то) за десктопом удобнее.
Удобнее работать так как лично человеку удобнее. Тем более если есть возможность ходить по зданию, а не сидеть на привязи в офисе/опенспейсе. Только не говори про нормальные компании пожалуйста где у каждого разработчика свой кабинет, в котором кроме него только шлюшка которая ему болт под столом полирует.
Аноним 17/08/17 Чтв 18:46:34  1045937
>>1045930
>ходить по зданию
У вас там модное большое здание как у Яндекса? Можно прилечь в гамаке, посидеть на здоровенных больших подушках (забыл как называется), пойти в кафетерий? Тогда не совсем понятно, почему вам рабочие ноуты не выдают, деньги-то есть. Если денег нет, то ходить можно разве что в соседний кубикл, как правило.
Аноним 17/08/17 Чтв 21:54:21  1046008
>>1045890
Ну так стоило для этого отдельный метод выделить, как #hash и #eql? в руби
Аноним 17/08/17 Чтв 22:21:27  1046032
>>1045765
>>1045876
Держи, анончик:
http://ideone.com/TSlCD3
Аноним 18/08/17 Птн 00:59:43  1046082
>>1045937
>Можно прилечь в гамаке, посидеть на здоровенных больших подушках
Вообще охренеть. А у нас начальник даст пизды, если заснешь на рабочем месте в опенспейсе.
Москали совсем зажрались, я погляжу.
Аноним 18/08/17 Птн 07:32:05  1046123
>>1046082
Я фрилансер-нищук, просто предположил на основе случайных постов в интернете. Впрочем, последние два киевских бодишопа, в которых работали знакомые, 5 лет назад выглядили примерно так, как я описал.

>начальник даст пизды, если заснешь на рабочем месте в опенспейсе
Очень зря, короткий дневной сон сильно повышает продуктивность.
Аноним 18/08/17 Птн 14:42:23  1046266
Помогите протестировать метод. Выглядит он так:

>def method
> method1
> method2
> method3
> method4
>end

То есть, просто ряд других методов. Внутри каждого из них может быть либо вызов стороннего API, либо where, либо update_attribute(), либо ещё какая шняга, часто "деструктивная".

Сейчас спека такая:
https://gist.github.com/anonymous/b7a96016e31d5674cf43dffcf15ca35b

Но сеньер сказал, что это хуйня, надо переделывать. Вопрос - каким образом?
Аноним 18/08/17 Птн 16:42:52  1046349
>>1046266
method1,.., для них есть спеки? если нет, то зачем ты проверяешь вызываются другие методы или нет?

если этот метод ничего больше не делает, кроме вызова публичных методов, то что еще тестировать? можешь порядок вызовов еще проверить.
Аноним 18/08/17 Птн 20:58:04  1046486
>>1046266
Ну метод у тебя типичный контроллер - вызывает много сложной, но разной логики, друг с другом мало связанной. Про allow to receive забудь сразу, нечего к реализации привязываться. Пиши обычные интеграционные тесты.
Аноним 21/08/17 Пнд 00:14:06  1047728
> Six confusing features in Ruby
> ... Just use == 0, it is TOTALLY readable, and NOT ugly at all. ...

на rubyflow учат как код писать
Аноним 21/08/17 Пнд 10:57:31  1047818
>>1047728
там любой мимохуй может написать новость
Аноним 21/08/17 Пнд 14:30:05  1047890
>>1047818

Вся статья такой перл; жаль там комментов нету, я б оставил пару токсичных.
Аноним 22/08/17 Втр 11:35:47  1048572
Ну что, рубаны? Как там с работой? Так и воюете с мистером Камалем из Индии за 15 долларов в час?
А в офис чего не пойдёте? Ааа, так некуда идти. Я и забыл.

Сегодня увидел вакансию рубиста в своей мухосрани. На радостях побежал откликаться, а там всё прозаично оказалось. Очередной веб-раб за еду, БРАТАНАМИ и командным духом. Вы как вообще рубями зарабатываете то? Для меня это уже сродни маструбации. Толку нету, выбросить жалко.
Аноним 23/08/17 Срд 02:52:28  1049114
>>1048572
Мимохейтер мимикрировал? Я джва года ищу в этом треде людей на пет-проджект, а тут все кто более-менее че-то научился делать указываются работать, в итоге тут одни новички сидят.
Аноним 23/08/17 Срд 02:57:11  1049116
>>1049114
укатываются
Аноним 23/08/17 Срд 04:16:56  1049160
>>1049114
Что за pet-project у тебя? Что-то интересное?
Никогда не слышал, чтобы домашнего любимца делили на несколько человек
Аноним 23/08/17 Срд 08:33:48  1049200
>>1049114
>Я джва года ищу в этом треде людей на пет-проджект
А я год работу. В моей мухосрани о рубях не знают в принципе. А если и знают, то платят 40-50к с тестовыми вроде "написать гем для платёжной системы".
Я не знаю, где вы тут все работу находите. Это нереально блядь просто, я уже заебался нахуй.
Аноним 23/08/17 Срд 09:48:12  1049243
>>1049200
А чем ты руководствовался при выборе языка? Просто понравился? А BrainFuck не пробовал изучать и работу искать?
Аноним 23/08/17 Срд 10:29:15  1049279
>>1049243
Не, я на чикен пишу в свободное время.

Чем руководствовался? Ну понравился, очевидно же. Есть гемы, всё в языке является объектами. Плюс есть рельсы. Но, по сути, из-за безработности так и остаётся языком для пет-проджектов. На работу всем нужны миддлы и помидоры. Просился джуном, не взяли нигде ПОК ПОК ПОК КАДРОВЫЙ ГОЛОД, РАБОТАТЬ НЕКОМУ, КАДРЫ НУЖНЫ ГОТОВЫ БЕСПЛАТНО УЧИТЬ КУКАКРЕЕЕЕЕЕКУУУУУ!
Аноним 23/08/17 Срд 11:11:45  1049312
>>1049200
>мухосрани
Я думаю ты и сам догадываешься что нужно делать.
Аноним 23/08/17 Срд 11:19:57  1049321
image.png (82Кб, 300x300)
>>1049312
Выпилиться, чтобы потом родиться в мегаполисе?
Аноним 23/08/17 Срд 11:24:39  1049323
>>1049279
Можешь попробовать потеребить питуна, похож на руби, есть работа в разных сферах и больше 1 фреймворка
Аноним 23/08/17 Срд 11:38:46  1049332
>>1049323
Гвидобейсик тоже не нужен: >>1049301
Только PHP на 1С Битриксе
Аноним 23/08/17 Срд 12:02:40  1049349
>>1049332
Ну если ты собираешься гнить в россиюшке, то да, это хороший выбор
Аноним 23/08/17 Срд 12:18:43  1049364
>>1049312
Ну как обычно, все аргументы свелись к ДС. Рубисты по дефолту в ДС рождаются что ли? А то у вас тут я смотрю на третий день работу находят после вката все, один я как лох сижу.
Аноним 23/08/17 Срд 12:23:33  1049365
>>1049323
Ты серьёзно? Он тоже труп. Джанга никому не нужна. Даже рельсы выигрышней смотрятся. Максимум, что я видел в продакшене — всякие костыли по типу jython.
Аноним 23/08/17 Срд 13:02:03  1049390
>>1049365
А теперь сравниваешь вакансии на питоне и рельсах (ведь для другого руби и не нужен) и понимаешь кто на самом деле умер
Аноним 23/08/17 Срд 13:24:44  1049400
>>1049160
Я так и думал, что никого он не ищет на самом деле
Аноним 23/08/17 Срд 13:35:35  1049405
StackOverflowRa[...].jpg (28Кб, 636x410)
>>1049365
>эти проекции будущего бомжа
Аноним 23/08/17 Срд 18:13:23  1049584
Вот что за советики:

> Reduce boilerplate as much as possible

которые призывают дополнительные зависимости тянуть, ради красивых однострочников. Это так не работает, особенно когда пишешь гем.

Или

> For example, predicate methods (smth?) should return true/false and not something else (e.g., 0/1).

Это вкусовщина. В руби вообще нету булева типа, между прочим. А код из другого примера

> if response =~ /Couldn\'t find series/

возвращает не то, что вы думаете.

Слабенько, evilmartians. http://gemcheck.evilmartians.io/
Аноним 23/08/17 Срд 19:16:12  1049613
>>1049390
Оба?
Аноним 23/08/17 Срд 19:32:18  1049623
image.png (55Кб, 1366x768)
image.png (37Кб, 554x460)
image.png (38Кб, 712x413)
image.png (41Кб, 709x425)
>>1049613
Аноним 23/08/17 Срд 19:32:54  1049624
image.png (38Кб, 558x469)
>>1049623
Фикс
Аноним 23/08/17 Срд 20:04:11  1049643
>>1049623
И что? У руби судя по твоим графикам всё нормально. Работа с переменным успехом прибавляется.

Ну и ты обосрался, указав британию. Всё рубийное смуззи в штатах, на американских проектах. Европа довольно старпёрная. У дойч банка вон джава 6 до сих пор.
Аноним 23/08/17 Срд 20:09:17  1049649
>>1049623
А чего это питон с начала 15-ого года так резко попер? Неужели чисто из-за asyncio?
Аноним 23/08/17 Срд 20:25:11  1049665
image.png (56Кб, 662x587)
image.png (53Кб, 649x526)
>>1049643
Аноним 23/08/17 Срд 21:07:04  1049712
>>1049665
Ну ладно, убедил! Пошёл за своими миллионами и кучей работы в петухон!
Аноним 23/08/17 Срд 21:08:42  1049714
>>1049712
Лучше в пхп.
Аноним 23/08/17 Срд 21:09:31  1049716
>>1049714
Точно! Там денег ещё больше!
Аноним 23/08/17 Срд 21:47:05  1049734
image.png (55Кб, 639x562)
>>1049714
Ты удивишься, лол
Аноним 24/08/17 Чтв 09:21:12  1049949
Бабка на 1 канале, жестко опустила рубистов
> старшие поколение выбирают Golang!
https://youtube.com/watch?v=_Z_k5G73ttk
Аноним 24/08/17 Чтв 15:40:51  1050128
>>1049949
Променяла хайповое говно на хайповую мочу. Молодец. В говне хайп умер, в моче — лишь вопрос времени.
Аноним 24/08/17 Чтв 16:45:30  1050178
Безработные 2 года заходят в тред самого популярного (на считая пэхопэ) и высокооплачиваемого языка для веб-разработки и кукарекают, что руби умер. 2 года не меняются аргументы, опровергнутые ещё в шапке треда.
Аноним 24/08/17 Чтв 16:48:16  1050180
>>1049200
>А я год работу. В моей мухосрани о рубях не знают в принципе. А если и знают, то платят 40-50к с тестовыми вроде "написать гем для платёжной системы".
Я не знаю, где вы тут все работу находите. Это нереально блядь просто, я уже заебался нахуй.
Внезапно, в твоей мухосрани и на питоне работы нет, а на JS будет что-то вроде клепать анимации на jQuery для говно-cms на битриксе.

Ты за год не догадался пойти на удалёнку, где изи можно устроиться на 1к баксов в месяц. Я работу на 2к баксов нашёл за неделю. Палю годноту, только тссс, никому не показывай: http://rubyjobs.ru/
Аноним 24/08/17 Чтв 16:53:00  1050185
>>1049584
>Это вкусовщина. В руби вообще нету булева типа, между прочим.
Вкусовщина, что разве это не вкусовщина, которая ничего не стоит (написать !!result), но даёт приятный опыт работы в консоли, когда foo.bar? не возвращает огромный массив на полэкрана. В руби любят самодокументирующийся код, если ты вызвал foo.bar? и получил true, то тебе не надо лезть в документацию и вспоминать, что этот метод значит, ты знаешь, он говорит тебе, что foo - это гарантированно bar.
Аноним 24/08/17 Чтв 16:58:39  1050187
>>1050178
>>1050180
Как определить жив ли язык?
Посмотреть количество джун-вакансий, а у руби с этим все очень плохо
Аноним 24/08/17 Чтв 16:59:29  1050188
>>1050187
Видимо, это правило не работает. У Руби никогда, даже в 2011, не было много джун вакансий.
Аноним 24/08/17 Чтв 17:02:24  1050190
>>1050188
>У Руби никогда, даже в 2011, не было много джун вакансий.
Это как вообще? Все сразу РоР-программистами с двухлетним стажем стали? До 2011 он не нужен был
Аноним 24/08/17 Чтв 17:04:53  1050192
>>1050190
Внезапно, если ты сеньёр веб-разработчик и изучаешь новую технологию, то ты идёшь на свою первую работу с этой технологией как сеньёр, а не как джун.
Аноним 24/08/17 Чтв 17:14:03  1050196
image.png (124Кб, 1330x648)
Все равно все сосут у лучшего фреймворка
Аноним 24/08/17 Чтв 17:18:39  1050198
>>1050185

defined? так не работает, а вкусовщину выдавать за постулат - моветон.
Аноним 24/08/17 Чтв 18:39:06  1050255
>>1050180
>Внезапно, в твоей мухосрани и на питоне работы нет, а на JS будет что-то вроде клепать анимации на jQuery для говно-cms на битриксе.
Да, только ты забыл добавить туда php 4-5 версии с index.php на 10к строк от Васяна, вёрстку, ещё опционально деплой всего этого говна и знание какого-нибудь C#/Java. Разумеется, всё это за 20-30к в месяц.

>Ты за год не догадался пойти на удалёнку, где изи можно устроиться на 1к баксов в месяц. Я работу на 2к баксов нашёл за неделю. Палю годноту, только тссс, никому не показывай: http://rubyjobs.ru/

А сколько ты там раз видел джунов/миддлов на удалёнку? Я вот года полтора уже периодически мониторю. Джунов за это время я видел ровно ноль, миддлов — иногда. Всем нужны помидоры/лиды.
И потом эти люди ходят и орут РЕБЯТ, КАДРОВЫЙ ГОЛОД, РАБОТАТЬ НЕКОМУ, ОТ БЕЗЫСХОДНОСТИ ТЕХНОПАРК ЗАПУСКАЕМ! ДАЁШЬ СИНЬОРА ЗА 2 ГОДА!
Аноним 25/08/17 Птн 03:09:19  1050568
>>1050178
А чего ж они безработные, непонятно...
Это как с Delphi
Аноним 25/08/17 Птн 03:11:12  1050569
>>1050192
То есть Руби новичкам никак нельзя советовать, получается?
Потому что работу они не найдут. И тогда надо советовать... с чего там на Руби сеньоры перекатываются?
Аноним 25/08/17 Птн 09:32:01  1050614
15033229885601.jpg (71Кб, 523x604)
>>1050569
Добро пожаловать в пхп тред, через два-три года можешь сюда вернуться
Аноним 25/08/17 Птн 13:23:35  1050704
why20you[1].jpg (15Кб, 297x174)
Мне сегодня перезвонили 3 раз за год на рубиста , ибо нужен миддл. Ну, КАДРОВЫЙ ГОЛОД, РАБОТАТЬ НЕКОМУ, сами понимаете.

Отчего в моей голове возникла мысль о создании описания сферического рубиста в вакууме. Господа выше заметили, что джунов-рубистов не бывает, сразу учат минимум на миддлов. Отчего в голове всплывает определённый образ.

Итак, рубист. Какой же он? Давайте попробуем рассмотреть его поближе:
— Родился и вырос в Москве, либо переехал туда недавно.
— Далеко не беден, может позволить себе довольно дорогие инструменты разработки — macBook, jira, heroku.
— Пришёл в руби сразу как минимум на миддла, демонстрируя высокий уровень мастерства правда, тесты только недавно научился писать, но неважно
— Презирает виндовс. Совсем. Даже 10 версию. Даже с полноценной линупсовой консолью. Но, при этом привык к лёгкости и простоте установки, отчего и пользуется макбуком.
— Знает только один фреймоврк. Опционально кодит на js, создавая велосипеды для своего приложения. ES6 он поробовал, ему понравилось, но в проектах пока не использовал.


Господа, а какие черты рубистов заметили вы? Прошу дополнить.
Аноним 25/08/17 Птн 15:15:42  1050768
>>1050704
>Господа, а какие черты рубистов заметили вы? Прошу дополнить.
Замени макось на маздай95 и руби на ц++ начала девяностых.
«Я знаю, как написать графическую оболочку для всего!»
Аноним 25/08/17 Птн 21:31:02  1050984
>>1050255
>А сколько ты там раз видел джунов/миддлов на удалёнку? Я вот года полтора уже периодически мониторю. Джунов за это время я видел ровно ноль, миддлов — иногда.
Ок, тут мой опыт для тебя бесполезен. Свои первые полтора года я работал на Upwork, только потом уже нашёл работу на rubyjobs как миддл (за 2к баксов, я хз, это миддл наверное).

Так может повторишь мой путь и попробуешь Upwork? Я первый заказ за 4 дня нашёл (фикс на 90 баксов, сделал за 5 дней, это была вообще моя первая работа в области программирования), хотя в гайдах пишут что до месяца может уйти с пустым профилем. Гайды посмотри, там всё подробно расписано. Английского достаточно письменного, у меня разговорный считай никакой, за полтора года на Upwork устно общался только с одним заказчиком раза 2-3 всего.
Аноним 25/08/17 Птн 21:51:17  1050998
>>1050704
>Родился и вырос в Москве, либо переехал туда недавно.
Милионник, региональный центр. Работаю в офисе сейчас, но до этого 2 года удалённо.
>Пришёл в руби сразу как минимум на миддла, демонстрируя высокий уровень мастерства
4 года олимпиадного программирования и проектов "для себя" на питоне и Си, поэтому мб сейчас, после 3 лет что занимаюсь разработкой профессионально, буду претендовать на senior, если буду менять работу.
>правда, тесты только недавно научился писать, но неважно
Уж не помню, по-моему почти сразу, как начал работать, но они уже были на моём первом проекте, их надо было поддерживать, и было на что ориентироваться.
>Презирает виндовс. Совсем. Даже 10 версию. Даже с полноценной линупсовой консолью.
>Но, при этом привык к лёгкости и простоте установки, отчего и пользуется макбуком.
Принципиально FOSS, сейчас Debian. К тому же это и моя серверная ОС основная, наряду с Ubuntu.
>Знает только один фреймоврк.
Знаю рельсы, синатру, джангу, фласк, react (inb4 это библиотека), redux.
>Опционально кодит на js, создавая велосипеды для своего приложения. ES6 он поробовал, ему понравилось, но в проектах пока не использовал.
Не могу писать на JS без Babel. Язык знаю хорошо, просто воротит от синтаксиса. Собираю webpack'ом на рельсовом проекте.
>Господа, а какие черты рубистов заметили вы? Прошу дополнить.
Любят Руби, недолюблювают другие языки. Сужу по себе. Впрочем, с Babel на фронте вполне можно жить.
Аноним 26/08/17 Суб 01:59:30  1051080
>>1050614
А чем Руби лучше ПХП, чтобы с него на Руби перекатываться?
Аноним 26/08/17 Суб 02:01:55  1051081
>>1050704
>Презирает виндовс. Совсем. Даже 10 версию. Даже с полноценной линупсовой консолью.

А что в 10 винде полноценная линукс консоль?
Аноним 26/08/17 Суб 02:03:02  1051083
>>1050704
>ES6 он поробовал, ему понравилось, но в проектах пока не использовал.

Кстати, а какие хорошие учебники есть именно по ES6?
Аноним 26/08/17 Суб 03:06:45  1051091
>>1051083
Учишь JS, потом изучаешь это:
https://babeljs.io/learn-es2015/
https://babeljs.io/docs/plugins/
Зачем отдельный учебник? ES2015 это просто препроцессор и набор полифиллов. Язык не меняется, поскольку сохраняет полную обратную совместимость.
Аноним 26/08/17 Суб 03:18:28  1051092
>>1051080
Это классика
https://m.habrahabr.ru/post/142140/
Я слышал, правда, что язык сильно изменился нынче. Но верится мало, что описанное в статье более не актуально. JS тоже сильно изменился, но не избавился от ключевых проблем. Но на нём, по крайней мере, можно писать хороший код, обвешавшись доп. инструментами вроде Babe, Flow. Сомневаюсь, что PHP совершил больший прогресс, нежели JS.

Для Руби нужен единственный инструмент - RuboCop. Несмотря на то, что статический анализ кода на Руби в теории сложнее, чем в Python или JS, в Руби эта задача решена лучше (но статической типизации пока не подвезли, да).
Аноним 26/08/17 Суб 06:56:11  1051120
>>1051092
Когда я начинал усить Руби, у меня тоже был баттхерт от нестандартных и криво реализованных фич. Так что я разочаровался уже с первых шагов (ожидания были разрушены - язык не идеален), как впрочем и с другими языками (Питон, Java и др.) - раньше или позже.

Так что говном в других бросаться не стоит.
Аноним 26/08/17 Суб 06:59:28  1051121
>>1051091
Ну как сказать... многие вещи в JS уже стали как бы "deprecated".
Аноним 26/08/17 Суб 10:00:11  1051150
>>1051120
Статья недаром называется "фрактал плохого дизайна", эта выразительная фраза выбрана чтобы уже заголовком дать понять - статья не о недостатках PHP, она о том, что PHP - это один большой недостаток, и в отличие от языков с нестандартными и криво реализованными фичами, на которых при желании можно писать качественный код (пример - путь развития современного JS), PHP просто пора выкинуть на помойку. Опять же, повторюсь, если его недостатки не умудрились чудом устранить в новой версии. В принципе, в отличие от JS ему не надо сохранять обратную совместимость, поэтому шансы есть, но вникать в это я не хочу. Мы в Руби-треде, хочу напомнить.
Аноним 26/08/17 Суб 10:03:19  1051151
>>1050984
>Так может повторишь мой путь и попробуешь Upwork?

Ну а какой уровень у тебя был? У тебя был подтверждённый тестом скилл? Я вот сдавал и получил 2.75. Такой себе, сам понимаешь.
Аноним 26/08/17 Суб 10:03:30  1051152
>>1051121
Создатели ES2015, наверное, хотели бы, чтобы эти вещи из движков убрали, или хотя бы полностью поддерживали новый стандарт. Однако разработчики браузеров пока не спешат вводить фичи, а уж тем более что-то убирать. Если сейчас эти "как бы deprecated" штуки отключить, пол-интернета сломается.
Аноним 26/08/17 Суб 10:05:17  1051153
>>1051151
Во-первых, тесты есть в паблике, я прошёл руби и питон самостоятельно на 4.1 и 4.5 вроде, через три недели перепрошёл, глядя в ответы, на 5. Во-вторых, 2.75 за 1.5 года изучения технологии - это стыдно должно быть.
Аноним 26/08/17 Суб 10:24:42  1051157
>>1051153
Стыдно, да. Но мне хочется жрать, поэтому я вынужден работать, а рубями заниматься в свободное время.
Аноним 26/08/17 Суб 10:26:35  1051158
>>1051157
Я так и не понял, чем ты год там занимаешься. Покажи гитхаб. Я тебе код ревью сделаю, скажу, что стоит подучить.
Аноним 26/08/17 Суб 10:38:07  1051165
>>1051158
Ну покажу я свои бложики-боты для телеграм. Толку? Знакомые джуны после тудушек вкатываются на js в Москве. Чем я хуже?
Аноним 26/08/17 Суб 14:49:07  1051257
>>1051165
>тудушек
Что за тудушки - это название каких-то посиделок?
Аноним 26/08/17 Суб 15:17:21  1051273
>>1051165
>Ну покажу я свои бложики-боты для телеграм. Толку?
Знакомые джуны после тудушек вкатываются на js в Москве. Чем я хуже?

Может быть твои знакомые джуны не выделывались когда им предлагали код ревью провести?

У тебя слишком много самомнения, хз.
Аноним 27/08/17 Вск 03:06:36  1051712
>>1051257
Это когда делают голландский штурвал в опенспейсе.
Аноним 27/08/17 Вск 03:08:08  1051713
>>1051165
>Ну покажу я свои бложики-боты для телеграм. Толку? Знакомые джуны после тудушек вкатываются на js в Москве. Чем я хуже?
Видимо, тупее. Если ты за год не сделал тудушку на JS и не пошёл джуном, то дело не в Руби, а в том, что ты ни на Руби, ни на JS, ни на чём другом программировать не можешь.
Аноним 27/08/17 Вск 03:10:26  1051715
>>1051712
Обязательное условие при приёме на работу JS-джуна?
Аноним 27/08/17 Вск 08:54:57  1051796
>>1051165
>Знакомые джуны после тудушек вкатываются на js в Москве.
Подробнее можно?
Аноним 27/08/17 Вск 08:56:56  1051797
>>1051713
>Если ты за год не сделал тудушку на JS и не пошёл джуном
???
Аноним 27/08/17 Вск 09:48:31  1051806
https://pastebin.com/rSJ8RZ4e

Котаны, для чего в модуль из кода выше вложены переменные класса, или что вообще происходит при использовании "class << self", что-то я запутался совсем.

И на самом деле из этой же оперы у меня ещё есть вопрос, зачем иногда в классах делают кучу подклассов (типа "class Foo ; class Bar ; nil; end; end"). Это нормально? Я видел приём где это делается чтобы выплюнуть объект, но почему нельзя сделать не вкладываю классы один в другой.
Аноним 27/08/17 Вск 11:48:39  1051859
>>1051806

> что вообще происходит при использовании "class << self"

https://stackoverflow.com/questions/2505067/class-self-idiom-in-ruby

> Это нормально?

Это допустимо.

> но почему нельзя сделать не вкладываю классы один в другой

https://stackoverflow.com/questions/6195661/when-to-use-nested-classes-and-classes-nested-in-modules


И это, иди в телеграмм, найдешь 5-6 активных каналов, в т.ч. обучающий.
Аноним 27/08/17 Вск 13:11:40  1051919
>>1051859
>телеграмм
Чем IRC людей не устраивало? Или Jabber?
Нет надо свой велосипед.
Аноним 27/08/17 Вск 13:18:01  1051922
>>1051919

Тихо-тихо, не ворчи.
Аноним 27/08/17 Вск 17:08:45  1052105
>>1051806
у руби есть singleton classes, не Singleton патерн.
https://ruby-doc.org/core-1.9.3/Object.html#method-i-singleton_class

пусть есть
module A
. def self.x
. end
end

как происходит поиск метода при вызове: A.x

метод x, будет искаться в методах singleton_class. A.singleton_methods.

я думаю, class << self, как и def self.x, эквивалентно:
PayRoll.instance_eval {
. def your_method...
}

instance_eval
https://ruby-doc.org/core-2.2.0/BasicObject.html#method-i-instance_eval
см. View source:
VALUE klass = singleton_class_for_eval(self); // вернуть singleton class
return specific_eval(argc, argv, klass, self); // передать singleton class в specific_eval.

сравнить с class_eval:
https://ruby-doc.org/core-2.2.0/Module.html#method-i-class_eval
return specific_eval(argc, argv, mod, mod); // тот же specific_eval, но передается mod.

т.е. instance_eval добавляет к singleton классу, а class_eval к тому классу, в котром он вызван.

"attr_accessor :x", это тоже самое, что написать:

module A
. def x=(v); @x = v; end
. def x; @x; env
end

A.x не будет работать так-как методы не добавляются к singleton классу класса А.
A.singleton_methods
=> []

нам же нужно добавить к singleton классу:
A.instance_eval { attr_accessor :x }
A.singleton_methods
=> [:x]

ну или
class A
. class << self
...
end

только что нашел, но еще не читал книгу Ruby under microscope. там есть секции про классы и объекты и поиск.

Аноним 28/08/17 Пнд 03:40:15  1052413
>>1051806
>зачем иногда в классах делают кучу подклассов (типа "class Foo ; class Bar ; nil; end; end")
Внешний класс служит лишь пространством имён в этом случае. В его методах к вложенному классу можно обращаться по имени его константы (Bar), а не по полному имени (Foo::Bar).

>Это нормально?
Короткий ответ: да.

Длиный ответ:

Если вложенный класс - это небольшой утилитарный класс, используемый внешним, то да. Если вложенный класс становится большим, то его стоит вынести в отдельный файл:

># lib/foo.rb
>class Foo
>end

># lib/foo/bar.rb
>class Foo
> class Bar
> end
>end

Но тут есть нюанс при использовании RuboCop. Он по умолчанию требует комментарий к каждому непустому классу, но не модулю. Логично написать к классу Foo в файле lib/foo.rb, но RuboCop будет ругаться, что такого комментария нет в lib/foo/bar.rb, ведь он анализирует файлы независимо друг от друга. Отсюда следует, что его создатель, он же создатель известного стайлгайда Руби, не одобряет использование классов как неймспейсов, если содержимое слишком велико для одного файла, и предлагает переделать Foo в модуль, а класс Foo поместить внутрь этого модуля, например, Foo::Car. В моей практике это оправданно в 50% случаев. Советую смотреть по ситуации и если это не оправдано отключать RuboCop для этой строки:

># lib/foo/bar.rb
>class Foo # rubocop:disable Style/Documentation
> class Bar
> end
>end
Аноним 28/08/17 Пнд 15:02:47  1052620
Кто там ныл что джуниоров не берут на удаленку?

http://rubyjobs.ru/vacancies/4991

Вкатывайтесь, за дошираки.
Аноним 28/08/17 Пнд 17:24:48  1052696
я прошел ruby on rails куда дальше ?
Аноним 28/08/17 Пнд 17:26:34  1052702
>>1052696
В пхп тред
Аноним 28/08/17 Пнд 17:28:14  1052705
>>1052702
Это я еще в универе прошел. А дальше ? какой путь ?
Аноним 29/08/17 Втр 04:30:20  1053075
>>1052620
Стоит им написать или нет? Я вчера изучил немного связные списки — чувствую себя очень умным.
Аноним 29/08/17 Втр 04:33:15  1053076
>>1052620
Меньше 2 долларов в час - достойная плата для скриптомартышки.
Аноним 29/08/17 Втр 16:40:29  1053348
.jpg (81Кб, 761x1000)
Руби тред не на нулевой? Пора это исправить неофитским вопросом!

В приложении GET запрос вида «локалхост:порт/контроллер?параметр1&параметр2» отдает json с данными, которые я хочу вывести в одной из вьюх. Как правильно обратиться из хелпера вьюхи? Я же не должен используя URL обращаться, ведь так? Это же не внешний сайт какой-то.

Пускай, данные получены и даже отображаются в нужной форме (в моем случае это простая таблица). Хочу на странице отображать поля «параметр1» и «параметр2» куда вводятся желаемые параметры, а при нажатии на кнопку неподалеку, страница бы подгружала обновленные данные в соответствии с запросом. Как это сделать? А используя ajax как это будет выглядеть?

Заранее спасибо за ответы.
Аноним 29/08/17 Втр 17:19:05  1053357
>>1053076

А то! Уже майонезом питаемся:
https://meduza.io/shapito/2017/08/29/yapontsu-sozdatelyu-yazyka-programmirovaniya-ruby-ponravilsya-rossiyskiy-mayonez-no-on-ne-ponyal-chto-za-protsenty-na-upakovke
Аноним 29/08/17 Втр 18:47:14  1053402
>>1053348
https://apidock.com/rails/ActionController/MimeResponds/InstanceMethods/respond_to
Аноним 29/08/17 Втр 18:53:59  1053406
>>1053402
Я читал уже, мне бы обратиться из другого контроллера/вьюхи. Как именно это сделать-то в моем случае, с параметрами?
Аноним 31/08/17 Чтв 17:21:13  1054914
Предложили работу на руби он рейлс, у самого неполный c# стак (главу по asp только прочитать успел) + весь троелсен без асп, html, css. Хрюше я озвучил, что руби в глаза не видел. Но сказал, что видел питон (ненавижу эту тварь). Спросил, что почитать, говорит, ознакомьтесь как то, чтоб в ступор не впадать. Но разговор был вообще мутный, вроде как собеседование я прошел по телефону (ниче такого у меня не спрашивали, пост, гет и те я сам озвучил). Зовут вроде как уже на работу, но я хз, что это будет из себя представлять. Собственно, вопрос, что мне почитать(посмотреть) за выходные?
Аноним 31/08/17 Чтв 19:01:10  1054985
>>1054914
Туториал М. Хартла.

Еще ни разу не отвечал никому ничего другого независимо от предыстории.
Аноним 31/08/17 Чтв 20:24:17  1055035
>>1054914
Как предложили, если не секрет?
Аноним 31/08/17 Чтв 20:42:25  1055052
>>1055035
Валяюсь я такой в кровати, вдруг звонок от hr. Номер нашли в резюме, которое висит уже больше месяца и там чистый шарп стек. Контора до этого несколько раз резюме смотрела. Привлечь мог разве что мехмат в резюме (коственно hr это показала).
Аноним 31/08/17 Чтв 21:18:55  1055080
>>1055052
Ебашишь такой матан по хардкору, а потом формочки клепаешь, красота...
Аноним 31/08/17 Чтв 22:05:26  1055112
>>1055080
Формочки такое. Но нормальных вакансий на матане, почти-что, не сущесвтует.
Аноним 31/08/17 Чтв 22:20:28  1055126
>>1055112
Машобчик, не матан, но что то около того
Аноним 31/08/17 Чтв 23:00:30  1055171
>>1055126
Это просто унылый дроч, такой же как и формочки.
Вообще местная студентота такая наивная, мол если мотематика или там что-то околонаучное то автоматически не унылый дроч, а дохуя интересно, ага щяс.
Аноним 31/08/17 Чтв 23:33:22  1055195
>>1055171
но хоть нужное. хотя с машоб, это не всегда нужно. ну и быть в курсе что происходит в мире, а не что происходит в руби или около этого.
ну и если можешь матан, то и электронику можно самому уже правда, и физику и немного химии с биологией, просто так.
а с руби ты только руби и можешь, не интересно.
Аноним 31/08/17 Чтв 23:37:52  1055197
>>1055195
с руби ты можешь любой современный язык и технологию
Аноним 01/09/17 Птн 11:58:24  1055439
>>1055197
Это реальный мир.
Аноним 01/09/17 Птн 17:56:05  1055639
>>1054985
>Хартла
Вот это?
Hartl M., Donahoe L. - Learn Enough HTML to Be Dangerous. A tutorial introduction to HTML. (2017)
Аноним 01/09/17 Птн 18:15:41  1055648
>>1055639
https://www.google.ru/search?q=Hartl+M
Аноним 01/09/17 Птн 19:46:55  1055719
>>1055648
Меня гугл забанил серьёзно
Аноним 01/09/17 Птн 22:40:36  1055908
Аноны выручайте. Нужен инсайд по ruby/ror-проектам в EPAM. Есть ли они? На каком этапе? Их долгосрочность? Ищутся ли новые?

Спрашиваю потому что их официальные представители говорят одно, знакомые другое, я потерялся уже и не знаю кому верить.
Аноним 01/09/17 Птн 23:05:00  1055920
>>1035747
на Нансена, мань?
Аноним 04/09/17 Пнд 01:05:20  1056864
Заинтересовался Ruby через приложение SoloLearn для мобильного. Они его внезапно русифицировали, поэтому я потыкав Python, Java, C++, остановился на Ruby. Есть в нем что-то от простоты. А я люблю простое.
Сейчас воткнув на древнем ноутбуке Atom+GitHub, вооружившись справочником по математике, учусь решать уравнения.
Приветствую всех, возможно я с вами надолго.
Аноним 04/09/17 Пнд 15:14:37  1057019
Аноны, подскажите, вот есть у меня дев приложение на рельсах, там вроде веб сервер пума, а если я хочу продакшн версию, мне нужно дополнительно сервер ставить апач или нжинкс и в чем преимущество продакшн версии?
Аноним 04/09/17 Пнд 16:27:30  1057053
>>1057019
rails server -e production

Пума - полноценный веб-сервер, ничего лишнего не надо.
Аноним 04/09/17 Пнд 18:28:43  1057106
>>1056864
Попробуй шарпач. Зависимость есть, брат- жив.
Аноним 04/09/17 Пнд 20:51:12  1057168
>>1057106
Вряд ли его ноут потянет шарпоIDE.
Аноним 05/09/17 Втр 12:41:44  1057380
>>1057053
вроде ЗОРОБОТОЛО но теперь другая хуйня
- сервер падает, как сделать автозапуск?
На сервере убунтец 16, скачал руководство по системд
Аноним 05/09/17 Втр 15:21:04  1057442
>>1057380
cron
Аноним 05/09/17 Втр 16:20:18  1057474
>>1057380
так и сделал. Посмотрим что сегодня ночью будет, а то меня уже анально поебывают, хули дескать твое ПО не работает.
Аноним 08/09/17 Птн 17:23:44  1059099
>>1057380
Кури systemd. Писать юниты очень просто. Вот как сделать сервис для сервера Puma: https://github.com/puma/puma/blob/master/docs/systemd.md
Аноним 09/09/17 Суб 12:56:12  1059408
>>1050704
>— Родился и вырос в Москве, либо переехал туда недавно.
Дс3 вот и гадай что это
>— Далеко не беден, может позволить себе довольно дорогие инструменты разработки — macBook, jira, heroku.
Около бомж с бюджетом 1к на неделю.
>— Пришёл в руби сразу как минимум на миддла, демонстрируя высокий уровень мастерства
Хз на кого я пришел, туплю как сука, после шарпа, с вашей утиной типизации, мне мозг клинит.
>— Презирает виндовс. Совсем. Даже 10 версию. Даже с полноценной линупсовой консолью. Но, при этом привык к лёгкости и простоте установки, отчего и пользуется макбуком.
Шинда мое все, в кармане винфон, сам хотел учить uwp, когда позвали.
>— Знает только один фреймоврк. Опционально кодит на js, создавая велосипеды для своего приложения. ES6 он поробовал, ему понравилось, но в проектах пока не использовал.
И этот фреймворк не знаю. И Js не знаю.
Мимо >>1054914 кун

>
Аноним 09/09/17 Суб 16:54:00  1059474
>>1059408
>винфон
Блин это система червь-пидор, зачем ты купил его вообще?
Аноним 09/09/17 Суб 19:52:05  1059514
>>1059474
Покупал его маман, она не стала его осваивать, оставшись на кнопочном. Когда мое ведро сдохло, вместо покупки нового, я достал с полки этот винфон.
Аноним 14/09/17 Чтв 07:58:58  1061711
>>1029529 (OP)
Руби походу всё посоны.

Популярность на StackOverflow достигла уровня 2009 года

Developer interest is waning, and now Coding Dojo, one of the largest programming bootcamps in the United States, has ejected it from its curriculum. This, it explains, is due to lower employer demand for the technology.

Аноним 14/09/17 Чтв 09:01:20  1061731
>>1061711
В этой статье речь идет не о Ruby, а o Rails. В качестве альтернативы рельсам предлагается “There’s plenty of really great web development alternatives,” Shaw said, mentioning React, Vue.js, and “the rise of JavaScript not sucking so bad.” . В качестве замены MVC-фреймворку предлагают фронтенд-библиотеки. Найс. А тот самый Coding Dojo, который отказался от Rails, заменил его на Javовский Spring. Если что, про Java тоже постоянно говорят, что она умирает и т.д.
Аноним 14/09/17 Чтв 09:06:22  1061733
>>1061731
Про Delphi тоже говорят что умирает. Врут собаки. Жив, жив Курилка!
Аноним 14/09/17 Чтв 09:24:51  1061744
>>1061731
Вот только на джаве хоть что-то периодически выходит. А на рубях выходят только в основном никому неизвестные исходники на гитхаб.
Аноним 14/09/17 Чтв 09:28:22  1061746
>>1061731
Ваш тред даже на двачах был нихже хаскеля, пока я его не бампанул.
Аноним 14/09/17 Чтв 10:14:48  1061760
>>1061744
Даже не знаю, на кого этот траллинг рассчитан. На каких-то залетных новичков? Тред конечно живее не становится, это да.
Аноним 14/09/17 Чтв 12:03:08  1061799
Я на руби свои скриптики пишу и мне норм. не такой фашистский синтаксис как в питухоне, и при этом не такой адовый синтаксис как в перле.
У меня не много опыта в кодинге, но при взгляде на на код на трёх этих языках руби выглядит лучше.
Аноним 14/09/17 Чтв 12:15:18  1061806
>>1061799
>не такой фашистский синтаксис как в питухоне
Это пока ты в команде не начал работать, жёсткая стандартизация лучше, чем когда каждый пишет как хочет
Аноним 14/09/17 Чтв 12:17:54  1061807
>>1061806
И в чём проблема придерживаться стайлгайда?
Аноним 14/09/17 Чтв 12:35:00  1061814
>>1061807
В пифоне просто стайлгайд один, а не множество, и это прекрасно
Аноним 14/09/17 Чтв 12:38:34  1061815
>>1061814
Везде где смотрел на руби код прямо указывается один стайлгайд на гитхабе.
В командах ещё и рубокопы всякие применяются, чтобы палить тех кто от стайлгайда отходит.
Аноним 14/09/17 Чтв 14:01:50  1061842
>>1061815
В таком случае аргумент о фашистском синтаксисе пифона не принимается
Аноним 14/09/17 Чтв 14:35:49  1061855
>>1061815
>Везде где смотрел на руби код прямо указывается один стайлгайд на гитхабе.

Везде — это полтора гема? Открой хотя бы рельсу, включи рубокоп и наблюдай как стайл-гайд соблюдается.
Аноним 14/09/17 Чтв 14:53:38  1061867
>>1061855
У них свой конфиг для рубокопа, это допустимо:
https://github.com/rails/rails/blob/master/.rubocop.yml

>>1061842
Если ты не в команде, то пиши как хочешь, ты просто хейтер.
Аноним 14/09/17 Чтв 15:15:43  1061876
>>1061867

> У них свой конфиг для рубокопа, это допустимо

который использует 3,5 правила из всего гайда, раскомментируй эту строчку в rubocop.yml

> DisabledByDefault: true

и наблюдай.
Аноним 14/09/17 Чтв 15:18:15  1061878
>>1061876
закомментируй
Аноним 14/09/17 Чтв 18:22:33  1061940
>>1061876
В рельсе свой стайлгайд (из-за рельсового dsl) и что? У них есть план и они его придерживаются.
Аноним 14/09/17 Чтв 18:51:31  1061958
>>1061940

> и что?

В отличии от го, никто (из нормальных людей) не обязан и не соблюдает рубиновский стайл-гайд на 100%.

Скажем, если мне нравится писать `return` в конце метода, то буду писать его везде, где это допустимо/не портит устоявшийся стиль.
Аноним 14/09/17 Чтв 18:59:02  1061968
Screenshot20170[...].png (57Кб, 1192x354)
>>1061958
Ответственный за мерджинг пробежится рубокопом и зарулит твой коммит.
В го просто изначально прибит гвоздями гоfmt чтобы макаки нанятые гуглом не могли накосячить ну ок, в больших корпорациях так нужно.
Руби от этого хуже не становится и все инструменты для осуществления подобного контроля также есть. Если мистер которые владеет проектом решил использовать стайлгайд, значит все остальные будут либо писать по нему, любо искать другой проект.
Аноним 14/09/17 Чтв 19:06:00  1061976
>>1061968

> Если мистер которые владеет проектом решил использовать стайлгайд, значит все остальные будут либо писать по нему, любо искать другой проект.

Значит, нужно искать другой проект. Стайл-гайд обязан быть аргументирован, почему так не надо писать — это руководство по тому, как не наступить на грабли, читая чужой код. Чьи-то хотелки, как в случае с https://github.com/bbatsov/ruby-style-guide#no-explicit-return не несут в себе никакой практической цености.
Аноним 14/09/17 Чтв 19:12:37  1061981
[HorribleSubs] [...].jpg (99Кб, 1280x720)
>>1061976
Руби это язык упирающий на читаемость и коммьюнити именно за это и любит рубишку, поэтому и гайды такие.

Рэльсовики стараются в данном случае брать и следовать этому в своём руководстве.

Хотелки это у тебя, а у них большой опыт и философия которая подкрепляет гайд.
Как и весь синтаксический сахар в руби опускание ретёрнов призвано улучшить читаемость.

«А я вот на плюсах всегда return 0 ставлю, мне так нравится!», но руби это не твой какой-то предыдущий язык, своя атмосфера, такие вещи надо просто принять.
Аноним 14/09/17 Чтв 19:27:50  1061990
>>1061981

А не мог бы ты аргументировать практически свои слова про коммьюнити? Давай возьмем 1000 самых популярных гемов и прогоним по ним рубокоп со всеми галочками. Сколько варнингов будет?

> опускание ретёрнов призвано улучшить читаемость

Об опускании (в контексте статического анализа) Матц говорил что это не так уж и хорошо. Моя позиция простая: опускание ретурнов в угоду читабельности делает систему менее предсказуемой.
Аноним 14/09/17 Чтв 19:37:34  1061993
791-OnePieceTV[[...].jpg (146Кб, 1280x720)
>>1061990
>Давай возьмем 1000 самых популярных гемов и прогоним по ним рубокоп со всеми галочками.
Если в проекте есть свой конфиг рубокопа, то прогонять нужно по нему. Гитлеровские штучки как в питоне и го здесь неуместны. Потому что руби это не питон или го (которые живут на поддуве гугла, руби только сейлсфорс поддувает).

>Моя позиция простая: опускание ретурнов в угоду читабельности делает систему менее предсказуемой.
Каким образом? Проявляется какое-то недокументированное поведение?
Чтобы сделать систему более предсказуемой существуют всякие ensure или можно просто nil поставить в конце функции если ты её опроцедурить хочешь.

В JS вон вообще надо извращаться с запятыми и прочими знаками пунктуации просто чтобы код нормально работал.
Аноним 14/09/17 Чтв 19:52:46  1062002
>>1061993
> Если в проекте есть свой конфиг рубокопа, то прогонять нужно по нему.

Я нахожу несколько двуличным когда с одной стороны, ты не даешь мне отключить конкретное правило рубокопа, а с другой ­— для тебя ок, когда третьи лица отключают едва-ли не весь рубокоп. Ещё немного и начну кидаться какашками в тебя. Братюня, не доводи.

> Каким образом? Проявляется какое-то недокументированное поведение?

Пишешь код, а через год не можешь сказать, возврат значения — запланирован, или это артефакт. Если не запланирован, то использовать его далее по коду - как минимум, не ок. В комментариях к методу еще бы и возвращаемые типы расписать, если это не 'примитивы'.
Аноним 14/09/17 Чтв 20:03:44  1062009
>>1062002
Ещё раз повторяю, руби это не питухон и не гомого — хочешь используешь метод size, хочешь юзаешь count или даже length. Алиасы, тысячи их.

Хочешь отключить в своём проекте все фильтры и оставить только свои — ок, хочешь дефолтный стайл гайд — пожалуйста.

Просто ты, как говорят, любишь по жёстче с самого начала.

>Пишешь код, а через год не можешь сказать, возврат значения — запланирован, или это артефакт.
Тесты как раз для этого придуманы насколько я знаю, они проверят оутпут твоих функций. Также можно реализовать методы проверки типа на соответствие классу или что-нибудь такое.
Аноним 14/09/17 Чтв 20:15:18  1062018
>>1062009
>Просто ты, как говорят, любишь по жёстче с самого начала.

Наоборот, я люблю нежно и ласково.

> Тесты как раз для этого придуманы насколько я знаю, они проверят оутпут твоих функций. Также можно реализовать методы проверки типа на соответствие классу или что-нибудь такое.

Т.е. вместо самодокументирующегося кода предлагаешь писать миллион тестов, на те 10% редких кейсов? Да и и неудобно это: из-за каждой мелочи лезть и читать тесты.
Аноним 14/09/17 Чтв 20:21:49  1062022
[HorribleSubs] [...].jpg (203Кб, 1920x1080)
>>1062018
>Т.е. вместо самодокументирующегося кода предлагаешь писать миллион тестов, на те 10% редких кейсов? Да и и неудобно это: из-за каждой мелочи лезть и читать тесты.
10% чемоданов это уже не редкость, а на совсем экзотические случаи я предлагаю забить (иначе говоря не делать преждевременную оптимизацию или избыточное покрытие тестами) и после первого сообщения о баге переписать функцию нормально, а с опытом функции будут «сами собой» писаться нормальными.
Аноним 14/09/17 Чтв 20:32:49  1062028
>>1062022

Прости, но нахожу твою аргументацию недостаточно убедительной или как в случае с

> Ещё раз повторяю, руби это не питухон и не гомого — хочешь используешь метод size, хочешь юзаешь count или даже length. Алиасы, тысячи их.

вообще не понимаю каким боком алиасы связаны с вопросом о `return`.
Аноним 14/09/17 Чтв 20:41:28  1062030
>>1062028
>вообще не понимаю каким боком алиасы связаны с вопросом о `return`
Таким что return в большинстве случаев это (синтаксический) сахар.
А руби настолько OOP язык, что в нём постоянно идёт обмен сообщеньками вот и всё. Хочешь залочить функцию, пиши nil в конце и всё.
Аноним 16/09/17 Суб 13:14:26  1062765
Нужна помощь. Пилю на рельсах имиджборду и думаю над связями между моделями. Пока что у меня получилось так: есть модель Post, вот такая вот: https://pastebin.com/j3NAdrtv
Получается такая система, что если у Post id равен thread_id, то это, собственно, сам тред, а если нет - значит, это ответ. Сделал так потому, что хочу, чтобы id были, как на всех имиджбордах. Насколько хорош такой способ? Можно сделать проще?
Аноним 16/09/17 Суб 15:09:29  1062824
GEM INSTALL.jpg (2126Кб, 3948x3616)
Аноним 17/09/17 Вск 01:30:02  1063060
>>1062824
На обезьяну сверху справа надо академическую шапку.
Аноним 17/09/17 Вск 12:58:33  1063142
2017-09-17 12.5[...].jpg (82Кб, 525x700)
>>1029529 (OP)
Нахуй ваш Руби, когда есть Crystal?
https://habrahabr.ru/company/ruvds/blog/337992/
Аноним 17/09/17 Вск 13:08:35  1063145
Блин два часа тупил с проблемой подавления вывода stderr, подключал open3. Оказалось у меня в другом месте просто был один вызов не экранированный.
Аноним 17/09/17 Вск 13:51:52  1063152
>>1063142
>Crystal
Cтатически типизированный руби?
Аноним 17/09/17 Вск 14:43:24  1063164
>>1063152
Нет, он компилируемый. Типы указывать в коде не надо.
Аноним 17/09/17 Вск 18:49:56  1063226
1505663222707.jpg (56Кб, 831x203)
1505663282340.jpg (32Кб, 508x128)
Сап гайс.
Прошу помощи с тестом контроллера на акшон oauth аутетнтификация.
на скринах соответственно тест и ошипка.

облазил все интернеты, так и не могу понять в чем проблема и что я делаю не так.
Аноним 18/09/17 Пнд 00:45:39  1063305
>>1063226
Судя по скринам ты используешь саблайм и убунту. Надеюсь помог.
Аноним 18/09/17 Пнд 10:37:08  1063399
>>1063305
Это намек на то что еще какая-то инфа нужна?
Аноним 18/09/17 Пнд 18:29:49  1063611
>>1063226
да хз вроде что-то пустое отправляется символы поменять на обьекты
Аноним 23/09/17 Суб 00:17:14  1065232
speakers.png (1112Кб, 1080x1797)
>>1029529 (OP)
Ну чё, пагни? RailsClub 2017 уже сегодня!

https://habrahabr.ru/company/railsclub/blog/335120/
https://habrahabr.ru/company/railsclub/blog/335378/
https://habrahabr.ru/company/railsclub/blog/336690/
https://habrahabr.ru/company/railsclub/blog/337378/
https://habrahabr.ru/company/railsclub/blog/337862/
https://habrahabr.ru/company/railsclub/blog/338208/
https://habrahabr.ru/company/railsclub/blog/338278/
https://habrahabr.ru/company/railsclub/blog/338412/
Аноним 23/09/17 Суб 00:23:53  1065235
> Почему твой доклад на RailsClub 2017 называется «Ruby is dead»?

У меня есть официальное разрешение от Матца называть Ruby мертвым языком :) Конечно, это провокация. Не новость, что я всегда критикую Ruby и Rails. Мне нравится Ruby, но я всегда сравниваю его с другими языками. В докладе я покажу примеры из Java и PHP, расскажу как они развивались и как сильно улучшились за последнее десятилетие. Но Ruby остался таким же, как 20 лет назад, и это должно быть предупреждением для нас. Я хочу остаться в Ruby, но он должен развиваться! Многие люди переходят на другой стек, потому что хотят работать с языком, который решает их проблемы. Моя проблема — как создать стабильное и надежное коммерческое приложение. Да, в Ruby процесс добавления новых фич, таких как, например, поддержка типизации, идет очень сложно, во многом из за поддержки обратной совместимости. Но ведь другим языкам удалось это сделать!

Двачую этого.
Аноним 23/09/17 Суб 00:27:03  1065237
> С другой стороны, я думаю что Ruby напрасно лишён интерфейсов. Из-за этого невозможно строго определить, какое именно поведение ожидается от метода, что было бы особенно полезно для авторов библиотек. Я надеюсь когда-нибудь это починят. Также не думаю, что в будущем Ruby сыграют заметную роль библиотеки, в которых будет реализовано то, чего нет в ядре языка. Новые фичи по-настоящему заработают только тогда, когда станут частью ядра Ruby. И конечно, реализация должна быть сделана как следует.

И этого тоже
Аноним 23/09/17 Суб 00:56:40  1065245
>>1065235
>>1065237
Ты петух драный, не собираешься ссылку приводить? Тебе хоть интерфейсы, хоть типы дай, один хуй будет непонятно что ты хочешь.
Ещё блядь отступы попроси.
Аноним 23/09/17 Суб 01:09:00  1065247
>>1065245

Братишка, это из статей по ссылкам из >>1065232 Братишка, будь, пожалуйста, менее токсичным.

> Ещё блядь отступы попроси.

Нет отступы не надо. Я бы ещё попросил библиотек побольше, но слабая экосистема - меньшее из злободневного. Лучше аннотации на уровне языка ( костыльно они реализованы в подделке от джетбрейн).
Аноним 23/09/17 Суб 01:12:17  1065248
>>1065247
Сам ты братишка, не буду я перебирать все эти статьи, а ты ещё и бака-гайдзин.
Аноним 24/09/17 Вск 15:35:41  1065876
Сап, рубяги.
Есть вопрос, как лучше реализовать маршрутизацию типа двача,к примеру: /pr/t1, /b/t45 и так далее.
Аноним 25/09/17 Пнд 01:57:57  1066062
>>1065876
У тебя всё получится.
Аноним 27/09/17 Срд 18:07:10  1067251
>>1066062
У него все получится, просто передай GEM HUIPIZDA INSTALL
Аноним 01/10/17 Вск 01:12:11  1068904
01.jpg (41Кб, 638x479)
Есть кто работал с графовыми БД?
Хотел использовать neo4j, а он оказался платным. Следующая по популярности OrientDB не имеет нормальных либ для рубей.
Че посоветуете?
Аноним 01/10/17 Вск 07:45:47  1069048
>>1068904
Ну напиши нормальную либу сам.
Аноним 02/10/17 Пнд 23:38:23  1069806
В последнее время почитываю блог Ruby-программиста.

http://blog.topolyan.com/

Просто оставлю это здесь.
Аноним 07/10/17 Суб 10:32:34  1071879
Где хранятся токены для сессий на сервере? По идее при каждом запросе должны сверятся ключи из кук и на серваке, так ведь?
Хочу сделать отслеживание залогинен пользователь или нет
Аноним 07/10/17 Суб 10:44:07  1071880
>>1069806
Ну мог бы для приличия бложик свой на рубях запилить, не на вордпресе
Аноним 07/10/17 Суб 13:59:43  1071948
>>1071879
Как я понял сессии по дефолту хранятся в куках в зашифрованном виде, перенёс всё в редис и стало проще ими оперировать
Аноним 09/10/17 Пнд 03:50:34  1072640
j5IXWyjdQwE.jpg (87Кб, 715x1000)
>>1050704
>— Родился и вырос в Москве, либо переехал туда недавно.
Засранск на севере. Правда, поступил в мск на бюджет, но вылетел с 6-го или 5-го семестра, потому что не ходил на физ-ру

>Далеко не беден
Сам-то как думаешь?
>macBook
Анус пятилетней давности с докупленными ssd на 128 и оперативкой до 16.
>jira
На стажировке была, да, но я не знаю как там за нее платили.
>heroku
Заливал на фри место псевдопетпроджекты.

>Пришёл в руби сразу как минимум на миддла
Сначала стажировка я правда думал, что хоть что-то заплатят, съебал через 2 недели, последние пару недель — июнь на удаленке 30-40к, что очень круто в моей ситуации на самом деле по меркам этого города
>правда, тесты только недавно научился писать, но неважно
хех

>Презирает виндовс. Совсем. Даже 10 версию
В дуалбуте дрисня, но я туда давно не грузился. Игрушки же и все такое прочее. У меня там скайп еще.
>Даже с полноценной линупсовой консолью
Cmder я туда поставил, но, по сути, не пользовал.
>Но, при этом привык к лёгкости и простоте установки, отчего и пользуется макбуком
Арчиком, где есть yaourt + AUR.

>Знает только один фреймоврк
Это ты про рельсы, лол? Вообще я пытался реакт/вью учить между собеседованиями, так что не знаю, чек или не чек.
>Опционально кодит на js,
Что-то околонулевые знания.

А еще я не знаю что такое смузи, например.
Такие дела.

Со мной всё будет хорошо?
Аноним 09/10/17 Пнд 08:48:47  1072672
Фигасе, ваш тред еще жив. Помню, год назад начинал учить руби ввиду отсутствия вакансий так и не продолжил, что-то сюда спрашивал.
Руби, не умирай!
кстати, эликсир есть смысл учить в широком смысле?
Аноним 09/10/17 Пнд 09:22:00  1072678
>>1072672
Нахуй нужен. Иди вон CRUDошлёпить на пыхе.
Аноним 09/10/17 Пнд 12:03:49  1072755
>>1072672
Смысл есть. Но если ради денег, то учи джаву.
Аноним 09/10/17 Пнд 17:59:31  1072957
>>1072755
И вкатывайся через пять лет. Нахуй джава не нужна.
Аноним 09/10/17 Пнд 23:46:08  1073152
2017-10-09 23.4[...].jpg (27Кб, 609x133)
Помогите ньюфагу, почему не детектит гем? Ставил руби на мак по гайду с сайта rvm.
Аноним 10/10/17 Втр 10:04:30  1073304
Аноны, подскажите, а как эта хуетень на руби зовется, мне нужно что бы на сервере крутилось что-то вроде фонового задания, сервиса или как там его.
Аноним 10/10/17 Втр 10:30:41  1073316
>>1073304
Крон?
Аноним 10/10/17 Втр 12:54:51  1073395
>>1073304
сайдкик, рескью?
Аноним 11/10/17 Срд 16:57:22  1074088
>>1073304
бля, сорян за тупой вопрос, в общем как в терминологии руби называется кусок кода который
работает в постоянно режиме, сейчас я вроде все так представляю, зашел пользователь на веб сервер, началась работа в контроллерах, а мне нужно то что бы запускало и работало, в моем случае загоняло данные в БД
Аноним 12/10/17 Чтв 10:51:44  1074381
>>1074088
в руби не знаю, но так демон
в рельсах active job
Аноним 12/10/17 Чтв 17:47:27  1074546
>>1074381
ок, спс, наверное действительно то, что мне нужно
Аноним 12/10/17 Чтв 23:25:04  1074693
a.PNG (53Кб, 970x666)
Анон, пипец как вакансий мало. Я уже больше полугода мониторю - один треш какой-то:
- легаси, "поддержка и развитие"
- не ит-конторы
- бездушные бади-шопы (которые тоже ит-конторами язык не поворачивается назвать)
- удаленщики
- просто мутные конторы с мутными командами

Мониторю хх, мойкруг и руби-джобс. Что делать, хочется работать в интересном проекте и/или здоровом коллективе, а я сижу тухну в одном болоте и просто некуда уйти даже.
Где еще поискать можно? Внезапно в Питере часто мелькают интересные вакансии, но боязно переезжать.
Аноним 13/10/17 Птн 13:34:40  1074860
>>1063226
Не используй тесты контроллеров, они устарели. Ошибка в том, что параметр provider равен nil, т.е. отсутствует.
Аноним 13/10/17 Птн 13:37:32  1074861
>>1062765
Я бы не стал так делать, но на двачах так, да.
Аноним 13/10/17 Птн 13:56:47  1074873
>>1049160
Да что угодно. Сейчас планирую свой VPN-сервис поднимать с фичами, которых нет НИГДЕ, но, по словам знакомого, который подобными сервисами активно пользуется, крайне востребованными. Надеюсь взлетит.
Аноним 13/10/17 Птн 14:01:49  1074881
>>1074693
На удалёнке иди, 2к баксов за сидение дома изи. Если претендует на большую ЗП, то ничем не помогу.
Аноним 13/10/17 Птн 18:41:26  1075082
>>1074693
>ькают интересные вакансии, но боя
а на чем видишь интересные вакансии?
Аноним 17/10/17 Втр 12:32:06  1077099
Что повторить перед собеседование на перекат PHP->RUBY ?
Аноним 17/10/17 Втр 15:58:19  1077167
>>1077099
Отче Наш.
Аноним 17/10/17 Втр 17:28:09  1077203
[HorribleSubs] [...].jpg (181Кб, 1280x720)
Котаны я долго не занимался кодингом, но когда-то на руби что-то начинал учить, но из-за личных проблем оставил это, а сейчас совсем делать нечего – стоит допройти рейлс туториал или нет?
Аноним 17/10/17 Втр 18:32:14  1077223
>>1077203
Стоит всегда что-то делать. А если делать - то делать заебись.
Аноним 17/10/17 Втр 18:40:09  1077229
>>1077203
Стоит, рельсы сейчас очень даже котируются, т.к. стабильное, проверенное, удобное решение + версия 5.1 наконец-то въехала в современный веб с вебпаком и т.д.
Аноним 17/10/17 Втр 18:44:10  1077231
Стоит въезжать в эликсир фор фан, если опыта на руби - ноль? Или там куда важнее знание ерланга? Или он вообще на 95% независим от них всех?
Аноним 17/10/17 Втр 21:23:30  1077319
>>1077231
скоро выйдет кристалл и все узкие места можно будет писать на нем вместо элексира, так что нет.
Аноним 17/10/17 Втр 22:23:43  1077354
>>1077231
Больше от эрланга, но вообще можно и с нуля вкатываться.
Аноним 17/10/17 Втр 23:40:10  1077399
Посоны, ради фана, вкиньте сюда пару вакансий, которые считаете интересными.
Я либо не там ищу, либо в глаза долблюсь - но нет нихуя на рынке вообще.
Аноним 17/10/17 Втр 23:41:29  1077400
>>1077399
PS: кроме удаленки, там что-то есть, но это не для всех
Аноним 18/10/17 Срд 16:33:29  1077687
>>1077319

Я, как руби-макака, успел немного разочаровался в кристале. Язык прикольный, ruby inspired, да; но документации, стайл гайдов категорически не хватает. Вкатываться в такое можно, если есть опыт в смежных языках, иначе больно.

Вот например, вчера баловался с weak algorithms (GA) на кристале. Для переменной внутри гена объявил union typed variable. Через час выяснилось: union не умеет в многие типы, замыкания. И что тут делать? Обмазываться дженериками? Лепить тысячу классов? Всё не то. Разве что идти искать решения в чужих исходниками — тоже такое. Вот думаю теперь: отложить кристал на пару лет, да попробовать скалу или раст. По скале уже полистал документацию по ней - испытал мультиоргазм - разжевано очень подробно, как раз для таких дурачков как я.

Так что не разделяю твой оптимизм на счёт кристала.
Аноним 19/10/17 Чтв 09:18:31  1078032
>>1077687
Наверное ты плохо умеешь гуглить, а это очень важно. Раньше я тоже считал, что по Руби мало инфы, но с ростом опыта начал находить, и очень много.

Style guide https://github.com/bbatsov/ruby-style-guide
Даже на русский переведен https://github.com/arbox/ruby-style-guide/blob/master/README-ruRU.md
Аноним 19/10/17 Чтв 09:18:51  1078034
>>1077399
hh.ru
Аноним 19/10/17 Чтв 11:59:33  1078097
Стикер (127Кб, 287x281)
>>1078032
Аноним 19/10/17 Чтв 13:12:52  1078143
>>1078097
И что это значит?
Аноним 19/10/17 Чтв 14:41:06  1078180
>>1077687
Что такое дженереки?
Аноним 19/10/17 Чтв 15:57:43  1078238
>>1078180

Обобщенный тип данных в статических ЯП. При приведении (("type erasure") к дженерику, можно использовать один и тот же код для разных типов,
Аноним 19/10/17 Чтв 23:16:42  1078548
>>1078034
Сразу видно типичного программиста. Немножко не от мира сего; "идеальный" код, который делает не то что просили...
Аноним 20/10/17 Птн 01:28:37  1078610
Есть класс автомобилей, с атрибутами: позиция и скорость. Я создаю массив объектов этого класса.
Затем есть второй класс - симуляция. В нем я в цикле по времени (1 сек) вычитаю расстояние текущего автомобиля из предыдущего. Как это сделать? Делаю через each но там как я понимаю счетчик только для одного объекта, как обратиться к предыдущему объекту?
код https://ideone.com/1ETRlT
Аноним 21/10/17 Суб 12:35:51  1079200
>>1078238
Типа как перегрузка методов в крестинах?
Аноним 21/10/17 Суб 14:20:31  1079247
14988870853171.png (117Кб, 512x512)
Обращаюсь к мастодонтам разработки.
Какое самое больше количество таблиц и размер БД вы встречали в своей практике в веб-приложениях?
Аноним 21/10/17 Суб 15:14:23  1079264
>>1079200

Нет, в крестах аналог — templates.

https://en.wikipedia.org/wiki/Template_(C%2B%2B)
Аноним 23/10/17 Пнд 05:44:25  1080385
>>1078610
Enumerable#each_cons
http://ruby-doc.org/core-2.2.0/Enumerable.html#method-i-each_cons
https://ideone.com/dogXO2
Аноним 24/10/17 Втр 14:47:01  1081142
>>1080385
>https://ideone.com/dogXO2
Что означают скобки в: «|(prev, nxt)|» ?
Аноним 24/10/17 Втр 23:00:54  1081471
>>1081142
Очевидно присвоение массива в переменные типа `a, b = [1, 2]`. Не знал про это, где можно почитать про конструкцию?
Аноним 25/10/17 Срд 23:10:42  1082069
Насколько же некоторые люди промытые, пиздец просто
https://github.com/thoughtbot/factory_bot/issues/921#issuecomment-231569572
А вообще там все issue достойно отдельной статьи
Аноним 27/10/17 Птн 12:57:18  1082668
Мне, ньюфагу, сказали, что подобная строка вызовет смех у тех, кто будет проверять мое тетсовое. Не могу понять... почему? params[:status].empty? ? @item.update_attributes(is_admin?: false) : @item.update_attributes(is_admin?: true )
Аноним 27/10/17 Птн 12:57:37  1082669
>>1082668
*тестовое
Аноним 27/10/17 Птн 15:03:59  1082708
>>1082668
Нет, смех, конечно, не вызовет, то что джуны пишут лютое говно в тестовых привыкаешь быстро, но я бы тебе не перезвонил. Самый минимум можно переписать вот так @item.update(is_admin: params[:status].empty?). Еще в руби обычно называют булевые поля без префикса is, то есть не is_admin, а просто admin. Хотя даже после этих исправлений строчка бы попахивала: обновление поля с именем admin в зависимости от пустоты параметра, который, судя по названию, никак не относится к администрированию. Но что бы понять как конкретно ее можно переписать нужно видеть остальной код.
Аноним 27/10/17 Птн 15:19:10  1082715
>>1082708
я так понял, что ко мне приебались не из-за способа обновления поля, а именно из-за синаксиса... спасибо
Аноним 27/10/17 Птн 15:20:36  1082716
>>1082708
Не поверишь. Меня взяли на испытательный срок, во время которого, едиснтвенное, что я делаю- пишу тестовое. Как только напишу- испытательный срок закроют. И мне за это даже немного платят. И это при том, что у меня опыта ноль. Я в ахуе.
Аноним 27/10/17 Птн 15:38:24  1082725
>>1082708
>Еще в руби обычно называют булевые поля без префикса is, то есть не is_admin, а просто admin.

Причем тут руби, если он обращается к ActiveRecord? Ты там поля в базах данных по конвенции Бацова называешь?
Аноним 27/10/17 Птн 18:02:09  1082823
>>1082725
При том что названия методов генерятся из названий полей. Хочешь названия метод по конвенции -> называешь поля в базе по конвенции.
Аноним 27/10/17 Птн 18:21:59  1082834
>>1082823
> называешь поля в базе по конвенции

Ясно, всё с тобой, называтель. Хочешь красивые названия для методов-предикаты используй http://www.chrisrolle.com/en/blog/aliasing-the-rails-way
Аноним 27/10/17 Птн 19:04:44  1082857
>>1082834
>называешь поля в базе по конвенции
А собственно почему бы и нет? А alias_attribute так себе штука, особенно когда у тебя куча овердохуя сложных запросов, путаться начинаешь, когда одна и та же колонка называется по-разному в руби коде и sql.
Аноним 27/10/17 Птн 19:11:02  1082860
Ну что, рубаны, в руби 2.5 (https://blog.jetbrains.com/ruby/2017/10/10-new-features-in-ruby-2-5/) вместо нормальных изменений опять завезли только сахарок. Сколько еще будем это терпеть?
Аноним 27/10/17 Птн 19:22:39  1082866
>>1082857
>А собственно почему бы и нет?

Ты ведь в курсе на backend'e зачастую используется больше одного ЯП? Предлагаешь писать на го/эликсире/whatever с нотациями из руби?
Аноним 27/10/17 Птн 19:34:47  1082875
>>1082866
Я прямо сейчас так пишу, какой-то конвенции в именование полей в базе в любом случае нужно придерживаться же. На беке в проекте используется руби, джава и немного эликсир, никто не жалуется (разработчиков чуть больше 30).
Тем более, что за руби-нотация? Выбор-то не очень большой или underscore или camelcase, плюс мелочи вроде постфикса _at для полей с датами.
Аноним 27/10/17 Птн 20:03:09  1082888
>>1082668
>params[:status].empty? ? @item.update_attributes(is_admin?: false) : @item.update_attributes(is_admin?: true )

Потому что если хочешь тернарник использовать, то
> @item.update_attributes(is_admin?: params[:status].empty? ? false : true)

А так у тебя ни хуй, ни пизда, говно блядь
Аноним 27/10/17 Птн 20:46:15  1082911
>>1082875
>Я прямо сейчас так пишу, какой-то конвенции в именование полей в базе в любом случае нужно придерживаться же.

В конвенции руби нет понятия суффикса в имени переменной. Без суффикса поля sql нормально не именуются. Так что не думаю, что вы используете конвенцию руби в чистом её виде; полагаю используете смесь стайл-гайда по sql, типа http://www.sqlstyle.guide и отдельных нотаций из рубиновского стайл-гайда. Хотите так писать - ок, однако в базах данных, на мой взгляд, допустимо использовать префиксы is_ для булева типа данных, вот и всё.
Аноним 27/10/17 Птн 23:35:41  1082999
>>1082708
>Еще в руби обычно называют булевые поля без префикса is
Бля, а где это интересно написано, что в руби поля называют без префикса is_? Может быть ты хотел сказать в рельсе?
Так в рельсе дохуя чего делают, от чего цивилизованный мир уже давно отказался. Уже тошнит всех от этой магии и бесконечного синтаксического сахара.
Аноним 28/10/17 Суб 00:01:26  1083029
>>1082999
>Бля, а где это интересно написано, что в руби поля называют без префикса is_?
Посмотри на стандартную библиотеку руби, например, ни одного метода с префиксом is_ ты там не найдешь.
>Уже тошнит всех от этой магии и бесконечного синтаксического сахара.
Сам с собой споришь? Я не утверждал, что тонны синтаксического сахара это хорошо, я бы и сам с удовольствием выпилил бы процентов 70 всех методов из рельс, да и вот это >>1082860 меня расстраивает. Но это не отменяет того, что многие вещи в руби сделаны вполне годно, а совсем без синтаксического сахара может получится JavaScript.
Аноним 28/10/17 Суб 15:01:48  1083218
Какой дистрибутив и DE посоветуете новичку в прыщах?
Аноним 28/10/17 Суб 15:47:39  1083234
>>1083218
rails
Аноним 28/10/17 Суб 16:44:09  1083258
>>1083029
Методы с полями не путай. Где ты видел чтобы писали `admin? = true`?
Мне нахуй не уперлось, чтобы фремворк добавлял мне говнометодов на основе типа данных. Были же раньше в рельсах find_by_zalupa_color('red'). Сейчас вот повзрослели. И эта хуйня из той же оперы.
is_ так же хорош, как _at. Охуенно удобно читается. В отличии от какого-нибудь active - чего блять эктив, лезь в базу смотри.
Аноним 28/10/17 Суб 16:49:28  1083265
Анон, знаешь что-нибудь про эту контору? Годная или бадишоп?
Аноним 30/10/17 Пнд 13:17:20  1084224
У меня есть model1, у нее has_many model2, а у нее attached_file.Все это на mongoid. Когда файлы приходят из формы, я хочу их все записать в model1.models2 а потом все вместе сохранить, а то у меня сейчас каждый файл пишется отдельно... так можно сделать? что-то не пойму как
Аноним 30/10/17 Пнд 14:17:43  1084243
>>1084224
я все осознал, не бейте, просто обоссыте
Аноним 30/10/17 Пнд 18:16:14  1084399
Юзаю will_paginate-bootstrap. Все делаю по инструкции. Все работает, страницы листаются, но... кнопки "вперед" и "назад" пустые и схлопнутые, хотя рабочие. Как поправить?
Аноним 30/10/17 Пнд 22:55:46  1084641
>>1084399
>Как поправить?
Использовать каминари.
Аноним 31/10/17 Втр 03:04:32  1084782
>>1084641
Я вынужден писать на старых рельсах, каминари с ними не пашет
Аноним 31/10/17 Втр 23:02:01  1085231
>>1084782
На первых что-ли? Я помню еще в третьей версии их использовал.
Или может просто новые версии со старыми не работают, тогда можно поставить старую же версию каминарей.
Аноним 01/11/17 Срд 12:15:03  1085385
Мне нужен одинаковый фильтр для двух контроллеров. Что-то мне подсказывает что должно быть решение, чтобы не дублировать код. Подскажи анон.
Аноним 01/11/17 Срд 17:30:47  1085574
>>1085385
Вынеси метод в парку concerns.
Аноним 02/11/17 Чтв 22:56:23  1086504
>>1085574
Сдохни, тварь!

>>1085385
Точнее пиши, какой фильтр?
Аноним 03/11/17 Птн 01:47:08  1086592
>>1086504
Чому ты такой злой? Почему мой ответ неверный?
Аноним 03/11/17 Птн 08:21:03  1086648
У меня есть model A has many model B, model B belongs to A.
Для каждой из моделей есть контроллер. В контроллере А в встречается действие которое логичнее было бы вынести в контроллер B. Т.е. я хотел бы из контроллера А вызывать метод, который бы хранился в контроллере B. Это возможно?
Аноним 03/11/17 Птн 12:45:52  1086699
>>1086648
Возможно. Контроллер инкапсулируется в класс, стало быть напиши что-то Controller1 cnt1= new Controller1;
Аноним 03/11/17 Птн 14:50:47  1086720
Опять же есть model A has many model B, model B belongs to A.
У модели B есть файл прикрепленный с помощью paperclip. Теоретически у разных экземпляров модели этот файл может быть одинаковым. И тогда удалив один экзмепляр модели, в других экземплярах этот же файл становится недоступен, так как удаляется сам файл с диска. Как этого избежать?
Аноним 03/11/17 Птн 15:10:13  1086726
>>1086720
вопрос снимается, я нашел
Аноним 04/11/17 Суб 09:32:16  1087010
>>1086648
ActiveSupport::Concern
Аноним 04/11/17 Суб 09:34:59  1087011
Правдивая статистика о зарплатах и вакансиях:
https://hype.codes/ruby-rails-developer-salary-russia-october-2017
Что бы там ни пиздели про нормальные зарплаты у рубистов, правда в том, что 40% работают за 60 тыр., и еще 27% - за 100 тыр. Т.е. 67% рубистов, работающих в РФ, живут за чертой бедности.
Аноним 04/11/17 Суб 10:45:23  1087029
>>1087011
Такова участь людей, пишущих на скриптоговне.
Есть сиартап перерастает в проект, то все нахуй с рубец переписывается на божественную джаву/задротоплюсы с шарповой оберткой.
Аноним 04/11/17 Суб 12:47:47  1087058
>>1086592
Извини, анон. Я сейчас работаю в такой параше, где была эпидемия концернов головного мозга и проект натурально невозможно поддерживать, потому что там такая КОНТЕКСТНАЯ ЗАВИСИМОСТЬ, что пиздец просто.

>>1086592
>>1087010
Вообще с концернами нужно работать очень аккуратно. Выделение какой-то логики в концерн - это архитектурное решение, гораздо более серьезное чем решение добавить еще один класс. Выделяемый функционал должен быть хорошо отсепарирован, не зависеть от контекста, и выделение должно быть концептуальным, исходя из предметной области (например, Enumerable в руби), а не техническим (как у анона какой-то фильтр два раза встречается или как некоторые долбоебы модели "сокращают" унося валидации в концерн).
Аноним 04/11/17 Суб 14:22:02  1087090
>>1087058
приведи пример страшной контекстной зависимости.
Аноним 05/11/17 Вск 01:38:47  1087358
>>1086699
Я нуб и нихуя не понял, но почитаю про это на досуге
Аноним 05/11/17 Вск 15:24:48  1087509
В модели есть метод self.do_huynya
Я его вызываю из контроллера Model.do_huynya
Можно ли сделать ему доступными переменные кнтролера не передавая их в него как параметры?
Аноним 05/11/17 Вск 16:05:41  1087521
>>1087509
И еще один вопрос. Опять же model A has many model B, model B belongs to A. У модели B прикрепленный файл.
Я прикрепляю невалидный файл.
Запихиваю ModelA.modelsb << невалидная хуита. И пытаюсь сохранить. Он не сохраняет. С одной стороны все логично. Но я думал, что это происходит из-за наличия строчки validates_associated :modelsB, оказалось же, что эта строчка не при чем. Что тогда делает validates_associated?
Аноним 05/11/17 Вск 16:17:32  1087529
>>1079097 (OP)

Всем привет!

Хочу писать на Ruby приложения для Android
.

Есть ли для этого возможность без глючных гемов и т.п., чтобы я просто в Rubymine или другом редакторе захуярил код, а потом сделал apk и протестил на своём телефоне?

Вопросы настолько простые, потому что я нуб в программировании, просто есть идеи приложений, которые я хочу сделать.

Если ruboto не работает, то что использовать вместо него?
Аноним 05/11/17 Вск 19:37:31  1087614
>>1087529
мертвая тема, на ruby только веб - 90% Rails, 10%-всякие другие веб-фреймворки и поделия. Можешь попробовать чисто по фану, но смысла в этом никакого нет.
Аноним 05/11/17 Вск 20:03:40  1087626
>>1087509
Зачем такой ерундой заниматься? Контроллер и модель являются классами. Классы не должны протекать друг в друга, иначе получится нетестируемая, неподдерживаемая лапша. То, что скаффолд генерирует к модели одноименный контроллер - это просто для удобства. Они ничего не должны друг про друга знать и никак друг к другу не относятся.
Аноним 05/11/17 Вск 21:34:42  1087659
>>1087626
Смотри. У меня есть модель и контроллер Article. Есть модель и контроллер Picture. У Picture есть файл. В нескольких экшенах контроллера Article у меня происходит некоторое действие, которое
1. Хотелось бы сделать каким-то отдельным методом, а не повторять несколько раз
2. Оно по сути относится к Picture. Я могу его сделать например приватным методом Articles контроллера. Все будет прекрасно работать, но меня старший разработчик уверяет, что это некошерно совсем-совсем. Ок, я взял и вынес это в модель. Но тогда, мне надо вызывать этот метод с параметрами. Этот же разработчик посмотрел и сказал, что в принципе разместить этот метод в модели возможно. Но вызывать с параметрами это тоже пищдец как некошерно. янихуянепонимаю
Аноним 05/11/17 Вск 21:50:22  1087666
>>1087659
еще проще: в Articles контроллере при создании и обновлении статей должен быть код, который добавляет картинки в статью. Где ему место и почему? А то я совсем запутался.
Аноним 06/11/17 Пнд 12:19:43  1087834
>>1087659
>вызывать с параметрами это тоже пищдец как некошерно
Почему так решил? В экшенах контроллера не используют параметры, а в остальных местах очень даже ок. Это же галимое ruby всего лишь.
class ArticlesController
def update
@article = Article.find(params[:id])
success = PictureUploader.call(@article, params[:attachments])
if success
head 200
else
head 422
end
end

def create
@article = Article.find(params[:id])
success = PictureUploader.call(@article, params[:attachments])
if success
render json: @article.as_json, status: :ok
else
render json: @article.errors, status: :unprocessable_entity
end
end
end

А этот самый PictureUploader размещаешь в любой папке из autoload path, чаще всего кидают в app/services. Это и будет код, который будет использоваться хоть несколькими контроллерами, хоть еще как. А можно пока и не выносить в отдельный класс, а просто оставить в одной из моделей.
@article = Article.find(params[:id])
@article.add_pictures(params[:attachments])

class Article < ActiveRecord::Base
def add_pictures(attachments)
pictures.concat(attachments)
end
end

Аноним 06/11/17 Пнд 13:04:35  1087844
>>1087834
Бро, а я могу этот пикче аплоадер тупо сделать приватным методом контроллера? В этом какого-то серьезного зашквара не будет?
Аноним 06/11/17 Пнд 13:06:45  1087846
>>1087844
Я изначально сделал тупо приватным методом контроллера. Мне по месту его размещения проверяющие замечания не сделали, но старший разраб сказал, что пиздец зашквар и надо вынести. Я вынес в модель, точно так как у тебя с параметрами, но тот же старший сказал мне, что это блядь зашквар не меньший. Я думаю положить на него хуй, оставить приватным методом контроллера и не ебать себе мозг
Аноним 06/11/17 Пнд 13:23:40  1087850
>>1087846
Пускай тогда старшак конкретно скажет, куда его воткнуть. А то туда нельзя, сюда нельзя, а как именно надо, не говорит. Он может угорает просто? Да и вообще лучше просить у него, чтобы он объяснял, почему считает то или иное зашкваром, а то так чему научишься - просто повторяя его прихоти, но не понимая смысла.
Аноним 06/11/17 Пнд 14:30:41  1087876
>>1087850
Он вообще какой-то странный. Он почти ничего не говорит прямо. То ли религия не позволяет, то ли еще что. Я думаю, что раз проверяющие не приебались то и не надо это править.
Он как-то упоминал, что разместить это в модели возможно. Но бляд как я без параметров буду это вызывать из модели???
Аноним 06/11/17 Пнд 17:41:20  1087930
Вопросы от самых маленьких: мне нужнео получить хеш, но один из ключей должен быть в наличии только при условии. Как записать? Все время ошибку выдает. Пробую что-то вроде
{a: 1, b:2, c:3 if x>y}
Аноним 06/11/17 Пнд 18:00:47  1087946
И последний нубский вопрос. Все тот же Articles и Pictures. Я бы хотел просто передать в update_attributes хэш, вида {text: 'sometext', title:'sometitle', pictures: 'some pictures'}. Но... нужно сделать так, чтобы существующие pictures(если есть) не перезаписывались, а добавлялись. Это возможно?
Аноним 06/11/17 Пнд 19:26:17  1087975
>>1087946
Кажется я совсем тупой. Не прошло и полгода, но дошло в делать в хеше не "some pictures", а "current_pictures"+"some_pictures"
Аноним 06/11/17 Пнд 20:02:25  1087980
Всплыл еще один вопрос. Записал что-то в @article.pictures. А теперь беру и делаю update_attributes, записывая новые пикчи вместо старых. Старые что, автоматически удаляются? Если да, то хорошо. Вроде как Picture.all.count говорит о том, что лишее удаляется, хотя мне интуитивно кажется, что не должны удаляться
Аноним 06/11/17 Пнд 21:45:15  1088017
Так, анон, забудь про всю хуйню, которую я спрашивал выше. Все свелось к одному вопросу. У меня есть мой хэш my_huynya. В нем три поля, в первых двух- текст, в третьем- массив. Я хочу сделать что-то типа @article.update_attributes(my_huynya), но первые два поля должны сработать как есть, просто обновиться, а третье, которое массив- должно не обновить, а добавить к уже сущсетвующему. Как это сделать наиболее коротко, четко и деркзо?
Аноним 09/11/17 Чтв 11:11:49  1089126
Посоны, какая-то херня с Elasticsearch, помогите. Вроде все работало, но потом по некоторым причинам пришлось сгенерировать новое приложение и в него переносить код из существующего. Пустая база. Создаю три объекта. Начинаю искать. По любым полям корректно находит любой объект. Добавляю четвертый. Начинаю искать и бац, один объект(не тот, что попал в базу последним) по одному полю не находится, хотя по другому- без проблем. С добавлением новых объектов все больше и больше тех, которые не находятся. Что это может быть?
Аноним 09/11/17 Чтв 11:24:17  1089134
>>1089126
Кажется нашел. Надо было новое имя индекса задать.
Аноним 09/11/17 Чтв 14:32:17  1089253
>>1089126
> Elasticsearch
А че эластик на руби переписали? Офигеть
Аноним 09/11/17 Чтв 22:30:40  1089616
Такой вопрос: мне сказали, что мое тестовое говноприложение не соответсвует CRUD. Посмотрел, понял, что для одной из моделе вместо стандартного update я использую свой экшн. Если по нажатию кнопки у меня управление пойдет в экшн update, минуя экшен edit(судя по всему он мне тут нах не нужен, мне не нужно редактировать текстовые поля, мне надо поле boolean менять с одного занчения на другое) не будет ли это опять несоответствием CRUD?
Аноним 10/11/17 Птн 10:44:07  1089770
>>1089616
не будет. Но про нарушение CRUD смешно конечно - им надо проверить, что соискатель умеет в команду rails g scaffold?
Аноним 10/11/17 Птн 20:34:13  1090017
>>1089770
Я скаффолдом не пользовался. Я вручную сгенерировал нужные мне файлы с нудными экшенами. А этот экшн, который не вписался в CRUD, я создавал сам, руками. И я его сделал не стандартным не потому, что я не знаю как выглядят стандартные, а потому-что до меня сначала не дошло, что он делает ровно то, же что и обычный edit, как только намекнули про CRUD, то сразу понял и исправил.
Аноним 10/11/17 Птн 20:35:05  1090018
>>1090017
..."этот экшн", забыл сказать, что нашел в чем ошибка, но ты уже понял из моего предыдущего сообщения
Аноним 10/11/17 Птн 20:39:52  1090023
2017-11-11013907.png (63Кб, 212x166)
https://www.youtube.com/watch?v=MQko1rnkL7w
Аноним 13/11/17 Пнд 08:22:33  1091100
Ой, а может кто чуть подфиксить игруху https://github.com/yhara/down ? Там через минуту афк включается бот, так вот хочется, чтобы он включался только по нажатию какой-нибудь клавиши, и чтобы его результаты в топ-лист записывались ускорю читэнжином в 100 раз и гляну, сколько за день наберёт
Аноним 13/11/17 Пнд 09:54:05  1091120
Анон, подскажи нубу. Есть приложение, пусть это будет блог. Если сделать МНОГО записей, то главная страница в первый раз открывается очень долго, несколько минут. Как ускорить процесс?
Аноним 13/11/17 Пнд 11:18:37  1091143
>>1091120
В таких случаях надо показывать код. Скорее всего, ты просто чрезвычайно жопорукий.
Аноним 13/11/17 Пнд 11:28:14  1091147
>>1091143
Index: @list = Article.order_by(created_at: :desc).paginate(:page => params[:page], :per_page => 10)
Аноним 13/11/17 Пнд 12:27:02  1091157
>>1091147
Я так понимаю, что мне надо загружать не все разом, а только то, что запрашивает пользователь. Но что-то я не ебу как это делается. Помоги, анон
Аноним 13/11/17 Пнд 15:46:51  1091256
Есть родительский метод, в котором я хочу инициализировать общие для наследников переменные.
Наследники не видят их. Как пофиксить?
https://pastebin.com/Lc13g6dF
Аноним 13/11/17 Пнд 17:50:08  1091309
Две модели связаны через has many belongs_to. С помощью гема dynamic_form отлично выводятся ошибки родительской модели. Ошибки же дочерней выводятся как-то хуево. Хотя если посмотреть объект ошибок именно дочерних объектов, то там все ок. МОжно ли как-то поправить без танцев с бубном?
Аноним 13/11/17 Пнд 22:48:15  1091486
>>1087930
if x > y
hash[:c] = 4
end
Аноним 13/11/17 Пнд 22:49:20  1091488
>>1091486
or
hash[:c] = 4 if x > y
Аноним 14/11/17 Втр 00:53:04  1091547
>>1091120
>>1091147
Выручайте
Аноним 14/11/17 Втр 09:55:27  1091665
>>1091309
Уточняю вопрос.
Есть модель Parent, которая has_many childs. Во время валидации есть ошибки как родительской так и дочерней модели. Как ни делаю, все равно получается, что выводится лишнее. Ошибки полей родительской модели- ок, ошибки из дочерней- ок, но еще выводится из родительской ошибка вида child is invalid... хотя она мне нах не нужна, так как выводятся напрямую из дочерней нужные сообщения. Так как их красиво вывести?
Аноним 15/11/17 Срд 16:32:26  1092440
>>1091665
Уточняю вопрос, заданный выше:
У меня в базе mongodb есть большая коллекция, несколько миллионов записей.
Запускаю сервер. Первый запрос который требует запроса в эту коллекцию выполняется ОЧЕНЬ долго, минут по 5. Даже если это банальный show. Но все последующие выполняются быстро.
В чем дело?
Аноним 16/11/17 Чтв 20:39:25  1093041
>>1090023
Я Матц-то разжирел!
Аноним 16/11/17 Чтв 21:35:21  1093070
>>1092440
>В чем дело?
«в базе mongodb»
Аноним 16/11/17 Чтв 21:48:32  1093082
>>1093070
И что делать?
Аноним 16/11/17 Чтв 21:53:32  1093088
>>1093082
Снимать штаны и бегать.
Аноним 17/11/17 Птн 15:27:08  1093450
>>1093088
Так я хочу программистом быть, а не гей-шлюхой
Аноним 17/11/17 Птн 16:03:20  1093472
>>1093450

Стандартный совет: использовать индексы, и посмотри, что там гугл пишет про "MondoDB First query is slow".
Аноним 17/11/17 Птн 18:15:10  1093548
>>1093472
индексы есть, гугл пока не помогает
Аноним 17/11/17 Птн 21:44:36  1093686
Бесплатные выходные в Code School!!!

Т.е., бесплатно можно потыкать и пройти любые из их курсов (сколько успеете). Возможно вы помните эту компанию по курсам Rails for Zombies. Обычно курсы небольшие — на час-полтора. По сути дела курс — несколько уроков (уровней), состоящих из теории (видео + слайды) и практики (решение задач прямо в браузере). Уровень тоже разный. По руби и рельсам курсы начинались где-то на самых основах языка и фреймворка, заканчивались где-то на метапрограммировании и rails-API, rails patterns.

Ознакомиться со списком курсов:

https://www.codeschool.com/courses

Курсы, на которых написано FREE, являются бесплатными и в любое другое время.

Как видите, много курсов по JS, есть пара курсов по всяким модным штукам типа Elixir и Go.

​​How long does Free Weekend last?

Free Weekend starts on Friday, November 17, at 10 a.m. and ends on Sunday, November 19, at 11:59 p.m. in Eastern Standard Time (UTC-5). It's a 61 hours long weekend so you should have enough time to learn about your favorite technologies, but remember to take a nap once in a while.

(пятница 17 ноября 18:00 по Москве — понедельник 20 ноября 8:00 по Москве)

На этой страницу нужно нажать кнопку «Create a free account to get access» (даже если у вас есть аккаунт) — будет написано что-то в духе «You're in!»

https://www.codeschool.com/free-weekend
Аноним 18/11/17 Суб 02:01:42  1093804
>>1093548
Возможно ты на бесплатном хероку а он первый запрос делает медленно
Аноним 20/11/17 Пнд 18:29:04  1095059
can :access, :ws_return_and_transfer_document if user.rights.include?('ws_return_and_transfer_document')

что происходит в этой строчке? что такое access и ws_return_and_transfer_document? Это экшены, или что это такое?
Аноним 20/11/17 Пнд 21:28:47  1095151
>>1095059
lmgtfy
https://github.com/CanCanCommunity/cancancan/wiki/Defining-Abilities#the-can-method
Аноним 21/11/17 Втр 01:15:57  1095266
>>1095151
Я это видел. Но нихуя понятнее не стало.
По идее первыйм аргементом должен идти экшн, а вторым объект. Я нигде не могу найти экшн acceess, но ок, может быть он есть. А вот название второго аргемента ну вообще никак не похоже на объект...
Аноним 21/11/17 Втр 21:09:59  1095706
>>1029529 (OP)
помогите мне пожалуйста, читаю Ruby on Rails Tutorial Хартла. Там нужно установить git и heroku. Так вот, у меня такая проблема
у меня windows 7, и когда я пишу в командной строке windows "heroku create" у меня вроде как создаётся приложение, но выскакивает ошибка "ENOENT: spawn git ENOENT", и дальше когда я пишу "git push heroku master" в командной строке windows у меня выдаёт ошибку что git не является внутренней командой, но даже когда я в path прописываю путь до git, у меня не работает ничего, то есть на сайте heroku создаётся эта папка приложения, но отправить уже существующие файлы я не могу через командную строку windows, между тем когда я в bit bash пишу "heroku create" теперь уже git не знает про heroku. Эти две программы просто не знают друг про друга, и соответственно у меня не получается запустить приложение на heroku. Подскажите пожалуйста, как решить эту программу.
Аноним 21/11/17 Втр 21:37:22  1095725
>>1095706

На скриншоте bash, а не командная строка Windows (cmd).

Попробуй набрать cmd /c heroky.cmd create
Аноним 21/11/17 Втр 22:00:47  1095753
>>1095725
спасибо огромное , заработало. То есть чтобы в windows работать в heroku(не обязательно create) через bash нужно всегда сначала писать cmd /c heroku.cmd?
Аноним 22/11/17 Срд 10:58:09  1095972
>>1095753
Правильный вывод скорее такой - windows не очень-то подходит для разработки на чем-то, кроме .NET
Аноним 23/11/17 Чтв 00:38:08  1096361
1945016.jpg (20Кб, 400x400)
Нужна помощь с dry-rb. Конкретно с тем, как правильно работать с dry-transactions.

Вопрос на конкретном примере:
- Есть чистая модель Payment, без валидаций и колбеков.
- Валидации вынесены в форму.
- Есть операция CreatePayment, в нее передается результат формы.
Дальше начинается операция, состоящая из нескольких действий: создаем запись в БД, создаем дочерние записи (проводки, например), обновляем счетчики, обновляем статистику, ставим джобы, шлем уведомления, пишем в лог. Часть операций нужно делать внутри СУБД-транзакции (создание, дочерние записи, счетчики, стата).
То есть по сути это колбеки before_create, after_save, after_commit и т.п.
И плюс ко всему - допустим в зависимости от контекста эти колбеки разные (например, когда делаем из админки, то не шлем уведомления, а в случае импорта не логируем. Ну условно.)

Вопрос: как должна выглядеть такая операция?
Как ее бить на степы? Как оборачивать в субд-транзакцию часть степов? Как менять состав операций в зависимости от контекста?
inb4: делать различные оперейшены. Да, может быть. Но предположим такой момент, что набор степов идентичный, а отличается только состав "колбеков" и то не всегда и не сильно.
Аноним 26/11/17 Вск 23:44:26  1098469
image.png (16Кб, 659x210)
image.png (3Кб, 326x32)
image.png (20Кб, 636x231)
>>1029529 (OP)
помогите мне пожалуйста
я создаю в одной папке 2 проекта, блог(blog) и плагин(wellspring), в блоге(blog) в gemfile прописываю название моего плагина и путь к нему, то есть gem 'wellspring', path: '../wellspring/', когда я пишу "bundle install" у меня выдаёт ошибку что-то вроде:
"cannot load such file... Does it try to require a relative path? That's been removed in Ruby 1.9. Bundler cannot continue."
В общем нельзя так писать в gemfile путь "../wellspring".
Объясните пожалуйста, как мне написать путь к этому плагину чтобы он установился?
Аноним 27/11/17 Пнд 02:02:24  1098522
image.png (15Кб, 668x213)
image.png (70Кб, 1243x528)
>>1098469
ну помогите пожалуйста
в командной строке написано, что в файле моего gemspec не работает 4 строка, то есть require"wellspring/version", что-то про относительный путь
но я не знаю, почему и как исправить путь к этому файлу так, чтобы оно подключилось. Подскажите пожалуйста, как поправить.
Может мне нужно написать в первой строке что-нибудь другое, какой-то другой путь?
Аноним 27/11/17 Пнд 05:53:15  1098567
>>1029529 (OP)
Где почитать про экосистему Руби? Чтобы понять какие тулзы сейчас используют, а какие подходы уже устарели. Знаю что есть RVM, Rack, - вроде их всегда и везде юзают. Какие еще тулзы?
Аноним 27/11/17 Пнд 16:25:30  1098747
<%= form_tag "/common/reports/#{report_id}.js", :format => :js, remote: true, class: 'form-horizontal', id: "#{report_id}_form" do%>
Эта форма работает, но...
1. Я не понимаю откуда берется *.js, такого файла нет, точнее есть но он не js
2. В экшене, куда попадают данные этой формы, есть respond_to для js и docx. Как сделать так, чтобы управление попадало в docx?
Аноним 27/11/17 Пнд 20:12:22  1099016
>>1098522
ну неужели никто не знает?
Аноним 27/11/17 Пнд 20:40:17  1099076
>>1099016

Попробуй в 4 строчке твоего gemspec'a прописать абсолютный путь:

> require File.join(File.expand_path("../lib", __FILE__), "wellspring", "version")

Аноним 30/11/17 Чтв 15:29:54  1100524
Есть API, во вьюхах есть файл с раширением json.jbuilder и там есть например такая строчка
json.comment decision.comment

что тут вообще происходит? В ответ на запрос отдается json-объект, в который в своейство comment записывается результат выполнения decision.comment?
Аноним 03/12/17 Вск 00:54:40  1101882
Народ, последний месяц 2к17
Rails API онли апликейшены и микросервисы.
есть гуру этого дела? кто осветит темку?
Аноним 03/12/17 Вск 01:00:42  1101885
>>1101882
Есть на английском языке http://www.r-5.org/books/computers/all/ книги Pragmatic Programmers.
Освящать нечего, вакансий в этой стране — с гулькин хер.
Аноним 03/12/17 Вск 01:07:34  1101889
>>1101885
thx
у нас сейчас жуткий дефицит на рельсовиков (внезапно оказалось) и именно на бэкенд
вот думаю вкатится
Аноним 04/12/17 Пнд 18:32:27  1102870
.gif (2983Кб, 257x388)
Рельсаны, нужно изящное решение следующей задачи. Изящное, — скажем, гем небольшой или встроенный, может, какой-то метод, в общем, чтобы кодовую базу это не нагрузило.

Имеется строка. Она может содержать как русские, так и английские символы. Мне нужно, чтобы решение сделало так, что английские буквы, имеющие такой же аналог на русском заменятся русскими буквами.

Другими словами, буквы, допустим, «o», «a», «c», «e», «p» из английского алфавита заменятся, а буквы «q», «b», «v», «h» останутся нетронутыми. Был опыт у кого? Да-да, еще раз, мне нужно обернутое в гем решение, я знаю про ascii таблицу или как она там называется, по которой я мог бы каждый символ проверить.

Заранее спасибо, анон! И да, если то, что мне нужно, гуглится, то скажите каким именно запросом.
Аноним 04/12/17 Пнд 19:55:51  1102946
>>1102870
Есть на пыхапэ, https://pastebin.com/xGanVr8c
Аноним 04/12/17 Пнд 20:05:28  1102954
>>1102946
Транслит полностью и в рельсах есть, а мне бы только отдельные буквы. И да, если помимо английского будут и другие локали, то вообще заебись.
Аноним 04/12/17 Пнд 20:53:13  1102999
>>1029529 (OP)
Хотел писать на руби, слышал много хвалебных отзывов. Потом понял что в руби все какое то неправильное. ФВП неправильные, в JS с этим лучше. Объекты первого класса какие то неправильные, чтобы передавать их в функции нужны преобразования. Короче разочарование. Почему так, зачем все это?
Аноним 04/12/17 Пнд 21:01:27  1103012
>>1102999
>Почему так, зачем все это?
Таков автор языка, Мацушита. Он даже высказывался против функций внутри других функций, вот как-то так:
https://stackoverflow.com/questions/4864191/
Аноним 04/12/17 Пнд 21:36:10  1103059
.jpg (42Кб, 604x427)
Собираю компьютер, встал выбор между i7 и рязанями. Для погромирования что будет лучше (у меня рубимайн, браузеры, плеер, GUI для гита и просмотра бд плюс какая-нибудь компиляция изредка)?

Склоняюсь к рязани, как более дешевому варианту, но боюсь прогадать, ведь встройки в ней нет, как и видеокарты у меня, плюс не знаю, нужен ли для рубей/рельс/программирования синглкор перформанс.

Что скажете вообще? На тредриппер и i9 бюджета нет.
Аноним 04/12/17 Пнд 21:50:24  1103084
>>1102999
>Почему так, зачем все это?

Пробовал одевать трусы через голову. Оказалось неудобно. Разочаровался в трусах, тряпка оказалась удобнее. Почему так, зачем вообще нужны трусы?
Аноним 04/12/17 Пнд 23:43:38  1103203
analnaya-probka[...].jpg (17Кб, 400x350)
Господа рубисты. Волею судьбы мне нужно познать руби, и вот читаю я эту вашу книгу из шапки programming ruby the pragmatic programmer guide и в разделе Virtual Attributes мне попадается следующий код https://ideone.com/nXEDQn

Так вот вопрос. Каким образом в этом коде

def price_in_cents
  Integer price*100+0.5
end


переменная price ссылается на инстансную переменную @price? Я так понимаю это из-за attr_accessor? но ведь если присвоить в каком-то методе, например, price = 333, это не изменит инстансную переменную @price. WTF?
Аноним 04/12/17 Пнд 23:50:59  1103205
>>1103203
либо же это связано с какой-нибудь хитрой реализацией области видимости?
Аноним 05/12/17 Втр 00:28:06  1103222
f0c239e3e16c50f[...].jpg (85Кб, 800x800)
>>1103205
>>1103203
я понял почему! всем спасибо
Аноним 05/12/17 Втр 00:33:39  1103223
>>1103222

Пожалуйста, обращайся ещё.
Аноним 05/12/17 Втр 04:13:55  1103264
>>1103012
Пичалька.
Аноним 06/12/17 Срд 00:37:42  1103696
>>1103203
>>1103205
attr_accesor - объявляет геттер и сеттер для одноименной @переменной. Есть так же attr_reader и attr_writer для геттера и сеттера по отдельности.
Одна из бесячих фич рубей, потому что куча долбоебов считает долгом объявить каждой переменной аттр_ридер, им кто-то сказал так делать.
Аноним 06/12/17 Срд 12:52:33  1103881
>>1103696
Тебе жалко штоле?
Аноним 06/12/17 Срд 13:34:55  1103907
>>1103696

Именно так и делаю, когда не наследую класс от структуры trollface.
Аноним 06/12/17 Срд 18:29:40  1104084
>>1103696
И хорошо, что сказал, так никакой другой долбоёб например, ты не сможет где-нибудь посередине эту хуету перезаписать.
Аноним 06/12/17 Срд 18:50:28  1104093
>>1104084

Таки сможет, интерпретатору похуй на рефлексию.

Кроме обмазывания паттернами, аргумент за аксессоры: рубимайн (через жопу) умеет в аннотацию типов, ну и ещё - доки - это типа круто.
Аноним 06/12/17 Срд 18:57:03  1104098
>>1104093
Как он сможет? Я имею в виду что-то типа такого:

class A

attr_reader :do_not_write

def initialize
@do_not_write = true
end

def nasty_thing
do_not_write = false # => NoMethodError
@do_not_write = 'fucked up'
end

end
Аноним 06/12/17 Срд 18:59:38  1104102
>>1104098
А не, NoMethodError не будет, но хотя бы это будет локальная переменная, а не перезапись.
Аноним 06/12/17 Срд 19:19:30  1104120
>>1104102

В твоем случае NoMethodError будет когда ты попробуешь написать «self.do_not_write = false», чтобы этот код сработал нужно поменять attr_reader на attr_accessor. Если говорить вообще, то перезапись в руби возможно для всего и вся, за исключением констант. На них ругается варнингами.
Аноним 06/12/17 Срд 19:29:38  1104127
>>1104120
Так в этом и суть. Где-нибудь в дебрях или по тупости можно легко перезаписать собачью инстанс-переменную, а через attr_reader - никак.
Аноним 06/12/17 Срд 19:41:57  1104138
>>1104127

На этот счет есть довольно простое правило: инициализируй переменные либо через метод инстанса #initialize, либо лениво, в одноименном методе.
Аноним 06/12/17 Срд 20:02:14  1104157
>>1104138
Правило есть, но не все о нем знают и помнят, когда вокруг пестрят собаки.
Аноним 06/12/17 Срд 21:03:04  1104213
test
Аноним 06/12/17 Срд 21:07:12  1104218
Типа перекат:

https://2ch.hk/pr/res/1104216.html
https://2ch.hk/pr/res/1104216.html
https://2ch.hk/pr/res/1104216.html
https://2ch.hk/pr/res/1104216.html
Аноним 07/12/17 Чтв 00:46:13  1104320
>>1104218
Да кому он нахуй нужен.
Аноним 08/12/17 Птн 22:01:01  1105194
codeschool846.mp4 (36151Кб, 1280x720, 00:04:57)

[Назад][Обновить тред][Вверх][Каталог] [Реквест разбана] [Подписаться на тред] [ ] 507 | 53 | 195
Назад Вверх Каталог Обновить

Топ тредов
Избранное