Технология Windows To Go (WTG) – одна из новых возможностей Windows 8 – позволяет создать должным образом сконфигурированный образ ОС с установленным необходимым ПО, который будет загружаться непосредственно с USB-носителя вне зависимости от того, какая ОС установлена на компьютере, к которому подключается данный USB-носитель. В рамках поста кратко обсудим возможные сценарии применения WTG, настройку и некоторые особенности использования.
D.K. @codecity
User
Редактирование статических HTML страниц в браузере
3 min
82K
В процессе создания очередного статического сайта-заглушки появилась потребность оптимизировать процесс. Что из этого получилось?
+58
Студента отчислили за использование сканера веб-уязвимостей
2 min
111K
20-летний студент Ahmed Al-Khabaz (Ахмед Аль-Хабаз) отчислен с факультета компьютерных наук монреальского колледжа. Причиной стало то, что он дважды запустил сканер веб-уязвимостей на сайте учебного заведения — и нашёл-таки опасную уязвимость в учебном портале Omnivox, который используют почти все колледжи и университеты Квебека. Тем самым он якобы «поставил под угрозу» приватные данные 250 тысяч студентов.
+167
Психологический тест для оценки IT-продукта, или в чем Habrahabr уступает Facebook
6 min
37KПробовали ли вы оценивать свой IT-продукт с психологической точки зрения? Такая оценка может основываться на общей психологии и включать эргономическое тестирование, может основываться на когнитивной психологии и задействовать теорию познания и принятия решений, может основываться на теории деятельности и анализировать пользовательские сценарии, может основываться на психологии научения и бихевиоризме и анализировать продукт с точки зрения геймификации…
Но отдельный очень важный раздел психологии – это психология личности, включающая теории личностных потребностей и психологических защит. Из-за сложности и большого количества иногда противоречащих друг другу концепций, эту область редко используют в качестве источника идей и ограничений при разработке IT-продуктов. Однако психология личности дает очень много возможностей для понимания и предсказания поведения пользователей.
Предлагаю вариант методики для оценки IT-продукта, созданный на основе компиляции различных теорий личностных потребностей.
Тест оценивает, насколько продукт может удовлетворить 10 наиболее распространенных потребностей личности.
Этот тест можно использовать не только для оценки продукта, но и как чек-лист при поиске идей в разработке IT-продуктов.
Описание теста.
Для каждой потребности предложено по 5 вопросов о продукте.
Но отдельный очень важный раздел психологии – это психология личности, включающая теории личностных потребностей и психологических защит. Из-за сложности и большого количества иногда противоречащих друг другу концепций, эту область редко используют в качестве источника идей и ограничений при разработке IT-продуктов. Однако психология личности дает очень много возможностей для понимания и предсказания поведения пользователей.
Предлагаю вариант методики для оценки IT-продукта, созданный на основе компиляции различных теорий личностных потребностей.
Тест оценивает, насколько продукт может удовлетворить 10 наиболее распространенных потребностей личности.
Этот тест можно использовать не только для оценки продукта, но и как чек-лист при поиске идей в разработке IT-продуктов.
Описание теста.
Для каждой потребности предложено по 5 вопросов о продукте.
+90
Microsoft HDInsight. «Облачное» (и не только) будущее Hadoop
7 min
9.6KОбъем данных, генерируемый и собираемый современными научно-исследовательским центрами, финансовыми институтами, социальными сетями, уже привычно измеряется петабайтами. Так в дата-центрах Facebook хранится уже более 15 млрд. изображений, нью-йоркская фондовая биржа NYSE создает и реплицирует ежедневно около 1 Тб данных, Большой адронный коллайдер получает около 1 Пб данных в секунду.
Очевидно, что задачи обработки больших объемов данных все чаще становятся не только перед крупными компаниями, но перед стартапами и небольшими исследовательскими группами.
Платформа Hadoop, которая, в принципе, успешно решает проблему Big Data для полу- и неструктурированных данных, в своем «чистом» виде предъявляет значительные требования как к квалификации администраторов Hadoop-кластера, так и к первоначальным финансовым затратам на аппаратное обеспечение такого кластера.
В такой ситуации симбиоз облачных технологий и платформы Hadoop все чаще представляется как крайне перспективный способ решения проблемы «Больших данных», имеющий крайне невысокий уровень входа (квалификация + затраты на запуск).
Очевидно, что задачи обработки больших объемов данных все чаще становятся не только перед крупными компаниями, но перед стартапами и небольшими исследовательскими группами.
Платформа Hadoop, которая, в принципе, успешно решает проблему Big Data для полу- и неструктурированных данных, в своем «чистом» виде предъявляет значительные требования как к квалификации администраторов Hadoop-кластера, так и к первоначальным финансовым затратам на аппаратное обеспечение такого кластера.
В такой ситуации симбиоз облачных технологий и платформы Hadoop все чаще представляется как крайне перспективный способ решения проблемы «Больших данных», имеющий крайне невысокий уровень входа (квалификация + затраты на запуск).
+18
Ищем деньги. Каталог инвесторов для стартапа
4 min
230KUPD: получил инвестиции под свой проект в сфере обучения облачным технологиям

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

