Как стать автором
Обновить
5
0
Дмитрий Степанов @Stepanow

Пользователь

Отправить сообщение

Время учиться: дайджест бесплатных образовательных материалов от Mail.Ru Group

Время на прочтение10 мин
Количество просмотров112K

Кадр из к/ф «Операция Ы и другие приключения Шурика»

Как говорят, «кризис — пора возможностей». И поэтому сейчас самое время начать вкладывать в саморазвитие, осваивать новую профессию или повышать свою квалификацию. Займитесь изучением языков программирования, обретением навыков разработки, тестирования и вообще всячески прокачивайте свой IT-скилл. Ведь чем больше вы знаете, тем прочнее будете стоять на ногах. А чтобы вам было легче сориентироваться и выбрать направление, мы сделали подборку наших бесплатных образовательных материалов, курсов и инициатив за 2015–2016 годы.
Читать дальше →
Всего голосов 48: ↑43 и ↓5+38
Комментарии29

Как использовать именованные конструкторы в PHP

Время на прочтение3 мин
Количество просмотров24K
tl; dr — Не ограничивай себя одним конструктором в классе. Используй статические фабричные методы.

PHP позволяет использовать только один конструктор в классе, что довольно раздражительно. Вероятно, мы никогда не получим нормальную возможность перегрузки конструкторов в PHP, но кое-что сделать все же можно. Для примера возьмем простой класс, хранящий значение времени. Какой способ создания нового объекта лучше:

<?php
$time = new Time("11:45");
$time = new Time(11, 45);

Правильным ответом будет «в зависимости от ситуации». Оба способа могут являются корректным с точки зрения полученного результата. Реализуем поддержку обоих способов:
Читать дальше →
Всего голосов 25: ↑20 и ↓5+15
Комментарии97

Torrents Time: Popcorn Time в виде плагина для браузера. Уже поддерживается на The Pirate Bay

Время на прочтение3 мин
Количество просмотров30K
image

Сервис Popcorn Time для просмотра видеофайлов с торрентов без предварительного скачивания, стал доступен в виде плагина для браузера. Плагин с открытым кодом поддерживается на специальном сайте для онлайн-просмотра видео Popcorn Time Online.

Плагин доступен для Internet Explorer, Chrome и Firefox под операционки Windows 7 (и выше) и OS X 10.8 (и выше). Разработчики обещают добавить поддержку Safari уже через несколько недель. Возможно, что и Edge не останется в стороне.

Более того, один из старейших и популярнейших трекеров, непотопляемый The Pirate Bay, также оперативно организовал поддержку плагина в своей поисковой системе.

История вопроса


Popcorn Time изначально появился как клиент для скачивания торрент-файлов со встроенным медиапроигрывателем. Поскольку чаще всего пользователей интересуют торренты с видеофайлами (фильмами и эпизодами сериалов), вполне логично было ожидать появления подобного ПО.
Читать дальше →
Всего голосов 21: ↑20 и ↓1+19
Комментарии34

Это будущее

Время на прочтение6 мин
Количество просмотров87K
Добрый день.

Предлагаю вашему вниманию перевод юмористического поста, посвященного облачным технологиям: It's The Future. Всяческие поправки и советы привествуются.


image

Читать дальше →
Всего голосов 129: ↑116 и ↓13+103
Комментарии37

Книга «Hello World! Занимательное программирование»

Время на прочтение4 мин
Количество просмотров38K
Привет! Наша первая книга для детей «Первая книга юного программиста. Учимся писать программы на Scratch» имела успех у читателей и мы решили издать замечательную книгу Уоррена Сэнда и Картера Сэнда. Данный пост адресован детям и их родителям.

