Разное

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

Education

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

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

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

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

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

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

SQL в науке о данных

Введение SQL (язык структурированных запросов) - язык программирования, используемый для запроса и управления данными в реляционных базах данных. Реляционные...
Python

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

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

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

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

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

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

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

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

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

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

Как перевести iPhone в черно-белый режим и почему вам следует это сделать

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

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

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

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

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

Что мы узнали о трендах найма разработчиков в 2019 году, изучив 112,654 тестов для...

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

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

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

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

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

Неужели комментировать код — это плохо?

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

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

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

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

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

Вам следует изучить программирование

Знаете, как это ужасно, когда ты женишься, а немного позже встречаешь любовь всей жизни? То же произошло и со мной. Я поступил в университет на...
Java Script

Как не лажать с JavaScript. Часть 4

Часть 1, Часть 2, Часть 3, Часть 4 Декларативный код  —  популярное понятие, но что оно означает на самом деле?...
Terminal

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

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

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

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

Как бороться с одиночеством в цифровом мире: 10 простых решений

Очень важно соблюдать баланс между работой и личной жизнью. Этот баланс важен и для фрилансеров, и для тех, кто работает в офисе с 9...
Git

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

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

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

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

Визуализация map, filter и reduce

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

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

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

Лучшие инструменты для разработки приложений под Android

Android предлагает разработчикам массу возможностей: это универсальная, открытая платформа, используемая миллионами пользователей по всему миру, с удивительно простой в использовании площадкой для распространения приложений....
Learning

Как не опустить руки во время обучения чему-то новому?

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

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

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

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

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

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

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

Почему разработчикам нужны “часы практики”

Если вы музыкант или просто увлекаетесь музыкой, то наверняка знаете, что “практика” и “репетиция” — два совершенно разных понятия. Зачастую, у музыкантов есть “сакральные” часы практики. Эти...
Visual Studio Code

✨ Расширения для Visual Studio Code, которые поднимут процесс разработки на новый уровень

Давайте поговорим о Code — Visual Studio Code. Мои дорогие читатели попросили меня рассказать о тех расширения, которые...
Docker

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

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

Как перестать переживать по поводу дедлайна

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

Вы не понимаете своих программистов

...Открытое письмо не-технарям в технических компаниях Может показаться, что мы заняты только этим: Но на самом деле всё несколько сложнее. Обычно разработчики — целеустремлённые люди, многие из них сами...
Success

С этими советами у junior-разработчиков не возникнет проблем на их первой работе

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

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

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

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

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

Как писать код, который будет нравится вам в будущем

Дядя Бен однажды сказал Питеру Паркеру: “С большой силой приходит большая ответственность”. Эта цитата относится также и к программистам, отвечающим за разработку...
GitHub

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

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

Топ-12 факторов, уничтожающих продуктивность программиста

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Как обучать программированию подростков?

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

Советы по оформлению дизайнерского портфолио

Вернувшись домой с мероприятия, посвященному менторству, в духе “быстрых свиданий”, я был в равной степени как истощен, так и полон энергии. Истощен,...
TypeScript

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

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

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

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

Хотите стать счастливым и продуктивным программистом? Используйте эти 5 методов из Психологии!

1. Войдите в состояние потока Во всемирно известной книге “Поток: Психология оптимального переживания” психолог Михай Чиксентмихайи раскрывает секрет того,...
8 советов, как стать лучше во фронтенд-разработке

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

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

Самая лучшая идея в науке о данных

Есть три типа шаблонов данных: Шаблоны/факты, которые существуют в наборе данных и за его пределами.Шаблоны/факты, которые существуют только в...
HR

Какие вопросы задавать HR-менеджеру во время собеседования

Последние 6 недель я только и делала, что проходила собеседования на роль middle-разработчика программного обеспечения в Амстердаме. Амстердам — это очень большой город, и...
Jupyter

Как делать заметки как программист

Когда я был мал — писал ужасные конспекты: они представляли из себя тетради с грязным текстом и плохой структурой. Практически бесполезные. Потом, когда я открыл...
Education

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

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

