Pull to refresh
2
0
Иван @gli

User

Send message

Пакеты и пакетные менеджеры для k8s

Reading time 24 min
Views 5.6K
Все мы пользуемся каким-либо видом пакетных менеджеров, включая уборщицу тетю Галю, у которой в кармане прямо сейчас обновляется айфон. Но общего соглашения о функциях пакетных менеджеров нет, и стандартные для ОС rpm и dpkg, и системы сборки называют пакетными менеджерами. Предлагаем поразмышлять на тему их функций — что это такое и для чего они нужны в современном мире. А потом будем копать в сторону Kubernetes и внимательно рассмотрим Helm с точки зрения этих функций.


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

Помог нам в этом Иван Глушков (gli) своим докладом на РИТ++, видео и текстовая версия этого подробного и обстоятельного выступления ниже.

Видеозаписи этого и других выступлений по DevOps на РИТ++ опубликованы и открыты для свободного просмотра на нашем youtube-канале — заходите в поисках ответов на свои рабочие вопросы.
Total votes 26: ↑24 and ↓2 +22
Comments 2

Каково это — быть разработчиком в России, когда тебе сорок

Reading time 37 min
Views 161K
Привет всем, я — сорокалетний программист-самоучка, а это моя история.

Пару недель назад я наткнулся на график распределения людей, интересующихся технологиями, ИТ и программированием. И он заставил меня задуматься о моей карьере.



Через каких-то 20 лет мне стукнет 60. И вероятность того, что я еще смогу заниматься тем, для чего был создан, составляет очень крошечную величину. Эти размышления привели меня туда, откуда все начиналось.

Я дебютировал в роли разработчика программного обеспечения в 1990 году, через год после того, как мне на 14-тилетие родители подарили ПЭВМ «Микроша».
Читать дальше →
Total votes 353: ↑338 and ↓15 +323
Comments 788

Как официально принимать валютные платежи из-за рубежа в России (ИП)

Reading time 4 min
Views 54K
После моего комментария, периодически получаю однотипные вопросы о получении валютных платежей из-за рубежа.

Наконец-то решил оформить всё это в пост, чтобы не писать каждый раз одно и то же. Сразу скажу, что ничего сложного тут нет – я сам разобрался в этом и оформил ИП примерно за пару недель, раньше ничего об этом не зная.
По шагам...
Total votes 67: ↑62 and ↓5 +57
Comments 280

История 5-го места на Russian AI Cup 2015

Reading time 9 min
Views 16K
Игра #418086

Сначала этот текст был написан в виде комментария к теме победителя данного конкурса. Но в итоге объем текста стал таким большим, что было решено выделить его в отдельную тему. Так что предполагается, что читатель в курсе о конкурсе и прочёл тему победителя. Также можете почитать историю 30-го места.

Сразу дам ссылку на репозиторий с исходным кодом — помимо непосредственно исходников там же есть вся история коммитов. Например, интересным может показаться время, в которое был совершён коммит с комментарием «спать пора».

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

Так что в данной теме я расскажу чуть подробнее о том, как эти идеи были реализованы в моём случае.
Читать дальше →
Total votes 47: ↑44 and ↓3 +41
Comments 1

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

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

image

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

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

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


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

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

Тонкий клиент HP в качестве домашнего роутера и файл-сервера

Reading time 25 min
Views 46K
С момента публикации на Geektimes первой части статьи, кое-что изменилось. Я обновил тонкий клиент на HP t610 Plus и перешел на CentOS 7. Поэтому, публикую эту статью не как продолжение предыдущей, а как новую.

Читать дальше →
Total votes 21: ↑18 and ↓3 +15
Comments 30

MOOC курсы по робототехнике

Reading time 9 min
Views 19K
В ближайшие годы весь рынок труда изменится неузнаваемо и безвозвратно.

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

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

Внедрение робототехники повысит производительность труда в этих отраслях в разы, кратно сократив затраты на ведение бизнеса и вызовет существенные сокращения низкоквалифицированного персонала.

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

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

Открытые конкурсы DARPA Robotic Challenge, как DARPA Grand Challenge и DARPA Urban Challenge ранее, явно демонстрируют куда и в каком темпе движется современная робототехника.

В заметке я хотел бы кратко описать доступные сейчас курсы по робототехнике, размещенные на MOOC платформах.

Итак, в порядке возрастания сложности.
Читать дальше →
Total votes 16: ↑14 and ↓2 +12
Comments 1

Большие потоки трафика и управление прерываниями в Linux

