Pull to refresh
1
0
Дмитрий @MaxDM1993

User

Send message

Много бесплатных книг по программированию

Reading time 7 min
Views 344K
Читать дальше →
Total votes 202: ↑192 and ↓10 +182
Comments 42

Как быстро и точно оценить проект без ТЗ

Reading time 6 min
Views 39K
При таком сочетании – быстро, точно, без ТЗ – кажется, что задача не имеет решения. Однако в работе фрилансера такие задачи возникают постоянно, поэтому в борьбе за выживание заказы приходится учиться их решать. Для начала поясню, что означают вынесенные в заголовок слова.

Быстро – значит, раньше, чем заказчик примет решение о выборе исполнителя (другого исполнителя, раз вы еще не готовы ответить ему на самый главный вопрос).
Точно – значит, достаточно близко к реальной стоимости проекта, которую можно было бы озвучить после согласования ТЗ (а еще лучше после выполнения проекта, когда уже известно точное количество потраченного на разработку времени).
Ну и, наконец, что значит Без ТЗ? Понятно, что проектов совсем без ТЗ (в стиле «пойди туда, не знаю куда, принеси то, не знаю что») практически не бывает. Другое дело, в каком виде заказчик предоставляет вам это самое ТЗ.
Читать дальше →
Total votes 41: ↑29 and ↓12 +17
Comments 11

Бесплатный учебник электроники, архитектуры компьютера и низкоуровневого программирования на русском языке

Reading time 2 min
Views 245K

Господа! Я рад сообщить, что наконец-то все желающие могут загрузить бесплатный учебник на более чем 1600 страниц, над переводом которого работало более полусотни человек из ведущих университетов, институтов и компаний России, Украины, США и Великобритании. Это был реально народный проект и пример международной кооперации.

Учебник Дэвида Харриса и Сары Харрис «Цифровая схемотехника и архитектура компьютера», второе издание, 2012, сводит вместе миры программного обеспечения и аппаратуры, являясь одновременно введением и в разработку микросхем, и в низкоуровневое программирование для студентов младших курсов. Этот учебник превосходит более ранний вводный учебник «Архитектура компьютера и проектирование компьютерных систем» от Дэвида Паттерсона и Джона Хеннесси, причем соавтор предыдущего учебника Дэвид Паттерсон сам рекомендовал учебник от Харрисов как более продвинутый. Следуя новому учебнику, студенты строят реализацию подмножества архитектуры MIPS, используя платы с ПЛИС / FPGA, после чего сравнивают эту реализацию с индустриальными микроконтроллерами Microchip PIC32. Таким образом вводится вместе схемотехника, языки описания аппаратуры Verilog и VHDL, архитектура компьютера, микроархитектура (организация процессорного конвейера) и программирование на ассемблере — в общем все, что находится между физикой и высокоуровневым программированием.

Как загрузить? К сожалению, не одним кликом. Сначало надо зарегистрироваться в пользовательском коммьюнити Imagination Technologies, потом зарегистрироваться в образовательных программах на том же сайте, после чего наконец скачать:
Читать дальше →
Total votes 117: ↑114 and ↓3 +111
Comments 66

Бесплатные пары VID PID для открытых проектов

Reading time 2 min
Views 27K
Для однозначного определения устройств, интерфейс USB использует 16-битные идентификаторы: VendorID и ProductID. Если ваш проект использует стандартную пару… ну, думаю вы уже знаете.

Однако, опенсорсу иногда везёт, и получить легитимные идентификаторы можно бесплатно.


Читать дальше →
Total votes 39: ↑38 and ↓1 +37
Comments 11

Программное создание NinePatchDrawable

