Ни для кого не секрет, что сейчас можно легко скачать эмулятор почти любой игровой консоли 80х-90х и поиграть в классические игры на компьютере, телефоне и многих других платформах. В сети легко можно найти и ROM'ы этих самых игр. Зачастую люди качают их и даже не задумываются, каким же образом кто-то однажды прочитал их из картриджа. В этой статье я и постараюсь рассказать, как же это делалось в случае с NES/Famicom, которая у нас была больше известна как «Денди», и покажу, как можно сделать это самостоятельно.
Дмитрий Жильцов @zaabjuda
Пользователь
Selenium для Python. Глава 1. Установка
5 мин
495KПредставляю перевод неофициальной документации Selenium для Python.
Перевод сделан с разрешения автора Baiju Muthukadan.
Оригинал можно найти здесь.
Selenium WebDriver – это программная библиотека для управления браузерами. WebDriver представляет собой драйверы для различных браузеров и клиентские библиотеки на разных языках программирования, предназначенные для управления этими драйверами.
Перевод сделан с разрешения автора Baiju Muthukadan.
Оригинал можно найти здесь.
Предисловие от автора статьи
Selenium WebDriver – это программная библиотека для управления браузерами. WebDriver представляет собой драйверы для различных браузеров и клиентские библиотеки на разных языках программирования, предназначенные для управления этими драйверами.
+16
7 золотых правил одного программиста
3 мин
143KЭто статья про семь простых правил, которые я сформулировал для себя за годы работы программистом. Семь правил, которые подняли мою эффективность. Сделали меня лучше. Это мои правила и они работают для меня. Я не пытаюсь навязать их вам, я хочу поделиться с вами, и, возможно, узнать о том, каких правил и принципов придерживаетесь вы.
Самая раздражающая ситуация в программировании — когда код верный, но не работает. “Да тут три строчки, блин, просто негде ошибиться! Наверное баг! Пойду потрачу три дня на изучение баг-репортов компилятора/интерпретатора/фреймворка...”. Возникает чувство, будто компьютер над вами издевается!
Тут главное помнить, что в этих трех строчках есть ошибка. Если код работает не верно — значит код написан не верно. Точка. Виноваты только вы. Универсальный совет — идите спать! Ну или хотя бы отвлекитесь на чашку чая. Когда, через некоторое время, вы вернетесь к коду, наверняка станет ясно, что тут лишний оператор отрицания, или перепутаны две переменные с похожими именами, или еще какая-нибудь мелочь, в которой мы никогда никому не признаемся.
Компьютер всегда прав
Самая раздражающая ситуация в программировании — когда код верный, но не работает. “Да тут три строчки, блин, просто негде ошибиться! Наверное баг! Пойду потрачу три дня на изучение баг-репортов компилятора/интерпретатора/фреймворка...”. Возникает чувство, будто компьютер над вами издевается!
Тут главное помнить, что в этих трех строчках есть ошибка. Если код работает не верно — значит код написан не верно. Точка. Виноваты только вы. Универсальный совет — идите спать! Ну или хотя бы отвлекитесь на чашку чая. Когда, через некоторое время, вы вернетесь к коду, наверняка станет ясно, что тут лишний оператор отрицания, или перепутаны две переменные с похожими именами, или еще какая-нибудь мелочь, в которой мы никогда никому не признаемся.
+100
Как подружить OpenHAB и Arduino
6 мин
80KМы все хотим сделать жизнь лучше, добавить в наш дом технические новинки, автоматизировать его и сделать более безопасным. Зачастую эти желания превращаются в движение по граблям. Известно, что фирменные системы дороги и часто не совместимы друг с другом, а создание своего решения по силам не каждому профессионалу. Что же делать, как найти простое решение доступное любителям, но и интересное профессионалам?
Arduino — простой электронный конструктор, который пользуется заслуженным уважением у любителей, говорят, что его недолюбливают профессионалы, хотя тайком используют в своих жутких экспериментах. В чём секрет его популярности, как воспользоваться ей для решения нашей задачи?
Arduino подходит для локального контроля и управления в доме, в сети есть масса проектов для этого — отлично, но недостаточно, ведь нужно мыслить глобально! Нам нужен выход в сеть и мобильный интерфейс!
Хорошо, что благодаря этой статье мы уже знакомы с OpenHAB — платформой с открытым исходным кодом, объединяющей большое количество устройства с разными протоколами в единую сеть. OpenHAB реализован на Java, поэтому работает в различных ОС, его можно запустить на одноплатном компьютере и даже роутере, в нём есть мобильный и Web интерфейс. Звучит как хороший набор заклинаний против наших, надоевших уже граблей, проверим?
Arduino — простой электронный конструктор, который пользуется заслуженным уважением у любителей, говорят, что его недолюбливают профессионалы, хотя тайком используют в своих жутких экспериментах. В чём секрет его популярности, как воспользоваться ей для решения нашей задачи?
Arduino подходит для локального контроля и управления в доме, в сети есть масса проектов для этого — отлично, но недостаточно, ведь нужно мыслить глобально! Нам нужен выход в сеть и мобильный интерфейс!
Хорошо, что благодаря этой статье мы уже знакомы с OpenHAB — платформой с открытым исходным кодом, объединяющей большое количество устройства с разными протоколами в единую сеть. OpenHAB реализован на Java, поэтому работает в различных ОС, его можно запустить на одноплатном компьютере и даже роутере, в нём есть мобильный и Web интерфейс. Звучит как хороший набор заклинаний против наших, надоевших уже граблей, проверим?
+18
Оценка трудозатрат на проект и подготовка коммерческих предложений
4 мин
27KНи для кого не секрет, что большинство команд разработчиков регулярно или периодически встречаются с ситуациями проваленных сроков выполнения и превышения планируемого бюджета проектов. В англоязычном интернете можно найти очень много информации по этому поводу. Более того, каждый более или менее опытный разработчик, как правило, имеет собственное мнение на этот счет.
+10
Workflow в Document Approval System
7 мин
8.1KКогда .NET разработчик слышит слова «В проект нужно добавить workflow», то первым приходит в голову идея взять Windows Workflow Foundation.
В 2010 году мы выбрали WF в качестве движка документооборота.
Аргументы просты:
За полтора года (с августа 2010 по февраль 2012) использования WF мы столкнулись с массой разнообразных проблем при реализации требований клиента. В конечном итоге мы были вынуждены отказаться от Windows Workflow Foundation и сделать свою реализацию State Machine.
В этой статье я расскажу об основных проблемах, с которыми мы сталкивались, и как решали (или не решали).
В 2010 году мы выбрали WF в качестве движка документооборота.
Аргументы просты:
- Бесплатно;
- Встроено в Visual Studio;
- В интернете много информации об использовании WF.
За полтора года (с августа 2010 по февраль 2012) использования WF мы столкнулись с массой разнообразных проблем при реализации требований клиента. В конечном итоге мы были вынуждены отказаться от Windows Workflow Foundation и сделать свою реализацию State Machine.
В этой статье я расскажу об основных проблемах, с которыми мы сталкивались, и как решали (или не решали).
+9
Еще одно сердечко на Atmega
2 мин
50KНе так давно увлекся схемотехникой для музыки (усилители, гитарные эффекты) и как-то незаметно перешел с аналоговой на цифровую электронику. Выбор пал на микроконтроллеры фирмы Atmel, потому как товарищ довольно неплохо в них разбирался и, если что, было у кого спросить. Первым делом собрал программатор (клон STK500) и принялся за свой первый проект: мигание светодиодами. А так как дело близилось к 14 февраля решил совместить приятное с полезным и порадовать свою любимую супругу. Вдохновителем идеи был пост пользователя Terehoff: «Чем порадовать любимую 14 февраля».
+37
Введение в ограничение числа запросов с Redis [часть 1]
5 мин
13KЗа последнее время я написал несколько разных способов ограничения числа запросов с помощью Redis. Как в коммерческих, так и в личных проектах. В двух частях этой публикации я хочу охватить два разных, но связанных способа ограничивать число запросов — с использование стандартных команд Redis и с помощью Lua скриптов. Каждый последующий из описанных методов будет добавлять новые варианты использования и решать огрехи предыдущих.
Эта публикация предполагает, что у вас есть некоторый опыт работы с Python и Redis и, в меньшей степени — с Lua, но и тем, у кого такого опыта нет, тоже будет интересно.
Например, Twitter ограничивает количество запросов к своему API, а Reddit и StackOverflow используют ограничения на количество сообщений и комментариев.
Эта публикация предполагает, что у вас есть некоторый опыт работы с Python и Redis и, в меньшей степени — с Lua, но и тем, у кого такого опыта нет, тоже будет интересно.
Зачем ограничивать число запросов?
Например, Twitter ограничивает количество запросов к своему API, а Reddit и StackOverflow используют ограничения на количество сообщений и комментариев.
+13
Сравнительная схема кораблей из научной фантастики
2 мин
316KDirkLoechel наконец-то закончил работу над самой большой в истории сравнительной схемой космических кораблей из научно-фантастических произведений: художественных фильмов, сериалов и игр. Star Trek, «Звёздные войны», EVE Online и многие другие (полный список под катом). Все культовые корабли — они тут. Открывайте оригинал изображения 4268 x 5690 пикселов — и погружайтесь.
+128
Интерактивную карту Солнечной системы перевели на русский
1 мин
93KПожалуй, осознание расстояний в космосе вызывает одно из самых больших затруднений для обывателя. Для заполнения этой лакуны и была создана «утомительно точная карта Солнечной системы» — интерактивная инфографика, в которой за пиксель взят размер Луны:
joshworth.com/dev/pixelspace/pixelspace_solarsystem.html
Особенно впечатляет визуализация скорости света
joshworth.com/dev/pixelspace/pixelspace_solarsystem.html
Особенно впечатляет визуализация скорости света
+45
Приступаем к работе с Google+ API
1 мин
11KПеревод
Только что пришла благая весть от Гугла:
Приветствуем разработчиков,
Благодарим Вас за проявленный интерес к платформе Google+. Мы обещали, сообщать о всем интересном, что происходит. Ну, что же — пришло время…
Сегодня мы запускаем первую часть Google + API. Это первый выпуск API ориентирован только на работу с публичными данными — API позволяет получать доступ к информации, которою пользователи раcшаривают с помощью Google+. Подробную информацию Вы можете получить в нашем блоге.
+66
Current Cost EnviR — мониторинг потребления электроэнергии
4 мин
69KСколько электроэнергии потребляет телевизор, что расходует больше электричества — стиральная машина или холодильник, насколько эффективно используется электроэнергия в квартире? На все эти вопросы мог ранее ответить ныне закрытый сервис Google PowerMeter. Однако гикам и домашним экономам не стоит отчаиваться, ибо несмотря на свертывание сервиса от Google, дело мониторинга потребления электроэнергии продолжает жить. В данном обзоре предлагается к рассмотрению устройство Current Cost EnviR, которое позволяет не только наблюдать как «утекают» киловатты электроэнергии на дисплее устройства, но и совместно с Current Cost NetSmart(ранее Current Cost Bridge) отслеживать потребление электроэнергии в режиме online на сайте my.currentcost.com.
+21
Фильмы IT-тематики
2 мин
15KВ свое время, в 1995-ом году, на меня произвел впечатление фильм «Хакеры». Можно
сказать, он стал мотиватором моей дальнейшей ИТ-карьеры. Далеко не эталон киноискусства, однако
стремление стать похожим на героев фильма, продолжилось в самообразовании. Далее первый выклянченный компьютер, первые строчки кода, начало проб и ошибок. Когда уже были написаны эти самые «хэлоу-ворды», «калькуляторы», затем испробованы несколько *nix'ов — на руки попалась болванка с «Antitrust». В одноголосном переводе и гиблом качестве. К слову, это не помешало, пересмотреть фильм пару десятков раз. Что послужило более зрелому стремлению, чем быть всемогущим кул-хакером. Под катом, перечислю увиденные мной фильмы IT-тематики, с кратким описанием. В основном из двухтысячных. Неувиденное или забытое, будем добавлять.
сказать, он стал мотиватором моей дальнейшей ИТ-карьеры. Далеко не эталон киноискусства, однако
стремление стать похожим на героев фильма, продолжилось в самообразовании. Далее первый выклянченный компьютер, первые строчки кода, начало проб и ошибок. Когда уже были написаны эти самые «хэлоу-ворды», «калькуляторы», затем испробованы несколько *nix'ов — на руки попалась болванка с «Antitrust». В одноголосном переводе и гиблом качестве. К слову, это не помешало, пересмотреть фильм пару десятков раз. Что послужило более зрелому стремлению, чем быть всемогущим кул-хакером. Под катом, перечислю увиденные мной фильмы IT-тематики, с кратким описанием. В основном из двухтысячных. Неувиденное или забытое, будем добавлять.
+155
Зачем выступать на айтишных конференциях и митапах?
7 мин
25KС осенью нас, коллеги. Летняя спячка подошла к концу, и осень начала радовать нас айтишными выставками, анонсами и конференциями разных форм и размеров. Последние несколько лет я плотно занимаюсь хакатонами и конференциями и очень часто слышу вопросы об аудитории и докладчиках — зачем все эти люди собираются, что они хотят друг от друга и какая практическая польза кроме пиццы? В рамках этого поста я собрал немного информации по предмету и мои собственные наблюдения, как проще всего подготовить и провести выступление на айтишной конференции или митапе. Под катом — мои ответы на странные вопросы и несколько практических приемов, накопленных за годы борьбы с ленью и здравым смыслом.
+33
И еще раз о GIL в Python
9 мин
37KПредисловие
Область, в которой мне повезло работать, называется вычислительная электрофизиология сердца. Физиология сердечной деятельности определяется электрическими процессами, происходящими на уровне отдельных клеток миокарда. Эти электрические процессы создают электрическое поле, которое достаточно легко измерить. Более того оно очень неплохо описывается в рамках математических моделей электростатики. Тут и возникает уникальная возможность строго математически описать работу сердца, а значит — и усовершенствовать методы лечения многих сердечных заболеваний.
За время работы в этой области у меня накопился некоторый опыт использования различных вычислительных технологий. На некоторые вопросы, которые могут быть интересны не только мне, я постараюсь отвечать в рамках этой публикации.
+71
Windows 10 Technical Preview доступна для скачивания
2 мин
294KВчера Microsoft представила Windows 10 и сегодня, любой из вас может скачать и установить на своем компьютере или виртуальной машине предварительную версию этой операционной системы.
+29
Python-digest #35. Новости, интересные проекты, статьи и интервью [27 июля 2014 — 03 августа 2014]
4 мин
14KДайджест был опубликован ранее, но определенным причинам был исключен с хабра, сейчас же было принято решение вернуть его обратно.
Очередной выпуск новостей из мира Python.
За иллюстрацию к посту, как и раньше, благодарим owlman75, а так же alrusdi за идею дайджестов и за то, что я по прежнему могу публиковать эти дайджесты для вас.
В этом выпуске у нас вот такие интересные новости собрались: свеженькие уязвимости в django, в релизах второй релиз кандидат Django 1.7, APScheduler 3.0, Pylint 1.3 / Astroid 1.2, django-extensions 1.3.9, boto 2.32.0 и еще много интересных библиотек и статей для изучения.
+35
Python на Assembler (Tasm)
3 мин
29KСегодня напишем в текстовом режиме с использованием прерываний BIOS и DOS змейку на Assembler. Для этого нужно знать основы, уметь ассемблировать (Tasm) и компоновать (Tlink) код.
Для начала напишем основу — змейку, которая перемещается в одном направлении по игровому полю. Змейка будет состоять из символа "*", координаты каждого символа хранятся в памяти.
Для начала напишем основу — змейку, которая перемещается в одном направлении по игровому полю. Змейка будет состоять из символа "*", координаты каждого символа хранятся в памяти.
+36
Оптимизация конверсии: где лучше всего разместить призыв к действию? [кейс]
7 мин
25KПеревод
Призыв к действию на landing page — одна из стадий воронки продаж, часто очень важная для повышения конверсии в платящих клиентов. При размещении кнопки призыва к действию на лендинге многие владельцы сайтов следуют одним и тем же стереотипам и шаблонам и боятся экспериментировать. Более того, при размещении кнопки призыва к действию на большом количестве сайтов словно бы забыли использовать элементарную логику, сотрудники этих компаний явно не пытаются отследить перемещения посетителя сайта и направить его, и не тестируют разные варианты CTA. В данной статье Оли Гарднера, написанной от первого лица, разбираются многочисленные вариации размещения кнопки призыва к действию, автор анализирует, какие из них наиболее эффективны, а какие — ошибочны, и делает несколько выводов-рекомендаций по размещению CTA на лендинге. Где же все-таки должен быть расположен этот чертов призыв к действию?
+10
Разработка сайтов (веб-приложений) на C++ (и не только) в виде подключаемых библиотек (*.so, *.dll)
4 мин
53KВведение (лирика)
Около двух лет я занимался веб-разработкой, создавая сайты и веб-приложения на языке PHP. Вот только в веб-разработку я попал по стечению весьма странных жизненных обстоятельств. Не сказать, что мне было это не интересно — мне, как раз, было очень интересно узнать, как создаются сайты и как вообще работает интернет.
Но, в то же время, меня всегда привлекало низкоуровневое программирование. Ещё во время учёбы мне очень понравился язык программирования C++. Только негде было его применять, кроме как для своего развлечения. Дальше я опустился пониже — изучил Assembler. Понял, как работает процессор (хотя слишком поверхностно) и как выполняются программы на самом деле.
Со всем этим набором знаний и опыта я попал в веб-разработку. Всё поначалу казалось весьма и весьма хорошо, оказалось гораздо проще, чем я думал. А со временем приелось, стало слишком просто, неинтересно, нет простора для оптимизаций и интересных решений. Генерируешь веб-странички, пишешь и подключаешь js-скрипты, оформляешь страницы с помощью css. Чувствовал, что больше не развиваюсь как программист.
+18
Информация
- В рейтинге
- Не участвует
- Откуда
- Москва, Москва и Московская обл., Россия
- Дата рождения
- Зарегистрирован
- Активность