Pull to refresh
15
0
Андрей @Dink

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

Send message

Ход «Voronoi»

Reading time9 min
Views28K

Вместо предисловия


Урок русского языка в грузинской нерусской школе.
Учительница:
— Дэти, это нэльзя понять, это надо запомнить: ОТ ВАС пишется раздельно, а
КВАС — вместе.

Анекдот взят тут.

Введение


На написание статьи вдохновила игра «Wesnoth» — пошаговая стратегия с элементами RPG. В этой игре персонажи перемещаются по карте, состоящей из шестиугольных полигонов. Таким образом, окруженный со всех сторон персонаж может быть атакован шестью вражескими. По этой причине тактическая составляющая в игре очень важна. Возник вопрос: как повлияет на игровой процесс переход от карты с фиксированной геометрией полигонов на карту с произвольной геометрией?
Читать дальше →

Часы на 30 светодиодах

Reading time2 min
Views18K
Есть такая пословица — как начинаю что-нибудь делать на Arduino, так обычно часы получаются. Не будем отходить от этого правила и сделаем часы. Отмечу, что работа с микроконтроллерами (МК)) — это мое хобби. Мне понравился малый уровень вхождения для знакомства и освоения МК. Кроме того, как программиста по образованию привлекла возможность освоения новых технологий создание систем на базе МК.

Дизайн

Решение по дизайну навеян часами с сайта Огни Токио.Отображение в данном виде понравилось тем что несмотря на ограниченность возможности высветки времени 30 диодами, есть узнаваемый часовой круг и можно понять сколько времени с одного взгляда (после предварительной тренировки). Сейчас на часах 5 часов 46 минут.

Описание

Часы используют внутренний таймер. Тестирование такого решения показало точность не хуже ±1мин в трое суток. Больший период не тестировался. Для подключения 30 светодиодов необходима схема, которая бы уменьшила количество управляющих сигналов. Это могут быть декодеры, регистры. Однако есть довольно хитрая схема подключения светодиодов, которая добавляет волшебства этим часам.

Читать дальше →

Дистанционное управление по ИК

Reading time2 min
Views91K

Всем добрый день!


В рамках моего проекта:
Создаем робота в домашних условиях
был сделан модуль управления роботом по ИК каналу. Вот о нём я бы и хотел написать поподробнее. Так как применений этому можно найти очень много.

Собственно, что такое ИК-управление — объяснять, думаю, не нужно. Сейчас более распространено управление по Wi-Fi, Bluetooth, ZigBee. Но если вам требуется простое устройство, которое можно собрать «на коленке» при минимальных затратах, то эта статья для вас. =)

Читать дальше →

Волшебный выключатель

Reading time2 min
Views19K
Эпидемии гриппа посвящается.

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

Free Image Hosting at www.ImageShack.us

Читать дальше →

Создаем робота в домашних условиях

Reading time8 min
Views204K

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

Читать дальше →

Концепции практического использования генетических алгоритмов

Reading time9 min
Views11K

Предисловие


На написание статьи вдохновили две публикации:

Захотел изложить свои мысли и свой взгляд на этот вопрос именно как практик от программирования «с математическим бэкграундом». Это будет повествование «на пальцах». Специалистом в генной инженерии не являюсь и сужу по поверхностным описаниям механизмов функционирования живых клеток и ДНК.
Читать дальше →

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

Reading time4 min
Views56K
Самодельная светодиодная лампа снабжена увеличительным стеклом, и предназначена для комфортного мелкого монтажа и разборок с миниатюрными радиодеталями — многие радиолюбители знают, что на некоторых SMD-деталях трудно разглядеть маркировку даже под увеличительным стеклом. Наличие качественно рассеянной подсветки значительно улучшает чтение маркировки, и упрощает визуальный поиск дефектов в электронных приборах. Коротко характеристики лампы:
— напряжение питания 12 вольт постоянного тока, максимальная потребляемая мощность около 6..7 Вт, количество светодиодов — 20 шт.
— встроенный режим автоматической калибровки под напряжение источника питания.
— плавное включение и выключение лампы.
— плавная регулировка яркости от нуля до заранее запрограммированного предела — с помощью ручки энкодера. Метод регулировки мощности — ШИМ (широтно-импульсная модуляция).
— энергонезависимое запоминание всех параметров лампы и последней установленной яркости.
— встроенное сервисное меню, доступное через подключение по USB. Меню позволяет настраивать рабочие параметры лампы и просматривать её текущее состояние.
Читать дальше →

Олимпиадное хобби. Разделяй и властвуй

Reading time6 min
Views6.2K
Доброго всем понедельника. Если понедельник для вас не самый приятный день, то предлагаю вам немного расслабиться и проникнуться моим хобби. Моё хобби — решение олимпиадных задач по программированию: встряхивает мозг, будоражит воображение и заряжает энергией (правда не всегда положительной). Не верите? Попробуйте сами, только честно попытайтесь решить поставленную задачу, получите долгожданный Accepted, и наслаждайтесь полученными эмоциями.

