Как стать автором
Обновить
0
0
Александр Ганский @gandi

Пользователь

Отправить сообщение

Tesla Motors огласила план европейской экспансии

Время на прочтение1 мин
Количество просмотров95K


В преддверии Женевского автосалона американская компания Tesla Motors огласила план широкомасштабного расширения бизнеса в Европе.

Tesla намерена открыть более 30 сервисных центров и автосалонов на континенте. Кроме того, компания будет продолжать расширение сети электрозаправочных станций Supercharger. Сейчас таких станций всего 14, из них 11 расположены в Германии и Норвегии. К концу 2014 года Tesla обещает увеличить их количество в несколько раз и расширить «зону доступности» почти на всю территорию Западной Европы.
Читать дальше →
Всего голосов 68: ↑63 и ↓5+58
Комментарии115

ВКонтакте раскрыла свою статистику

Время на прочтение1 мин
Количество просмотров137K
11 сентября сайт vk.com переходит с TNS на LiveInternet и ComScore, а также раскрывает свою статистику посещений, которую можно посмотреть тут. Из этой статистики мне показалось интересным статистика по браузерам, OC и разрешениям экранов.

Читать дальше →
Всего голосов 78: ↑72 и ↓6+66
Комментарии211

GodMode in Backyard Monsters или «А как вы обмениваетесь данными с приложением»

Время на прочтение3 мин
Количество просмотров11K
Публикация со слов знакомого.

Однажды меня пригласили поиграть в игру Backyard Monsters на Google+. Игра не плохая, в интернетах пишут что это чуть ли не #1 игра в соцсетях. Играл я себе играл, и однажды (как любому программисту) стало скучно играться дальше. Долгие ожидания выполнения заданий, высокая стоимость действий (апгрейды, захват новых баз) превратили игру в некое подобие фермы — зашел, «собрал урожай» (пофармил нубов, неписей), поставил апаться какой нибудь домик на много часов (некоторые по неделе и больше апгрейдятся). Возникла мысль о написании бота. Тут и начались удивления от ДЫРЫ в безопасности.
Как стать богом
Всего голосов 21: ↑20 и ↓1+19
Комментарии5

Плакаты на IT тематику

Время на прочтение1 мин
Количество просмотров29K
Почитывая «Банду четырех», всё чаще думаю как хорошо было бы иметь отдельный плакат на стену в офисе, резюмирующий и объясняющий шаблоны проектирования. Как здорово было бы не держать все их в голове, а имея проблему, взглянуть и найти подходящее решение. Но найти подходящий постер оказалось не так то просто, да и тот оказался не идеальным.
Читать дальше →
Всего голосов 69: ↑57 и ↓12+45
Комментарии38

Проектирование и реализация функционала: протоптанные тропинки и проложенные дорожки

Время на прочтение3 мин
Количество просмотров2.3K
Хочу начать с описания одного случая:

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

Задумайтесь и вспомните, сколько раз вы видели по-идиотски проложенные дорожки и тропинки, которые люди протаптывают в обход, как им удобно.

Почему так происходит? Потому что некоторые плохие проектировщики просто не в состоянии предсказать потребности людей. И потому что некоторые потребности вообще очень сложно предсказать даже хорошим проектировщикам.

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

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

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

Пример, как действовать согласно описанному подходу:

Оффтоп в блогах и форумах
Читать дальше →
Всего голосов 15: ↑14 и ↓1+13
Комментарии6

Руководство для маленьких, или как Василий Бубликов стал начальником

Время на прочтение6 мин
Количество просмотров5.6K
Что из себя представляет руководство на самом деле, или каким оно должно быть?
К сожалению в наших реалиях хороший руководитель — большая редкость. Возможно, некоторые мысли помогут некоторым «свежеиспеченным» руководителям не наступить на старые ржавые грабли. Тем кто не связан с руководством — поможет понять в чем заключается работа руководителя. А, умудренные руководящим опытом, я надеюсь, выскажутся в комментариях, и поделятся своим опытом.

В этой статье не пойдет речи об организации процессов. Здесь будет затронута только тематика рабочих взаимоотношений.
Читать дальше →
Всего голосов 60: ↑51 и ↓9+42
Комментарии81

Мужская психология в программировании

