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

SRE

Send message

Теория относительности в реальном мире: GPS

Reading time4 min
Views140K


Люди часто спрашивают меня: «Чем же так хороша теория относительности?». Обычно о ней думают как о некой абстрактной, мистической математической теории, никак не связанной с повседневной жизнью. На самом деле, это совсем не так.
Читать дальше →

Интервью с Максимом Коробцевым о геймификации для управления командой (аудио)

Reading time1 min
Views1.5K
maxim_korobtsev любезно согласился поговорить в микрофон о геймификации. Мы обсуждаем:

  • Что такое геймификация
  • Зачем она нужна
  • Как ее применять для решения задач управления командой
  • Опыт успешного применения геймификации в Одноклассниках


Скачать mp3

Несколько интересностей и полезностей для веб-разработчика #20

Reading time3 min
Views45K
Доброго времени суток, уважаемые хабравчане. За последнее время я увидел несколько интересных и полезных инструментов/библиотек/событий, которыми хочу поделиться с Хабром.

Awesome Sysadmin


Мега популярный репозиторий на GitHub, который за несколько дней собрал более 4000 звезд. Это огромной живой список всех самых полезных инструментов с открытым исходным кодом для сисадмина по категориям: Backups, Cloning, Cloud Computing, Cloud Orchestration, Cloud Storage, Collaborative Software, Distributed Filesystems, DNS, VPN и др. Автор проекта упомянул также Awesome PHP, по образу и подобию которого он опубликовал свой список.

NodeBB



Многие уже из названия поняли, что это форум-движок на NodeJS и на самом деле это очень крутой проект. Я бы даже сказал, что это в какой то мере переосмысление сложившегося представления о форумах. Ну сколько уже времени прошло с тех пор… Сколько социальных сетей появилось и «социальности» в целом, сколько рассуждений о дизайне с интуитивно понятным UI и продуманным UX, сколько стремления разработчиков превратить веб в «среду для приложений», где все быстро и асинхронно словно нативный софт.

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




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

OpenUI5 – новый javascript фреймворк от SAP

Reading time3 min
Views51K


Недавно произошло событие, которое незаслуженно осталось без внимания на Хабре. Компания SAP прислушалась к просьбам разработчиков и открыла код своего коммерческого фреймворка для создания веб приложений. Хотелось бы исправить это досадное упущение.
Читать дальше →

Подборка полезных CSS рецептов, или чем мы занимаемся на голых пятницах

Reading time2 min
Views93K


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

Итак, представляем вашему вниманию сборку интересных и (надеемся) малоизвестных HTML и CSS-рецептов. Будем рады, если каждый из вас узнает что-то новое!
Вперед!

Подробное сравнение популярных SMS/Voice сервисов для рассылок и авторизаций

Reading time3 min
Views74K


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

Как я возил робота, чуть не поседел и залил кровью серверную

Reading time13 min
Views213K
Это история одного из самых запомнившихся случаев в моей инженерной практике. По понятным причинам я поменял имена, места и некоторые узнаваемые детали, чтобы нельзя было точно определить заказчика и других участников истории.


Вот так выглядит ленточное хранилище (наше было поменьше) и библиотечный робот (наш такой же). Китаец в комплект не входит.

Часть 1. Коробка


Помню, стояли последние дни ноября. Уже думая об окончании рабочего дня, я планировал свой вечер, когда вдруг мне сообщили, что в славном сибирском городе N у нашего заказчика сломалась ленточная библиотека. Запчасть сразу же отправили транспортной компанией, но вот уже 3 дня, как она все еще была в пути. Транспортная компания невнятно объяснялась и хмыкала в телефон, а заказчик стал не в шутку нервничать. Прогнозы были неопределенные, поэтому было принято решение везти еще одну запчасть своими силами на самолете. Сотрудник склада вручил мне габаритную коробку весом килограмм десять, обклеенную штрих-кодами и стикерами, и радостно хлопнул меня по плечу со словами: «Только не вздумай в багаж сдавать — помнут».

Коробка меня, безусловно, беспокоила, но не меньшее беспокойство мне внушал пакет с сухим молоком, который в последний момент мне вручил менеджер проекта. «У них там какие-то траблы с молочкой сейчас… из-за непогоды что ли… ребята местные просили 2 кг им привезти. Тебе ж не сложно?» — сказал он. По выражению его лица и характерному жесту ладони, как бы прикрывавшей мне рот, было ясно, как он сейчас хотел, чтобы я оказался сговорчивым или даже немым.
Читать дальше →

Интеграция GoogleDocs с Redmine

Reading time8 min
Views22K

Введение


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

— Отслеживание состояния задач
— Группировка задач в трекере
— Внутрипроектное обсуждение при необходимости
— Ведение документации (хоть и возможности весьма ограничены)
— Учет времени сотрудников и видов их деятельности

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

Крик опыта неудач

Reading time3 min
Views130K
Я написал такой пост, которые обычно сам не читаю. Нет времени. В голове много идей, и не знаю какую реализовать в первую очередь. Некогда читать не техническую информацию.

Это не success-story, а какой-то «way of the failures» человека, который хочет создать что-то свое, что-то классное и полезное для многих, быть честным, свободным и работать на самого себя. Если это про вас, то прошу вас, прочитайте этот пост и не наступайте на мои грабли. Уделите 10 минут. Я постараюсь говорить коротко и по существу.
Читать дальше →

Приглашаем на Moscow JavaScript Meetup 26 июня

Reading time2 min
Views6.2K
26 июня 2014, в четверг, в Москве пройдёт 12-я встреча javascript-разработчиков MoscowJS.



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

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

Темы запланированных выступлений:


Антон Белоусов, основатель и CEO Tai.st, выступит с докладом Аддоны для облачных веб-приложений: взгляд разработчика

Чем полезны аддоны для пользователей и самих облачных продуктов? Какие существуют технологии и подходы к их созданию? Будет подробный рассказ о пользе аддонов при разработке облачных приложений, а также при использовании уже готовых проектов, — например, Asana, Trello, Gmail и других.
Читать дальше →

«Человек на острие ножа» — Джон Кармак, вехи достижений и вклад в игровую индустрию

Reading time29 min
Views70K


Фигура Джона Кармака в индустрии компьютерных игр (далее по тексту КИ) неоднозначна. Существует большое количество слухов и скандалов, связанных с его именем. Многие считают его неприятным человеком, и многие также считают его гением. Эти два свойства, кстати, не взаимоисключающи. Можно быть не самым приятным в общении человеком, но при этом делать удивительные вещи. В этой публикации мы не рассматриваем все заслуги Джона перед КИ, не обсуждаем его прения с членами команды, и не стараемся раскопать наибольшее количество скандалов. Даже историю Id Software затрагиваем не полностью, лишь вскользь касаясь пройденных Джоном вех.

Любой разработчик со стажем и любой отдавший всю свою жизнь индустрии может быть предметом глубоких исследований, множества публикаций, и даже книг. Однако все понимают, надеюсь, как много нужно времени, чтобы собрать всю эту информацию воедино, проверить и сопоставить факты, связаться с фигурантами, выработать четкую стратегию изложения. Чем больше проходит времени, тем плотнее пелена истории покрывает удаляющиеся от нас годы, откуда можно было бы извлечь знание. Одно дело если ты был очевидцем его, если читатель (или писатель) представляет старый пласт игроков и пласт людей интересующихся. Совсем другое дело если с материалом знакомятся люди, которые вообще не знакомы с играми Wolf3D, Doom, Quake и кому наборы букв IDDQD и IDKFA ничего не говорят. Как рассказать все и не утомить читателя? Как сосредоточиться на главном? Как не потратить недели и месяцы на публикацию казалось бы ненужной статьи?

Ответ прост. Выбрать то главное, что нужно донести до читателя. Выбрать стержень. Первопричину. То, что побудило написать эти строки. И я точно знаю, чего хочу в данный момент. Рассказать о том, почему я считаю Джона — человеком на острие ножа. Человеком авангарда. Рисковым экспериментатором и первопроходцем.


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

Стартап шаг за шагом: будущее онлайн-образования

Reading time5 min
Views37K


Всем привет!

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

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

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

Безопасность покупателя в рознице: что надо знать лично вам

Reading time6 min
Views253K


Ценник должен быть с печатью или подписью. Он является документом и обязательно должен быть на товаре. Если вы видите что-то с ценником (неважно, где и как оно стоит), вы имеете право купить его по цене на нём.

Пример: вам говорят, что товар по акции кончился. Вы видите один в витрине в герметичном ящике под потолком, но с ценником. Вам не имеют права отказать в его продаже.

Второй пример: когда обновляются цены, в торговом зале может остаться ценник со старой ценой ниже. Цена в базе другая? Ну и что, вот ваш же документ. Если же вдруг ценник без печати-подписи, и на таком товаре нет правильного ценника — регистрируйте нарушение. Ценники обязательно должны быть хотя бы на одном товаре из пачки.
Читать дальше →

Django на production. uWSGI + nginx. Подробное руководство

Reading time7 min
Views225K
Перед вами руководство по настройке production окружения для Django. Здесь будут описаны необходимые шаги по настройке Django, uWSGI и nginx. Руководство охватывает все три компонента — полный стек серверного ПО для веб-приложений.

Подразумевается, что вы используете Unix-подобную операционную систему и менеджер пакетов, эквивалентный aptitude. Найти эквивалент aptitude почти для любой операционной системы, в том числе и для Mac OS X, для вас не составит никакого труда.

Руководство написно для версий Django 1.4 или выше. Если вы используете более раннюю версию, то вам придется самостоятельно найти wsgi модуль для нее. Также вы заметите, что файловая структура проекта будет немного отличаться от представленной здесь.

Общая идея


Веб-сервер может по запросу отдавать пользователям файлы из своей файловой системы, однако он не может напрямую работать с Djangо приложениями. Веб-серверу нужен интерфейс, который будет запускать Django приложение, передавать ему запрос от пользователя и возвращать ответ.

Для выполнения этих задач был разработан Web Server Gateway Interface — WSGI — стандарт взаимодействия Python программ и веб-сервра.

uWSGI — одна из реализаций WSGI. В этом руководстве мы установим и настроим uWSGI для создания Unix сокета и взаимодействия с веб-сервером по протоколу WSGI.
Читать дальше →

Разработка iOS8 приложения на Apple Swift

Reading time6 min
Views62K
Статья является своеобразным продолжением статьи «Знакомьтесь, Swift!» за авторством Helecta, а также вольным переводом статьи Developing iOS Apps Using Swift Tutorial Part 2.



Итак, в первой статье мы написали простое Single View приложение, включающее таблицу с несколькими ячейками.
На этот раз мы немного углубимся и сделаем несколько более амбициозных вещей. Мы будем обращаться к API поиска iTunes, парсить ответ, полученный в JSON и отображать результаты в Table View.
На первый взгляд может показаться, что все это довольно сложно и предстоит много работы, но на самом деле это не так. Все описанное выше является достаточно простым функционалом для iOS приложений и каждый уважающий себя iOS разработчик должен это уметь.
Читать дальше →

Как устроена Википедия (часть 1)

Reading time8 min
Views63K
Привет, Хабр!



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

Первый пост я решил посвятить самому Фонду Викимедиа, который управляет серверами Википедии и занимается развитием движения Викимедиа в мире.
Читать дальше →

Хочешь жить — умей вертеться. История компании CDNvideo

Reading time8 min
Views19K
В основе любой работы должны лежать принципы. Мы с самого начала используем «принципы успеха» основателя Panasonic Коносуке Мацусита из одноименной книги. Его взгляд отличается от всего, чему учат западные бизнес-гуру, и мне кажется, что у нас в России работают именно советы знаменитого японца.

Главное, чему учит Мацусита — все возможности для бизнеса можно найти прямо у себя под носом. Надо найти инвесторов и клиентов для нового бизнеса? Поспрашивай у своих друзей в «Одноклассниках». Нужно сделать выбор — государственный грант или частные инвестиции? Нет проблем, возьми и то, и другое. Не успел собрать денег на старт бизнеса? Ничего страшного, поработай на более удачливых конкурентов — пережди кризис.
Читать дальше →

Разворачиваем сервис построения маршрутов OSRM

Reading time4 min
Views62K
Совсем недавно, в одном из проектов, нам была поставлена задача — научиться строить маршруты на карте для велосипедных прогулок.

Первым делом, мы начали смотреть маршруты Google и Яндекс. И к сожалению, пришлось от них отказаться, т.к. первые разрешали показывать их только на родных картах, вторые, не знали что есть велосипеды и даже пешеходы.

Немного изучив предметную область, мы нашли наконец что искали: Open Source Routing Machine. Проект, с открытым исходным кодом, который позволяет развернуть у себя на сервере, свой собственный сервис построения маршрутов.



Тайлы: MapBox, Яндекс-Карты
Картографические данные: участники OpenStreetMap

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

YARG — open-source библиотека для генерации отчётов

Reading time11 min
Views36K
Практически каждый разработчик, создающий информационные системы, сталкивается с необходимостью формирования различных отчетов и печатных форм. Это характерно и для большинства приложений разработанных на нашей платформе. Например, в системе, над которой я работаю в настоящее время, их 264. Для того чтобы не писать каждый раз логику формирования отчетов с нуля, мы разработали специальную библиотеку (под катом будет объяснено, почему нам не подошли существующие). Называется она YARG — Yet Another Report Generator.
YARG позволяет:
  • Генерировать отчет в формате шаблона или конвертировать результат в PDF;
  • Создавать шаблоны отчетов в привычных и распространенных форматах: DOC, ODT, XLS, DOCX,XLSX, HTML;
  • Создавать сложные XLS и XLSX шаблоны: с вложенными областями данных, графиками, формулами и т.д.;
  • Использовать в отчетах изображения и HTML-разметку;
  • Хранить структуру отчетов в формате XML;
  • Запускать standalone приложение для генерации отчетов, что делает возможным использование библиотеки вне Java-экосистемы (например для генерации отчетов в PHP);
  • Интегрироваться с IoC-фреймворками (Spring, Guice).

Эта библиотека используется в платформе CUBA в качестве основы для движка отчетов. Мы развиваем ее с 2010 года, но совсем недавно решили сделать ее открытой, и выложили ее код на GitHub с лицензией Apache 2.0.
Данная статья призвана привлечь к ней внимание сообщества.

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

Profishop – решение для приема заказов от оптовых клиентов

Reading time3 min
Views4.5K
Приветствую вас, уважаемые Хабравчане! В этом посте я хотел бы рассказать о своем проекте Profishop.us – это готовое решение для приема заказов от оптовых клиентов. Прежде всего хотелось бы обратить внимание на пользу и актуальность идеи этого проекта. Если вы дистрибьютор и продаете какие-либо товары оптом, то именно для вас создан этот сервис. Сейчас большинство оптовых торговцев принимают заказы по старинке в обычных Excel файлах, по телефону или, максимум, через стандартный интернет-магазин на Битрикс или другом популярном движке, что влечет за собой массу неудобств. Мы создали удобный интерфейс, который интегрируется с базой 1С продавца, т.е. те заказы, которые будут делать покупатели в своем личном кабинете, мгновенно появляются в базе 1С продавца. Личный кабинет оптимизирован именно под оптовые закупки и лишен тех недостатков, с которыми сталкиваются оптовики при работе на традиционных движках магазинов или вручную. Хотелось бы заметить, что у каждого дистрибьютора отдельный адрес его магазина, в котором представлены только его товары.
Читать дальше →

Information

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