? ?????  ?????

Многие считают, что одна из главных целей в работе – продвижение по карьерной лестнице.

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

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

Древнерусский глагол бедить (бѣдити, бѣждѫ)первоначально означал  “принуждать, заставлять, неволить”. Зная это, можно освежить смысловое наполнение многих слов с корнем -бед-, указывающим на насилие. 

Например:

Быть в беде значит кто-то или что-то бе́дит тебя, т.е. заставляет.
Беда – это не просто несчастье, а – подневольность, принуждённость.
Бедность
наступает, не когда денег мало, а когда ты бедствуешь,
а  бедствовать  значит делать то, чего ты делать не хочешь, но вынужден это делать (или считаешь, что вынужден).

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

Эпиграф.
— Я работаю с утра до вечера!
— А когда же вы думаете?
(Диалог между молодым физиком и гениальным Резерфордом)

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

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

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

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

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

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

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

— На самом деле все очень просто, — прямо ответил норвежец. — Каждый час я останавливался на десять минут. И в то время как ты продолжал рубить лес, я точил свой топор.

Осознание – пост :)

Подборка интересных постов на тему разработки ПО.

Sergey Rozovik пишет о “недержании креатива”

Мы живем и работаем в плену стереотипов. Все мы знаем как делать “правильные приложения”. Слои, уровни, шаблоны проектирования

Вполне здравые идеи, и звучат убедительно, как будто кто-то гвозди в доску забивает. Малую малость упустили из виду – “А зачем это все?” Смотрим в исходники проекта, и видим что? Для каждого интерфейса на весь проект только одна реализация, альтернатив нет и не предвидилось. “Специальная секция конфигурационного файла” не разу не изменялась с момента своего создания. Так и зачем огород городить было?

Мораль. Не давайте шаблонам управлять своими мозгами. Должно быть все наоборот. Оставайтесь в меру беспринципными, когда это может пойти на пользу делу. И главное: “Do simplest thing that could possibly work” (с)К. Бек.

Эльдар Мусаев отмечает это как болезнь всех СНГ-шных софтверных компаний и называет “фундаментализмом”. С чем нельзя не согласиться.

Российский программист готов днями вылизывать схему базы данных, попутно обьясняя вам почему вы – полный идиот в этом вопросе, даже если у всей системы будет десять пользователей и вам глубоко по барабану производительность базы данных. Российский дизайнер старательно потратит время на то, чтобы антиалиасинг картинки на экране был лучше, чем если бы его сделали в Адобе, даже если картинка выведена «блудливой рукой Остапа» и подлежит замене через две недели. Российский программист всегда пишет сортировку сам, а потом долго и нудно ее отлаживает и оптимизирует. А заказчик, который не понимает зачем это нужно – просто идиот. Российский программист всегда знает что нужно заказчику лучше самого заказчика. Потому что он, российский программист – умный, а заказчик – см. выше. И забабахать пользовательский интерфейс, который требует двух Ph.D. в несмежных областях высшей математики и ядерной физики – это, конечно, круто. А пользователь – он тоже идиот, перебьется.

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

Заказчик хочет продукт, который будет удовлетворять потребности пользователей, который будет продаваться. Заказчику все равно будет продукт делать это «по науке» или нет, ему просто надо, чтобы он это делал. Это то, за что заказчик платит деньги.

Российский же исполнитель пытается заниматься искусством и «творить нетленку». Такое ощущение, что общий взгляд на вещи в том, что работать за деньги – это вообще недостойно, даже воровать и то благороднее. Поэтому российский исполнитель творит «вечное» и работает за славу, а уж деньги ему такому славному просто по понятиям и так должны. И те, кто этого не понимают – просто идиоты.

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

Пульт дистанционного управления телевизором «Пультиус».

Задача. Сделать пульт, в котором будет столько же кнопок, сколько каналов в телевизоре.

Решение.

pultius.jpg

Что общего с большинством современных программ?

Для удобства разметим функциональные области устройства на зоны и представим что это функциональные возможности нашего софта:

pultius-soft.jpg

  1. Мне платят за то, чтобы я включал этот софт
  2. Функции, которые мне иногда нужны в работе
  3. Функции, про которые я не знаю и не слышал или не нужные мне совершенно
  4. Да, нужные функции, я люблю управлять процессом: делать погромче, например
  5. За что наша фирма и заплатила такие деньги

Взято отсюда

Ищущий да найдет.

Большое количество наборов можно взять тут:
http://malevi4.wordpress.com/2007/10/22/top-50-supercool-free-icon-sets/
http://www.smashingmagazine.com/2007/08/25/20-free-and-fresh-icon-sets/.

Орсон Скотт Кард о софтверных компаниях.

Среда, в которой талантливые программисты цветут и пахнут, убивает всяческого рода управленцев и маркетологов – и наоборот. Программирование – это Большая Игра. Она захватывает тебя, твое тело и душу. Как только ты увлекаешься ею – для тебя больше не существует ничего. Когда ты выползаешь на свет божий, то можешь с удивлением обнаружить, что у тебя полценнтнера лишнего веса, что твое нижнее белье старше, чем среднестатистический первоклашка и что, судя по стопке коробок от пиццы, наступила весна. Но тебе все равно, потому что твоя программа работает и код ее и чист и светел и прекрасен. Ты победил. Тебе известно, что кое-кто считает тебя ботаном. Ну и что? Они-то не Игроки. Они никогда не фехтовали с Windows и не сходились в рукопашной с ДОС. Для них С++ – неплохая школьная оценка, почти В – а вовсе не язык программирования. Они практически не существуют. Подобно солдату или художнику, тебя не заботит мнение обывателей. Ты строишь изысканную и сложную вещь. Им не понять.

