Pull to refresh
184
0
Александр @Caiiiycuk

User

Send message

Творим оригинальный подарок при помощи химии физики и электроники: часть 2

Reading time6 min
Views35K
В предыдущей части (http://habrahabr.ru/blogs/DIY/111610/) был рассмотрен первый шаг к созданию девайса, собственно выращивание кристалла. В этой части будем рассматривать физическое воплощение самого устройства и его электрическую схему.
Читать дальше →
Total votes 94: ↑93 and ↓1+92
Comments36

Пол Грэм

Reading time2 min
Views56K
Paul GrahamСколько раз я уже перечитывал статьи Пола Грэма, столько раз я удивлялся его потрясающему умению открывать глаза на вроде бы обычные вещи. И потрясающей способности интересно описывать окружающий нас мир.

Да, это он в 1998 году продал свою компанию Viaweb интернет-гиганту Yahoo, которая впоследствии назвала этот продукт Yahoo Store. Да, это он основал венчурный фонд Y Combinator. Да, это его журнал BusinessWeek включил в список 25 наиболее влиятельных людей в Сети за 2008.

Хотите читать по-настоящему интересные аналитические статьи? Вам однозначно к Полу. Я настоятельно рекомендую прочитать его заметки. Особенно если вы it-шник. Особенно если вы собираетесь открывать свой бизнес.

Читать дальше →
Total votes 125: ↑111 and ↓14+97
Comments61

Как начать работу над стартапом?

Reading time6 min
Views14K
Топик навеян впечатлениями от докладов на swpiter и постом о том, как не продать машину :)

Как работать над стартапом и всегда оставаться в выигрыше?


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

Картинка слева кликабельна, а ниже — текстовое описание в 12 шагах как инициировать стартап и при этом всегда оставаться в выигрыше.

1. Идея!


И так, всё начинается с идеи, которая каким-то образом пришла к вам в голову. Идея выглядит интересной и соблазнительной. Она мотивирует вас.

Самое важное в идее — это не терять мотивацию вплоть до 10 шага и тогда вы в любом случае получите для себя выгоду.

2. Детализация идеи


Необходимо хотя бы примерно ответить на эти вопросы:
  • область применения
  • какие задачи поможет решить
  • какие инструменты применяются для решения задач
  • что вы хотите получить в процессе и в результате реализации
  • какие-то существенные моменты, которые вам просто необходимо изложить, чтобы не потерять в будущем
На этом этапе ещё рано отвечать на вопросы:
  • сколько времени вы можете уделить (если идея вас реально интересует, вы перейдёте к следующим этапам)
  • сколько на это нужно денег
  • кто вам ещё нужен для реализации идеи
Читать дальше →
Total votes 153: ↑133 and ↓20+113
Comments52

Основы исполнения JavaScript и взаимодействие с сайтами внутри программ на Qt

Reading time9 min
Views8.9K

Введение


О кроссплатформенной библиотеке Qt слышали, наверное, многие. О движке отображения веб-страниц WebKit тем более. Не так давно первое стало содержать обертку над вторым, примеры создания браузеров в 50 строчек найти не сложно. Тем не менее о том, как получать доступ к отдельным элементам веб-страницы из Qt-кода написано не много.
Читать дальше →
Total votes 40: ↑39 and ↓1+38
Comments1

Облачные вычисления, краткий обзор или статья для начальника

Reading time11 min
Views98K
В своей работе очень часто сталкиваюсь с тем, приходится делать краткие обзоры ИТ технологий для начальника, коллег и др. Данная информация обычно оформляется в статью и отвечает на следующие вопросы:
— почему «это» лучше чем «то» (специально написал обезличено, так как такой вопрос задают очень часто и на различные тематики связанные с ИТ и не только);
— в чем достоинства и недостатки при переходе на «то» или «это»;
— как лучше сделать чтобы … и др.

Проблема в том, что написание краткой статьи по «этому» или «тому» неизбежно, хотя объяснить намного быстрее, чем набирать текст, но надо текст и с этим ничего не поделаешь, а так жалко времени, которое бесценно и убегает с каждой секундой. Я думаю, что я не один сталкиваюсь с такой проблемой, поэтому предлагаю начать раздел под названием – «Начальнику в помощь» в котором будем публиковать статьи подобного рода (тем более, что они и так будут написаны вами), тем самым сэкономим время и поможем друг другу. В один прекрасный момент и к вам обратятся с таким вопросом, и возможно, кто-то уже написал ответ на этом вопрос и будет легче написать статью или просто скинуть ссылку на уже написанную, сэкономив драгоценное время.

Итак приступим. Вопрос с которым ко мне обратились был следующим. «Почему облачные вычисления лучше, чем классическая схема построения сетевой инфраструктуры, какова основная причина того, многие организации „перебираются в облака“?». Далее мои мысли по этому поводу.
Читать дальше →
Total votes 48: ↑41 and ↓7+34
Comments23

Как порадовать невесту программиста

Reading time2 min
Views12K
Шел четвертый праздничный вечер. Отдыхать я порядком устал, и потому рукам и голове срочно требовалось творческой встряски. Решил сделать приятно своей второй половине — и не просто так, а прямо таки по айтишному. А кто лучшие друзья девушек? — Правильно, бриллианты. За не имением оных решил я соорудить какую-нибудь бижутерную и милую штучку для своей половинки. Глядишь кому и к 14 февраля или 8 марта пригодится мысль.


Читать дальше →
Total votes 252: ↑221 and ↓31+190
Comments146

Comet–приложение для Mochiweb c нагрузкой в 1 000 000 пользователей. Часть 1/3

Reading time6 min
Views7.5K
Часть 2
Часть 3

В этом цикле статей я поделюсь тем, что я узнал опытным путем о том, как Mochiweb обрабатывает большое количество открытых соединений, и покажу, как создать Comet-приложение, используя Mochiweb, где каждое соединение зарегистрировано в маршрутизаторе. Мы закончим рабочим приложением, которое в состоянии справиться с 1000 000 параллельных соединенией, и узнаем, как много памяти нам для этого потребуется.

В части первой:
• Создание простого Comet — приложение, которое посылает клиентам сообщение каждые 10 секунд.
• Настройка ядра Linux для поддержки большого количества соединений.
• Создание тестирующей утилиты для создания большого количества соединений.
• Определение необходимого количества памяти.

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

Предполагается, что Вы знакомы с bash, и немного с Erlang.
Читать дальше →
Total votes 50: ↑50 and ↓0+50
Comments67

Шаблонная магия, паттерн CallWithType

Reading time19 min
Views5.3K
Доброго времени суток, уважаемые Xабровчане!

В этой статье я хочу рассказать о том, как в С++ можно делать преобразование данных времени компиляции (типов) в данные времени выполнения (целые значения) и обратно.

Пример:
int nType = ...;
 
if( boost::is_base_of< ISettable, /* ... magically resolve type hidden by nType here ... */ >::value )
{
    // Do something
}
else
{
    // Do something else
}

Весь этот топик направлен на то, чтобы понять, что же надо написать вместо «magically resolve type hidden by nType here».
Читать дальше →
Total votes 37: ↑35 and ↓2+33
Comments49

Qt + QML на простом примере

Reading time13 min
Views106K
Qt является удобным и гибким средством для создания кросс-платформенного программного обеспечения. Входящий в его состав QML предоставляет полную свободу действий при создании пользовательского интерфейса.
Об удобстве использования связки Qt и QML уже говорилось не раз, поэтому не буду дальше распространяться о плюсах, минусах, а приведу, шаг за шагом, пример простого Qt приложения.
Читать дальше →
Total votes 127: ↑120 and ↓7+113
Comments14

Делаем SMS-сервис «на коленке»

Reading time6 min
Views8.8K
Привет!

Сейчас я расскажу, как мои коллеги за неделю (по часу в день) запустили «по фану» SMS-сервис и как это делается. Вообще, мне было интересно, как надо правильно прикручивать SMS-уведомления к интернет-магазину, но тут прямо целый кейс микропроекта. Сразу говорю, если вы хорошо знаете как работает SMS-агрегатор, SMS-шлюз и другие штуки, этот «первый кирпичик» покажется вам банальным.

Задача перед мини-стартапом стояла простая:
  • Создать прикольную штуку на «коленке» за минимум времени
  • Потратить на запуск меньше 1000 рублей (время не считается)
  • Собрать работающий монетизируемый сервис

UDP: в комментах ещё есть статистика во время хабраэффекта и феерический конец истории от агрегатора.
Читать дальше →
Total votes 113: ↑104 and ↓9+95
Comments96

Видео с HighLoad++ в Mail.Ru: James Golick — Scaling to Hundreds of Millions of Requests: What Worked and What Didn't

Reading time1 min
Views2.7K
Добрый день, друзья,

Ниже еще один видеоролик из серии докладов на HighLoad++:

Сегодня это James Golick, с докладом: Scaling to Hundreds of Millions of Requests: What Worked and What Didn't

Часть первая, (22:31): video.mail.ru/mail/akulhot/_myvideo/1.html

Часть вторая, (21:35): video.mail.ru/mail/akulhot/_myvideo/2.html

Часть третья, (22:05): video.mail.ru/mail/akulhot/_myvideo/4.html

Надеемся, что и этот доклад окажется для вас полезным.

Приятного просмотра :)
Total votes 26: ↑20 and ↓6+14
Comments4

Видео с HighLoad++: Константин Осипов (Oracle) — MySQL: проблемы роста

Reading time1 min
Views4.8K
Еще один видеоролик с HighLoad++:

Константин Осипов (Oracle) говорит о проблемах роста проекта и его команды в докладе MySQL: проблемы роста

Часть первая, (25:03): video.mail.ru/corp/mf/2/3.html

Часть вторая: (25:23): video.mail.ru/corp/mf/2/4.html

Часть третья: (25:38): video.mail.ru/corp/mf/2/5.html

Часть четвертая: (08:13): video.mail.ru/corp/mf/2/6.html

Хороших выходных :)
Total votes 23: ↑20 and ↓3+17
Comments7

Видео с HighLoad++: Bruce Momjian (PostgreSQL) — Building Global Teams Like Postgres

Reading time1 min
Views3.4K
Добрый день,

Готов еще один видеоролик из серии докладов на октябрьском HighLoad++:

Bruce Momjian (PostgreSQL) — Building Global Teams Like Postgres

Часть первая, (31:42): video.mail.ru/corp/morozova/16/27.html

Часть вторая: (27:43): video.mail.ru/corp/morozova/16/28.html

Часть третья: (23:04): video.mail.ru/corp/morozova/16/29.html

Часть четвертая: (23:55): video.mail.ru/corp/morozova/16/30.html

Уже выложенные на Хабр доклады

Хорошего просмотра!

Мы обязательно выложим доклады остальных участников — все будет хорошо:)
Total votes 23: ↑20 and ↓3+17
Comments4

Статический анализ и регулярные выражения

Reading time7 min
Views5.8K
Я занимаюсь разработкой статического анализатор кода PVS-Studio для анализа программ на языке Си/Си++. После появления в PVS-Studio 4.00 анализа общего назначения мы получили множество откликов, как положительных, так и отрицательных. Кстати, предлагаю скачать новую версию PVS-Studio, в которой благодаря откликам людей было поправлено большое количество ошибок и недочетов.

В ходе обсуждения PVS-Studio 4.00 вновь встал вопрос, можно ли реализовывать большинство проверок, используя регулярные выражения, и не переусложняем ли мы, говоря, что обязательно необходимо строить и работать с деревом разбора. Вот пример комментария на эту тему. Подобный вопрос возникает уже не в первый раз, и я решил написать статью, чтобы объяснить, почему пытаться использовать регулярные выражения для анализа Си/Си++ кода — эта очень плохая идея.

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

Читать дальше →
Total votes 43: ↑40 and ↓3+37
Comments37

Тормозит веб-сервер. Настройка на примере www.ochevidets.ru

Reading time8 min
Views28K
Я оказываю услуги по настройке web- и БД-серверов. На днях ко мне обратился Иван Усачёв — владелец портала ochevidets.ru с просьбой избавить сайт от торможения.

Страницы в пиковое время стали долго загружаться, вплоть до 5 минут на страницу.

UPDATE: Статья была написана в 2010 году. Кое-что изменилось: вышли новые версии программ, у nginx изменились некоторые директивы и появились новые. Учитывайте это.

Ниже я опишу, что я предпринял для решения проблемы.
Total votes 197: ↑152.5 and ↓44.5+108
Comments407

Проверяем отказоустойчивость сайта

Reading time4 min
Views35K
Результаты тестирования. Время ответа сервераЭто очередной пост их уже традиционной предновогодней серии про проверку отказоустойчивости сайта и готовности его принять всех ваших посетителей, озадаченных выбором подарков или предновогодними скидками. В этом выпуске я рассмотрю создание тестов в расширенном режиме с использованием записи действий (Proxy recorder), что позволяет почти полностью эмулировать поведение реальных пользователей из реального браузера у вас на сайте. Также немного будет затронута тема анализа самих графиков по отказоустойчивости.
Итак, поехали.
Читать дальше →
Total votes 82: ↑67 and ↓15+52
Comments96

Трепещи, мир! Мы выпустили PVS-Studio 4.00 с бесплатным анализатором общего назначения

Reading time12 min
Views2.2K
Check TortoiseSVN
Предлагаем вниманию программистов новый инструмент для поиска ошибок в исходном коде приложений на языке Си/Си++. В рамках анализатора PVS-Studio реализован новый набор правил общего назначения. Эта функциональность на данный момент является бесплатной. Вы можете скачать PVS-Studio по адресу http://www.viva64.com/ru/pvs-studio-download/.

В статье кратко рассказывается о новых возможностях PVS-Studio. На примере статического анализа исходного кода проекта TortoiseSVN будет продемонстрировано использование новых диагностических возможностей.
Читать дальше →
Total votes 88: ↑78 and ↓10+68
Comments170

10 эффективных инструментов для юзабилити-тестирования: обзор и сравнение

Reading time7 min
Views104K
Чтобы узнать насколько удобен сайт или другой программный продукт для пользователей, надо спросить об этом у них самих. Но считается, что тестирование на «на живых людях» отнимает много сил и времени у разработчика и/или владельца ресурса.

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

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

Сначала идет описание всех десяти приложений, а затем сравнительная таблица, где отражены их основные характеристики.
Читать дальше →
Total votes 37: ↑36 and ↓1+35
Comments8

Написание web-API к своей системе

Reading time3 min
Views24K
Добрый день, %username%!
За последний год столкнулся с несколькими задачами по написанию SOAP/REST API к различным сервисам и вывел для себя боле-менее удобную модель. Я не претендую на фундаментальное исследование, просто хочу поделиться опытом наступания на грабли.

Для начала общие требования к default API:
  • возможность расширения
  • удобный стандартизированный формат запросов
  • удобный стандартизированный формат ответов
  • достаточный уровень безопасности
  • возврат ошибок выполнения запроса

Читать дальше →
Total votes 108: ↑83 and ↓25+58
Comments180

Непрерывная интеграция на примере Hudson

Reading time10 min
Views33K
Все мы прекрасно понимаем, что тестирование является неотъемлемой частью жизненного цикла разработки ПО. Чем чаще мы тестируем наш код, тем быстрее мы сможем обнаружить ошибку, вкравшуюся в него в ходе разработки, и быстрее её исправить. При этом стоит понимать, что тестирование крайне желательно проводить в окружении, максимально близком к боевому (ОС, ПО, Hardware, Нагрузка), что бы иметь возможность обнаружить ошибки, которые не проявляются на сервере разработки, но могут появиться в бою. Компануя два вышесказанных тезиса вместе мы получаем концепцию, называемую Continuous Integration.

Суть CI заключается в постоянной (например, после каждого commit'а) сборке и тестировании разрабатываемого ПО в максимально приближенной к боевой среде с целью как можно более раннего обнаружения ошибок и оповещения о них разработчиков. Сама идея CI принадлежит Martin Fowler, подробно описавшему её в своей статье.

Для автоматизации процесса непрерывной сборки существуют готовые решения (Hudson, CruiseControl), интеграцию одного из которых (Hudson) я и опишу в этой статье.

Читать дальше →
Total votes 40: ↑38 and ↓2+36
Comments21

Information

Rating
Does not participate
Location
Новокузнецк, Кемеровская обл., Россия
Date of birth
Registered
Activity