Cтарая поговорка гласит: “Одна голова хорошо, а две — лучше”

Я часто слышу, как люди говорят о том, что их работа продвигается более эффективно и плодотворно когда они остаются одни. Также я...
Обучение

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

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

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

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

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

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

Признаки настоящего сеньора

Сеньор. Кто он? Можно называть разработчика сеньором, исходя из опыта работы, но спектр навыков программистов настолько широк, что это не всегда отражает...
VSCode

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

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

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

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

Фреймворк или язык программирования?

Программисты сегодня… …толком и не знают где заканчивается язык программирования и начинается фреймворк. Что я под этим имею в виду? Примерно до 1988-ого года большинство программ, которые...
Productivity

Самый важный навык для программиста

Нет, нет и нет. Скажем вместе. НЕТ! Хорошее начало. Но чему мы говорим...
UX

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

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

У меня появилась идея для приложения, но…я не разработчик

У меня есть идея для веб-приложения Мои поздравления — вас посетила муза! Теперь пришло время внимательно взглянуть на вашу идею и решить, следует ли ее доработать, перейти...
Linux

Как прокачать командную строку

21 Bash-команда для экономии времени Данная статья является кратким введением в bash-команды. Умение обращаться с командной строкой — ключевой навык для...
Docker

Перенос сценариев CI в docker build

Распространенный сценарий: команда разработчиков поддерживает множество Jenkinsfile, каждый из которых соответствует требованиям проекта. Однако эти сценарии непрерывной интеграции (CI) непригодны для повторного...
Testing

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

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

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

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

Результаты ежегодного опроса программистов «New Coder Survey 2018»

Более 31.000 человек приняли участие в ежегодном опросе программистов со всего света, под названием New Coder Survey, предоставив исследователям беспрецедентные сведения о том, как...
UX

Почему все веб-сайты выглядят одинаково?

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

Какую СУБД начать изучать в первую очередь?

Какую систему баз данных стоит изучить в первую очередь? И стоит ли вообще изучать какие-либо СУБД, ведь для этой работы есть специально обученные люди? Да,...
Data Science

Рекурсивное программирование

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

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

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

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

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

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

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

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

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

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

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

7 полезных советов для веб-дизайнеров

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

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

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

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

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

Битва трендов: React vs Angular vs Vue

Подождите, по-моему, я уже писал на эту тему… Да, но слишком многие жаловались, что я так и не сказал, что же лучше. Поэтому в...
The key to learning fast

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

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

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

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

Станьте экспертом в разработке с этими продвинутыми советами по кодированию. Часть 1

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

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

Очень долго я боялся начинать собственные проекты из-за нехватки знаний. В любом проекте, за какой бы я не взялся, всегда находилось что-то, в чем я...
Clean code

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

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

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

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

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

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

Как стать продуктивнее на GitHub

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

Как я начала кодить

Моя история настолько далека от программирования, насколько это возможно. На тот момент я уже десять лет училась в школе. У меня есть степень магистра...
Software Document

Как написать хороший проектный документ

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

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

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

Обработка аргументов в Python с помощью argparse

Если вы хотите разрабатывать ПО на Python, то умение использовать argparse в своих скриптах будет крайне полезным. Если же вы специалист по...
Data Science

Выбираем базу данных

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

6 лучших JS-библиотек для визуализации данных и создания отчетов

Веб-инструменты для отчетов используются для представления, создания и изменения отчетов с помощью веб-интерфейса — веб-браузера. Эти инструменты могут быть встроены в сторонние...
Linux

4 лучших современных текстовых редактора с открытым исходным кодом для программирования в Linux

Если вы спросите опытных пользователей Linux, то скорее всего они скажут вам про Vim, Emacs, Nano и т.д. Эти легендарные редакторы великолепны вне всякого...
Алгоритм Рабина-Карпа с полиномиальным хешем и модульной арифметикой

Алгоритм Рабина-Карпа с полиномиальным хешем и модульной арифметикой

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