Обновить
2K+
256
InlyIT@InlyIT

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

710
Подписчики
Отправить сообщение

Конец эпохи компьютерных журналов в Америке

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели7K


Апрельские выпуски Maximum PC и MacLife уже доступны в ближайших газетных киосках (если, конечно, поблизости от вас есть газетные киоски). У обоих почтенных изданий, появившихся еще в 1986 году (тогда они были известны как Boot и MacAddict), эти выпуски станут последними, которые вышли в печати. Начиная со следующего номера их публикации будут доступны только в цифровом виде.

Но я пишу эту статью не потому, что Maximum PC и MacLife перестают выходить в формате мертвых деревьев. Я пишу ее потому, что в США они были двумя последними уцелевшими компьютерными журналами на бумаге, которые как-то дотянули до сегодняшнего дня. Теперь, когда они уходят из печати, эпоха компьютерных журналов официально завершается.
Читать дальше →

Не пытайтесь приспособить свой код к будущему

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели6.7K
Не имеет значения, что, по вашему мнению, может случиться потом.

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

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

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

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

Время на прочтение5 мин
Охват и читатели2.3K
В этом дайджесте сторонние загрузки в iOS и ускорение дебага на Android, схемы кампусов и неочевидные палки в колеса, свои “Герои”, артефакты пришельцев в вашем коде, руководство для начинающих по автономным агентам и многое другое.

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

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

Low-code инструменты для разработки ПО — сплошной обман

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

Возможно, с возрастом я становлюсь болтливее, чем следовало бы, но правда в том, что создавать программы для других людей – задача невероятной сложности. И проблема здесь не в языках программирования, инструментах и парадигмах, как склонны считать те, кто далек от практической стороны (то есть не пишет код). На самом деле, трудности возникают из-за того, что клиенты и разработчики не выделяют должного времени на то, чтобы разобраться в глубинных истоках проблемы, которую пытаются решить, и не проектируют решение исходя из тех выводов, к которым придут в процессе.
Читать дальше →

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

Время на прочтение4 мин
Охват и читатели2.4K
В этом выпуске потоковое вещание и старые смартфоны, маски ввода номера и исследования трафика, архитектура микросервисов, закрытое сообщество для открытых проектов, запуск аналогов ChatGPT, ИИ-помощник для программирования от Amazon и многое другое.

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

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

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

Время на прочтение4 мин
Охват и читатели2.1K
В нашем новом дайджесте async/await и кодогенерация для Kotlin, перспективы развития Flutter, решение темной темы, -10х инженеры, игровые механики, человечество после GPT-4 и многие другие материалы.

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

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

Как я неделю просидел над десятью строками кода

Время на прочтение4 мин
Охват и читатели30K


Недавно я столкнулся с серьезным препятствием, когда работал над возможностью перетаскивать вкладки в приложении Warp: если попытаться передвинуть конкретную вкладку, она потянет за собой всё окно. Понадобилась целая неделя изысканий и экспериментов, чтобы установить, откуда берет начало этот баг. Но в конечном итоге я исправил это в pull request-е, который состоял менее чем из десяти строк кода! Это несоответствие усилий выхлопу также заставило меня проникнуться сознанием того, что создание ПО включает в себя гораздо больше, чем просто написание кода. В этой статье я расскажу, как всё происходило.

Немного контекста: Warp – это терминал для разработчиков на базе Rust. При его создании мы использовали собственный кастомный UI-фреймворк, так что всё, что касается вкладок и перетаскивания, пришлось разрабатывать с нуля.
Читать дальше →

Мобильная разработка за неделю #482 (27 марта — 2 апреля)

Время на прочтение4 мин
Охват и читатели1.9K
В новой подборке материалы о подготовке к собеседованию и кнопочном Android, о создании дизайна с Midjourney, рекордах рынка приложений и многом другом.

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

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

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

Время на прочтение4 мин
Охват и читатели2K
В нашем новом дайджесте легковесная миграция Core Daya и утечки памяти в iOS, реверсинжинеринг московского метро и конец любви к Flutter, бестолковый дизайн, тест на ручник для ChatGPT и многое другое.

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

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

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

Время на прочтение4 мин
Охват и читатели1.7K
В нашей новой подборке ошибки начинающих разработчиков и отсутствие работы у тех, кто работает, вкатывание в геймдев и выкатывание GPT-4, мобильные игры 2022 и многое другое.

В нашем Telegram-канале Mobile Insights, еще больше материалов для разработчиков — подключайтесь!

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

Нужно ли говорить на собеседовании, что предложенная задача вам уже встречалась?

Время на прочтение4 мин
Охват и читатели16K
Если на техническом собеседовании вы понимаете, что уже решали эту задачу – что делать?

Недавно мое внимание привлек пост на Reddit. Автор поста спрашивал, как быть, если на собеседовании вам предлагают задание, которое вы разбирали до этого. Занятно, что данная тема и до того поднималась много раз, и обсуждения, которые неизбежно за этим следуют, на мой взгляд, представляют немалый интерес.
Читать дальше →

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

Время на прочтение4 мин
Охват и читатели2.1K
В нашем новом еженедельном выпуске переводы на арабский и решения судоку на Compose, быстрое создание бизнес приложений и быстрый завоз темных тем, ускорение ТТМ, ИИ-сервисы, ARCore, красивые цвета и многое другое!

В нашем Telegram-канале Mobile Insights, еще больше материалов для разработчиков — подключайтесь!

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

Как я проводил обратную разработку таинственного UDP-трафика в гостиничном номере

Время на прочтение3 мин
Охват и читатели36K
Всем привет! Я на какое-то время поселился в гостинице. Гостиница из современных, с умными телевизорами и всякими другими подключенными устройствами. Меня одолело любопытство, и я открыл Wireshark, как сделал бы на моем месте любой любитель покопаться в технике.

Я был очень удивлен, когда увидел большое количество UDP-трафика на порте 2046. Взглянул на него, но много толку это не дало – порт оказался не из стандартных, так что разбираться предстояло вручную.

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

Мобильная разработка за неделю #478 (27 февраля — 5 марта)

Время на прочтение4 мин
Охват и читатели2.1K
В нашем новом дайджесте SnapKit и Android Studio, App Quality Insights и асинхронности, доход от покупок социальных сетей, API для ChatGPT и многое другое.

В нашем Telegram-канале Mobile Insights, еще больше материалов для разработчиков — подключайтесь!

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

У меня возникают сложности с продуктивной работой на Python

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели12K
Примечание: всё, что говорится в этой статье, можно отнести и к любому другому языку с динамической типизацией (скажем, Ruby). Я делюсь своим опытом и мытарствами конкретно по Python только потому, что сам пользуюсь этим языком.

Изначально я осваивал программирование на Python, и этот язык до сих пор занимает особое место в моем сердце. Именно он научил меня, как нужно подходить к программированию, как моделировать проблему, которую должен решить код, и общаться с компьютером. Свою текущую работу (как и предшествующую) я получил благодаря знанию Python. Я был его фанатом и евангелистом, проводил много времени в сообществах по Python – помогал другим и учился сам. Когда я стал выступать в роли наставника для новичков, то из языков выбрал для себя Python.
Хорошо помню, как у нас с другом состоялся такой разговор.

Друг: C# сильно упрощает жизнь за счет типов.
Я: Как-то не ощущал потребности. А какая от них польза?
Друг: А как ты управляешься с функциями, которые могут принимать любой тип аргумента?
Я: На то у меня юнит-тесты плюс высокая степень покрытия кода. Достаточно небольшого изменения, чтобы охватить остальные. К тому же к функциям прилагается документация, там сказано, для чего они нужны и какие аргументы принимают. Плёвое дело.

Как же я ошибался. На тот момент я доводил код до продакшна на Python, но пользователей у нас было немного. Опыта работы с другими языками у меня не имелось вообще.
Читать дальше →

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

Время на прочтение3 мин
Охват и читатели2K
В нашем новом дайджесте Live Text API в iOS 16 и игры в тесты, будущее Flutter и формулы для оптических настроек, свой Firebase за 7$, пародии на синие галочки и многое другое!

В нашем Telegram-канале Mobile Insights, еще больше материалов для разработчиков — подключайтесь!

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

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

Время на прочтение3 мин
Охват и читатели1.8K
В новом дайджесте эволюция архитектуры приложения FBiOS и лабиринт, в который попал Google, превратности диспетчеризации и MDM, KMM, темный режим, Репка Pi 3 и многое другое.

В нашем Telegram-канале Mobile Insights, еще больше материалов для разработчиков — подключайтесь!

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

20 уроков, которые я вынес из 20 лет работы программистом

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

«Да просто повысьте цены!» — говорит компания, которая уже двадцать лет на рынке и первые годы продавала продукт за копейки, чтобы привлечь клиентов и прийти к успеху. «Нужно всё реализовать в микросервисах», — говорит компания, которая по-быстрому сколотила монолит, набрала несколько тысяч пользователей и метнулась к микросервисам, когда начались проблемы с масштабированием.

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

Мобильная разработка за неделю #475 (6 — 12 февраля)

Время на прочтение3 мин
Охват и читатели3.3K
В этом выпуске ускорение Swift и первый релиз Android 14, собеседование и тестирование, спрос на мобильных разработчиков, приложения для здоровья и фитнеса, прелести legacy-кода и многое другое.

В нашем Telegram-канале Mobile Insights, еще больше материалов для разработчиков — подключайтесь!

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

Мобильная разработка за неделю #474 (30 января — 5 февраля)

Время на прочтение4 мин
Охват и читатели2.5K
В новом дайджесте много интересного — масштабирование изображений, сокращение времени запуска, проблемы в виджетах и их решения, проблемы бережливых стартапов и многое другое!

В нашем Telegram-канале Mobile Insights, еще больше материалов для разработчиков — подключайтесь!

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

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность