Как стать автором
Обновить
13
0
Олег Мифле @OlegMifle

php deveoper

Отправить сообщение

Ретроспектива по шагам. Рецепт

Время на прочтение9 мин
Количество просмотров54K

Все, кто слышал про Scrum, скорее всего слышали про его основные мероприятия: планирование, пятиминутка (stand-up), обзор спринта и ретроспектива. Многие слышали, инструментов для проведения ретроспектив много, "обучающих" материалов ещё больше, но всё как-то не выходит. Или вроде как выходит, но почему-то команда не хочет в этом участвовать. В этой статье я представлю свой рецепт проведения ретроспектив, не только представив конкретные и детальные шаги, но и попробовав объяснить, почему шаги именно такие и в такой формулировке.

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Комментарии20

Photo2recipe:  рецепт блюда по одному фото

Время на прочтение8 мин
Количество просмотров5.2K

В данном посте мы расскажем о нашем фреймворке, который по фотографии еды определяет, из каких ингредиентов состоит блюдо, а затем предлагает несколько вариантов рецептов его приготовления. Кстати, весь код проекта есть на github.

Наш алгоритм состоит из двух частей. На первом этапе он определяет состав блюда по фото, а затем на основании предсказанных ингредиентов предлагает наиболее подходящий рецепт блюда из базы рецептов. То, что рецепты подбираются именно из базы, а не генерируются нейросетью, позволяет избежать рекомендации несуществующих рецептов. А также не возникает проблем с тем, что сочетание несочетаемых продуктов (упс, нейросеть ошиблась) в рецепте может вызвать нежелательные побочные эффекты при пищеварении. Более того, то, что алгоритм состоит из двух отдельных этапов позволяет легко адаптировать его под особенности той или иной кухни: достаточно просто заменить коллекцию рецептов.

Читать далее
Всего голосов 13: ↑13 и ↓0+13
Комментарии18

Небольшой модуль для работы с dnevnik.ru на python

Время на прочтение5 мин
Количество просмотров10K

Привет, Хабр. Это моя первая статья, и сегодня я хочу рассказать вам про свой первый модуль на python. Называется он dnevnikru. Я написал его для облегчения работы с сайтом дневника. Работает модуль по принципу парсера, а не получает данные через API.

Идея написать такой модуль пришла мне после идеи написать телеграм бота для просмотра оценок и домашних заданий из Дневника.ру

Читать далее
Всего голосов 15: ↑14 и ↓1+13
Комментарии18

Лучший язык программирования

Время на прочтение6 мин
Количество просмотров109K

Вопрос, который часто задают начинающие программисты — какой язык программирования изучать? Вопрос звучит разумно. Хочется выбрать самый лучший, чтобы потом не пришлось переучиваться.

Можно ли на него ответить?

Читать далее
Всего голосов 221: ↑213 и ↓8+244
Комментарии207

Подборка полезных библиотек для Python с примерами #1

Время на прочтение9 мин
Количество просмотров19K

У Python одно из самых больших комьюнити. Этот язык любят за его простоту, лояльность и за его универсальность, которая была достигнута созданием огромного числа библиотек и фреймворков, таких как numpy, django, flask, pygame, tornado, tensorflow и других. На сайте pypi содержится более 320 тысяч проектов от малоизвестных и заброшенных до огромных, которыми пользуются миллионы людей в различных сферах. 

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

Ознакомиться
Всего голосов 13: ↑13 и ↓0+13
Комментарии4

Гайд начинающего тимлида

Время на прочтение14 мин
Количество просмотров54K

В данной статье хотелось бы помочь разобраться в профессии начинающим тимлидам, или тем, кто об этом только думает.

Всё это я проговаривал на вебинаре в Хекслете тут https://www.youtube.com/watch?v=y_HkXvFovAc

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

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

Читать далее
Всего голосов 42: ↑40 и ↓2+47
Комментарии16

Dependency Injection в мире Software Engineering

Время на прочтение22 мин
Количество просмотров28K

Вокруг Dependency Injection много инженерных практик. Несмотря на то, что эта статья про конкретный подход к написанию кода, она будет интересна широкому кругу разработчиков. Я постарался провести глубокий анализ существующих около Dependency Injection принципов разработки и хочу поделиться исследованием с сообществом.

Читать далее
Всего голосов 24: ↑23 и ↓1+27
Комментарии9

Symfony и Гексагональная архитектура

Время на прочтение8 мин
Количество просмотров15K

В данной статье мы коротко пройдемся по теории и на практике разберемся как перевести любое Legacy приложение на гексагональную архитектуру. Повествование будет в контексте фреймворка Symfony и PHP 7.4, но синтаксис приведенных примеров настолько прост что вы без труда поймете как сделать так же на вашем языке программирования (если он поддерживает ООП).


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

Читать дальше →
Всего голосов 6: ↑6 и ↓0+6
Комментарии3

Как выучить иностранный язык: алгоритм

Время на прочтение13 мин
Количество просмотров161K

Если вы хоть немного пересекались с Machine Learning, то понимаете, что человеческий мозг — это, по сути, большая нейросеть. А раз так, то и работу с ним можно строить по известным в ML алгоритмам. Так я нашел универсальный способ выучить любой иностранный язык до нормального уровня в разумные сроки. И на себе проверил его эффективность.

Читать далее
Всего голосов 56: ↑50 и ↓6+62
Комментарии123

Олды в ИТ

Время на прочтение18 мин
Количество просмотров89K

Когда ты молод, ты «бессмертен» и не задумываешься о старости. Есть просто уверенность, что если много и хорошо работать, то твоя карьера и доходы будут неуклонно расти. Следуя этой стратегии, ты развиваешься в профессии уже 15, 20, 30 лет. За эти годы уже получил огромный опыт и, наверное, он обязательно поможет безбедно и интересно прожить остаток дней. Но все не так просто. Да, ты уже давно работаешь в хорошей компании, занимаешься интересными проектами, получаешь за это достойную зарплату, но в будущем уже не так уверен, как раньше. Профессиональный возраст приходит с массой вопросов, на которые нужно ответь стратегически.

 Эта статья родилась на основе обсуждения горячей темы «Олды в ИТ», которую 4 января 2021 г. мы записали для подкаста Linkmeup. Обязательно послушайте запись здесь или в любимом подкаст-приложении.

Читать далее
Всего голосов 144: ↑137 и ↓7+174
Комментарии435

PHP 8 — Что нового?

Время на прочтение19 мин
Количество просмотров135K

PHP, начиная с 7 версии, кардинально изменился. Код стал куда быстрее и надёжнее, и писать его стало намного приятнее. Но вот, уже релиз 8 версии! Ноябрь 26, 2020 — примерно на год раньше, чем обещали сами разработчики. И всё же, не смотря на это, мажорная версия получилась особенно удачной. В этой статье я попытаюсь выложить основные приятные изменения, которые мы должны знать.


1. JIT


Как говорят сами разработчики, они выжали максимум производительности в 7 версии (тем самым сделав PHP наиболее шустрым среди динамических ЯПов). Для дальнейшего ускорения, без JIT-компилятора не обойтись. Справедливости ради, стоит сказать, что для веб-приложений использование JIT не сильно улучшает скорость обработки запросов (в некоторых случаях скорость будет даже меньше, чем без него). А вот, где нужно выполнять много математических операций — там прирост скорости очень даже значительный. Например, теперь можно делать такие безумные вещи, как ИИ на PHP.
Включить JIT можно в настройках opcache в файле php.ini.
Подробнее 1 | Подробнее 2 | Подробнее 3


2. Аннотации/Атрибуты (Attributes)


