Разное

Тренды, технологии, истории взлетов и падений от лучших разработчиков отрасли, интервью с экспертами индустрии и многое другое!

Эволюция графического дизайна: от пещерной живописи до цифровой эпохи

Эволюция графического дизайна: от пещерной живописи до цифровой эпохи

В то время как дизайн UX/UI и продуктовый дизайн  —  относительно новые направления, история возникновения графического дизайна уходит в далекое прошлое. Графический...
Проблема эйджизма в IT-сфере

Проблема эйджизма в IT-сфере

Причины возникновения эйджизма в IT-сфере и способы его преодоления Когда вы заканчиваете школу или университет и начинаете искать работу,...
Автоматизированные тесты - качественно и непременно эффективно!

Автоматизированные тесты - качественно и непременно эффективно!

Не воспринимайте автоматизированные тесты как наказание. Их цель не в том, чтобы пройти проверку кода или соответствовать критериям приемлемости и показателям инструментов...
8 советов, как стать лучше во фронтенд-разработке

8 советов, как стать лучше во фронтенд-разработке

Должен ли я планировать свой проект или лучше сразу погрузиться в процесс разработки? Стоит ли мне внедрить вот этот плагин или вон...
Как добавить в проект тестирование скриншотов с Cypress

Как добавить в проект тестирование скриншотов с Cypress

Разработчиков, как правило, заботит качество кода. Есть различные виды тестов, которые помогают избежать ситуаций, когда код ломается после добавления в проект новой...
Удивительное превращение винтажного устройства в онлайн-радиоприемник

Удивительное превращение винтажного устройства в онлайн-радиоприемник

Моя супруга всегда хотела, чтобы у нас был радиоприемник, который красиво выглядит; легко регулируется; обладает хорошим качеством звука; проигрывает станции из...
5 признаков того, что вы тратите свой потенциал разработчика впустую

5 признаков того, что вы тратите свой потенциал разработчика впустую

Устроившись на работу, вы легко можете застрять в ловушке простого обмена своего времени на зарплату. Вы едете на работу, заходите в офис,...
Искусство обращаться за помощью к коллегам-программистам

Искусство обращаться за помощью к коллегам-программистам

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

Модульное тестирование с имитацией сетевых вызовов

Модульное тестирование — отличный способ удостовериться, что приложение работает на протяжении многих итераций. Иногда важно убедиться, что всё вместе работает асинхронно и что данные...
Education

Программирование- это искусство и никак иначе!

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

Упрощаем работу с Google-формами: Apps Script и выпадающее меню

Я работаю в отделе физической безопасности одной технической компании. Для улучшения рабочих процессов я пользуюсь JavaScript в G Suite. Сам я не...
Education

Два метода безопасного программирования

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

Дизайн физического движка

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

Всё, что вы хотели знать об отладке в IntelliJ IDEA

Отладка — это один из самых важных этапов процесса разработки. И дело не только в том, что устранение ошибок занимает, вероятно, большую часть времени:...
Terminal

Пять шагов к красивому терминалу, которым вам понравится пользоваться

Если вы читаете эту статью, то, скорее всего, вы не большой поклонник своего терминала, и время, потраченное на ввод команд, входит в...
Education

Приключения аналитика в стране кода: пробуждение силы

Программы для электронных таблиц, такие как Microsoft Excel и Google Sheets, превосходны. Они вне конкуренции, когда дело касается выполнения простых вычислений или...
Education

7 шагов до уровня Моцарта кода

Мы читаем большое количество статей, с рекомендациями по повышению продуктивности. Правда, ирония в том, что на них уходит столько времени, сколько можно...
VSCode

Школа ленивого разработчика: ускоренный курс по созданию фрагментов кода в VS Code

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

Собеседование в Facebook. Ценный опыт и открытия

Начиная поиск работы, я никак не могла поверить, что имею реальный шанс на получение должности в Facebook. Пять месяцев...
Education

5 недооценённых приложений в помощь программисту

