Search
Write a publication
Pull to refresh
7
0
Маслов Александр @drakmail

SRE

Send message

Разработка через жалобы

Reading time5 min
Views11K
В течение последнего года я мало писал, так как был занят разработкой нового средства для ведения дискуссий. Если вы, вслед за моими инвесторами, хотите знать, почему это заняло целый год, мне стоит объяснить, как именно я делаю программы, или, как минимум, как мы сделали Stack Overflow, Stack Exchange и, теперь, Discourse:

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

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

3. Начните использовать этот продукт вместе со всей командой, каждый день, весь день. Это не просто разработка: это вся ваша жизнь. Если вы не живете разрабатываемой программой каждый день, целый день… проект неизбежно ждет плачевный исход. И, честно говоря, если мне приходится вам это объяснять, то знаете что? Вы в заднице.

Читать дальше →

Как мы не заработали миллион на приложении для iPhone

Reading time5 min
Views61K

Эта статья о самых главных ошибках четырех backend разработчиков, которые решили заработать денег на приложении для iPhone не имея никакого опыта в разработке мобильных приложений и тем более их продвижении.

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

Ошибка #1 — Идея


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

Вывод: в следующий раз сначала очень серьезный анализ рынка, потом поиск людей готовых купить идею, и только потом продукт.
Читать дальше →

Дайджест интересных материалов из мира веб-разработки и IT за последнюю неделю №109 (11 — 17 мая 2014)

Reading time6 min
Views42K
Предлагаем вашему вниманию подборку с ссылками на полезные ресурсы, интересные материалы и IT-новости


Читать дальше →

Reverse-инжиниринг Caesar III (часть 2, Рисование города)

Reading time4 min
Views45K
Надеюсь, предыдущий пост Back-инжиниринг Caesar III, где был описан алгоритм получения текстур из ресурсов оригинальной игры, был благосклонно встречен хабражителями. В этой статье я опишу формат карт, алгоритм выбора и порядок тайлов для отрисовки, формирование итоговой текстуры.



Как это устроено

10 способов сделать резервную копию в PostgreSQL

Reading time5 min
Views286K
Многие разговоры про бэкапы начинаются с присказки что люди делятся на две категории… так вот я отношусь к тем людям которые делают бэкапы. Правильно настроенное резервное копирование и проверка резервных копий укрепляет сон. А наличие заранее написаных и проигранных инструкций по восстановлению вообще укрепляет пищеварение и иммунитет. Так вот, за время работы с PostgreSQL мне довелось часто настраивать резервное копирование, при этом условия и требования были самые разные. Однако при этом набор инструментов за редким исключением оставался неизменным. В этой статье поделюсь своим опытом в деле, как можно брать резервные копии PostgreSQL.
image

Читать дальше →

Налоговый вычет для программистов (авторов программ)

Reading time4 min
Views28K
IT отрасль в целом и создание продуктов интеллектуальной собственности (компьютерные программы и многое другое) в частности – немалая движущая сила современной экономики и мирового прогресса.

Специфика отрасли заключается в том, что профессионалы не всегда могут и не всегда хотят работать in-house и являются фрилансерами. Оно и закономерно – интеллектуальный труд не обязан предполагать рамки рабочего дня и стены офиса.

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

Тренды в онлайн образовании

Reading time5 min
Views38K
В последнее время на слуху феномен «муков» (MOOC) – массовых открытых онлайн курсов. Платформ для них создано большое множество.

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

При этом у онлайн образования есть большое концептуальное отличие от оффлайн образования – его проще измерить. А всё, что можно измерить, можно улучшить.

В этом посте я поделюсь личными соображениями о том, куда движется онлайн образование на примере MOOC-ов, в том числе по мотивам посещения Coursera Partners' Conference, прошедшей 4 недели назад в Лондоне.
Читать дальше про данные, специализации, смешанное обучение и платформу образовательных приложений

Новый выделенный сервер: приемка и проверка

Reading time10 min
Views42K
Новый сервер: приемка и проверка

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

В этой статье мы расскажем о том, как можно получить спецификацию Linux-сервера в командной строке.
Читать дальше →

N2O: Erlang Web-фреймворк на WebSockets

Reading time8 min
Views32K
N2O Erlang Framework

ВВЕДЕНИЕ


Данный пост подразумевает хорошее интро в N2O на русском.

