Pull to refresh
253
0
InlyIT @InlyIT

Пользователь

Send message

Почему программистам нужны кабинеты с закрывающимися дверями?

Reading time8 min
Views18K
Обычная ситуация: вы сидите за своим рабочим столом, погрузившись в размышления, и пытаетесь разрешить проблему, которая вот уже неделю не дает вам продвинуться в работе. В глубинах сознания вы выстраиваете структуру из мыслей и вероятностей, о которой ни один философ и не мечтал: выявляете концепты, прилаживаете их друг к другу, поворачиваете так и эдак, чтобы они состыковались. Что-то вроде арки, сложенной из камней: когда она будет закончена, то окажется достаточно прочной, чтобы пережить целые поколения – но пока не готова, может развалиться до основания, если слишком рано перестать удерживать части.



Триумфальная арка © Verity Cridland/flickr

Тут мимо проходит коллега и замечает, что вы просто сидите, возможно, со слегка приоткрытым ртом, не исключено, что голова у вас слегка склонена, глаз подергивается и общее выражение лица такое, будто вы проглотили муху (или это только у меня так?). В общем, очевидно, что вы ничем не заняты. Поэтому коллега трогает вас за плечо и говорит: «Эй, можно тебя на минутку? Я только хотел спросить…»

И вот, в эту самую секунду роскошная полуарка, которую вы с таким трудом удерживали, обрушивается к вашим ногам.
Читать дальше →

Мобильная разработка за неделю #519 (11 — 17 декабря)

Reading time4 min
Views4.5K
В новом выпуске усложнение iOS и избавление от рекурсии в Kotlin, cимволизация логов и новые фичи на старых Android, многомодульность на Flutter, опыт прохождения собеседования в Google, как много языков может влезть в одного программиста и многое другое!

Подписывайтесь на на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.

Читать дальше →

Мудреный код — пожалуй, худший выбор

Reading time4 min
Views19K
Когда я учился в университете, Leetcode поломал мне мозг. Я смотрел на лучшие из лучших решений, которые укладывались в одну строчку малопонятного кода, и в своем заблуждении думал: «Как же мне достигнуть такого высокого уровня?»



Что тут вообще происходит?

Такой подход часто называют код-гольфингом. Этим весело заниматься для собственного удовольствия, но к «хорошему коду» он имеет весьма отдаленное отношение. Все (включая и тех, кто пишет для Leetcode) в курсе, что хорошим кодом это не является. В контексте индустрии такой код – худший вариант, который можно представить.

Еще одно запоздалое прозрение для меня было связано с противоположным концом спектра: писать понятный код оказалось сложнее всего. Оглядываясь назад, могу сказать, что это вполне логично. Недаром при инспекции кода от сениора, одного из опытных сотрудников, было гораздо проще разбираться что к чему и делать замечания, чем при работе с кодом начинающего программиста на низкой должности из L3.
Читать дальше →

Безвозмездная работа над проектами с открытым кодом — нежизнеспособная модель

Reading time5 min
Views6.5K
Вечер понедельника, без четверти полночь. Мой сын шести недель от роду спит у меня в кабинете, чтобы жена могла спокойно отдыхать первую половину ночи. Раз уж он наконец заснул, мне бы стоило последовать его примеру после целого дня за работой. Но я еще не закончил. По профессии я разработчик ПО, но программирование – это также моё увлечение и страсть. Поэтому я делаю то же, что и всегда по вечерам уже больше десяти лет: загружаю компьютер, чтобы поработать с кодом.

Чем бы заняться, чем бы заняться… Освоить что-то новое? Возможно. Написать статью в блог? Ну… как видите, этот вариант победил. Но при этом в глубине души я знаю, что стоило бы уделить внимание некоторым проектам с открытым кодом. Так вышло, что один из них активно используется. Я приближаюсь к отметке в три четверти миллиона скачиваний, и люди явно находят в нем определенную пользу для себя. Это если говорить о хороших сторонах. Если же говорить о плохих, скопилось уже с десяток отчетов об ошибках, которые я еще даже не открывал, не говоря о том, чтобы отсортировать, изучить и исправить. От сообщества поступило несколько pull request-ов – их тоже нужно просмотреть. Некоторые зависимости требуют обновлений. Список можно продолжать. Этот проект достиг той вехи, которой достигают и многие другие: человек, который его поддерживает, выгорел.
Читать дальше →

Мобильная разработка за неделю #518 (4 — 10 декабря)

Reading time5 min
Views2.3K
В нашем новом дайджесте устройство протокола iMessage и новое приложение Beeper Mini (которое уже не работает), бесплатный Xcode Cloud, новый ИИ от Google в Android, создание простого калькулятора, интернационализация от i до n, конец плоского дизайна и многое другое.

Подписывайтесь на на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.

Читать дальше →

Мобильная разработка за неделю #517 (27 ноября — 3 декабря)

Reading time5 min
Views3K
В новом дайджесте создание самолетного радара для любимой дочки, Kotlin под капотом, утечки памяти, визуальная иерархия элементов, лучшие приложения года для iOS и Android, руководство по монетизации и многое другое!

Подписывайтесь на на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.

Читать дальше →

С алгоритмами в духе LeetCode на собеседованиях пора кончать

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

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

Такой подход основан на идее, что, если человек знаком с алгоритмами и системным дизайном, то и на разработку приложений ему хватит способностей. Это спорное утверждение. Создание приложений требует обширного набора навыков. Они не нарабатываются сотнями часов заучивания паттернов в решениях задач на алгоритмы. Да и рассматриванием сильно упрощенных версий системного дизайна Netflix, Uber или Twitter Threads делу не поможешь. Навыки разработки приложений оттачиваются путем… ну, разработки приложений. Но часто на технических собеседованиях они даже не принимаются в расчет.
Читать дальше →

Мобильная разработка за неделю #516 (20 — 26 ноября)

Reading time5 min
Views5K
В нашей новой подборке отслеживание изменений в SwiftUI и тысяча проблем App Clip, Kotlin под капотом и простая архитектура, OpenStreetMap в Flutter, 18 лет работы в Google, мышление Platform Engineer, приложением №1 в App Store, которое не обновлялись уже 7 лет и многое другое!

Подписывайтесь на на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.

Читать дальше →

Не нужно блокировать кнопки

Reading time2 min
Views5.6K
Одна из наиболее распространенных проблем доступности, которую я нахожу (и исправляю) в проектах своих клиентов – это динамическое блокирование кнопок в формах после отправки последних. Сегодня я хотел бы рассказать, почему разработчики так делают, почему это не работает и что нужно делать вместо этого. Давайте разбираться!
Читать дальше →

Мобильная разработка за неделю #515 (13 — 19 ноября)

Reading time5 min
Views2.1K
В этом дайджесте для мобильных разработчиков листаем страницы и повышаем качество кода, защищаем и исследуем код, исследуем новый релиз Flutter, делаем дизайн-систему, автотесты, определяем “производительность” рекламных сетей.

Подписывайтесь на на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.

Читать дальше →

Мобильная разработка за неделю #514 (7 — 12 ноября)

Reading time4 min
Views2.6K
В новом выпуске новые правила Google Play для новых разработчиков и первый App Shortcut, корутины против потоков, навигация во Flutter и вредные тесты, перформящие креативы, собственные GPT и многое другое!

Подписывайтесь на на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.

Читать дальше →

История одного инди-разработчика: от 0 к 45 000 $ за два года

Reading time14 min
Views9.8K
Двадцатое сентября 2021 года стало первым днем, когда я остался без работы и начал трудиться на себя. Это было лучшим решением в моей жизни. Работа на себя дала мне столько свободы, сколько я никогда до того не испытывал.

За прошедшие два года я:
  • создал четыре небольших, но успешных продукта (о каждом из них будет сказано в этой статье);
  • собрал аудиторию в 97 000 человек на Твиттере;
  • сделал новостную рассылку на 6000 подписчиков;
  • поддался ИИ-хайпу и благополучно создал продукт с применением этих технологий;
  • пережил драматичный момент, который едва не погубил мой бизнес.

На текущий момент суммарная выручка за четыре мои продукта составляет около 45 000 $ в месяц; прибыль — около 90% от этой суммы. Я хотел бы воспользоваться возможностью и рассказать о своем пути до сегодняшнего дня. Надеюсь, для тех, кто мечтает тоже стать самому себе начальником, это будет полезно.
Читать дальше →

Мобильная разработка за неделю #513 (30 октября — 6 ноября)

Reading time5 min
Views2.9K
В этом дайджесте задачи Yandex Cup и сложные фичи, стабильный Kotlin Multiplatform и собеседования в SberDevices, стартапы из одного человека, игры с помощью нейросетей, интерактивные виджеты и многое другое!

Подписывайтесь на на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.

Читать дальше →

Доводим разработчика до выгорания: три простых шага

Reading time7 min
Views47K
Если вы менеджер и хотите, чтобы ваши лучшие разработчики выгорели и разуверились в вашей способности руководить – могу помочь. Мне довелось работать в двух командах, подверженных выгоранию, и молча смотреть, как окружающие меня талантливые программисты один за другим покидали команду или компанию.

В первом случае я был ведущим специалистом в стартапе на посевной стадии с финансированием, работал непосредственно под и совместно с руководителем. Во втором я был одним из рядовых разработчиков, работал в команде из одиннадцати человек в составе крупной технологической компании (уровня Meta, Google, Apple и т.д.). Вот пошаговое руководство из методички выгорания, по которой работали эти команды.
Читать дальше →

Мобильная разработка за неделю #512 (23 — 29 октября)

Reading time5 min
Views2.9K
В новом дайджесте изучаем Swift OpenAPI Generator и работу Spotify на Bazel, вспоминаем 15 лет Android и обозреваем невизуальную доступность, внедряем карты, пишем бесполезные программы, возвращаемся к Windows Phone и многое другое!

Подписывайтесь на на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.

Читать дальше →

Куда уходят разработчики после сокращений?

Reading time6 min
Views20K
Можно с уверенностью сказать, что 2023 год стал annus horribilis в том, что касается сокращений по технологическому сектору. После пандемии COVID-19 развитие бизнеса замедлилось и технологические компании стали поддаваться давлению со стороны инвесторов, то есть компенсировать слишком активный найм в недавнем прошлом и урезать основной источник расходов – рабочую силу.



Источник: Layoffs.fyi

Это запустило разрушительный эффект домино, который на данный момент не выказывает никаких признаков скорого прекращения. На момент написания этой статьи с начала этого года было уволено целых 239 603 сотрудников из 1043 компаний, по данным Layoffs.fyi – вебсайта, отслеживающего увольнения в индустрии.

Данные, которые предоставляет Karat, компания, специализирующаяся на опросах работников технического сектора, показывают, что большая часть этих увольнений происходит в самых крупных корпорациях, которые обозначают аббревиатурой MAMAA: Meta, Alphabet, Microsoft, Amazon и Apple. Если отследить карьерный путь тех, кто в опросах Karat говорил о массовых сокращениях в своих организациях, 66% из них работали в Amazon, Google или Meta. Добавьте к этому затишье в финансировании стартапов, и получается сильно ужавшийся рынок вакансий – многие разработчики до сих пор не сталкивались ни с чем подобным.
Читать дальше →

Требовать от разработчиков урезать сроки – всё равно что торговаться с метеорологом о погоде

Level of difficultyEasy
Reading time4 min
Views3K
Препирательства из-за сроков возникают потому, что кому-то они кажутся завышенными; редко кто сочтет их заниженными.

Часто бывает, что участники проекта, которые слабо разбираются в его технической стороне и мало что знают о кодовой базе, ставят под вопрос сроки, озвученные командой, приводя аргументы вроде: «Нет, здесь меньше работы!» Их цель – продавить команду, чтобы она согласилась на лучшие для них условия, то есть более сжатые сроки. Когда разработчики и другие участники проекта вступают в подобные споры, предполагающие, что о сроках можно торговаться, это приводит к утрате доверия и другим неприятным последствиям в будущем.

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

Цитаты, которые я привел, взяты из статьи «Не пускаем ли мы деньги на ветер, требуя от разработчиков развернутого обоснования сроков?» В своей же статье я объясню, почему внешние участники, требующие урезания сроков без предоставления новых фактов, которые могли бы повлиять на объем работ, совершают ошибку. Также я расскажу, как разработчики могут направить разговор с этими участниками в значительно более продуктивное русло.
Читать дальше →

Мобильная разработка за неделю #511 (16 — 22 октября)

Reading time5 min
Views2.6K
В новой подборке сторонние платежи в iOS-приложениях в России, использование Swift и SwiftUI в iOS 17, русификация китайского Android и поиск лишних Component Dependencies, камеры и Flutter, шесть платформ, 15 лет программной инженерии и многое другое!

Подписывайтесь на на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.

Читать дальше →

Мобильная разработка за неделю #510 (09 — 15 октября)

Reading time5 min
Views2.7K
В нашем новом дайджесте LLM на iOS и архитектура Android-приложений, здоровье сборки и реактивные формы, скользкий кусок мыла, 40 лет программирования, чаты с Аидом, потери денег на ИИ и многое другое!

Подписывайтесь на на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.

Читать дальше →

Хороший код — что-то вроде любовного письма разработчику, который будет его поддерживать

Level of difficultyEasy
Reading time3 min
Views1.8K
Мы часто романтизируем само понятие программирования, представляя его как форму абстрактного искусства, науку или даже некую разновидность магии. На самом деле, истина имеет куда более практичный и приземленный вид. Код, по своей сути, является формой общения. В начале своей книги «Изучаем паттерны проектирования на JavaScript» я пишу: «Хороший код – это что-то вроде любовного письма следующему программисту, который будет заниматься его поддержкой». Это личная переписка одного разработчика с другим, преодолевающая временные и пространственные границы.
Читать дальше →

Information

Rating
Does not participate
Registered
Activity