Search
Write a publication
Pull to refresh
4
0
dannie-walker @danSamara

User

Send message

Генерация случайных чисел на микроконтроллерах

Reading time9 min
Views49K


Про генераторы случайных чисел написано очень много, но почти всегда, когда дело доходит до реализации, подразумевается (или явно говорится), что речь идет об x86/x64 и других «взрослых» архитектурах. В то же время, форумы, посвященные разработке устройств на микроконтроллерах, пестрят вопросами «как мне сгенерировать случайное число на %controllername%?». Причем диапазон ответов простирается от «смотри гугл/википедию» до «используй стандартную функцию». Далеко не всегда эта «стандартная функция» есть и устраивает разработчика по всем параметрам, чаще наоборот: то числа получаются далеки от случайных, то скорость работы слишком мала, а то полученный код вообще не помещается в свободную память.
Попробуем разобраться, какие бывают алгоритмы генерации случайных чисел, как выбрать подходящий, а главное, в чем особенности реализации этих алгоритмов на контроллерах.
Читать дальше →

Работа с виртуальными машинами KVM. Клонирование виртуальных машин

Reading time9 min
Views19K
Clone

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

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

Тестирование. Начало

Reading time4 min
Views127K

Привет. В этой серии постов я попробую рассказать про тестирование кода на питоне, в частности проектов django. Мы рассмотрим модульное тестирование (юнит-тесты), статический анализ кода и некоторые подводные камни тестирования веб-сайтов.

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

VNC-монитор из плеера Playboy/Vogue «для чайников»

Reading time3 min
Views41K
Доброго времени суток, господа.

Мои знакомые, прочитав эту статью попросили меня написать пошаговую инструкцию с «картинками» по установке VNC-клиента на плеер Playboy с машиной на Ubuntu 11.04. А то многие обладая плеерами, не могли нормально их использовать натыкаясь на непонимание терминов и отсутствие навыков использования Linux.
Надеюсь с этим материалом многие вопросы отпадут.

Фото результатов:


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

NumPy, пособие для новичков. Часть 1

Reading time19 min
Views245K
NumPyLogoNumPy — это расширение языка Python, добавляющее поддержку больших многомерных массивов и матриц, вместе с большой библиотекой высокоуровневых математических функций для операций с этими массивами.

Первая часть учебника рассказывает об основах работы с NumPy: создании массивов, их атрибутах, базовых операциях, поэлементном применении функций, индексах, срезах, итерировании. Рассматриваются различные манипуляции с преобразованием формы массива, объединение массивов из нескольких и наоборот — разбиение одного на несколько более мелких. В конце мы обсудим поверхностное и глубокое копирование.
Читать дальше →

Как применять Linux epoll в Python

Reading time23 min
Views25K
В статье описывается:
  • Примеры использования блокирующих сокетов
  • Преимущества асинхронных сокетов и Linux epoll
  • Примеры асинхронного использования сокетов через epoll
  • Вопросы производительности
  • Исходный код
Читать дальше →

Надёжный и безопасный Linux (наш ответ Чемберлену)

Reading time8 min
Views20K
После прочтения на Хабре недавних статей, посвящённых теме безопасности линукс систем, у меня возникло желание поделиться своей точкой зрения на этот вопрос.
Статья в целом рассчитана на начинающих администраторов, поэтому в ней изложены очевидные для хорошего специалиста вещи. Ценные дополнения и замечания приветствуются.
Копи-пейст выдержки из конфиг файлов я почти не буду приводить по трём причинам:
  1. Это приведёт с излишнему разрастанию статьи
  2. Маны и гугл никто не отменял
  3. Пункт 2 очень полезен для развития специалиста


Итак, как повысить безопасность и надёжность сервера (да и рабочей станции) на базе линукс?

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

Работа с виртуальными машинами KVM. Введение

Reading time4 min
Views77K
Как и обещал, начинаю серию статей о том, как мы делали услугу аренды выделенных серверов на базе KVM.

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

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

Пишем программы для микроконтроллеров AVR в среде Code::Blocks 10.5

Reading time2 min
Views52K
Привет, Хабр!

В этом небольшом топике будет показано как использовать популярную IDE Code::Blocks 10.5 для написания программ для микроконтроллеров семейства AVR фирмы ATMEL.



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

Разработка игр с использованием Cocos2d на Python

Reading time5 min
Views33K
image

Введение


Имплементация Cocos2d на Objective-C используется для разработки игр для iPhone весьма широко. По данным официального сайта число игр на этом движке уже превышает 1800. Не раз упоминался он и на Хабре. Другие порты (cocos2d-x на C++ и cocos2d-android на Java) также известны и набирают популярность. Однако прародитель этих движков, оригинальный Cocos2d оказался незаслуженно обойден вниманием. Попробую восполнить этот пробел.
Читать дальше →

