Как стать автором
Обновить
26
0.3

Управление проектами, разработка ПО и железа

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

Летучий корабль или знакомство с SSD

Время на прочтение5 мин
Количество просмотров114K
Всем доброго времени суток…
Уже более 2х лет читаю Хабрахабр, практически всю полезную информацию в области IT (да и не только IT) черпаю отсюда.
Но все никак не доходили руки попытаться получить инвайт, да и темы для изложения не мог придумать.
Все изменилось когда я купил новый ноутбук. Пару дней я посидел на обычном HDD, а потом поставил в него SSD.
Я был просто ошарашен. На моем, не самом быстром SSD, разница была просто огромная (даже с учетом того, что в ноуте стоял HDD с полноцееными 7200 об/мин).
И назрела мысль что-нибудь написать по этому поводу.
Но запись моя не будет холиваром о том, какой SSD лучше.
Здесь я хочу описать свой процесс покупки, установки и собрать в одном месте опыт людей по оптимизцаии Windows 7 для SSD.
Хоть многие и пишут, что Windows 7 сама вносит изменения в параметры системы, если ее устанавливают на SSD, но изменений этих, если честно, маловато.
Читать дальше →
Всего голосов 44: ↑20 и ↓24-4
Комментарии44

Книги в эпоху Web 2.0

Время на прочтение3 мин
Количество просмотров673
Я теперь мало езжу на метро. И испытываю от этого ностальгическую грусть, так как привык в метро читать. В машине же читать неудобно и даже опасно, а аудиокниги и подкасты не позволяют в полной мере погрузитья в авторскую мысль — все-таки необходимо вести автомобиль.
Зато радуюсь я как издатель — в метро читают другие! Причем, как недавно выяснилось, читают все больше в электронном виде, ухитряясь носить с собой одновременно десятки и даже сотни книг. И в каждом вагоне и таких чтецов минимум 2-3 едет. С букридерами, планшетниками и смартфонами.

Вот такой высокотехнологический тренд в области чтения. На одной из конференций, посвященных электронному книгоизданию, я слышал следующее конспирологическое объяснение ситуации. Все это происки: кто-то вознамерился погубить бумажные книги, газеты, журналы и перекроить весь печатный медиарынок. Во-первых, производители портативной электроники, конкурируя за нас с вами, выпускают все более навороченные и дешевые гаджеты.
Во-вторых, операторы мобильной связи понастроили сетей передачи данных и теперь думают изо всех сил, как сделать, чтобы мы с этих гаджетов качали их траффик. Сложенные вместе маркетинговые и pr- усилия этих компаний — это грозная сила. Это, между прочим, сотни миллионов долларов бюджета только на Россию!
Они все вместе активно провоцируют появление новых форм контента и скоро книг, газет и журналов, таких, к которым мы привыкли уже, не будет. Какой кошмар…

Смешно, но все-таки, какие всеобщая электронизация дает возможности и как могут измениться привычные нам вещи? Прежде всего книги.
Допустим, в руках у нас совершенный с точки зрения производительности планшетный компьютер, и на нем всегда включен «толстый» Интернет.
Читать дальше →
Всего голосов 4: ↑4 и ↓0+4
Комментарии7

Через час ты проводишь вебинар: Google Hangouts on Air

Время на прочтение5 мин
Количество просмотров53K
На днях возникла необходимость провести вебинар для студентов на безе компании, в которой тружусь.

Требования были следующие:

  • бесплатность для любой стороны;
  • работа из браузера;
  • возможность шарить экран;
  • запись трансляции;
  • простота в освоении (важно).

Бегло просмотрев несколько существующих сервисов, я понял, что все не нравится: почти все они не бесплатны; многие не работают прямо из браузера; нет бесплатной возможности записать вебинар.
Читать дальше →
Всего голосов 27: ↑25 и ↓2+23
Комментарии23

3 проекта недорогих мини-ПК с Indiegogo

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


Можно с уверенностью сказать, что Raspberry Pi стал одним из самых успешных краудфандинговых проектов в электронике. Само собой, популярность этого устройства вызвала появление некоторого количества схожих проектов, из которых ни один не затмил «малинку».

Тем не менее, интересные проекты подобного рода появляются до сих пор, и некоторые из них заслуживают того, чтобы быть описанными на Хабре. Предлагаю оценить 3 проекта, каждый из которых сейчас собирает средства на Indiegogo.

Читать дальше →
Всего голосов 57: ↑53 и ↓4+49
Комментарии38

