Forwarded from Одиссея Кода
Немного выпал из учебной жизни, ездил на родину Страды 😜
Отдохнул, переключился — и вот уже вернулся в рабочий режим.
В прошлую пятницу закончился мой второй месяц обучения.
Описывать подробно, чем я занимался в этот раз, не буду. Оставлю это на следующий месяц, потому что в этом ритм учёбы был очень рваный. Я то писал код 3–4 дня почти по 10 часов, то 2–3 дня занимался рабочими и домашними делами или отдыхал. Из итогов могу отметить, что я закончил 3-й модуль и сегодня вот сделал чуть больше трети 4-го. Познакомился базово с тестами, с архитектурой папок, которая принята в Go-проектах, и с веб-сервером Gin.
А по поводу рваного ритма в учёбе: я заметил, что это в целом всегда так происходит. Когда я учился на других курсах, у меня первый месяц-полтора тоже были довольно насыщенные: отчёты каждую неделю, занятия ровно по графику, всё красиво и чётко. Но потом другие дела возвращаются и ломают идеальную картинку, которую мы себе представляем в голове.
Если вы перфекционист, это может побудить вас всё бросить, повесив табличку: «Это, наверное, не моё». Но если постараться подстроиться под изменения графика, выкинуть из головы красивые картинки, которые многие видели в соцсетях, где люди "красиво" учатся — процесс будет продолжаться.
Самое главное правило в учёбе, которое я себе повторяю каждое утро: «Дисциплина — прежде всего». Это действует на меня как магическое заклинание. Даже небольшие усилия лучше, чем отказ от борьбы.
Отдохнул, переключился — и вот уже вернулся в рабочий режим.
В прошлую пятницу закончился мой второй месяц обучения.
Описывать подробно, чем я занимался в этот раз, не буду. Оставлю это на следующий месяц, потому что в этом ритм учёбы был очень рваный. Я то писал код 3–4 дня почти по 10 часов, то 2–3 дня занимался рабочими и домашними делами или отдыхал. Из итогов могу отметить, что я закончил 3-й модуль и сегодня вот сделал чуть больше трети 4-го. Познакомился базово с тестами, с архитектурой папок, которая принята в Go-проектах, и с веб-сервером Gin.
А по поводу рваного ритма в учёбе: я заметил, что это в целом всегда так происходит. Когда я учился на других курсах, у меня первый месяц-полтора тоже были довольно насыщенные: отчёты каждую неделю, занятия ровно по графику, всё красиво и чётко. Но потом другие дела возвращаются и ломают идеальную картинку, которую мы себе представляем в голове.
Если вы перфекционист, это может побудить вас всё бросить, повесив табличку: «Это, наверное, не моё». Но если постараться подстроиться под изменения графика, выкинуть из головы красивые картинки, которые многие видели в соцсетях, где люди "красиво" учатся — процесс будет продолжаться.
Самое главное правило в учёбе, которое я себе повторяю каждое утро: «Дисциплина — прежде всего». Это действует на меня как магическое заклинание. Даже небольшие усилия лучше, чем отказ от борьбы.
❤🔥9🔥7
Forwarded from tATAR4Anel (Ivanius)
Прошел 2-й рабочий день
Вы не представляете какой кайф работать за норм техникой спустя 2 года страданий на старом гавне
Происходит жесточайший выход из зоны комфорта, я снова ниче не понимаю, голова взрывается от количества поступаемой информации, а поступать она не перестает, но мне оч нравится!!! свитч в новый стек точно стоил того, я снова сижу с горящими глазами и кайфую от того, че происходит
Вы не представляете какой кайф работать за норм техникой спустя 2 года страданий на старом гавне
Происходит жесточайший выход из зоны комфорта, я снова ниче не понимаю, голова взрывается от количества поступаемой информации, а поступать она не перестает, но мне оч нравится!!! свитч в новый стек точно стоил того, я снова сижу с горящими глазами и кайфую от того, че происходит
🔥14❤6❤🔥3
Forwarded from tATAR4Anel (Ivanius)
1-й месяц моей работы!
Прошел уже целый месяц с момента моего выхода на новое место, текущий опыт погружения очень сильно разнится с тем, что было несколько лет назад (гордо заявляю, что я писал код без ии), что связано и с развитием нейросетей и с наработанным опытом, за месяц я полностью отрефакторил 8 сервисов в рамках задачи на погружение в проект
Само собой поэкспериментировать и заняться творчеством на работе мне не дадут, поэтому сейчас совмещаю работу со страдой, постоянно возвращаясь в родную alma mater, на данный момент переписал весь 5-й модуль и приступаю к 6, недавно дошел до мысли, что это уже моя 3-я программа страды, которая кардинально поменяла мою жизнь и мышление, тут мне показали как можно и как надо за что еще 100 мильенов раз спасибо STRADA🙏🙏🙏
Прошел уже целый месяц с момента моего выхода на новое место, текущий опыт погружения очень сильно разнится с тем, что было несколько лет назад (гордо заявляю, что я писал код без ии), что связано и с развитием нейросетей и с наработанным опытом, за месяц я полностью отрефакторил 8 сервисов в рамках задачи на погружение в проект
Само собой поэкспериментировать и заняться творчеством на работе мне не дадут, поэтому сейчас совмещаю работу со страдой, постоянно возвращаясь в родную alma mater, на данный момент переписал весь 5-й модуль и приступаю к 6, недавно дошел до мысли, что это уже моя 3-я программа страды, которая кардинально поменяла мою жизнь и мышление, тут мне показали как можно и как надо за что еще 100 мильенов раз спасибо STRADA🙏🙏🙏
🔥13❤4🎉1
Фронтенд роадмап ВСЁ!
Историческое событие для Страда и «совет» по выбору стэка в 2026:
Сегодня закрываем ФР на платформе и переносим все силы на бэкенд
— Golang Бэкенд
— Системный Дизайн
пс. доступ к старым ФР потокам останется
псс. но если залетать — то лучше на ГО (бэкенд)
Историческое событие для Страда и «совет» по выбору стэка в 2026:
Сегодня закрываем ФР на платформе и переносим все силы на бэкенд
— Golang Бэкенд
— Системный Дизайн
пс. доступ к старым ФР потокам останется
псс. но если залетать — то лучше на ГО (бэкенд)
⚡10😈4🤝4
Forwarded from KULIZHNIKOV.WEB|РОСТ СКВОЗЬ IT
ЗАКАНЧИВАЮ 4-Й МОДУЛЬ БЕКЕНДА НА GOLANG
ВПЕРЕДИ ЕЩЁ 4 МЕСЯЦА 🚀
Всем привет, я херачу каждый день не покладая рук 😈
Хочу поделиться как в старые добрые, чему научился!)
Что теперь умею 🤔 ?
Я добрался до полноценной работы с API, используя архитектуру REST
Научился писать CRUD-операции, используя как чистый HTTP, так и Gin фреймворк 🔥
Теперь я не только формашлёп, но и крудошлёп 🥲🤣
Я познакомился с тестированием и дико кайфанул от этого!
Изучил, как писать:
- unit-тесты
- интеграционные тесты
- E2E-тесты
Раньше тесты казались чем-то вроде дополнительной работы, которую нужно делать, потому что так правильно, а сейчас я начал понимать, насколько это полезная штука!
У меня на рабочем проекте тестов нет, но сейчас я точно понимаю, что их капец как не хватает 😔
Самое крутое, что тесты проверяют архитектуру приложения, если тесты писать сложно - значит плохая архитектура и нужно срочно её менять!!!
Также благодаря тестам проще замечать проблемы после изменений и не бояться развивать проект дальше - это то, чего мне не хватает на рабочем проекте, так как иногда бывает, что через 3 стенда баг доходит до прода и обнаруживается уже там 🤭
Кроме этого я поработал с Swagger и Postman? 🛠
- научился описывать API через Swagger, чтобы было понятно, какие ручки есть в приложении и как с ними работать фронтендерам
- познакомился с Postman, научился загружать туда конфигурацию Swagger и проверять свои ручки, очень удобно)
- познакомился с Makefile
Впервые в жизни поработал с базой данных 🗄
Мы начали с SQLite, далее будет PostgreSQL
Изучил базовые методы, функции для написания SQL запросов, мне нравится!)
Тренируюсь дополнительно писать запросы здесь 📎
Меня учили правильно строить архитектуру на strada
Я начал лучше понимать, что такое чистый код и зачем вообще нужна архитектура приложения!
В моем случае приложение "Кинопоиск" разделено на слои:
- handler — принимает запросы и обрабатывает взаимодействие с HTTP
- service — содержит бизнес-логику
- repo — отвечает за работу с данными
- model — описывает структуры данных
Все слои взаимодействуют друг с другом через интерфейсы, а не напрямую через конкретные реализации
Зачем это нужно❓
Чтобы каждый слой меньше зависел от внутреннего устройства остальных и его было проще менять, тестировать и развивать
Например, можно тестировать сервис отдельно от реальной базы данных, подменив реализацию репозитория
И вот когда начинаешь писать тесты для такой архитектуры, постепенно понимаешь, зачем вообще всё это разделение нужно 😎
Потихоньку приходит мидловский\сеньорский опыт, начинаю понимать что такое архитектура на разных уровнях приложения, и также что написать работающий код - это только часть задачи, важно еще сделать так, чтобы это всё было легко и просто масштабировать 💯
По итогу 👇
- 4-й модуль скорее всего закрою на этой-следующей неделе
- изучил новые подходы, инструменты, стал немного умнее и прокаченнее
- начинаю видеть, как отдельные знания складываются в единую картину
Обнял и до следующего поста ;)
Letssss goo, baby 🤟
К ставит реакции, ставьте + в комментах!!!!
Интересно узнать, кто у меня здесь активничает 😇
ВПЕРЕДИ ЕЩЁ 4 МЕСЯЦА 🚀
Всем привет, я херачу каждый день не покладая рук 😈
Хочу поделиться как в старые добрые, чему научился!)
Что теперь умею 🤔 ?
Я добрался до полноценной работы с API, используя архитектуру REST
Научился писать CRUD-операции, используя как чистый HTTP, так и Gin фреймворк 🔥
CRUD - это основные операции с данными: создать, получить, обновить и удалить
Теперь я не только формашлёп, но и крудошлёп 🥲🤣
Я познакомился с тестированием и дико кайфанул от этого!
Изучил, как писать:
- unit-тесты
- интеграционные тесты
- E2E-тесты
Раньше тесты казались чем-то вроде дополнительной работы, которую нужно делать, потому что так правильно, а сейчас я начал понимать, насколько это полезная штука!
У меня на рабочем проекте тестов нет, но сейчас я точно понимаю, что их капец как не хватает 😔
Самое крутое, что тесты проверяют архитектуру приложения, если тесты писать сложно - значит плохая архитектура и нужно срочно её менять!!!
Также благодаря тестам проще замечать проблемы после изменений и не бояться развивать проект дальше - это то, чего мне не хватает на рабочем проекте, так как иногда бывает, что через 3 стенда баг доходит до прода и обнаруживается уже там 🤭
Кроме этого я поработал с Swagger и Postman? 🛠
- научился описывать API через Swagger, чтобы было понятно, какие ручки есть в приложении и как с ними работать фронтендерам
- познакомился с Postman, научился загружать туда конфигурацию Swagger и проверять свои ручки, очень удобно)
- познакомился с Makefile
Если коротко, это файл, в котором можно описывать команды для выполнения разных задач проекта
Чтобы не писать каждый раз длинные команды вручную, можно просто вызвать нужную команду через make
Впервые в жизни поработал с базой данных 🗄
Мы начали с SQLite, далее будет PostgreSQL
Изучил базовые методы, функции для написания SQL запросов, мне нравится!)
Тренируюсь дополнительно писать запросы здесь 📎
Меня учили правильно строить архитектуру на strada
Я начал лучше понимать, что такое чистый код и зачем вообще нужна архитектура приложения!
В моем случае приложение "Кинопоиск" разделено на слои:
- handler — принимает запросы и обрабатывает взаимодействие с HTTP
- service — содержит бизнес-логику
- repo — отвечает за работу с данными
- model — описывает структуры данных
Все слои взаимодействуют друг с другом через интерфейсы, а не напрямую через конкретные реализации
Зачем это нужно❓
Чтобы каждый слой меньше зависел от внутреннего устройства остальных и его было проще менять, тестировать и развивать
Например, можно тестировать сервис отдельно от реальной базы данных, подменив реализацию репозитория
И вот когда начинаешь писать тесты для такой архитектуры, постепенно понимаешь, зачем вообще всё это разделение нужно 😎
Раньше я просто писал всё в разных файлах, но импортировал один в другой, радовался что оно работает и думал, что у меня нормальная архитектура 😂
Потихоньку приходит мидловский\сеньорский опыт, начинаю понимать что такое архитектура на разных уровнях приложения, и также что написать работающий код - это только часть задачи, важно еще сделать так, чтобы это всё было легко и просто масштабировать 💯
По итогу 👇
- 4-й модуль скорее всего закрою на этой-следующей неделе
- изучил новые подходы, инструменты, стал немного умнее и прокаченнее
- начинаю видеть, как отдельные знания складываются в единую картину
Обнял и до следующего поста ;)
Letssss goo, baby 🤟
К ставит реакции, ставьте + в комментах!!!!
Интересно узнать, кто у меня здесь активничает 😇
❤2🔥1
пыха навела вчера шороху!
выбирай 👉️️️️️️ правильный бэкенд
https://www.reddit.com/r/cybersecurity/comments/1xbou5n/php_critical_remote_code_execution/
выбирай 👉️️️️️️ правильный бэкенд
https://www.reddit.com/r/cybersecurity/comments/1xbou5n/php_critical_remote_code_execution/
Reddit
From the cybersecurity community on Reddit: PHP: Critical remote code execution vulnerabilities, update now
Explore this post and more from the cybersecurity community
🤝4❤2
Forwarded from GOшник по фронтенду 👨💻
Прошёл 2 модуль Golang-роадмапа
Во 2 модуле происходит поэтапное наслоение новых тем на кодовую базу приложения "Календарь событий". Уделено внимание распределению кода по пакетам, определению ответственности и взаимодействия между друг другом.
Теперь я знаю и умею:
- создавать модуль и делать сборку приложения;
- добавлять и использовать пакеты других разработчиков;
- создавать UUID (уникальный ID) для сущностей;
- создавать методы у структур;
- делать сериализацию данных;
- делать отложенный вызов функции с помощью defer;
- организовывать работу пользователя с приложением через командную строку;
- логировать сообщения об ошибках и информационные сообщения;
- публиковать своё приложение как пакет для других разработчиков.
Я познакомился с интерфейсами, типизацией, композицией, горутинами, каналами, таймерами, мутексом, колбэками; поработал с ошибками и тестами.
На темах с горутинами и каналами в приложении происходит очередное наслаивание логики, и вот этот симбиоз новых терминов и логики немного запутывает. Тут я использовал тактику прямого, долгого и медленного вчитывания с лицом-камнем, и в итоге стало понятнее.
Вообще это весьма душные темы для меня, выглядящие как большой и страшный слон, к которому неохота подходить; вызывающие прям сильное отторжение.
По аналогии во фронтенде, например, такими душными темами для меня являются замыкания, промисы и эвент луп.
Отторжение возникает уже на этапе, как я вижу этот термин. Бррр...
В ходе написания поста я задумался - почему так? Ведь при создании и использовании переменных такого нет. И ответ кроется в примере: нужно сделать сложное простым. Сидеть с лицом-камнем, разбираясь в сложной теме, и повторять и упрощать, повторять и упрощать, повторять и упрощать...
Уф, как же ещё хочется посмотреть двести записей созвонов, сто роликов на ютубе и прочитать десятки книг, чтобы наконец-то понять горутины и каналы и преисполниться (нет) в знании голанга на 100%. Чтобы в итоге что? А хз.
Кстати, 2 модуль я проходил в сентябре 2025 г.: время капец как летит.
Тогда самым сложным заданием этого модуля была запись демки приложения. Начинаешь записывать: плохо говоришь, несёшь бред, попутно ещё баги находишь -> фиксишь, начинаешь запись заново. А потом ещё этот стыд выкладываешь публично среди участников.
Сейчас, проходя повторно, за неимением особого смысла я это задание пропустил.
Ах, какого классного и оперативного ИИшного ревьювера завезли в страду - просто отвал бровей.
Да, Артём был прав насчёт ведения канала. В ходе написания поста начинаешь рефлексировать, больше понимать, ловить инсайты и знать - ну вообще-то я молодец и капитальный красавчик. Так что ведите каналы или дневники, возможно, для вас это будет реально полезно.
Во 2 модуле происходит поэтапное наслоение новых тем на кодовую базу приложения "Календарь событий". Уделено внимание распределению кода по пакетам, определению ответственности и взаимодействия между друг другом.
Теперь я знаю и умею:
- создавать модуль и делать сборку приложения;
- добавлять и использовать пакеты других разработчиков;
- создавать UUID (уникальный ID) для сущностей;
- создавать методы у структур;
- делать сериализацию данных;
- делать отложенный вызов функции с помощью defer;
- организовывать работу пользователя с приложением через командную строку;
- логировать сообщения об ошибках и информационные сообщения;
- публиковать своё приложение как пакет для других разработчиков.
Я познакомился с интерфейсами, типизацией, композицией, горутинами, каналами, таймерами, мутексом, колбэками; поработал с ошибками и тестами.
На темах с горутинами и каналами в приложении происходит очередное наслаивание логики, и вот этот симбиоз новых терминов и логики немного запутывает. Тут я использовал тактику прямого, долгого и медленного вчитывания с лицом-камнем, и в итоге стало понятнее.
Вообще это весьма душные темы для меня, выглядящие как большой и страшный слон, к которому неохота подходить; вызывающие прям сильное отторжение.
По аналогии во фронтенде, например, такими душными темами для меня являются замыкания, промисы и эвент луп.
Отторжение возникает уже на этапе, как я вижу этот термин. Бррр...
В ходе написания поста я задумался - почему так? Ведь при создании и использовании переменных такого нет. И ответ кроется в примере: нужно сделать сложное простым. Сидеть с лицом-камнем, разбираясь в сложной теме, и повторять и упрощать, повторять и упрощать, повторять и упрощать...
Уф, как же ещё хочется посмотреть двести записей созвонов, сто роликов на ютубе и прочитать десятки книг, чтобы наконец-то понять горутины и каналы и преисполниться (нет) в знании голанга на 100%. Чтобы в итоге что? А хз.
Кстати, 2 модуль я проходил в сентябре 2025 г.: время капец как летит.
Тогда самым сложным заданием этого модуля была запись демки приложения. Начинаешь записывать: плохо говоришь, несёшь бред, попутно ещё баги находишь -> фиксишь, начинаешь запись заново. А потом ещё этот стыд выкладываешь публично среди участников.
Сейчас, проходя повторно, за неимением особого смысла я это задание пропустил.
Ах, какого классного и оперативного ИИшного ревьювера завезли в страду - просто отвал бровей.
Да, Артём был прав насчёт ведения канала. В ходе написания поста начинаешь рефлексировать, больше понимать, ловить инсайты и знать - ну вообще-то я молодец и капитальный красавчик. Так что ведите каналы или дневники, возможно, для вас это будет реально полезно.
🔥8⚡5