Pull to refresh
0
0

User

Send message

Эти незаменимые регистрационные карточки

Reading time10 min
Views73K
image

Продолжается цикл постов, посвященных старинной офисной технике.
В прошлых постах я рассказывал о русских счетах и приспособлениях для копирования, в настоящем посте предлагаю вниманию хабравчан иллюстрированный обзор о регистрационных карточках.
Пост длинный из-за множества картинок.
Читать дальше →
Total votes 168: ↑165 and ↓3+162
Comments40

Организованный фриланс. Часть 1

Reading time5 min
Views66K
В данной статье я хотел бы поделиться собственным опытом создания компании, не обремененной месторасположением. Лично мы называем это организованный фриланс.

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

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

В-третьих, вся работа выполняется сдельно, существуют премии, бонусы, но не оклады, что заставляет участников команды быть заинтересованными в высоких результатах, в больших объемах работы.
Читать дальше →
Total votes 41: ↑36 and ↓5+31
Comments30

lodash (underscore) — знай свою стандартную библиотеку

Reading time7 min
Views180K
image

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

Что же, в последнее время, в своей работе я во всех проектах задействую lodash (кому-то может больше нравиться underscore). Для меня это, фактически, — стандарт. В очередной раз пробегая глазами API, я решил составить для себя шпаргалку в виде: «название функции» — «краткое описание». Так удобно освежать API в памяти. Может кому пригодится.
Читать дальше →
Total votes 76: ↑54 and ↓22+32
Comments62

Взгляд рекламщика на веб-дизайн: основы создания нетипичного дизайна для типичного сайта

Reading time9 min
Views32K
Введение

«Нужно больше золота»
Непризнанный экономический гений


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

И тут на сцене появляется рекламщик/продажник. У него тоже есть свое мнение. И мнение это такое: к лешему красоту истинную и крикливый кич, выбросите на помойку споры по поводу идей; сайт должен работать, приносить прибыль: инициировать продажи, служить для брендинга, привлекать звонки — то, что требуется заказчику. Нужно исследовать целевую аудиторию — и выяснить, какой дизайн поможет добиться от неё нужной реакции. И создать с нуля именно то, что требуется для достижения цели. Типовые решения не годятся — они не продуманы для конкретного сочетания заказчик/целевуха. Хуже того, они примелькались.

«Хорошо», — согласятся с ним. Даже здорово. Но как сделать оригинальное решение там, где оригинальности быть в принципе не может (приведу пример из той дискуссии — «интернет-магазин по продаже букетов для новобрачных»)? И как понять, что именно хочет аудитория?

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

Предупреждение. Под катом — длинный текст без картинок.
Предупреждение 2. Честно говоря, автор не подозревал, что это — не прописные истины. Поэтому не надейтесь найти что-то новое в тексте.

Читать дальше →
Total votes 36: ↑30 and ↓6+24
Comments35

Список литературы для менеджера продукта 80 уровня

Reading time4 min
Views123K
Менеджер продукта – все еще редкий зверь в российских и украинских IT компаниях. И если внутри команд, где менеджер продукта существует, его роль вопросов не вызывает (если он, конечно, занимается делом), то знакомые в других компаниях, на конференциях, друзья, от разработчиков до менеджеров проектов задают массу любопытствующих вопросов. Вопросы очень разномастные – от того, о чем собственно работа, и как устроен процесс работы над продуктом в нашей команде, до того, где поучиться, что почитать, и где вообще берут на работу продакт менеджеров.

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

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

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

Итак, мой список рекомендованной литературы для всех, кто хочет хочет проливать кровь, пот и слезы работать продакт менеджером или уже работает им.
Читать дальше →
Total votes 84: ↑75 and ↓9+66
Comments20

Проектирование графического интерфейса пользователя

Reading time6 min
Views180K


Введение


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

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

Для себя я начал с постановки вопросов: общие принципы, какие элементы интерфейса(ЭИ) создать, какой у них должен быть дизайн, где их правильно размещать и как они должны себя вести.
Ниже я постараюсь ответить на эти вопросы.
Читать дальше →
Total votes 66: ↑55 and ↓11+44
Comments90

Промежуточные итоги биржевого стартапа

Reading time6 min
Views27K
Биржа, как стартап. Звучит довольно необычно. Сразу в голову лезет огромное количество юридических моментов, регуляторских замутов и т.д. Казалось бы, просто так не начать.

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

