Как стать автором
Обновить
14
0

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

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

Главе Крыма на открытии школы показали компьютерный класс с одними мониторами

Время на прочтение1 мин
Количество просмотров6.9K
Похоже советская тяга к показухе неискоренима. Вчера на одном из украинских новостных сайтов появилась веселая новость.

Во время открытия школы в Крыму, в поселке Ленино, при участии главы Совета министров автономии Анатолия Могилева, школьники сидели за мониторами, которые не были подключены к системным блокам компьютеров.

Премьер-министр Крыма обратил внимание на то, что в кабинете информатики установлены компьютеры с мониторами, но без клавиатур.
Читать дальше →
Всего голосов 274: ↑251 и ↓23+228
Комментарии195

TCP/IP по аудиоканалу

Время на прочтение2 мин
Количество просмотров50K
Разработчик Крис Кристофер (Chris Christopher) опубликовал довольно подробную инструкцию, как поднять канал связи между компьютерами, используя колонки. Можно отправлять пакеты TCP/IP и UDP «по воздуху», даже если на компьютерах отсутствует оборудование для связи.

Автор использовал стандартные ноутбуки и общедоступное программное обеспечение, в том числе программу gnuradio. Он говорит, что проще всего скачать готовый LiveDVD-образ дистрибутива Gnuradio (версия Ubuntu с уже установленной программой gnuradio).

Ещё нужно скачать с Github патч для gnuradio и установить его из-под рута. Патч модифицирует пакетные кодер и декодер gnuradio для поддержки пакетов переменного размера.
Читать дальше →
Всего голосов 66: ↑63 и ↓3+60
Комментарии99

Разбираем и собираем обратно стек USB

Время на прочтение14 мин
Количество просмотров105K
Иллюстрированная проекция модели сетевого взаимодействия OSI на универсальную последовательную шину.

Три «замечательных» уровня стека USB


Меня не устроил вид стека USB, который можно встретить чаще всего на просторах сети:

Не сильно полезный стек USB

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

Если у читателя бывали сходные ощущения, предлагаю альтернативное, явившееся мне неожиданно ясно в перегретом мозгу видение стека USB, по мотивам любимой 7-уровневой модели OSI. Я ограничился пятью уровнями:



Я не хочу сказать, что весь софт и библиотеки уже сделаны или должны проектироваться, исходя из этой модели. Из инженерных соображений код c уровнями будет сильно перемешан. Но я хочу помочь тем, кто начинает своё знакомство с шиной USB, кто хочет понять протоколы обмена устройств и терминологию предметной области, подобраться поближе к готовым примерам, библиотекам и лучше ориентироваться в них. Эта модель не для загрузки в МК, но в ваши блестящие умы, дорогие друзья. А ваши золотые руки потом всё сами сделают, я не сомневаюсь:)
Разобрать стек USB
Всего голосов 72: ↑70 и ↓2+68
Комментарии23

Вычисляемые знания и будущее чистой математики

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


Перевод поста Стивена Вольфрама (Stephen Wolfram) "Computational Knowledge and the Future of Pure Mathematics"
Выражаю огромную благодарность тем, кто помог мне сделать этот перевод: Владиславу Глаголеву (Himura), Илье Марчевскому, Сергею Шевчуку (opckSheff) и Анне Коваленко.


Введение


Уже больше века, каждые 4 года в некоторой точке мира проходит Международный конгресс математиков (ICM). В 1900 году, именно на нем Давид Гильберт представил свою знаменитую коллекцию проблем математики, которая по сей день задает направление исследования математикам всего мира.

В этом году ICM проходит в Сеуле, и сегодня я отправляюсь туда. Однажды я уже бывал на ICM — в Киото в 1990 году. Тогда системе Mathematica было всего 2 года, и математики ещё только начинали привыкать к ней. Многие уже повсеместно её использовали, но на ICM были и те, кто говорил «Я занимаюсь чистой математикой. В чем, интересно, мне может помочь система Mathematica

Vychisljaemye-znanija-i-budushhee-chistoj-matematiki_1.gif
Читать дальше →
Всего голосов 85: ↑80 и ↓5+75
Комментарии45

Прием КВ на RTL-SDR, бесплатно без конвертера

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


После прочтения статьи о дешевом SDR из ТВ-тюнера я сразу же кинулся заказывать донгл на R820T. Но всё омрачал факт невозможности приема на коротких волнах, ибо в моем городе на УКВ нет ничего интересного: пара-тройка такси, скорая и изредка появляющиеся радиолюбители. После недолгих поисков я наткнулся на несколько методов «раскрытия» тюнера на 0-15МГц без использования относительно недешевых upconverter-ов.
Читать дальше →
Всего голосов 49: ↑49 и ↓0+49
Комментарии47

Получение радиолюбительской категории

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

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

Заинтересовавшихся прошу под кат.
Читать дальше →
Всего голосов 40: ↑38 и ↓2+36
Комментарии52

Разбираемся с прямым и обратным порядком байтов

Время на прочтение11 мин
Количество просмотров205K
Перевод статьи Халида Азада — Understanding Big and Little Endian Byte Order

Проблемы с порядком байтов очень расстраивают, и я хочу избавить Вас от горя, которое довелось испытать мне. Вот ключевые тезы:
  • Проблема: Компьютеры, как и люди, говорят на разных языках. Одни записывают данные “слева направо” другие “справа налево”. При этом каждое устройство отлично считывает собственные данные — проблемы начинаются, когда один компьютер сохраняет данные, а другой пытается эти данные считать.
  • Решение: Принять некий общий формат (например, весь сетевой трафик передается в едином формате). Или всегда добавлять заголовок, описывающий формат хранения данных. Если считанный заголовок имеет обратный порядок, значит данные сохранены в другом формате и должны быть переконвертированы.

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

Принтер из CD-ROM'a

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



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

Читать дальше →
Всего голосов 439: ↑426 и ↓13+413
Комментарии80

25+ видеоуроков по Android для начинающих

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

Приветствую вас, уважаемый хабрачеловек!
Предлагаю вашему вниманию бесплатно серияю видеоуроков в котрых рассмотренно базовые понятия разработки под Android.
Читать дальше →
Всего голосов 111: ↑108 и ↓3+105
Комментарии33

Игры для NES/Famicom/Денди глазами программиста

Время на прочтение5 мин
Количество просмотров119K
Это пост про ограничения старых видеоигр. Сам я под NES никогда не программировал, но с архитектурой поверхностно познакомился. Теперь я не могу играть в игры для NES, не задумываясь, как же они устроены. Иногда это на столько вызывает восхищение, что невольно забываешь про саму игру. «Чему же там восхищаться?», — скажете вы. Да просто укладываться во все ограничения NES, но при этом делать игру красивой, — это действительно целое искусство.

Сейчас я постараюсь рассказать об этом вам, максимально всё упростив.
Читать дальше →
Всего голосов 236: ↑236 и ↓0+236
Комментарии81

«Человек на острие ножа» — Джон Кармак, вехи достижений и вклад в игровую индустрию

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


Фигура Джона Кармака в индустрии компьютерных игр (далее по тексту КИ) неоднозначна. Существует большое количество слухов и скандалов, связанных с его именем. Многие считают его неприятным человеком, и многие также считают его гением. Эти два свойства, кстати, не взаимоисключающи. Можно быть не самым приятным в общении человеком, но при этом делать удивительные вещи. В этой публикации мы не рассматриваем все заслуги Джона перед КИ, не обсуждаем его прения с членами команды, и не стараемся раскопать наибольшее количество скандалов. Даже историю Id Software затрагиваем не полностью, лишь вскользь касаясь пройденных Джоном вех.

Любой разработчик со стажем и любой отдавший всю свою жизнь индустрии может быть предметом глубоких исследований, множества публикаций, и даже книг. Однако все понимают, надеюсь, как много нужно времени, чтобы собрать всю эту информацию воедино, проверить и сопоставить факты, связаться с фигурантами, выработать четкую стратегию изложения. Чем больше проходит времени, тем плотнее пелена истории покрывает удаляющиеся от нас годы, откуда можно было бы извлечь знание. Одно дело если ты был очевидцем его, если читатель (или писатель) представляет старый пласт игроков и пласт людей интересующихся. Совсем другое дело если с материалом знакомятся люди, которые вообще не знакомы с играми Wolf3D, Doom, Quake и кому наборы букв IDDQD и IDKFA ничего не говорят. Как рассказать все и не утомить читателя? Как сосредоточиться на главном? Как не потратить недели и месяцы на публикацию казалось бы ненужной статьи?

Ответ прост. Выбрать то главное, что нужно донести до читателя. Выбрать стержень. Первопричину. То, что побудило написать эти строки. И я точно знаю, чего хочу в данный момент. Рассказать о том, почему я считаю Джона — человеком на острие ножа. Человеком авангарда. Рисковым экспериментатором и первопроходцем.


Читать дальше →
Всего голосов 148: ↑143 и ↓5+138
Комментарии90

Git: за пределами возможного

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

Глава 1



Все началось с того, что мне подарили PipBoy. Очень удобная вещь: захотелось пиццы — набрал команду callPizza() и вот уже курьер везёт тебе горячий круг! «Как здорово!» — думал я.
Недавно я устроился на работу в должности программиста. Коллеги мне сразу стали расхваливать систему контроля версий Git. Ну что ж. Раз говорят, что хороший — нужно читать про него. Прочитав первую книгу, в голове был полный сумбур. Я решительно ничего не понимал. «Что за бабуйня такая? Для чего вообще это нужно?» — показалось мне.
После тяжёлого трудового дня я направился домой. Был тёплый августовский вечер, во дворе играли детишки. У каждого из них на руке был свой PipBoy. Насколько же проникли технологии в нашу жизнь. Ведь совсем недавно ничего этого не было, а первые образцы стоили сотни тысяч долларов. А вот теперь почти у каждого на руке! Погрузившись в свои мысли, я вовсе не заметил, как из-за угла кто-то выехал на мотоцикле. Мчавшись на огромной скорости, он совершенно не замечал людей на дороге. А тем более во дворе.
Продолжение?
Всего голосов 143: ↑103 и ↓40+63
Комментарии20

Загадочное объявление от IBM

Время на прочтение3 мин
Количество просмотров108K
Сегодня в пятницу на доске объявлений ИМКН матмеха УрФУ было обнаружено странное объявление с логотипом IBM.
Текст сразу бросился в глаза необычными словами; никто не смог узнать язык. Гугл-переводчик на разные предложения подсказывает разные языки: от эсперанто до каталонского. Под катом немного соображений о природе текста.

image
Тем, кто прочитает топик уже 1.04
Прошу обратить внимание, что проблема возникла уже в пятницу; статья была добавлена в песочницу тоже в пятницу. Не стоит плодить поздравления с первым апреля в комментариях.


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

Доступ к Skype API используя PHP на *nix системах

Время на прочтение4 мин
Количество просмотров41K
Еще давно я хотел иметь свой автоответчик или бота для скайпа, называйте как вам угодно. В гугле я ничего найти не мог, да еще из-за того, что я пользуюсь Ubuntu, задача становилась сложнее в несколько раз. А если учесть, что я знаю только PHP, и то, не очень хорошо, моя мечта становилась нереальной.

Но недавно, просматривая официальную документацию по API скайпа, я обратил внимание на «D-BUS messaging», не знаю, почему я раньше не обращал на него внимание. Разобравшись со всем, я наконец сделал то, что давно хотел! Я получил доступ к Skype API на PHP. Об этом я и хочу рассказать в своей статье.

Читать дальше →
Всего голосов 113: ↑98 и ↓15+83
Комментарии23

Python на Хабре

