Разное

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

WebSocket

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

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

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

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

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

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

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

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

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

7 апреля 2020 года — знаменательная дата для меня, ведь ровно 21 год назад в этот день началась моя карьера программиста. Уф! Всё было будто вчера, а...
Education

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

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

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

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

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

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

Как установить Linux Mint рядом с Windows 10 [инструкция для чайников]

Итак, вы решили перейти на Linux. Хорошее решение! А еще лучше, если вы выбрали Linux Mint! Linux Mint — один из лучших дистрибутивов для новичков. В установке...
VSCode

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

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

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

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

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

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

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

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

15 идей для вашего приложения. Часть 1

У разработчиков, как и у писателей, бывает ступор, когда хочешь что-то написать, но не знаешь что. Мы с моим другом Джимом собрали коллекцию идей для...
Linux

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

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

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

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

Как я настроил VS Code

Недавно я был в аэропорту Борисполь на Украине, работал над статьей для блога, как вдруг мой VS Code перестал работать. Он крашнулся дважды меньше...
Vim

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

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

10 признаков того, что программирование не для вас

Часто на Reddit или Quora я вижу вопросы “Как понять, что я могу стать хорошим программистом?”. Такие вопросы о программировании часто всплывают, когда люди...
Dataset

Лучшие бесплатные источники наборов данных для анализа

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

Знакомство с Git и GitHub: руководство для начинающих. Часть 1

Часть 1, Часть 2 Ищите, с чего бы начать изучение Git и GitHub? Хотите поработать с другими? Усердно трудитесь над проектом? Или вдруг заметили, что...
Linux

10 лучших легких дистрибутивов Linux для старых компьютеров

10. Peppermint   Peppermint — это облачно-ориентированный дистрибутив Linux, не требующий мощного железа для запуска. Он основан на Lubuntu и использует окружение рабочего стола LXDE для более плавной...
Education

10 программистских терминов на понятном языке

Все термины, приведенные ниже, уже раскрывали множество раз миллионами разных слов. Но у нас нет ни времени, ни возможностей обработать такое количество информации. По...
Github

Top 100 наиболее популярных репозиториев на GitHub

GitHub стал не просто хостингом для хранения кодов, а огромным сообществом разработчиков. Масштабы GitHub колоссальны: более 30 миллионов аккаунтов, более 2 миллионов организаций и более...
Containers

Как настроить Docker и Windows Subsystem for Linux (WSL): история о любви?

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

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

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

10 тенденций в разработке программного обеспечения в 2019 году

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

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

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

Какие языки программирования лучше учить в 2019 году

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

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

1. Online GDB Online GDB — это браузерный компилятор, интерпретатор и отладчик. Поддерживает 20 языков программирования, включая C, C++, Python, Ruby, C#, Swift и JavaScript. Для меня он бесценен...
Education

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

7 секретов для поддержания мотивации при изучении программирования

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

Основные принципы дизайна для НЕ дизайнеров

Я сформировала этот список, посредством многолетнего наблюдения за своими друзьями НЕ дизайнерами, семьей и коллегами, которым постоянно приходится сталкиваться с необходимостью применения дизайна в...
Docker

Почему вы должны обратить внимание на Docker?

Когда я гуглил информацию о фреймворках глубокого обучения (deep learning), я заметил, что почти каждый из этих фреймворков поддерживался Docker. В итоге у меня...
Git

Основы Git за 5 минут

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

Собеседование Java разработчика. Наиболее Часто Задаваемые Вопросы

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

Список навыков для начинающих фронтенд-разработчиков

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

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

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

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

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

Как начать работать программистом почти без опыта

Я попал в Кремниевую Долину через черный ход — я начинал свою карьеру с простых и быстрых подработок на фрилансе. Рекомендую этот подход: это эффективный и...
Developer

Разработчики, которые постоянно что-то изучают — вот вам совет!

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

Как настроить отладчик для Chrome extension в Visual Studio Code

Отладка веб-приложений с помощью Visual Studio Code значительно повышает эффективность работы, помогает сэкономить много времени и сохранить чистоту кода. Приступим! Начало установки Для начала установите расширение...
Programming

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

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

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

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

Как я стал программистом в 40 лет

Вот, как я сменил свою прежнюю работу на front-end разработчика в 40 лет, не имея ни образования, ни опыта работы в этой сфере. Я...
Self Improvement

5 вредных привычек неэффективных программистов

Плохие программисты вовсе не глупы. Просто у них есть вредные привычки. Некоторые программисты лучше других. Существует своего рода статистика: небольшая группа программистов — на уровне «великолепно», чуть...
Web Design

9 лучших примеров макетов сайта и идей для веб-дизайна в 2018

Есть всего одна возможность создать хорошее первое впечатление. Качественный дизайн сайта может в первую же секунду поразить посетителя. Именно поэтому дизайн главной страницы очень...
Blockchain

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

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

6 месяцев без Windows: ужасная правда об играх на Linux

Последние 6 месяцев я старался работать исключительно в Linux и не намерен отказываться от задуманного. Такой опыт оказался прогрессивным, обучающим и, временами, даже забавным....
Machine Learning

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

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

5 лучших курсов по React Native для разработчиков мобильных приложений

Если вы — веб-разработчик, который хочет создавать мобильные приложения, но не хочет тратить время на изучение Java/Kotlin (для Android) или Objective C/Swift (для iOS),...
Java

Как научиться программировать на Java и с чего начать

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

Искусственный интеллект оживит наших близких

После того, как Роман Мазуренко, близкий друг Евгении Куйды, погиб в автокатастрофе, она решила возвести ему памятник. Она собрала все текстовые сообщения, которые он...
Education

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

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

Топ 10 альтернатив Github для размещения Open Source проектов

Github — мощная, безопасная и самая популярная онлайн платформа для размещения проектов с контролем версий, с использованием Git. Хоть Github больше известен как платформа для разработки...
Archive

Форматы .tar .zip .gz: Различия и эффективность

Вы наверняка встречали файлы с расширением .tar, .zip или .gz . А знаете ли вы, чем они отличаются, почему мы их используем, и какой формат наиболее эффективен? Различия между...
Ruby

Как и почему я перешёл с Ruby на Python

В 2008, когда я ещё учился на инженера-разработчика, двое моих друзей решили запустить проект под названием Feedbooks. Суть проекта состояла в создании электронной библиотеки,...
Ubuntu

Установка и использование Snap-пакетов в Ubuntu 18.04

Введение Snap (или Snappy) — это система развертывания программ и управления пакетами, созданная Canonical. Эти пакеты чаще называют «снепами». Для работы с ними используется утилита «snapd», встроенная...
VIM

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

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

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

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

Введение в Subject в реактивном программировании

Subject — это «особый» тип наблюдаемого объекта, который позволяет транслировать значения сразу нескольким подписчикам. Самое классное здесь то, что Subject предоставляет ответы в режиме реального времени. Например,...
Education

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

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

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

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

9 вещей, которыми следует заняться Java программисту в 2018 году

Будучи Java разработчиком и автором Java-блога, я часто встречаю вопросы от java-программистов со всего мира, о том, как можно улучшить свои навыки. В прошлом я написал...
Ubuntu

13 Горячих клавиш, которые должен знать каждый пользователь Ubuntu 18.10

Рассмотрим некоторые полезные сочетания клавиш для Ubuntu 18.10 с графическим окружением GNOME. Мы не включили в эту статью универсальные сочетания клавиш, такие как Ctrl...
Java

Как правильно учиться Java-программированию: история одного тьютора

Моя история Все началось больше десяти лет назад. Решив стать программистом, я начал изучать несколько языков, чтобы в конечном итоге найти «свой» язык. В Java я...
Docker

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

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

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

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

Как мой 10-летний сын выучил Javascript 

“Папа . . . А чем ты зарабатываешь на жизнь?” Этот неожиданный вопрос заставляет нас, родителей, испытать чувство гордости. Так как он означает, что ребенок наконец-то видит в...
Git

Как стать Git-мастером: 7 советов по повышению производительности

Автозаполнение команд Git в терминале Большинство команд терминала для Git начинаются с ключевого слова git, за которым следует пробел и второе ключевое слово. Из-за наличия...
Education

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

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

Как писать чистый код?

Роберт Мартин: «Единственная адекватная мера качества кода — это количество восклицаний «какого чёрта!» вминуту». Позвольте объяснить. Делая код-ревью, я испытываю три эмоции: Какого черта!  —  с отвращением. Этот...
Programming

Практические советы начинающим программистам

Когда я начал делиться своими работами по освоению программирования и хаком своего образования, многие очень сильно заинтересовались и стали спрашивать, как начать учиться программированию. Я...
Docke and Gitlab

Как настроить непрерывную интеграцию на GitLab с помощью Docker

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

Знакомство с Git и GitHub: руководство для начинающих. Часть 2

Часть 1, Часть 2 Рабочий процесс на GitHub Допустим, у вас есть проект с кучей разных идей и возможностей для дальнейшей реализации. Что-то из этого...
Java

Как правильно учиться Java-программированию: история одного тьютора

Моя история Все началось больше десяти лет назад. Решив стать программистом, я начал изучать несколько языков, чтобы в конечном итоге найти «свой» язык. В Java я...
Self Improvement

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

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

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

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

Нативное будущее кроссплатформенной разработки

Коротко о кроссплатформенности Сейчас кроссплатформенная разработка не пользуется большой популярностью. Основная причина состоит в том, что существующие инструменты не в полной мере справляются со своей...
CodeReview

Code Review - Полное руководство

После проведения сотни code rewiew, лично возглавив R&D (Research & Development) команду и спровоцировав несколько непреднамеренных ошибок, я решил поделиться своими выводами о том,...
Education

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

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

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

Вы помните, что именно представляет собой один из краеугольных камней большой разработки программного обеспечения? В первые годы своей работы большинство разработчиков сталкиваются с принципами SOLID,...
The key to learning fast

Секрет быстрого обучения

Многие молодые разработчики боятся выглядеть глупо. Они уверены, что это преуменьшает их способности в глазах других и отрицательно влияет на их карьеру. Однако все наоборот....
Learning

Обучение «на всякий случай» против обучения «точно в срок»

Как программист должен поступить с новой информацией? Выучить «на всякий случай», мало ли пригодится в будущем? Или выучить «точно в срок» тогда, когда эти...
Career

Почему программисты не бросают работу?

Примечание: В этой статье я выражаю своё личное мнение, а не взгляды какой-либо компании. Технические компании постоянно пытаются понять, что нужно сделать ,чтобы сотрудники были довольны. Добиться...
Software Development

Чему я научился, проработав полгода в качестве разработчика-самоучки

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

Какой язык программирования выбрать в 2019?

Благодаря интернету весь мир имеет доступ к ресурсам для обучения программированию: как платным, так и бесплатным. Каждый щелчок мыши ведёт к новой статье, новому...
Programmer Technician

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

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

5 правил кода

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

Несколько советов, которые помогут вам на собеседовании и не только

Зачастую, получить первую должность в качестве разработчика крайне трудно. Как убедить человека принять вас на работу, если опыта как такового и нет? Какие вещи знать...
Learning

9 полезных расширений для 2020 года

Refined GitHub Refined Github упрощает интерфейс Github и добавляет полезные функции. «Мы надеемся, что Github заметит и реализует некоторые из этих необходимых улучшений. Поэтому, если вам...
Education

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

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

Как получить работу в крутой компании

Пару лет назад я разговаривал со своей подругой, Бернадетт Лангман, которая на данный момент занимает должность старшего технического рекрутера в американской технологической компании Qualtrics....
GraphQL

Решаем проблему запроса N+1 в GraphQL с помощью Dataloader

Предыдущая часть: “Почему нельзя разрешать поля GraphQL как конечные точки REST” В предыдущей статье мы закончили на том, что при разрешении полей возникает проблема запроса...
React

Как скоро хуки вытеснят классы React?

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

Я ухожу из Google. Что же такое Google Cloud на самом деле?

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

Запечатанный класс

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

Супергеройский макет: комбинируем CSS-сетки и CSS-фигуры

В этой статье мы создадим макет страницы комикса с панелями уникальной формы. Просмотреть готовую демо-версию можно на CodePen. Вдохновением для макета послужит страница комикса Generations:...