Reading time 9 min
Views 9.1K
В новом Android Lollipop появился такой интересный компонент как VectorDrawable. Если использовать его с умом, можно значительно снизить объем приложения, сэкономив на графических ресурсах, плюс, использование векторной графики освобождает нас от муторного процесса создания изображений под разные плотности экрана. Первая мысль, которая меня посетила, когда я увидел VectorDrawable, была: “Ух ты! А его можно тянуть как NinePatch?”. Оказалось нельзя. Тут можно было бы немного огорчиться и довольствоваться тем, что хотя бы иконки можно в векторе держать. Однако, я на этом решил не останавливаться. В итоге получилась универсальная утилита, которая из любого Drawable способна сделать NinePatchDrawable.



В изображении, которое вы видите, используется вектор, но он растянут по центру. И это удивительно! Возможность растягивать вектор только в определенных областях предоставляет, по истине, колоссальные возможности. А если учесть, что есть проекты позволяющий использовать вектор на более ранних версиях андроида, векторные изображения начинают показывать себя во всем своем великолепии.
Читать дальше →
Total votes 23: ↑23 and ↓0 +23
Comments 2

Химия геймдева или как манипулировать игроками

Reading time 11 min
Views 41K
После выхода в свет моей первой мобильной игрушки, я активно начал заниматься самообразованием в области гейм дизайна для совершенствования моего продукта. Наткнулся в буржнете на любопытную статью, которая заставила меня по-иному взглянуть на игры и дала более полное понимание процесса разработки. Редко удается встретить что-то действительно стоящее, а этот текст мне так понравился, что я решил сделать русский перевод. Помимо прочего, я выкинул всю лирику, попытку автора шутить и немного воды.



1. За пределами алхимии


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

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

А что если бы мы декодировали эти системы и превратили бы их в практическую методику создания игр?
Читать дальше →
Total votes 54: ↑40 and ↓14 +26
Comments 10

Фрактальное пламя — алгоритм построения

Reading time 4 min
Views 25K


Фрактальное пламя (или фрактальные искры, англ. fractal flame) – алгоритм, предложенный Скоттом Дрейвсом (Scott Draves) и использующий для построения изображений системы итерируемых функций (СИФ). Благодаря разным значениям seed для генератора псевдослучайных чисел можно получить множество разнообразных «картин». Хотя фрактальность в них просматривается далеко не всегда, результаты получаются очень интересными.

Под катом – краткое описание основных моментов реализации алгоритма.
Читать дальше →
Total votes 31: ↑29 and ↓2 +27
Comments 16

Экспорт Избранного на Хабре в PDF. Версия 2.0

Reading time 3 min
Views 27K
Доброго времени суток, хабражители!



Думаю, многих из вас когда-либо посещала мысль «вот бы сохранить статьи с Хабра». Такая же мысль посетила и меня чуть больше года назад.

Представляю вам новую версию программы закачки статей с Хабра, Гиктаймс и Мегамозг в формате PDF.

Новый проект называется HabraParse.

Проект состоит из библиотечки, которая парсит сайты, и скрипта, использующего лишь часть возможностей этой библиотеки. Скрипт написан на python3, для его работы потребуются модули docopt, requests и weasyprint (все их легко можно установить командой pip install name).

На текущий момент в скрипте имеются следующие возможности:
  • скачать статью по её ID;
  • скачать список URL избранного для заданного пользователя;
  • скачать статьи из избранного в папку в формате PDF или HTML (пока реализация HTML не на высоте, поэтому по умолчанию используется формат PDF, но он работает значительно дольше).


Использование опций --gt/--mm позволяет сохранять статьи с GeekTimes.ru и Megamozg.ru.

Краткое описание параметров скрипта
Usage:
  ./habraparse.py save_favs_list [--gt|--mm] <username> <out_file>
  ./habraparse.py save_favs [--gt|--mm] [-cn --save-html --limit=N] <username> <out_dir>
  ./habraparse.py save_post [--gt|--mm] [-c --save-html] <topic_id> <out_file>

По умолчанию все команды работают с проектом HabraHabr.ru.
При задании опций --gt/--mm скрипт будет работать с GeekTimes.ru/Megamozg.ru.

Команды:
  save_favs_list - сохранение в файл <out_file> списка URL избранного для пользователя <username>
  save_favs - сохранение в папку <out_dir> статей из избранного для пользователя <username>
  save_post - сохранение в файл <out_file> статьи с заданным ID



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

Читать дальше →
Total votes 48: ↑46 and ↓2 +44
Comments 53

Подробное руководство по установке Android-x86

Reading time 3 min
Views 248K
Эмулятор который идет в комплекте с Android SDK, не очень шустрый.
Основная идея использовать VirtualBox + Android X86, для преодоления проблем с производительностью.

Что нам необходимо:
Среда разработки Eclipse + Android SDK тут,
а также VirtualBox.

Под катом много картинок, и процесс установки, а также некоторые полезные советы.
Читать дальше →
Total votes 117: ↑109 and ↓8 +101
Comments 32

B1 Basis Band: часы-биорегистратор. Геймификация здорового образа жизни (первый обзор на русском)

Reading time 8 min
Views 107K
Мечта, пожалуй, любого айтишника — автоматизировать жизнь и поставить мониторинг на все на свете. До всего на свете еще далеко, а часы, позволяющие записывать целый ряд биопоказателей и отсылать их в «облако» для обработки и анализа, уже есть, и мне довелось их недавно приобрести.

.

Гаджет B1 Basis Band, один из номинантов выставки CES-2012, — это первый портативный биорегистратор, следящий за здоровьем с помощью датчиков, измеряющих сердечный ритм человека, влажность кожи, движение, температуру. Они следят за временем, потраченным на сон, считают количество сожжённых калорий. Данные через USB и bluetooth передаются на компьютер или мобильный телефон и заносятся в онлайн-профиль. В дальнейшем будем этот биорегистратор называть часами для простоты. Тем более, он еще и правда часы.

B1 Basis band продолжает линейку Fitbit, Jawbone, Nike Fuelband, дополняя привычное совершенно новыми функциями, которых еще ни в одних портативных устройствах не было. Стоит ли покупка потраченных денег?

Читать дальше →
Total votes 56: ↑49 and ↓7 +42
Comments 102

Искусственный интеллект и Почему мой компьютер меня не понимает?

Reading time 5 min
Views 153K


Гектор Левекwiki утверждает, что его компьютер тупой. И ваш тоже. Siri и голосовой поиск Google умеют понимать заготовленные предложения. Например «Какие фильмы будут показывать неподалёку в 7 часов?» Но что насчёт вопроса «Может ли аллигатор пробежать стометровку с барьерами?» Такой вопрос никто раньше не задавал. Но любой взрослый может найти ответ на него (Нет. Аллигаторы не могут участвовать в беге с барьерами). Но если вы попытаетесь ввести этот вопрос в Google, то получите тонны информации о спортивной команде по лёгкой атлетике Florida Gators. Другие поисковые системы, такие как Wolfram Alpha, тоже не способны найти ответ на поставленный вопрос. Watson, компьютерная система выигравшая викторину «Jeopardy!», вряд ли покажет себя лучше.
Читать дальше →
Total votes 94: ↑87 and ↓7 +80
Comments 146

Почему стоит брать кредиты

Reading time 3 min
Views 202K
Привет, Хабр!

Вчерашняя моя статья (Наглядно о том, почему я не беру кредиты) вызвала очень сильную реакцию, возможно даже кого-то задела за живое, тогда извиняюсь. Главным образом мне указывали на ошибку, что не учитывается стоимость аренды квартиры, пока Вася копит нужную сумму на вкладе. Что же, дельное замечание, спешу исправить свои ошибки (ведь не ошибается тот, кто ничего не делает, не так ли?).
В конце бонус — онлайн калькулятор с графиками, (преферансом… ну вы поняли).
Читать дальше →
Total votes 105: ↑77 and ↓28 +49
Comments 183

Samsung представила 3D-память, Crossbar заявила о прорыве в RRAM

