Search
Write a publication
Pull to refresh
196
0.1
Андрей Дмитриев @AndreyDmitriev

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

Send message

Заземлённые указатели

Reading time8 min
Views53K
pointres, gnd

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

Радиофицированный торшер или еще «2 копейки» в копилку «умного дома»

Reading time6 min
Views55K
После серии постов про DIY-диммер «умного дома» решил рассказать о своей реализации подобного проекта.



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

Поливаем цветы – просто и быстро

Reading time6 min
Views101K
image

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

Будем решать эту проблему с помощью микроконтроллера и C#.
Читать дальше →

Простая Наука — дайджест опытов #28

Reading time2 min
Views82K
image

Мы продолжаем выпускать опыты в обновленном виде с более красочным оформлением.

В этом выпуске четыре химических опыта:
  • горение ацетона на проволоке;
  • огненная пена;
  • кислотный огонь;
  • шпионские чернила.
Читать дальше →

Алгоритм Х или что общего между деревянной головоломкой и танцующим Линком?

Reading time5 min
Views68K


Предисловие


Как-то в гостях мне в руки попалась головоломка, в которой из 25 одинаковых фигурок требовалось собрать куб. Я провозился с ней почти весь вечер, и как можно догадаться, абсолютно безрезультатно. Тем не менее, я не мог сдаться просто так.

Не можешь сам — заставь компьютер. Сказано — сделано. В результате написанному по наитию алгоритму пришлось работать всю ночь, чтобы найти все 4 уникальных решения. В процессе гугления решений для сравнения, я нашёл программу Burr Tools, которая справилась с этой задачей за 3 минуты на моём ноутбуке.

Такая разница в скорости заставила меня разобраться, как решается эта задача и ещё целый класс подобных.

Так как же решается эта задача и ещё целый класс подобных?

Домашняя автоматизация

Reading time5 min
Views67K

Введение


В один прекрасный день я получил по почте извещение о долге за горячую воду, по причине несвоевременного оповещения коммунальных служб о показаниях водомеров. К этому моменту я, праздного любопытства ради, осваивал WiFi радиомодуль от “Roving Networks” с целью «обучить» его дистанционно включать/отключать электрический водонагреватель для экономии электроэнергии при долгом отсутствии пользователей. И так все сошлось, что решил я свести эти задачи и еще некоторые задумки «умного дома» к практической реализации. Ну и конечно, было бы не интересно, если бы я использовал знакомые мне технологии, поэтому я решил использовать как можно больше нового и интересного.
Читать дальше →

Страсть к программированию. Глава 4. Будь худшим

Reading time4 min
Views73K
Не дождавшись очередного перевода, полюбившейся мне книги Чеда Фоулера «Страсть к программированию» — решил продолжить. Не уверен, что никому не помешаю, но намерен решить возникшие вопросы мирно.

Глава 4. Будь худшим


< 3. Кодинг ещё не всё | 5. Инвестируйте в свой ​​интеллект >
Читать дальше →

Посты-рекордсмены. Продолжение

Reading time5 min
Views30K
Судя по реакции на предыдущий пост, тема парсинга Хабра и альтернативных топов интересна не только мне, поэтому продолжу.
Спасибо всем, кто голосовал и комментировал и отдельно тем, кто присылал идеи новых рейтингов и исследований.

В предыдущем посте (Посты-рекордсмены / Хабрахабр), я пробовал различные варианты сортировки постов Хабра, отличные от обычного рейтинга. В этом я буду сортировать по рейтингу, но не все посты, а отобранные по определённым критериям.
Читать дальше →

О простых числах, криптографии и повреждениях мозга

Reading time2 min
Views46K
Сегодня же пятница, да?

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

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

Первые несколько миллисекунд HTTPS соединения

Reading time10 min
Views172K
После нескольких часов чтения обзоров, Боб с нетерпением нажал на кнопку перехода к оформлению заказа на галлон цельного молока, и…
Воу, что только что произошло?


Интересно? Прошу под кат

Создание автономного робота Frank. Часть вторая

Reading time5 min
Views63K


Прошло немного времени и у меня значительный прогресс. Если вы не читали предысторию — добро пожаловать в «Создание автономного робота Frank. Часть первая» .

Итак, в первой части я собрал платформу на базе Lego Technic и серво-моторов HiTech. Угробив единственный шилд для прототипирования для Arduino, я ждал, когда мне придет замена, плюс новый припой, взамен экологически чистого, который у меня был — без содержания свинца. Также, у меня в распоряжении была пара XBee для беспроводной связи, с которой необходимо было разобраться и Arduino Due, с которой хотелось поэкспериментировать.

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

Много бесплатных книг по программированию

Reading time7 min
Views347K
Читать дальше →

Пишем свой отладчик под Windows [часть 2]

Reading time24 min
Views22K


Обязательно прочитайте первую часть, если Вы до сих пор этого не сделали. Иначе будет тяжело разобраться во второй части.

Предисловие


