×

Совместное изучение Ruby (RoR) c нуля / Ruby Crowd Learning

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

Сам я девелопер на LAMP стэке с опытом работы, но хочу еще освоить Ruby и его инфраструктуру (RoR, Rspec, Heroku и т.д.) В прошлом IT-препод, так что есть методический опыт.

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

Цель — сделать учебный проект (на github/bitbucket), получить опыт командного взаимодействия, деплоя и т.д.

Почему RoR (Ruby)? Есть подозрение, что этот язык по уровню заказов что-то среднее между энтерпрайзом типа Java, .NET, C/C++ и персональными домашними страничками PHP. То есть ниша малого/среднего бизнеса и стартапов IMHO.

Что мне лично нравится в подходе RoR, это то, что позволяет создавать MVP (minimum value product) за приемлимое время, используя развитую экосистему, gem’ы, тестирование, миграции и т.д. А потом уже заниматься масштабированием, оптимизацией, рефакторингом, переписыванием кусков кода на других языках.

Скажу честно, на таком же уровне мне нравится Python, но так как Ruby и Python очень близки, выбор был чисто эмоциональный. Ну уважаю я 37signals :)

UPD: Может есть опытные рубисты-человеколюбы :), которые время от времени бы давали дельные советы или курировали процесс?

Уважаемые рекрутеры, если у вас есть интересные тестовые задачки, то тоже welcome, пиши в комментах здесь.

UPD 19-09-2014: Запись на текущий курс закрывается. Как будут новости, будет написано в новом топике.

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Коментар порушує правила спільноти і видалений модераторами.

Привіт!
Хотів поцікавитись як пройшов данний курс, які результати і чи планується ще щось подібне?
P.S. Поділіться, будь ласка, ресурсами, які використовувались під час навчання.

Привет! Курс прошел — как первый блин :) Сыроват и комом. Были разные вопросы. Изучали по книге Матсумото Ruby и Rails по guides.rubyonrails.org.
Из положительного опыта — это обмен опытом, новые знакомства, обмен полезными ресурсами.

Думаю стоит продолжать, как появится свободное время и побольше опыта, добавить больше front-end — без JS уже никуда.

Ресурсы: это в основном книги по Ruby и Rails, их много. Пишите, если нужны подробности

О, дякую за таку швидку відповідь. Просто я так помітив, що по Ruby дуже мало книжок і вони всі досить старі: Матсумото взагалі 2008 року, можливо ви знаєте якісь новіші видання? По rails, кажуть, непоганий гайд www.railstutorial.org/book/beginning. Старіша версія є в перекладі railstutorial.ru/chapters/4_0/beginning. На днях збираюсь за них сісти. А по JS ви маєте на увазі Angular, Ajax i JQuery?

На английском книг много, есть за 2013 год, например www.confidentruby.com.
В переводе почти ничего нет, это факт. JS — прежде всего VanillaJS :) сам язык, а дальше Angular, Ember и т.д.

Вообще все зависит от Ваших базовых знаний и целей.

Тема интересная, не скажу что оригинально так как коллективное обучение ну никак не новшество, вопрос в том что нужна методика, курс, интерактивность как с методом так и коллективом

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

вопрос в фреймворке, долгое время испытывал wow-эмоции от знакомства с рельсой, или очередной либой:

Про Рельсу, все это круто пока в рамках соглашений НО придуманных не нами и не для наших задач, о да, как-бы в целом вроде-бы для общих нужд, но когда идем чуть дальше заготовленного решения красота и магия заканчивается и нужно писать много букв. И имхо, гораздо больше, чем просто взять либу и решить задачу, необходимо выдержать ряд требований интеграции, а если не знать фреймворк, то интеграция будет скорее всего никчемной, просто так взять и заменить компонент частенько тоже непростая задача. Это очень спорный момент и тут-же, имхо, команде иногда лучше согласится с дополнительными заморочками чем писать свой фреймворк ) итого постигая магию очередного фреймворка: а) Вы скорее всего напрочь разучитесь думать, и решать задачи в тч так как большинство уже все решили за Вас б) отказаться от фреймворка очень сложно тк утраченный опыт мало кого интересует в) понять причину тех или иных решений частенько практически невозможно / (можно если инвестировать много времени и упорного труда) остается только соглашаться с готовой реализацией и следовать огромному количеству соглашений которых по сути «нигде» кроме как в коде не найти, (в смысле шпаргалки не встречал) обычно это называют «опыт в му фаворит фреймворк» — и за такой опыт прилично денег предлагают. г) Используя фреймворка Вы уходите в мир абстракций и чаще всего не понимая что это и как это фунциклирует, следовательно полагаясь на общепризнанные иногда/часто ошибочные выводы и мнения, или в лучшем случае знаете то, что это паттер активрекордс, а это ну наверное фабрика, но знание как это работает и написать решение с применением паттерна — вещи разные.

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

Руби не проектировался для реализаций огромных приложений и «больших» фреймворков, это имхо, и архитектором не являюсь, так что знатоки могут опровергнуть или исправить/дополнить мысль.

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

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

итого учите разные ЯП, Алгоритмы, Паттерны проектирования, Либы, а Фреймворк имхо вообще странный термин и частенько выгодный бизнесу но не инженеру — ИМХО
да читая код фреймворка, можно что-то понять, выучить что-то новое или хорошее решение, прям бест-практикс, но это знание которое имплементит конкретные идеи, конкретных случае, которые только иногда совпадают с вашими

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

итого учите разные ЯП, Алгоритмы, Паттерны проектирования, Либы, а Фреймворк имхо вообще странный термин и частенько выгодный бизнесу но не инженеру — ИМХО

Полностью поддерживаю, и очень рад, что кто здесь это написал. Спасибо!
Не многие понимают, что MVC было придумано еще в 70-х годах (шок! ;) ) и Rails или Angular реализуют в том или ином виде совсем не новую концепцию.

Pub/Sub паттерн такой модный благодаря node.js описан в 1987 году...

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

Спасибо за ваше мнение — очень рад, что есть еще у кого-то трезвый взгляд на технологии ;)

PS Читаю Code Complete 2nd ed., и жалею, что с него не начинал

а сообщения-то не редактируются )

выше изложенное назвать критикой или серьезной аргументацией — нет, пусть это будут личные наблюдения, возможно, даже малость негативного характера и фактически не рассматривающие многие/частные аспекты таких серьезных понятий, что-то есть здесь: ru.wikipedia.org/wiki/Фреймворк, ну или так на просторах Интернета

суть: в общем выбирая масштабный инструментарий сегодня, Вы делаете выбор на много лет вперед, будьте бдительны

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

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

например: (РИА) хтмл5, веб-сокет, да как-бы рельса/джанго/зенд/... любой фреймворк может предоставить приложение-сервер для реализации таких веб-приложений, и скорее всего, да, как будет новый тренд, бузи-ворд или потребность в новой фиче, скорее всего популярные фреймворка буду адаптированы

посмотрите Sinatra, Lotus, Grape, ...

инструментарий создан для достижения результатов в предметной области, а не для выбора профессии ) а как-то так: буду писать на рельсе там хорошо платят — булщит, лучше пишите на шпалах или на заборе )

Советую — www.coursera.org/...webapplications.
Достаточно много Ruby и очень мало архитектуры. Уровень сложности — для начинающих правда, мне было скучно. Сейчас вот заканчиаю курс.

Перешли на чат slack.com, чтобы получить инвайт напишите Евгению на tkachenko.eugene90 гав-гав gmail.соm

Ошибка не правильный адрес почты
Technical details of permanent failure:
DNS Error: Domain name not found
Вместо гав-гав ставил соответствующий символ @

а вы gmail.com не копируйте, а введите руками :)))) у программистов не все так просто :)

Очень точно описал что за зверь такой — RoR, даже удивительно как без опыта смог с этой всей кухней разобраться. Я вот смог понять на чем хочу кодить только после того как все языки сам перепробовал :)
Кстати тоже стоял выбор между Ruby i Python. Когда помотался по Киевским ИТ конфам, и увидел Python комюнити (да всех двоих програмистов!), вопрос отпал. Не обижайся на меня Python комюнити, видно тогда так просто попадал (у меня тоже есть друзя Питонщики, кстати, кльовые чуваки).
Но все же я плюсую за Руби, дерзайте ребята. Роботы болие чем достаточно, интересных проектов тоже.

Спасибо на добром слове :) Если будет время быть ментором хотя бы раз в месяц, давать какие-то полезные советы — добро пожаловать! :)

В Україні пітоністів набагато більше ніж рубістів.
Про всіх двох це було в якому році? 2001?

а где стади план ? давайте шарьте что собираетесь читать, что делать.

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

Предварительный план большими кусками:
* Изучения языка (синтаксис, структуры данных, ООП)
* Изучение RoR
* Изучение экосистемы Ruby на протяжении всего курса (vcs, rspec, CI и т.д.)

Детальный план еще в процессе проработки.

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

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

Общение по заданной теме происходит в dev чате на slack.com

Продолжительность, я думаю, не меньше полугода.

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

Могу помочь с организацией и планом и практическим опытом, так как сем делаю похожие курсы для студентов Литвы

Несколько практических советов
— используйте лучше google+ community, так как там удобнее все организовывать и очень удобно делать screen sharing
— рекоммендую встречаться лично хотябы раз в неделю. Это могут быть групповые созвоны или встреча в коворкингах
— используйте разные тематики проектов, каждому работать и учиться легче если тема учебного проекта ему нравится. Сделайте разные учебные проекты с кодом на github который также будут очень полезными при поиске работы потом

Спасибо, было бы здорово получить практические советы. Обсудим?

отличная идея, я с вами

Идея интересная, если надумаете Python я с вами! :)

Обкатаем методологию crowd leraninga и тогда да :)

Идея то хорошая, вот только вызывает вопросы руби. Что-то маловат этот рынок, да и программисты с минимальным опытом на руби мало кому нужны. Может посмотрите в сторону питона?

Расскажите, что же именно так плохо в Питоне?

Нет работы в Украине, на одеске одна джанга и scrapy.
В питоне очень плохой набор пакетов. В ruby или даже в новомоднос nodejs все намного лучше.
Еще й деления на две ветки это очень плохо.

Я просто оставлю это здесь: www.tiobe.com/...tpci/index.html
Посмотрите где Python и где Ruby :)

Это вообще очень странный рейтинг... Это Си обджектив си лидеры рынка? Я Вам другой рейтинг покажу spectrum.ieee.org/...mming-languages или redmonk.com/...-rankings-6-14

Язык Си, всегда будет лидером, ИМХО! Ваш рейтинг тоже хорош, но из него следует и тот факт, что Python при любом раскладе популярнее Ruby. Отсюда возникает вопрос: Стоит ли изучать Ruby, если синтаксис Python намного удобнее, красивее и как язык он более востребован!?

эмм.. рейтинг только третью характеристику подтверждает)

«рейтинг только третью характеристику подтверждает)» <- вот тут не понял :)

удобнее, красивее и как язык он более востребован
Про удобнее и красивее в рейтинге не сказано)

Я и не говорил, что руби популярнее — я хотел сказать, что рейтинг сам по себе не очень.

TIOBE никак не кореллирует с количеством вакансий на рынке

Полностью с Вами согласен! ;)
Brainstorage.me — Python: 57 вакансий, Ruby: 23 вакансии
oDesk.com — Python: 476, Ruby: 441

Нет работы ? Только на DOU 33 предложения.

А сколько из них фоновых? (в смысле если найдем хорошего и по дешевке может и возьмем/заменим кого-то)

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

Есть какие-то материалы для обучения, идеи, и с какого нуля? Совсем зеленые или опытные девелоперы использующие другой язык программирования решившие для разнообразия Руби изучить?

Если надумаете совместный проект подключите еще Travis CI

могу вам дать три тестовых задания как учебные проекты

я сделаю три гугл дока и дам тут ссылки ок?

а какая предистория этих заданий? откуда они

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

спасибо, а какие сроки выполнения были?

сами курсы были 3 месяца, кроме практики понятно что были лекции по теории, основной функционал мы сделали за 2 месяца потом доводили до ума, еще кроме рельс был использован бекбон.джс и бекбонмарионнет.джс
на второе задание двали две недели на последнее до недели времени

Гугл группа то закрыта. Идея ок, только вот целевая аудитория какая? Ведь, в Украине нету бума на RoR девелоперов

В группе пусто, только сегодня сделал на всякий случай.... А девелоперы всякие нужны, есть куча технологий на любой цвет и вкус. На Украине спрос небольшой, но есть пока спрос на западе. Для себя хочу попробовать Ruby (RoR), может еще кто-то хочет попробовать изучить — вот уже будет веселее.

Что могут сказать рубисты на этот счет?

но есть пока спрос на западе
И врядли закончится
Ведь, в Украине нету бума на RoR девелоперов
но работа есть и деньги платят :)

Підписатись на коментарі