Pull to refresh
106
Дима Коваленко @dimakovalenkoread⁠-⁠only

User

Send message

Мониторинг сообщений и звонков в Android

Reading time5 min
Views56K
На разрабатываемом мною проекте под Android возникла необходимость мониторинга входящих и исходящих звонков и сообщений. Полез читать документацию и подручные книги и к сожалению понял, что задача не совсем из тривиальных, так как каждая часть одной проблемы требует различного подхода к реализации. Вообще заметил, что многие книги или же статьи всегда стараются подавать более легкие примеры, например обработка входящего сообщения, а вот про исходящее ни слова если реализация более сложна. Возможно это мое предубеждение, но уже не первый раз обращаю на это внимание
Решил собрать все воедино и поделиться с теми, кто возможно будет набивать себе оскомину пытаясь найти решение данной проблемы. На оптимальность не претендую, так как сам учусь
Читать дальше →
Total votes 29: ↑28 and ↓1+27
Comments39

Видео: Мама впервые тестирует Windows 8, Ubuntu 12.10, Windows 1.0, Windows 3.1, Linux Mint Cinnamon 14, OSX 10.2, Elementary OS Luna, Kubuntu, Zorin OS 6.1, MS-DOS 6.22 и Microsoft Bob!

Reading time2 min
Views106K
image

В форумах не утихают споры о том, удобна ли Windows 8 или нет, является ли шагом вперед, или шагом назад. В качестве аргументов защитники windows любят говорить, что «пользователи полагаются на обзоры экспертов-ретроградов», «не пробовали windows 8», «что она почти ничем не отличается от Windows 7» и т.п.

Наверняка сторонники Win8 опять заминусуют карму, но не могу не поделиться. Сегодня случайно наткнулся на видео (местами очень смешное): австралиец попросил свою маму, которая обычно работает в Windows XP, протестировать Ubuntu 12.10 и снял процесс на видео. Оказалось, что они (вернее, его мама) протестировали целый ряд ОС, и даже Microsoft Bob!
  • Windows 8
  • Ubuntu 12.10
  • Windows 1.0 (1985)
  • Windows 3.1 (1992)
  • Linux Mint Cinnamon Edition 14 (2012)
  • MAC OSX 10.2 Jaguar (2002)
  • Elementary OS Luna Beta 1 (2012) — новое
  • Kubuntu 12.10 (2012) — новое
  • Zorin OS 6.1 (2012) — новое
  • Joli OS 1.2 (2011) — новое
  • MS-DOS 6.22 (1994) — новое
  • Microsoft BOB (1995)!

Очень любопытный проект (каждое видео примерно 15 минут):
Читать дальше →
Total votes 201: ↑129 and ↓72+57
Comments182

Текстовое приключение агента MI6

Reading time3 min
Views18K


Технически, The British Intelligence Officers Exam – это очередная промо-игра, приуроченная к выходу фильма и рекламирующая спонсорские продукты, однако помимо прочего, это ещё и самый аутентичный опыт пребывания в шкуре секретного агента, который мне встречался. И, что крайне редко встретишь в наши дни, это ещё и текстовый квест, визуально оформленный под работу в командной строке на удалённом компьютере – на экране то и дело мелькают статусы подключения к прокси-серверам или тестирование систем компьютера. На некоторых западных форумах даже встречались отзывы в духе «Я открыл вашу ссылку и тут же выключил, мне кажется, я взламываю Пентагон!!!», паникёров приходилось успокаивать и говорить, что это всего лишь игра.
Читать дальше →
Total votes 36: ↑32 and ↓4+28
Comments21

Собираем и заставляем бегать бюджетного гексапода

Reading time11 min
Views270K
Много чего предстоит сделать, прежде чем мы дойдем до вот этой картинки:



Опуская росказни о том, как именно я пришел к мысли построить гексапода (это были тонны видео на ютубе), перейду сразу к процессу выбора деталек. Это был январь 2012-го. Я сразу знал, чего я хочу от своего робота, а чего — нет. Я хотел:

— каждая нога должна иметь 3 степени свободы — 3dof (3 dimensions of freedom). Потому что более простой вариант 2dof — не дает такого ощущения насекомого, а 4dof — излишне, 3dof и так позволяет свободно перемещать кончик ноги в 3д пространстве;
— 6 ног; снова-таки, это уже не 4 (тогда робот неуклюже скачет), но и еще и не 8, как у пауков и уже чрезмерно;
— небольшой;
— дешевый;
— минимум плат и соединений;

Пост большой.
Читать дальше →
Total votes 224: ↑222 and ↓2+220
Comments60

OBOOBS.RU // Open B(.)(.)BS Project — небольшой проект про сиськи (женские)

Reading time1 min
Views41K
OBOOBS.RU

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

Главной целью было сделать неотвратительный ресурс про обнажённых девушек — нам было очень странно от того, что на эту тему не нашлось ничего простого, минималистичного и без невозможного количества порнобаннеров. И мы решили заполнить этот пробел.

Сайт копирует модель коллективной фильтрации от bash.org.ru — состоит из двух разделов: Сигнал (отобранные и разбитые по категориям картинки) и Шум (огромное количество картинок, добавленных самими пользователями, выдаётся пользователям рандомно). Время от времени, самые популярные картинки из Шума уходят в Сигнал, «попадают на главную» (заодно и в RSS валятся). Вот и всё. Можно только добавить, что крутится всё на django (nginx, apache+mod_wsgi), postgresql и prototype.

Приходите к нам смотреть на красивые сиськи!
Total votes 372: ↑306 and ↓66+240
Comments187

Как мирный reverse engineering помог чуть-чуть улучшить приложение Яндекс.Деньги

Reading time12 min
Views50K
Существует стереотип, что reverse engineering — это занятие для злых хакеров в темных очках и блестящих кожаных пальто. Под покровом ночи, в перерывах между беготней по стенам и рукопашными схватками с толпами спецназовцев, эти компьютерные нелюди творят страшные взломы программ, пентагонов и прочих баз данных. Сами взломы как правило не требуют никакой предварительной подготовки и занимают считанные секунды. Ну и конечно в процессе практически любого взлома по чОрным экранам адских хакерских ноутбуков с непонятной ОС ползут зелёные кракозяблы и/или крутится какая-то 3D-фиговина…



Сегодня я хочу отойти от затасканных голливудских штампов про злых компьютерных взломщиков и поведать вам, дорогие читатели, о том как мирный reverse engineering помог чуть-чуть улучшить приложение Яндекс.Деньги. Надеюсь эта история пошатнет устойчивый стереотип, что reverse engineering — это обязательно плохо и нужно только нехорошим людям.
Читать дальше →
Total votes 178: ↑169 and ↓9+160
Comments35

Ещё раз об изучении языков (часть 2)

Reading time13 min
Views135K

Во второй части статьи (первая, в основном теоретическая часть, находится тут), посвященный моему личному опыту изучения иностранных языков и советам начинающим это не всегда простое дело, мы разберем первый этап освоения языка: он нулевого уровня до уровня продвинутого туриста, способного разговаривать на базовые темы и понимать тексты на данном языке при помощи томика словаря.
Я уверен, что многое из того, что я описываю, уже не раз писалось в том числе и на Хабре: в конце концов, я не изобрел ничего нового. Однако для полноты картины я стараюсь описывать все то, чем я сам пользуюсь при изучении языка в надежде, что подробное описание поможет заинтересованным читателям Хабрахабра более точно воспроизвести мой подход.
Читать дальше →
Total votes 56: ↑52 and ↓4+48
Comments37

Программный дебаг Java-приложений посредством JDI

Reading time6 min
Views18K
Введение

В процессе отладки приложений работающих на JVM посредством дебаггера в Eclipse меня всегда впечатляло то, сколько доступа можно получить к данным приложения — потокам, значениям переменных и т.п. И в то же время периодически возникало желание «заскриптовать» некоторые действия или получить больше контроля над ними.

Например, иногда для того чтоб «мониторить» состояние какой-то переменной, меняющейся в цикле, я использовал условный брейкпойнт, условием к которому был код вроде «System.out.println(theVariable); return false». Этот хак позволял получить лог значений переменной практически не прерывая работы приложения (она, естественно, всё-таки прерывалась на время выполнения кода условия, но не более). Плюс, нередко при просмотре каких-нибудь данных через вид Display порядком раздражало то, что результат евалюейшна кода в Display введённого добавлялся тут же после него.

В общем хотелось получить возможность делать всё то же самое например через Bean Shell или Groovy Shell, что в принципе аналогично программному дебагу. По логике это не должно было быть сложно — ведь делает же это как-то сам Eclipse, верно?

Проведя некоторый рисёрч я смог получить доступ к отладочной информации JVM программно, и спешу поделится примером.

Читать дальше →
Total votes 26: ↑23 and ↓3+20
Comments21

Тегирование EXE файлов без повреждения цифровой подписи

Reading time5 min
Views21K


Всем привет!

Мы хотим рассказать о нашем опыте исследования цифровых подписей Windows PE файлов и возможном варианте использования их особенностей в своих целях. Если вам интересны технические подробности или просто чтиво о, казалось бы, давно известных вещах, добро пожаловать под кат.
Читать дальше →
Total votes 60: ↑55 and ↓5+50
Comments12

Подготовка к сдаче экзамена Oracle certified JAVA associate

Reading time3 min
Views66K
Поиск русского гайда по сдаче на OCAJP 7 не увеньчался успехом, так что я решил написать свой.

Что это за сертификат рассказывают в этом видео. Сдавать или нет каждый решает для себя сам, но этот сертификат является базовым в иерархии Oracle для интересующихся Java.

Для себя я решил сдавать на OCP чтобы во-первых систематизировать знания, а во-вторых поднять привлекательность для работодателей.

Началось как обычно с чтения CodeRanch. Когда я начинал готовиться книг посвященных OCA 7 еще не было в природе. Сейчас уже появился официальный гайд. Но учитывая ценник (30$), я все же воздержался бы от покупки. Сейчас расскажу почему.
Читать дальше →
Total votes 35: ↑32 and ↓3+29
Comments58

Еще раз об изучении языков

Reading time7 min
Views189K
Тема изучения иностранных языков уже много раз обсуждалась здесь. В архивах можно найти много различных интересных способов и практических советов по поводу изучения языков. В какой-то момент я решил, что мне тоже, наверное, стоит поделится опытом, накопленным в процессе изучения иностранных языков: более-менее бегло я могу говорить на шести языках.
Всё, о чём я пишу здесь — это моё личное понимание проблемы изучения языков и моё видение возможных решений. Я не претендую на какую-либо истину или научность и не имею законченного профессионального образования в области лингвистики.
Я не буду рассматривать здесь изучение языка на уровне туриста, где достаточным уровнем является способность понять основные пункты меню в ресторане, сделать заказ или суметь спросить дорогу и понять, что тебе ответили. Знание языка на таком уровне, конечно, полезно, но это нельзя назвать «владением языком». Для меня уровень владения начинается с того момента, когда я могу спокойно читать тексты на этом языке используя лишь словарик, встроенный в электронную читалку (раньше AlReader, потом СoolReader, сейчас наконец PocketBook Reader).
Читать дальше →
Total votes 74: ↑68 and ↓6+62
Comments97

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

Reading time12 min
Views46K

Вступление



Все мы, время от времени, используем дебаггер для отладки программ. Отладчик может использоваться с C++, C#, Java и ещё сотней других языков. Он может быть как внешним (WinDbg), так и встроенным в среду разработки (Visual Studio). Но вы хоть раз задавались вопросом, как же работает отладчик?
И вам повезло. В этом цикле статей мы разберёмся от и до, как же работает отладка изнутри. В этой статье рассматривается только написание отладчика под Windows. Без компиляторов, линковщиков и других сложных систем. Таким образом, мы сможем отлаживать только исполняемые файлы, так как мы напишем внешний отладчик. Эта статья потребует от читателя понимание основ многопоточности.
Читать дальше →
Total votes 87: ↑82 and ↓5+77
Comments10

Онлайн-курсы на русском языке

Reading time3 min
Views50K


Предыстория


Здравствуйте! Меня зовут Рахим, я учился по программе Computer Science (B.Sc) в университете Карлтон и писал об этом на Хабре пару лет назад в рамках проекта Computer Science Studentпрофиле можно найти все выпуски). Потом здесь же я нашел множество людей, заинтересованных в создании коллективного блога о математике и информатике. Тогда даже написал в комментариях:

Если я когда-нибудь стану профессором (а я надеюсь им стать), то я хочу в начале каждого курса писать на доске адрес этого коллективного блога и говорить: «Присоединяйтесь. Коллективный разум поможет познать вам информатику».

К сожалению, блог через некоторое время перестал обновляться, активность упала до минимума. Я закончил университет и первый год работал разработчиком, но в январе 2012 приблизился немного к реализации того комментария: стал преподавателем Международного университета информационных технологий (IITU) в южной столице Казахстана. В своем первом семестре читал лекции по операционным системам и веб-разработке, иногда проводил открытые лекции, изредка публиковал что-то на хабре. Но «hexlet.ru» на доске не писал.

Этой осенью Хекслет превратился из коллективного блога в свободную образовательную платформу. Суть проста: можно стать студентом и проходить разные курсы, можно стать учителем и вести собственные курсы. Формат схож с форматами Coursera или Udacity. 23 октября начинается первый онлайн-курс – Разработка приложений для Mac OS X.
Читать дальше →
Total votes 88: ↑80 and ↓8+72
Comments52

Игра «Жизнь» Конвея в непрерывной среде

Reading time1 min
Views33K
Немецкий учёный Штефан Рафлер создал интересную модификацию «Жизни» — клеточного автомата, придуманного в 1970 году Джоном Конвеем, в которой вместо дискретной прямоугольной сетки жизнь развивается в непрерывной среде. «Клетки» в ней имеют форму дисков, планеры могут летать в любых направлениях и водить хороводы — получается совершенно завораживающая картина.



Вот слайд-шоу с кратким описанием алгоритма, документ с более глубоким погружением в детали и исходники.

Total votes 72: ↑66 and ↓6+60
Comments32

Еще один способ отладки Android приложений на виртуальном устройстве

Reading time2 min
Views44K
Дожил я до такой жизни, что мне понадобилось написать программку для android с поддержкой bluetooth. Все время мучать планшет ради отладки не хотелось, поэтому самый естественный путь — воспользоваться эмулятором. И вот, когда я установил Adk и idea, на лбу образовались 3 шишки от граблей:
  • Основной эмулятор ADK жутко медленный
  • Интеловский нативный эмулятор не работает на компьютере с процессором AMD
  • ADK вообще не поддерживает эмуляцию bluetooth


Мы живем не в самом худшем из миров, и поэтому мне удалось довольно быстро найти приемлемое решение.
Мало букв, много картинок
Total votes 37: ↑29 and ↓8+21
Comments27

Программирование в Maxima

Reading time5 min
Views27K

Урок Maxima


Введение

Maxima — свободная система компьютерный алгебры (Computer algebra system — CAS), основанная на Common Lisp. В своих функциональных возможностях она едва уступает другим современным платным CAS, таким как Mathcad, Mathematica, Maple; может проводить аналитические (символьные) вычисления, численные расчеты, строить графики (при помощи gnuplot). Имеется возможность написания скриптов и даже трансляции их в код на Common Lisp с последующей компиляцией. В виду того, что maxima писалась из разрабатывалась программистами lisp, ее синтаксис может показаться несколько запутанным, поскольку язык является сразу и императивным и функциональным. Я попытаюсь разъяснить именно эти моменты и доступно изложить суть функционального подхода, и совсем не буду акцентировать внимания на конкретных математических функциях: их довольно легко освоить самостоятельно. В данной статье рассматривается именно особенности исчисления и синтаксических конструкций maxima.
Читать дальше →
Total votes 53: ↑50 and ↓3+47
Comments24

Получение подлинного Windows Subsystem(csrss.exe) процесса

Reading time7 min
Views22K
В этой статье я покажу вам, как найти подлинный процесс подсистемы Windows, это полезно, например, когда вы пытаетесь получить список активных процессов (заметьте, только процессы, которые работают в подсистеме Windows могут быть найдены таким образом, а кроме подсистемы Windows есть еще подсистемы POSIX и OS/2, которые уже, можно сказать, уже и не поддерживаются), перечисляя структуры CSR_PROCESS, список которых находится в процессе CSRSS.
Читать дальше →
Total votes 47: ↑42 and ↓5+37
Comments13

NLPub — каталог лингвистических решений

Reading time2 min
Views9.2K
Я хочу представить NLPub — небольшую базу знаний, посвящённую компьютерной лингвистике в России.

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

Почему подавляющее большинство устройств, приложений и сервисов не работает с русским языком?
Читать дальше →
Total votes 47: ↑46 and ↓1+45
Comments39

Взломать Wi-Fi за… 3 секунды

Reading time2 min
Views2M
Какой человек не любит халявы? Практически все ее просто обожают, и я не исключение. Вдохновленный статьей «Взломать Wi-Fi за 10 часов» я достал из недр харда BT5, скачанный ранее, и записал его на болванку. Результат не заставил себя ждать, и первый пароль был получен на следующее утро. И понеслась…
Читать дальше →
Total votes 133: ↑112 and ↓21+91
Comments63

edX/MITx: Введение в информатику и программирование

Reading time1 min
Views15K
Курс начинается 1 октября 2012 года и продлится до 14 января 2013 года. Как и во многих курсах от edX приблизительная нагрузка составляет 12 часов в неделю.

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

Требования для понимания курса: Алгебра средней школы и способности к математике.
При обучении будет использоваться язык Python версии 2.7. Знание языка не требуется.
Читать дальше →
Total votes 18: ↑16 and ↓2+14
Comments9

Information

Rating
Does not participate
Location
Украина
Registered
Activity