Историю развития такого противостояния/дополнения можно долго расписывать. Но мы остановимся на одном из крайних событий этого фронта: криптовалюты. И даже еще сузим повествование: криптовалютные биржи.

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

Читать дальше →
Total votes 53: ↑45 and ↓8+37
Comments24

Node.js не подходит для типовых веб-проектов

Reading time6 min
Views104K


«Node.js не подходит для серьезных сайтов и веб-приложений, а только для написания небольших API».
This is bull*hit. I have to say it.

От переводчика: недавно на coderwall.com появилась интересная статья от Ionut-Cristian Florescu об использовании Node.js для создания обычных («типовых») веб-проектов. До ее прочтения я был полностью согласен с заголовком статьи, но сейчас мое мнение несколько поменялось. Позиция автора может быть спорной во многих моментах, но его аргументы достаточно интересны. Если у вас есть собственное мнение по этому поводу, оставляйте его в комментариях.
Читать дальше →
Total votes 117: ↑95 and ↓22+73
Comments178

Особенности русской разработки

Reading time8 min
Views284K
image

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

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

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

Еще один дисклеймер: на реальное поведение людей действует сложившаяся культура в а) команде б) организации в) стране. Причем именно в этом порядке. Есть «прозападные» компании, где влияние наших культурных кодов очень небольшое. В чисто российских компаниях оно просто огромно. Но реально заметить разницу можно только увидев, как различные культуры сталкиваются друг с другом.

Я буду приводить влияние разных факторов в порядке их важности и силы влияния. Чем выше — тем сложнее это изменить и тем больший эффект это оказывает.
Читать дальше →
Total votes 531: ↑513 and ↓18+495
Comments420

Бесплатный курс из 11 лекций про маркетинг, продажи и клиентский сервис в веб-студии/агентстве

Reading time2 min
Views44K
Всем привет! В течение последних пяти лет я (Андрей Терехов) периодически писал на Хабре (и в общие блоги, и с недавних пор в блог проекта Ruward) различные материалы про маркетинг, продажи и клиентский сервис в веб-студиях и агентствах. Как правило, эти статьи получали положительный отклик от пользователей. Мы решили пойти дальше и составили самый полный курс из всех, которые я когда-либо читал (включая оффлайн), по данной тематике.

Мы записали более 8 часов видео, разбитых на 11 лекций, подготовили презентации, кейсы, материалы по теме, кучу разного рода примеров, образцов и шаблонов, которые могут пригодится в жизни веб-студии. Это все превратилось в большой спецпроект, который мы и анонсируем сегодня – www.megaplan.ru/digital.

Итак, какие темы вошли в наш курс из 11 лекций (заодно дам ссылки на мои материалы с хабра по этим же темам там, где они есть):

  1. Структура интернет-агентства. Принципы проектного управления. Треугольник sales-pm-account. (по мотивам http://habrahabr.ru/post/66033/)

  2. Ценообразование в веб-студии. Формирование расчетной сметы. Оправдание цены. Виды демпинга и способы борьбы с ним. (по мотивам http://habrahabr.ru/company/ruward/blog/169559/)

  3. Функции службы маркетинга, основные каналы привлечения клиентов. Работа по разным сегментам ЦА.

  4. Позиционирование — ищем ключевые точки. Собственный сайт студии/агентства — типовые ошибки. (по мотивам http://habrahabr.ru/post/121053/)


Читать дальше →
Total votes 53: ↑39 and ↓14+25
Comments14

Книги для тимлидов и руководителей проектов. Часть 2

Reading time3 min
Views81K
Предыдущая статья очень хорошо была воспринята читателями, поэтому, как и обещал, сегодня подготовил статью-бонус.

Итак, я просил ответить на вопрос какие книги из статьи вы читали?

Результаты опроса:
Название книги
Количество голосов
Процент
Том ДеМарко. Deadline. Роман
об управлении проектами
247
54%
Фредерик Брукс. Мифический человеко-месяц, или Как создаются
программные системы
174
38%
Джоэл Спольски. Джоэл о программировании
165
36%
Том Демарко и Тимоти Листер. Человеческий фактор. Успешные
проекты и команды
148
32%
Джейсон Фрайд, Дэвид Хайнемайер Хенссон. Rework.
Бизнес без предрассудков
108
24%
Джеффри Янг и Уильям Саймон. iКона. Стив
Джобс
94
21%
Том ДеМарко, Тимоти Листер. Вальсируя с Медведями: управление
рисками в проектах по разработке программного обеспечения
70
15%
Том Демарко, Тимоти Листер. Балдеющие от адреналина и зомбированные
шаблонами. Паттерны поведения проектных команд
51
11%
Кармин Галло. iПрезентация. Уроки
убеждения от лидера Apple Стива Джобса
48
11%
Патрик Ленсиони. Смерть от совещаний
21
5%
Патрик Ленсиони. Пять пороков команды. Притчи о
лидерстве
19
4%
Патрик Ленсиони. Пять искушений руководителя: притчи о лидерстве
16
4%
Патрик Ленсиони. Три признака унылой работы. История со смыслом
для менеджеров (и их подчиненных)
11
2%

А теперь еще один бонус — список книг по заданной тематике, которые прислали нам читатели:
Читать дальше →
Total votes 89: ↑81 and ↓8+73
Comments12

Я влюбился в DelegateClass

Reading time3 min
Views3.5K
Если ваш класс разросся настолько, что начинает нарушать принцип единственной обязанности, вы без труда сможете разбить его на несколько более связных классов. Поможет вам в этом предоставляемая Ruby конструкция DelegateClass.

Допустим, у вас есть класс Person. Пользователи в системе могут продавать что-то и/или публиковать статьи. Подклассы здесь использовать не получится, потому что пользователь может одновременно быть и автором, и продавцом. Проведем рефакторинг.
Читать дальше →
Total votes 15: ↑14 and ↓1+13
Comments16

Wi-Fi: неочевидные нюансы (на примере домашней сети)

Reading time14 min
Views1.4M
Сейчас многие покупают точки доступа 802.11n, но хороших скоростей достичь удается не всем. В этом посте поговорим о не очень очевидных мелких нюансах, которые могут ощутимо улучшить (или ухудшить) работу Wi-Fi. Всё описанное ниже применимо как к домашним Wi-Fi-роутерам со стандартными и продвинутыми (DD-WRT & Co.) прошивками, так и к корпоративным железкам и сетям. Поэтому, в качестве примера возьмем «домашнюю» тему, как более родную и близкую к телу. Ибо даже самые администые из админов и инженеристые из инженеров живут в многоквартирных домах (или поселках с достаточной плотностью соседей), и всем хочется быстрого и надежного Wi-Fi.
[!!]: после замечаний касательно публикации первой части привожу текст целиком. Если вы читали первую часть — продолжайте отсюда.
Читать дальше →
Total votes 234: ↑231 and ↓3+228
Comments138

Искусство публичных выступлений в историях о жизни

Reading time8 min
Views14K
1 спасибо всем, кто комментировал предыдущую статью на эту тему. Новая статья — для тех, кто задавал вопросы, и для тех, кто чувствует себя опытным докладчиком. Как и раньше, все советы здесь — это мой опыт. У кого-то сработает то, что сработало у меня, у кого-то — что-то иное. Волшебных таблеток и истин в последней инстанции в тексте нет.

Особое спасибо karellen за ссылку на книгу Pitch Anything. У karellen безусловно стоит поучиться: написав в комментарии к моей предыдущей статье, что в этой книге «автор очень убедительно опровергает почти все эти «истины»», он заинтриговал меня. Интересно же: кто-то опровергает то, что у меня отлично работает. Я, конечно, полез на Амазон, купил kindle-версию книги и читал ее с большим удовольствием. Книга на самом деле ничего не опровергает: я рассказывал, что именно я делал, чтобы выступать интересно, а в книге рассказано, почему надо делать именно так. Книгу безусловно стоит прочесть, тем более, что написана она на довольно простом английском.

Кстати: в начале доклада смело благодарите аудиторию, если есть за что — например, за дельные советы и хорошие вопросы на прошлой встрече.

Перед тем, как благодарить, посмотрите habrahabr.ru/post/57913 — я не со всем согласен, но интересно все равно. Там как раз товарищ возмущается дурацкими началами докладов.
Налаживайте контакт, вовлекайте аудиторию в разговор, если она спит. Хороший способ для больших залов (человек двести и больше) — заставить одну половину аудитории кричать один короткий слоган или слово, а другую — другой. А потом — все вместе что-то общее. Работает на слоганах, хорошо разбираемых на части, и вызывающих энтузиазм у значимой части аудитории, например: «Россия — вперед!», «Уралмаш — чемпион!», «PHP — рулит!» и т.п.
Читать дальше →
Total votes 60: ↑53 and ↓7+46
Comments7

Еще одна шпаргалка

Reading time2 min
Views15K
VIM содержит сотни команд, выучить их все невозможно, да и по правде говоря «зазубривание» — дело неблагодарное. Читая различные факи и туториалы я взял за правило заносить новые для меня команды в отдельный файл, сопровождая их кратким описанием. В процессе работы с редактором я часто заглядываю в этот файл и с течением времени многие команды из него пополняют мой стандартный набор. Своим файлом-шпаргалкой я и хочу с вами поделиться.
Читать дальше →
Total votes 64: ↑55 and ↓9+46
Comments41

Эффективное использование Vim

Reading time11 min
Views73K

Введение


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

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

Эта статья также не является tutorial’ом для начинающих пользователей Vim, хотя и им (а также пользователям Emacs) может быть интересна, поскольку некоторые упоминаемые принципы являются достаточно общими и действуют не только в системах редактирования текстов, а вообще везде, где идет речь об использовании компьютера для редактирования чего-либо. Тем не менее, я предполагаю, что читатель знаком с основными концепциями, применяемыми в Vim (режимы, регистры, буфера, команды) и не останавливаюсь на их подробном описании.

По умолчанию Vim настроен очень старомодно, и эта настройка подразумевает, что пользователь при работе с текстом будет мыслить метафорами пятидесятилетней давности, как будто бы сейчас заря эпохи UNIX. Однако дизайн Vim позволяет сделать несколько настроек, после которых система станет выглядеть вполне прилично и станет работать весьма эффективно, сочетая в себе полезные черты и древних юниксовых инструментов работы с текстом, и современных WYSIWIG-процессоров, при этом обходя, насколько это возможно, присущие им недостатки. Вот об этих настройках и приемах их использования и пойдет речь.
Читать дальше →
Total votes 141: ↑128 and ↓13+115
Comments67

Перестаньте писать классы

Reading time9 min
Views184K
Фото Джэка Дидриха из профиля на G+ Признак того, что объект не должен быть классом — если в нём всего 2 метода, и один из них — инициализация, __init__. Каждый раз видя это, подумайте: «наверное, мне нужна просто одна функция».

Каждый раз когда из написанного класса вы создаёте всего один экземпляр, используете только раз и тут же выбрасываете, следует думать: «ой, надо бы это отрефакторить! Можно сделать проще, намного проще!»

Перевод доклада Джэка Дидриха, одного из ключевых разработчиков языка Питон. Доклад прозвучал 9 марта 2012 на конференции PyCon US.
Читать дальше →
Total votes 234: ↑206 and ↓28+178
Comments148

Практическая оптимизация и масштабируемость MySQL InnoDB на больших объёмах данных

Reading time5 min
Views20K
Данный пост не будет рассказывать про индексы, планы запросов, триггеры для построения агрегатов и прочие общие способы оптимизации запросов и структуры БД. Так же не будет рассказывать про оптимальные настройки с префиксом innodb_. Возможно прочитав текст ниже вы лучше поймёте смысл некоторых из них. В данном посте речь пойдёт об InnoDB и его функционирование.

Какие проблемы может помочь решить этот пост?


  • Что делать если у вас в списке процессов множественные селекты которым казалось бы никто не мешает?
  • Что делать если всё хорошо настроено, запросы пролетают как ракеты и список процессов постоянно пустой, но на сервере высокий LA и запросы начинают работать немного медленнее, ну например вместо 100мс получается 500мс ?
  • Как быстро масштабировать систему, когда нет возможности всё переделать?
  • У вас коммерческий проект в конкурентной среде и проблему надо решать немедленно?
  • Почему один и тот же запрос работает то быстро то медленно?
  • Как организовать быстрый кеш и поддерживать его в актуальном состояние?

Читать дальше →
Total votes 45: ↑39 and ↓6+33
Comments46

Redis: лёгкие яблоки

Reading time3 min
Views10K
NoSQL обычно воспринимается как альтернатива реляционным БД, однако, многие из них, особенно, те, что попроще, могут не только заменять, но и отлично дополнять их. На самом деле, чтобы использовать какое-то NoSQL-решение вместо привычной БД, нужен либо новый проект, либо возможность переписать старый практически полностью. Редкие случаи, в повседневной разработке. В то же время можно легко сорвать множество низко висящих плодов.
Читать дальше →
Total votes 58: ↑56 and ↓2+54
Comments33

Information

Rating
Does not participate
Location
San Francisco, California, США
Registered
Activity