Здравствуйте уважаемые Хабравчане, особенно те, у кого есть идея своего стартапа! А вот с деньгами и осведомленностью похуже. Хочу Вам в помощь поделиться небольшой таблицей IT-инвесторов, которая была составлена для себя. Дело в том, что я также как и вы, обладаю минимум информации. Такие вопросы как: «к кому идти за деньгами», «как составить бизнес-план», и наконец «кому я вообще нужен со своей идеей» — давно стали навязчивыми.
Именно сейчас, после Новогодних праздников, самое время начать искать тех самых менторов, инвесторов, бизнес-ангелов, да и в целом зачитываться информацией на эту тему. Да, и у меня есть свой стартап, который перестал быстро развиваться и я активно ищу инвестора на дальнейшее развитие (О чем уже писал неделю назад).
Под катом таблица, со списком полезных ссылок, в помощь начинающим IT-компаниям.
+64
jQuery изнутри — введение
6 min
103KTutorial
По работе мне несколько раз приходилось участвовать в собеседовании кандидатов на должность клиент-сайдера у нас в компании, смотреть на их познания в Javascript. Удивительно что никто из них не знал толком как же работает jQuery изнутри, даже те, кто отметил свои знания jQuery уровнем «отлично», увы.
У jQuery очень низкий порог вхождения, о нем часто пишут и используют всюду, где только можно (и даже там, где, в общем-то, не нужно), поэтому некоторые даже не смотрят на чистый Javascript. Зачем, мол, его знать, когда есть jQuery, а по нему — тонны примеров и готовых плагинов? Даже на Хабре видел статью про рисование на Canvas, где автор подключил jQuery и использовал его только один раз — для того, чтобы получить доступ к Canvas по его идентификатору. И не считал это чем-то ненормальным.
Извините, отвлекся. Суть поста и следующих частей серии в том, чтобы рассказать о том, как же работает библиотека изнутри и что же в ней происходит по мере выполнения каких-то методов.
У jQuery очень низкий порог вхождения, о нем часто пишут и используют всюду, где только можно (и даже там, где, в общем-то, не нужно), поэтому некоторые даже не смотрят на чистый Javascript. Зачем, мол, его знать, когда есть jQuery, а по нему — тонны примеров и готовых плагинов? Даже на Хабре видел статью про рисование на Canvas, где автор подключил jQuery и использовал его только один раз — для того, чтобы получить доступ к Canvas по его идентификатору. И не считал это чем-то ненормальным.
Извините, отвлекся. Суть поста и следующих частей серии в том, чтобы рассказать о том, как же работает библиотека изнутри и что же в ней происходит по мере выполнения каких-то методов.
+129
12 инструментов, о которых необходимо знать каждому программисту, работающему с Big Data
5 min
35KTranslation

+37
Простая проверка безопасности на ваших серверах
1 min
30KВсем привет!
Предлагаю сделать простую проверку безопасности на ваших серверах.
Суть проверки очень проста. Мы переключаемся под пользователя, из-под которого запущены сервисы, такие как вебсервер или база данных, и смотрим в какие файлы в системе он может читать и писать. Запускать надо из-под всех пользователей, из-под которых работают смотрящие в мир сервисы. Если раньше никогда не делали, могут открыться бездны, но не паникуйте и быстренько все поправьте.
Замечу, что например апачевский юзер не должен иметь прав на изменение и удаление апачевских логов.
С Новым Годом!
Предлагаю сделать простую проверку безопасности на ваших серверах.
Суть проверки очень проста. Мы переключаемся под пользователя, из-под которого запущены сервисы, такие как вебсервер или база данных, и смотрим в какие файлы в системе он может читать и писать. Запускать надо из-под всех пользователей, из-под которых работают смотрящие в мир сервисы. Если раньше никогда не делали, могут открыться бездны, но не паникуйте и быстренько все поправьте.
Замечу, что например апачевский юзер не должен иметь прав на изменение и удаление апачевских логов.
С Новым Годом!
+41
Сколько стоят НЕуспешные интернет-проекты для студии?
4 min
26K
В секторе интеллектуального труда, в частности в области веб-разработки, провальные проекты встречаются довольно часто. Субъективный и человеческий фактор в нашей области настолько высок, что вероятность провалить проект, часто выше вероятности успешного его завершения. Причины и виновники могут быть совершенно разные. От неопытного менеджера, до слишком придирчивого заказчика. В результате, для одной и другой стороны финал общий – огромные убытки. Почему огромные?
+27
Использование async и await в C# — лучшие практики
8 min
227KTutorial
Translation