image Любишь компьютерные игрушки? А хочешь попробовать написать что-нибудь сам? Представь, как зауважают тебя друзья, когда ты покажешь им игру своей собственной разработки, где при загрузке на экране появится твое имя! «Вот круто!» — будут говорить они, качая ее с твоей странички. И самая красивая девочка в классе, узнав об этом, наконец, обратит на тебя внимание…
Но для этого надо научиться программировать. Это сложно? Ну, на самом деле не очень.
Главное — поставить себе цель и ломиться к ней напролом, как носорог через джунгли. Ты наверняка знаешь, что языков программирования существует немало, но мы предлагаем тебе научиться «писать код», как говорят профессионалы, на языке Python (Питон). Он относительно прост в изучении, но обладает всеми необходимыми функциями. Программы на нем получаются быстрыми и легко читаемыми.
Эту книгу по языку Python написали два человека. Взрослый дядька-программист и его сын. Этот сын тоже совсем недавно был подростком, знает, как порой муторно бывает учиться, и поэтому он проследил, чтобы папа объяснялся не очень заумно. Так что если ты никогда не программировал, не беда. Если ты знаком с азами — e-mail, Интернет, mp3, можешь запустить или сохранить файл — ты во всем разберешься. Удачи в освоении!

Читать дальше →
Всего голосов 18: ↑18 и ↓0+18
Комментарии19

Rust и парадокс Блаба

Время на прочтение11 мин
Количество просмотров32K

Несколько недель назад я наткнулся на сравнительный анализ Rust, D и Go от Андрея Александреску. Андрей, уважаемый член сообщества C++ и главный разработчик языка программирования D, нанес Rust сокрушительный удар под конец своего повествования, высказав нечто, что выглядит довольно проницательным наблюдением:



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



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

Читать дальше →
Всего голосов 49: ↑47 и ↓2+45
Комментарии134

Одиннадцать важных функций ONLYOFFICE, которых нет ни в MS Office Online, ни в Google Docs

Время на прочтение9 мин
Количество просмотров47K
Нас часто спрашивают, а чем мы вообще лучше других онлайн-редакторов документов. Вместо того, чтобы использовать опробованный Лордом Вейдером прием удушения Силой на всех, кто этот вопрос задает, мы решили написать о том, чем же хороши наши редакторы и чем они отличаются от, пожалуй, основных своих конкурентов — Office Online от Microsoft и Google Docs.

Начнем с текстовых редакторов.


Читать дальше →
Всего голосов 34: ↑23 и ↓11+12
Комментарии140

Как делают светодиодные лампы в Саранске

Время на прочтение2 мин
Количество просмотров35K
Мой вчерашний обзор светодиодных ламп Лисма неожиданно для меня вызывал огромный интерес. Здесь уже более 16000 просмотров, в ЖЖ более 34000 просмотров. Обзор утащили на yaplakal.com (более 74500 просмотров) и fishki.net (более 39000 просмотров).

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



Я покажу вам это видео и отвечу на вопросы, которые вчера задавали чаще всего.

Читать дальше →
Всего голосов 57: ↑53 и ↓4+49
Комментарии56

WordPress. Бесплатный курс от GeekBrains

Время на прочтение5 мин
Количество просмотров88K
В ноябре 2015 года вышел свежий обзор Venturebeat.com и W3Techs. Выяснилось, что каждый четвёртый сайт в Интернете базируется на открытой системе управления контентом (CMS) WordPress. В исследование включались только сайты из Alexa TOP 1.000.000, что говорит о том, что это были не какие-то ресурсы, сделанные второпях или в учебных целях, а действительно крупные проекты. Занявшая второе место CMS Joomla набрала только 2,8%.



Свой 8-ми летний рубеж в 2011 году WordPress встретила с результатом всего 13,1%. Затем плавно, без скачков или других резких потрясений четыре года непрерывного роста, и в итоге 14-й год существования этой CMS принес ей абсолютное лидерство: 25% всех сайтов в мире отдали ей предпочтение. Надо отметить, что и сервис WHOIS присудил ей в своем рейтинге 1-е место: 36% проверок на тип CMS его пользователями он выдал ответ: WordPress.
Читать дальше →
Всего голосов 17: ↑10 и ↓7+3
Комментарии20

