Оседлайте жажду знаний, изучая — инвестируйте!

Мы живём в чудесное время, когда гигантское количество работы уже сделано за нас, осталось только протянуть руку — да воспользоваться результатами. Совершенно бесплатно. Упс! Я сказал совершенно бесплатно? Ой, извините, вам всё-таки придётся заплатить кое-чем. Вашим временем. Как поступить разумнее? Как не пожалеть, что 90% времени потрачено на полную лабуду?

Объясню на близком для меня примере — веб-технологиях. У нас тут многое изменилось за последние годы. Вы всё ещё пишете движок сайта с 0? Не шутите так — большинство задач решается при помощи веб-фреймворков, сотней строк и часом работы. Рисуете в «Блокноте» сложный веб-интерфейс с драг-н-дропами, современными UI-анимациями а-ля дрыгающиеся панели? Ну что вы такое говорите, в javascript-фреймворках это может сделать даже четырёхлетний ребёнок. Мучаетесь, наконец, с дизайном блога «две колонки», вспоминая, как забарывается несовместимость рендеринга блоков в разных браузерах? Вы застряли в прошлом — сейчас есть CSS- и даже HTML-фреймворки, где всё продумано за вас.

Однако есть и «но»: в большинстве фреймворков сжато столько всего, что для работы с ними придётся изучить практически новый, внутренний гиперязык. И знание основного языка, на котором написан фреймворк, не поможет ни капли. Да и не только язык, вы столкнётесь с внутренним «фольклором» проекта — традициями, суевериями и болячками, которых с первого взгляда и не видно.

Поэтому, перед тем, как кидаться в занимательную этнографию, подумайте о процессе получения знаний с такой точки зрения:

«Сейчас я инвестирую в моё будущее дни, или даже месяцы моего времени. Окупятся ли эти вложения? А как сильно окупятся?».

Если говорить о нашем примере с технологиями — то я всегда изучаю следующие вещи:

  • насколько универсальна эта технология и её составляющие?
  • насколько высок уровень разработчиков, развивающих технологию, много ли их? Силён ли их интерес к технологии? Будет ли проект жить долго?
  • много ли решений построено на этой технологии? Можно ли использовать их в своих целях? Зрелые ли это проекты, или тяп-ляп?

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

Для тех, кому интересны ИТ-байки — в следующем посте я расскажу подробнее о том, как я выбирал, на чём строить мои веб-проекты.