Reading time 3 min
Views 62K
В понедельник представители компании «Самсунг электроникс» заявили о начале производства трёхмерных вертикальных микросхем NAND. В чипах флэш-памяти нового типа благодаря структуре из слоёв кремния достигаются лучшие характеристики в сравнении с двумерными чипами; согласно заявлению корейской компании надёжность увеличится в 2—10 раз, а производительность процесса записи — в два раза. Таким образом, «Самсунг» стала первой компанией в мире, запустившей массовое прозводство 3Д-чипов NAND-памяти.

Новая технология будет использоваться в широком круге задач, в том числе и для создания твёрдотельных накопителей объемом от 128 гигабайт до 1 терабайта. Продольная плотность записи новых микросхем составляет 128 бит, и они построены на основе технологии объемной памяти с ловушкой заряда (3D Charge Trap Flash). Обычная Charge Trap Flash впервые была представлена «Самсунгом» ещё в 2006 году.

Количество вертикальных слоёв микросхем достигает 24, но их толщина измеряется нанометрами, поэтому даже в микрометровом масштабе утолщение не будет заметно. Эксперты отмечают, что пределы количества слоёв пока неизвестны: сегодня это 24, в следующем поколении будет 32, а затем и это число увеличится.
Читать дальше →
Total votes 56: ↑55 and ↓1 +54
Comments 97

Структура белка: введение для айтишников

Reading time 17 min
Views 155K
Приятно видеть, что хабравчане регулярно интересуется другими предметными областями – например, биологией (более конкретно – структурой и функцией биологических макромолекул). Однако некоторые посты (например, этот), вызывают у специалиста просто физическую боль из-за обилия совершенно диких фактологических ошибок. В этом посте мне хочется рассказать о структуре и функции белка. О том, что мы знаем и о том, чего не знаем, а так же об имеющихся в этой области вычислительных задачах, требующих решения и интересных IT-специалистам. Постараюсь рассказывать сжато и тезисно, чтобы информации было больше, а воды – меньше. Всех, интересующихся структурой белков, прошу под кат, там очень много букв.
Читать дальше →
Total votes 146: ↑145 and ↓1 +144
Comments 72

Google Plus, Facebook, Twitter — читаем в RSS агрегаторе

Reading time 2 min
Views 49K
Если вы боитесь социальных сетей, но хотели бы знать, о чем там пишут известные люди – используйте для этого технологию RSS. Как достать ссылки для подписки в RSS?

Facebook
Самый интересный вариант — FB RSS Facebook application

Фейсбук в этом плане весьма открыт, кроме RSS фидов формата 2.0 разберется и с Atom. Все что вам нужно, это знать ID профиля или страницы.
Пример, сообщетсво — English is Fun

В адресной строчке заменяем www на graph — вместо http://www.facebook.com/EnglishIF?fref=pb пишем http://graph.facebook.com/EnglishIF?fref=pb
В сгенерированном коде находим строку с «id»: " 384707561542391 ".
(ID можно также найти с помощью findfacebookid.com)

Используем шаблон www.facebook.com/feeds/page.php?format=rss20&id=, например www.facebook.com/feeds/page.php?
format=rss20&id=384707561542391 и подписываемся

Twitter
Тут все еще проще.
Скажем, собираемся читать @BreakingNews
Используем шаблон api.twitter.com/1/statuses/user_timeline.rss?screen_name=, пример api.twitter.com/1/statuses/user_timeline.rss?screen_name=BreakingNews. Готово, можем подписываться.

Если хотим читать фиды по определенному слову (скажем слово Android), добавляем к адресу search.twitter.com/search.atom?q=Android.
Если хотим читать фиды по хештегу, добавляем к адресу хештег #Android — search.twitter.com/search.atom?q=%23Android. (Символ (#) меняем на %23).

Google+
Проще всего использовать gplus-to-rss.appspot.com.
Нужно знать ID Страницы или профиля. На Google+ найдете его прямо в адресной строке, например страница +ru.android – в строке plus.google.com/u/0/communities/110130446304043859186 — 110130446304043859186 и есть ID
Добавляем в URL gplus-to-rss.appspot.com/rss, в нашем случае gplus-to-rss.appspot.com/rss/110130446304043859186.

Переведено с чешского источника

Update

ВКонтакте
Для генерации RSS-фида вам нужно «скормить» ссылку на профиль или открытую группу сервису ВКонтакте RSS — vkontakte-feed.appspot.com
Total votes 54: ↑45 and ↓9 +36
Comments 30

GTD на кухне: чем накормить голодного программиста

Reading time 9 min
Views 56K
imageИтак, как и обещал в первой части, продолжаем упрощать бытовую жизнь хабражителя. Сегодня 8 марта (кстати, девушки, поздравляю!) и части мужчин хочется порадовать своих женщин и освободить их от «рабского труда» на кухне, а другой части – приготовить для себя не традиционные пельмени\вареники\сосиски, а что-то посущественней.
Вот несколько проверенных рецептов, которые пригодятся и первым, и вторым.

Осторожно, много картинок. Голодным не входить!
Читать дальше →
Total votes 220: ↑168 and ↓52 +116
Comments 214

Создан прототип неточного процессора

Reading time 2 min
Views 7.2K
Вот уже 50 лет производители процессоров стараются повысить надёжность и стабильность, тщательно тестируют и внедряют несколько уровней коррекции ошибок — естественно, это приводит к усложнению и удорожанию конструкции. Другими словами, на достижение идеальной точности тратится масса энергии и производительности. Но ведь существуют такие сферы использования, где стопроцентная надёжность не нужна, а вполне достаточно 92-99%. Например, обработка аналоговых сигналов, фото и видео, распознавание образов.


увеличить изображение

На иллюстрации приведены кадры из ПО для видеообработки. Слева — обычный кадр, посередине — кадр, обработанный «неточным» процессором с относительной ошибкой 0,54%, справа — ещё более урезанной версией процессора с относительной ошибкой 7,58%.
Читать дальше →
Total votes 71: ↑55 and ↓16 +39
Comments 101

Запись Skype-беседы

Reading time 4 min
Views 181K
Уже не один раз меня просили рассказать, как можно записывать парные (или даже еще с большим количеством людей) подкасты, которые проходят в Skype. Это на самом деле хороший вопрос, потому как вариантов есть несколько, у всех свои плюсы и минусы… К тому же подкасты-беседы чаще всего интереснее и живее, а скайп или другая voip-телефония зачастую оказывается единственным вариантом связи.

Вариантов для записи skype-бесед два. Будем рассматривать их по отдельности.
Читать дальше →
Total votes 66: ↑61 and ↓5 +56
Comments 21

About it

Reading time 8 min
Views 32K
Сегодня утром я проснулся с каким-то непонятным чувством, которое заставило меня просто подумать о простых вещах нашего технологичного мира. Я не придумал, не открыл ничего нового, просто я по-другому посмотрел на этот мир. Сделал переоценку очевидных вещей, и мне стало и страшно, и скорбно. Я понял, что у меня отобрали компьютер – я более не понимаю, что он делает. Что у меня отобрали право – оно иллюзорно. Я понял, что в мире никто не понимает, куда мы движемся. Я осознался.
Читать дальше →
Total votes 149: ↑97 and ↓52 +45
Comments 111

Windows на RAM-диске

Reading time 10 min
Views 367K

В наш век мы все любим скорость. Мы любим быстрый транспорт, быстрые службы доставки, скоростной интернет. И, разумеется, быстрые компьютеры. У нас есть шестое чувство, которым мы детектируем милли/микросекундные задержки. Частенько появляется желание что-нибудь да разогнать.
Вы уже поняли из названия, как именно будем разгонять
Total votes 163: ↑155 and ↓8 +147
Comments 73

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity