Как стать автором
Обновить
111
0
Victor Shcherb @vics001

Разработчик OsmAnd

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

Отобразить уведомление на Android Wear, не показывая его на телефоне

Время на прочтение1 мин
Количество просмотров13K
Решил я все же, не смотря на свой скепсис, начать переносить приложения на Android Wear.

Первое дело — показывать уведомления, ИМХО, первая и важнейшая функция смарт-часов.
Открываю мануал и узнаю что уведомления на часы можно отправить только прицепом к общесистемному уведомлению Android. На Sony все было разделено и даже слишком, а тут все интегрировано и само собой работает. Гвоздями прибито.
Читать дальше →
Всего голосов 23: ↑21 и ↓2+19
Комментарии11

Вычисление дня недели в уме

Время на прочтение4 мин
Количество просмотров106K
imageСуществует множество способов прокачать мозг. Задачи «n-back» или мобильные приложения для тренировки навыка быстрого счета в уме. Но эти задачи оторваны от текущей реальности, а хотелось бы прокачать мозг практичным навыком.

Зачем? Ведь можно быстро посчитать на гаджете. Увы, совсем не быстро, т.к. потребуется время на поиски и активацию гаджета, поиск приложения, ввод даты, осознание полученного результата. А еще можно друзей/подруг порадовать своими внезапно появившимися экстраординарными способностями. Кстати, друзья быстро осознают удобство использования вечного календаря с голосовым интерфейсом.

Разве это возможно? Как-то раньше обходились без компьютеров. В одной из тв-передач «ищем таланты» показывали натренированного трехлетнего ребенка, который может вычислять произведение трехзначных чисел (пощадите своих детей). Впрочем, взрослые уже не дети и их мозг частично кристаллизован, в смысле слабо обучаем. Значит нужно запоминать как можно меньше и максимально задействовать имеющиеся навыки.
Как считать
Всего голосов 48: ↑45 и ↓3+42
Комментарии20

Ослабленный SSL в android устройствах?

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

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

Итак, по словам автора приложения APRSdroid, начиная с Android 2.3 при установке SSL-соединения вместо использовавшейся ранее комбинации алгоритмов шифрования и хэширования AES256 и SHA1 первой стала предлагаться значительно более слабая комбинация из RC4 и MD5.
Почитать пост с описанием этого открытия вы можете по ссылке.
Оставляя за скобками мотивы разработчиков android установить приоритет именно для этих алгоритмов, я хочу рассказать чем плох RC4 в качестве основного метода шифрования и чем это чревато для SSL.
Читать дальше →
Всего голосов 54: ↑41 и ↓13+28
Комментарии25

Энтропия и деревья принятия решений

Время на прочтение8 мин
Количество просмотров119K
Деревья принятия решений являются удобным инструментом в тех случаях, когда требуется не просто классифицировать данные, но ещё и объяснить почему тот или иной объект отнесён к какому-либо классу.

Давайте сначала, для полноты картины, рассмотрим природу энтропии и некоторые её свойства. Затем, на простом примере, увидим каким образом использование энтропии помогает при создании классификаторов. После чего, в общих чертах сформулируем алгоритм построения дерева принятия решений и его особенности.
Читать дальше →
Всего голосов 86: ↑83 и ↓3+80
Комментарии14

Профилирование уже запущенных программ

Время на прочтение6 мин
Количество просмотров35K
Все мы пользуемся профайлерами. Традиционная схема работы с ними такова, что приходится изначально запускать программу «под профайлером» а затем, после окончания ее работы, анализировать сырой дамп с помощью дополнительных утилит.
А что делать если мы не имея root'а хотим запрофилировать уже работающую программу, которая долго работала «как надо», а сейчас что-то пошло не так. И хотим это сделать быстро. Знакомая ситуация?
Тогда рассмотрим наиболее популярные профайлеры и принципы их работы. А затем профайлер, который решает именно указанную задачу.

Читать дальше →
Всего голосов 41: ↑38 и ↓3+35
Комментарии7

Чему я научился у Джейсона Фрайда (37signals)

Время на прочтение10 мин
Количество просмотров27K
Творческая беседа Дэна Шиппера, кофаундера Firefly и Джейсона Фрайда, кофаундера 37signals привела автора статьи к занятным выводам о том, как и кому продавать ПО. Надеемся, и вам, Хабражители, принесет пользу.

Переведено компанией-локализатором Alconost


Читать дальше →
Всего голосов 46: ↑41 и ↓5+36
Комментарии15

Sublime Text 2 для C/C++ разработчика или SublimeClang