28 комментариев к “Оседлайте жажду знаний, изучая — инвестируйте!”

  1. Ответить на вопросы — насколько универсальна технология, насколько высок уровень разработчиков можно. Но не всегда точно.

    Взять, например, PostgreSQL и .Net. С моих школьных лет postgresql изменился с версии 7 на 8. А .Net за 4 года с 1.0 до 4.0.

    Сложно угадать что тебе нужно. И вообще — зачем все это изучать? Все равно ты не сможешь работать выше какого-то предела. Можешь сидеть сутками, но винду в одиночку не написать. Да и не только винду, какой-нибудь проект средней величины. Написать можно только командой.

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

    И возникает вопрос о целесообразности становится швейцарским ножом.

    Лучше становиться человеком, вокруг которого все крутится и который имеет большую часть всех благ, которые производят люди вокруг него. Т.е. работает на тебя 10 программистов, заплатил им зарплату, за три месяца ушло 30к. Зато появился продукт, продажи которого покроют расходы, дадут хлеб программистам на вторую версию, а все что останется, т.е. большая часть барышей — пойдет тебе.

    Вот так и надо ИМХО, а что-то постоянно учить и корячиться — я через это уже проходил. Мой отец проходил и мой дед тоже.

  2. Что посоветуешь для ускорения разработки обычных несложных админ интерфейсов ?

  3. Roman Pushkin: практически не бывает такого, что собрали команду из специализированных людей, и сделали цацку. Ну, кроме пути с инвестициями, да и там обосраться — раз плюнуть. Обычно делается начерно и только при росте появляются эти все люди, и вокруг тебя будут бегать. А чтобы быстро сделать начерно — лучше делать в том, что лучше :) Кстати, если ты сам можешь делать прототипы — это ахеренный плюс, спроси у любого нашего коллеги, который далёк от технологий.

    Vova: я как раз решал одну такую задачу и мне для этого понравился YUI — всё есть сразу (никаких плагинов, которые повторяют друг друга и ты должен ломать голову, какой выбрать) и это всё хорошо работает и хорошо документировано. И жить должно всё более-менее долго, т. к. используется в куче Яхиных сервисов.

  4. если взять те же цифры, что у Романа, то могу добавить вот что:

    имеем те же 30 к к примеру и какую нибудь концепцию будущего проекта.

    Альтернатива в следующем:

    1) взять 10-х и за 3 месяца полностью потратив всю сумму, сделать полностью нашу концепцию, запустить проект, который возможно будет мертвым, потому что пользователям, например не нужно 90 % из того, что ты там придумал и наворотил

    2) Взять одного программиста (или самому) и за 3 месяца сделать одну, но САМУЮ главную фишку из будущего концепта и запустить рабочую версию.

    Получая обратную связь от пользователей, развивать дальше, а если есть wow, то брать ещё народ. Как правило, движение идёт совсем не туда, куда планируешь в плане №1

  5. а если по теме поста, то очень круто )

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

  6. Небольшое предметное замечание. Конечно «сейчас есть CSS- и даже HTML-фреймворки, где всё продумано за вас», но даже чтобы ими пользоваться основы обозначенных технологий знать надо. А вот когда сталкиваешься с ситуаций, в которой фреймворк не выручает, приходится углубляться.
    А по поводу инвестиций в будущее — все равно мы ограничены определенными эмоциональными рамками, некими склонностями и желаниями. Из-за этого выбор по большому счету весьма узок. Например, если известно, что знания и практика в какой-то области могут приносить существенный доход, но если у человека не лежит душа к этому, нет интереса, то и браться за эту область бессмысленно (хотя теоретически может принести большие суммы в будущем). Поэтому вопрос «Окупятся ли эти вложения?» нужно задавать с поправкой на личные предпочтения.

  7. Cuprum: основы знать осталось уже недолго, как и в других отраслях (как часто программисты под современные оси прибегают к низкоуровневому программированию? Или как часто они хачат системные библиотеки).

    Про инвестиции ты не понял. Речь идёт не о самоопределении (стратегии развития), а о вынесении решения, изучать ли конкретную область знания (тактике развития), когда уже известно, что и душа лежит и интерес есть. Т. е. речь не о том, программировать ли сайты, а о том, на чём. Или не о том, заняться ли самооздоровлением при помощи какой-то натуральной древней техники, а о том, цигуном ли, тай дзи или йогой.

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

    Везде это делается, от Майкрософта и Оракла, заканчивая опен-сорц проектами. Просто я к тому, что самому надо больше лезть в организационную составляющую, а не в техническую. Надо стараться делать так, чтобы на тебя работали люди, которые тебя умнее и сильнее в техническом плане. Ибо как Билл Гейтс не умеет писать драйверов (но! может научиться при случае), так и Сергей Брин не программирует по 8 часов в день в команде Гугла. Но и у Майкрософта и у Гугла есть много талантливых программеров, которые в плане программинга дадут сто очков вперед перед своими основными акционерами.

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

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

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

  10. Roman Pushkin: «что один в поле не воин, и что нельзя всю жизнь быть технарем, если ты недоволен своим заработком» — ты строишь картину, в которой есть только Top Alexa 1000. Есть и другие стили жизни и подходы. Без толп работников. 37signals — 4 человека, и все действующие разработчики. Полно разного толка девелоперов — шароварных, мобильных, флешевых, из 1-2-3-4 человек, делающих десятки К.

    «Потому что предел заработка для технаря-одиночки всегда есть.» — у тебя чёрно-белый взгляд, либо 1 человек, либо много. Существует классный такой принцип Питера — почитай. Человек, который построит компанию из 3х человек, обосрётся на 10. Построивший из 10 обосрётся на 40. Не может абсолютно любой человек расти безгранично.

    > так и Сергей Брин не программирует по 8 часов в день в команде Гугла
    А за него и Пейджа дядя разработал поисковик? А за Гейтса дядя бегал, и суетился с MS-Dos? Я не пойму, к чему ты сравниваешь действия создателей через годы от старта, когда речь идёт о нас. Или я пропустил что-то, и у тебя уже выросшие проекты?

  11. Принцип Питера — довольно сомнительные теоретические выкладки.

    у тебя чёрно-белый взгляд, либо 1 человек, либо много.

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

    А за него и Пейджа дядя разработал поисковик?

    Я тебе, кажется, не об этом говорил. Я сказал так и Сергей Брин не программирует по 8 часов в день в команде Гугла.

    Не может абсолютно любой человек расти безгранично.

    Ну так и не может абсолютно любой человек изучать то, что ты написал в этом посте. Но ты же его все-таки написал.

    Есть и другие стили жизни и подходы. Без толп работников.

    Подход — один. Я не говорю о толпе. Я говорю о том, что если хочешь эффективно работать, то тебе нужно стать главой команды. У тебя может быть 1 или 2 человека, которые разбираются в проблеме лучше, чем ты. Как ты их будешь мотивировать — другая задача.

    Перспектива технаря сомнительная. Я недавно публиковал вакансию на программерском сайте, предлагал небольшую работку. Мне среди прочих написали двое людей с красным дипломом МГУ физ-мата. Я нанял одного программера (не из этих). Ему 35, большой опыт и т.д. Он работает удаленно на меня, а я плачу ему деньги, он работает по несколько часов в сутки. А деньги на оплату его труда просто идут на автомате с разных бизнесов.

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

    Все, что мне остается — контролировать его исполнение. И это будет во много раз эффективнее, чем учиться неизвестно сколько лет самому.

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

  12. Я не пойму, к чему ты сравниваешь действия создателей через годы от старта, когда речь идёт о нас.

    Потому что сейчас можно работать во много раз эффективнее, чем тебе кажется. Не надо изучать 10 лет системное программирование, взял какую-то сумму от своего заработка, который идет на автомате — нанял программера (если суммы нет, есть множество других способов заинтересовать программера). Вот тебе и 10 лет выиграл. Следи только за ним.

    Зачем сейчас тратить время, изучать и т.д.? Я вижу только одну причину — интерес. Я, например, изучаю asp.net 4.0 mvc 2 только ради интереса. Может когда-нибудь напишу на нем что-нибудь ради интереса, в свободное время, в качестве альтернативы телевизору.

    1. >Потому что сейчас можно работать во много раз эффективнее, чем тебе кажется. Не надо изучать 10 лет системное программирование
      Неа. Можно работать ещё более эффективнее, чем тебе кажется. Технологически то, что кормит меня щас, просто где-то ниже плинтуса. Я уже сказал — на Джанге весь программная часть моего бизнеса укладывается в 40-50 строк. Программист не поставляется с имплантированной телепатической железой. Я буду писать ТЗ, пиззеть с ним по аське в несколько раз больше, чем я делаю это сам. Никакого хайтека тут ни разу нету.

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

      Пример с каким-то там 35летним программистом — опять частность. Вот тебе другой пример: несколько товарищей, талантливых во всяких низкоуровневых штуках, сделали себе _миллионы_ _долларов_ на уязвимостях. Это лишь вопрос самосознания. Кто-то себя осознаёт работником, и весь верх заработка в инете идёт в поиск работы на сайте поиска работы. Другой мыслит в категориями бизнеса. И вместо того, чтобы писать мульон строк кода для мегастартапа, пишет 10 строк кода для насильного показывания рекламы пользователю.

      А то, что я тут говорю — это мой путь, блин. Меня уж утомили эти фразы «ты необъективен». Мне легче вот так. В моём случае не исключаю работы программистов, но только там, где их работа будет _напрашиваться_. Например, как-то программист быстренько переписал мой дорген на Сях, чтобы он генерил всё за 2 секунды вместо двух минут. Общаться с ним не пришлось вообще на эту тему — живое ТЗ в виде скриптов было. Вот такой стиль работы мне по душе — ты делаешь кривой прототип на чёрти чём, лишь бы сам оттестировать функционал, а нормальную версию будет делать кто-то там.

    2. Кстати — ты на конкретных примерах покажи, что ты там такое делаешь, что 10 человек пробьют время.

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

  14. А я пошёл работать так, как работаю я, из исключительной нелюбви работать с людьми — постоянные тормоза, разжёвывание, затягивание работы на гораздо большие сроки. И инет-биз штырит меня именно тем, что тут всё алгоритмизируется. Требовать от меня, чтобы я учитывал интересы сферических (для меня) создателей команд с 0 — глупо :)

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

    1. Рома, добавлю ещё пару мыслей. Ты тоже кое в чём прав. Участвовать в тех. процессе — это дело склонности. Если человека воротит от этого, естественно, заниматься этим не стоит.

      Но если она есть, то программировать — это большое подспорье, а не глупость и «предыдущий уровень». Т. к. многое становится проще. Например, быстрое прототипирование, про которое я уже говорил. Оно в разы лучше чем художественное ТЗ-творчество, которое — тоже своего рода искусство, и, по сути, нудная и долгая работа. В конце-концов, разработку ведёшь ты, а не программист.

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

  16. Я не упираюсь. Я, наоборот, ушёл от такой работы — расстался с программером, партнёром. Строю работу так, чтобы делать надо было мало.

    И это не уровни — это параллельный мир и стиль жизни. Просто твое эго не даёт тебе признать это. Я тебе могу сказать, как один из старейших членов нашего чернущего форума — те, кто работают по-простому, сами, или с одним программером жалуются на какие-то проблемы рабочего процесса, те, у кого команды (у нас есть люди с десятками человек в команде) — жалуются на другое (здоровье, нервы, etc).

  17. Что не дает признать? ЧТо это параллельный мир и стиль жизни? Да ебать его, признаю) Только толк от этого какой практически? Параллельные, или последовательные, это только название. Суть определяется поведением. Также как и свет — что это, волна или частица? На самом деле свет определяется формулой, а все остальное — только слова. Также и тут, какая разница, как это называется. Суть определяется тем, как это работает, а не тем, как это называется.

    Причем тут кто на что жалуется.

    Давай реально, на чистоту. Получается так:

    1. Работать одному.

    Плюсы:
    а) нет необходимости кого-то нанимать, все можно сделать самому, как следствие — экономия денег

    Минусы:
    а) низкая эффективность (низкая отдача)
    б) чтобы сделать что-то очень хорошо, надо сначала хорошо выучить технологию

    2. Управлять командой:

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

    Минусы:
    а) поиск кадров
    б) умение управлять кадрами

    Теперь возьмем реальную задачу. Нужно сделать какой-нибудь проект. Например, партнерский фарма-шоп.

    По сценарию 1 что нам надо:
    ===================

    1. Хороший дизайн. Без хорошего дизайна никуда — надеюсь с этим никто не будет спорить?

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

    2. Верстка.

    Верстка важна. Важно чтобы наш дизайн отображался хорошо во всех браузерах. Нам нужен какой-нибудь хороший css-фреймворк и div’ная верстка, чтобы дизайн не ехал по мере подгрузки страницы.

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

    3. Программирование.

    Ага, что там у нас будет? Будет движок инет-шопа на PHP. Надо выбрать хороший фреймворк и изучить. Партнеры вряд ли будут морочиться с Django, Ruby, ASP.net. Всем нужен простой PHP, который есть на большинстве хостингов. Сделаем на Django, все партнеры свалят к конкурентам. Значит PHP + Framework. Надо подобрать фреймворк, какой — надо подумать. Как будет работать шоп, удаленно? Аха, нужен curl, механизм удаленного обмена данными с серваком. Окей, делаем, тестируем. Все делаем сами, ведь Сергей Брин сам писал свой поисковик.

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

    4. Так, надо процессинг подключать.

    Подключаем процессинг к шопу, тестим.

    5. Товар.

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

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

    По сценарию 2 что нам надо:
    ===================

    Ищем программера, который отлично шарит в PHP и который делал уже что-то подобное.

    Ищем пять дизайнеров, которые создадут 5 дизайнов разных партнерских шопов.

    Ищем верстальщика.

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

    За довольно разумный срок у нас уже будет и дизайны, и готовые шопы. После этого можно делать интерфейс самой партнерки.

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

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

    Управление людьми это навык, который приобретается. И он намного важнее твоего умения делать доры на Django и рассуждать о параллельных мирах.

  18. Ибо чтобы дать задачу, надо представлять, как всё работает.

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

    1. >Не обязательно быть мега-гуру, чтобы дать задачу и проверить ее исполнение.
      Где ты вообще увидал в посте про гуруизм? Я говорю о простейших решениях и 99% использовании чужого кода. Я ненавижу сидеть и программить.

      А с фармапартнёркой — частный пример. Есть такие проекты. А есть такие, где наоборот, ни дизайн не нужен, где думать не надо о языке (отдача движка магазина — тоже узкий случай, даже в партнёрках).

      Я тебе вроде выше написал — твой пример разобьётся, если его приложить к тем же софт-партнёркам, в которых всё вяжется на мозге человека, ищущего дырки. Ты такого не найдёшь на jobs.ru, максимум, что ты можешь сделать — привлечь его, как партнёра, но примеров, когда такие партнёры забивали и уходили — масса. Ибо что бы ты не предложил такому человеку, бизнес ноу-хау — это его мозг, а ты так, будешь прокладкой.

  19. Угу, или просто за 10 дней делаем пленти оф фиш с хуёвым дизайном, и становимся миллионерами.

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

    Мой сценарий как раз типичен, это не частность, а правило. Большинство сценариев так и работают.

    1. Роман, прочитал 3 последних месяца твоего блога, пытаясь найти success-стори работы с карманным штатом — и безрезультатно. Опиши, чтоль, чего добился…

  21. Ну, тогда зови меня армянским пионером и мечтателем. Мне нравятся эти редкие, но вкусные случаи.

  22. Любопытно читать ваш диалог, вроде буквы те же, да речь про разное и друг друга не понимаете.

    По теме поста. Вещь давно известная и практикуется не только в онлайне. Как пример взять ту же торговлю. Открывая ларек на рынке по продаже пива, никто не кидается заключать прямые договоры с Балтикой и какие там у вас есть локальные бренды. Идут к местным оптовикам, которые уже договорились, оплатили товар и держат его на складе + с удовольствием довезут его до вашего ларька.

Комментарии закрыты.