Как Spotify отслеживает размеры приложений
Наши ежедневные задачи как инженеров часто связаны с внедрением новых функциональных возможностей. Существующие пользователи получают возможность пользоваться преимуществами этих функций, для новых пользователей это причина подписаться на приложение, а мы получаем возможность писать больше кода. На первый взгляд, это идеальные симбиотические отношения - беспроигрышный сценарий, когда все довольны и ничего не может пойти не так, правильно?
Неправильно, иногда новая отличная функция приносит больше вреда, чем пользы. Причина проста - размер приложения. Любое дополнение к приложению - будь то код для новой функции, ресурс изображения для новой кнопки или даже поддержка новой локализации - приводит к увеличению размера приложения. Вы можете спросить: "Неужели это действительно проблема в нашем современном мире?". Мы утверждаем, что да.
Статья: https://apptractor.ru/info/articles/kak-spotify-otslezhivaet-razmery-prilozheniy.html
Наши ежедневные задачи как инженеров часто связаны с внедрением новых функциональных возможностей. Существующие пользователи получают возможность пользоваться преимуществами этих функций, для новых пользователей это причина подписаться на приложение, а мы получаем возможность писать больше кода. На первый взгляд, это идеальные симбиотические отношения - беспроигрышный сценарий, когда все довольны и ничего не может пойти не так, правильно?
Неправильно, иногда новая отличная функция приносит больше вреда, чем пользы. Причина проста - размер приложения. Любое дополнение к приложению - будь то код для новой функции, ресурс изображения для новой кнопки или даже поддержка новой локализации - приводит к увеличению размера приложения. Вы можете спросить: "Неужели это действительно проблема в нашем современном мире?". Мы утверждаем, что да.
Статья: https://apptractor.ru/info/articles/kak-spotify-otslezhivaet-razmery-prilozheniy.html
Tesla выложила в open source всю конструкцию и инжиниринг оригинального Roadster
Компания Tesla выложила в открытый доступ все конструкторские и инженерные разработки оригинального автомобиля Roadster. Сюда входит все - от руководств пользователя до схем и разъемов. Выпуск нового поколения Roadster отстает от графика на несколько лет. Обнародование дизайна может быть намеком на то, что выпуск нового поколения Roadster близок к завершению. В начале этого года Элон Маск заявил, что окончательный дизайн и проектирование Roadster будут завершены к концу 2023 года, поэтому производство автомобиля должно начаться к концу 2024 года.
Исходники: https://service.tesla.com/roadster
Компания Tesla выложила в открытый доступ все конструкторские и инженерные разработки оригинального автомобиля Roadster. Сюда входит все - от руководств пользователя до схем и разъемов. Выпуск нового поколения Roadster отстает от графика на несколько лет. Обнародование дизайна может быть намеком на то, что выпуск нового поколения Roadster близок к завершению. В начале этого года Элон Маск заявил, что окончательный дизайн и проектирование Roadster будут завершены к концу 2023 года, поэтому производство автомобиля должно начаться к концу 2024 года.
Исходники: https://service.tesla.com/roadster
Размышления о 18 лет в Google
Еще не поздно излечить Google. Для этого потребуется произвести некоторые перестановки в руководстве компании, перенести центр власти из кабинета финансового директора обратно к человеку с четким долгосрочным видением того, как использовать обширные ресурсы Google для создания ценности для пользователей. Я до сих пор считаю, что от формулировки миссии Google (упорядочить мировую информацию и сделать ее универсально доступной и полезной) можно извлечь немало пользы. Тот, кто захочет возглавить Google в течение следующих двадцати лет, извлекая максимальную пользу для человечества и не обращая внимания на краткосрочные колебания курса акций, сможет направить навыки и страсть Google на действительно великие свершения.
Статья: https://ln.hixie.ch/?start=1700627373
Еще не поздно излечить Google. Для этого потребуется произвести некоторые перестановки в руководстве компании, перенести центр власти из кабинета финансового директора обратно к человеку с четким долгосрочным видением того, как использовать обширные ресурсы Google для создания ценности для пользователей. Я до сих пор считаю, что от формулировки миссии Google (упорядочить мировую информацию и сделать ее универсально доступной и полезной) можно извлечь немало пользы. Тот, кто захочет возглавить Google в течение следующих двадцати лет, извлекая максимальную пользу для человечества и не обращая внимания на краткосрочные колебания курса акций, сможет направить навыки и страсть Google на действительно великие свершения.
Статья: https://ln.hixie.ch/?start=1700627373
IT Insights
Размышления о 18 лет в Google Еще не поздно излечить Google. Для этого потребуется произвести некоторые перестановки в руководстве компании, перенести центр власти из кабинета финансового директора обратно к человеку с четким долгосрочным видением того, как…
Мой перевод (поставьте "+" по возможности :)): https://habr.com/ru/articles/776108/
Хабр
Размышления о 18 годах работы в Google
Я пришел в Google в октябре 2005 года, а спустя 18 лет подал заявление об уходе. Прошлая неделя стала моей последней неделей в Google. Я считаю, что мне очень повезло, что мне довелось работать в...
👍4
Руководство “Путь Senior-инженера”
В этом репозитории собраны все ресурсы, необходимые для достижения уровня Senior Software Engineer. Это рассылки, книги, курсы,
доклады, каналы на YouTube, подкасты, сообщества, люди в LinkedIn и прочее.
Репозиторий: https://github.com/jordan-cutler/path-to-senior-engineer-handbook
В этом репозитории собраны все ресурсы, необходимые для достижения уровня Senior Software Engineer. Это рассылки, книги, курсы,
доклады, каналы на YouTube, подкасты, сообщества, люди в LinkedIn и прочее.
Репозиторий: https://github.com/jordan-cutler/path-to-senior-engineer-handbook
GitHub
GitHub - jordan-cutler/path-to-senior-engineer-handbook: All the resources you need to get to Senior Engineer and beyond
All the resources you need to get to Senior Engineer and beyond - jordan-cutler/path-to-senior-engineer-handbook
Почему компании нанимают людей, которые большую часть времени бездействуют?
В крупных технологических компаниях работает много инженеров, некоторые из которых делают очень мало. Некоторые говорят, что компании так поступают, чтобы удержать талантливых специалистов на рынке, но это может быть не так. Крупные проекты иногда требуют, чтобы многие люди простаивали без дела - даже если в данный момент кажется, что они ничего не делают, позже они могут сыграть важную роль в процессе. Престиж и бюджет - это тоже факторы, которые могут привести к бездействию инженеров.
Статья: https://ntietz.com/blog/why-do-companies-hire-people-to-be-idle-a-lot-of-the-time/
В крупных технологических компаниях работает много инженеров, некоторые из которых делают очень мало. Некоторые говорят, что компании так поступают, чтобы удержать талантливых специалистов на рынке, но это может быть не так. Крупные проекты иногда требуют, чтобы многие люди простаивали без дела - даже если в данный момент кажется, что они ничего не делают, позже они могут сыграть важную роль в процессе. Престиж и бюджет - это тоже факторы, которые могут привести к бездействию инженеров.
Статья: https://ntietz.com/blog/why-do-companies-hire-people-to-be-idle-a-lot-of-the-time/
Искусство создания понятных графиков
Эта статья — субъективное эссе о хороших и плохих практиках в визуализации данных, в нём приведены примеры и объяснения.
Статья: https://habr.com/ru/companies/ruvds/articles/776672/
Эта статья — субъективное эссе о хороших и плохих практиках в визуализации данных, в нём приведены примеры и объяснения.
Статья: https://habr.com/ru/companies/ruvds/articles/776672/
Бесплатный курс "Современное программирование на C++"
Этот открытый курс предназначен для тех, кто уже знаком с языком C и объектно-ориентированным программированием. Курс охватывает основы программирования на C++ и переходит к продвинутой семантике и концепциям C++.
Ключевые особенности:
• Бесплатный и часто обновляемый
• Включает последние стандартные концепции и возможности языка
• Практическое обучение: небольшие структурированные описания, иллюстрируемые кодом
• Минимальные примеры кода для демонстрации конкретной функции или проблемы без отступления от темы
• Дополнительные аспекты языка: инструменты, соглашения по кодированию, организация проекта и оптимизация кода
• Основан на опыте: многие аспекты, примеры и проблемы взяты из реальных ситуаций, с которыми я сталкивался во время своей работы в качестве инженера-программиста
Курс на GitHub: https://github.com/federico-busato/Modern-CPP-Programming
Этот открытый курс предназначен для тех, кто уже знаком с языком C и объектно-ориентированным программированием. Курс охватывает основы программирования на C++ и переходит к продвинутой семантике и концепциям C++.
Ключевые особенности:
• Бесплатный и часто обновляемый
• Включает последние стандартные концепции и возможности языка
• Практическое обучение: небольшие структурированные описания, иллюстрируемые кодом
• Минимальные примеры кода для демонстрации конкретной функции или проблемы без отступления от темы
• Дополнительные аспекты языка: инструменты, соглашения по кодированию, организация проекта и оптимизация кода
• Основан на опыте: многие аспекты, примеры и проблемы взяты из реальных ситуаций, с которыми я сталкивался во время своей работы в качестве инженера-программиста
Курс на GitHub: https://github.com/federico-busato/Modern-CPP-Programming
Аналог ChatGPT-3.5 на домашнем ПК: OpenChat 7B превосходящая 70B, DeepSeek для кода уровня ChatGPT
Есть много локальных аналогов ChatGPT, но им не хватает качества, даже 65B модели не могут конкурировать хотя бы с ChatGPT-3.5. И здесь я хочу рассказать про 2 открытые модели, которые всё-таки могут составить такую конкуренцию.
Речь пойдет о OpenChat 7B и DeepSeek Coder. Обе модели за счет размера быстры, можно запускать на CPU, можно запускать локально, можно частично ускорять на GPU (перенося часть слоев на GPU, на сколько хватит видеопамяти) и для такого типа моделей есть графический удобный интерфейс.
Статья: https://habr.com/ru/articles/776314/
Есть много локальных аналогов ChatGPT, но им не хватает качества, даже 65B модели не могут конкурировать хотя бы с ChatGPT-3.5. И здесь я хочу рассказать про 2 открытые модели, которые всё-таки могут составить такую конкуренцию.
Речь пойдет о OpenChat 7B и DeepSeek Coder. Обе модели за счет размера быстры, можно запускать на CPU, можно запускать локально, можно частично ускорять на GPU (перенося часть слоев на GPU, на сколько хватит видеопамяти) и для такого типа моделей есть графический удобный интерфейс.
Статья: https://habr.com/ru/articles/776314/
Сказочный нарратив: структурированное стратегическое планирование
Традиционная сказочная структура естественным образом укладывается в нашем мозгу, а значит, может служить руководством для анализа стратегических проблем и составления плана, понятного всем.
Статья: https://longform.asmartbear.com/strategic-planning/
Традиционная сказочная структура естественным образом укладывается в нашем мозгу, а значит, может служить руководством для анализа стратегических проблем и составления плана, понятного всем.
Статья: https://longform.asmartbear.com/strategic-planning/
Архитектурные антипаттерны
Откройте для себя распространенные антишаблоны архитектуры, узнайте, как их избежать и преодолеть "подводные камни" проектирования. Получите ценные сведения, практические советы и примеры из реального мира, чтобы создавать лучшие программные архитектуры и улучшать существующие.
Сайт: https://architecture-antipatterns.tech/
Откройте для себя распространенные антишаблоны архитектуры, узнайте, как их избежать и преодолеть "подводные камни" проектирования. Получите ценные сведения, практические советы и примеры из реального мира, чтобы создавать лучшие программные архитектуры и улучшать существующие.
Сайт: https://architecture-antipatterns.tech/
Керниган и Пайк были правы: делай что-то одно и делай это хорошо
Простых ответов не существует, но повсюду можно найти подсказки. Чтобы подобрать идеальную структуру для сложного ПО, обратите внимание на структуры, пережившие миллиарды лет жесточайшей эволюции: атомы и молекулы, солнечные системы и галактики, наши собственные внутренние органы. Тракторы и камеры. Obsidian и VS Code. Все они созданы из маленьких однофункциональных блоков, как и задумывалось Керниганом и Пайком.
Статья: https://habr.com/ru/companies/ruvds/articles/777212/
Простых ответов не существует, но повсюду можно найти подсказки. Чтобы подобрать идеальную структуру для сложного ПО, обратите внимание на структуры, пережившие миллиарды лет жесточайшей эволюции: атомы и молекулы, солнечные системы и галактики, наши собственные внутренние органы. Тракторы и камеры. Obsidian и VS Code. Все они созданы из маленьких однофункциональных блоков, как и задумывалось Керниганом и Пайком.
Статья: https://habr.com/ru/companies/ruvds/articles/777212/
Хабр
Керниган и Пайк были правы: делай что-то одно и делай это хорошо
Роб Пайк и Брайан Керниган В октябре 1984 года два идеолога опубликовали радикальный манифест… ну, или что-то вроде того. Легенды computer science Брайан Керниган и Роб Пайк сформулировали в Program...
❤1👎1
35 способов исправить активацию продукта уже сегодня
→ 11 Упрощенный пользовательский интерфейс
→ 8 Электронные письма и последующие сообщения
→ 9 Уменьшение трудностей при адаптации
→ 3 Оптимизация копирования
→ 4 Умная верхняя часть воронки
Среднестатистическое приложение теряет всю свою пользовательскую базу в течение нескольких месяцев.
Этот момент в вашем пользовательском путешествии и есть «активация».
Исправление часто является основным способом улучшения удержания пользователей. Если не главный, то самый быстрый.
→ 11 Упрощенный пользовательский интерфейс
→ 8 Электронные письма и последующие сообщения
→ 9 Уменьшение трудностей при адаптации
→ 3 Оптимизация копирования
→ 4 Умная верхняя часть воронки
Среднестатистическое приложение теряет всю свою пользовательскую базу в течение нескольких месяцев.
Этот момент в вашем пользовательском путешествии и есть «активация».
Исправление часто является основным способом улучшения удержания пользователей. Если не главный, то самый быстрый.
С алгоритмами в духе LeetCode на собеседованиях пора кончать
Такой подход основан на идее, что, если человек знаком с алгоритмами и системным дизайном, то и на разработку приложений ему хватит способностей. Это спорное утверждение. Создание приложений требует обширного набора навыков. Они не нарабатываются сотнями часов заучивания паттернов в решениях задач на алгоритмы. Да и рассматриванием сильно упрощенных версий системного дизайна Netflix, Uber или Twitter Threads делу не поможешь. Навыки разработки приложений оттачиваются путем… ну, разработки приложений. Но часто на технических собеседованиях они даже не принимаются в расчет.
Статья: https://habr.com/ru/companies/productivity_inside/articles/777566/
Такой подход основан на идее, что, если человек знаком с алгоритмами и системным дизайном, то и на разработку приложений ему хватит способностей. Это спорное утверждение. Создание приложений требует обширного набора навыков. Они не нарабатываются сотнями часов заучивания паттернов в решениях задач на алгоритмы. Да и рассматриванием сильно упрощенных версий системного дизайна Netflix, Uber или Twitter Threads делу не поможешь. Навыки разработки приложений оттачиваются путем… ну, разработки приложений. Но часто на технических собеседованиях они даже не принимаются в расчет.
Статья: https://habr.com/ru/companies/productivity_inside/articles/777566/
Хабр
С алгоритмами в духе LeetCode на собеседованиях пора кончать
Современная разработка охватывает широкий диапазон от работы с алгоритмами до системного дизайна. По большей части разработка ПО укладывается в эти рамки. Основная масса разработчиков занимается...
👍3🔥2👎1
Психология скорости: руководство по восприятию производительности
Оценка счастья, опыта или эффективности - многие пытались свести опыт людей к единому числу (что, в случае с эффективностью, имеет серьезные недостатки).
Но возможно ли вообще свести человеческое восприятие к одному числу? Каков разрыв между измеряемой и воспринимаемой производительностью, и какую из них мы должны использовать в качестве цели?
Статья: https://calibreapp.com/blog/perceived-performance
Оценка счастья, опыта или эффективности - многие пытались свести опыт людей к единому числу (что, в случае с эффективностью, имеет серьезные недостатки).
Но возможно ли вообще свести человеческое восприятие к одному числу? Каков разрыв между измеряемой и воспринимаемой производительностью, и какую из них мы должны использовать в качестве цели?
Статья: https://calibreapp.com/blog/perceived-performance
👍1
Предсказания в области технологий на 2024 год от технического директора Amazon
1. Генеративный ИИ станет культурно осведомленным благодаря LLM.
2. FemTech наконец-то взлетит, и обилие данных откроет возможности для улучшения диагностики и результатов лечения пациентов.
3. ИИ-помощники переопределят производительность разработчиков, превращаясь в учителей и коллабораторов
4. Образование будет соответствовать скорости технологических инноваций - появятся отраслевые программы обучения, основанные на навыках.
Подробнее: https://www.allthingsdistributed.com/2023/11/tech-predictions-for-2024-and-beyond.html
1. Генеративный ИИ станет культурно осведомленным благодаря LLM.
2. FemTech наконец-то взлетит, и обилие данных откроет возможности для улучшения диагностики и результатов лечения пациентов.
3. ИИ-помощники переопределят производительность разработчиков, превращаясь в учителей и коллабораторов
4. Образование будет соответствовать скорости технологических инноваций - появятся отраслевые программы обучения, основанные на навыках.
Подробнее: https://www.allthingsdistributed.com/2023/11/tech-predictions-for-2024-and-beyond.html
All Things Distributed
Tech predictions for 2024 and beyond
The coming years will be filled with innovation in areas designed to democratize access to technology and help us keep up with the increasing pace of every-day life -- and it starts with Generative AI.
❤1
Как Google избавляется от боли code review
Хотя многие из этих функций доступны и в других инструментах, именно тесная интеграция и предельная "персонализация" инструментария под специфический рабочий процесс и кодовую базу Google делает его таким любимым.
В то же время это означает, что не каждая компания сможет в точности повторить Critique и связанные с ним инструменты. Например, некоторые из их инструментов кажутся специфическими для вопросов, создаваемых их монореповой структурой.
Тем не менее, Google действительно прилагает много усилий и думает о производительности разработчиков. Они свободно публикуют свои исследования, и из их работы можно сделать полезные выводы.
Статья: https://engineercodex.substack.com/p/how-google-takes-the-pain-out-of
Хотя многие из этих функций доступны и в других инструментах, именно тесная интеграция и предельная "персонализация" инструментария под специфический рабочий процесс и кодовую базу Google делает его таким любимым.
В то же время это означает, что не каждая компания сможет в точности повторить Critique и связанные с ним инструменты. Например, некоторые из их инструментов кажутся специфическими для вопросов, создаваемых их монореповой структурой.
Тем не менее, Google действительно прилагает много усилий и думает о производительности разработчиков. Они свободно публикуют свои исследования, и из их работы можно сделать полезные выводы.
Статья: https://engineercodex.substack.com/p/how-google-takes-the-pain-out-of
Поставьте 15 👍 и опубликуем эту статью на русском!
👍6
500 компаний с самой высокой зарплатой для инженеров-программистов
Это НЕ серьезный анализ. Это просто очень, очень, очень грубый список 500 компаний, которые обычно платят относительно много за работу, связанную с разработкой программного обеспечения. Если вы используете его для чего-то большего, вы используете его неправильно.
Репозиторий: https://github.com/miketromba/highest-paying-software-companies
Это НЕ серьезный анализ. Это просто очень, очень, очень грубый список 500 компаний, которые обычно платят относительно много за работу, связанную с разработкой программного обеспечения. Если вы используете его для чего-то большего, вы используете его неправильно.
Репозиторий: https://github.com/miketromba/highest-paying-software-companies
GitHub
GitHub - miketromba/highest-paying-software-companies: The top 500 highest paying companies based on median software engineer total…
The top 500 highest paying companies based on median software engineer total comp on levels.fyi as of 12/1/23. - miketromba/highest-paying-software-companies
Как я сделал игру на ChatGPT
Рассказываю как сделал текстовый квест на ChatGPT и с какими проблемами столкнулся в промптинге. Что и как не получалось и как потом получилось.
Статья: https://habr.com/ru/articles/776806/
Рассказываю как сделал текстовый квест на ChatGPT и с какими проблемами столкнулся в промптинге. Что и как не получалось и как потом получилось.
Статья: https://habr.com/ru/articles/776806/
Почему большие редизайны терпят неудачу
Меня всегда мучила одна загадка: почему большие редизайны обычно сходят на нет. На их реализацию уходит целая вечность. Они редко приводят к увеличению прибыли или количеству счастливых клиентов. Затем я увидел новый редизайн навигационной системы Stripe, и меня наконец-то осенило. Редизайн часто усложняет жизнь клиентам... даже если технически он "лучше". А с учетом всех больших достижений в области искусственного интеллекта редизайн вообще может уйти в прошлое. Давайте разберемся, что это значит.
Статья: https://www.productlessons.xyz/article/why-big-redesigns-fail
Меня всегда мучила одна загадка: почему большие редизайны обычно сходят на нет. На их реализацию уходит целая вечность. Они редко приводят к увеличению прибыли или количеству счастливых клиентов. Затем я увидел новый редизайн навигационной системы Stripe, и меня наконец-то осенило. Редизайн часто усложняет жизнь клиентам... даже если технически он "лучше". А с учетом всех больших достижений в области искусственного интеллекта редизайн вообще может уйти в прошлое. Давайте разберемся, что это значит.
Статья: https://www.productlessons.xyz/article/why-big-redesigns-fail