Search
Write a publication
Pull to refresh
17
0.4
Максим @SabMakc

User

Send message

Управление рисками

Reading time4 min
Views127K
В Deadline, Том Демарко пишет о том, что для управления проектом, достаточно управлять его рисками. Действительно, всю работу ПМа можно свести к одному — борьба с рисками, которые могут помешать проекту завершиться в срок, в бюджет и с необходимым уровнем качества. Если, по какой-то причине, рисков в проекте нет, то нет и предмета работы ПМа.

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

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

Квантификаторы в регулярных выражениях

Reading time8 min
Views77K
imageРегулярные выражения — это арифметика для алгоритмов. Они доступны во многих языках программирования, редакторах и настройках приложений. Как и сложение с умножением они просты в использовании.
Но для правильного и эффективного использования regexp-ов нужно понимание того, как они работают. Я постараюсь описать принцип работы регулярных выражений, покажу в каких случаях бывают проблемы и как их решать.

В продолжение общих советов.
Читать дальше →

Использование V8, заключение

Reading time4 min
Views2.7K
Использование V8, заключение

Часть 3 находится здесь: habrahabr.ru/blogs/development/72765

Часть 2 находится здесь: habrahabr.ru/blogs/development/72592

Часть 1 находится здесь: habrahabr.ru/blogs/development/72474

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

Веб-аналитика: анализируй это! Часть 5. Разделяй и думай

Reading time5 min
Views7.8K
Часть 1. Вступление.
Часть 2. Сбор данных.
Часть 3. Базовые метрики.
Часть 4. От статистики к аналитике

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

Каким же образом опытные аналитики “залезают в голову” пользователю, имея лишь усредненные данные по сайту? Никакой магии. Они проводят процедуры, которые разбирают эти авгиевы конюшни:

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

— Строят предположения и проверяют их: выискивают вероятные объяснения для сложившейся ситуации и пытаются повлиять на ситуацию исходя из этих предположений, наблюдая за результатом.
Читать дальше →

YAML Debug

Reading time2 min
Views1.1K
Привет, хабралюди.
Сегодня я хочу вам рассказать об удобном инструменте для веб-разработчиков.
Не так давно мучал гугл по поводу кроссбраузерного инструмента, который бы мог подсвечивать элементы страницы и их атрибуты(class, id) и наткнулся на YAML Debug.

Дальше

3 способа улучшить общение с клиентами

Reading time4 min
Views5.7K
В интернете очень легко стать безличным. Мы прячемся за никами, псевдо-организациями, номерами мессенджеров и адресами электронной почты. Но при этом мы все ещё остаемся живыми, чувствительными и привязанными к реальному общению людьми. И чем более безличным становится отношение между нами, тем меньше доверия и привязанности остается. В данном случае, я говорю не только о любви или дружбе. Это также сильно влияет на бизнес-связи, и неправильное позиционирование легко превратит ваш «теплый и уютный» бренд в «холодный и машиноподобный».

Я хочу посоветовать 3 простых способа сделать общение с клиентами в интернете гораздо более персональным. Эти проверенные методы не только улучшат ваш PR с нынешними заказчиками, но и помогут не отпугивать новых потенциальных покупателей.

upd: спасибо, перенес во Фриланс.

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

Как подружить фриланс и полную занятость?

Reading time4 min
Views2.3K

Пролог


В наше время в IT выделилось два способа взаимоотношений компании и сотрудников. Первый — найм людей на постоянную занятость, второй — использование фрилансеров. А возможно ли совместить положительные качества этих столь разных подходов, при этом избавившись от недостатков?

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

Фирма — государство, сотрудники — граждане

Reading time2 min
Views2.1K

Задача №1. Повысить трудоспособности за счет прозрачности деятельности компании



В свое время и я был наемным работником, даже не представляющим с какими трудностями мне придется столкнуться став владельцем бизнеса и начальником над сотрудниками. Конечно же мне думалось что все просто, плати зарплату и сотрудники будут просто счастливы ее сделать… Это так только лишь первые месяцы, далее же мотивации не хватает и придумывать приходится над множеством вариантов мотивации.

«Плати больше! И сотрудники будут счастливы» — скажете Вы… Да — это правда, но денег никогда не бывает много и повышать зарплату можно бесконечно без видимого результата!

«Наказывай! И сотрудники будут бояться санкций» — предложите Вы… Тоже вариант, но нет такого начальника, которому в удовольствие стоять с плетью над сотрудником и пугать его санкциями за невыполнение работы!

Какие варианты остаются?

Возьмем за основу вот что: «Каждый сотрудник любой компании талантлив и хочет работать, что называется „по умолчанию“!»
Читать дальше →

О том, какие шишки я набил

Reading time5 min
Views2K
Здравствуйте Хабрахабр сообщество!
Я хотел бы поделиться своим опытом с теми, кто начал, или только думает начинать свой бизнес, в частности имеющий отношение к веб-дизайну.
Капелька истории
Я работаю в сфере веб-дизайна без малого 5 лет. Начинал я естественно фри-лансером, создавал проекты, репутацию и т.д. Всё было хорошо до поры до времени. Пока на горизонте не замаячила мечта всей жизни на тот момент – собственный бизнес. С несколько месяцев раздумий, я решился на этот, как я теперь понимаю отчаянный шаг. По воле случая, я нашёл инвесторов, и они помогли мне с регистрацией юридического лица, стартовым капиталом, и т.д. и т.п. Команда к тому времени тоже была, весьма сработанная. Всё вышло замечательно, появилась фирма, спустя несколько месяцев и собственный офис, правда маленький, но всё равно, ощущение дикой пафосности не покидало наши сердца :-).
много букв

Мотивация удаленных сотрудников

Reading time4 min
Views12K
В IT индустрии все чаще встречаются проекты с распределенными командами. Это удобно — спецификация, код, баги, мануалы легко перемещаются из одного конца планеты в другой за доли секунд. Это выгодно — аутсорсинг проектных процессов, будь то разработка, тестирование или саппорт, в Индии или Китае обойдется в 3–5 раз дешевле аналогичных сервисов в странах Европы или США.

Никого не удивишь проектом, в котором сейлз, маркетинг и бизнес анализ находятся в Англии, разработка в России, тестирование и саппорт — в Индии. Компания, в которой я работал, специализировалась именно на таких проектах. Наиболее слабыми местами в них, я бы назвал коммуникации внутри проекта и мотивацию его участников. Эта статья описывает эффективный подход к решению этих проблем в проектах с распределенной командой.

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

Функция без явного определения

Reading time1 min
Views1.5K
Изучаю C++. Балуясь с указателями придумал интересный для себя пример. Вероятно, опытных людей он не заинтересует, но я все же рискну.
typedef int (*pf)(int, int);
char c[] = {85,-119,-27,-117,69,12,3,69,8,93,-61,-112};
pf sum = (pf)c; //reinterpret_cast здесь не работает.
cout << sum(2,3); //Вывод 5.


* This source code was highlighted with Source Code Highlighter.
Теперь sum — функция сложения, являющаяся аналогом этой:
int sum(int a, int b){return a+b;}

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

UPD. Как мне подсказал iley, это в общем-то относится к C.

UPD. Одной строкой:
cout << ((int (*)(int, int))"\x55\x89\xE5\x8B\x45\x0C\x03\x45\x08\x5D\xC3")(2,3)
(спасибо 0lympian за мысль и halyavin за поправку)

Строим систему мышления

Reading time6 min
Views7.8K
В связи с дискуссией, возникшей в хабратопике, я хотел бы немножко поговорить о системах мышления, свободе и числе 42.

Чего ви пагите?



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

Данное мнение, на мой взгляд, ошибочно.
Давайте разберемся!

Тренировка памяти

Reading time3 min
Views46K
Вы когда-нибудь задумывались, насколько важна память для человека и конкретно для вас? Что можно достичь, с помощью хорошей памяти? А давайте прикинем прямо сейчас!? Для начала я думаю, стоит вспомнить образование и работу: прочитали книгу за несколько дней и все запомнили, экзамены за вечер на 5, язык программирования за месяц… можно продолжать долго.

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

Список полезных PHP классов и библиотек

Reading time4 min
Views65K

Email


  • Swift Mailer
    Swift Mailer легко интегрируется в любое PHP-приложение. Это гибкий и элегантный ООП-подход к отправке писем с множеством функций: отправка эл.почты, используя SMTP, SendMail, Postfix, поддержка серверов и др.
  • PHPMailer
    Лучший класс для работы с эл. почтой. Поддерживает сообщения в цифровой форме, S/MIME шифрование, текстовые и HTML-письма, изображения, поддерживает несколько Email’ов, SMTP-аутентификация.

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

10 полезных выводов и принципов юзабилити

Reading time8 min
Views23K
Каждый согласится, что юзабилити является важным аспектом веб-дизайна. Несмотря на то, работаете ли вы над дизайном сайта портфолио, над он-лайн магазином или веб-приложением, важно сделать страницы удобными и простыми для пользователей. В протяжении последних лет было сделано много исследований о разных аспектах веб-дизайна и дизайна интерфейсов. Результаты этих исследований весьма значимы и помогают нам улучшить качество наших работ. Данная статья содержит 10 полезных выводов и принципов юзабилити, которые помогут вам улучшить впечатления пользователей от ваших сайтов.
Идем дальше...

Полезный совет: Аватары

Reading time2 min
Views4.7K
Не переставая петь хвалебные песни nginx`у, представлю публики моё решение для очень простого отображения аватаров на проектах.
Задача простая — вывести аватар пользователя, если он у него есть и вывести дефолтовый, если нет аватара у пользователя.
Допустим, все аватары физически у нас хранятся в /img/avatar/, без разницы с какими именами. Решение «в лоб» будет тоже простым — писать в базу, загрузил пользователь аватар или нет. Но это потребует каждый раз обращаться в базу. Конечно, можно юзать мемкеш и прочее, но есть более элегантный выход из ситуации, на мой взгляд ­— переложить эту задачу на плечи nginx`а. И nginx очень легко с этим справляется:

error_page 404 =200 /img/avatar/default.gif;

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

MySQL Profiler: простой и удобный инструмент профилирования запросов

Reading time2 min
Views47K
Сегодня был неожиданно удивлен, какие удобные штуки таит в себе MySQL. ;-)

Хочу представить вашему вниманию фичу MySQL — профайлинг.
Появилась она начиная с версии 5.0.37.

Всего парой запросов можно узнать, какими запросами формируется страница (для веб-девелоперов)
и почему она тормозит.

И раньше подобный функционал был доступен, но пользоваться журналом запросов не в пример сложнее.

Итак, как пользоваться:


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

Как сделать библиотеку для Arduino? (пример прилагается)

Reading time2 min
Views41K
Допустим, Вы решили оформить написанные Вами функции/классы для Arduino в библиотеку, чтобы Вам самим было проще с ними работать, и главное, чтобы кто-то другой мог с помощью Вашей библиотеки спокойно решать данные задачи, поминая Вас добрым словом, а не выдумывать новый велосипед.
Опишу минимум особенностей, в расчете на читателя, хотя бы немного знакомого с программированием на C/C++.
Читать дальше →

Первый общероссийский студенческий IT-чемпионат

Reading time2 min
Views6.6K
image

Образовательный интернет-ресурс Campus.ru и Департамент образования города Москвы представляют Первый общероссийский студенческий IT-чемпионат.

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

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

подробности

Сервер на стероидах: FreeBSD, nginx, MySQL, PostgreSQL, PHP и многое другое

Reading time16 min
Views40K
Нравится мне эта картинка, у меня, вот никогда такие красивые графики в какти не получались =(

Введение


С момента написания мной предыдущей статьи по оптимизации этой связки прошло довольно много времени. Тот многострадальный Pentium 4 c 512Мб памяти, обслуживающий одновременно до тысячи человек на форуме и до 150,000 пиров на трекере уже давно покоится на какой-нить немецкой, свалке, а клуб сменил уже не один сервер. Всё сказанное в ней всё ещё остаётся актуальным, однако есть вещи которые стоит добавить.
Статья большая, так что будет поделена на логические блоки:

0. Зачем вообще что-то оптимизировать?
  
1. Оптимизация ОС (FreeBSD)
  1.1 Переход на 7.х 
  1.2 Переход на 7.2
  1.3 Переход на amd64
  1.4 Разгрузка сетевой подсистемы
  1.5 FreeBSD и большое кол-во файлов
  1.6 Softupdates, gjournal и mount options
  
2. Оптимизация фронтенда (nginx)
  2.1 Accept Filters
  2.2 Кеширование
  2.3 AIO
  
3. Оптимизация бэкенда
  3.1 APC
  3.1.1 APC locking
  3.1.2 APC hints
  3.1.3 APC fragmentation
  3.2 PHP 5.3
  
4. Оптимизация базы данных
  4.1 MySQL 
  4.1.1 Переход на 5.1
  4.1.2 Переход на InnoDB
  4.1.3 Встроеный кеш MySQL - Query Cache
  4.1.4 Индексы
  
4.2 PostgreSQL
  4.2.1 Индексы
  4.2.2 pgBouncer и другие.
  4.2.3 pgFouine
  
4.3 Разгрузка базы данных
  4.3.1 SphinxQL
  4.3.2 Не-RDBMS хранилище
  4.4 Кодировки
  4.5 Асинхронность
  
Приложение. Мелочи.
  1. SSHGuard или альтернатива.
  2. xtrabackup
  3. Перенос почты на другой хост
  4. Интеграция со сторонним ПО
  5. Мониторинг
  
 6. Минусы оптимизации

Кому что-нибудь из этого списка интересно, жмём сюда...

Information

Rating
3,536-th
Location
Россия
Registered
Activity