Архитектура браузерного движка Servo

Время на прочтение8 мин
Количество просмотров12K
От переводчика. Позвольте представить на суд хабрасообщества перевод части документации о браузерном движке Servo. Этот движок разрабатывается сообществом Mozilla на языке Rust, и является, пожалуй, самым большим активным проектом на этом языке. В этом документе рассказывается об архитектуре движка, как разработчики используют Rust совместно с C++ и с какими трудностями они столкнулись при разработке. Оригинал доступен в wiki проекта на github.

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

Обзор и цели



Читать дальше →
Всего голосов 39: ↑39 и ↓0+39
Комментарии8

История победы на ежегодном соревновании Russian AI Cup 2015

Время на прочтение15 мин
Количество просмотров31K
Хочу рассказать о своем участии и победе в ежегодном соревновании по программированию ИИ «Russian AI Cup 2015» от Mail.Ru Group. Посмотреть подробные правила соревнования и записи игры желающие могут на сайте соревнования russianaicup.ru.

image

В этом году соревнование было организовано на совершенно новом уровне. Изменения произошли как в масштабности игрового мира, в котором действует ИИ, так и на сайте соревнования. Благодаря трехмерной визуализации, игры смотрелись гораздо увлекательнее. По зрелищности, на мой взгляд, соревнование значительно превзошло прошлогодний хоккей, и «солдатиков» 2013 года.

Участнику предлагалось написать ИИ для управления автомобилем в гонках на выживание. Как и в прошлом году, задача была «с физикой». Но на это раз исходники «физического движка» были открыты. Еще, в отличие от прошлого года, на этот раз все случайные явления в игровом мире были наглядны — случайная карта, случайно расставленные бонусы. Сразу было видно — когда удача на твоей стороне, а когда она от тебя отвернулась. В прошлогоднем хоккее, даже наблюдая за игрой значительно отличающихся по силе противников, было трудно понять произошел выигрыш благодаря случаю или мастерству. Думаю, это положительно сказалось на зрелищности соревнования.

Краткое описание правил


Цель — проехать 2 круга по замкнутой трассе быстрее всех. Точнее надо набрать больше всех очков, но приехать первым — это основной способ заработать очки. Еще очки дают за сбор бонусов по дороге и нанесение урона противникам. Трасса, как конструктор, собирается из квадратных «тайлов», это прямолинейные участки трассы, углы (поворот трассы на 90 градусов), или перекрестки (Т образные и обычные). Нужно ехать по ключевым точкам («тайлам») трассы в определенном порядке – иногда приходится делать петли, иногда вообще ехать назад. Еще у машинок есть возможность разливать за собой лужи мазута, стрелять друг в друга специальными снарядами (шины и шайбы), и использовать особый ускоритель «нитро». Заряды для всех этих приспособлений ограничены, и пополняются подбиранием случайно разбросанных по карте бонусов.

Расскажу, как устроен мой ИИ, и благодаря чему (как я думаю) удалось победить.
Читать дальше →
Всего голосов 93: ↑93 и ↓0+93
Комментарии45

История 30 места в финале Russian AI Cup 2015

Время на прочтение10 мин
Количество просмотров13K

Введение


В этом году в Russian AI Cup надо было запрограммировать бота для управления машинкой (а в финале даже двумя!), и я решил впервые поучаствовать, так как тема показалась близкой и родной: фанат гонок, периодически езжу катать в картинг (хоть и без выдающихся результатов), вечера часто провожу, катаясь по виртуальным Гавайям в Test Drive Unlimited или Nurburgring в GTR Evolution.

Высокого места я в итоге не занял (30 место в финале, песочницу закончил на 48 месте), но небольшое время между вторым раундом и финалом был в топ-10 песочницы. Также, судя по форуму соревнования, набор костылей решений как у меня больше никто не использовал, так что если желаете узнать подробностей — добро пожаловать под кат. Наиболее интересная часть в посте, пожалуй, про поиск оптимальной траектории.
Читать дальше →
Всего голосов 42: ↑42 и ↓0+42
Комментарии15

Игры, которые учат программированию

Время на прочтение6 мин
Количество просмотров325K


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

У каждого есть возможность воспользоваться специально созданной для обучения школьников средой программирования Scratch, которую разрабатывают специалисты одного из самых престижных технических учебных заведений США и мира — Массачусетского технологического института. Или игрой Minecraft, за которую Microsoft год назад заплатила $2,5 млрд и с помощью которой, в том числе, планирует обучать детей программированию. Или обучающими играми, которые создают энтузиасты и добровольцы во всём мире.

Препятствием для использования подобных ресурсов может быть неосведомлённость о их существовании или незнание языка. Действительно, англоязычных ресурсов и игр значительно больше. Но существуют и русскоязычные игры, обучающие программированию.
Читать дальше →
Всего голосов 37: ↑35 и ↓2+33
Комментарии37

Что нам стоит сайт распарсить. Основы webdriver API

Время на прочтение16 мин
Количество просмотров66K
Поиск жилья, информации о товарах, вакансий, знакомств, сравнение товаров фирмы с конкурентами, исследование отзывов в сети.



В интернет опубликовано много полезной информации и умение извлекать данные поможет в жизни и работе. Научимся получать информацию с помощью webdriver API. В публикации приведу два примера, код которых доступен на github. В конце статьи скринкаст про то, как программа управляет браузером.
Читать дальше →
Всего голосов 24: ↑21 и ↓3+18
Комментарии42

Десктопные приложения на JavaScript. Часть 1

Время на прочтение6 мин
Количество просмотров158K
Ни для кого не секрет, что в наше время JavaScript стал одним из самых популярных языков программирования. В далекие 90е годы, в момент зарождения языка, когда он был создан с единственной целью добавить интерактивность веб страницам и улучшить процесс взаимодействия с пользователем, кто бы мог подумать, что он достигнет столь небывалых высот. Ведь сейчас на нем можно делать практически все что угодно. Хотите написать сайт: и бэкэнд и фронтэнд на JavaScript? пожалуйста! Хотите написать мобильное приложение на JavaScript? нет проблем. Программируете микроконтроллер – и тут вам на помощь придет JavaScript.

Есть конечно небольшие минусы в подходе использования JavaScript везде, но если поразмыслить, то сколько времени и сил можно сэкономить, изучив всего лишь одни язык, особенно, если то же самое приложение должно работать на разных платформах. Разных платформах говорите? Хм… Точно – разных платформах – теперь JS может позволить себе десктопные приложения для Windows, Linux, Mac, как спросите вы? Ответ прост: встречайте – NW.js.

По первым буквам можно прочитать – Node.js + Webkit, если данные понятия вам пока не знакомы, то скоро вы поймете о чем идет речь.

Node.js – программная платформа, основанная на движке V8, который транслирует наш скрипт в машинный код. Данная платформа была создана в 2009 году преимущественно для работы с бэкэндом сайтов.

WebKit — свободный движок, разработанный компанией Apple. Впервые был анонсирован в составе Safari в 2003 году
Итак, коду, написанному на JS для данной технологии, будут доступны как Node.js модули, так и стандартный браузерный API (соответственно WebKit)
Читать дальше →
Всего голосов 31: ↑24 и ↓7+17
Комментарии24

400 потрясающих бесплатных сервисов

Время на прочтение16 мин
Количество просмотров721K

Рад представить дополнение оригинального списка из 300 потрясающих бесплатных сервисов. Автор оригинальной статьи Ali Mese добавил ещё +100 новых сервисов, которые помогут найти все — от источников вдохновения и редакторов фотографий до создания опросов и бесплатных иконок.

И еще подборку +500 инструментов от 10 марта 2017 г. смотрите здесь.



A. Бесплатные веб-сайты

  • HTML5 UP: Адаптивные шаблоны HTML5 и CSS3.
  • Bootswatch: Бесплатные темы для Bootstrap.
  • Templated: Коллекция 845 бесплатных шаблонов CSS и HTML5.
  • Wordpress.org | Wordpress.com: Бесплатное создание веб-сайта.
  • Strikingly: Конструктор веб-сайтов.
  • Layers: Создание сайтов на WordPress (new).
  • Bootstrap Zero: Самая большая коллекция бесплатных шаблонов Bootstrap (new).
  • Landing Harbor:  Продвижение мобильного приложения c помощью бесплатного лендинга (new).
Читать дальше →
Всего голосов 108: ↑89 и ↓19+70
Комментарии38

Начинаем использовать Rust

Время на прочтение6 мин
Количество просмотров22K


Всем привет!

С недавнего времени я начал изучать прекрасный язык Rust. Практическое применение этого языка для себя я вижу во встраивании в критические по производительности места кода (по крайней мере, до момента «дозревания» и обрастания библиотеками и фреймворками).

Для закрепления теоретических навыков я решил сделать небольшой проект, суть которого состоит в следующем: динамическая библиотека на Rust реализует упрощенный вариант Алгоритма шинглов и посредством FFI позволяет подключать её (библиотеку). Всем кому интересно прошу под кат.
Читать дальше →
Всего голосов 28: ↑26 и ↓2+24
Комментарии17

Russian AI Cup 2015: гонки на выживание для программистов

Время на прочтение1 мин
Количество просмотров20K


Мы рады сообщить о начале очередного международного чемпионата по программированию искусственного интеллекта — Russian AI Cup. В этот раз чемпионат получил название CodeRacing. Храбрецам, которые отважатся принять участие, предстоит программировать искусственный интеллект для управления гоночным автомобилем. Но он должен будет не просто исполнять роль водителя, но и одновременно расстреливать соперников. В «игровом» мире предусмотрено четыре типа юнитов: кодемобили, снаряды, бонусы и лужи мазута. Самые «грязные» приёмы на трассе будут только поощряться: можно толкать чужие машины, повреждать их и ломать.
Читать дальше →
Всего голосов 35: ↑34 и ↓1+33
Комментарии15

Книга «Изучаем C++ через программирование игр»

Время на прочтение5 мин
Количество просмотров111K
image
Если вы хотите научиться программировать первоклассные игры, вам просто необходимо изучить язык С++. Эта книга поможет вам освоить разработку игр с самых азов, независимо от того, есть ли у вас опыт программирования. Гораздо интересней учиться, когда обучение превращается в игру. Каждая глава книги описывает самостоятельный игровой проект. В заключительной главе вам предстоит написать сложную игру, которая объединяет все приемы программирования, рас-смотренные в предыдущих главах. Книга идеально подойдет для начинающего программиста, планирующего не только как следует освоить непростой язык С++, но и поупражняться в программировании игр. Цель данной книги — познакомить вас с языком С++ в контексте программирования игр. Хотя невозможно представить себе такую книгу, которая сделала бы вас мастером в двух столь объемных темах, как программирование игр и язык C++, это издание пригодится вам в качестве вводного курса.
Читать дальше →
Всего голосов 14: ↑14 и ↓0+14
Комментарии20

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

Время на прочтение28 мин
Количество просмотров187K
Сегодня мы представляем вашему вниманию адаптированную подборку инструментов (в том числе облачных) для разработчиков, которые позволяют создавать по-настоящему качественные проекты. Здесь представлены исключительно SaaS, PaaS и IaaS сервисы, предоставляющие бесплатные пакеты для разработчиков инфраструктурного ПО.

Читать дальше →
Всего голосов 96: ↑89 и ↓7+82
Комментарии38

Информация

В рейтинге
4 675-й
Откуда
Россия
Дата рождения
Зарегистрирован
Активность