Рубрика «Блог компании Mail.Ru Group» - 110

Программирование — занятие не для каждого - 1

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

Если вы периодически уделяете внимание культурологическим аферам Кремниевой Долины, то несомненно слышали о движении «Учись программировать» (“Learn to Code”). Политики, некоммерческие организации вроде Code.org, и даже бывший мэр Нью-Йорка Майкл Блумберг занимаются пропагандированием того, что они рассматривают в качестве навыка, который скоро будет необходим всему трудоспособному населению.

Возможно, отчасти это и так.

Но реальная картина получается несколько сложнее.
Читать полностью »

В этой короткой статье мы рассмотрим, что собой представляют неизменяемые объекты и почему нам следует их использовать. Неизменяемыми называются объекты, чьё состояние остаётся постоянным с момента их создания. Обычно такие объекты очень просты. Наверняка вы уже знакомы с типами enum или примитивами наподобие DateTimeImmutable. Ниже мы увидим, что если делать простые объекты неизменяемыми, то это поможет избежать определённых ошибок и сэкономить немало времени.
Читать полностью »

Отчет с Moscow CocoaHeads Meetup 29 апреля - 1

29 апреля в нашем офисе прошёл очередной митап Moscow CocoaHeads, посвящённый актуальным вопросам iOS- и OS X-разработки. Предлагаем всем желающим ознакомиться с видеозаписями и презентациями прозвучавших на митапе докладов.
Читать полностью »

Трансляции мастер-классов от Mail.Ru Group на канале Технострим - 1

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

В апреле мы уже провели несколько мастер-классов, например Обработка текстов на естественном языке. Дмитрий Бугайченко, инженер-аналитик Mail.Ru Group, рассказывал про обработку естественных языков. Объять необъятное в рамках одной лекции, конечно, невозможно, поэтому мы сконцентрировались на вопросе рекомендации контента и рассмотрели необходимый для этого стек задач: токенизацию, векторизацию, семантический и эмоциональный анализ. Больше записей мастер-классов — здесь.

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

В 2014 году я выступил на открытии конференции GopherCon с докладом под названием «Go: Best Practices for Production Environments». В SoundCloud мы были одними из первых пользователей Go и к тому времени уже два года писали на нём и поддерживали Go в бою в той или иной форме. За это время мы кое-чему научились, и я попытался поделиться частью этого опыта.

С тех пор я продолжал программировать на Go в течение всего рабочего дня, сначала в командах SoundCloud, отвечающих за операционную деятельность и инфраструктуру, а теперь работаю в компании Weaveworks над Weave Scope и Weave Mesh. Также я усердно трудился над Go kit, набором инструментов для микросервисов с открытым исходным кодом. И всё это время я принимал активное участие в развитии сообщества Go-программистов, встречался со многими разработчиками на митапах и конференциях по всей Европе и в США, коллекционируя их истории успехов и провалов.

В ноябре 2015-го, на шестую годовщину релиза Go, я вспоминал то своё первое выступление. Какие из лучших практик прошли проверку временем? Какие из них устарели или стали неэффективными? Появились ли какие-то новые методики? В марте мне представилась возможность выступить на конференции QCon London, где я рассказал о лучших практиках 2014 года и дальнейшем развитии Go до 2016 года. В этом посте представлена выжимка из моего выступления.

Ключевые положения я выделил в тексте в виде Top Tips — лучших советов.

А вот и cодержание:

  1. Среда разработки
  2. Структура репозитория
  3. Форматирование и стиль
  4. Конфигурация
  5. Разработка программ
  6. Логирование и метрики
  7. Тестирование
  8. Управление зависимостями
  9. Сборка и развёртывание
  10. Заключение

Читать полностью »

Отчёт с Moscow Atlassian Meetup 20 апреля - 1

В конце апреля прошёл третий митап, посвящённый продуктам Atlassian. Программа была рассчитана в первую очередь на опытных администраторов и разработчиков. Предлагаем вашему вниманию презентации и видеозаписи выступлений докладчиков.
Читать полностью »

image

Мы продолжаем запускать в партнерстве со Stepic бесплатные онлайн-курсы по дисциплинам из Технопарка, Техносферы и Технотрека. Сегодня мы хотим представить наш новый курс: «Основы постановки задачи на разработку программ».

Кроме того, мы перезапускаем три курса: «Web-технологии», «Многопоточное программирование», «Hadoop» — и снова открываем на них запись.
Читать полностью »

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

Дайджест продуктового дизайна, апрель 2016 - 1

Читать полностью »

Разбор задач первого квалификационного раунда RCC 2016 - 1
Merthyr Tunnel by Pictonart

8 мая состоялся первый квалификационный раунд чемпионата Russian Code Cup 2016. Напоминаем, что в этом году состязание программистов впервые проводится и на английском языке, так что языковой барьер теперь не является препятствием для наших зарубежных участников. Для прохождения первого квалификационного раунда было необходимо решить пять задач. На решение отводилось не более двух часов. Учитывалась не только правильность, но и скорость решения. Всего в раунде приняли участие 3559 человек, из которых занявшие первые 200 мест переходят на следующий этап соревнований. А пока давайте рассмотрим решения предложенных задач:

  1. Двоичная строка
  2. Поезд и туннель
  3. Красивое разбиение
  4. Подготовка задач
  5. Похожее метро

Читать полностью »

Вы не знаете Node: краткий обзор основных возможностей - 1

Идея этой публикации была навеяна серией книг Кайла Симпсона «Вы не знаете JavaScript». Они являются хорошим началом для изучения основ этого языка. А Node — это практически тот же JavaScript, за исключением небольших отличий, о которых я расскажу в этой статье. Весь код, приведённый ниже, вы можете скачать из репозитория, из папки code.

Зачем вообще переживать насчёт Node? Node — это JavaScript, а JavaScript используется почти везде! Мир был бы лучше, если бы большинство разработчиков в совершенстве владели Node. Чем лучше приложения, тем лучше жизнь!

Эта статья представляет собой реалистичный взгляд на наиболее интересные основные возможности Node. Ключевые моменты статьи:

  1. Цикл событий: освежаем ключевую концепцию, позволяющую реализовать неблокирующие операции ввода/вывода.
  2. Глобальный объект и процесс: как получить больше информации.
  3. Эмиттеры событий: интенсивное введение в событийную модель (event-based pattern)
  4. Stream’ы и буферы: эффективный способ работы с данными
  5. Кластеры: форкай процессы как профессионал
  6. Обработка асинхронный ошибок: AsyncWrap, Domain и uncaughtException
  7. Аддоны на C++: внесение своих наработок в ядро и написание собственных аддонов на С++

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js