Время на прочтение7 мин
Количество просмотров452K
Некоторое время назад, в силу определенных причин, мне пришла в голову мысль о том, чтобы начать изучать какой-нибудь новый язык программирования. В качестве альтернатив для этого начинания я определил два языка: Java и Python. После продолжительного метания между ними и сопутствующих нытья и долбежки головой о стену (у меня с новыми языками всегда так — сомнения, раздумья, проблема выбора и т.д.), я все-таки остановился на Python. Окей, выбор сделан. Что дальше? А дальше я стал искать материал для изучения…
Читать дальше →
Всего голосов 182: ↑162 и ↓20+142
Комментарии65

Сокеты в Python для начинающих

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

Предисловие


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



Что это


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

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

Читать дальше →
Всего голосов 75: ↑50 и ↓25+25
Комментарии28

Архив Рекурсивный.7z: какой-то файл и архив Рекурсивный.7z

Время на прочтение8 мин
Количество просмотров34K
Формат архивов 7-Zip довольно гибкий и позволяет, например, включать весь архив как один из файлов внутри самого архива, лишь немного считерив. Разберём формат на примере: создадим почти вручную архив с именем «Рекурсивный.7z», содержащий два файла: «Какой-то файл.txt» с содержимым «Hello, Habrahabr!» и «Рекурсивный.7z», копию самого себя.

Краткая документация по формату входит в LZMA SDK. Архив начинается со следующей структуры размером 32 байта. Все позиции внутри архива кодируются как смещения относительно конца этой структуры.
сигнатура, 6 байт: { '7', 'z', 0xBC, 0xAF, 0x27, 0x1C };
версия формата, два байта { Major, Minor }, 7-Zip 9.20 пишет сюда { 0, 3 };
CRC следующих трёх полей, 4 байта;
смещение основного заголовка относительно конца этой структуры, 8 байт;
размер основного заголовка, 8 байт;
CRC основного заголовка, 4 байта.

Далее следуют данные файлов без какой бы то ни было информации о самих файлах и о границах данных. Основной заголовок, который описывает всё содержимое архива, размещается в конце архива.

Основной заголовок может быть сам по себе упакован (а также зашифрован). Поскольку он содержит структурированные данные (типа имён файлов), коэффициент сжатия достаточно неплохой. Именно для возможности подобного сжатия вся информация о файлах в 7z собрана в одном заголовке и полностью отделена от сжатых данных файлов. Признак упакованности — первый байт основного заголовка: он должен быть равен 1 у неупакованного заголовка и 0x17 у упакованного. Для создания архива вручную мы не будем ничего сжимать.

Читать дальше →
Всего голосов 95: ↑91 и ↓4+87
Комментарии22

Дистрибутив Fedora Linux для Raspberry PI теперь…

Время на прочтение1 мин
Количество просмотров278K
Всего голосов 461: ↑419 и ↓42+377
Комментарии305

Почему HTML считает, что «chucknorris» — это цвет?

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

Вы никогда не пробовали задавать цвет фона в HTML при помощи разных строк? Например, строка

<body bgcolor="chucknorris"> test </body>

сделает фон документа кроваво-красным во всех браузерах и на всех платформах (jsfiddle).

Кстати, если слово chucknorri тоже приводит к красному цвету, то chucknorr дает желтый!

Стало интересно, почему так происходит? Добро пожаловать под кат.
Читать дальше →
Всего голосов 237: ↑218 и ↓19+199
Комментарии100

Первая бытовая техника

Время на прочтение2 мин
Количество просмотров71K
Имея честь родиться в конце 20-го столетия, мало кто из нас задумывается о том, как жизнь выглядела без современных технологий в молодости наших прародителей. Обычно на Хабре пишут о тяжелых дискетках (5 килобайт в 1 кг) и т.п., но давайте сегодня поговорим о быте.

Бритаский проект HistoryPin под спонсорством благотворительной организации We Are What We Do совместно с nPower и Mirrorpix постоянно пополняют коллекцию старых фото. Эта подборка дает возможность представить себе, какой была первая бытовая техника.

Вот, например, один из первых тостеров под названием D12, который имел большой спрос на рынке, производство General Electric, 1909 год:



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

Информация

В рейтинге
Не участвует
Откуда
Курск, Курская обл., Россия
Зарегистрирован
Активность