Arduino совместимая плата OLIMEXINO-85S размером с microSD карту

Время на прочтение1 мин
Количество просмотров44K
Несколько малых по размеру Arduino плат было разработано за этот год, включая Microduino (25.40 x 27.94мм) и OLIMEXINO-NANO (30 x 30 мм). Но компания Olimex, сделала еще один шаг в сторону уменьшения форм фактора, с платой OLIMEXINO-85S. Размер платы составляют всего 16.9 x 12.7 мм, что ненамного больше, чем карта microSD(15х11 мм). На текущий момент, OLIMEXINO-85S может претендовать на звание самой маленькой платой из семейства Arduino.

Читать дальше
Всего голосов 32: ↑23 и ↓9+14
Комментарии60

Цена сложности

Время на прочтение3 мин
Количество просмотров29K
Мне всегда сложно было объяснить даже самому себе термин «технический долг». Никогда не было понятно, кто, кому, за что и сколько должен. И, если это долг, то как его выплачивать и можно ли выплатить полностью? А можно ли сделать так, чтобы должны были мне?
Читать дальше →
Всего голосов 68: ↑62 и ↓6+56
Комментарии35

Switch для двух параметров в С++

Время на прочтение4 мин
Количество просмотров18K
Читая посты на Хабре, наткнулся на такой вопрос. В комментариях были предложены решения, но ни одно не подходило автору в виду накладных расходов на вызовы функций. И тогда я задумался, а действительно почему бы не использовать обычный switch, рассчитывая из двух параметров один хеш, который и использовать в switch. Но глянув на пример автора вопроса внимательнее я понял, что такой вариант просто так не пройдет, так как надо отлавливать default вложенных switch'ей.
Читать дальше →
Всего голосов 20: ↑17 и ↓3+14
Комментарии14

Разработка web-приложений на C++

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

Прочитав недавний топик про использование C++ и fastcgi, я наконец-то решился опубликовать свои наработки на тему Web и C++.

Существующие решения, с моей точки зрения, реализуют простые вещи сложным образом. Моей целью было устранить это досадное недоразумение, написав библиотеку, которая позволит писать эффективные кросс-платформенные веб-приложения на С++ так же легко и быстро, как и на PHP, Python, Java, и т.д.
Читать дальше →
Всего голосов 130: ↑122 и ↓8+114
Комментарии174

Проблемы привлечения аудитории на ранней стадии

Время на прочтение5 мин
Количество просмотров16K
Где рассказать о своем амбициозном проекте, если на руках только идея? Можно ли на начальной стадии найти единомышленников и просто заинтересованных людей. В статье речь пойдет о проблемах с которыми можно столкнуться и способы эти проблемы разрешить.



Читать дальше →
Всего голосов 25: ↑14 и ↓11+3
Комментарии8

Никто не читает правил

Время на прочтение3 мин
Количество просмотров22K
Намедни, по просьбам народов интернета, я завел маленький сервис для простой раздачи приглашений (a.k.a invites) в разные правильные сервисы. Ссылки не даю, не для продвижения пост, но был один момент удививший меня чрезвычайно. Возможно и даже наверняка это все прекрасно известно всем, кто на общении с пользователями сьел десяток собак, но мне, как человеку пишущему в основном программы для нелюдей, этот опыт показался интересным и новым.
Читать дальше →
Всего голосов 93: ↑78 и ↓15+63
Комментарии53

Снова о защите персональных данных или готовимся к проверке Роскомнадзора

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

Вступление



Всем доброго времени суток! В этой статье я хотел бы еще раз поднять тему защиты персональных данных (далее будем обзывать их — ПДн), а также тему защиты от регуляторов. Пик дебатов на тему защиты ПДн давно прошел. Приходились эти пики как правило на приближение очередного «самого последнего срока» ввода 152-ФЗ в полную силу. В итоге «самый последний срок» наступил, активные дебаты стихли, но закон «О персональных данных» живет, регуляторы устраивают проверки и наказывают нарушителей. Поэтому тема будет еще долго актуальна.

Сразу оговорюсь, что в этой статье в основном будет информация организационного характера, нежели техническая. «А зачем такая информация нужна нам?» — спросит читатель хабра. Объясняю: так уж получилось, что начальники как крупных, так и не очень организаций не любят выстраивать длинные логические цепочки и вникать в суть вопроса, который лежит далеко от их компетенции. Поэтому при возникновении необходимости обеспечения защиты персональных данных строится вполне логичная по их мнению взаимосвязь: «Защита персональных данных» -> «Защита информации» -> «Информационные технологии» -> «Взвалить вопрос защиты ПДн на IT-шников». И пофигу, что в этом вопросе львиную долю можно поручить юристам и кадровикам, но как говорится в бородатом анекдоте: «кому не нравится грузить люминь, пойдет грузить чугуний».

image
Типичный пример разглашения ПДн специальной категории (сведения об интимной жизни)

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

Point-Of-Sale: автоматизация промо-акций

Время на прочтение8 мин
Количество просмотров6K
В этой статье хочу поделиться классификацией схем промо-акций, автоматически обрабатываемых POS-системами, выстроенной на опыте разработки таковых для множества клиентов в течении многих же лет. Надеюсь, она будет полезна как разработчикам, реализующим сами POS-модули и интерфейсы с ними, так и пользователям таких систем.
Читать дальше →
Всего голосов 3: ↑3 и ↓0+3
Комментарии1

Светодиодная лента в качестве освещения комнаты

Время на прочтение15 мин
Количество просмотров1.3M
Изначально для основного освещения одной из комнат, где шёл капитальный ремонт, планировалась обычная люстра. Но недавно мне на глаза попалась суперяркая светодиодная лента Ultra 5000 со светодиодами smd 5630 торговой марки Arlight. Решение было принято быстро, окончательно и бесповоротно — хочу такую ленту в качестве основного света в комнате.



О реализации светодиодного периметра освещения далее
Всего голосов 420: ↑415 и ↓5+410
Комментарии329

Использование MS Project для управления проектами по разработке ПО

Время на прочтение10 мин
Количество просмотров471K
Я хочу поделиться своим опытом использования MS Project для управления проектами по разработке программного обеспечения. Я уже лет 10 занимаюсь управлением проектами,
и в результате у меня родилась некоторая методология использования MS Project, которая позволяет получить от него немалую пользу и при этом меньше зависеть от его недостатков.
Читать дальше →
Всего голосов 23: ↑18 и ↓5+13
Комментарии38

Онлайн-инструменты для кодеров

Время на прочтение2 мин
Количество просмотров285K
Онлайн-сервисы становятся все популярнее, постепенно усложняя функционал и улучшая интерфейсы. В этой подборке представлены онлайн-инструменты для кодеров.

Cloud9


«Это Google Docs, только для кода» — так говорят о проекте. Облачный сервис вырос из Mozilla Bespin. Основные фишки: SSH, drag-and-drop и возможность разработки оффлайн.

Читать дальше →
Всего голосов 204: ↑191 и ↓13+178
Комментарии55

Space Engine — Вселенная на ладони

Время на прочтение8 мин
Количество просмотров99K
My God, it's full of stars!
Arthur C. Clarke

Кто из нас в детстве не мечтал «бороздить просторы вселенной», как капитан Пикард, прогуливаться по неизведанным планетам далёких миров, встречать рассветы двойных или тройных звёзд, погружаться в атмосферы газовых гигантов, ронять корабли в чёрные дыры? И я тоже не исключение. Конечно, частично эту мечту воплощали книги, фильмы и «Элит»-ные игры. Но вся романтика в них разрушалась банальными купи-продай и «пиу-пиу» в «жидком» космосе на скоростях самолётов времён первой мировой войны. Да и тем немногим виртуальным миркам не хватало свободы, детальности и масштабов реальной вселенной.

В начале тысячелетия я познакомился с MojoWorld и был шокирован его возможностями. Наконец-то, можно было бродить по другим планетам и фотографировать местные достопримечательности. Он стал первой ласточкой, дававшей надежду на то, что полномасштабные космические миры технически возможны. Но, к сожалению, производительности железа десятилетней давности было не достаточно для передачи всех красот в реальном времени. Да и планеты оставались всего лишь мёртвыми пейзажами.

Но вот, чуть больше года назад, я совершенно случайно наткнулся на вселенную Space Engine, и она просто взорвала мне мозг и размазала его по полу своим масштабом и невероятной детализацией.
Читать дальше →
Всего голосов 195: ↑190 и ↓5+185
Комментарии88

Система расширений Qt Creator

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

Предисловие


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

Введение


Это заметка, в которой я хотел бы немного описать архитектуру и систему расширений среды разработки Qt Creator. Изначально, я предполагал лишь перевести документ Writing-Qt-Cretor-plugins.pdf, но так уж вышло, что развитие Qt Creator не стоит на месте и во первых, данный документ уже не столь актуален (сам устарел, API поменялось, куски кода не полные и часто не работают), а во вторых со времени его написания появлись дополнительные возможности расширения Qt Creator, которые хотелось бы описать.

Тем не менее, не будь этого документа, не было бы и данной заметки: из него я взял очень много, вплоть до структуры поста, при этом постаравшись где-то что-то выкидывая/заменяя/добавляя сделать пост актуальным для последней на текущий момент времени версии Qt Creator 2.4.0.

Кому может быть полезен данный документ? В первую очередь это конечно же Qt-программисты, которые выбрали данную IDE как основную среду разработки.

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

Итак, что же нас ожидает под катом (жирным отмечены готовые разделы):

  1. Сборка Qt Creator
  2. Первое расширение
  3. Добавление новых меню и пунктов меню
  4. Архитектура Qt Creator
  5. Добавление нового редактора (Editor)
  6. Добавление боковой навигационной панели
  7. Добавление страницы в диалог настроек
  8. Добавление фильтра в диалог поиска
  9. Добавление нового типа проекта

Напомню, что Qt Creator является кросс-платформенной свободной IDE для работы с фреймворком Qt, разработанной Trolltech (Nokia). Что не мешает сделать из него простой текстовый редактор с подсветкой синтаксиса, простым отключением всех расширений. Внимание, сотни картинок!
Читать дальше →
Всего голосов 42: ↑42 и ↓0+42
Комментарии25

Основы программирования для детей и гуманитариев — никаких компьютеров на уроке!

Время на прочтение2 мин
Количество просмотров9.9K
Уби Де Фео ведёт курсы по программированию Arduino для начинающих в голландской творческой мастерской «Hello, savants!». Основная аудитория — дизайнеры, художники и другие далёкие от компьютеров люди, которые хотят научиться использовать технологии для создания интерактивных презентаций, прототипов, арт-объектов — то что называют «creative coding». Его ученики не имеют проблем с образным мышлением и креативностю, зато абстрактные концепции математики и программирования часто становятся непреодолимым препятствием. Поэтому Де Фео решил для начала вообще отказаться от использования компьютеров. На вводных уроках курса «From 0 to C» используются только блокноты, ручки, шарики для пинг-понга, картонные коробки, конфеты M&M's.


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

Вычисление CRC32 строк в compile-time

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

Локализация здесь осуществляется довольно нехитро. Все строки, требующие перевода, оборачиваются в макрос _TR():
wprintf(L"%s\n", _TR("Some translating string"));

Макрос возвращает нужную версию текста в зависимости от текущего используемого языка. Определён он следующим образом:
#define _TR(x) g_Translator.Translate(x)

Здесь происходит обращение к глобальному объекту g_Translator, который в функции Translate() считает в рантайме crc32 от указанной строки, ищет в своей xml-базе перевод с совпадающей контрольной суммой и возвращает его.

Не буду судить насколько такое решение оправдано, но оно проверено временем и показало себя достаточно надёжным. И всё бы ничего, но такое решение не лишено недостатков: по сути, функция делает лишнюю работу — контрольные суммы можно было бы подсчитать один раз на этапе компиляции, и использовать в дальнейшем уже готовые числовые значения. Это также избавило бы от необходимости хранить в исполняемом образе дублирующиеся строки, ведь они уже есть во внешнем xml-файле с переводами.

Немного погуглив по запросу «compile-time crc32» я быстро понял, что задача это не самая тривиальная, а готовых решений мне найти так и не удалось.
Читать дальше →
Всего голосов 60: ↑53 и ↓7+46
Комментарии35

Функциональное программирование для всех

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

Доброго времени суток. Это статья — перевод заинтересовавшего меня поста в блоге аспиранта Университета штата Нью-Йорк в Стоуни-Брук. Статья в доступной форме описывает основные концепции функционального программирования, их преимущества и недостатки. Думаю она будет полезна широкому кругу читателей, которые сомневаются, нужно ли им углубляться в мир функционального программирования или нет. Пожелания, предложения и замечания по переводу и терминологии принимаются по личной почте.

Мнение переводчика может иногда не совпадать с мнением автора, но переводить статью было крайне занимательно.

UPD: альтернативный вариант перевода вы можете найти на rsdn (спасибо flamingo за ссылку).
Читать дальше →
Всего голосов 188: ↑181 и ↓7+174
Комментарии151

Информация

В рейтинге
2 389-й
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность