Ruby on Rails. Chapter 1
Master class/ Workshop.
Готовлю практику к сентябрьской программе по Ruby on Rails.
В форме обратной связи часто повторялась одна и та же просьба — продакшн и деплой.
Значит, первым практическим результатом первой главы будет деплой. Тема важная и нужная. Согласен.
Конечно, вы очень хотите Kamal. Но Kamal это только верхушка айсберга.
DHН никогда бы не сделал его, если бы не понимал основы проходящих за кадром процессов.
Я начну с простого и самого основного. Позже доберемся и до Kamal. Никуда он не денется.
Сперва потренеруемся на локальной эмуляции продакшн сервера (Чего деньги зря жечь на реальных серверах?)
Ну а самые смелые легко повторят все сами на реальном серваке.
Так как я планирую это сделать, вряд ли кто-то еще разбирал рельсовый деплой. Должно быть круто.
Master class/ Workshop.
Готовлю практику к сентябрьской программе по Ruby on Rails.
В форме обратной связи часто повторялась одна и та же просьба — продакшн и деплой.
Значит, первым практическим результатом первой главы будет деплой. Тема важная и нужная. Согласен.
Конечно, вы очень хотите Kamal. Но Kamal это только верхушка айсберга.
DHН никогда бы не сделал его, если бы не понимал основы проходящих за кадром процессов.
Я начну с простого и самого основного. Позже доберемся и до Kamal. Никуда он не денется.
Сперва потренеруемся на локальной эмуляции продакшн сервера (Чего деньги зря жечь на реальных серверах?)
Ну а самые смелые легко повторят все сами на реальном серваке.
Так как я планирую это сделать, вряд ли кто-то еще разбирал рельсовый деплой. Должно быть круто.
🔥9👍4
О безнадеге, отчаяньи, смелости и результате
Шел 2011 год. Школьный учитель информатики с зарплатой 250$-300$. 27 лет.
Друзья, продающие ковши для экскаваторов и набивающие синтепоном подушки и одеяла, уже купили машины и квартиры.
Я копил 3 месяца, чтобы купить зимнюю куртку и ботинки.
Обидно. Безнадежно. Накоплений 0. Шансов 0.
Нечего терять. Брошу все и пойду работать самым дешевым программистом на фриланс. Меньше все равно не заработаю.
Первые месяцы страшный стресс.
Но уже в первый месяц заработал 500$. Второй - 600$. УСПЕХ!
Уехал на 7 лет работать в Питер. Застал расцвет JavaScript и Ruby сообществ и экосистем. Влился.
Подсматривал за тем, что делают и говорят лучшие в профессии.
2025. Живу в величайшем мегаполисе мира. За лето вожу семью несколько раз на море в хороший отель лучшего курорта страны.
Меня слушают и мне доверяют корпорации из списка USA Fortune 500.
Ruby и JavaScript - лучшее, что я мог освоить.
Не ныл, не скулил. Работал.
Верь. Результат будет.
Шел 2011 год. Школьный учитель информатики с зарплатой 250$-300$. 27 лет.
Друзья, продающие ковши для экскаваторов и набивающие синтепоном подушки и одеяла, уже купили машины и квартиры.
Я копил 3 месяца, чтобы купить зимнюю куртку и ботинки.
Обидно. Безнадежно. Накоплений 0. Шансов 0.
Нечего терять. Брошу все и пойду работать самым дешевым программистом на фриланс. Меньше все равно не заработаю.
Первые месяцы страшный стресс.
Но уже в первый месяц заработал 500$. Второй - 600$. УСПЕХ!
Уехал на 7 лет работать в Питер. Застал расцвет JavaScript и Ruby сообществ и экосистем. Влился.
Подсматривал за тем, что делают и говорят лучшие в профессии.
2025. Живу в величайшем мегаполисе мира. За лето вожу семью несколько раз на море в хороший отель лучшего курорта страны.
Меня слушают и мне доверяют корпорации из списка USA Fortune 500.
Ruby и JavaScript - лучшее, что я мог освоить.
Не ныл, не скулил. Работал.
Верь. Результат будет.
👍10🔥9💯6
Ветер и закат
Последние несколько лет мы несколько раз за лето ездим в одни и те же отели на побережье Бодрума.
Летний отпуск я разбиваю на несколько частей по неделе. Это очень удобно.
Жить в отеле подряд больше 5-7 дней нам психологически трудно. Устаешь. Хочется домой.
Работать все лето и пропустить его, ради 2-3 недель отдыха — обидно.
Устраивать себе отпуск по неделе каждый месяц оптимально.
Чувствуешь лето. Не забываешь рабочие процессы. Первые отпускные недели даешь мозгу привыкнуть к отпускному режиму.
К счастью, довольно давно я могу сам формировать свой отпускной план и просто заранее уведомлять о планах клиентов. Ни разу не помню, чтобы это вызвало у кого-то какие-то трудности.
В этом августе удивительно ветрено. Ветер порою срывает бокалы со столов открытой веранды ресторана и они с дребезгом и звоном разбиваются об пол.
На счастье, наверное.
После ужина сижу на веранде бара, пью негрони и читаю книгу.
Теплый ветер не утихает и, кажется, только набирает силу.
Последние несколько лет мы несколько раз за лето ездим в одни и те же отели на побережье Бодрума.
Летний отпуск я разбиваю на несколько частей по неделе. Это очень удобно.
Жить в отеле подряд больше 5-7 дней нам психологически трудно. Устаешь. Хочется домой.
Работать все лето и пропустить его, ради 2-3 недель отдыха — обидно.
Устраивать себе отпуск по неделе каждый месяц оптимально.
Чувствуешь лето. Не забываешь рабочие процессы. Первые отпускные недели даешь мозгу привыкнуть к отпускному режиму.
К счастью, довольно давно я могу сам формировать свой отпускной план и просто заранее уведомлять о планах клиентов. Ни разу не помню, чтобы это вызвало у кого-то какие-то трудности.
В этом августе удивительно ветрено. Ветер порою срывает бокалы со столов открытой веранды ресторана и они с дребезгом и звоном разбиваются об пол.
На счастье, наверное.
После ужина сижу на веранде бара, пью негрони и читаю книгу.
Теплый ветер не утихает и, кажется, только набирает силу.
🔥6
Песня вам не скажет до свидания. Песня не прощается с тобой.
Уехать работать в другую страну.
Летом уезжать в отпуск на побережье известного курорта, в маленький прибрежный поселок в уютный бутик-отель, в уголке крохотной бухты. Подальше от всего мира, чтобы ночью открыть балкон и всю ночь слушать морской прибой.
А потом проснуться в 4 утра от того, что где-то по соседству тихо, но настойчиво играет знакомая мелодия из 90-ых и звучат слова.
«В шумном зале ресторана,
Сpедь веселья и обмана
Пpистань загyлявшего поэта.»
….
«Ах, какая женщина, какаааааая женщина»
….
«младший лейтенант, мальчик молодой»
….
«Натали! Утоли мои печали Натали»
….
Непередаваемые ощущения на грани абсурда, мета-пост-иронии, комизма и полного непонимания.
Зачем и нафига? Почему не джаз? Почему не боссанова? Почему Лепс, Фристайл и Аллегрова? 🤪
Уехать работать в другую страну.
Летом уезжать в отпуск на побережье известного курорта, в маленький прибрежный поселок в уютный бутик-отель, в уголке крохотной бухты. Подальше от всего мира, чтобы ночью открыть балкон и всю ночь слушать морской прибой.
А потом проснуться в 4 утра от того, что где-то по соседству тихо, но настойчиво играет знакомая мелодия из 90-ых и звучат слова.
«В шумном зале ресторана,
Сpедь веселья и обмана
Пpистань загyлявшего поэта.»
….
«Ах, какая женщина, какаааааая женщина»
….
«младший лейтенант, мальчик молодой»
….
«Натали! Утоли мои печали Натали»
….
Непередаваемые ощущения на грани абсурда, мета-пост-иронии, комизма и полного непонимания.
Зачем и нафига? Почему не джаз? Почему не боссанова? Почему Лепс, Фристайл и Аллегрова? 🤪
🔥4
2025 год. Типичные интервьюеры:
"Друзья, имейте ввиду, что кандидаты могут использовать AI системы для того, чтобы вас одурачить и обманом пройти этап собеседования."
2023 год.
Илья Николаевич на собеседованиях:
— Так, открывай ChatGPT (или что ты там используешь) и показывай как ты решаешь задачу вместе с ним. Как анализируешь ответы. Какие решения принимаешь.
Кандидат (в легком шоке)
— А что, так можно?
Вывод:
Чтобы быть лучшим техническим интервьюером, не надо бороться с реальностью. Надо принимать ее и использовать себе во благо.
Не надо ставить кандидата в условия, где ему нужно обманывать интервьюера.
Дайте кандидату полную свободу действий и посмотрите как он использует современные средства разработки.
Мне нужно выбрать лучших, а не самых хитрых и ловких.
Именно благодаря этому моему подходу большинство тех, кто проходил у меня технические интервью, говорят, что я один из лучших интервьюеров.
А еще я всегда дают feedback в конце интервью. Это мое железное правило.
Интервьюер: 10/10
"Друзья, имейте ввиду, что кандидаты могут использовать AI системы для того, чтобы вас одурачить и обманом пройти этап собеседования."
2023 год.
Илья Николаевич на собеседованиях:
— Так, открывай ChatGPT (или что ты там используешь) и показывай как ты решаешь задачу вместе с ним. Как анализируешь ответы. Какие решения принимаешь.
Кандидат (в легком шоке)
— А что, так можно?
Вывод:
Чтобы быть лучшим техническим интервьюером, не надо бороться с реальностью. Надо принимать ее и использовать себе во благо.
Не надо ставить кандидата в условия, где ему нужно обманывать интервьюера.
Дайте кандидату полную свободу действий и посмотрите как он использует современные средства разработки.
Мне нужно выбрать лучших, а не самых хитрых и ловких.
Именно благодаря этому моему подходу большинство тех, кто проходил у меня технические интервью, говорят, что я один из лучших интервьюеров.
А еще я всегда дают feedback в конце интервью. Это мое железное правило.
Интервьюер: 10/10
🔥8👍6
Взлом, это не игрушки. Или игрушки?
Пишет мне вчера мой давний клиент/партнер.
"Илья, у нас сайт не работает, можете посмотреть что там?"
Смотрю — сервер самопроизвольно перезагрузился час назад.
Хм. Может у хостера внештатная перезагрузка?! Редкий случай, но мало ли.
Запустили. Через час опять аналогичная ситуация. А статус-страница хостера вся зеленая; У них никаких проблем.
Начал изучать. И вот что я нашел.
Долго и методично на сервер стучался хакерский бот. Под учеткой, внимание, ⚠️ games ⚠️.
И в итоге, видимо, по-словарю, подобрали пароль. А дальше расширили себе права.
Тут и сказочке конец ☠️
К счастью ничего важного на сервере нет. Никаких серьезных проблем не случилось, да и бекапы были. Видимо, это был удачливый школьник и его бот.
Но сервер был скомпроментирован и потребовал переустановки.
Итого
Держим в чек-листе:
- Менять дефолтный порт ssh
- Запрещать вход по паролю
- Закрывать все возможные порты, кроме нужных
- Сразу при запуске сервера удалять дефольных пользователей 😬
Пишет мне вчера мой давний клиент/партнер.
"Илья, у нас сайт не работает, можете посмотреть что там?"
Смотрю — сервер самопроизвольно перезагрузился час назад.
Хм. Может у хостера внештатная перезагрузка?! Редкий случай, но мало ли.
Запустили. Через час опять аналогичная ситуация. А статус-страница хостера вся зеленая; У них никаких проблем.
Начал изучать. И вот что я нашел.
Долго и методично на сервер стучался хакерский бот. Под учеткой, внимание, ⚠️ games ⚠️.
И в итоге, видимо, по-словарю, подобрали пароль. А дальше расширили себе права.
Тут и сказочке конец ☠️
К счастью ничего важного на сервере нет. Никаких серьезных проблем не случилось, да и бекапы были. Видимо, это был удачливый школьник и его бот.
Но сервер был скомпроментирован и потребовал переустановки.
Итого
Держим в чек-листе:
- Менять дефолтный порт ssh
- Запрещать вход по паролю
- Закрывать все возможные порты, кроме нужных
- Сразу при запуске сервера удалять дефольных пользователей 😬
👍10