Search
Write a publication
Pull to refresh
55
0
Белоусов Александр. @jarvis

Web-разработка и продукт-менеджмент

Send message

Список полезных инструментов для php разработчика

Reading time10 min
Views150K
PHP один из самых широко используемых языков для создания вебсайтов. PHP фреймворки, такие как Zend, CakePHP, CodeIgniter и т.д и open source классы и библиотеки упростили разработку.
Независимо от того, являетесь ли вы опытным разработчиком или новичком, инструменты, которые вы используете, имеют прямое влияние на вашу продуктивность. Здесь собран список действительно полезных утилит и расширений для PHP разработчиков, которые помогут ускорить разработку, и улучшит итоговое качество кода.
Читать дальше →

Подборка инструментов для эффективной frontend разработки

Reading time3 min
Views101K
В эту прекрасную пятницу осмелюсь предложить хабрасообществую небольшую подборку приложений, предназначенных для увеличения продуктивности во время работы с фронтэндом. Если ваш любимый апп здесь не представлен — добро пожаловать в комментарии!

Form Builder

image

Этот прекрасный генератор форм поможет вам в создании красивейших CSS логин-боксов и прочих input вещей, при минимальных временных затратах. Помимо форм на сайте этого проекта можно создавать и другие не менее красивые CSS элементы, в том числе кнопки и ленты.
еще 24 ссылки

Элементарные социальные share-кнопки

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

Подборка сервисов для расширения возможностей вашего Dropbox

Reading time1 min
Views80K
Сервис Dropbox любим многими хабровчанами, поэтому предагаю вашему вниманию подборку полезностей для работы с этим облачным сервисом.

Backup Box умеет синхронизировать разные облачные сервисы, а также делать бэкапы сайтов (FTP и MySQL).

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

Изучение Node.js от начала до конца на практике. Часть 1

Reading time14 min
Views93K

Предыстория


Различной документации по Node.js его модулях огромное количество, всякого рода готовых решений тоже хватает, но начав писать сайт сталкиваешься с проблемой: «А с чего начать?». Хочу вам рассказать свой опыт изучения Node.js на практике. Задача стоит довольно простая и понятная — GPS Трекер с интернет сервисом, отображающим наши передатчики на карте, рисующим маршрут перемещения и т.д., на сколько разгуляется фантазия. Проект не коммерческий и пишется во благо человечества для себя.
Читать дальше →

Мой подход к проектированию веб-сайтов

Reading time4 min
Views42K

Прелюдия


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

В рамках данной статьи я поделюсь своим опытом проектирования сайтов средней сложности. Данный подход зарекомендовал себя понятным как разработчикам, так и клиентам. Я не собираюсь открывать Америку, представленные ниже инструменты всем прекрасно знакомы. Суть данной статьи как раз в том, что бы продемонстрировать насколько просто можно представить достаточно сложные задачи.

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

NewSQL — новый виток в эволюции BigData, забираем лучшее из SQL и NoSQL

Reading time4 min
Views22K

NewSQL


Начало

Сегодня очень легко наблюдать стремительный рост данных в интернете. Согласно одной оценке, данные, созданные в 2010, составляют приблизительно 1,200 ЭБ (1018 байт) и вырастут почти к 8,000 ЭБ к 2015 в Интернете, являющимся основным поставщиком данных к потребителю.

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

Пока программисты всего мира устраивают глобальные Holywars на тему: «SQL vs NoSQL», крупные компании, такие как Google и Facebook со своей миллиардной аудиторией всеми силами борются с нехваткой мощностей и предельными работами СУБД. Несмотря на появление новой технологии NoSQL, которая позволяла легко масштабировать данные, она так и не решила вопросы связанные с соответствием операций требованиям ACID (atomicity, consistency, isolation, durability — «атомарность, непротиворечивость, изолированность, долговечность») — стандарта, который гарантирует точность выполнения оперативных транзакций средствами СУБД, даже если работа системы прерывалась. На фоне всего этого компания VoltDB при поддержке нескольких других компаний, начали разрабатывать с чистого листа новый opensource проект под название NewSQL, сочетающий в себе лучшие стороны SQL и NoSQL.
Читать дальше →

Что нужно знать о продвижении мобильных приложений в iOS 6

Reading time2 min
Views9.1K
Переход на iOS 6, как и выпуск iPhone 5, не совершил революции (разве что с помощью приложения Будильник), а, скорее, стал логичным шагом для развития App Store. Задача усложнилась как для разработчиков приложений, так и для рекламистов. Но когда отпадают одни инструменты, стоит побыстрее искать замену для них.В этой заметке я хочу кратко пройтись по изменениям в App Store и поделиться работающими рекомендациями по продвижению мобильных приложений.

image