Что такое Erlang/OTP Web Framework N2O и в чём его фишка для веб-разработки, можно узнать на странице в github и официальном сайте SynRC. Там всё как вы любите с графиками и презентациями.

А здесь рассмотрим принципы работы фреймворка и поговорим о вечном.
Читать дальше →

4 причины, почему люди чего-то не делают или “Как раскачать low-performer’а”

Reading time8 min
Views105K
Так получилось, что тесть и теща у меня доктора педагогических наук. Что приводит к тому, что волей-неволей начинаешь постигать различные полезные методики :)

Однажды, после какого-то ученого совета за виски чаем на кухне тесть говорит: Саш, а вот как ты считаешь, почему люди чего-то не делают?

Честно сказать, вопрос поставил меня в тупик. Я начал фантазировать: ну, обстоятельства мешают, черты характера, недостаток опыта…

Не-не, сказал, тесть, все не так. Если люди чего-то не делают, для этого может быть 4 причины. После чего мой арсенал управленческих инструментов пополнился еще одним. И именно об этом инструменте мы сегодня поговорим, а заодно разберем несколько историй из реальной жизни:
  • Почему менеджеров проектов надо пересаживать в отдельное здание
  • Что делать, когда ваш заказчик не пользуется вашей системой отчетов
  • Как раскачать low-performer’а


Читать дальше →

Как в России прессуют бизнесы, имеющие дело с Bitcoin

Reading time2 min
Views99K
Ещё зимой Центральный банк РФ озвучил своё мнение насчёт Bitcoin, назвав криптовалюту «денежным суррогатом». Вслед за ним Генпрокуратура РФ устроила заседание и решила «провести ряд мероприятий». На этой волне закрылись некоторые сервисы, некоторые перестали принимать Bitcoin к оплате, а некоторые Bitcoin-биржи перестали принимать депозиты в рублях.

Прошло время, кто-то уже успел расслабиться. Тем временем, прокуратура и правда начала проводить «мероприятия». Вот какое обращение от прокуратуры вчера получил мой друг, владелец интернет-магазина.
Читать дальше →

Кому доверить свой бизнес? Часть 2 — юридическое сопровождение

Reading time10 min
Views15K
Рано или поздно предпринимателю понадобится помощь толкового юриста, который даст совет и подготовит красивые документы для заключения сделки. Решений юридической проблемы — пруд пруди. Чтобы лучше понимать рынок, на котором работает наша компания, мы провели небольшое исследование: с многообразием бухгалтерских услуг мы познакомились в предыдущей статье, предложения секретарей и бизнес-ассистентов отложим до следующей, а сегодня расскажем, что делать, когда бизнес спотыкается о вопросы юридического характера.



Рынок юридических услуг Москвы похож на то, что предлагает бухгалтерский. Можно без труда найти пару веб-сервисов, кучу справочно-правовых систем, получить разовую консультацию, сотни аутсорсинговых компаний возьмут на себя все заботы, да и дефицита в резюме штатных и удаленных сотрудников не наблюдается. Наша цель — выбрать вариант, подходящий по цене и уровню обслуживания в диапазоне от микро до среднего бизнеса.
Читать дальше →

Введение в Marionette.js Behaviors

Reading time3 min
Views16K
image

В этом посте вы узнаете о новой фиче Marionette.js — Behaviors.

Очень часто в различных элементах интерфейса у нас встречаются похожие элементы управления (например кнопка «Удалить» может быть и у категорий, и у записей, и в списке зарегистрированных пользователей… да везде), и каждый раз приходится описывать обработчик этой кнопки в каждом View, причем везде одинаково.
Но это уже называется дублирование кода, и не приветствуется в большинстве общества. Поэтому разработчики Marionette.js предоставили нам такую замечательную фичу как Behaviors.

Behaviors предоставляет интерфейс для изолирования описаний взаимодействия DOM с пользователем в отдельные логические куски кода. Behavior может быть применено к любому View любое количество раз.

В этой статье рассмотрим самый тривиальный пример — кнопка «Удалить».
Читать дальше →

Байес

Reading time3 min
Views98K
В левой руке Морфеуса лежит 7 синих и 3 красных таблетки, а в правой 5 синих и 8 красных. Вы закрываете глаза и берете таблетку — она оказывается красной, однако вы не знаете из какой руки ее взяли. Какова вероятность, что вы взяли ее из правой руки?


image