Пчеловодство

Секрет любой успешной софтверной компании – вы можете приручить программистов в той же степени, в которой пчеловод может приручить своих пчел. Вы не можете с ними общаться в полном смысле этого слова, но вы можете заставить их роиться в определенном месте и, когда они не смотрят, забирать их мед. Вы платите им деньги, чтобы они вас не жалили. Больше денег, чем они могут потратить. Но и это не так уж много. Все дело в том, что в головах у этих программистов постоянно звучат голоса их родителей, вопрошающие : “Когда ж ты наконец за ум возьмешься?”. Вам просто надо платить им столько, чтобы они могли (тоже мысленно) ответить : “Блин, папа, да я зарабатываю больше тебя!”. Это, в общем, не такие уж и большие деньги.

Они останутся в улье, если вокруг них будут роиться другие кодеры. Единственный человек, чья похвала чего-нибудь стоит – это другой кодер. Менее талантливые программисты будут на них молиться, равные будут состязаться и подстрекать друг друга к новым свершениям. Если же вы хотите, чтобы ваш рой был по-настоящему хорош, в нем обязательно должен присутствовать хотя бы один гениальный кодер, на которого остальные будут взирать снизу вверх – даже если он смотрит на код других программистов только для того, чтобы над ним поглумиться. “Он Игрок”, думает начинающий программист. “Он посмотрел на мой код. Жизнь удалась”. Кодеры забудут что такое сон, секс, здоровье и чистое нижнее белье, если софтверная компания сможет предоставить им такой улей – а компания сможет оставить себе львиную долю прибылей.

Без руля и ветрил

Существует одна проблема, которая убивает софтверные компании одну за одной. Во главе всех успешных софтверных фирм стоял один авторитетный лидер, заботившийся о программистах. Однако ни один лидер не вечен. Он либо продает свою долю в компании, либо приводит в компанию новых менеджеров, которые в конце концов выживают его из фирмы, либо сам становится таким менеджером. Так или иначе “эффективные менеджеры” берут управление на себя. Но … управление чем? Менеджеры быстро обнаруживают, что вместо трудолюбивых раборников у стройных конвейерных линий над их продуктом работает сборище непредсказуемых, неотзывчивых, недисциплинированных и, хуже всего, непривлекательных людей, которые противятся любым попыткам установить над ними контроль. Начните фиксировать часы их работы, оденьте их в костюмы и они помрачнеют и начнут саботировать разработку продукта. Хуже всего – вы будете чувствовать, что они за над вами постоянно насмехаются.

Выкуренные

Однако для кодера потрясение является намного более серьезным. Он вдруг осознает, что его жизнь находится под контролем чуждых жизнеформ. Совещания, Расписания, Отчеты. А потом кто-то начинает требовать, чтобы он ПЛАНИРОВАЛ свою работу, а затем придерживался плана, ничего не улучшая и и не подправляя – и никогда, никогда не влезая в код другой группы. Молокосос, начинаюшиий программистишка вдруг становится его начальником-тираном только потому, что он партнер по гольфу какого-то сфинктера в костюме. Улей разрушен. Лучшие кодеры уходят. А маркетологи, довольные тем, что их теперь окружают люди в галстуках и всё находится под контролем, с удивлением обнаруживают, что каждый релиз их продукта занимает все меньшую нишу на рынке, что код распухает, а количество багов растет. Наверное надо улучшить дизайн упаковки. Ага, точно.

Когда ты нанимаешь людей, ищи тех, кто обладает следующими свойствами: внутренней целостностью, интеллектом и энергичностью. Если у них нет внутренней целостности, оставшиеся свойства тебя убьют.

Warren Buffett

Какие существуют ранние указания на то, что с партнёром (предпринимателем или инвестором) можно будет нормально работать?

Read the rest of this entry »

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

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

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

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

2. в случае программиста справедливо высказывание “лень – двигатель прогресса”. Стремление ничего не делать – одно из трёх основополагающих (ещё еда и женщины). В любой работе, которая не хобби, которая не из любви к искусству а для заказчика – работник будет стремиться обойтись наименьшими трудозатратами. Но поскольку работа программиста заключается в том, чтобы вместо того чтобы делать всё самому – сделать так чтобы этим занималась машина, – работа программиста является самомотивирующейся. В этом её отличие от любой другой професии, в которых “не отвертишься” – чтобы дело было сделано, надо его непосредственно делать.
Поэтому тот, кто хочет получить максимальную отдачу от программистов, должен “оседлать” эти их усилия “отвертеться” – дать возможность вместо того, чтобы делать работу, написать программу, которая за них всё сделает. Программист должен работать с осознанием что “ещё немного усилий – и эта штука сама всё сделает, мне надо будет только на кнопку нажать”. А когда требуют тупо беспросветно месяц за месяцем ваять формочки согласно почасовому плану, в то время как можно потратить пару недель и написать генератор создающий их одним нажатием – это похоже на задачу мотивации копать канавы лопатой в то время как рядом стоит и бездействует экскаватор.
Кроме этого, соглашусь с предыдущими ораторами. Денег должно быть столько, чтобы программист думал о работе, а не о том, прямо сейчас сваливать или дождаться ещё одной зарплаты, “цырк”(с)педивикия и “ранговые состязания самцов” тоже желательно чтобы действующая власть отслеживала и пресекала.
http://www.sql.ru/forum/actualthread.aspx?bid=9&tid=428434&pg=2

http://www.sql.ru/forum/actualthread.aspx?tid=384286#3650131

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

Банк этот всем хорошо известен, упоминать не буду.

Archives