Ads
Comments 37
Мы умеем делать отличные станки, строить быстрые самолеты, советские агрегаты для производства макаронов давят их в формате 7.62, а размер консервных банок соответствует калибру минометной техники. Проблема российского образования — в отсутствии школы программирования. Все хорошие специалисты, известные мне, не заканчивали специальность «Как писать хорошее ПО». То же, в принципе, касается дизайнеров, юзабилистов, тестировщиков и других специалистов, которые, дойдя до определенной точки в своем творчестве, превращаются из самоучек в профессионалов (или идут делать самые быстрые в мире самолеты, отличные станки, гамбургеры в Макдональдсе).
А здесь все думают, что обычная сигарета по диаметру равная 7.62 мм, а слим 5.45 мм, — это совпадение?

Мне нравятся фильмы "В погоне за счастьем" и "Престиж". Одержимые своими идеями люди действительно способны на многое.
«Игры разума» — гениальный фильм про одержимость (я математик).
P.S. Не курю).
UFO landed and left these words here
Он смирился и наслаждается )

А вообще - Доказательство тоже хороший фильм, о том же.
В нашей стране для действительно хороших специалистов университет только трамплин. По большей части все более менее нормальные спецы у нас учатся сами. IMHO наверно по этому наши программисты так ценятся на западе :)
Ценится, скорее, разносторонность и способность быстро врубаться в новые вещи. Западные универы действительно готовят слишком однобоких спецов, поэтому здесь и ценятся те, кто умеет и знает намного большое своей профессии.
Самообучение как раз и вырабатывает разносторонность и способность быстро врубаться в новые вещи. :) А умение понимать не только специфичные для своей профессии вещи позволяет лучше выполнять свою работу :)
Ну, нам в институте говорили: "В институте мы учим вас учиться". Хороший способ упорядочить свою способность к обучению. Если человек "горит" делом, он свернет горы, даже если у него вместо нужного технического гуманитарное образование.
Вообще, лично для меня тема наинтереснейшая, только в силу определённых причин, в РуНете она обсуждается крайне редко. Чуть позднее я выложу переводы комментариев к оригинальной статье — интересные примеры того, как обычные смертные пишут для себя программы :)
Программы которые пишут одиночки, пусть даже не по профессии, чаще всего и используются в узких и специализированных кругах. Тем не менее получаются порой классные продукты — ведь внимательный и любящий свое детище разработчик проводит кучу времени совершенствуя _свою_ программку написанную _для_себя_ )
В этом, наверное, и есть особенность и отличие от программ, над которыми работает целая команда, перед которой стоит четкое ТЗ и сроки сдачи.
я тоже встречал бизнесменов-программистов. и действительно, их творения потрясают своей эффективностью для частного случая. правда на каком-то моменте эти "прогаммисты" "ломаются", т.к. а) их время слишком дорого, б) закапываются в технической реализации следующей сложной фишки.

а профессионал это не только тот, который следует доктрине "veni vidi vici", а тесно пронизан бизнес-идеей своего ПО и реализует её максиально близко идеалу, IMHO
Вот, пара комментариев к статье в оригинале:

"Я знаю парня, он — юрист. В свободное время ковыряется в C++ и GTK. Так, вот, у него есть программа по платежам, которую он использует каждый день в течение 10 лет. Существующее ПО для юристов ужасно. А, однажды, он нашёл в программе ошибку, которая привела к потере 500$ за 6 месяцев. Я думаю, не программистам нужно больше вспомогательных программ, которые помогу автоматизировать всё, что они делают. Может, REALbasic?" (Warren Henning)