Дорога к свету

Reading time10 min
Views24K

Простейший робот из подручных средств



image
Наш простой робот

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

Встречайте: DrupalSN — социальная сеть drupal-разработчиков

Reading time2 min
Views750
DrupalSNПривет, друзья и коллеги!

Рады сообщить вам, что мы наконец-то запустили долгожданный проект DrupalSN — социальную сеть для drupal-разработчиков.

DrupalSN — это сообщество разработчиков, делающих сайты на CMS/CMF Drupal и стремящихся поделиться решениями и рецептами создания сайтов на этой замечательной системе.
Читать дальше →

Учим bash-скрипты, пишем Sokoban

Reading time4 min
Views139K
Мне кажется, что на свете еще есть люди, которые хорошо знают несколько языков программирования, но при этом не пишут скриптов для bash, потому что скриптовый язык bash выглядит для них слишком странным. Чтобы доказать, что bash — это несложно, я написала игру Сокобан (или Грузчик, кому как нравится), и хочу рассказать, как она работает.
Краткая справка по bash, скриншот игры, исходный код и ссылка на файл - под катом

Ограничиваем входящий и исходящий трафик в Linux

Reading time11 min
Views116K
В данной статье хочу рассказать, как я строил систему ограничения входящего и исходящего трафика в Linux.
Как и учет трафика, ограничение полосы пропускания в сети является очень важной задачей, хотя первое с каждым годом всё быстрее отходит на второй план, шейпинг трафика остается необходимой задачей каждого системного/сетевого администратора.
Читать дальше →

[Графический редактор на Canvas] Кисть для скетчей

Reading time6 min
Views9.8K
Продолжаем неделю canvas на хабре.
Графические редакторы на флеше/сильверлайте в интернете не редкость. На canvas их намного меньше, но есть и довольно интересные. Вот пара примеров:В этом цикле статей я планирую рассказать о различных моментах, с которыми можно столкнуться при создании графического редактора на canvas. Тривиальные части затрагивать не буду, постараюсь описывать только самое интересное. В этой статье опишу примерный алгоритм создания кисти для скетчей
Читать дальше →

Вы НЕ инженер-программист!

Reading time3 min
Views36K
От перев.: Думаю, практически каждый разработчик читал произведение искусства под названием «Если бы программисты строили дома». В этом юмористическом рассказе проводится параллель между строительством и разработкой ПО. Неожиданно! Понятно, что в каждой шутке есть доля правды. И вот спустя годы я наткнулся на другое сравнение. Мне оно показалось более точным, поэтому я решил перевести его на русский и поделиться с сообществом.

Познать дзен садоводства!

Руководство АНБ по безопасной конфигурации Linux-сервера

Reading time1 min
Views18K
Агентство по национальной безопасности США опубликовало новую версию 200-страничного руководства (PDF) по безопасной конфигурации Red Hat Enterprise Linux 5. Это весьма подробный мануал, который объясняет принципы защищённой системы и на практике указывает все необходимые настройки и перечень сервисов, которые обязательно нужно отключить (это один из базовых принципов: минимизировать количество софта).

Есть и что-то вроде шпаргалки на листе A4, тоже очень удобно.
Читать дальше →

Истёкшие домены — дыра в безопасности Google Apps

Reading time1 min
Views3.3K
Английский разработчик Бен Рейес написал в своём блоге, как он зарегистрировал только что истёкший домен и в качестве бонуса получил к нему чужой ящик Gmail, календарь и контакты. Завладев чужим ящиком, Бен смог зайти и в аккаунты на сторонних сервисах, таких как Amazon.

Провернуть такую операцию получилось с помощью Google Apps. Дело в том, что Бен захотел после получения домена сразу же привязать его к своему аккаунту Google App, но обнаружил, что домен уже к кому то привязан.


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

Музыкальная подсветка коллекции оптических стекол

Reading time3 min
Views4.1K
В музее оптики СПбГУ ИТМО есть довольно примечательный экспонат — каталог Аббе, представляющий из себя коллекцию оптических стекол различных марок и размеров. Руководство музея желало чтобы этот каталог подсвечивался под музыку, поэтому на свет появился проект музыкальной подстветки каталога, которым я собственно и занимался. Это что-то сродни задаче мигания светодиодом при помощи микроконтроллера, только помасштабнее.

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

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity

Specialization

Fullstack Developer, Chief Technology Officer (CTO)
Lead
People management
Building a team
Linux
High-loaded systems
PostgreSQL
Python
Rust