Время на прочтение5 мин
Количество просмотров55K
На хабре много статей посвященных редактору Sublime Text 2. Обычно они рождают за собой множество комментариев, где сторонники ST2 и всевозможных других редакторов (а также полноценных IDE) предаются веселому процессу «достоинствометрии».
Однако, среди комментариев мне лично ни разу не встречалось упоминаний о плагине SublimeClang, который кардинально меняет работу C++ программиста в этом редакторе. Поиск по хабру выдал всего 4 упоминания плагина в комментариях.
Не знаю, чем вызвано такое игнорирование. Хорошие вещи не обсуждаются? ST2 не используют C и С++ разработчики? Своей статьей я хочу исправить ситуацию. Я расскажу о некоторых, возможно не очевидных, особенностях установки и настройки, а также поделюсь парой собственных приемов и скриптов.

О плагине


Итак, плагин обеспечивает автодополнение кода и проверку ошибок прямо по ходу написания программы. Для файлов C/C++/ObjC/ObjC++ плагин заменяет стандартное автодополнение редактора на свое собственное. Для этого, плагин в фоне прогоняет исходник через компилятор clang, который формирует AST. Полученную информацию плагин использует для интеллектуальных подсказок автодополнения.
Ближайший аналог, который я могу подобрать — это функция IntelliSense в MS Visual Studio.
Использование информации из первых рук — от компилятора — позволяет плагину правильно узнавать, какие переменные, функции, типы и т.п. доступны в данной конкретной точки программы. Так же, в какой-то мере работают Go to definition (alt + d, alt + d) и Go to implementation (alt + d, alt + i). Список остальных горячих клавиш доступен на странице проекта.
Читать дальше →
Всего голосов 24: ↑22 и ↓2+20
Комментарии29

Тренды в образовательной среде (памятка для вуза)

Время на прочтение6 мин
Количество просмотров78K
Добрый день!



Ниже небольшая заметка, адресованная тем, кто так или иначе влияет на академическое образование в нашей стране. Потому как после трёх лет упорной работы по развитию пресловутого «образования 2.0» я вынужден сделать вывод, что слишком мало руководителей нашей высшей школы понимают общую стратегию мировой академической среды.

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

Итак, сначала немного пафоса.
Читать дальше →
Всего голосов 93: ↑87 и ↓6+81
Комментарии59

Подделываем вашу подпись при помощи шарнирного механизма. Теорема Кемпе

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

Читать дальше →
Всего голосов 388: ↑382 и ↓6+376
Комментарии125

Teradata – СУБД, параллельная от рождения

Время на прочтение5 мин
Количество просмотров36K
Приветствуем, уважаемые Хабравчане. Последнее время на Хабре стало мелькать название компании Teradata в тех или иных вопросах. И, увидев возможный интерес, мы решили рассказать немного о том, что же такое СУБД Teradata, от первого лица. Мы планируем подготовить небольшую серию статей о самых интересных, на наш взгляд, технических особенностях СУБД и работы с ней. Если у вас есть опыт работы с Teradata или в вашей компании используется наша платформа и у вас есть вопросы – подкидывайте их, и мы либо ответим на них в комментариях, либо подготовим соответствующую полноценную статью. А начнем с небольшого обзора. Для знакомства, так сказать.
Читать дальше →
Всего голосов 28: ↑21 и ↓7+14
Комментарии30

Canonical выкладывает новые билды Ubuntu 13.04 Raring Ringtail каждый день

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


Разработчики Ubuntu сообщили о намерении выкладывать обновленные билды Ubuntu 13.04 Raring Ringtail (пре-релиз) каждый день. Финального релиза стоит ожидать 25 апреля 2013 года, но заинтересованные в этой версии пользователи могут каждый день видеть, как меняется система. Дело в том, что в Canonical решили изменить стандартную схему анонса новых релизов, и теперь не будет никаких альфа-билдов обновленного дистрибутива.

Читать дальше →
Всего голосов 46: ↑35 и ↓11+24
Комментарии30

Одно предложение, которое делает нас сильнее

Время на прочтение2 мин
Количество просмотров93K
Это мой самый короткий топик, суть которого в одном предложении. Часто именно с этого предложения начинается успешный стартап, бизнес и любое другое начинание.

Это шаблон описания сути вашей компании или проекта в одном предложении. Я открыл его для себя во время стажировки в США. Составив его, мы реально становимся сильнее. В последствии мне это помогло выбрать правильный курс, сфокусироваться и расставить приоритеты.
Читать дальше →
Всего голосов 198: ↑168 и ↓30+138
Комментарии51

Google выпускает J2ObjC, open-source конвертер кода Java в Objective-C для iOS-приложений

Время на прочтение1 мин
Количество просмотров32K
Google представили выпуск open-source проекта J2Objc, собственный конвертер из исходного кода на Java в Objective-C для приложений на iPhone/iPad.

image
Читать дальше →
Всего голосов 82: ↑80 и ↓2+78
Комментарии96

Цитаты о языках программирования

Время на прочтение3 мин
Количество просмотров40K
Что учёные, писатели и программисты думают о популярных языках программирования.

Все языки


«Есть два подхода к программированию. Первый — сделать программу настолько простой, чтобы в ней очевидно не было ошибок. А второй — сделать её настолько сложной, чтобы в ней не было очевидных ошибок.»
Tony Hoare. Профессор, занимался реализацией Алгол 60, сейчас исследователь в Microsoft Research.


Algol 60 (позже повлиявший на C)


«Я не мог устоять перед искушением добавить в язык нулевой указатель (null), просто потому, что его так легко было реализовать. Это привело к бессчётному множеству ошибок, уязвимостей и сбоев, которые нанесли ущерб, наверное, в миллиард долларов за последние сорок лет.»
Tony Hoare.
Читать дальше →
Всего голосов 256: ↑235 и ↓21+214
Комментарии103

Отладка нативного кода Android NDK в Windows

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

Введение


Доброго времени суток!

Однажды передо мною встала задача отловить непонятное падение в моем приложении. Насколько я знал тогда, Android NDK предоставлял возможность отлаживать C++ код, однако я смутно представлял себе, как это сделать. К сожалению, толковой информации по отладке нативного кода было очень мало. Потратив на это дело несколько вечеров, я все-таки разобрался и наладил отладку. Сейчас я расскажу о том, как это можно сделать и расскажу о том, какие грабли могут ожидать вас, если вы задумаете повторить мой путь.

Читать дальше →
Всего голосов 21: ↑21 и ↓0+21
Комментарии6

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

Время на прочтение8 мин
Количество просмотров6.5K
В своей работе мне постоянно приходится делать оценки для проектов, задач и работ, которые еще только предстоит выполнить, и поэтому точно измерить их невозможно. Недавно один из крупных клиентов Аксенчер, обратился в нашу компанию с просьбой помочь в разработке более систематизированной методики подготовки таких оценок. Проект так и не случился, но материалы, которые я собрал, оказались чрезвычайно полезными для меня самого. Я смог понять, почему, несмотря на планирование проектов по аккуратно выверенным оценкам, люди почти всегда превышают бюджет. Понял, что, гарантируя вписаться в бюджет с вероятностью в 95%, подрядчики гарантируют, что с вероятностью 95% им столько времени и денег не нужно. Ниже я описал свои выкладки, которые, возможно, вас тоже заинтересуют.
Читать дальше →
Всего голосов 33: ↑29 и ↓4+25
Комментарии18

Пример Makefile

Время на прочтение7 мин
Количество просмотров74K
Написание makefile иногда становится головной болью. Однако, если разобраться, все становится на свои места, и написать мощнейший makefile длиной в 40 строк для сколь угодно большого проекта получается быстро и элегантно.

Внимание! Предполагаются базовые знания утилиты GNU make.
Читать дальше →
Всего голосов 126: ↑118 и ↓8+110
Комментарии59

Web-сервер на D?

Время на прочтение1 мин
Количество просмотров5.7K
Читая официальный twitter-канал языка D, попал на интересный пост о новом движке на D (vibe.d) для разработки web-приложений, ну или даже web-сервера.
Стало интересно — полез смотреть и разбираться!
Читать дальше →
Всего голосов 28: ↑26 и ↓2+24
Комментарии9

Открытая система управления “умным домом” MajorDoMo

Время на прочтение7 мин
Количество просмотров75K
В этой статье я расскажу об одном проекте, которым занимаюсь уже довольно продолжительное время и который с некоторых пор доступен широкой публике. Речь идёт о системе управления “умным домом” MajorDoMo (Major Domestic Module), являющейся центральным блоком комплекса программно-аппаратных решений, которые я, в силу своих скромных возможностей, внедряю в своём домашнем хозяйстве.

image

Но обо всём по порядку…

Читать дальше →
Всего голосов 120: ↑117 и ↓3+114
Комментарии58

CryptDB: обработка информации в БД без её дешифрования

Время на прочтение2 мин
Количество просмотров4.7K
Исследователи из МТИ представили СУБД CryptDB, которая способна эффективно обслуживать запросы к БД SQL — поиск, сортировка, математические функции и др. — без расшифровки записей базы. Хотя это не первая разработка подобного рода, но благодаря беспрецедентной производительности эксперты считают CryptDB первой, реально пригодной для практического использования. Предполагается, что подобные разработки могут найти применения в системах облачного хранения данных, которые особенно нуждаются в криптографической защите.


Архитектура CryptDB

Подход, реализованный в CryptDB, называется полным гомоморфным шифрованием. Первую полностью гомоморфную модель для СУБД предложил в 2009 году криптограф из IBM Research Крейг Джентри (Craig Gentry), она является гомоморфной для операций умножения и сложения одновременно, что даёт возможность выразить любую математическую функцию. Правда, была одна проблема: скорость операций по сравнению с обычной СУБД возрастала примерно в триллион раз.
Читать дальше →
Всего голосов 38: ↑35 и ↓3+32
Комментарии17

Информация

В рейтинге
Не участвует
Откуда
Антильские о-ва
Дата рождения
Зарегистрирован
Активность