Эта статья является продолжением предыдущей части «Пишем свой отладчик под Windows». Очень важно, чтобы Вы её прочитали и поняли. Без полного понимания того, что написано в первой части, Вы не сможете понять эту статью и оценить весь материал целиком.
Единственный момент, оставшийся неупомянутым в предыдущей статье, это то, что наш отладчик может отлаживать только машинный код. У Вас не получиться начать отладку управляемого (managed) кода. Может быть, если будет четвёртая часть статьи, я в ней также рассмотрю отладку и управляемого кода.
Я бы хотел показать Вам несколько важных аспектов отладки. Они будут включать в себя показ исходного кода и стека вызовов (callstack), установки точек останова (breakpoints), входа внутрь исполняемой функции (step into), присоединение отладчика к процессу, установка системного отладчика по умолчанию и некоторые другие.
Читать дальше →

О книге Боба Мартина «Чистый код»

Reading time5 min
Views214K

(Картинка без намека, просто уж очень хотелось котика в статью добавить! Ведь это основной залог популярности в интернетах, правда? :))

У меня очень неоднозначное отношение к книгам Роберта Мартина… В них довольно много здравых и интересных мыслей, но иногда они выражаются столь категорично, что неокрепшим программерским мозгом они могут восприниматься неправильно. Если же мозг читателя достаточно окреп, чтобы воспринимать советы прагматично, то есть все шансы, что ничего нового из этих советов он (мозг или программист) не вынесет.
Читать дальше →

Делаем микросхемы дома — часть 3

Reading time6 min
Views202K
Прошло чуть больше года после предыдущих статей о моем проекте создания микросхем дома (1, 2), люди продолжают интересоваться результатами — а значит пора рассказать о прогрессе.

Напомню цель проекта: научиться изготавливать несложные кремниевые цифровые микросхемы в «домашних» условиях. Это никоим образом не позволит конкурировать с серийным производством — помимо того, что оно на порядки более совершенное (~22нм против ~20мкм, каждый транзистор в миллион раз меньше по площади), так еще и чудовищно дешевое (этот пункт не сразу стал очевиден). Тем не менее, даже простейшие работающие микросхемы, изготовленные в домашних условиях будут иметь как минимум образовательную и конечно декоративную ценность.
Читать дальше →

Настройка WinDbg

Reading time3 min
Views97K
WinDbg — позволяет отлаживать 32/64 битные приложения пользовательского уровня, драйвера, может быть использован для анализа аварийных дампов памяти, WinDbg поддерживает автоматическую загрузку отладочных символов, имеется встроенный скриптовый язык для автоматизации процесса отладки, скачать отладчик можно тут.
Читать дальше →

Как HTTPS обеспечивает безопасность соединения: что должен знать каждый Web-разработчик

Reading time9 min
Views375K


Как же все-таки работает HTTPS? Это вопрос, над которым я бился несколько дней в своем рабочем проекте.

Будучи Web-разработчиком, я понимал, что использование HTTPS для защиты пользовательских данных – это очень и очень хорошая идея, но у меня никогда не было кристального понимания, как HTTPS на самом деле устроен.

Как данные защищаются? Как клиент и сервер могут установить безопасное соединение, если кто-то уже прослушивает их канал? Что такое сертификат безопасности и почему я должен кому-то платить, чтобы получить его?
Читать дальше →

Электрический бес и углекислый газ

Reading time5 min
Views125K
На днях из Америки приехало два любопытных устройства: микрокомпьютер electric imp и оптический датчик уровня углекислого газа в воздухе K30. Каждый из них любопытен по-своему, расскажу немного о каждом из них и о их соединении.



Electric imp



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

Статью-обзор интернет анонсов можно почитать в статье на хабре, я постараюсь рассказать о конкретике и тонкостях, которые выяснились в процессе работы.
Как всё устроено

Пилим Pan/Tilt вебкамеру (это которая крутится) + возможность подключать всякие датчики за ~15$

Reading time14 min
Views85K


В связи с тем что предыдущая поделка уехала «в закат» появилась идея сделать несложную поворотную (по двум осям — Pan/Tilt) вебкамеру для инсталляции ее на потолок около сервера, который весит на стенке и на пару с роутером неоправданно кушает ценное электричество, причем круглосуточно. Пусть займется чем-то полезным.


Полет фантазии в хронологическом порядке....

Осторожно! Пост может инициировать бардак на вашем столе!

Разбор задач финала чемпионата мира про программированию ACM ICPC 2013

Reading time25 min
Views123K
На прошедшем неделю назад чемпионате мира по командному программированию ACM ICPC 2013 было 11 задач, одну из которых за отведённое время не смогла решить правильно ни одна из команд.

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

В этом году на ACM ICPC был 21 аналитик из Швеции, Нидерландов, США, Словакии, Беларуси и России. И 10 из них были из Яндекса. Все они в разные годы были призёрами ICPC. Специально для Хабра они разобрали все задания чемпионата.

Разбор задачи «Матрёшка» во время трансляции ACM ICPC 2013
Читать дальше →

Information

Rating
5,657-th
Location
Ahrensburg, Schleswig-Holstein, Германия
Date of birth
Registered
Activity