"Мой отчим - фармацевт. Много лет назад, когда фармацевтика уже не смогла обходится без компьютеров, он стал искать софт. Он был очень дорогой, поэтому отчим решил написать свой. Наконец, он изучил основы DBase III и проводил вечера в местном техническом колледже, создавая свою программу по дистрибуции лекарств. Позднее он добавил функциональность для работы с финансами, поставщиками и дистрибьюторами. Прямо удивительно, сколько там функций. Я работал со многими программами, но его оказалась лучше всех, была даже гармонизация с постоянно меняющимся законодательством. Прога работала довольно быстро на сервере PII 200MHz + несколько 486-ых. Какой там Windows?! Но код!.. Отчим никогда даже не слышал о процедурах, — когда я пытался ему что-то объяснять, он меня не понимал. И как он только написал более 100 000 строк кода и более ста вспомогательных программ всего лишь после нескольких недель обучения!?" (cubicle67)
Мне смешно смотреть на потуги непрограммистов пытающихся создавать приложения для себя.
Да действительно часто все прекрасно работает, но до очередной кардинальной смены событий.
Ну допустим была у него одна точка где работала программа а стало 3. И сеть есть не всегда, и он поседеет(полысеет) пока нормально сделает репликацию.
Польза во всем это только для производителей программ(RealBasic,Access,Fox e t c), хотя не могу не согласиться что писать программу для такого заказчика обычно легче, он четко представляет что ему нужно сделать.
UFO landed and left these words here
Уважения согласен.
Но учтите что программист не пытается досканально научиться предметной области, он просто должен представлять основные понятия
Воооот, и пришли к тому, что самые ценные люди — это аналитики. Они должны разбираться как в предмете (понять клиента) и в разработке ПО (объяснить программистам, что и как надо делать). Потому аналитик и зарабатывают намного больше, чем программист.
Точно! Причем самое интересное для аналитика, это менять область!
Дык, понятно, что те, кто будет такую самописную программу дополнять, исправлять, переплюются десят раз, увидев, как в неё все сделано :)
Спасибо автору - эта статья про меня :) Чтобы ответить, спеиально завел аккаунт на хабре!
8 лет назад, не умея программировать, начал писать программу для юристов - "Регистратор" по созданию учредительных документов. Сейчас более половины всех юридических лиц, создаваемых в Питере, проходят через эту программу. И она до сих пор мой единственный источник дохода.
Потом был "Индекс Без Проблем" (до версии 2.3)(сейчас www.postcode.ru).
Теперь уже с партнерами создаем Пиндекс (People Index) (www.pindex.net).
До сих пор не считаю себя программистом, так как видел как работают настоящиие программисты :) Это круто, но ИМХО не всегда они могут сделать удобную, как старые тапочки, программу.
Спасибо вам, что оставляете нишу для таких, как мы )))
Для того чтобы сделать удобную программу нужно минимум три человека. Первый это специалист хорошо разбирающийся в своей области который и будет использоваться программой. Второй это когнитолог (аналитик) который вытащит из первого информацию о его предметной области и изложит их на понятном для программиста языке. Ну и третьий, собственно программист который это все дело закодит :)
В действительности здесь затронута гораздо более широкая проблема бизнеса. Это частая разобщенность производителя продукции и ее потребителя.
Производитель почивает на лаврах или составляет какие-то оторванные от реальности бизнес планы. В итоге потребитель часто сам начинает решать свои проблемы. Если производитель вовремя не поймет это, то он может уйти в историю.
посмотреть профиль hornet правильно отметил этот момент.
Классический пример. В начале 70х сотрудник USL, одной из ведущих компаний производителя чемоданов, заметил, как ловко носильщики перевозят чемоданы на тележках, и решил, что можно прикрепить колесики к самим чемоданам для удобства. В компании посмеялись над ним. Однако, этот сотрудник стал сам продвигать эту идею и в итоге выкупил USL.

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

И то, стоило бы уточнить, что под разработчиком скорее следует понимать софтверную фирму, а не фрилансера/доморощенного программиста.
Всё же задача программиста, в первую очередь, это уметь писать правильно программы, а не разбираться в сути функций и задач программы. Другой вопрос, что менеджер или ведущий проектом, должен вникать в суть процессов, которые выполняет программа и качественно составлять тех. задание для программиста. И тех. задание должно учитывать большинство нюансов, которые не заставят программиста изучать эти процессы, тем самым он более явно сможет оценивать свою работу по времени.
Поправочка: руководитель проекта обычно ТО не пишет, этим занимается аналитик.
Вы полностью правы, хотя я просто хотел саму мысль донести, но не описывать процесс, потому намеренно ошибку допустил.
Каждый должен заниматься своим делом, мне так кажется. Программисты должны писать программы, руководители - руководить. Конечно, всесторонность развития и навыков это хорошо. Но добиться действительно хороших результатов распыляясь на все очень сложно. По идее, задачи должны ставить потенциальные пользователи ПО. В некторых случаях это руководители организаций. Как показывает практика, ПО разработанное на заказ профессионалами, при тесном общении с заказчиком работает более стабильно, удобнее в использовании и более четко отражает потребности, нежели разработанное непрофессионалами или профессионалами, у которых работа с клиентом прихрамывает.
Я - профессиональный программист, и четко знаю, когда прорамма попадет в точку (будет востребована), а когда нет.
- Если я пишу инструмент удобный на мой программистский взгляд, и удовлетворяющий моему предствлению о юзабилити, и пытаюсь объяснить бухгалтеру, что теперь ему надо работать по моей схеме, а не как прежде, и ему будет от этого удобнее, - программа не пойдет - 90%
- А если я напишу СЕБЕ макрос, который позволяет сократить рутинную работу на одно нажатие клавиши, - коллеги откуда-то сами узнают об этом и толпой начинают просить установить им это же...
А разница лишь в одном - во втором случае я был кроме исполнителя, еще и заказчиком...
Да, кстати, совсем упустили из виду всяческих клерков и прочих офисных работников, которые в силу своих обязанностей плотно работают, например, с MS Excel, и пишут макросы. Это ведь тоже программирование.
Еще какое! Для анализа каких-то данных будучи в творческом экстазе как-то раз я написал нейронную сеть на Excel :) Мощь заложенных в офис и Windows средств разработки просто поражает. К сожалению, чаще всего результаты такого утилитарного программирования весьма уродливы и ненадежны.
Просто интересен факт, что умение писать макросы на VB воспринимается, как знание Excel, хотя тут чисто программирование + бух. учёт + статистика + математика. Несмотря на то, что код может показаться не совсем оптимальным, — сколько знаний заложено! Сейчас сплошь и рядом программисты (особенно для веба) вообще игнорируют эти науки (статистика, математика).
Only those users with full accounts are able to leave comments. , please.