Как-то неожиданно для меня подключение своего nodejs-приложения к Google Calendar API оказалось довольно нетривиальной задачей. Несмотря на подробное описание вариантов подключения на русском языке пришлось продираться через лес различных настроек и конфигураций. В статье подробно изложены шаги, которые приходится совершить, чтобы интеграция завершилась успехом.
Разработчик
NEST-NEXT: Best Practices — Часть 1
Это первая часть статьи о применении комбинации технологий nest.js и NEXT.js, где будет рассмотрено создание проекта, подключение фреймворков и выбор эффективного способа работы с SSR. Во второй части можно узнать о HMR, использовании данных при SSR и разворачивании "за слешом".
AI для людей: простыми словами о технологиях
В чем разница между Artificial Intelligence, Machine Learning и Data Science?
Разграничение понятий в области искусственного интеллекта и анализа данных.
Generative AI. Как программистам держать нос по ветру
Вряд ли найдётся тот, кто ещё не знаком с ChatGPT, Midjourney, StableDiffusion - такая популярность говорит сама за себя. Хайп вокруг генеративного искусственного интеллекта (далее - ИИ) не утихает и уже начинает немного надоедать. Но мы, как разработчики, должны оставаться в курсе событий и принимать реальность такой, какая она есть.
А реальность такова:
• Использование Copilot и его аналогов, ChatGPT и других генеративных нейросетей увеличивает вашу продуктивность.
• Бизнес активно ищет возможности оптимизировать процессы или внедрить новые фичи на основе генеративного ИИ.
Давайте разберём каждое из этих утверждений.
Моя версия «прибора для осознанных сновидений» – краткая история и описание первой версии
Примечание: статья написана исключительно в ознакомительных целях, и не является призывом к повторению подобных экспериментов дома ввиду потенциального риска причинения вреда физическому здоровью (в случае использования в приборах Li-ion аккумуляторов и фоторезисторов).
Доброго времени суток, уважаемые хаброюзеры и хаброчтители) Это – моя первая серьезная статья на Хабре, посему СУДИТЕ МАКСИМАЛЬНО СТРОГО, обещаю работать над стилем и содержанием.
Как стать долларовым миллионером за 30 лет, лежа на диване
На Хабре недавно вышел пост ״Новичкам фондового рынка: честные разговоры о трейдинге״. Этот пост, опубликованный в одном из самых читаемых блогов Хабра, вводит людей в заблуждение и создает у них ложное представление о том, что игра на бирже — хороший способ заработка. Это вынудило меня написать комментарий, постепенно переросший в целую статью, с детальным разбором того, почему трейдинг — это не способ разбогатеть, а способ потерять деньги, и о том, как на самом деле заработать на инвестициях.
Буддизм с точки зрения программиста
Здравствуйте, меня зовут Сергей, я работаю JavaScript-программистом, и я - буддист. Но совсем не такой, каким вы меня только что представили. Наверняка, при прочтении слова "буддист", в вашей голове всплывает либо образ улыбчивого азиата в оранжевом одеянии, либо образ безработного хиппи-вегана, путешествующего по Индии, занимающегося йогой и ищущего "просветления" в сомнительных религиозных практиках. Так вот, я ни тот, и ни другой. Так кто же я? Чтобы ответить на этот вопрос, нужно для начала поближе познакомиться с историей буддизма.
Около трех с половиной тысяч лет назад Древняя Индия была завоевана ариями - одним из индоевропейских племен, пришедшем в Индию с предгорий Кавказа через территорию современного Ирана. Немного отклонившись от основной темы поста, скажу, что с этим завоеванием связано много интересных фактов. Именно потому, что кроме Индии эти племена завоевали также территории Европы и Ирана, все европейские, персидский и индийские языки родственны друг другу и входят в одну языковую семью. Вы же понимаете санскритское слово "веды" без перевода, верно? И именно по названию места происхождения этих племен в английском языке европеоидная раса называется caucasian race. А также именно по названию этого племени французский граф Жозев Артюр де Гобино дал имя своей печально известной расовой теории, позже популяризованной и претворенной в жизнь Адольфом Гитлером. Но давайте вернемся назад к нашей теме.
Учимся подтягиваться на одной руке по программе Пола Уэйда
Программа Тюремных Тренировок — это эффективные методы обучения по работе со своим весом. Многие из этих забытых, но действенных техник — находятся на грани исчезновения. Современный бодибилдинг поменял наше мышление, навязав ложные убеждения. Поэтому мы сняли этот фильм в Алькатрасе, вернувшись во времена, когда «Скала» была крупнейшей тюрьмой для особо опасных преступников. Пожалуй, это самое правильное место, чтобы показать методы тренировок заключённых.
Развитие стажёра через OKR
Я работаю старшим разработчиком и регулярно беру стажёров. Поэтому я часто задаюсь вопросом, как их развивать. Я сделал несколько подходов к решению, и один из них сработал.
Objectives and Key Results: инструкция по применению
Всем привет! Меня зовут Егор Толстой, я руковожу кластером App Platform в Авито. Мои команды в основном занимаются разработкой внутренних продуктов, инструментов и процессов — тем, что принято называть платформенной разработкой.
Год назад я рассказывал в этом блоге, как мы внедрили и используем performance review. Тогда я упоминал, что мы смотрим на него как на индикатор пользы, которую приносит компании каждый отдельный человек. Понимать это важно и полезно. Это помогает ответить на вопрос «насколько Вася молодец по сравнению с Петей?» и определить, какую премию кому выплатить. Но когда мы переходим на уровень команд, всё становится сильно интереснее. Здесь важно оценить конкретный результат команды и его влияние на успех компании. Высокое среднее значение перфоманса всех членов команды совсем необязательно значит, что команда достигла крутых результатов. Какая-то корреляция точно присутствует, но для оценки фактического вклада команды в успех компании этот инструмент использовать нельзя.
Для решения этой и ряда других проблем мы в Авито используем метод OKR — Objectives and Key Results. Он позволяет установить дерево понятных и легко измеримых целей во всей компании, связать результаты различных команд друг с другом и добиться достижения желаемых результатов.
С OKR мы живем вот уже почти три года. Начав с одной команды, мы масштабировали процесс до 130 разных структур — отдельных юнитов, вертикалей, кластеров, функций. В этой статье я сфокусируюсь на практических приемах того, как можно использовать OKR, чтобы получить от него пользу.
Фиксирование договоренностей прямо в чате экономя нервы, время и деньги
Всем привет, меня зовут Алексей. Я занимаюсь консалтингом стартапов и их разработкой, а также являюсь организатором нескольких крупных ИТ мероприятий.
По роду деятельности, мне приходится договариваться с большим количеством людей, начиная ИТ сферой, заканчивая звукооператором и ведущими. Очень часто договоренности происходят, конечно же, в чатах или по телефону. Так сказать, всеми любимыми способами договариваться "на бегу".
Плюсы такого метода очевидны - это быстро. Особенно учитывая возросший темп обмена информацией при помощи чатов и звонков.
Главным минусом такого подхода является ненадежность.
Заменяем Redux c помощью Observables и React Hooks
Управление состоянием — одна из важнейших задач, решаемых в разработке на React. Было создано множество инструментов в помощь разработчикам для решения этой задачи. Наиболее популярным инструментом является Redux — небольшая библиотека, созданная Дэном Абрамовым, и предназначенная помочь разработчикам использовать паттерн проектирования Flux в их приложениях. В этой статье мы разберем, действительно ли нам нужен Redux, и посмотрим, как мы можем заменить его более простым подходом, в основе которого лежат Observable и React Hooks.
Рецепт дня: готовим сообщество профессионалов, не выходя из своего отдела
Историями о профессиональных сообществах сейчас вряд ли кого-то удивишь. Гильдии образуют по разным причинам: кто-то из интереса, кто-то — чтобы быть в тренде, а кто-то из-за недостатка общения на профессиональные темы. Это история о том, как бизнес-направление компании ЦФТ, Денежные Переводы Online, желая производить больше и быстрее, в очень короткий срок утроило штат инженеров, которых не успели нормально заонбордить, и в итоге чуть не уронили качество продукта и не «сожгли» ключевых членов команды.
Доклад в виде пошагового рецепта QA-лидам, fullstack feature team-лидам, SM и всем тем, кто решает задачу эффективной настройки процессов команд, работающих совместно над одним продуктом, представила на конференции TeamLead Conf 2020 Head of Android QA одного из флагман-продуктов компании ЦФТ Надежда Потаенко.
TypeScript для конфигурации WebPack (FE and BE)
Когда проект зародился, то нравился каждому. Белый лист бумаги и каждый смотрел на него с ожиданием и воображал какие перспективы откроются, какие проблемы решатся.
Вот на бумагу архитектор нанес первый блок. Сзади раздалась ругань. Это разработчики, спорили...
Кто такой продакт-менеджер? Или не все PM’ы — проджект-менеджеры
Давайте поговорим о такой должности как Product Manager, который только появляется на рынке труда и является незаменимой для компаний, которые хотят расширяться, а также затронем отличия этой роли от роли проджект-менеджера.
Кто такой Product Manager?
Менеджер продукта — это человек, который отвечает за создание продукта или продуктов для компании. Что такое продукт? Это товар или услуга, которая создается специально для удовлетворения потребностей рынка. Продакт-менеджер работает с продуктом с момента зарождения идеи и вплоть до его «смерти». Продолжительность жизни продукта относительна и не имеет четко выраженных границ в отличие от проекта, который имеет четкие сроки и размер выделенного бюджета.
Именно в этом главное отличие двух PM’ов: продакту важен именно продукт, а проджекту — процесс реализации. К тому же, как правило, один продукт — это целый ряд проектов; в то время как проект — не равно продукт.
Задачи Product Manager’а
- Определить, кто является целевой аудиторией для продукта, и какие функции будут для нее первоочередными, а какие — второстепенными.
- Проанализировать рынок аналогичных продуктов, чтобы понимать, какие потребности ЦА они закрывают и каким образом.
- Решить, как можно привлекать пользователей (внутренний продукт) и клиентов, получать от них оплаты, а также как поддерживать их лояльность продукту (внешний рынок).
- Определить, почему клиенты прекращают пользоваться продуктом (технические недостатки, высокая цена, неподходящий функционал).
- Создавать и проверять гипотезы, чтобы потом писать технические задания командам.
- Принимать решения о том, нужно ли вообще создавать новый продукт.
- Контролировать жизненный цикл продукта и его прибыльность.
Бесплатные хостинги для веб-разработчиков
Привет, Хабр!
Одним из наиболее популярных направлений разработки сегодня является веб. И когда нужно разместить свой проект где-нибудь, кроме localhost, многие сталкиваются с трудностями, ведь хостинг должен быть быстрым, удобным и, желательно, бесплатным :)
В этом списке вы найдете 15 бесплатных сервисов, где легко сможете разместить свой проект и не заплатите ни копейки. Погнали!
Повышаем производительность в компонентах-функциях React с помощью React.memo ()
Покойся с миром, REST. Долгих лет жизни GraphQL
Перевод. Автор оригинала Samer Buna. Оригинал статьи.
Когда я впервые узнал о GraphQL после долгого использования различных REST API, то не мог удержаться от твитов такого содержания:
Rest API превратился в REST-in-Peace API. Долгих лет жизни GraphQL
Примечание переводчика – Rest In Peace, RIP – распространенная эпитафия "Покойся с миром". Первое слово в ней пишется так же, как акроним REST.
Тогда это была попытка рассмешить, но сейчас я убеждаюсь в справедливости шутливого прогноза.
Поймите правильно. Я не собираюсь обвинять GraphQL в убийстве REST или чём-то таком. REST не умрет никогда, также как XML будет жить вечно. Но кто в здравом уме станет использовать XML вместо JSON? На мой взгляд, GraphQL сделает для REST то же самое, что JSON сделал для XML.
Spring Boot + Apache Kafka и SSL в Docker контейнере
Готовый проект на github можно забрать в конце статьи
Apache Kafka – мой конспект
— Тема (Topic)
— Подписчики (consumer)
— Издатель (producer)
— Группа (group), раздел (partition)
— Потоки (streams)
Kafka — основное
При изучении Kafka возникали вопросы, ответы на которые мне приходилось эксперементально получать на примерах, вот это и изложено в этом конспекте. Как стартовать и с чего начать я дам одну из ссылок ниже в материалах.
Apache Kafka – диспетчер сообщений на Java платформе. В Kafka есть тема сообщения в которую издатели пишут сообщения и есть подписчики в темах, которые читают эти сообщения, все сообщения в процессе диспетчеризации пишутся на диск и не зависит от потребителей.
Information
- Rating
- Does not participate
- Location
- Фрязино, Москва и Московская обл., Россия
- Date of birth
- Registered
- Activity