Все мы помним, как раньше на Symfony код писался на языке комментариев. Очень радует, что такое теперь прекратится, и можно будет использовать подсказки любимой IDE, функция "Find usages", и даже рефакторинг!


Забавно, что символ # также можно было использовать для создания комментариев. Так что ничего не меняется в этом мире.
Читать дальше →
Всего голосов 26: ↑23 и ↓3+31
Комментарии58

Анимированное руководство по базовым механизмам React

Время на прочтение4 мин
Количество просмотров19K
Автор заметки, перевод которой мы сегодня публикуем, говорит, что существует пропасть между использованием React для разработки пользовательских интерфейсов и необходимостью знать о том, как работает React на самом деле. Многие, применяющие React на практике, не знают о том, что происходит в недрах этой библиотеки. Здесь, в анимированной форме, будут рассмотрены некоторые ключевые процессы, происходящие в React при формировании пользовательских интерфейсов.


Читать дальше →
Всего голосов 28: ↑25 и ↓3+22
Комментарии34

Как использовать группы в Facebook для продвижения: создаем паутину

Время на прочтение5 мин
Количество просмотров9.4K
image

Facebook меняет ленту. На официальной конференции F8 30 апреля и 1 мая первые лица компании анонсировали нововведения. В числе прочего фокус на формирование личного пространства.
Чувствовать свою принадлежность легче, когда вы находитесь в небольших сообществах и среди ближайших друзей. В то время как мир становится больше и всё более связанным, нам как никогда нужно это чувство близости.
Если перевести на понятный русский язык, то в перспективе в Facebook будут развиваться:

  • группы,
  • сторис,
  • мессенджер.

Сегодня поговорим о том, как использовать группы для продвижения. И первое что надо помнить: органический трафик Facebook ушел почти полностью в группы.

Да-да, еще недавно я писал статью “Не создавайте группы”. И нисколько не отказываюсь от ее смысла: не создавайте группы – используйте существующие. Потому что есть и вторая статья “Как работает группа: лес вокруг горы”, в которой наглядно показываю, как неграмотное управление группой приводит к деградации сообщества. Группы в Facebook – интересный инструмент с богатыми возможностями. Которыми надо уметь пользоваться. Непонимание механизма работы приводит к плачевным результатам. Сегодня поговорим как раз об этом: как использовать группы для личного продвижения.
Читать дальше →
Всего голосов 15: ↑12 и ↓3+9
Комментарии0

Делаем современное веб-приложение с нуля

Время на прочтение31 мин
Количество просмотров152K
Итак, вы решили сделать новый проект. И проект этот — веб-приложение. Сколько времени уйдёт на создание базового прототипа? Насколько это сложно? Что должен уже со старта уметь современный веб-сайт?

В этой статье мы попробуем набросать boilerplate простейшего веб-приложения со следующей архитектурой:


Что мы покроем:

  • настройка dev-окружения в docker-compose.
  • создание бэкенда на Flask.
  • создание фронтенда на Express.
  • сборка JS с помощью Webpack.
  • React, Redux и server side rendering.
  • очереди задач с RQ.
Читать дальше →
Всего голосов 64: ↑56 и ↓8+48
Комментарии125

Как айтишнику найти работу в США и ЕС: 9 лучших ресурсов

Время на прочтение5 мин
Количество просмотров168K
Мировой рынок IT стремительно развивается. С каждым годом профессия разработчика софта становится все более востребованной — уже в 2017 году в мире насчитывался примерно 21 миллион программистов различных направлений.

К сожалению, русскоговорящий рынок IT находится еще на начальной стадии развития — уже есть крупные и успешные проекты, но рынок еще долго не сможет сравняться с европейским и американским, которые производят до 85% всех IT-продуктов мира.
Читать дальше →
Всего голосов 53: ↑52 и ↓1+51
Комментарии25

Цель важнее кода

Время на прочтение4 мин
Количество просмотров11K

У программы есть цель, о которой иногда забывают



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

Кажется, программисты забыли о предназначении программного обеспечения — решать проблемы реального мира.

50 лет назад, в 1968 году, прошла Рабочая конференция по инжинирингу ПО, организованная Комитетом по науке НАТО. Тогда стали замечать, что программное обеспечение становится фундаментальной частью общества. И одновременно его становится труднее понять. После этой конференции программирование начало превращаться в настоящую индустрию. Оно начало уходить из-под контроля бизнеса.
Читать дальше →
Всего голосов 30: ↑30 и ↓0+30
Комментарии15

Плюсы и минусы ведения бизнеса в США: наблюдения после года развития своей компании

Время на прочтение9 мин
Количество просмотров40K


В прошлом году я рассказывал на Хабре о том, как получил визу О1 и переехал в США развивать собственный бизнес. В комментариях читатели задавали вопросы о том, каково это работать на себя в Америке. И если тогда мой опыт был слишком скудным, чтобы ответить, то теперь после года активной работы впечатлений накопилось достаточно. Так что сегодня я расскажу о плюсах и минусах запуска собственного бизнеса в Штатах.

Disclaimer: данная статья отражает лишь мой личный опыт и содержит суждения, которые могут не быть стопроцентно верными — так что если вы хотите использовать материал в качестве основы для принятия каких-либо решений, учитывайте этот факт.
Читать дальше →
Всего голосов 64: ↑61 и ↓3+58
Комментарии195

Как работает JS: отслеживание изменений в DOM с помощью MutationObserver

Время на прочтение7 мин
Количество просмотров55K
Сегодня, в переводе десятого материала из серии, посвящённой особенностям работы механизмов JavaScript, мы расскажем о том, как отслеживать изменения в DOM с помощью API MutationObserver.

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



Всё это ведёт к усложнению задачи контроля состояния интерфейсов приложений в процессе их жизненного цикла. Эта задача становится ещё масштабнее в том случае, если речь идёт о разработке чего-то вроде фреймворка или даже обычной библиотеки, когда, например, нужно реагировать на то, что происходит со страницей и выполнять какие-то действия, зависящие от DOM.
Читать дальше →
Всего голосов 24: ↑22 и ↓2+20
Комментарии7

Как делать лучшие сайты в России

Время на прочтение12 мин
Количество просмотров24K


1 марта состоялась церемония награждения конкурса «Золотой сайт-2017», на следующий день были опубликованы оценки компетентного жюри. Еще осенью прошлого года автор этой статьи решил принять участие в этом увлекательном мероприятии, и процесс из серьезного (что подразумевалось вначале) превратился в интересный (что получилось в результате). Хотелось бы поделиться некоторыми трендами веб-разработки, которые проявились в сайтах, победивших в конкурсе.

Всего голосов 45: ↑38 и ↓7+31
Комментарии129

Внедрение Scrum'a технарем: реальный опыт, подводные камни, tips&tricks

Время на прочтение8 мин
Количество просмотров18K
В последние годы внедрение agile-методологий в разработку ПО стало целой индустрией: по этой теме выпускается специальная литература, собираются тематические конференции, устраиваются тренинги. На рынке труда возникли совершенно новые профессии, такие как agile-коуч или скрам-мастер. Появились целые компании, которые специализируются на внедрении гибких методологий в других компаниях.

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

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

В таких условиях у разработчика есть два пути: продолжать терпеть или брать инициативу в свои руки.

Я выбрал второе и сегодня расскажу об опыте внедрения скрама в компании будучи не менеджером, а техническим специалистом. Под катом реальный опыт, подводные камни и практические советы тем кто отважился.
Читать дальше →
Всего голосов 24: ↑23 и ↓1+22
Комментарии11

Информация

В рейтинге
Не участвует
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Дата рождения
Зарегистрирован
Активность

Специализация

Backend Developer
Lead
PHP
TypeScript
PostgreSQL
MySQL
Golang
REST
Angular
React
Docker
Redis