IT Insights
661 subscribers
767 photos
4 videos
3 files
1.07K links
Новости разработки, технологий, немножко науки и техники
Download Telegram
Как iOS-команда Medium эффективно работает с legacy кодом

Кодовой базе iOS-приложения Medium уже более 10 лет, и у нас все еще есть код 2013 и 2014 годов, который используется до сих пор.

Здесь вы можете подумать, почему, черт возьми, они никогда не переписывали его полностью?

На самом деле в iOS-команде Medium мы носим это как почетный знак, и сегодня я хочу объяснить, почему рассказываю о том, как эффективно работать с устаревшим кодом, и одновременно не мешать ему (слишком сильно).

Статья: https://apptractor.ru/info/articles/kak-ios-komanda-medium-effektivno-rabotaet-s-legacy-kodom.html
«У нас закончились столбцы» — лучшая худшая кодовая база

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

Статья: https://habr.com/ru/articles/833916/

Поддержите ⬆️ мой перевод на Хабре
👀1
Отслеживание цен в супермаркете с помощью Playwright

Еще в декабре 2022 года, когда инфляция была на высоком уровне, я создал сайт для отслеживания изменений цен в трех крупнейших супермаркетах моей родной страны, Греции.

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

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

Статья: https://www.sakisv.net/2024/08/tracking-supermarket-prices-playwright/
Жутко, но факт: как Uber тестирует платежи в продакшене

Хорошо работающие платежные системы разрабатываются инженерами, которые понимают, как лучше использовать свое время: выявлять неизвестные и делать это быстро.

Статья: https://news.alvaroduran.com/p/cringey-but-true-how-uber-tests-payments
Вариативность, а не повторение - ключ к мастерству

Считается, что Брюс Ли сказал: "Я боюсь не того, кто отработал 10 000 ударов один раз, а того, кто отработал один удар 10 000 раз". При всем уважении к мистеру Ли, он мог ошибаться в этом вопросе.

Вариативность играет важную и часто игнорируемую роль в освоении сложных навыков. Многочисленные исследования показывают, что тренировки в различных контекстах с использованием различных методов и при выполнении различных задач приводят к более прочному обучению, чем простое повторение.

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

Статья: https://www.scotthyoung.com/blog/2022/10/26/variable-mastery/
Как мы удалили 4195 файлов кода за 9 часов

"Давайте сохраним этот код - на всякий случай, для обратной совместимости".

Как часто вы это слышали?

Оказывается, очень часто! Большая часть существующего кода не используется (в среднем 70% функций JavaScript на веб-страницах не используются).

Сегодня я поделюсь с вами очень простым (и веселым) способом избавиться от старого и неиспользуемого кода. Шаблон прилагается!

Статья: https://zaidesanton.substack.com/p/organizing-the-best-cleanathon-your
Практика разработки надежного программного обеспечения

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

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

Статья: https://two-wrongs.com/practices-of-reliable-software-design
👎1
Сортировка кучей — вопросы с собеседований

Сортировка кучей (пирамидальная сортировка, Heap Sort) — это эффективный алгоритм сортировки, который использует структуру данных под названием куча (heap). Куча — это двоичное дерево, удовлетворяющее свойству кучи: каждый узел дерева больше (для max-кучи) или меньше (для min-кучи) своих потомков.

Статья: https://apptractor.ru/info/techhype/sortirovka-kuchey-voprosy-s-sobesedovaniy.html
Не останавливайтесь на 90%

Евангелизм, документирование и доводка зачастую не менее важны, чем основной проект.

Статья: https://apptractor.ru/develop/ne-ostanavlivaytes-na-90.html
👍1
Как программировать и двигаться вперед быстрее

Я не думаю, что я очень быстр в абсолютном смысле, но я гораздо быстрее, чем 5 лет назад.

Вот те вещи, которые, на мой взгляд, оказали наибольшее влияние.