Ключевые слова async и await, введённые в C# 5.0, значительно упрощают асинхронное программирование. Они также скрывают за собой некоторые сложности, которые, если вы потеряете бдительность, могут добавить проблем в ваш код. Описанные ниже практики пригодятся вам, если вы создаёте асинхронный код для .NET приложений.
+59
[Перевод] Современный веб-разработчик, или 6 вещей, которые вы должны знать, чтобы выжить
4 min
97K
+95
Бесплатная книга «HTML5. Руководство разработчика»
12 min
133K
Выпал снежок и как-то незаметно пришло праздничное, предновогоднее настроение. Чтобы как-то поддержать праздничный дух, мы решили сделать небольшой сюрприз от издательства и порадовать наших читателей бесплатной электронной книгой Марка Пилгрима «HTML5. Руководство разработчика» (DIVE INTO HTML5). Оригинал книги также есть в бесплатном варианте в Интернете.
Прежде чем скачать книгу целиком, предлагаем вам познакомиться с первой главой:
Глава 1. Как мы сюда попали?
Приступим
Недавно я прочел высказывание одного разработчика для платформы Mozilla, где говорится о той напряженности, которая всегда сопутствует разработке стандартов:
Спецификация и программная реализация должны пройти путь осторожного совместного развития. Ведь, с одной стороны, не хочется, чтобы реализация появилась раньше, чем выйдет окончательная версия стандарта, иначе разработчики станут принимать во внимание особенности конкретной программы, то есть в дело пойдет лишь фрагмент спецификации. С другой стороны, не хочется утверждать полный стандарт до выхода хотя бы одной реализации, иначе придется обойтись без обратной связи, в частности, не будут приняты в расчет мнения создателей программ. Противоречие неизбежно. Нам остается решать проблему методом проб и ошибок .
Пока я буду рассказывать, как появился HTML5, помните эти слова.
+83
Сколько стоит создать приложение или вся правда о деньгах
7 min
71KУзнав, что я занимаюсь разработкой мобильных приложений, мои знакомые время от времени, спрашивают: «сколько стоит разработать приложение?». И я честно отвечаю: «от 200 долларов». Приложение будет писать на экране HELLO WORLD, его не пропустят в магазин из-за «bad user experience», но работать-то приложение будет!
Самое удивительное, что огромное количество разработчиков и вправду создает что-то за 3000 долларов и даже выкладывает это в App Store.
Некоторые рассказы российских разработчиков поразительно напоминают бродячий сказочный сюжет «о волшебном помощнике»: в духе конька горбунка или золотой рыбки. Из ниоткуда появляются дизайнеры и композиторы и бесплатно творят захватывающие вещи, а программисты со смирением Золушки по ночам строчат изначально гениальный код…
Так и хочется, заглянуть им в глаза и проникновенно спросить:
— Ребят, а вы из какой сказки?
А то в моей суровой реальности разработка качественного, пусть и не большого приложения для Appstore – это долго, непросто и дорого.
Основные статьи расходов при создании проекта:
Вся раскладка будет сделана на примере нашего приложения "МоиЭмоции". Приложение бесплатное, весь функционал можно посмотреть.
Самое удивительное, что огромное количество разработчиков и вправду создает что-то за 3000 долларов и даже выкладывает это в App Store.
Некоторые рассказы российских разработчиков поразительно напоминают бродячий сказочный сюжет «о волшебном помощнике»: в духе конька горбунка или золотой рыбки. Из ниоткуда появляются дизайнеры и композиторы и бесплатно творят захватывающие вещи, а программисты со смирением Золушки по ночам строчат изначально гениальный код…
Так и хочется, заглянуть им в глаза и проникновенно спросить:
— Ребят, а вы из какой сказки?
А то в моей суровой реальности разработка качественного, пусть и не большого приложения для Appstore – это долго, непросто и дорого.
Основные статьи расходов при создании проекта:
Статья | Расход |
Дизайн приложения | $ 13 000 |
Создание уникальности | $ 10 000 |
Производство графики | $ 35 000 |
Программирование | $ 45 000 |
Текстовый контент | $ 5 000 |
Локализация | $ 3 000 |
Музыка и звук | $ 1 000 |
Полировка | $ 17 000 |
Маркетинг | $ 30 000 |
Управление | $ 30 000 |
Итого: | $ 189 000 |
Вся раскладка будет сделана на примере нашего приложения "МоиЭмоции". Приложение бесплатное, весь функционал можно посмотреть.
+127
Несколько полезных сервисов
2 min
126K
Сервисы опросов
userreport.com (добавил Romanych)
simpoll.ru
webanketa.com (добавил mihass)
Кнопки постинга в социальные сети
Кнопка от Яндекса
addthis.com (добавил UksusoFF)
share42.com
+330
Самодельная внешняя антенна для стандарта CDMA2000/EVDO (операторы Intertelecom, PeopleNet)
5 min
158KВступление и теория под катом. Внимательно прочитайте прежде, чем задавать вопросы и/или обвинять меня в некомпетентности.
+17
7 Продуктовых техник, на которые стоит обратить внимание разработчику
4 min
37KКогда мы заказываем костюм в ателье или дизайн интерьера, нас не просят прийти с готовыми мерками, выбранным фасоном или цветом потолка. Профессиональные модельеры и дизайнеры задают вопросы и предлагают решения на основе наших целей.
Однако, от заказчиков программной разработки, мы часто ожидаем получить готовую спецификацию требований.
Чуть лучше дело обстоит в продуктовой разработке, особенно в стартапах, где генерация требований равномерно распределена по всему жизненному циклу работы над продуктом. Благодаря принципам Lean StartUp: построить -> измерить -> изучить, продуктовые команды работают более короткими циклами. На входе каждой итерации — новая порция требований для «эксперимента», в формулирование которых часто вовлечена вся команда.
В заказной разработке я наблюдаю 3 типа проблем, связанных с ожиданием готовых требований от клиента:
Очевидно, что и формулирование проблем и поиск технических решений будет проходить легче и эффективнее, если обе стороны — бизнес и разработка, будут вовлечены в этот процесс.
Как же помочь клиенту, горящему идеей продукта — сформулировать ее ясно, на языке бизнеса и проблемы. Как избежать навязывания решений, излишней и преждевременной детализации требований? Как сократить время на понимание рынка, пользователей, ценности требований и критериев успешности их реализации?
Ниже — обзор продуктовых техник, которые могут в этом помочь.
Однако, от заказчиков программной разработки, мы часто ожидаем получить готовую спецификацию требований.
Чуть лучше дело обстоит в продуктовой разработке, особенно в стартапах, где генерация требований равномерно распределена по всему жизненному циклу работы над продуктом. Благодаря принципам Lean StartUp: построить -> измерить -> изучить, продуктовые команды работают более короткими циклами. На входе каждой итерации — новая порция требований для «эксперимента», в формулирование которых часто вовлечена вся команда.
В заказной разработке я наблюдаю 3 типа проблем, связанных с ожиданием готовых требований от клиента:
- “Бизнес” не умеет формулировать хорошие требования, потому что не понимает процесса разработки и технологических возможностей. Спецификация содержит представление заказчика о решении проблемы, докопаться до сути которой по документу сложно.
- “Бизнесу” не хватает времени на проработку требований. Часть вариантов использования системы, не продуманная заранее, вбрасывается в ходе разработки. Чем меньше практик, поддерживающих итеративный процесс (CI, автоматизированное тестирование, ограничение по количеству фич в работе), тем сложнее вносить изменения в требования.
- “Бизнес” и “разработка” говорят на разных языках. Как следствие — ложное понимание требований, не проясненные предположения, вытекающие из них 'сюрпризы' в момент демонстрации. Несуществующую систему сложно описать на бумаге. Отсюда вытекают проблемы, которые можно обобщить словами заказчика: “Я не знаю точно чего хочу, но точно знаю чего не хочу”.
Очевидно, что и формулирование проблем и поиск технических решений будет проходить легче и эффективнее, если обе стороны — бизнес и разработка, будут вовлечены в этот процесс.
Как же помочь клиенту, горящему идеей продукта — сформулировать ее ясно, на языке бизнеса и проблемы. Как избежать навязывания решений, излишней и преждевременной детализации требований? Как сократить время на понимание рынка, пользователей, ценности требований и критериев успешности их реализации?
Ниже — обзор продуктовых техник, которые могут в этом помочь.
+33
Сайт для программиста. Часть 2. Публикация
4 min
39KTutorial

В первой части я рассказал, как программисту относительно просто запустить с нуля свой личный сайт с использованием Github, Heroku и Twitter Bootstrap.
Но запустить сайт мало. Скорее всего, вам захочется на него периодически что-то выкладывать. Например, новые проекты в портфолио, или записи в блог.
В этой части я расскажу, как максимально просто создать механизм публикации для своего сайта, который при этом не будет ничего решать за вас (как большинство существующих сервисов), а позволит делать всё так, как вам захочется, позволяя автоматизировать то, что можно автоматизировать.
+24
Простые стейт-машины на службе у разработчика
8 min
193KПредставьте на минутку обычного программиста. Допустим, его зовут Вася и ему нужно сделать анимированную менюшку на сайт/десктоп приложение/мобильный апп. Знаете, которые выезжают сверху вниз, как меню у окна Windows или меню с яблочком у OS X. Вот такое.
Начинает он с одного выпадающего окошка, тестирует анимацию, выставляет ease out 100% и наслаждается полученным результатом. Но вскоре он понимает, что для того, чтобы управлять менюшкой, хорошо бы знать закрыто оно сейчас или нет. Мы-то с вами тут программисты опытные, все понимаем, что нужно добавить флаг. Не вопрос, флаг есть.
Вроде, работает. Но, если быстро кликать по кнопке, меню начинает моргать, открываясь и закрываясь не успев доанимироваться в конечное состояние. Вася добавляет флаг animating. Теперь код у нас такой:
Через какое-то время Васе говорят, что меню может быть полностью выключено и неактивно. Не вопрос! Мы-то с вами тут программисты опытные, все понимаем, что… нужно добавить ЕЩЕ ОДИН ФЛАГ! И, всего-то через пару дней разработки, код меню уже пестрит двустрочными IF-ами типа вот такого:
Вася начинает задаваться вопросами: как вообще может быть, что animating == true и enabled == false; почему у него время от времени все глючит; как тут вообще поймешь в каком состоянии находится меню. Ага! Состояния... О них дальше и пойдет речь.
Знакомьтесь, это Вася.

Начинает он с одного выпадающего окошка, тестирует анимацию, выставляет ease out 100% и наслаждается полученным результатом. Но вскоре он понимает, что для того, чтобы управлять менюшкой, хорошо бы знать закрыто оно сейчас или нет. Мы-то с вами тут программисты опытные, все понимаем, что нужно добавить флаг. Не вопрос, флаг есть.
var opened = false;
Вроде, работает. Но, если быстро кликать по кнопке, меню начинает моргать, открываясь и закрываясь не успев доанимироваться в конечное состояние. Вася добавляет флаг animating. Теперь код у нас такой:
var opened = false;
var animating = false;
function onClick(event) {
if (animating) return;
if (opened) close();
else open();
}
Через какое-то время Васе говорят, что меню может быть полностью выключено и неактивно. Не вопрос! Мы-то с вами тут программисты опытные, все понимаем, что… нужно добавить ЕЩЕ ОДИН ФЛАГ! И, всего-то через пару дней разработки, код меню уже пестрит двустрочными IF-ами типа вот такого:
if (enabled && opened && !animating && !selected && finishedTransition && !endOfTheWorld && ...) { ... }
Вася начинает задаваться вопросами: как вообще может быть, что animating == true и enabled == false; почему у него время от времени все глючит; как тут вообще поймешь в каком состоянии находится меню. Ага! Состояния... О них дальше и пойдет речь.
Знакомьтесь, это Вася.

+70
Доброфон — бесплатные телефонные консультации по любым вопросам
7 min
31K
Иногда у нас возникает внезапная необходимость поговорить с живым человеком. Спросить совета, получить консультацию, поделиться идеей, рассказать смешную историю или просто поговорить ни о чем. Не всегда бывает удобно беспокоить этим друзей.
Мы попробовали решить эту задачу и сделали Доброфон – горячую линию куда можно позвонить в любое время и поговорить с реальным человеком тет–а–тет. Операторы разделены на категории в зависимости от квалификации и пола.
Все, разумеется, бесплатно и создано исключительно для эстетического удовольствия.
В Доброфон можно позвонить через:
- Skype
- Стационарный телефон — доступны прямые номера во многих странах и шлюзы в крупных городах
- Приложение вконтакте
- WebRTC-виджет (работает только в браузере Chrome)
- Flash-виджет
- Веб-интерфейс Gmail и Google Talk
- iNUM
- SIP
В статье будет описана техническая сторона организации call-центра и тонкости подключения всех внешних линий.
+111
Information
- Rating
- 3,127-th
- Registered
- Activity