1. C чего мне начать, чтобы стать рубистом? Отличным началом будет Eloquent Ruby или The Well Grounded Rubyist, а еще - Programming Ruby (The Pragmatic Programmers Guide)
Затем читаем Metaprogramming Ruby. На протяжении чтения вы должны писать код, конечно же. Чтобы не задавать глупых вопросов уровня дибилоида, который не нашёл доки > http://ruby-doc.org/
2. Какой gem посмотреть, чтобы понять, как писать код? Лучше всего посмотреть небольшие gem'ы вроде cancan, devise, camping.
3. Есть ли GUI для руби? Да. Есть обвязки к Qt, GTK, wxWidgets, Shoes, fxruby (одобренный).
4. Можно ли писать на руби мобильное ПО? Да. Для iOS есть RubyMotion промышленного качества, для Android - весьма тормозной(ну это пока) ruboto. Для WinPhone традиционно ничего нет, но его ценителям не привыкать.
9. Я не могу в английский, что делать, анон? Идти учить английский, без него тут делать нечего.
10. Есть ли у руби русское коммьюнити? Нет. Вернее есть, но оно протухло и там полно людей у которых чсв высоко. Яркий пример - [email protected]
11. Какие гемы стоит знать? capybara, rack, rspec, devise, cancan, simple_form, solr, sinatra, тысячи их.
12. Где можно задать глупые и неочень вопросы? - здесь - stackoverflow.com - в рассылке rails-talk - оф. форум рубей http://www.ruby-forum.com
13. Как фокнуть\сделать фичу\исправить баг, сложно ли это? Нет, не сложно. На rubyflow появляется много новостей с реализацией новой библиотеки, вы можете сделать тесты, фичу для него, старые либы также обрастают багами, улучшайте их! пишите код.
14. В чём писать код? Atom, Sublime Text, TextMate, Vim, GNU Emacs. Для особо упоротых энтерпрайз-ребят есть rubymine, плагины к эклипс и нетбинс.
Хелпуйте, гуру Есть валидный жсон: http://pastebin.com/YLwsBCn7 Есть код на руби [code] data = JSON.parse (File.read(FILE_NAME)) games = data["data"].map { |game| Game.new(game['title'], game['platform'], game['status'], game['stars'], game['comment']) } [/code] который валится с Exception caught ! 757: unexpected token at 'я╗┐{ Неужели дефолтовый гем такое говно? Руби 2.1.5, винда
Анондрики, как это можно отрефакторить? Как лучше тестировать? Потому что у меня тесты получаются максимум не dry и громоздкие. Вот, посмейтесь надо мной - http://pastebin.com/q6ALECdL
>>454353 Во-первых перестань использовать ab когда есть wrk. Во-вторых какой смысл считать Get-ы, которые нативно кэшируются по всем фронтам (SQL, Controller, Views)?
И ты даже не дал описание контроллера на руте, там может быть просто рендер который никаких ресурсов не жрёт.
Missing `secret_token` and `secret_key_base` for 'production' environment, set these values in `config/secrets.yml` С сегодняшнего дня постоянно эта ошибка при запуске в production. Ответы с гугла не помогли, даже когда создаю новый проект и сразу запускаю в продакшн среде, та же ошибка лезет. Что за хуита и как лечить?
>>454775 А ты production не запускай, а деплой сразу development. Ну или возьми мой secrets.yml: production: secret_key_base: <%= ENV["SECRET_KEY_BASE"] %>
>>454749 >И ты даже не дал описание контроллера на руте, там может быть просто рендер который никаких ресурсов не жрёт. Хехе, без кэширования рендер в рельсах жрёт почти 50% затрачиваемого времени. Это можно решить, если очень надо, наследуя контроллер напрямую от ActionController::Metal и теряя по пути некоторые фичи, которые придется подключать отдельно.
>>454905 Рендер очень медленная часть, особенно с "хелперами" типа контент_тэг и паршилами в цикле, запросто переплюнет более менее оптимизированный запрос по времени.
>>454937 если ты про всякие непрямые его вариации типа интерфейсов с реализациями, трейтов и миксинов то оно есть и в рубях и даже в рнр и жс. А так - только в крестах и эфеле.
>>454923 Двачую этого. Нахуй оно вообще надо? Или это сейчас мода такая, брать всякую обссаную брокен бай дизайн погреблённую парашу и форсить ревайвл?
Множественное наследование = быдлокодинг, краткий список тезисов: - семантическая неопределенность, - проблема ромбовидного наследования, - порядок наследования изменяет семантику класса.
Олсо, кому вообще нужно наследование, когда в 98% случаев композиция предпочтительнее.
>>454989 Кто с виртуальными базовыми классами в крестах мочи не наглотался, тот множественного наследования не понял.
>>455001 Есть такая порода людей, которая считает, что каждый, кто на что-то претендует, просто обязан хлебнуть говна. Например, "настоящий мужчина" обязан сходить в армию или отсидеть в тюрьме, ведь что тюрьма, что армия - школа жизни; "настоящий программист" обязан писать на крестах, ПХП или тому подобном, ведь сами они на нём писали, а кто не хапнул этого говна, тот и не программист вовсе. С одной стороны понять их можно - механизм примерно такой же как у дедовщины в уже упомянутой армии или прописки на малолетке ("меня опускали, теперь я буду опускать" - ну просто обучение и сделование паттерну, через пиздюли навязанному авторитетом, детская психика так устроена), с другой - сами они со временем так нихуя и не понимают, и любые попытки объяснить им, что все эти боль и унижения, через которые они прошли, в общем-то лишние, встречают у них агрессию и отрицание
Анон, что за хуйня? Ввод и вывод кириллицы на прыщах происходит без проблем, как только запускаешь на Виндовс(7, 8, ХР) - каракули. #encodin/coding: utf-8 не спасает, смена кодировки в редакторе либо засерает весь код либо не помогает. Как бороться с этой хренью?
Сап, пилю авторизацию в вк через oauth 2, у меня есть следующий код для получения code: > params = { ... } > url = URI.parse('https://oauth.vk.com/authorize?' + params.to_query)
Как мне теперь средиректить юзера на этот юрл и потом получить гет запрос от вк, в котором будет code?
Есть какие-нибудь полезные фреймворки/хуеворки жаваскриптовые для использования с рельсами?
Был план пилить приложение с Ангуляром (клиент - полностью ангуляр), потом решили забить хуй на Ангуляр и делать всё рельсовыми вьюхами, так как приложение довольно статичное и почти как по учебнику. Правда в паре страниц есть достаточно дел для жаваскрипта и я вот думаю - хуячить всё голой жквери лапшой, или использовать что-нибудь? Например, вьюхи Backbone. Тупо для организации кода, чтобы это всё со временем не превратилось в дикую кашу.
Посоны, а как настроить роуты правильно? Мне надо сделать чтобы адресная строка была /posts/top но в контроллер передавался параметр top: true. Вот так /posts/?top=true. Типа хочу чтобы адресная строка была красивая. Вот как я пробовал:
match '/posts/top' => 'posts#index', constraints: {top: true}, via: :get
Друзья, во всех вакансиях на РоР кодеров требуют примеры кода, а лучше проекты на гитхабе. Какой проект можно запилить, чтобы и скилл повысить, и чтобы работодатель заинтересовался? Сам я стремящийся джуниор, код, который я пишу на текущей работе хранится в приватных репах. Да и показывать там особо нечего.
>>456226 блог форум форум с картинками анонимный форум с картинками анонимный форум с картинками и анальной модерацией сервис шаринга картинок с лойсами и зашкварами
>>456239 ну напиши интерпретатор ruby. скорее всего тебе руби нужен для веб поделок. тогда кроме ruby нужно еще много всего знать и если так уж хочешь доказать кодом, то пиши: ruby http server mvc framework orm rdbms ... через пару лет приходи за добавкой.
Сколько просить джуниором на удалёнке? Скоро буду искать работу, но чувствую, что даже забесплатно меня никто не возьмёт. Сколько просить? Только серьёзно, аноны, а то я хз ситуацию на рынке - вроде кризис, но ведь кто-то же за доллары работает, так что мб побольше надо просить. В моём городе нет рельсовакансий, есть только пхп и фронтенд (тоже вариант для меня), но я хочу быть руби разработчиком.
Вообще-то я уже жалею, что начал учить руби, надо было с пхп начинать. Сейчас решил углубиться в js - ангуляр, реакт, качественная вёрстка. Так-то норм, но я уже подзаебался забесплатно работать, надо на работу устроиться.
>>456258 По рубям удаленно джуниор? Не найдешь. На счет пхп и фронт енда тоже думаю, но лучше все таки жс чем пхп, хотя оба говно мимо 6 месяцев активного поиска и нихуя
>>456258 Дрочи js лучше. Но руби для api неплохая штука, так что руби тоже подрачивай. Складывается впечатление, что сейчас джуны нинужны. Всем нужны мидлы/сеньоры/ниндзя блять.
>>456263 >Неужели всё так плохо? У тебя законченные проекты есть? Да, хуево, всем нужно 2+ коммерческого опыта, то есть не хуй который для себя чето пилил, свои проекты есть и не один, все сука тестами покрыты и вылизаны, я вот думаю может нахуй джунские позиции искать, все равно их одна на тыщу, и та раз в пол года.
>>456260 Тоже так думаю. Но всё равно - в городе только три вакансии для фроненда, остальные для верстал или пхп. В двух фронтенд-вакансиях работают с пхп, в одной с джавой, так что не избежать мне пхп. Выбрал yii. На собеседовании буду выглядеть долбоёбом из-за того что сразу пхп не выучил, лол.
>>456267 >Выбрал yii. На собеседовании буду выглядеть долбоёбом из-за того что сразу пхп не выучил, лол. Я пытался поглядеть, что оно такое, охуел, после руби на пхп вообще не пишется, через силу сука, я уже не знаю что делать.
>>456265 Я доделаю свой проект и буду вообще всем письма слать. Я видел несколько джуновакансий в других городах, но не в моём. Было бы круто, если бы меня взяли на удалёнку на 1-2 месяца, а с зарплаты я бы переехал в город компании. У меня из имущество только комп да ноутбук, так что я мобильный. Буду надеяться на их добрую волю.
Ещё буду слать в американские компании. Я могу говорит на английском, хоть и хуёво, но ведь я и хочу всего 40к рублей, а для них это в старбакс месяц не ходить. Может быть меня возьмут.
Если нигде брать не будут, то вкачусь джуном в пхп-контрору. Только мне туда совсем не хочется, потому что в половине из них используют всякие битриксы и CMS.
>>456271 А потому что когда не на джуна пиздишь, сразу спрашивают про опыт, и тут выясняется что нихуя я нигде не работал, а какой же мидл хуидл, который из дому не выходит? Нет того самого продакшен опыта, а только манямирок свой, хоть и уже совсем не лоу лвльный. >>456272 Желаю тебе удачи анончик, и не дай бог на пхп писать, или еще чего хуже 1с вордпресс жумла сайт визитка
>>456270 Да-да, я охуел от роутера в url. Да и сам пхп стрёмный - с локализацией вообще пушка. Но всё же это не так плохо как я ожидал, буду по вечерам подтягивать руби и джс и готовиться к переезду в ДС. Поэтому хочу на фронтенд позицию устроиться - так хоть опыт будет полезен в руби и рельсах, а пхп только на дне и полезен.
>>456272 >Ещё буду слать в американские компании. Я могу говорит на английском, хоть и хуёво, но ведь я и хочу всего 40к рублей, а для них это в старбакс месяц не ходить. Может быть меня возьмут. Заведомо провальная идея. Для них деньги - пыль. Им важно получить специалиста, который сможет выполнять нужную им работу. Цена этого специалиста - это расходная часть этой работы, которая далее формирует общую прибыльность. Исходя из твоей логики - им не важна квалификация специалиста, а важна минимальная цифра в графе ежемесячных расходов.
Time is money это не просто красное словцо. Это горькая реальность.
>>456226 >Какой проект можно запилить, чтобы и скилл повысить, и чтобы работодатель заинтересовался? Ты спрашиваешь у других примеры проблем? Хочешь сказать что задумавшись и оглядевшись ты не находишь потенциальных проблем для решения вокруг себя?
Посмотри как давным давно стартанул wowprogress и подумай что ты бы смог решить в формате "weekend coding project".
бля, это просто пиздец. чуваки, я реально читаю и просто охуеваю с вас.
Я сам занимаюсь фронтендом, с нуля, без вышки. учился говнодить на жсе 2 месяца, взяли в мухосранске за 20к, работал там около года, в конце было 40к.
теперь переехал в ДС-2 на ~80к, всё збс. я понимаю, что это фронтенд, много хайпа сейчас в нём, но бля, переезжайте в свой обл. центр или ДС-1/2, откликайтесь на разные вакансии, ну я хуй просто знает.
А то пиздец, какие полгода "учиться"? Вы и так уже тестами код покрываете, хули ещё надо. Ну ок, пройдите на курсере курс по алгоритмам, реально помогает (отвечаю).
>>456456 Как там в офисе вообще? Скок часов работаешь, есть ли переработки, делаете ли код ревью, много ли стоит снимать хату, есть ли какие-то возможности для практики английцкого?
>>456456 Оба поста мои. Я тоже во фронтенд немного умею - я написал маленькое приложение на бекбоне для работы с записками (notes) и прочитал книгу про todo лист. Покрыл всё это тестами на jasmine. Короче, я сейчас дочитаю доки по yii2, дополирую своё приложение на рельсах и буду искать работу. А алгоритмы я хз, я знаю несколько алгоритмов сортировки и поиска, ну и О-нотацию.
>>456474 оче норм. работаю 8 часов, график плавающий +-2 часа, переработок нет (по крайней мере пока), код ревью да. хата 25к, англ хз, я его и так знаю.
>>456487 вообще, во всех более-менее серьёзных компаниях, что я собеседовался, всем было похуй на бекбоны, ангуляры и прочее. все спрашивали чистый жс (написать там, чтобы f(1)(2)(3) === 6, количество скобок любое), или нативным промисам полифилл написать, или алгоритм обхода DOM'a полный.
В алгоритмах главное уметь оценивать свой код и как его оптимизировать в терминах О-нотации. Ну и структуры данных очень важно (хотя бы граф, хеш и массив).
Рубисты, а есть ли какой нибудь гем, который позволял бы юзерам редактировать свои посты в html или markup? Что они могли красиво оформлять свои записи для бложика.
Куда посты подевались? Спрошу еще раз, как потренираваться с капистрано халявно? Подеплоить куда нибудь, амазон мою кредитку отказывается принимать, хотя там и есть деньги. Выручай, знающий анон
>>454166 каково это быть рубистом? няшно или нет? можно ли найти работу в мухосрани? что кодите? только рельсы? а есть кто-нибудь, кто что-то кроме веба пишет? а под веб что пишете? интересно работать
>>456795 >на руби пишут прототипы >на с пишут калькуляторы
Где вас таких рожают?
>каково это быть рубистом? Так же как и java-dev-ом. Никакой разницы >можно ли найти работу в мухосрани? Работу можно найти где угодно, если ты её выполняешь лучше остальных >что кодите? Код >только рельсы? Нет >а есть кто-нибудь, кто что-то кроме веба пишет? Есть >а под веб что пишете? Код
>>456951 прекращай с аналогиями, особенно когда не к месту и придумать аналогию не получается. прототип, это когда нужно сделать быстро, а позже править, оптимизировать. на руби быстрее получается. но у палки есть и другой конец. если ты будешь писать аннотации к методам, напишешь type checker, то что останется от ruby?
Подскажите, как заставить руби открывать dbf-файлы с последующем редактированием, распечатыванием и сохранением в тот же dbf. Приложение должно открывать как на Шинде, так и на прыщах Какие гемы использовать? Какие GUI лучше всего для винды и для линуха?
>>457005 Ты имбецил даже не понял на что я делал акцент. То что ты ляпнул делается на рельсах. Руби как язык к этому отношения не имеет. На нём можно делать то же что можно делать на остальных языках. Но у таких ограниченных типа тебя - руби и есть рельсы.
>>455134 сейм щит, ничего не помогает, кроме смены кодировки в CMD, но если компилить в приложение -- все сбивает по новой. Под прыщами и макосью все хорошо работает. Ну, винда говно же.
>>457278 Puma. Использую в продакшене на разных проектах уже больше 2 лет, ни разу не было проблем, да и тот же heroku его сделал дефолтным сервером недавно.
>>457384 >FXRuby is a library for developing powerful and sophisticated cross-platform graphical user interfaces (GUIs) Причём тут FXRuby? Сшиваешь в коде своего приложения.
Поясните пожалуйста за ООП руби @ - это префикс инстанс-переменной? self - это что и когда используется? $ - префикс глобальной переменной? Как сделать статический метод/переменную (одинаковую для всех инстансов класса)?
>>457625 >@ - это префикс инстанс-переменной? Да. >self - это что и когда используется? В руби всё является объектом, а self - это ссылка на объект, на котором ты вызываешь метод. Например внутри метода в классе это ссылка на сам класс. По-моему self в руби - это как $this в пхп. В руби нет эквивалента self из пхп, потому что в руби все классы являются объектами. >$ - префикс глобальной переменной? Да. >Как сделать статический метод/переменную (одинаковую для всех инстансов класса)? Статические методы с помощью self. Статические переменные делаются с помощью статического метода и @@class_variable. http://www.jimmycuadra.com/posts/self-in-ruby http://stackoverflow.com/questions/2416372/static-variables-in-ruby
>>457468 Это ясно, но мне надо в окне эту поеботу вывести.У меня с этим основная проблема + я у меня сомнения на счет гема dbf. Я не понимаю как он работает, так как мне рабочий скрипт не удается написать: он должен выводить таблицы или же прописывать внутри программы какие ячейки надо редактировать.
>>456258 Я поучив руби пол года(написал курсовую на руби) начал искать работу, ответило 2 канторы, которые обе потом послали нахуй, но нашелся чел, который взял меня на подработку как помошника за 5 баксов в час, 10-15 часов в неделю(живу в Минске, мне как студенту было норм). Пофрилансив так пол года спокойно взяли джуниором в офис на 60 баксов. Прошло 2 года, сейчас фриланшу через одеск за 30 бачей в час, в хуй не дую(в среднем 4к в месяц, для Минска это заебись). Но всеравно советую хоть год поработать в офисе, так как опыта много набираешься.
Посаны, пишу свою борду, постам прилепил дополнительную колонку, которая содержит ссылку на видео с ютуба. Как написать валидацию чтобы можно было только ютубовские ссылки в форму писать?
Рельсаны, а как получить список всех записей подколлекции. Пример: есть кварталБ в нем находятся несколько домов, в которых живут люди. Вот как получить список всех людей живущих в квартале? Пробовал вот так:
district.houses.pluck :peoples
Но так работает только на прямых записях, а не на ассоциациях. Наверняка можно все собрать тупо перебором, но это же не рейлс-вей.
2. объявить 3-way-join связь. В District пишешь has_many :peoples, through: :houses А потом тупо district.peoples - но тут надо аккуратно. могут дублироваться записи если в разных домах живут одни и те же люди. Тогда добавь .uniq
>>457683 FXTable и использую, почти все создано. А вот про createItem не понял: под элементом ты имеешь в виду пикси и символу или что-то другое? Я все таки не понимаю как гем дбф с элементом таблицы. Я недавно начал прогать, поэтому дохуя дебил в этой теме, легче понять могу только глядя на экземпляр кода, но чую хуй там было.
Блять, с этим вашем постргрес одна головная боль, сука. Но уже настроил, вроде. Пиздец, эти базы данных очень сложная тема, сначала sql, ну это ладно, не сложно, а вот админить бд, всякие гран алл превелегиес то юзер хуюзер, ебаный слон пострегса!
Ну что же, рубисты, пришло время попыток устроиться на работу после пары месяцев задротства (с нуля). Вроде нашел несколько контор, где не требуют опыт, да и вообще не шибко требуют.
Что я знаю или о чем имею хоть какое-то представление: Ruby (читал книги, решал задачи, смотрел подкасты, codecademy, выполнил одно тестовое задание для одной конторы куда не прошел); Ruby on Rails (читал книги, codeschool, запилил несколько своих сайтиков в т.ч. имиджборду, читаю русреилс); HTML/CSS + Bootstrap (онлайн курсы + свои сайты); Git (читал, заливал код на гитхаб); JavaScript + JQuery (самое слабое место, только начал разбираться, прикрутил пару свистоперделок на свои проекты).
- На что больше обратить внимание, что доучить еще? - Реквестирую шаблоны написания резюме ПОГРОМИСТА, у которого за душою ничего. - Реквестирую подводные камни на собеседованиях и вообще все подводные камни.
Если я не устороюсь на работу в ближайший месяц - сойду с ума и сдохну от голода, так что прошу советов мудрых.
Как запустить ActionMailer из ActiveJob? Суть токова. ActiveJob отрабатывает большую задачу и в конце должен отправить e-mail через ActionMailer. На деле задачу отрабатывает, проверено, но письмо не отправляет. Если его запустить отправку письма ActionMailer из контроллера, а не из задачи ActiveJob, то письмо отправляется. В чем мистика? Не пойму. Рельсы 4.2
>>458215 Ну пиздец. Теперь у меня джва джоба, один большой, а второй с одной строчкой ShitMailer.send_shit(params).deliver_now Второй вызываю из первого - письмо отправляется. Какого хуя, спрашивается, эта ссаная строчка не хотела работать в первом большом джобе?
>>458247 Чето хуита. ЭктивЖоп может мозги ебет, ни разу им не пользовался. Могу посоветовать заменить delayed_job на sidekiq и просто напрямую использовать sidekiq_mailer, не заморачиваясь с прослойками - одним джобом всё отправляется.
>>458262 Первый раз большой джоб после всех своих грязных дел в конце вызывал строчку ShitMailer.send_shit... - не работало. Даже в консоль и логи ничего не писало. Но эта же строчка, прописанная в любом экшне контроллера, работала. >>458275 У меня и так sidekiq. Алсо, как узнать состояние джоба - завершен/незавершен? Сейчас я в конце джоба пишу в базу типа mail_sent = true. Но жопкой чую это не рубишно.
Братцы рубисты, ай нид хелп. Нужно написать прогу реализующую структуру IP-адреса. Без интерфейса и прочей хуйни, просто голимый код. Сроки до завтрашнего утра, с меня сотни тонн нефти.
>>458683 Вот тебе абстрактнотрансляторная (ссылку лень смотреть) экспертиза.
Зачастую, желание писать на одном языке как на другом приводит необходимости ловить глюки на одном языке, на другом и добавочно ловить глюки/унэкспектед бехевиоры транслятора.
>>458683 Нет смысла, имо. Т.к. джс асинхронен, руби не оч подходит для такого кода. Сколько бугурта было из-за машины событий, кек. Лучше Elm попробуй.
Рельсаны, я >>457915 опять вернулся с похожим вопросом. Делаю ленту из постов польхователей, использую гем acts_as_follower. Хочу получить список постов пользователей, на которых подписан, но получить не в массиве, а в актив рекорд, чтобы потом рендерить партиалы для них. Вот какой у меня получился монструозный код:
def feed [email protected]_following.map(& :id) #all_following возвращает массив, а мне надо отношение feeded_user_posts_ids=User.where(id:users_ids).joins(:user_posts).pluck 'user_posts.id' @feeded_user_posts=UserPost.where id: feeded_user_posts_ids end
Может есть какое нибудь стандартное решение для этого?
>>454166 Анон, пишет тебе школьник 16 лет. Я только начал изучать программирование, как вы поняли выбрал для себя Ruby, нужна помощь. Собственно скачал я ваш ruby 2.2.1 , плохо понял как там работать, например скомпилировать код. Надеюсь правильно написал. > 14. В чём писать код? Atom Анон, я не совсем уж даун. Но как можешь объяснить по пунктам для школяра, как и что делать, что бы собственно там этот код писать. Даже что скачивать, помимо Atom. Раньше изучал C++ и работал на Codeblock, было всё легко. Бросил из за проблем в личной жизни. Было это где-то лет в 14. Да и плохо понимал принципы и прочее. Так вот я изучаю щяс Ruby на codecademy. Пока битых 8%. Но у меня не всегда будет доступ в интернет, поэтому я скачал книг и решил установить Ruby на комп. Собственно если ты мне всё объяснишь буду очень благодарен, хотелось бы что бы работал была как в codeblock. Если такое не возможно, то прошу разъяснить как тогда делать. Я немного приболел, очень сильно извиняюсь, за ту всю хуйню, что вам пришлось прочитать.
>>459076 гугли atom ruby чтобы найти инфу как настроить атом для работы с руби. запустить код можно в коммандной строке ruby your_code.rb т.е. у тебя открыт редактор (atom) в котором ты пишешь код, потом сохраняешь файл, переключаешься на консольку и набираешь ruby your_code.rb (или нажимаешь стрелочку вверх - это последняя команда) и нажимаешь энтер
>>459084 Погуглил, только 1 ссылка на русском. Я не плохо знаю английский, но там написано "сложно". Мог бы ты по пунктам объяснить. Я может понял как, а может и нет. Боюсь всё поломать. Кстати интернет видимо закончится часов через 7-8.
>>459085 поставь вместо атома sublime text там вроде бы просто и читай по-английски, как ты по-другому научишься-то? вообще-то базовая подсветка синтаксиса для руби в таких редакторах должна быть искаробки,
Конечно для прототипа и твое решение сойдет. Разберем по порядку тобою написанное))
>@user.all_following.map(& :id) #all_following возвращает массив, а мне надо отношение
ну так сделай чтоб оно отношение возвращало. Что это за метод у тебя? #all_following? скоуп? Чтобы возвращалось отношение, не ставь методы-триггеры АктивРекорд, которые запускают sql запрос. Наприер, даже если #all_following возвращает отношение, ты все равно превращаешь его в массив, вызывая .map(&:id)
Сап, у меня в приложении есть авторизация в вк, но вк высылает аксесс_токен только на тот домен, который указан в настройках приложения. Как мне тестить приложение на локалхосте?
Сейчас пытаюсь заюзать ngrok, но чет вк возвращает > redirect_uri has wrong domain В настройках приложения в вк поставил адрес сайта http://<...>.ngrok.com/ и домен ngrok.com
#Кол-во колонок и строк table.visibleRows = 100500 #Далее идут прочие настройки, их много поэтому не стал все постить def create super show(PLACEMENT_SCREEN) end end
require "dbf" save = DBF::Table.new('1.dbf') save.each do |row| save.columns.each do |column| puts column.name puts row[column.name] end end)
>$('#company-form').html("<%= render 'company_form', company: @company %>") Эта штука рендерит парциал, но только в том случае, если в нём нет формы. Когда форма есть - ничего не происходит, хотя в логи пишется, что всё ок и код отрендерен. В чём может быть проблема?
>>459883 Вот я тупой! >$('#company-form').html("<%= j render 'company_form', company: @company %>") Надо было так. Хорошо, что написал вам, а то бы ещё 2 часа копался.
>>459887 А как надо? Как лучше? Плиз, анон, научи меня как лучше, я хочу быть умным и хорошим. Мне что, устанавливать какой-нибудь handlebars или mustache, или что вообще? Я временно тупой (насмотрелся слишком много порно, поел чипсов и почитал про хаскель немного), так что...бля, забыл что хотел сказать.
Привет ребята, что можно почитать если у меня хуёво с проектировкой архитектуры? И ещё вопрос, какой лучше жс фраймворк использовать в проекте по типу "личный кабинет для кустомеров"? Что проще, эффективней? Ангуляр не устарел?
>>460655 Зависит от того насколько еба фичи тебе нужны. Если особо не нужны, то возьми просто active_admin и допили jquery-лапшой в нужных местах. Если хочешь, что бы потом телочки текли при твоих рассказах о личном кабинете, то бери react.
>>460658 Если брать реакт, с ним реально проект такой за месяцок осилить с условием, что раньше с ним не имел дела? И как делают аккаунт админа? Просто добавляют через консольку? Или есть более лучший способ это сделать? Админа же не зарегать как обычного юзера.
>>460667 Ты бы расписал, что там в твоем кабинете должно быть. В целом, если ты нацелен использовать именно какой-нибудь фронтенд-фреймворк, то реакт всяко быстрее изучается потому что это не фреймворк, чем ангуляр. Первого админа создай из консоли и дай админам интерфейс для создания новых админов.
>>460683 >что там в твоем кабинете должно быть Менеджмент проектов клиента и чатик ещё не решил делать как чат или просто сделать отправку эмейлов с разработчиками этих проектов.
Вообще, хотелось бы разделить логику сервера и клиента, т.е. чтобы сервер только апи отдавал, но я не понимаю ещё как сделать чтобы левый питух "Петя" не смог без авторизации воспользоваться апи, может кто-нибудь пояснить про авторизацию? Как это лучше реализовывать? Как реализовано в крупных проектах?
Я собираюсь пользоваться DB Manager'ом Sequel Pro. Выходит, что миграции мне не будут нужны или как? Насколько я понял, в редакторе баз данных можно изменять всю структуру и содержимое. Просто создавать модели и удалять папку с миграциями, а затем добавлять таблицы с именами моделей во множественном числе через прогу?
Я еще полный нуб, но учусь. Раньше не доводилось работать с БД.
>>456456 Работаю в Мухосрани за 11к, испытательный срок типа, 3 месяца, вся хуйня. Дальше тимлид обещал 20к.
Хуй знает напоминать ему об этом или ждать когда зп выдаст. Работаю с января.
Алсо, пишем в конторе на пхп/жс/нод.жс.
Хочу прокачать акк на индуске и работать за 5$ в час на пхп/руби/питон/жс.
Алсо чего я не пойму так это умников сначала читающих документацию итд итп. Что за бред? Берешь инструмент и хуячишь, будь то язык/либа/фреймворк. Пальцы не оторвет, не покалечит же. Не выходит - имеет смысл почитать доки.
Кодить ведь можно на чем угодно и 95% инструментов позволяют начать кодить в течении часа
>>460893 >я не пойму так это умников сначала читающих документацию итд итп > Берешь инструмент и хуячишь, будь то язык/либа/фреймворк. >Алсо, пишем в конторе на пхп/жс/нод.жс. >Кодить ведь можно на чем угодно и 95% инструментов позволяют начать кодить в течении часа
Иногда создаётся впечатление что пхп-макаки получают свой набор знаний и подход к делу с рождения.
>>460869 Рельсы не будут знать о структуре твоей БД, т.к. во время миграции обновляется schema.rb. Ты не сможешь воссоздать базу с нуля из схемы или миграций (т.к. ни того ни другого нет), ты не сможешь удобно управлять моделями, все очень скоро начнет глючить и разобраться потом в таком бардаке ты не сможешь.
Раньше разбирались так: «посоны, я у себя обновил таблицу X и Y, скопируйте себе, я дамп на сервер залил». То есть неэффективно и тратя много времени на то что может делаться автоматически.
По твоей логике гит тоже не нужен, проще на дискетках измененные файлы переносить?
Потом ты легко можешь достать этот код через $script.text(), и выглядит семантичненько. А в будущем в HTML для этого вроде собираются добавить элемент template.
Сделал таблицу statistics. Как назвать AR-модель - statistic или statistics? Вроде бы слова разные, думаю что модель должна называться statistics, потому что это и единственное и множественное число. Пятерка-по-ингришу-в-вузе-кун
Вот везде пишут, раз ты новичок, участвуй в open source, мы хотим видеть твои пулл реквесты и тд. Как искать то? Я прошелся по гайдам, полазил на гитхабе, и что бы вы думали? Ну как новичок может работать над популярными гемами и фреймворками? Это тупой не мой уровень, эти люди уже с 2-3 годами опыта в руби. Какого хуя от меня требуют такого. Как вы находите не сложные опен сурс проекты, чтобы новичок смог что-то накодить туда?
>>461832 Лел. Такое же говно, только я C/C++. Ну, одному проекту лишние пробелы удалил readme страницу закинул. Пулл реквест приняли. Теперь я у мамки контрибьюетер!!!
>>461861 Обобщенные цифры по дням в виде: ИД СУЩНОСТИ, ДАТА, КОЛ-ВО. От вида сущности зависит то, количество чего записано. Например если бухгалтерия, то количество выставленных в эту дату счетов, если журнал доступа, то количество записей, внесенных в него в этот день итд.
>>461882 Да ладно, главное начать. Но вообще я не могу найти проект, в котором действительно можно поучаствовать. Везде заливают такие огромные проекты, что хуй поймешь, как его собрать у себя на пеке, не то что уж дописывать там что-то.
Двощ, стоит ли читать книги из оп поста? Дадут ли они мне что-то большее чем синтаксис? Я тащем-то могу написать какую-нибудь маленькую хуиту на рубях. Может мне чего по CS почитать? А то я заебал так, вроде бы знаю как делается какая-нибудь штука, но сам без гугла ничего написать не могу и это ко всем языкам так, чому я дебил.
>>461885 Ну хуй знает. Руби суть гемы. Когда долго пользуешься гемом, то хочется что-то в нем поменять. Идешь в гитхаб и меняешь. Но я ленивое хуйло ленюсь разбираться в структуре гемов и даже писать тесты для своих приложений
Что на русском почитать можно? Может лучше почитать ООП, чем лезть сначала в руби? Я, конечно, попробовал почитать книжку на английском, автор писал замечательно и сухо, но я из-за ограниченности много не смог понять.
>>462010 >Руби С. и др. - Rails 4. Гибкая разработка веб-приложений Надеюсь написано нормально, а не так, как я бугуртил с книги, где было написано ебанутым языком и везде слово "сущности"
>>462030 Блядь, в английских книгах не используют таких универсальных понятий и все у них заебись, правда из-за моего знания языка в 600 слов, читать почти невозможно.
>>462033 Так из-за ебанутого языка я почти ничего не могу понять, чтобы что-нибудь менять, надо что-нибудь понимать, я так книгу одного хуесоса-джависта переписывал, потому что писать настолько ебанутым языком - нельзя.
>>462036 С пониманием слов у меня все понятно, но вот о понимании слов, как часто вы задумывались что у вас с ним не все понятно, когда на самом деле с ним все вполне хорошо, но не хорошо? Вот такая мутотень.
>>462040 Похоже через 3 года я доучу английский и сам буду переводить всю эту херню за еду, потому что английский - важный язык для сущностей, сама сущность - понятие важное для английского языка и для программирования в частности, однако с сущностями не все так просто, когда на самом деле в них все совсем просто, даже опытные рубисты испытывают проблемы в сущностях, когда новички в джава учатся на сущностях и легко постигают их, так мы можем сделать вывод, что бейсик лучше паскаля. Вот такое можно часто встретить в книгах.
>>462037 И что там было? Objects или может models? Так это только от направленности книги зависит. Если про йоба-фреймворк от васяна, тогда конечно там могут быть эти слова. А если про проектирование, ООП, предметную область и т.д. - там будут нормальные человеческие сущности и экземпляры.
Не останавливайся, бро. Затерпишь годик за "еду", зато в 19 (из-за более высокой обучаемости молодняка) будут все шансы стать лидом и взрывать пуканы таким как я. Тяны, соответственно, будут течь от зарплаты и прочее... Превозмогай, 2k/месяц в 19 того стоят.
>>462366 Что можешь посоветовать 20лвл-ещёнеджун. По скиллам могу в вёрстку, рельсы, всякие гиты, вагранты, прыщи. Я не знаю где найти в моей мухосрани работу, кажется всем нужно только DRUPAL\WORDPRESS DEVLOPER 3Y EXP
>>462375 Со скиллами все нормально, вагрантом никогда не пользовался. На кривизну рук как влияет?
>Я не знаю где найти в моей мухосрани работу Съебывай из мухосрани, сам так делал, зависимость есть. Только запуш перед этим на гит проект посложнее блога. Дальше: - Выбираешь город - рассылаешь резюме на все подходящие вакансии - планируешь собеседования так, чтобы они пришлись на компактный промежуток времени - находишь в городе жильё посуточно, договариваешься о съеме на период собеседований - готовишься, молишься, едешь в выбранный город, обсираешься на первых собеседованиях, гуляешь по %метрополиснейм% в подливе - теряешь надежду, на отъебись ходишь на оставшиеся собеседования, заставляешь HRов по 3 раза бегать за сахаром, лимоном, и конфетами к чаю, угораешь над собеседующими - внезапно, 3 job offer'a
А дальше уже спрашивай у своих наезжавших родычей, как выжить понаехалу. Базарю, это не тяжело.
>>462393 Блядь, я ебанутый, хотел написать то же самое, почти слово в слово. Смотрел на твоий комментарий и полчаса думал, не я ли его написал. Я тоже омич.
Стоит использовать гем рейсл бест практикс? Он якобы ищет говнокод, вот у меня нашлось куча говна, и ссылка на объяснения, но там по ссылке 2010 год, это все равно актуально, и стоит отрефакторить как рекомендуют? Как быть?
>>464043 >Если книга по руби выпущена хотя бы годом раньше, то да. У меня есть небольшие сомнения на этот счет, потому что книга по самому языку от его создателя полезна, а она выпущена в 2008 году.
Хотя мне кажется что в любом случае эффективнее внимательно прочесть официальную документацию, а потом просто двачировать stackoverflow. А книжки можно полистать по диагонали, чтобы была хоть какая-то best practices база в голове, особенно если опыта погромирования в целом не много.
Скажите, пожалуйста, на пайтоне действительно only one way to do things, в то время как в руби всегда имеется несколько вариантов - касательно Django и Rails.
Может конечно я не в том треде спрашиваю, но все же: Какой js-фреймворк посоветуете в связке с рельсами для разработки одностраничных приложений? Сам смотрю в сторону Ember.
Есть задача асинхронно делать долгие вычисления и отдавать результат. Простой вариант это использовать sidekiq и воркеру писать результат в БД. А можно ли обойтись без БД? Скажем получать результат, предьявляя ID воркеру. Возможно это реализовано в resque или иной приблуде?
>>464581 1) erubius / slim попробуй 2) посмотри на время в production mode Алсо если сможешь улучшить результат каким либо образом кроме кеширования / перепиливания серверной части на json-based api + frontend js framework, отпишись
>>464871 Видимо проблема в том что ты документацию вообще не читал, прежде чем кукарекать. Если посмотришь файл development.rb, в режиме которого ты запускал свою "проверку" – обнаружишь достаточно причин для тормозов.
>>464908 А это и не обязательно. Есть гайды, в которых описаны основные концепции и внимательно прочесть их можно часа за полтора максимум, чтобы знать что такое миграции, окружения, ассесты, орм и всякие другие штуки, которые тебе, видимо, не нужны.
Есть три модели Company - has_and_belongs_to_many people Person - habtm company, job titles JobTitle - habtm people Я понял, что архитектура соснула, когда понадобилось написать "Director of something at Google" Но как сделать лучше?
Трудоустроенные рубисты, пояните за производительность. Фичу/фичи какого уровня вы успеваете реализовать за день? За неделю? За месяц? Для лучшего понимания, напишите свой опыт с Ruby и сложность проекта.
Сап, посоны. Пытаюсь совместить рельсы с ангуляром, но получил пока что только свой горящий пердак. Новое приложение, рельсы 4.2, ангуляр 1.3.15, ng-route. Всё идет хорошо, пока дело не доходит до роутинга, который я хочу делать на ангуляре, используя гем rails-angular-templates. Рельсовый роут: [code]root 'application#index'[/code] Ангуляр: [code] app.config(['$routeProvider', function($routeProvider) { $routeProvider. when('/vvv', { templateUrl: 'test.html', controller: 'testCtrl' }). otherwise({ redirectTo: '/' }); }]); [/code] Итог: [code] Error: [$compile:tpload] Failed to load template: test.html http://errors.angularjs.org/1.3.15/$compile/tpload?p0=test.html [/code] Ну и самое главное - на рельсах 4.1 всё работает хорошо, так что вангую проблему в rails-angular-templates. На стековерфлоу советуют пихать темплейты в паблик, но это пиздец какой-то же. Что делать, пасаны? Может кто-то сталкивался?
>>464997 Что это? Если твоя задача - иметь список компаний, иметь список людей, иметь список сотрудников компаний, каждый сотрудник имеет должность то получаем peoples - id, name employees - id, company_id, people_id, title companies- id, name
>Director of something at Google select peoples.name + ' is ' + employees.title + ' ' + companies.name from employees, companies, peoples where companies.name = 'Google' and employees.title = 'Director of Something' and peoples.id = employees.id
Как это в рельсотермины перевести уже сам подумай.
Какое же говно этот ваш faye и private_pub. Не обновляется уже 2 года, в development-mode не работает. Посоветуйте альтернативы. Ну не вкатываться же в сырой websockets, ейбогу.
>>465807 1. Например у меня nginx, за которым 3 thin сервера. Рельсоподелия, насколько мне известно, блокирующие, то есть могуть обслуживать только одного клиента. EventSource или WebSocket соснут при подключении одновременно более чем 3х клиентов в моем случае? 2. Поцчему sidekiq постоянно кукарекает couldn't find Model with id=цифра пока не потелебонькаешь его (sidekiq) кнопочку Retry All через web-ui? Джоб запускаю примерно так: model = Model.new do { |m|... } model.save job.perform_later
>>465112 Что значит "какого уровня". Ты предлагаешь абстрактно выдать тебе критерии оценки абстрактной задачи, но при этом дать определение уровням. Охуенно чо.
Сложная бизнес-логика или внешние взаимодействия обычно выражаются в 20+ часах.
вот такая хуйня : катаю в покер уже 4 года, доходы падаю и надоело.. да и жизнь такая, сложная - не курю, не пью, только витаминки жру и медитирую,что бы умнее быть и деньги выигрывать.. но там кризис отрасли(в покере) думаю осталось макс два года, и появилась идея вот перейти за эти два года в программисты.благо нормально английским владею, плюс покерист не анонист, голова дико рубит правда такая ситуация,что я 4 года катаюсь по миру(тай,бали) не хуя не делаю толком, играю в карты, когда хочу и веселюсь. не режима, не скилов задроства по 9 часов.. в офис идти это полный пиздец при таком образе жизни... до этого я ещё 3 года бизнесом занимался в РФ, а работал два раза и оба на оч прикольных должностях, ибо мама устраивала :D на халяву, нельзя назвать это работой.потом покер оч хорошо пошел уехал.. то есть больше 7 лет не работаю( мне 24 года) . сейчас вижу,что кроме программинга вообще мне ничего не подходит.. но почти все хныкают,что денег нету, конкуренция большая и индусы заебали.. с другой стороны лазил по Одеску куча работы на рельсах, но как я понимаю скилы нужны оч серьёзные для фриланса.. и за полгода-год ими не завладеть? Если конкретно, реально ли будучи не хуёво умным, но полным нубом, раскачаться до хорошего уровня и работы на одеске? без походов в офис. но при условии не плохих текущих заработков и возможности покупать любые курсы.
>>467083 есть отличные бесплатные курсы.. например на едексе я нашел один. я начал его проходить и подумал,что платные должны быть ещё круче, но видимо это ошибка. но в целом понял,что курсы не нужны.
>>467700 >Вот скажите, а что на питоне годного написано? Ну помимо джанго и всего того, что на нем. А то создается впечатление будто кроме джанго ничего нет >Вот скажите, а что на пхп годного написано? Ну помимо симфони и всего того, что на ней. А то создается впечатление будто кроме симфони ничего нет >Вот скажите, а что на жабаскрипте годного написано? Ну помимо нодежс и всего того, что на нем. А то создается впечатление будто кроме нодежс ничего нет
>>467706 >на питоне scipy/numpy например. Гвидон вообще в биоинформатике оч популярен. Из более близкого к пользователю можно например мобильное по на kivy делать. >на пхп А ты думаешь почему над ним тут смеются? >на жабаскрипте >помимо нодежс и всего того, что на нем Нода это не веб фреймворк так-то, а интерфейс между в8 и системой.
Тем временем в какой там версии руби-без-рельсов наконец юникод нормальный появился?
>>466064 Ну я же работаю, и со мною еще 5 человек. Неужто мы одни такие?
>>466576 >Что значит "какого уровня" 1) Прикручивание sidebar-фильтров для категории товаров. 2) Отправка асинхронных уведомлений о новых постах через web-sockets. 3) Подружить аутентификацию пользователя с Angular
>>467893 В каждом регионе пусть даже по одной конторе на 5+ человек - это не 20 человек. Или ты имел в виду исключительно матерых работодателей? Тогда может быть.
>>467973 Да чего ты мне рассказываешь, вокруг моего мухосранска как минимум ещё 3 региона, где есть стабильные конторы, работающие уже который год. Это вот в них 20 человек только. Сам посчитаешь сколько ещё таких может быть, или начнешь стелить про 20 героических настоящих™ рубистов, которые сидят в Evil Martians, например?
>>468025 А сколько меняет? Вообще, пока видел только одного "бомжующего" рубиста, который сам по каким-то непонятным причинам съебал с неплохой работы и теперь занимается всякой обезьяньей херней.
>>465112 За день переписал EventSource-лапшу на Websocket-понос. За два месяца запустил проект в продакшон. Пилил в одиночку. DelayedJob (sidekiq), Websocket-Rails, PDFKit, Net::LDAP, jQuery обмазался малость. Все эти вещи пробовал впервые. Неделями не мерял, мелкие задачи завершаю за день-два. Опыт до этого был из разряда своровать данные с яндекс.погоды. Трудоустроен в сфере ИБ. Раньше мечтал работать погромистом но после этого проекта у меня глаз дергается.
>>467848 >1) Прикручивание sidebar-фильтров для категории товаров. День, если мы об одном. >2) Отправка асинхронных уведомлений о новых постах через web-sockets. Дня 2-3 в зависимости от сложности клиентской логики в которую и будет уходить большая часть времени. >3) Подружить аутентификацию пользователя с Angular https://www.airpair.com/ruby-on-rails/posts/authentication-with-angularjs-and-ruby-on-rails
>>468118 Ты хотел сказать всего-лишь 100 позиций (что меньше в 8 раз, чем на любой популярный язык) и нужно быть синьёром-помидором с двумя годами опыта и знать over 9000 JavaScript-фреймворков?
>>468198 Стоит ли рассчитывать на что то понаеху в ДС с опытом десктопного программирования и знанием рельсов уровня могу написать: имиджборду, реддит, бложик, контакт. Но до тех пор пока это все не станет хайлоад, хотя принципы оптимизации знаю. Или все таки продолжать жрать говно у себя в мухосранске пердоля java.
Новичок в программировании, кое-что почитал, но как использовать не понял. Хочу написать программку : вводится столбец со значениями - выводится столбец с соответствующим этим значениям занчения(нихрена не понятно, вот пример- вводим 'спорт', 'книга', 'лекарство'; выводится 'футбол', 'библия', 'виагра'). У "ввода" только 1 значения "вывода," пар больше 100.
puts "vvodi" vvod1=gets.chomp words = vvod1.split(/\W+/)
Далее мои познания закончились... Что почитать? Как сделать?
>>468229 Уже написанные проекты показать сможешь? Тогда приезжай, работа будет 100%. 100 ему мало, вообще охуеть. Да с сотней позиций можно на одних собеседованиях до миддла дорасти.
>>468461 Где хранятся исходные данные об предмете и категории? Если в массиве/хэше, то 1) итерируешься по введенным словам 2) итерируешься внутри этого цикла по большой коллекции, выполняешь сравнения с текущим словом.
Читни ка документацию к hash и array, у них могут оказаться методы, облегчающие задачу. И книгу по алгоритмам из адвайс-листа программача осиль.
>>468499 >Тогда приезжай, работа будет 100%. >100 ему мало, вообще охуеть. Только что глянул на hh. В ДС на Rails где-то 35 вакансий. Все требуют опыт от года + знание javascript-фреймворков.
>>468511 Через hash не нашел способ( Нашел что-то такое: puts "vvod1" vvod1=gets.chomp words = vvod1.split(/\W+/)
words.map! { |element| if(element == "футбол") "спорт" elsif(element == "аспирин") "лекарство" else "" end } puts words
Совсем хреново или пойдет? + а если у меня будет вводимая фраза "футбол на траве", как сделать чтобы она полностью вошла в массив(т.е. выбрать фразу на новой строке)
>>468737 А чо еще? Скрипты автоматизации в основном на питоне пишут и чаще это сисадминская работа. Для десктопа/мобильных ОС руби вообще никак не подходит. Разве что json api писать на синатре или на чем там пишут, но это довольно узкая ниша, в которой у руби нет никаких особенных преимуществ.
Rails, с другой стороны – лучший (или один из) веб-фреймворк, который позволяет довольно быстро пилить круды любой сложности. А круды – это 90% всего веб рынка.
Руби без рейлс не нужен, как по мне, хоть я и люблю этот язык больше всех остальных.
>>469006 >Разве что json api писать на синатре >Слыхал про Sinatra, Faye, EventMachine? >ты же макака для которой рельсы это руби Ты же макака, которая зациклилась на руби. Половина того что ты перечислил чаще всего используется в связке с рейлс, а на синатре писать никакого смысла сейчас нет – ради производительности используют golang или похожее говно, т.к. руби ему и в подметки не годится, а для удобства и скорости разработки не подходит синатра, т.к. на рельсах все то же самое быстрее получится. И, главное, рубистов значительно меньше чем джаваскриптеров и даже пхп-говноедов, а json api совершенно похуй на чем писать, раз уж ты пишешь на медленной динамикодрисне.
Единственная причина, по которой в вашей конторе используется руби для таких вещей – макак (тебя) не нужно переучивать.
>>469084 >Ты же макака, которая зациклилась на руби. Не пускай на меня свои никчёмные проекции и перспективы. Я то в отличие от тебя не ограничиваюсь одним языком, а использую подходящие инструменты для каждой конкретной задачи. Но раз уж ты ляпнул про GO - я очень хотел бы посмотреть на то как ты будешь писать апп со сколько то сложной бизнес-логикой на Go.
>>469490 1. Почему вы выбрали именно нашу компанию? 2. Как вы считаете, почему мы должны выбрать именно вас? 3. Какую зарплату вы хотели бы получать? 4. Почему вы ушли с предыдущего места работы? 5. Кем вы видите себя через 5 лет в нашей компании? 6. Какие у вас были достижения на предыдущем месте работы? 7. Каким бы вы хотели видеть своего начальника? 8. Какие у вас есть достоинства? 9. Каковы ваши недостатки?
>>469461 Да. Хорошо нынче только хаскель. Веб 3.0 будет состоять из независимых ленивых модулей Кластера. Поэтому лучше тебе подумать о будущем и вместо railstutor'а изучать метапарадигмы и монады. Когда напишешь свой первый монадический твиттер тебя будут с руками отрывать в коммерческие компании уровня гугла и исследовательские центры, где ты сможешь углубиться в Data Science, Machine Learning, SEO и системы реального времени.
Парни, как жить то? Регаю юзера, (модель1) с именем компании на форме. Соответственно надо создать компанию (модель2). Как? далее надо сделать так чтобы юзер попал в некоторые роли в компании(модели3). как это все провернуть? ну допустим для компании есть fields_for. Но роли то как? Неужто все хардкодить в контроллере или в модели? БТВ только что подумал, что можно было бы и в модели юзера записать его в роли после создания, взяв их из настройки, но компании после создания юзера еще нет. Или колбэки юзать для всего этого. вообще гибко в ваших этих рельсах делается или нет? как то настроить воркфлоу что ли... Если следовать парадигме рельсов - делать контроллеры тонкими, бизнес логику держать в модели, то надо делать все это в модели, но через колбэки. Rubber ducking in action. Всем спасибо, если есть что добавить, прошу.
Кстати, есть жи гемы, которые используют подход act_as. А есть возможность включить какую то функциональность по умолчанию во все модели?
Нужно мне это чтобы можно было заинжектить в модель функциональность колбэков из некоего предопределенного сконфигурированного списка. или так не делается?
Хотелось бы разгрузить модель чтобы раз ее написать и не ползать в нее более, в последствии занимаясь только "конфигурированием конфигурации"
>>470055 Колбеки в твоем случае - онанизм - модель манипулирует моделью. Вики говорит, что >Контроллер в Rails — это набор логики, запускаемой после получения HTTP-запроса сервером. Контроллер отвечает за вызов методов модели и запускает формирование представления. Как лучше - три строчки логики создания юзера будут размазаны тонкой дрисней по моделям, которые потом заебешься искать, или будут наглядно лежать в контроллере? Не слушай колбекочуханов вобщем.
>>470169 >Нет Почему нет? >А как ты собрался читать документацию, если она только на английском есть? Так я его учу, но знаний для спец. литературы нет.
Юзаю рспек, как мне в rails_helper включить все файлы из папки support? > Dir["support/*.rb"].each{ |file| require file } почему-то не работает, а если включать по 1 файлу, то все ок.
Аноны. Правда что руби уже в жопе полной? Вижу что америкосы сейчас перерисывают проекты с руби на ноду. Новые начинают на ноде. Да же тот же пхп уже сейчас стал хорош а с выходом 7 версии будет на голову выше руби. А руби все тормозит и тормозит
>>471813 Хуйня, хайпнутное быдло поскорее пилит аппы на том, что на слуху. пхп и 7 версия не спасет. Рейлс 5 выйдет с вебсокетами, и уже из коробки можно будет делать САВРЕМЕННЫЕ ПРИЛАХУЖИ ПРЯМ КАК НА НОДЕ ЖС)) Если грамотно пропиарят 5 рейлс, то увидишь на одеск "move node.js website to rails 5"
Ребят, чё такой тред-то тухлый? Года полтора назад заходил - тут были всякие горячие обсуждения-советы. А теперь тишина. Пошёл на хэдхантер - там уже вакансии руби-девелоперов по 70к. Может я уже опоздал с изучением этого языка?
Посоны, может этот хуй >>471813 прав, но умирает не только руби, но и все интерпритируемое говно кроме джаваскрипта? В джаваскрипт вложили денег, он есть в каждом браузере и он охуенно простой.
Я почему спрашиваю – мне по большому счету похуй на чем писать, одна технология охуительней другой. Заказчикам, по всей видимости, тоже похуй – главное чтоб технология была хоть немного на слуху.
На рельсах получается писать быстрее. Не только потому, что я этот фреймворк знаю лучше чем остальные, но скорее потому что для него куда больше решений из коробки. Их, конечно, нужно допердоливать, но они есть.
С другой стороны рельсы делят нишу с джангой и пхп-фреймворками, а nodejs как бы сам по себе – дополнительный язык учить не нужно, любой дизайнер с джаваскриптом знаком, популярность уже на уровне рельс и продолжает расти. Простой С-подобный синтаксис как у не менее популярной джавы, все необходимые ништяки в ES6 (за исключением, пожалуй, опциональной типизации, но такого и у руби нет), а все удобства руби можно получить путем подключения библиотек типа lodash/moment/etc когда это необходимо.
Погромистов становится все больше и нужно адаптироваться к условиям. Ньюфаги не хотят учить дополнительные ЯП и скорее всего выберут джаваскрипт как универсальный язык и будут плодить проекты на нем. И, возможно, будут правы.
Я и сам являюсь сорт оф ньюфагом, почти 3 года прошло с тех пор как я начал изучать погромирование и теперь-то я понимаю, что большой разницы между языками нет. Но есть разница в сопутствующих технологиях, которые ты изучаешь и в платформе, на которой работает язык.
В тех гемах, которые я использую в проектах – нет ничего особенного. Я понимаю как работает большая часть из них, где-то смотрел исходники, какие-то просто использую – они работают и ничего от меня не требуют.
Но для многих гемов просто нет альтернативы. Конечно, ее можно написать, но я не могу себе такого позволить – я нищееб-фрилансер из страны третьего мира, мне нужно кушать и наркотики, а не писать код за бесплатно. То есть, код писать я люблю и буду писать что-то бесплатно – но пока что только свои проекты с надеждой извлечь из этого профит в будущем.
Возможно, все это говно напишут в ближайшие полгода на ноде (с таким-то форсом) и рельсы (как и остальные фреймворки) станут не актуальны. И главный вопрос тут – может, дропнуть рельсы прямо сейчас и писать все на es6 транспайлере?
Но и тут возникают проблемы. На чем хипстеры будут писать все эти out-of-the-box решения? Половина rails-гемов завязана на jquery и activerecord. В ноде нет вообще никакой стандартизации. Десяток фронтенд MVC фреймворков, десяток orm от васянов. В такой экосистеме написать нужные модули просто невозможно.
А для руби уже есть транспайлеры в джаваскрипт и даже целые фреймворки, построенные на этом – типа volt. Все они довольно непопулярные, но за ними стоит сообщество, которое действительно любит язык, а не выбрало его потому что так удобно. Если все это говно взлетит – можно будет точно так же писать весь код на руби, который будет транслироваться в джаваскрипт и ньюфаги снова будут вестись, а я буду писать на любимом языке.
Кароч, пока писал, сам убедил себя в том что нужно продолжать писать на руби, а модными хипстерскими технологиями увлекаться в свободное время.
Забыл, что сейчас модно писать не веб-сайты, а restful api с нативными клиентами. И тут опять сложно что-то предсказать, по крайней мере с моими 3 годами опыта – с одной стороны нативные приложения по всем параметрам лучше джаваскриптоговна, с другой стороны не так уж и сильно, учитывая квалификацию среднего js-разработчика, который эти самые приложения нам доставляет. И js-приложения пишутся в десятки раз быстрее чем нативные, при чем для нативных приложений нужно изучать по меньшей мере один отдельный язык вместе со всей инфраструктурой для каждой платформы.
В случае с restful api большая часть рельсовых гемов будет просто не нужна. А писать новые можно будет уже на чем угодно. И тут вступает в дело джава и jvm-языки, golang, которые могут предоставить куда большую производительность чем интерпретируемые языки. Зачем они тогда нужны? Ведь они не сильно легче в поддержке/разработке, а учитывая что чаще всего бэкенд довольно тонкий (большая часть логики на клиенте) – писать много все равно не нужно.
В случае с клиентами существенной разницы пока нет. Никто не писал крупных проектов на rubymotion/nw.js/react native, и мне кажется это сорта говна.
>>472486 нужна возможность вызывать руби методы из js и наоборот. http://opalrb.org/docs/compiled_ruby/ `window.foo = function() { return [1, 2, 3]; }` require 'native' w = Native('window') p w.foo()
не работает. но допустим, работает. ary = w.foo() нужен метод: ary.permutation(2) у массива который вернет js ф-я, должны быть методы руби массива. добавим проверку типа: ary = Array(ary) if ary.kind_of?(JsArray) ary.permutation(2) но тогда могут возникнуть коллизии. следить за этим всем. но что это даст?
>>472492 Успокойся, паникер, за рельсосообществом стоит дохуя народу и сами рельсы развиваются, в 5 рельсах будет встроенный rails -api, что уже хорошо, потому что именно на рельсах лучше всего писать апи, нода жс просто хипстерское говно, которое хорошо для сокетов, в рельсах 5 будет пиздатая поддержка вебсокетов, турболинкс 3, от которых больше не будут плеватся. Короче, пишем на рубях, ждем 5 релиз, радуемся, как рельса снова становится популярна у хайпнутово быдла, чье мнение заставляет нас колебаться при выборе фреймворка\языка. сори за ошибки
>>472610 Руби медленный. Пиздец как медленный до сих пор. Это говно жрет 300 МБ просто нихуя не делая. Вместо одного сайта на руби я могу разместить 3 сайтатна Джанго или 6 сайтов на ноде или 10 сайтов на голанг. Спрос на руби падает и очень сильно инфа сотка от моих американских заказчиков. Он нахуй уже не нужен.
>>472923 > Вместо одного сайта на руби я могу разместить 3 сайтатна Джанго или 6 сайтов на ноде или 10 сайтов на голанг. Или один на джаве. Но спрос на нее не падает.
>>472936 clojure - нет зрелых веб фреймворков и не будет, возможно потому что комьюнити слишком гордое что бы в серьез крудами заниматься scala - play уныл до не возможности, тоже самое на рельсах можно сделать в 10 раз быстрее, про либы вообще молчу, да и сама скала громоздка, для веба надо что-то простое кароч не все в скорость упирается котаны, руби стал популярен потому что на нём просто приятно писать и благадоря пиарам рельс и если их что-то и заменит то оно должно выиграть ещё и по этому пункту
> If you're a ruby programmer and looking to get a 10x speedup on a tiny box out of the same sort of code, I feel like Clojure is the clear next step in evolution. дискач
>>472951 многим не нравятся скобки (это как бы известный факт) вывод ошибок там не оч (попробуй расшифруй где накосчил в этой лапше) где мои рельсы с кучей либ? вот простой факт что бы создать простой сайт с логином, регой, восстановлением паса и прочей байдой, правами пользователей и возможностью прикреплять картинки, я просто подключу пару-тройку либ и через час это будет работать интересует мнение сколько это займет на чём-то другом
>>472945 >на скале тоже приятно превозмогать мм, приятно до ночи придумывать высокоуровневые, хрустальные абстракции в категории единорогов а на следующий день выкидывать их потому что изменились требования? да, такое удовольствие мало с чем может сравниться
>>472951 Не взлетить. Вообще все, что с синтаксисом лиспа не взлетит только по одной причине, что сам лисп не взлетел. Не знаю зачем они копротивляются.
>>472962 Да, разработка стандартных решений на рельсах быстрая, но что если нужна скорость, и есть время подумать над архитектурой, т.е. не нужно деплоить через час?
>>473007 на тесте руби соснул у жс лол но это хуйня эрланг там тоже не ахти, но держит лям коннекшен у whatsapp - очередной пруф "полезности" такого синтетикик-теста
Ребята, серьёзно, тут что-то не так. Сейчас проверил hh. В ДС на рубях 123 вакансии. На РНР - 579. На РНР, Карл! На питоне - 410. Года полтора-два назад всё было с точностью наоборот. И зп на руби были больше, чем на РНР, значительно. Может это потому что из-за кризиса не делают стартапов, а руби был популярен именно там?
1. C чего мне начать, чтобы стать рубистом?
Отличным началом будет Eloquent Ruby или The Well Grounded Rubyist, а еще - Programming Ruby (The Pragmatic Programmers Guide)
Затем читаем Metaprogramming Ruby. На протяжении чтения вы должны писать код, конечно же.
Чтобы не задавать глупых вопросов уровня дибилоида, который не нашёл доки > http://ruby-doc.org/
Можно пройти руби онлайн - http://tryruby.org/levels/1/challenges/0
Не веришь в свои силы? Прочитал уже книжек много и силы свои хочешь познать, сделай - http://rubykoans.com
2. Какой gem посмотреть, чтобы понять, как писать код?
Лучше всего посмотреть небольшие gem'ы вроде cancan, devise, camping.
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
Прекрасные туториалы - http://www.theodinproject.com/ruby-on-rails
Классический вводный туториал, где делается с нуля клон твиттера, для новичков в rails самое то - https://www.railstutorial.org/book
Для дотошных читателей есть The Rails 4 Way.
7. Хорошие практики по руби и рельсам?
Читаем Rails AntiPatterns, смотрим Rails Best Practices, также неплохо посмотреть Rails Recipes.
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. Есть ли у руби русское коммьюнити?
Нет. Вернее есть, но оно протухло и там полно людей у которых чсв высоко.
Яркий пример - [email protected]
11. Какие гемы стоит знать?
capybara, rack, rspec, devise, cancan, simple_form, solr, sinatra, тысячи их.
12. Где можно задать глупые и неочень вопросы?
- здесь
- stackoverflow.com
- в рассылке rails-talk
- оф. форум рубей http://www.ruby-forum.com
13. Как фокнуть\сделать фичу\исправить баг, сложно ли это?
Нет, не сложно. На rubyflow появляется много новостей с реализацией новой библиотеки, вы можете сделать тесты, фичу для него, старые либы также обрастают багами, улучшайте их! пишите код.
14. В чём писать код?
Atom, Sublime Text, TextMate, Vim, GNU Emacs. Для особо упоротых энтерпрайз-ребят есть rubymine, плагины к эклипс и нетбинс.
Предыдущие треды:
http://arhivach.org/thread/46624/
http://arhivach.org/thread/32141/
http://arhivach.org/thread/35764/
http://arhivach.org/thread/71814/