17 апреля 1761 — день смерти Томаса Байеса.
Под катом результаты того, что есть в рунете, помимо стандартных вещей типа Теорема Байеса, Байесовская сеть, Наивный байесовский классификатор , Байесовская фильтрация спама
Читать дальше →

Преднастройка продуктов Mozilla для корпоративной среды это просто

Reading time4 min
Views19K

Обычно после установки продуктов Mozilla в корпоративной среде требуется дополнительно установить:
  • стандартный для компании набор плагинов
  • сделать типовые настройки


Почему бы не интегрировать необходимые плагины и типовые настройки в дистрибутив?
Цель данной статьи — показать как можно перепаковать дистрибутив Mozilla, добавив необходимые компоненты.

Сразу оговорюсь: рассматривать установку любого дистрибутива в корпоративной среде не стану — про это написано множество статей и имеется множество готовых либо самодельных инструментов.
Вторая оговорка: распространяя модифицированный дистрибутив Mozilla за пределы своей организации без подписания дополнительного соглашения с Mozilla Вы нарушите лицензионное соглашение.

Но наша цель — подготовить внутренний дистрибутив для своей организации, так что всё в порядке.

Простая инструкция

A/B Анализ для начинающих. Как понять, что именно работает на вас?

Reading time4 min
Views25K
image

Paysto предлагает инструменты для ваших проектов, но то, насколько эти проекты будут эффективны, зависит только от вас. Одним из главных направлений работы над проектом является оптимизация его представления в сети. Для этого существует множество инструментов и приемов, но сегодня мы решили остановиться на А/В анализе, как на одном из самых эффективных способов выбора оптимального варианта вашей страницы, который позволяет точно оценить тот результат, который принесло то или иное изменение.

Читать дальше →

Один крутой Gist: whiteboardCleaner

Reading time1 min
Views30K
Доброго времени суток уважаемые хабравчане. На просторах интернета мне повстречался один миниатюрный и очень интересный Bash скрипт. С помощью ImageMagick он потрясающим образом обрабатывает фотографии белой учебной доски, очищая «содержимое» от всего лишнего:

#!/bin/bash
convert $1 -morphology Convolve DoG:15,100,0 -negate -normalize -blur 0x1 -channel RBG -level 60%,91%,0.1 $2


До:


image

После:


image
Читать дальше →

Рабочая среда «Деодар» для Линукс

Reading time4 min
Views40K
Это Norton Commander? Это Volkov Commander? Это Dos Navigator? Это Far Manager?
Нет, это «Деодар» — новая рабочая среда для Линукс.
Деодар хостится на GitHub, основан на Node.js, написан на JavaScript плюс немного C++.
Распространяется по антилицензии Unlicense.org. Безвозмездно, то есть даром.
В данной статье на большом количестве картинок и малом количестве пояснений вы можете ознакомится с тем, что уже есть.
Да, «Деодар» — это такое дерево, Cedrus Deodara растёт высоко в горах, очень красивое.



Читать дальше →

Signed Distance Field или как сделать из растра вектор

Reading time12 min
Views61K
Речь сегодня пойдёт о генерации изображений с картой расстояний (Signed Distance Field). Данный вид изображений примечателен тем, что фактически позволяет получить «векторную» графику на видеоускорителе, причём даром. Одной из первых данный метод растеризации предложила компания Valve в игре Team Fortress 2 для масштабируемых декалей в 2007 году, но до сих пор он не пользуется особой популярностью, хотя позволяет рендерить прекрасного качества шрифты, используя текстуру всего 256х256 точек. Данный метод прекрасно подходит для современных экранов высокой чёткости и позволяет серьёзно сэкономить на текстурах в играх, он не требователен к железу и прекрасно работает на смартфонах.



Хитрость заключается в создании такой специально подготовленной карты расстояний, что при использовании простейшего шейдера получается идеальная векторная картинка. Более того, с помощью шейдеров можно получить эффекты тени, свечения, объёма и т. п.

Как же создавать такие изображения? Очень просто, ImageMagick позволяет сделать это одной командой:

convert in.png -filter Jinc -resize 400% -threshold 30% \( +clone -negate -morphology Distance Euclidean -level 50%,-50% \) -morphology Distance Euclidean -compose Plus -composite -level 45%,55% -resize 25% out.png

На этом можно было бы поставить точку, но так полноценного топика не получится. Что ж, под катом — описание быстрого алгоритма расчёта SDF, пример на C++ и немного шейдеров для OpenGL.
Читать дальше →

Information

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