Cогласно http://www.insidemobileapps.com в октябре 2012 года для попадания бесплатого приложения в Top 100 нужны 13 000 закачки в день. Условие попадания в Топ 10 – 54 000 закачки в день. Эта цифра ниже прежней благодаря массовой чистке ботов, но она довольно высока в любом случае (и, повторюсь, боты уже не выручат). Вместо того, чтоб тратить отсутствующие деньги на дорогую промо кампанию, стоит заставить ваше приложение появляться в поиске по первому запросу ключевых слов и радовать потребителя высоким качеством продукта.

Новый App Store заточен под дизайн. Запрос поисковика выдает пользователю несколько приложений, представленных названием, иконкой, звездочками ревью и первым скриншптом. Да, именно по этим параметрам юзер и выберет то, что он захочет скачать.

При выборе названия не останавливайтесь на “бренде” – нераскрученном словосочетании, потому, что оно ничего не скажет потребителю. Будьте лаконичны, понятны и интригующи.

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

Онлайн-курсы на русском языке

Reading time3 min
Views50K


Предыстория


Здравствуйте! Меня зовут Рахим, я учился по программе Computer Science (B.Sc) в университете Карлтон и писал об этом на Хабре пару лет назад в рамках проекта Computer Science Studentпрофиле можно найти все выпуски). Потом здесь же я нашел множество людей, заинтересованных в создании коллективного блога о математике и информатике. Тогда даже написал в комментариях:

Если я когда-нибудь стану профессором (а я надеюсь им стать), то я хочу в начале каждого курса писать на доске адрес этого коллективного блога и говорить: «Присоединяйтесь. Коллективный разум поможет познать вам информатику».

К сожалению, блог через некоторое время перестал обновляться, активность упала до минимума. Я закончил университет и первый год работал разработчиком, но в январе 2012 приблизился немного к реализации того комментария: стал преподавателем Международного университета информационных технологий (IITU) в южной столице Казахстана. В своем первом семестре читал лекции по операционным системам и веб-разработке, иногда проводил открытые лекции, изредка публиковал что-то на хабре. Но «hexlet.ru» на доске не писал.

Этой осенью Хекслет превратился из коллективного блога в свободную образовательную платформу. Суть проста: можно стать студентом и проходить разные курсы, можно стать учителем и вести собственные курсы. Формат схож с форматами Coursera или Udacity. 23 октября начинается первый онлайн-курс – Разработка приложений для Mac OS X.
Читать дальше →

Оптимизируем производительность JavaScript для V8

Reading time6 min
Views28K

Предисловие


Дэниел Клиффорд сделал на Google I/O прекрасный доклад, посвященный особенностям оптимизации кода JavaSсript для движка V8. Дэниел призвал нас стремиться к большей скорости, тщательно анализировать отличия между С++ и JavaScript, и писать код, помня о том, как работает интерпретатор. Я собрал в этой статье резюме самых главных моментов выступления Дэниела, и буду обновлять её по мере того, как движок будет меняться.
Читать дальше →

Node.js + Chromium = node-webkit: ещё более перспективный вариант второго шага эволюции веборазработчика

Reading time3 min
Views48K
Предисловие от переводчика.  В постскриптуме к моей вчерашней блогозаписи я указал, что AppJS — это не единственное такое средство, которое позволяет создавать приложения с GUI (графическим интерфейсом пользователя) при помощи вебоподобных методов разработки на языках HTML, CSS и JavaScript с использованием движка Node.js. Естественной иллюстрацией к этому постскриптуму является нижеследующий перевод гитхабовской страницы проекта node-webkit. И сразу скажу: я предвижу заранее, что непредвзятый взгляд ваш сочтёт node-webkit ещё более удобным и развитым средством, чем AppJS.



Введение


node-webkit — среда для запуска приложений, основанная на Chromium и Node.js. При помощи node-webkit можно создавать традиционные графические приложения посредством HTML и JavaScript. Также node-webkit позволяет вызывать модули Node.js прямо из DOM и тем обеспечивает новый способ создания таких приложений и употребления веботехнологий в них.

node-webkit создан и разрабатывается в Интеловском Центре технологий с открытым исходным кодом (Intel Open Source Technology Center).

Введение в node-webkit (слайды).

Достоинства


  • Приложения создаются при помощи современных HTML5, CSS3, JS и WebGL.
     
  • Полная поддержка API Node.js и созданных другими разработчиками модулей.
     
  • Вызов API Node.js без потерь в производительности.
     
  • Лёгкость упаковки и распространения приложений.

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

Pictonic — необычный иконочный шрифт

Reading time1 min
Views30K

В последнее время появилось множество иконочных шрифтов для нужд веб-дизайнеров, но такой как Pictonic я вижу впервые. Это «логотипный» иконочный шрифт, где собрано более 220 логотипов известных сервисов, браузеров, операционных систем, языков программирования и т.д. Среди символов конечно нет русскоязычных сервисов.
Читать дальше →

Понимание ООП в JavaScript [Часть 1]

Reading time16 min
Views339K
— Прототипное наследование — это прекрасно
JavaScript — это объектно-ориентированный (ОО) язык, уходящий корнями в язык Self, несмотря на то, что внешне он выглядит как Java. Это обстоятельство делает язык действительно мощным благодаря некоторым приятным особенностям.

Одна из таких особенностей — это реализация прототипного наследования. Этот простой концепт является гибким и мощным. Он позволяет сделать наследование и поведение сущностями первого класса, также как и функции являются объектами первого класса в функциональных языках (включая JavaScript).

К счастью, в ECMAScript 5 появилось множество вещей, которые позволили поставить язык на правильный путь (некоторые из них раскрыты в этой статье). Также будет рассказано о недостатках дизайна JavaScript и будет произведено небольшое сравнение с классической моделью прототипного ОО (включая его достоинства и недостатки).
Читать дальше →

Жизненный цикл ViewController в iOS6

Reading time4 min
Views9K
Некоторые из вас, возможно, заметили, что viewControllers больше не запрашивают viewWillUnload и viewDidUnload в iOS6. Это происходит потому, что контроллеры больше не выгружают свои представления (view) автоматически.
Ваша первая мысль может быть «Окей, как я могу вручную выгрузить мое представление при предупреждении о недостатке памяти (low memory warning)? Это выглядит, как шаг назад.»
Затем вы ищите ответы и пишите что-то вроде:

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    if([self isViewLoaded] && ![[self view] window]) {
        [self setView:nil];
    }
}

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

Дайджест интересных новостей и материалов из мира PHP за последние две недели №1 (21.09.2012 — 05.10.2012)

Reading time4 min
Views19K


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

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

Приятного чтения!
Читать дальше →

Новое для веб-дизайнера за сентябрь 2012

Reading time1 min
Views68K
Сделал небольшую подборку новых полезных материалов для веб-дизайнеров за сентябрь 2012. Надеюсь, будет полезна хабровчанам.

Полезные сервисы


Easel.io — отличный сервис для прототипирования прямо в браузере.

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

MongoDB для разработчиков

Reading time3 min
Views38K
Всемирно известная компания 10gen, разрабатывающая опенсорсную базу данных MongoDB, представляет уникальный курс по MongoDB для разработчиков. Вы научитесь всему необходимому для создания вашего приложения на основе MongoDB. Курс позволит вам овладеть навыками установки, работы с JSON, созданием схем, запросов, сохранения данных, индексации и работы с языковыми драйверами. В процессе курса вы будете строить платформу для блога, основанного на MongoDB.
Shut up, and take my money!

Стабилизируем PHP на бою — что и почему «роняет» веб-сервер

Reading time7 min
Views81K
Вы отвечаете за стабильность работы веб-проекта на PHP. Нагрузка постоянно растет, добавляются фичи, клиенты довольны. В один прекрасный день начинают появляться загадочные ошибки…

Ошибки серверного софта


… которые программисты не знают как исправить, т.к. «ломается» серверный софт, например связка apache-PHP — а клиент получает в ответ на запрос страницу о регламентных работах. Веб-разработчик часто не обладает глубокими знаниями в программировании на C в unix/linux, а сисадмин нередко, к сожалению, глубже bash в систему не погружается. Настоящий хардкор :-)

Нестабильная работа серверных скриптов


Нередко, определенные страницы веб-проекта начинают сходить с ума. Например выполняться по 15 минут и выяснить, чем же они занимаются, непросто. В прошлом посте на данную тему я описал одну из методик определения, чем занимается PHP-скрипт на боевом сервере, но чувствуется, что нужен более мощный инструмент.

На практике я часто встречаю проекты, которые сталкиваются с подобным классом ошибок «серверного софта», и в команде не всегда знают, что делать. В логе apache часто появляются сообщения о нарушении сегментации (segmentation fault), клиенты получают страницу об ошибке, а веб-разработчик с сисадмином ломают себе голову, играются с разными версиями PHP/apache/прекомпилятора, собирают PHP из исходников с разными опциями снова и снова, пишут о багах, а им доказывают, что это баги не PHP, а их кода и так до бесконечности…

В статье я хочу рассказать как можно просто и быстро найти причину, почему PHP рассыпался на боевом сервере и устранить ее — не погружаясь в прекрасный мир системного программирования на C для unix :-) От вас потребуется желание и одна чашечка кофе.

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

Установка node.js на VPS

Reading time2 min
Views21K
В этой статье я расскажу, какие проблемы прийдется решить, чтобы получить VPS с реально работающим node.js сервисом. Это все элементарные вещи, но, может быть, кому-нибудь еще пригодится.

Установка node


Проблема: в репозитории может не оказаться пакета для нужной версии node. Как вариант, у вас может быть два проекта, требующих разные версии node.
Решение: на девелоперских машинах в таких случаях используют nvm. На боевом сервере его тоже можно запросто использовать, просто прийдется написать специальный скрипт для запуска своего сервера.
Читать дальше →

Information

Rating
Does not participate
Location
Петрозаводск, Карелия, Россия
Registered
Activity