Сегодня случай подкинул нам задачу №10474. Это задача на умение применять вовремя простые алгоритмы, поэтому не ждите от нее чего-то сложного и хитроумного. Если вам не интересно решать задачи за счет пары стандартных алгоритмов, то пропускайте топик, а всем остальным добро пожаловать под кат. Нас ждет пара алгоритмов, выбор наиболее удобного решения, ну и, конечно же, Accepted!
Читать дальше →

Hg Init: Часть 3. Привыкаем работать в команде

Reading time7 min
Views111K
Это третья часть из серии Hg Init: Учебное пособие по Mercurial от Джоэля Спольски (Joel Spolsky). Предыдущие части:


Одно из преимуществ использования Mercurial — возможность работать командой над одним кодом. Mercurial позволяет каждому работать независимо и помогает объединять сделанные изменения.

Часть 3. Привыкаем работать в команде




При командной работе с Mercurial общепринято настраивать центральный репозиторий в дополнение к личным репозиториям, расположенным на компьютерах членов команды. Центральный репозиторий можно рассматривать как своего рода блошиный рынок, то есть, как место где встречаются и обмениваются сделанным.

Читать дальше →

Hg Init: Часть 2. Основы Mercurial

Reading time7 min
Views231K
Это вторая часть из серии Hg Init: Учебное пособие по Mercurial от Джоэля Спольски (Joel Spolsky). Возможно, вы захотите прочитать и первую часть «Переобучение для пользователей Subversion».

Даже если вы работаете в одиночку, то вам стоит использовать Mercurial. Так вы сможете получить все прелести контроля версий. Эта часть покажет насколько просто добавить каталог в Mercurial, чтобы с легкостью отслеживать предыдущие версии.

Часть 2. Основы Mercurial



Mercurial — это система контроля версий. Разработчики используют ее для администрирования исходного кода. У нее два основных назначения:
  1. Она хранит все предыдущие версии каждого файла
  2. Она может объединить разные версии вашего кода, то есть сотрудники могут независимо работать над кодом и затем объединять свои изменения


Читать дальше →

Hg Init: Часть 1. Переобучение для пользователей Subversion

Reading time9 min
Views124K
Hg Init: Учебное пособие по Mercurial.


Mercurial — это современная распределенная система контроля версий с открытым кодом. Эта система — заманчивая замена для более ранних систем вроде Subversion. В этом простом учебном пособии в шести частях Джоэль Спольски (Joel Spolsky) рассказывает о ключевых принципах Mercurial.

Если вы использовали Subversion, то Mercurial будет непонятным. Эта часть рассказывает о главных отличиях при работе с Mercurial. Если вы никогда не использовали Subversion, то можете просто пропустить эту часть.

Часть 1. Переобучение для пользователей Subversion


В каком же я был смятении, когда программисты в моей компании решили сменить Subversion на Mercurial!

Для начала, я начал приводить всевозможные тупые причины, по которым нам не надо ничего менять. «Мы должны хранить репозиторий на центральном сервере, так безопаснее», — сказал я. Знаете что? Я был неправ. При работе с Mercurial у каждого разработчика на жестком диске хранится полная копия репозитория. Это, на самом деле, безопаснее. В любом случае, почти в каждой команде, использующей Mercurial, центральный репозиторий тоже существует. И вы можете делать резервное копирование этого репозитория со всей необходимой одержимостью. А еще можете устроить трехступенчатую защиту с Сайлонами, Штурмовиками и прелестными лабрадудлами или что там требует ваш IT-отдел.

Читать дальше →

Visual C# for beginners. Лекция 4. Условия и циклы

Reading time5 min
Views3.3K
Доброго времени суток, хабражители!
Для желающих начать программировать на языке C# выкладываю четвертую лекцию на тему: «Условия и циклы». Лекция получилась очень большая (на целый час), поэтому, кто готов смотреть так долго я желаю терпения и большого желания не останавливаться на достигнутом.
Читать дальше →

C# for beginners. Лекция 2. Hello, World! и знакомство с Visual C# Express 2010

Reading time1 min
Views5.7K
Прежде всего, хотелось бы поблагодарить arinoki за публикацию первой лекции видеокурса, который вызвал большой интерес среди хабрапользователей. Благодаря вашим голосам, я могу выкладывать новые лекции от своего имени, а, прочитав комментарии я понял, что тема программирования на С# очень актуальна, а значит я буду и дальше стараться для вас и публиковать новые лекции.

А теперь — по теме:



