Search
Write a publication
Pull to refresh
51
0
Глеб Арестов @arestov

User

Send message

YesterdayMe: опыт роста стартапа от 1 до 2000 активных пользователей

Reading time5 min
Views871
image В этом посте расскажу о собственном опыте создания и продвижения стартапа YesterdayMe.ru. Пост построю как перечисление наиболее значимых наблюдений и рекомендаций в ходе развития проекта, но намеренно не буду делать обширных выводов, чтобы уместиться в читаемый объем. Коротко, по делу, исходя из опыта первых семи месяцев работы сервиса.

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

Сегодня у сервиса около двух тысяч активных пользователей (пользуются сервисом хотя бы раз в неделю).

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

Трепещи, мир! Мы выпустили 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 будет продемонстрировано использование новых диагностических возможностей.
Читать дальше →

Lightworks доступен для публичного beta-тестирования

Reading time1 min
Views1.7K
image

Вчера EditShare объявила начало публичного бета тестирования проекта Lightworks, Open Source видеоредактора, который стремится стать одним из главных конкурентов FinalCut.

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

Введение в OCaml: Структура программ на OCaml [2]

Reading time12 min
Views8.4K
[прим. пер.: продолжение перевода, первая статья тут]
тизер к статье с графикой на OCaml

Структура программ на OCaml


Теперь мы потратим немного времени на высокоуровневый анализ некоторых настоящих программ на OCaml'е. Я хотел бы показать вам локальные и глобальные определения, разницу в использовании ;; и ;, модули, вложенные функции, ссылки. Из-за этого мы столкнёмся с множеством концепций OCaml'а, которые пока что не имеют смысла для начинающего изучать OCaml, так как мы не встречали их ранее. Не фокусируйтесь на них, сконцентрируйтесь вместо этого на общем представлении о формате программ и особенностях языка, на которые я буду указывать.

Локальные «переменные» (на самом деле локальные выражения)


Возьмём нашу функцию average на Си и добавим в неё локальные переменные (сравните её с примером в прошлой главе).

double average (double a, double b)
{
  double sum = a + b;
  return sum / 2;
}

Теперь посмотрим на это для OCaml:

let average a b =
  let sum = a +. b in
  sum /. 2.0;;

Стандартное выражение let name = expression in используется для определения локального именованного выражения и name может быть использовано в дальнейшем вместо expression вплоть до ;;, который означает окончание локального блока кода. Обратите внимание, мы даже не использовали отступ после объявления in. Просто воспринимайте let ... in так, как будто это один оператор.
Читать дальше →

Финансирование стартапа от государства

Reading time5 min
Views3.9K
Допустим, фирму вы уже создали, отдавать инвесторам 75% долю не хотите, а денег где-то взять надо. Помощь приходит совершенно из неожиданного места – Государства. Речь идет о 350 000 рублей, которые вам (внимание!) подарят! Но заплатить придется некоторой бюрократической возней и потерей времени. Речь будет идти о малых предприятиях, зарегестрированных в городе Москве, так как пишу по собственному опыту.



По программе содействия развитию малого бизнеса г.Москвы (в других регионах есть аналоги) любой субъект малого предпринимательства имеет возможность получить до 350 000 рублей на следующих условиях:
  • Необходимо вложить не менее 50% собственных средств;
  • Нужно иметь помещение и договор аренды;
  • Необходимо потратить более 50% предоставляемой субсидии на покупку основных средств;
  • Возмещение арендной платы из бюджета — не более 3 600 руб. за кв.м. в год;
  • На расходные материалы можно потратить не более 20% субсидии.

Условия устраивают? Тогда действуем! 

Получить денег от государства...

Кейс «Проектирование веб-сервиса бронирования билетов». Бизнес-анализ. Анализ бизнес-проблем

Reading time2 min
Views15K
Последним и завершающим разделом бизнес-анализа, после выполненного описания предметной области, является анализ проблем заинтересованных лиц, анализ зависимостей и описание бизнес-возможностей сторон.

V. Анализ бизнес-проблем


Проблемы, их владельцы и причины

Описание проблем удобно описывать с помощью таблицы, чтобы структурировать информацию по следующим пунктам.
  1. Проблема.
  2. На кого воздействует.
  3. Результатом чего является.
  4. Выигрыш от новой системы.
  5. Приоритет.
После описания всех проблем необходимо сортировать в порядке убывания по приоритету, чтобы выделить наиболее значимые.
Читать дальше →

Как выбрать помещение для интернет-магазина в реале

Reading time7 min
Views34K
Маркетинг магазина в реале начинается с выбора места. Есть два пути решения задачи: так называемый «жоп-филинг», то есть интуитивное принятие решения и продуманный просчёт.

Общая задача такая:
  • Есть интернет-магазин, нужна точка в реале;
  • Место должно способствовать наибольшей прибыли точки как отдельного розничного магазина;
  • И хорошо работать как пункт самовывоза интернет-магазина.
Читать дальше →

Введение в OCaml: The Basics [1]

Reading time10 min
Views28K
(предисловие от переводчика: сел учить окамл, обнаружил, что отсутствует перевод на русский язык руководства для начинающих. Восполняю этот пробел).

Основы


Комментарии


Комментарии в OCaml обозначаются символами (* и *), примерно так:
(* Это однострочный комментарий *)

(* Это комментарий
   на несколько
   строк.
*)

Другими словами, комментарии в OCaml очень похожи на комментарии в Си (/* ... */).

В настоящий момент нет однострочных комментариев (как #... в Перле или // ... в C99/C++/Java). Когда-то обсуждалась возможность использовать ## ..., и я весьма рекомендую окамловским товарищам в будущем добавить эту возможность (однако, хорошие редакторы открывают возможность использования однострочных комментариев даже сейчас).

Комментарии в OCaml вложенные, это позволяет очень просто комментировать куски кода с комментариями:
(* This code is broken ...

(* Primality test. *)
let is_prime n =
(* note to self: ask about this on the mailing lists *) XXX;;

*)

Вызов функций


Допустим, вы написали функцию, назовём её repeated, которая берёт исходную строку s, число n и возвращает новую строку, состоящую из n раз повторённой строки s.

В большинстве С-подобных языков вызов функции будет выглядеть так:
repeated ("hello", 3) /* this is C code */

Это означает «вызвать функцию repeated с двумя аргументами, первый аргумент — строка hello, второй аргумент — число 3».

Подобно остальным функциональным языкам программирования, в OCaml, запись вызовов функций и использование скобок существенно отличается, что приводит к множеству ошибок. Вот пример того же самого вызова, записанного на OCaml: repeated "hello" 3 (* this is OCaml code *).

Обратите внимание — нет скобок, нет запятых между аргументами.
Читать дальше →

Рецепт быстрого приготовления расширений под популярные браузеры

Reading time2 min
Views1.2K
0147 (1)

Возникла задача написание простенького расширения под все (по возможности) популярные браузеры. Деятельность расширения заключается во внедрении javascript`а в тело документа.
Читать дальше →

Кроссплатформенная разработка на мобильных устройствах

Reading time2 min
Views15K
Сравнение PhoneGap vs. Titanium vs. Rhodes

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

Рассматриваемые в этой статье разработки все построены на web-технологиях и могут быть использованы web-разработчиками, которые хотят применить свой опыт в мире мобильных приложений.
Читать дальше →

Evercookie — самые устойчивые куки

Reading time1 min
Views75K
Samy Mamkar разработал систему, которая позволяет хранить куки в 8 местах, автоматически восстанавливая друг друга, и даже добиться того, чтобы куки, поставленное в одном браузере, действовало и в другом.

Удалить это куки практически невозможно! (Все возможно, конечно, но слишком много мороки)

Куки хранятся в:
  • HTTP Cookies;
  • Local Shared Objects (Flash);
  • Сохранение куки в значениях RGB автосгенерированных и форсированно кэшированных PNG с использованием HTML5 canvas;
  • Сохранение куки в Web History;
  • HTML5 Session Storage;
  • HTML5 Local Storage;
  • HTML5 Global Storage;
  • HTML5 Database Storage через SQLite.

При удалении из одного из этих мест кука автоматически восстанавливается из оставшихся. Работает даже если пользователь сменит браузер (через Local Shared Objects из Flash).

Описание (на английском) и демо: http://samy.pl/evercookie/.
Попробуйте удалить куки, почистить систему и зайти назад.



Как пользоваться?
Читать дальше →

extsrc.js — загружаем все скрипты асинхронно и уже после отрисовки страницы (даже с document.write)

Reading time4 min
Views21K
Хочу Вам рассказать о штуке, которую я изобрел сегодня, чтобы ускорить процесс загрузки сайтов. Все вы знаете, что <script src="..."></script> задерживает отрисовку страницы, пока не загрузится этот скрипт. Если их десятки — это может сереьезно замедлить работу сайта — в результате пользователь 20 секунд пялится на пустую (или недорисованную) страницу из-за какого-нибудь тупящего социального виджета (умножить на десяток этих виджетов).

Не правда ли было бы круто, если бы можно было сказать <script extsrc="..."></script> ("extsrc" = "грузи потом"), чтобы скрипты загружались после того как страница отрисована?

Все бы хорошо, но есть document.write… Сегодня я наконец решил его проблему — представляю extsrc.js — скрипт, который запустит все скрипты после отрисовки страницы (даже если они содержат document.write — и правильно отрисуется все).

Результат? Супер-быстрая загрузка страниц, даже если там море всяких внешних скриптов.

Использование:

Заменяем <script src="..."> на <script extsrc="...">.

Итого получается:

<script src="http://whiteposts.com/extsrc_js/extsrc.js"></script>
<script extsrc="..."></script>

все остальное под катом

Chromium 8 и обновление V8 Javascript Benchmark Suite

Reading time3 min
Views1.7K
Итак, пока пользователи разбираются Google Chrome 6, разработчики ковыряются в бета-версиях Google Chrome 7, The Chromium Authors выкатили на суд гиков Chromium 8. Новый график ускоренного выпуска версий браузера действует по полной программе, так что запутаться во всех 4 (5 с учётом Chromium) каналах обновления/тестирования можно запросто. Но появление 8 версии Chromium говорит о том, что очень скоро Google Chrome Stable 7 появится на компьютерах пользователей. И чудесным образом, несмотря на все крики Microsoft об аппаратном ускорении в Internet Explorer 9, Chrome окажется первым браузером из большой пятёрки со всеми этими чудо-плюшками, а не всякие альфа-бета-гамма-канарея-сборки от разных производителей. Теперь же о том, что можно приметить в разных каналах обновления и в Chromium 8.
Читать дальше →

Открытый конкурс для разработчиков Chrome Apps

Reading time3 min
Views944
image

Привет, Хабрасообщество!

Интерес к браузеру Google Chrome растет с каждым днем, счастливых пользователей становится все больше. Google развивает этот замечательный продукт так стремительно, что в Chrome 7 обещает увеличение скорости в 60 раз!

Однако Google Chrome — это не только милый и быстрый браузер, но еще и великолепная лаборатория для исследований и экспериментов. Уверен, многие видели невероятные возможности браузера в работе с HTML5 и Расширениями.

Недавно было объявлено о скором запуске Chrome Web Store для Chrome Apps.
Так как это тема новая, сообщество GTUG, при поддержке Google, проводит открытый конкурс по Chrome Apps. Основной информационный ресурс тут.
Читать дальше →

Рой дронов поднимет WiFi на месте катастрофы

Reading time2 min
Views4K
В работе служб МЧС и спасателей, которые устраняют последствия стихийного бедствия иди техногенной катастрофы критически важный фактор — надёжная связь. Но иногда катастрофы происходят в чрезвычайно удалённой местности, где работают только спутниковые телефоны. Как поднять нормальную сеть для всей группы?



Лаборатория саморегулирующихся систем в Политехническом институте Лозанны разработала проект SMAVNET (The Swarming Micro Air Vehicle Network), который должен решить эту проблему. Они предлагают использовать роевую сеть из десяти беспилотных летательных аппаратов, которые в считанные минуты организуют беспроводную сеть на обширной территории. Достаточно бросить их в воздух (видеосъёмка процесса развёртывания сети под хабракатом).
Читать дальше →

Интеграция сайта с Facebook через OpenGraph

Reading time4 min
Views13K
Facebook OpenGraphВыменивая у агрегаторов контента (поисковых машин, социальных сетей и прочих сервисов) «продовольствие» на пользовательский трафик, издатель постоянно задается вопросом: не станет ли агрегатор основным источником информации для моего пользователя? Потерять свою идентичность в общей каше медиа-ресурсов, отдать результаты производства бесплатно и ничего не получить взамен — риски, которые зачастую сдерживают медиа-менеджеров в решении о максимальной публичности и открытости.

В этом смысле анонсированная Facebook поддержка OpenGraph кажется несколько провокационной. Технология позволяет сайтам экспортировать в социальную сеть профили всех объектов, которые они освещают – персоны, локации, товары, организации, произведения искусства и т.д. Пользователь, подписавшись на любой из этих объектов, сможет получать информационные сообщения в NewsFeed, увидит эти объекты в своих интересах и результатах поиска. Facebook предоставил удивительные возможности, но в то же время заставил серьезно задуматься о дальнейшей судьбе stand-alone media.

Sports.ru оказался первым российским сайтом, который ввязался в эту авантюру =) Какую задачу мы решаем с помощью OpenGraph и с какими проблемами столкнулись — в продолжении статьи об интеграции медийного проекта c социальной сетью.
Читать дальше →

Dropbox: как мы выжили там, где другие прогорели?

Reading time2 min
Views1.9K
image
Данный перевод основывается на презентации Дрю Хьюстона (Drew Houston) – сооснователя и СЕО Dropbox. Поэтому, информация будет подаваться в виде ключевых тезисов, которые Дрю определил, как решающие для успеха стартапа.

Некоторые факты о том, как сейчас работает Дропбокс:
  • многомиллионная аудитория пользователей через 18 месяцев после старта;
  • нет затрат на рекламу;
  • большое число конкурентов;
  • основная часть работы проделана инженерами, которые в принципе, не очень опытны в вопросах маркетинга.
Читать дальше →

Классификация данных методом опорных векторов

Reading time4 min
Views152K
Добрый день!

В данной статье я хочу рассказать о проблеме классификации данных методом опорных векторов (Support Vector Machine, SVM). Такая классификация имеет довольно широкое применение: от распознавания образов или создания спам-фильтров до вычисления распределения горячих аллюминиевых частиц в ракетных выхлопах.

Сначала несколько слов об исходной задаче. Задача классификации состоит в определении к какому классу из, как минимум, двух изначально известных относится данный объект. Обычно таким объектом является вектор в n-мерном вещественном пространстве . Координаты вектора описывают отдельные аттрибуты объекта. Например, цвет c, заданный в модели RGB, является вектором в трехмерном пространстве: c=(red, green, blue).

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

Z-music — простой поисковик музыки

Reading time3 min
Views3.8K

«Величие искусства яснее всего проявляется в музыке.»
Иоганн Вольфганг Гете



Если поразмыслить над этим, то можно прийти к выводу, что все любят музыку, просто по разному: предпочитают различные направления, инструменты, мотивы. Поэтому порой найти что-то стоящее для себя очень трудно. Но все же эта проблема решаема.
Z-music.ru
Чтобы решить данную проблему, я посторался совместить простоту и функциональность, ничего лишнего и все в одном проекте.
Что же у меня есть для вас?
У меня есть Z-music.ru который является простым поисковиком музыки, просто поиск, ничего лишнего.

Что мы умеем ?

Information

Rating
Does not participate
Date of birth
Registered
Activity