Вступление Весьма ироничен тот факт, что разработчики используют кучу разных приложений и ПО, чтобы создавать… приложения и ПО....
Education

Выбираем шрифт

Факторы, которые следует учитывать при выборе шрифта для вашего следующего проекта. Serif или Sans Serif, вот в чем вопрос
Arduino

Как создать конвейер автоматизированных сборок для проекта в Arduino Часть 2/2

Часть 1, Часть 2 Давайте добавим Arduino Zero. Модифицируем часть программы, которая устанавливает ядро AVR, и добавляем другой код:
Arduino

Создаём конвейер автоматизированных сборок для проекта на Arduino. Часть 1/2

Важная часть профессионального программирования — это конвейеры автоматизации сборок. Вы, конечно, можете считать несерьезным свое увлечение проектами на Arduino. Но давайте представим, что вы...
Education

Учим ИИ отвечать на сообщения

Введение Глубокое обучение применяется во многих задачах NLP вроде перевода, добавления титров к изображениям и систем поддержки диалога....
Kanban

Scrum мёртв. Восславим нового короля - Kanban!

Я использовал Scrum с самого начала своей карьеры. Работе с этим фреймворком я обучился ещё в колледже, где он рассматривался как наилучший...
Interview

Худшие способы нанять хороших программистов

Хорошее собеседование  —  это просто неформальная беседа двух увлеченных программистов Чарльз Баркли поразительно точно отметил:
Terminal Commands

6 команд терминала для раздражающих задач

Скорость и эффективность - ключевые навыки, имеющие первостепенное значение для продуктивности в разработке. Чем больше времени уходит на выполнение...
Education

P.S. Дорогой рефакторинг, нам нужно на время расстаться

Я люблю рефакторинг. Действительно люблю. В процессе TDD (разработки через тестирование) по мере прохождения тестов я могу сосредоточиться исключительно на коде, дорабатывая...
TypeScript

Ох, TypeScript, ты боль моя

После долгих лет “постоянной” работы с JavaScript у меня (наконец-то) появилась возможность приобщиться к TypeScript. Несмотря на то, что некоторые знакомые смело...
Education

Программное обеспечение без конструкции if-else

Не откладывая в долгий ящик скажу: зачастую конструкция if-else —  плохой выбор. Её использование приводит к сложным конструкциям, снижает читаемость кода и усложняет...
Keyboard

Руководство по навигации с помощью клавиатуры

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

Как комментировать файлы JSON

Если у вас возникли проблемы с добавлением комментариев к файлу JSON, на то есть веская причина: JSON не поддерживает комментарии.
Education

Почему сниппеты кода со StackOverflow могут повредить ваш проект

StackOverflow стал спасением для многих программистов, включая меня. Некоторые из нас никогда не посещали домашнюю страницу StackOverflow. Единственный способ, по которому мы...
Education

2 черты отличных программистов

Что отличает отличных программистов от хороших? Это вопрос, который занимает меня с тех самых пор, как я только начал учиться программировать.
Scala

Хватит использовать Pandas, пора переходить на Spark + Scala!

Переход с Pandas на Spark и Scala не настолько труден, насколько вы можете предположить, при этом в итоге ваш код будет выполняться...
Education

Искусственный интеллект + распределённые реестры = оружие против фейковых новостей

Поддельные новости — довольно важная проблема в нашем онлайн мире. И хотя дезинформация и пропаганда существуют уже сотни лет, новости-фейки сегодня становятся по-настоящему серьёзной...
Education

Разоблачение мифов о сеньоре

Хватит этих историй о том, “как стать старшим разработчиком” Возможно, мой мозг избирательно раздражается, видя, как люди ловят на...
Flutter

Прикольные анимации для Flutter-приложений

Я покажу вам 6 прикольных анимационных эффектов, которые можно попробовать в своих приложениях. Добавлять анимацию с Flutter — одно удовольствие. И делать это можно...
Education

Как мне не удалось совладать с устаревшим кодом

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

Топ-5: непреднамеренная ложь программистов

Я знаю, я лгал! Признаюсь. Я был разработчиком и остаюсь им. Разработка  —  больше, чем просто работа. Это  —  состояние...
Education

Какие ошибки можно допустить в описании пользовательских сценариев и как их исправить

Сейчас нет недостатка в информации о том, как создавать пользовательские сценарии и почему они важны. Но, тем не менее, мы продолжаем совершать...
WebSocket

Как украсть секреты разработчиков через Websocket?

Это история о запутанном и не очень полезном методе извлечения кода, создаваемого ничего не подозревающими JavaScript разработчиками, занятыми над секретными проектами. 
Python

4 простых способа рефакторинга кода

Рефакторинг — это процесс обновления существующего кода без изменения его функционала. Существует множество причин рефакторить код, включая производительность, читаемость и масштабируемость в будущем.
Clean Code

Комментарий в коде написать - всё равно, что проиграть

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

Учимся программированию как Эйнштейн

Эйнштейн был гением и одним из величайших ученых, когда-либо живших на земле. В 1905 году он опубликовал четыре научные работы, заложившие основы...
Linux

5 настроек рабочего стола Linux для разработчиков

Linux: программируйте удобнее Как только я начал работать из дома, я решил, что пришло время капитального ремонта рабочего...
Education

Как достичь уровня senior-разработчика

Разработчики ПО классифицируются по уровням опыта следующим образом: · junior (2–3 года); · senior (10+ лет);
Education

3 инструмента, чтобы начать программировать на недорогом гаджете

В твиттере я общаюсь с людьми, которые только приступают к разработке приложений. Иногда они говорят, что, чтобы начать программировать, им нужен (дорогой) ноутбук....
VSCode

Как настроить Visual Studio Code для C, C++, Java, Python

Visual Studio Code — популярный редактор кода, бесплатный и с открытым исходным кодом. Но я уверен: каждый из нас, кто пытался настроить Visual Studio Code...
Education

Какой язык программирования используют самые счастливые разработчики?

В мире информационных технологий существует множество стереотипов, например «PHP — самый плохой язык» или «Python — это язык для начинающих». К счастью, мы можем представить себе...
Education

Используйте перечисления, а не логические аргументы

Когда лучше избегать логических аргументов? Логические значения — это первый тип данных, который изучает любой программист. А почему бы и нет?...
Education

7 причин выгорания программистов

Джерри — джуниор-разработчик, который в начале своей карьеры не мог дождаться утра, чтобы приступить к работе. И каждый вечер, даже после 10-часового рабочего...
Vim

Стоит ли разработчику изучать VIM в 2020 году?

Введение Небольшая предыстория для понимания контекста. В конце 2018 года я всерьез занялся программированием, решив развивать карьеру. До этого...
Education

Парное программирование: недостатки, которые предпочитают умалчивать

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

21 серьёзная ошибка за 21 год работы программистом

7 апреля 2020 года — знаменательная дата для меня, ведь ровно 21 год назад в этот день началась моя карьера программиста.
Software Development

Возвращаемся к SOLID

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

Программирование: 5 недооцененных навыков

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

ПО без тестирования - что самолет без крыльев

Можете ли вы представить авиакомпании, которые никогда бы не тестировали свои самолеты, а просто доставляли бы на место уже готовые. Чувствовали...
Education

Перестаньте фокусироваться на синтаксисе, если хотите стать senior-разработчиком

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

Наглядное руководство по каждому типу тестов

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

Топ 10 бесплатных инструментов для автоматизированного тестирования

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

12 привычек эффективного разработчика

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

Вычислительные затраты на написание чистого кода

Почему иногда люди пишут подобный код? var = float(str(alist).split())/3+float(alist) Ответ прост: чтобы сэкономить вычислительное время. Стоит...
Education

Искусство упрощения для программистов

Недавно я наткнулся на очень интересную книгу авторства Nagisa Tatsumi. Называется она “Искусство упрощения: как избавиться от беспорядка и найти радость” (“The...
Education

Как пройти собеседование по проектированию систем?

У большинства компаний в сфере информационных технологий отдельный тур собеседования посвящён проектированию систем. Кандидатов просят спроектировать масштабируемую систему типа Facebook NewsFeed, Instagram...
Blockchain

6 шагов до карьеры блокчейн-разработчика

Шаг 1: оцените свои навыки Вероятно, что у вас, как у разработчиков, после работы со множеством разных технологий появился свой...
IBM

В борьбу с коронавирусом вступил мощнейший в мире суперкомпьютер

В то время как Covid-19 продолжает заражать людей, учёные спешат найти лекарства, которые помогут пациентам выздоравливать, как можно быстрее. Невиданный доселе патоген...
Interfaces

Программируем с интерфейсами: и у нас на это 5 причин

Начну с самого важного. ВСЕГДА используйте интерфейсы . Ну или хотя бы в большинстве случаев, когда пишете программу или создаёте проект. Чем больше,...
Clean Code

Подсказки по именованию логических переменных

Существует определенное соглашение  —  снабжать имена логических переменных и функций префиксами “is” или “has”. Ну, знаете, что-то вроде isLoggedIn, hasAccess или наподобие...
Blockchain

Введение в блокчейн  -  основу криптовалют

Вы ещё помните то время, когда курс криптовалют вырос более чем в 50 раз всего за 1 год?! Вот наглядный график произошедшего:
Education

64 совета на основе 50 лет опыта в разработке ПО

Первый урок по программированию (конечно же, FORTRAN) я посетил, когда учился в колледже в 1970. За последние же полвека я провёл уйму...
Education

Интерфейсы против реализаций

Как-то раз я написал такой твит: “Если бы я мог научить молодого программиста только чему-то одному, то это было...
Education

Что может помешать разработчику самостоятельно создать успешное приложение

Четыре года назад я опубликовал своё первое приложение в Google Play Store. И по ходу разработки я наткнулся на множество препятствий, но...
Machine Learning

Топ-10 курсов по машинному и глубокому обучению в 2020

Знаете, о чём я мечтал, когда начал изучать машинное обучение? О таком сборном курсе по машинному обучению формата всё-в-одном. В то время...
Mathematics

Простейшее объяснение парадокса Монти Холла

Парадокс Монти Холла — это одна из тех математических задач, над решением которой уже долгое время бьются многие умы, и даже всемирно известных математиков...
Education

10 программистов-самоучек, ставших преуспевающими разработчиками

Если вы читаете эту статью, потому что находитесь в начале пути самообучения программированию или уже достигли его середины и начинаете сомневаться, то...
Education

5 мудрых цитат известнейших программистов

Быть программистом — значит выбрать путь непрекращающегося обучения, ведь это среда неиссякаемого потока нового — новые функции, новые языки, новые инструменты, новые фреймворки. Но в то...
Education

9 бесплатных курсов по программированию от Гарварда, MIT, IBM, Google и Microsoft

Получение диплома в университете или институте может стоить очень много. А особенно, если вы собираетесь сменить карьеру или, может быть, всего лишь...
Education

Как добиться большей зарплаты на собеседовании

Прежде чем мы начнём разговор о зарплате, давайте обсудим разработку ПО. Разработка — это квалифицированный труд. Вы явно не будете стоять на конвейере, добавляя...
Programmer Technician

Падение разработчиков ПО, рост специалистов по программированию

История Заглянув в истоки информатики, можно обнаружить, что изначально она не только не имела такого названия, но и не...
Education

Как преодолеть синдром самозванца: 6 советов разработчикам

“Все мои достижения не так уж велики и являются всего лишь следствием удачи.”“Мне кажется, я плохой программист, потому что до сих пор...
VSCode

10 Расширений VS Code Insider для веб разработки 2020

Детище Microsoft — Visual Studio Code — сохранит лидирующую позицию среди редакторов и ИСР на 2020 год. От огромного сообщества на его маркетплейс постоянно поступают крутые...
Education

О чём не говорят инженеры ПО

Здесь, на Medium, на YouTube и во всем интернете люди говорят о том, как они стали программистами без степени в компьютерных науках....
Education

4 шага для повышения концентрации

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

Продвинутый CLI: команды, которые должен знать каждый разработчик

1. wget В операционных системах, подобных Unix, команда wget загружает файлы, обслуживаемые по HTTP, HTTPS или FTP через...
Education

21 способ быть хреновым разработчиком

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

Сканируем образы Docker на уязвимости

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

5 шагов к созданию крутого пул-реквеста

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

Привычки, которые стоит выработать программисту

Все мы имеем как хорошие, так и плохие привычки в программировании. Однако, как только вы начинаете вырабатывать правильные привычки, ваша эффективность существенно...
VIM

Преодолейте ваши страхи перед Vim

Как выйти из Vim и не только Я хочу развеять страхи, витающие вокруг использования текстового редактора VIM. В этой статье...
Jupyter Notebooks

4 совета по улучшению Jupyter Notebooks

Jupyter Notebooks - отличный инструмент для всех разработчиков, желающих поделиться своей работой. Он предоставляет простой способ обмена проектами и широко используется в таких...
Java Script

Слабо решить эти задачи по программированию?

Программирование всегда связано с решением различных задач. Я подготовил список из шести различных заданий и отсортировал их по сложности решения. Первая — самая простая,...
Software Engineering

5 правил кода

За последнее время я сформировал список актуальных рекомендаций относительно того, что должен и чего не должен делать современный разработчик. Давайте ознакомимся с...
Web Development

8 незаменимых веб-приложений для разработчиков

1. Online GDB Online GDB — это браузерный компилятор, интерпретатор и отладчик. Поддерживает 20 языков программирования,...
Education

Как вернуть былой энтузиазм к программированию

Недавно я наткнулся на тему в сообществе Reddit, где люди заявляли о своей утрате интереса к программированию. Прочитав эту тему, можно сделать...
iOS

Как я наконец перешел от обучения к работе

Даже после прохождения множества курсов, где вы просто копируете код вслед за инструктором, существенного прироста в навыке, как правило, так и не...
Education

Вы достигли высот самообучения. Что дальше?

Возможно, вы увлечены изучением Boot Camp либо проходите 100-дневную программу освоения программирования. Независимо от того, чем из подобных вещей вы занимаетесь, однажды...
Education

Возраст - это просто цифра

“Я боюсь, что для меня уже слишком поздно менять профессию… Вообще менять что-либо существенное в жизни уже поздно. Мне уже (подставьте соответствующий...
Education

Как быстро выучить новый язык программирования

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

Как организовать код в Python

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

GitHub-репозитории, о которых должен знать каждый разработчик

Подборка репозиториев, которые помогут вам стать разноплановым разработчиком В данной статье мы поговорим о GitHub-репозиториях для разработчиков на любом...
Java Script

Увеличиваем производительность приложения React + Redux с библиотекой Reselect

Селекторы — это очень простой способ выбрать состояние из хранилища redux, которое содержит всю логику и данные приложения. Если вы создаёте...
JavaScript

Создание чат-приложения в режиме реального времени с Vue.js, Socket.IO и Node.js

В статье я расскажу, как можно создать чат-приложение в режиме реального времени с помощью Vue.js, Node.js, Express и SOCKET.IO.
Python

Сможет ли Julia занять место рядом с Python

Julia и Python —языки программирования, которыми я очень дорожу. Использование Julia вместо Python обладает множеством преимуществ, таких как меньшее время написания кода...
Git

Индексирование коммитов с Git Add Patch

Для разработчика нет, наверное, ничего более увлекательного, чем запуск нового проекта. Начинается он с разработки доменной модели и планирования логики предметной области....