Вышла вторая лекция видеокурса для начинающих программировать на C#. Вы познакомитесь со средой разработки приложений Visual C# Express, а также напишете свое первое "Hello, World!" приложение. Также для студентов прилагается еще некоторая полезная информация. Приятного просмотра!
Разбор синтаксиса языка C# начнется уже в следующей лекции!
Смотреть

Чуть больше о загрузке самодельных ОС — пишем bootloader

Reading time9 min
Views14K
Не так давно решил чуть получше изучить архитектуру IA-32. А что лучше всего для запоминания? Конечно же практика. Но программируя в ОС мы врядли получим самый низкий уровень доступ к железу без помех. Поэтому для этих целей будем писать собственное подобие операционной системы. То есть проще говоря будем выполнять свой код, сразу после загрузки BIOS'а.
Первой проблемой с которой столкнется желающий программировать на низком уровне — как же загрузить свой код?
Читать дальше →

C# для начинающих. Лекция 1 — Введение

Reading time1 min
Views85K
Топик опубликован по просьбе itdevelop, так что он будет отвечать на все ваши вопросы, а также плюсы кидать на его аккаунт. Спасибо за понимание.

Это первая лекция большого видео-курса для тех, кто хочет научиться программировать на языке С#. Поскольку это — вводная лекция, то хочу сразу предупредить, что сам процесс программирования начнется только со второй лекции. Здесь же я хочу вас познакомить с .NET Framework, чем удобна эта платформа, и как происходит перевод написанного вами кода на C# в код, понятный операционной системе.
Читать дальше →

Ethernet-лампа для Continuous Integration и не только

Reading time6 min
Views21K
image Всем хабрапользователям привет! Не так давно был запущен проект Амперка. Интерес был проявлен заметный, поэтому мы продолжаем развиваться. И это наш первый пост в корпоративный блог.

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

Этот гаджет — лампа, которая светится разными цветами в зависимости от сообщений, идущим к ней по локальной сети. Зачем это нужно? Лично мне, как участнику команды из четырёх программистов, эта штуковина нужна для индикации работы Continuous Integration сервера. Сервер, конечно, умеет при провале сборки посылать уведомления на e-mail и в jabber, но это скучно и не удобно: нет способа взглянуть куда-нибудь и мгновенно понять что происходит с проектом: всё в порядке, всё плохо или вот прям сейчас идёт сборка.

Проблема не новая. Я несколько раз читал как народ изголялся, прикручивая к компьютеру светофор, лава-лампы и usb-мигалки. Захотелось сделать что-то простое, что можно принести в офис, воткнуть в хаб и всё! И чтобы оно работало и без бубна. Что ж, попробуем!

Нам понадобится Ардуино, Ethernet Shield для него, бракованый светильник из Леруа-Мерлен, три светодиодные ленты разных цветов, горсть мелочёвки и запас терпения.
Читать дальше →

Ликвидатор велосипедов: часть 2

Reading time3 min
Views34K
Исходя из того, что первая статья насобирала много плюсов и попала в избранное большого количества человек, я понял что тема актуальна и во-первых призываю подтянуться сообщество (ведь я не могу знать абсолютно все библиотеки и решения), а во-вторых буду продолжать своими силами рассказывать о том какие библиотеки можно подтянуть, если необходимо что-то сделать вместо того чтобы делать все новые и новые велосипеды, состоящие из водопроводных труб.

В этом топике я затрону важную для многих тему — тему рисования графиков в платформе .NET. Вспомните: ведь наверняка когда-то было просто необходимо вывести на экран красивый график… И что происходило? Правильно, появлялся новый велосипед.

Часть первая из серии



Читать дальше →

Ликвидатор велосипедов: часть 1

Reading time3 min
Views15K
imageЭтим постом я начинаю серию статей, которые должны помочь каждому разработчику избавиться от велосипедов в своих последующих и текущих проектах. Усилить код и увеличить функционал. Каждый из нас хочет внести в свою программу нечто, что сделает ее богаче, но зачастую решение либо не находится, либо лень тратить время на поиски… Либо внутри сидит глупая уверенность что это можно реализовать быстро и не менее функционально. В любом случае я хочу чтобы каждый пробежался глазами по спискам библиотек, которые я вам предоставлю на суд, и чтобы у каждого эти библиотеки отложились в памяти. И когда их функционал пригодится в будущем, я очень надеюсь что вы вспомните этот пост и поищите эти библиотеки вместо того чтобы писать все новые и новые велосипеды, полные палок в колесах.
Начну я с оконных менеджеров.
Читать дальше →

Беспокойные сердца или еще один способ написать 3D игру в свободное время без ущерба здоровью

Reading time3 min
Views4.5K
Иногда, даже у вполне состоявшегося программиста, появляется желание написать что-то, что было бы интересно не только работодателю. Такой человек бреется по утрам и думает, а почему бы не подарить счастье всему человечеству.
Читать дальше →

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity