Виталий Емельянцев
270 subscribers
102 photos
9 videos
220 links
Длиннопосты здесь

Навигация: https://gambala.pro/telegram
Чат: https://t.me/gambala_chat
Личка: https://t.me/gambala
Сайт: https://gambala.pro
Download Telegram
В базе знаний свежая заметка - памятка по настройке https на серверах ubuntu с nginx. Через certbot и Let's Encrypt. https://notion.so/df85cd435ca44f32aef01b0ca328e132
Накануне провел 6 часов за изучением темы, теперь в базе свежая заметка - о конфигурировании nginx под rails-проекты.

https://notion.so/28b5b03a5fc942ef92d449721eae0c5c

А что у вас в конфигах?
Никогда до конца не знаешь, к чему приведут твои действия.

Давеча, как обычно, делился опытом в профильных чатах, отвечал на вопросы. Один из таких ответов в итоге лег в основу статьи на css-live.ru. Которую теперь отрепостили Веб-стандарты.

Теперь осталось только услышать о ней в их подкасте 😇.

P. S. Хотите приобщиться к веб-разработке:
→ Подписывайтесь на мой канал в телеграме: Gambala.live
→ Задавайте вопросы: в личке, в профильных чатах, на Stack Overflow или в моей Школе Веб 2.0
Иерархия контроллеров (Хабр) - ссылка, которой я чаще всего делюсь в рельсовом (и около) сообществе. Маст-рид. В дополнение к ней также хорошо заходит How DHH Organizes His Rails Controllers.

TL;DR:
- В рельсовых контроллерах оптимально держать только CRUD-экшны (index new create show edit update destroy);
- Если появляются нестандартные экшны - их стоит вынести в отдельный контроллер и сделать CRUD;
- Как выносить и строить иерархию - описано в первой статье.

Эти принципы я использую уже 2 года во всех боевых проектах. Несмотря на то, что первой статье уже 5 лет - подход до сих пор актуален. Хотя мне все же есть, чем его дополнить. Могу написать статью на тему. Интересно? Палец вверх.
В базе знаний новая заметка - как увеличить своп на сервере

https://notion.so/2861cd3aaf164637a2754dcfe1a4f481
Маст-рид для всех rails-разработчиков, хостящих свои проекты на минимальных VPS-ках с 512Мб оперативки. Прекомпиляция ассетов - прожорливая операция, и если ей не хватает оперативки - деплой прерывается с непонятными и трудно диагностируемыми ошибками. Поэтому лучше взять за правило - в каждом новом VPS заводить своп. Тогда проблем не будет.
Продолжаю хайпить и отхватывать open-source пойнты при обновлении библиотек. Уже поднимал эту тему ранее на канале: "Обновление → баги и опечатки в Readme → легкие PR'ы".

Теперь я официально контрибьютор rails/webpacker. Хоть мой вклад в библиотеку ничтожен - есть два плюса:

1. Узнаваемость среди разработчиков. Следующие мои PR-ы там будут приниматься быстрее;

2. Узнаваемость в сообществе. Влияет на кол-во и качество вкусных предложений по работе. Потому что круто, если вы пишете отличный код. Но если мир не знает о вашем существовании - рассчитывать на лакомые вакансии будет трудно. Поэтому помимо кодинга - важно прокачивать soft skills, и говорить о себе в сообществе.
Набросал тезисы для «Иерархии контроллеров 2.0». Статья, похоже, выйдет зверская.
В базе знаний новая заметка - Почему с турболинками в Rails так сложно? И как фронтенд работает в рельсах.

https://notion.so/df4c32146dd145a5b371adf589437d0f

Норм? Или есть что добавить? Пишите.
Написал обычно не свойственный для Stack Overflow титанических размеров ответ на вопрос по БЭМу и принципам именования в нем.

Ссылка: https://ru.stackoverflow.com/questions/671568

Можно даже плюсануть ответ там. Это подстегнет меня давать больше таких ответов и впредь.
Спасибо, ребят, щедро налили лайков, люблю вас!

На самом деле все окей. Случайный прохожий не сможет поставить лайк на SO. Ему помешает местная система репутации, о которой я еще расскажу. Она крутая
Где меня можно найти в телеграме? В тематических чатах без флуда и спама. Делюсь с вами списком любимых:

По руби, рельсам и веб-разработке внутри этого стека:
- Random Ruby Chat
- Ruby School .us

По веб-разработке широкого профиля (HTML, CSS, JS, UI/UX, Дизайн, IT)
- Школа Веб 2.0
- Frontend_ru
- css
- annode webdev
- DEVs chat

По видеоиграм и их разработке:
- Gamin

По бизнесу и самореализации:
- Чат (Startup Garden)

Еще в ряде чатов я формально сижу, но из-за обилия флуда откликаюсь только, если упомянуть меня в сообщениях как @gambala. Вот они:
- Ruby & RoR
- pro.ruby

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

https://notion.so/7c7d813dd08e425b839de79a88cff1c3

tl;dr - именуйте лайауты не application.slim, а application.html.slim, всегда. Избавите себя от лишних проблем с рендером js.erb-вьюх.

Знаете о других подобных нюансах? Пишите, пополним заметку вместе.
Разговорились в чате, кто каким путем пришел в IT. Мой путь:

2005-2009
Вожусь в конструкторах видеоигр, знакомлюсь с программированием.

2010-2011
Ставлю на паузу видеоигры, пишу простенькие программы себе в помощь (аналог Evernote, например) под винду и линукс.

2012
От ВУЗа прохожу практику в местной шаражкиной веб-студии. Верстаю сайты на вордпрессе, затем в ModX. Первая з/п порядка 1-3к руб. в месяц.

2013
Изучаю Ruby on Rails. Создаю сайт себе, сайт под дипломную работу в ВУЗе. Регистрирую ИП. Начинаю фрилансить. Ищу в ВК молодых предпринимателей, создаю им лендинги и сайты. Заработок порядка 6-10к в месяц.

2014
Клиентов больше не ищу, работает сарафанка. Одни приводят других. В какой-то момент вливаюсь в молодую команду и работаю над стартапом. 15-20к в месяц с фриланса.

2015
Клиенты приходят из-за рубежа. Один из участников команды работает в европейской конторе, потом в штатовской. Подкидывает заказы оттуда. Планка теперь 40-80к.

2016
Упираюсь в потолок по доходу, если работать на заказ (180-250к). Хочу потолок пробить. Поэтому сокращаю все расходы до критического минимума и все время посвящаю тому самому стартапу из 2014-го.

2017
Стартап - на финишной прямой. За ним - новые проекты.

А каким путем идете вы? Поделитесь своей историей в чате.
Порекламирую Wappalyzer, уж больно часто им пользуюсь.

Расширение, палит список технологий, на которых построен открытый в текущей вкладке сайт.

https://wappalyzer.com/

А что используете вы?
Кстати - заметили сочетание Ruby on Rails и React на скрине выше? Теперь и такое бывает.

С релизом Rails 5.1 и webpacker - стало возможным в кои-то веки писать фронтенд на ES6 и современных js-фреймворках. Я уже опробовал много фич Rails 5.1, и последнюю неделю занимаюсь фронтендом. И он крут.

Конечно, не без сложностей:

1. Webpack - отдельный мир. Рельса подстилает соломку и генерирует надежные development и production-ready конфиги, но если всплывают баги (в third-party плагинах, например) - приходится зарываться в вебпак с головой.

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

3. React - офигенно. Рельсы как фреймворк закрывают много кейсов в разработке. Но один остается - динамичные веб-компоненты на фронтенде. А у нас в Melp.pro их выходит полсотни. Отказаться от динамики, пожертвовав удобством для пользователей - не наш вариант. И к счастью - реакт эту проблему закрывает.

Если в какой-то момент я запущу курс по веб-разработке на рельсах - отдельной главой в нем однозначно будет современный фронтенд в вебпакере и реакт. Потому что хватит мучиться и писать велосипеды на jquery. Уже сейчас можно писать простой и понятный разработчику, но мощный фронтенд в дополнение к рельсовым server-side-rendered страницам.

Интересная тема?
Порой накатывает ощущение собственной беспомощности. Устраняется просмотром заранее отобранных мотивирующих фильмов. На скрине - мой набор, 33 тайтла.

А какие - у вас? Ай-да делиться в чате:
В базе знаний новая заметка - Настраиваем Sublime Text для работы

Стек: Ruby, Rails, Slim, Sass, CoffeeScript, ES6, JSX, React, Git. Мой личный набор плагинов и конфигов.

https://notion.so/Sublime-Text-14b5d9bafbd54559894d2dcdb6ab42d4

А если занимаетесь фронтендом - для вас существует подобная заметка на гитхабе.
Evernote для заметок я начал использовать в 2014-м. До этого сидел в TiddlyWiki, Rizzoma.com, даже в программе собственной разработки на Delphi. На днях залез разобрать базу в риззоме.

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

В веб-разработке (особенно в js-стеке) знания вообще быстро теряют актуальность. Исключения есть, например те же RailsCasts, которые я всем советую - местами до сих пор актуальны, но это потому что Rails-стек относительно стабилен, и сами скринкасты сделаны качественно.

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

Согласны с написанным? Палец вверх.
Там новый выпуск Random Ruby Newsletter подвалил. Рекомендую - хорошая выжимка полезноты по руби и рельсам. С каждой рассылки 3-5 ссылок стабильно идут в закладки.

На рассылку можно подписаться по e-mail, но я отслеживаю в телеграм-канале: @randomruby