Время на прочтение3 мин
Количество просмотров7.6K
image
В программировании занято гораздо больше мужчин, чем женщин. С этим фактом не поспоришь, поэтому любому руководителю необходимо учитывать психологию мужчин в программировании.

Обратимся к древним временам, когда мужчина охотился на мамонтов, а женщины сидели дома, рожали детей и готовили еду. Чтобы охотиться, мужчина очень долго готовился, точил топор, готовил стрелы и лук. Потом он долго сидел в засаде и наконец делал выстрел или наносил удар. Эта особенность поведения трансформировалась и дожила до наших дней. Мужчину отличает способность к повышенной концентрации на выполняемой работе. Это большой плюс и большой минус. В отличие от женщины мужчина не может выполнять несколько дел одновременно.
Читать дальше →
Всего голосов 244: ↑176 и ↓68+108
Комментарии117

Программирование для начинающих: как стартовать и куда двигаться?

Время на прочтение2 мин
Количество просмотров389K
Бывает, что человек, совсем не связанный с IT, проникается интригующей красотой этой сферы и ставит себе задачу постепенно освоить программирование с нуля. И тут он зачастую просто теряется, не понимая, с чего начать, и нуждаясь в хорошем фундаменте и системном подходе.

Я, будучи недавно в такой же ситуации, гуглила, искала мануалов на Хабре (кое-что нашла: Десять советов начинающим программистам, Начинающему программисту про стартапы и не только…), но в итоге всё же была вынуждена обратиться за советом к одному хорошему человеку, который составил для меня вот такой план. С разрешения этого человека размещаю данный план на Хабре – вдруг он пригодится и кому-то ещё. (Тем более, что перечисленные книги относятся к «золотому фонду» литературы в данной сфере и проверены временем.)

UPD: Новичкам советую обратить внимание на комментарии — там активно и аргументированно корректируется этот план.

Читать дальше →
Всего голосов 90: ↑58 и ↓32+26
Комментарии106

Symfony2 Dependency Injection в разрезе

Время на прочтение7 мин
Количество просмотров33K
Из статьи можно узнать как стартует и работает приложение Symfony2. Мне бы хотелось продолжить цикл статей про этот современный фреймворк и уделить более пристальное внимание такому компоненту как Dependency Injection (DI — внедрение зависимости) так же известный как Service Container.
Читать дальше →
Всего голосов 28: ↑27 и ↓1+26
Комментарии14

Приложение Symfony2 в разрезе

Время на прочтение6 мин
Количество просмотров24K
Наблюдая открыв рот за виртуозным фокусником и его красивыми помощницами, многие, однако, сосредоточенны совсем на другом: как он это делает? как там все устроенно внутри?


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

Эта статья — попытка разобраться, как происходит инициализация приложения и что же такое «Ядро Symfony2».
Посмотреть что внутри
Всего голосов 88: ↑80 и ↓8+72
Комментарии21

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

Время на прочтение4 мин
Количество просмотров36K

Landing page — достаточно важная часть маркетинговой компании, с ее помощью потенциальный клиент узнает о вашем продукте. Поэтому мы решили поделиться статьей Peep Laja о том, почему к продающим страницам относятся критически, и над какими составляющими надо поработать, чтобы создать эффективную landing page. Ниже — первая часть статьи, в которой автор размышляет о причинах создания неудачных лендингов и приводит их примеры. Статья написана от первого лица. Для сравнения мы подобрали также пару примеров качественных лендингов.

А был ли лендинг?

Вы ведь сталкивались с длинными продающими страницами? Да, на них все подробно расписано, однако в большинстве случаев их эффективность оставляет желать лучшего: низкое качество исполнения лишает эти страницы привлекательности для целевой аудитории.
Читать дальше →
Всего голосов 36: ↑23 и ↓13+10
Комментарии13

Материальное стимулирование программистов. Грабли, пряники и плети

Время на прочтение6 мин
Количество просмотров72K


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

Поэтому, в первой части предлагаю сделать легкое лирическое отступление.
Читать дальше →
Всего голосов 98: ↑65 и ↓33+32
Комментарии175

Scrum — как эффективно работать без project-менеджера

Время на прочтение22 мин
Количество просмотров94K

Вместо введения


За последние 3 года работы мне довелось работать в самых различных ипостасях: исследователем, разработчиком и руководителем проектов. Есть различные стили управления: западный (когда предоставляется большая свобода в коллективе и многое построено на доверии, уважении, личной организованности отдельного индивидуума) и восточный (когда штрафуется каждое опоздание, жестко фиксируются сроки, во главе угла стоит железная дисциплина коллектива и если человек не справился с поставленными целями — наступает расставание). Руководитель проекта должен сочетать в себе два этих элемента: яблоко и кнут, подпускать людей к себе, чтобы разработчики вам доверяли, но и соблюдать субординацию, так как отношение-отношениями, а нацеленность на результат должна быть всегда.

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

Для удобства сделал субтитры к видео, чтобы смотреть было проще. Замечу лишь, что это не профессиональная видео-лекция и лектор нигде эту методологию не читает специально. Дина Насырова (Тим Лидер из Fujitsu) пришла к нам в знак уважения, чтобы помочь наладить процесс работы коллектива и заодно поделилась своим собственным богатым опытом. Встреча прошла год назад — с тех пор много воды утекло. Но спустя время до сих пор вспоминаю ее, так как информация представленная в ней мне очень сильно пригодилась.

image
Читать дальше →
Всего голосов 30: ↑19 и ↓11+8
Комментарии42

Реализация REST API на Symfony2: правильный путь

Время на прочтение18 мин
Количество просмотров57K
REST
Создание REST API это нелегкая задача. Нет, серьезно! Если вы хотите написать API правильно, вам придется о многом подумать, решить, быть прагматиком, или API маньяком. REST это не только GET, POST, PUT и Delete. На практике, у вас могут быть взаимодействия между ресурсами, нужно перемещать ресурсы куда-то еще (к примеру внутри дерева), или вы захотите получить конкретное значение ресурса.

В данной статье собрано все, чему я научился реализуя различные API сервисы, используя для этих целей Symfony2, FOSRestBundle, NelmioApiDocBundle и Propel. К примеру сделаем API для работы с пользователями.
Читать дальше →
Всего голосов 32: ↑29 и ↓3+26
Комментарии25

Что дешевле: новое железо или труд разработчиков?

Время на прочтение4 мин
Количество просмотров36K
На данную статью меня сподвиг следующий пост «Как улучшить свой стиль программирования?» плюс недавний спор среди коллег.

Представьте себе такой диалог:

Админ: Господа, разработчики, ваш код на сервере стал поедать много оперативки. Сервер уже свопиться начинает. Сами понимаете, все может встать колом!
Представитель разработчиков (например, тимлид): Блин, беда. Сейчас займемся проблемой.
Эй, команда, нас тут админы стыдят за неоптимальный код. Нужно срочно все бросить и оптимизировать старый код.
Менеджер проекта: Эй, вы куда? Какая оптимизация? Пусть админы докупят памяти в сервера и проблемы нет. А у вас вон кучу нового функционала нужно разработать. Никакой оптимизации! Сосредоточьтесь на новом функционале. Нам нужно опередить конкурентов с новыми фичами. Потом как-нибудь оптимизируете свой код.

И кто по вашему прав? Что нужно сделать? Сделать апгрейд железа или заняться оптимизацией?
В конце статьи будет голосование.
Читать дальше →
Всего голосов 67: ↑52 и ↓15+37
Комментарии161

Безопасное развертывание ElasticSearch сервера

Время на прочтение5 мин
Количество просмотров22K
После успешного перехода c MongoDB полнотекстового поиска на ElasticSearch, мы успели запустить несколько новых сервисов работающих на Elastic'е, расширение для браузера и в общем и целом, я был крайне доволен миграцией.

Но в бочке меда, оказалась одна ложка дегтя — примерно через месяц после конфигурации и успешной работы, LogEntries / NewRelic в один голос закричали о том, что сервер поиска не отвечает. После логина на дешбоард Digital Ocean'a, я увидел письмо от поддержки, что сервер был приостановлен в связи с большим исходящим UDP трафиком, что скорее всего свидетельствовало о том, что сервер скомрометирован.
Читать дальше →
Всего голосов 35: ↑27 и ↓8+19
Комментарии12

SDCast. Подкаст о разработке ПО и его окрестностях

Время на прочтение1 мин
Количество просмотров2.9K
image Всем привет!
Software Development podCAST посвящен разработке программного обеспечения. Вместе с гостями мы обсуждаем такие темы как проектирование, написание, тестирование и поддержка ПО. Говорим о современных подходах и тенденциях в мире разработки.
В каждом выпуске гости, профессионалы из мира ИТ, делятся опытом и рассказывают о своих достижениях. В SDCast уже приняли участие Роман Дворнов, создатель фреймворка Basis.js, Андрей Яманов, организатор митапов MoscowJS, Денис Шевченко, автор книги «О Haskell по-человечески» и другие.
Читать дальше →
Всего голосов 20: ↑19 и ↓1+18
Комментарии7

Как откликаться на проекты на фрилансе

Время на прочтение2 мин
Количество просмотров68K


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

Цель — начать получать чуть больше адекватных ответов на свои проекты. Есть ощущение, что я часто не сотрудничал с крутыми специалистами только из-за их некачественного отклика.

Важно, что использование этих рекомендаций не гарантирует, что вас выберут, а лишь повышает шансы на это.
Читать дальше →
Всего голосов 68: ↑52 и ↓16+36
Комментарии51

Создание воронок сайта и измерение конверсии за чашкой кофе без строчки кода

Время на прочтение3 мин
Количество просмотров16K
Вы уже знаете про огромное количество сервисов сессионной аналитики. Когда анализ делается на основе открытия страниц. Яндекс Метрика и Гугл Аналитика.

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

Читать дальше →
Всего голосов 32: ↑21 и ↓11+10
Комментарии13

MVC система в Zend Framework 2

Время на прочтение9 мин
Количество просмотров31K
Здравствуйте дорогие хабражители.
Совсем недавно вышел в свет Zend Framework 2. Однако его изучение у многих усложняет отсутствие русской документации и единого сообщества. Так же во второй ветке этого фреймворка появилось множество нововведений и плюшек, про который обычный PHP программист раньше даже не слышал. Но их можно изучить особо не потея. А вот понять, как работает ZF2 без понимания логики работы его MVC системы достаточно затруднительно. Поэтому решил сделать перевод с официального сайта именно этого раздела.И так приступим.

MVC в Zend Framework 2



Zend\Mvc представляет собой совершено новую реализацию MVC системы для Zend Framework 2. Основное внимание было уделено производительности и гибкости.

Слой MVC построен на основе следующих компонентов:

  1. Zend\ServiceManager — Zend Framework предоставляет набор различных сервисов, определенных в Zend\Mvc\Service. ServiceManager создает и настраивает экземпляр вашего приложения и рабочего процесса.
  2. Zend\EventManager – MVC является событиями. Данный компонент используется повсеместно. Для начальной загрузки приложения, возврата ответов (response) и запросов (request), настройки и получения маршрутов (routes), а так же для обработки (render) скриптов вида (views).
  3. Zend\Http – особый объект запросов (request) и ответов (response). Используется с Zend\Stdlib\DispatchableInterface. Все контроллеры представляют собой объекты «dispatch».

В MVC слое используются следующие вспомогательные компоненты:

  1. Zend\Mvc\Router – содержит классы, обеспечивающие маршрутизацию запросов. Другими словами, перенаправляет запросы к нужным контроллерам.
  2. Zend\Http\PhpEnvironment – предоставляет набор декораторов объектов HTTP запросов и ответов, обеспечивающих инъекцию запросов в текущую среду (включая GET и POST параметры, HTTP заголовки).
  3. Zend\Mvc\Controller – набор абстрактных классов контроллеров с базовой функциональностью, такой как создание событий, диспетчеризацией действий и т.д.
  4. Zend\Mvc\Service – набор ServiceManager фабрик и определений по умолчанию для различных процессов приложения.
  5. Zend\Mvc\View – предоставляет стандартные возможности визуализации скриптов вида, регистрации помощников и многое другое. Так же предоставляет различные слушатели, которые «связывают» рабочий процесс MVC, обеспечивая такие функции, как автоматическое разрешение имен шаблонов, автоматическое создание модели вида и инъекций, т.д.

Читать дальше →
Всего голосов 11: ↑8 и ↓3+5
Комментарии5
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Харьковская обл., Украина
Зарегистрирован
Активность