Reading time 4 min
Views 63K
В этой заметке я опишу методы увеличения производительности линуксового маршрутизатора. Для меня эта тема стала актуальна, когда проходящий сетевой трафик через один линуксовый маршрутизатор стал достаточно высоким (>150 Мбит/с, > 50 Kpps). Маршрутизатор помимо роутинга еще занимается шейпированием и выступает в качестве файрволла.
Читать дальше →
Total votes 107: ↑102 and ↓5 +97
Comments 42

Rust 1.0: текущее состояние и окончательное расписание выхода версий

Reading time 4 min
Views 18K
Rust logo
Прошло пять недель с тех пор как вышла альфа версия Rust 1.0! До того как выйдет следующая предварительная версия Rust, мы хотели бы рассказать о текущем состоянии языка и о том, что мы еще намерены сделать по пути к стабильной версии 1.0.

TL;DR: Rust 1.0 выйдет 15 мая 2015 года
Читать дальше →
Total votes 56: ↑56 and ↓0 +56
Comments 7

Обзор видеорегистратора Каркам Q2

Reading time 8 min
Views 125K
Мы живем в самой прекрасной стране, и все остальные страны нам завидуют. Потому что именно мы придумали объезжать пробку задним ходом по встречной, оправдывая свое поведение «аварийкой». Все страны строят скоростные автобаны, но только у нас можно ехать поперек дороги и подрезть налево из крайнего правого ряда. Мы гордо называем свою страну «Россия», а иностранцы завистливо говорят – «Раша». Но все-таки она наша. Наша рашка.



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

Читать дальше →
Total votes 79: ↑57 and ↓22 +35
Comments 84

Алгоритм + толпа — этого недостаточно

Reading time 5 min
Views 2.2K
В последнее десятилетие онлайновым миром управляли две родственные силы: Толпа и Алгоритм. Коллективные «пользователи» интернета (Толпа) создают контент, кликают и голосуют, в то время как математические уравнения привносят масштабируемость и возможность поиска по этому огромному массиву данных (Алгоритм).



Словно луна над океаном, взаимодействие этих двух сил создаёт волны популярности (и забвения) в интернете. Информация более доступна, полезна и эгалитарна, чем когда бы то ни было.

Но со временем (по крайней мере, мне) стали видны слабости системы «алгоритм+ краудсорсинг». Следующая революция кажется неотвратимой.
Читать дальше →
Total votes 50: ↑39 and ↓11 +28
Comments 9

Проект Dronecode: свободная платформа для беспилотных аппаратов

Reading time 1 min
Views 24K


Организация Linux Foundation взяла под своё крыло проект Dronecode, цель которого — создание свободной и открытой платформы для беспилотных летательных аппаратов (БПЛА).

Ключевым участником является компания 3D Robotics, которая предоставила в общественное пользование платформу APM Autopilot Suite для управления БПЛА (платформа раньше была известна как ArduPilot).

Кроме того, в Dronecode включили разработки ещё одного проекта PX4, который ведётся в техническом университете Цюриха.
Читать дальше →
Total votes 38: ↑33 and ↓5 +28
Comments 16

История создания iOS игры о быстрой реакции и стальных нервах

Reading time 7 min
Views 35K
В начале апреля я уволился с работы. От переизбытка свободного времени я решил написать игру для iOS. Игра про бедного кубика, которого постоянно преследуют другие геометрические фигуры. Настоящая драма. Кубику нужно продержаться как можно дольше без столкновений. Прототип игры был написан примерно за 8 часов. Всего разработка игры заняла 3,5 месяца. Чем я занимался все это время можно узнать ниже.


Читать дальше →
Total votes 64: ↑56 and ↓8 +48
Comments 50

5 игр для развития логики и обучения детей программированию

Reading time 2 min
Views 98K
Мне всегда была интересна тема образования, а недавно я решил посмотреть, что интересного есть в мире мобильных приложений для обучения детей программированию.

На тему «Зачем это надо?» на Хабре была хорошая инфографика. А здесь я приведу краткий обзор приложений, которые счёл достойными внимания.

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

Итак, начнём.

Kodable




Платформа: iPad
Русский язык: нет

Для малышей от 5 лет. «Колобку» нужно проехать по лабиринту к выходу, собрав монеты.
При всей своей простоте, игра обучает ветвлениям, циклам, функциям и отладке.
Ещё больше игр
Total votes 44: ↑41 and ↓3 +38
Comments 19

Видео курс практической робототехники на Lego NXT

Reading time 2 min
Views 13K
Длительный и кропотливый труд по подготовке курса видео лекций «Практическая робототехника» близится к концу, и я хочу поделиться первыми результатами своей работы. На него уже можно записаться и приступить к изучению.
Конечно найдутся замечания по формату и содержанию курса, но мне кажется получилось неплохо. Вот, к примеру, третья часть четвертой лекции.

Краткое содержание курса можно найти в статьях «Математическая модель двигателя Lego NXT» и «Математическая модель Lego Segway».
Курс ознакомит вас с основами механики Лагранжа, матричного представления систем, основными приемами теории автоматического управления. Я постарался не обращаться к сложным математическим приемам, поэтому для прохождения курса должно хватить школьных знаний.
Содержание курса
Total votes 27: ↑26 and ↓1 +25
Comments 7

Пишем HTML5-игру за 20 минут, или введение в Phaser framework

Reading time 9 min
Views 188K
Эта статья посвящена разработке стильных, модных и молодежных HTML5 приложений с помощью нового фреймворка Phaser. В ней описан процесс установки библиотеки и создание классической игры Pong.

Введение


Phaser — это движок для разработки мобильных и десктопных HTML5 игр, базирующийся на библиотеке PIXI.js. Поддерживает рендеринг в Canvas и WebGL, анимированные спрайты, частицы, аудио, разные способы ввода и физику объектов. Исходники доступны как для просмотра, так и для свободной модификации. Он создан Ричардом Дейви (Richard Davey), известному благодаря активному участию в сообществе программистов, использующих Flixel framework. Ричард не скрывает, что вдохновлялся Фликселем, поэтому некоторые вещи в Фазере будут знакомы опытным флешерам. Первая версия нового движка вышла 13 сентября этого года, сейчас ведется не только активное развитие библиотеки, но и написание документации, поэтому в данный момент уроков по ней, мягко говоря, немного. Что, по моему скромному мнению, следует исправлять, и прямо сейчас.
Читать дальше →
Total votes 64: ↑56 and ↓8 +48
Comments 23

Анализ статистики во free-to-play играх: инструменты аналитика

Reading time 7 min
Views 36K
Ключ к успеху при разработке free-to-play игр — анализ поведения игроков и постоянный тюнинг игрового функционала на основе статистики. Собрать статистику — это пол дела. Но как превратить гору сырых данных в информацию?

В моей прошлой статье я перечислила основные показатели, по которым можно отслеживать успешность игры. Во второй части цикла я сделаю обзор основных инструментов, которые помогут превратить данные в руководство к действию.
Читать дальше →
Total votes 35: ↑29 and ↓6 +23
Comments 35

Kickstrap — форк Twitter Bootstrap с темами и бонусами

Reading time 1 min
Views 20K
image
Kickstrap это то, что будет если соединить Twitter Bootstrap, HTML5 Boilerplate, значки от IcoMoon и Font Awesome, добавить проверенные jQuery плагины Chosen и jGrowl, включить поддержку разных цветовых схем и тем оформления Bootswatch, дополнительную CSS сетку и вменяемую поддержку ранних версий IE.
Читать дальше →
Total votes 137: ↑127 and ↓10 +117
Comments 34

Упорядочивание аудиотеки. Практические советы

Reading time 9 min
Views 212K

Введение


Вообще, я во многих вопросах перфекционист. Если есть — нужно, чтобы было безупречно (иногда это сказывается отрицательно, но сейчас не об этом). Свою аудиоколлекцию я тоже привык держать в чистоте. Но со временем, при пополнении стало накапливаться много мелких неприятностей. Вот некоторые из них:
  • Разные шаблоны для имен файлов: 4 — Звезда | 04 — Звезда | 04. Звезда
  • Разные имена исполнителей в тегах: Чиж & Co | Чиж и Ко. | Mylene Farmer | Mylène Farmer
  • Не указаны исполнители альбома (что приводит к полному бардаку в альбомах-компиляциях)
  • Не совсем корректная информация об альбомах, состоящих из нескольких дисков
  • Путаница в годах изданий и переизданий (ремастеринг, и т.д.)
Ну и прочие мелочи.
Часто у пользователей коллекции составляют несколько тысяч, а иногда — несколько десятков тысяч записей. Так что, перелопачивать все вручную — долго и неэффективно.

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

Итак, начнем...
Total votes 80: ↑76 and ↓4 +72
Comments 78

Tsung: Нагрузочное тестирование Web-приложений

Reading time 3 min
Views 42K

Tsung — это распределенная система нагрузочного тестирования, написанная на Erlang'е. Заявлена поддержка HTTP, WebDAV, SOAP, PostgreSQL, MySQL, LDAP and XMPP/Jabber. В этой статье я опишу как протестировать обычный web сайт на нагрузку.
Читать дальше
Total votes 81: ↑80 and ↓1 +79
Comments 68
1

Information

Rating
Does not participate
Location
Ульяновск, Ульяновская обл., Россия
Registered
Activity