• Содержание
• Забота
• Принимайте решения на основе целей
• Фокусируйтесь
• Работайте блоками
• Вносите небольшие изменения
• Сокращайте циклы обратной связи
• Записывайте материал
• Сократите количество частых ошибок
• Сделайте низкоуровневые навыки автоматическими
• Рефлексируйте
• И т.д.

Статья: https://apptractor.ru/info/articles/kak-programmirovat-i-dvigatsya-vpered-bystree.html
Как перейти от математики средней школы к передовому ML/AI

Подробная 4-этапная дорожная карта со ссылками на лучшие учебные ресурсы, которые мне известны.

Статья: https://www.justinmath.com/how-to-get-from-high-school-math-to-cutting-edge-ml-ai/
Соавтор Манифеста Agile говорит о «переосмыслении» проекта

Заглядывая в будущее, Керн называет Манифест вечным: «В нем заложена суть той социальной вещи, которую мы называем разработкой программного обеспечения, и, на самом деле, его несложно распространить на любой вид разработки продуктов».

Статья: https://apptractor.ru/info/news/soavtor-manifesta-agile-govorit-o-pereosmyslenii-proekta.html
Компания Renovate Robotics во вторник представила своего новейшего робота для укладки гибкой черепицы на крыши - Rufus V1.

https://youtu.be/U4DZJZpX678
1
Эффективные Changelog-и

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

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

Статья: https://xavd.id/blog/post/effective-changelogs/
Как получить работу в Apple без колледжа и LeetCode

Я расскажу о том, как я изучал Swift, основной язык программирования, который я использую. Я расскажу о процессе найма, о прохождении собеседования и обо всем остальном, что смогу вспомнить.

Статья: https://apptractor.ru/develop/kak-poluchit-rabotu-v-apple-bez-kolledzha-i-leetcode.html
🥱1
Чистая Windows и разработка «без всего»

Есть компьютер с чистой копией Windows, без доступа в интернет и без каких‑либо установленных средств разработки. Только одна чистая пользовательская «венда». Не поверите, но даже в таких спартанских условиях возможно написать и запустить полноценную программу. И сейчас я расскажу как.

Статья: https://habr.com/ru/articles/837570/
👎3👍1
Как я сделал успешный побочный проект и возненавидел его

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

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

Это легче делать, если у вас больше продуктов и вы занимаетесь массовой поддержкой. Или если ваш проект может заменить вам работу на полный рабочий день, и его поддержка - единственное, чем вы занимаетесь в течение дня. Но если вы занимаетесь этим помимо своей обычной работы, то это ужасная потеря времени. Вам нужно установить определенные границы. Иначе работа над проектом будет занимать все ваше свободное время.
Лучшие языки программирования 2024 года

На вершине Python продолжает укреплять свое общее господство, чему способствуют такие вещи, как популярные библиотеки для таких областей, как искусственный интеллект, а также его педагогическая популярность. (Для большинства студентов сегодня если они и изучают один язык программирования в школе, то это Python). Python также довольно популярен среди работодателей, хотя его преимущество над другими языками общего назначения не так велико, и, как и в прошлом году, он играет вторую скрипку после языка запросов к базам данных SQL, который работодатели предпочитают видеть в паре с другим языком. Популярность SQL среди работодателей является естественным продолжением сегодняшнего акцента на сетевые и облачные архитектуры систем, где базы данных становятся естественным хранилищем всех байтов, которые пережевывает логика программы.

Новость: https://spectrum.ieee.org/top-programming-languages-2024
👎1
This media is not supported in your browser
VIEW IN TELEGRAM
Server Driven UI: 6 причин не использовать его

Мой главный посыл в этой статье - избегайте использования Server-Driven UI, насколько это возможно (если только команда разработчиков и руководство не разработают хороший конвейер для решения всех проблем). SDUI может сделать распределение кода и ответственности беспорядочным и трудноорганизуемым, даже если все находятся на одной волне. Это решение также может лишить вас гибкости в отношении новых решений в области дизайна и функциональности.

Статья: https://apptractor.ru/info/articles/server-driven-ui-6-prichin-ne-ispolzovat-ego.html
🤡2🤪1