Формошлепство

Часто слышу термин «формошлеп».

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

Если говорить об web-проектах, то банальное формошлепство делается через Microsoft ASP.NET Dynamic Data (www.asp.net/dynamicdata). Когда дело доходит до настольных приложений, то автоматическая генерация форм — чем не творческая работа?

Мне недавно пришлось разрабатывать настольный редактор кучи XML’ей строго определенного формата.Но строго определенным он стал только после того, как программу написали, поюзали, внесли изменения в формат и только тогда устаканили форматы. Делал бы я вручную форму на каждый XML — до конца проекта перессорился бы со всеми. А так — все изменения принимал без особой боязни — свелось все к добавлению поля к классу и навешиванию на него соотв. атрибута. По началу руководству не нравился интерфейс — давай там поле передвинем туда, а там сюда. Но я настоял на том, чтобы окончательный дизайн строился после решения основных вопросов.

Ну вот такая саксес стори о формошлепстве: -)

👍НравитсяПонравилось0
В избранноеВ избранном0
LinkedIn
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Термин «формошлеп» не надо понимать буквально. Имеется ввиду разработчик у которого хватает ума только на написание кода «по шаблону». Иногда шаблоны специально заранее разработанны более толковыми товарищами. Иногда просто берется готовый код, копируется и меняется.
Такой сотрудник понимает задачи только «скопируй отсюда, поменяй так и так». При этом желания понять как что работает у «формошлепа» никогда не возникает.

Пример из жизни: собеседовали ASP.Net разработчика. За 2 года написал десятки страниц сайта в крупном проекте. Не знает чем отличается HTTP GET и POST. Предложили пойти на курсы, подучиться — очень обиделся, мол ему на текущем месте платят 600 баксов и он хочет больше.

0_0 По-моему, за 600 баксов ASP.Net разработчик должен еще и немножечко вредить ©

Во-первых: это было не в Киеве.
Во-вторых: это не ASP.Net разработчик — а именно «формошлеп». Разработчик должен знать что такое ViewState и где он хранится (не говоря уже про HTTP).
В-третьих: если бы это был, скажем, врач и вы заплатили бы ему 600 баксов то наверно вы думали бы иначе (насчет вредить).
Меня удивляет одно: если «формошлепам» где-то платят почти 5000 грн. зарплаты то почему кто-то вообще занимается тяжелой работой за смешные деньги? Что бы стать ASP.Net формошлепом можно даже не знать английского, алгоритмов, математики. Достаточно прочитать 2-3 книжки из серии «Выучи ... за 48 часов».

От шестисотбаксового врача я тоже ничего хорошего не жду. И я не в Киеве :))

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

От шестисотбаксового врача я тоже ничего хорошего не жду. И я не в Киеве :))

Это при том что большинство из них получают меньше и многие из них профессионалы, особенно если вспомнить что вы «не в Киеве».

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

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

Но ни о каких стартапах (а, тем более, своём бизнесе), даже слышать не хочет.:)

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

Это просто особенности характера, программирование здесь совершенно не причем.

> БЫЛ супер-программистом, но времена меняются и люди ломаются
Он и сейчас в порядке. С поддержкой/развитием говн0кода справляется, каждый год очередные сертификаты Майкрософта сдаёт (он МЦСД, кажись).

Но ни о каких стартапах (а, тем более, своём бизнесе), даже слышать не хочет.:)

maxdz

Зависит от приоритетов в жизни, да и жизненной активности (даже, можно сказать, авантюризма).

Как говорится "Первым делом самолеты"©... Верю, что человек, о котором шла речь БЫЛ супер-программистом, но времена меняются и люди ломаются, приоритеты становятся другими — общество навязывает свое... Хочется, машину, дом у моря, отпуск 2 месяца в пол года, отдохнуть зимой в Швейцарии и т. д... вот и приходится г-кодить. Проблема в том, что во время г-кодинга человек не развивается, так как все делает уже по накатанной, как делал это в прошлом и позапрошлом проектах (за что и получает деньги, иначе тот, кто ему платит — л0х или просто добрый человек)...

> программисту в какой-то момент просто надоест та рутина, те рамки, условия, подачки и прочие к*кашки, чем его принуждает заниматься г-контора
Зависит от приоритетов в жизни, да и жизненной активности (даже, можно сказать, авантюризма).

Скажем, один мой приятель, очень хороший разработчик — доработал до вице-президента по софту немаленькой конторы и занят, как раз, обслуживанеим говн0кода. Гoвн0код его достал (он и сам пишет тоже, т.к. должность, скорее, техническая, чем руководящая), начальство достало тоже, разработчики достали тоже -, но платят хорошие деньги, много отпуска, любит путешествовать, хочет стабильности (не хочет стартапов) и (главное!) прекрасно понимает, что в 99% прочих стабильных контор будет то же самое, но за меньшие деньги. А в 1% нестабильных, но творческих — не будет зарплаты в срок.

поблуждав малЯсь по линку _Ан0нимки_
набрел на полезный ресурс.
«Библиотека фонда „Династия“»

elementy.ru/lib

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

читала обсуждение г*вн*кода и вспомнилось про копроэкономику gamedev.by/.../Копроэкономика

И все-таки ИМХО, но отличие г-кодера от программиста (т. е. творческого человека) то, что программисту в какой-то момент просто надоест та рутина, те рамки, условия, подачки и прочие к*кашки, чем его принуждает заниматься г-контора — никакие деньги и стабильность по его мнению такого издевательства не стоят... он выше этого всего... и он свалит, свалит как минимум в старт-ап на совершенно иных условиях чем почасовая ЗП или сам орагнизует этот старт-ап — иначе у него голова просто не работает. Здесь уже он будет решать как писать код, что так, а что не так -, а пользователи уже рассудят: Если человек с мозгами то он и рынок проанализирует, и продавцов найдет, и все у него получится...

А удел г-кодера: разгребать г-код в уже сформировавшейся г-конторе, где сотни и даже тысячи г-кодеров как он занимаются тем же самым +/-, что и он, и говорить, какие все вокруг г-кодеры и какой он умный, единственный, неповторимый и какой сосед-Вася ламер и г-кодер в сравнении с ним — идеалом программирования, знатоком библиотек и алгоритмов:).

Очевидно 98% аптайма не такой уж и плохой результат что бы юзеры разбежались.

Ну если бы фейсбук начал загибаться на первой 100 тыс. пользователей и/или глючить несчадно

у Twitter такое было на одном из этапов развития,
en.wikipedia.org/...witter#Outages
но потом его немного переписали

en.wikipedia.org/...#Implementation

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

это +5

как в авиации- не все зависит от летчиков, но без них...

Сергей Волошин

Не так давно с кода фейсбука смеялись

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

У меня сейчас забавная ситуация, когда свежий программист после пары месяцев разработки изменил своё исходное мнение с «Здесь нужно всё заоптимизировать на С с библиотеками, блекджеком и шлюхами» на «Нам достаточно написать интерфейс к Матлабу с логикой на чём-нибудь читаемом». Просто потому, что человек до этого работал в конторе, где был совсем другой цикл жизни кода, и потому, что ему постоянно указывали на возможные недостатки его решения.

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

ТС, формошлеп — это не высокоуровневый программер, а быдлокодер имеющий мышление на подобии Анонима.

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

Я полагаю, именно по этой причине твой рейт никогда не поднимедца выше 25 баксов в час (при прямой работе с заказчиком, как оно в лидерах рынка — хз, т.к. там и рейтов таких оплаты труда особо нет), что назвать «рубкой бабла» как-то не поворачиваедца язык.

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

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

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

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

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

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

роздрукуй, і повішай над своїм робочим місцем

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

Скажи наркотику нээт!

О том и разговор, что все великое создается гавнокодерами.

Посыл был в том что не каждый суперпрограммист способен написать винду, а г0внокодер и подавно.

все великое создается гавнокодерами.

роздрукуй, і повішай над своїм робочим місцем

Как то не видно что бы на каждом углу супер программисты винды писали.

О том и разговор, что все великое создается гавнокодерами.

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

Может задача просто сложная и масштабная и гавнокодинг тут не причем? Как то не видно что бы на каждом углу супер программисты винды писали.

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

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

Гавнокодеры это двигатель ИТ прогресса. Быстро, дешево, кое-как работает и отлично!

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

Не так давно с кода фейсбука смеялись

habrahabr.ru/...logs/php/13141

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

Наивное мнение. Свой продукт. Кому он надо-то?

Все верно. Г*внопродукт, как правило, никому не нужен — это есть основная причина неудач г*внокодеров выпустить свой продукт на рынок, поэтому многие даже и не пытаются, а некоторые и не задумываются.

Наивное мнение. Свой продукт. Кому он надо-то?

кому г*вн*к*д, а кому — удобрение. есть проекты, которые растут и цветут на багфиксе

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

А формошлепство здесь ни при чем.

>> уже просиять потратити дорогоцынний час, ставити додатковы прибамабси

ecn.channel9.msdn.com/...ntities_kit.mp4

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

Your browser doesn’t seem to support Silverlight or HTML5 video

Зацените до чего дошла работа формошлепа: channel9.msdn.com/...EditingEntities

Чтоб не тратить много времени, промотайте на 12 минуту =)

А вот интересно, бывают г$вн$кодерынеквалифицированные программисты-эмбедеры? Или терминатор из будущего таких отстреливает в первую очередь?

Їм Термінатор дає останній шанс стати пристойним С-гратка або Джава кодером, якщо це китайське попередження спрацьовує, то таки так, він повертається ще раз, щоб заваршити свою справу (власне про це був сіквел із губернатором Каліфорнії).

flyman, твой камент никак не коррелирует с цитатой
«А ведь формешлепство можно превратить в очень даже творческую работу.»

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

А вот интересно, бывают г$вн$кодерынеквалифицированные программисты-эмбедеры? Или терминатор из будущего таких отстреливает в первую очередь?

А ведь формешлепство можно превратить в очень даже творческую работу.

В моэму розумінні, це виглядає приблизно так — взяв кельнею плиточник розчину, ляпнув на стіну, якось розмазав.
Взяв ще раз, і то саме: шльоп — шльоп — шльоп.
Так і кодерок — взяв мишкою контрол, шльопгув на вікно розмазав.
Потім знов черпнув мишкою — на вікно — розмазав.

В кінці місяці отримав з/пл, почитав на форумах що вона 2га після топів — задовільнив ЧСВ...


Готов писать самый г*вн*к*д-истый г*вн*к*д

Таких формошлепов еще в детстве убивает Терминатор из будущего

отличать «работу программиста» от «рубилово бабла»

Пох на «работу программиста», подскажите, а где можно реального бабла срубить? А то что-то вижу у программистов не очень получается. Готов писать самый г*вн*к*д-истый г*вн*к*д, буду стараться, обещаю!


,
а как ассемблер (фортран) прогеры называли Си-шников 30 лет назад

НаСИльниками:) В свою насильники язык Паскаль называли Пасцаль:)

Думаю, следует отличать «работу программиста» от «рубилово бабла». Как правило после, первого получаются программы, после второго — г*вн*к*д.

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

сами ж видели наверно...

Думаю, следует отличать «работу программиста» от «рубилово бабла». Как правило после, первого получаются программы, после второго — г*вн*к*д. В этом вся разница, а формошлепы тут не при чем.

За последнее время наколбасил столько формочек, что многим тут и не снилось. Я король корпоративного формошлепства, падайте на колени и молите меня о пощаде.

Умение делать хороший интерфейс — это очень важно. Где то читал об одной конторе, которая смогла увеличить продажи на миллионы долларов после переделки формы онлайн-продаж на сайте. Вот только, если программист ограничивается интерфейсами и работой с БД, то это плохой программист.

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

та ракета со спутниками упала видимо по причине засорения сопла опилками бабла.
хотя отмаз придуман изящный, йа рыдал: при заправке в ракету залили лишнюю тонну топлива,
из-за чего импульс получился не тот, и они промазали на 8 (!) градусов.
вот если мужик «промажет» на 8 градусов, он попадет вообще не тот трюм...
сорри за оффтоп
вопрос по теме: а как ассемблер (фортран) прогеры называли Си-шников 30 лет назад?

хотя это надо наверно спрашивать не здесь, а ниже по течению))

Ну да, и ракеты у эмбеддеров потом со спутниками падают =))

Ваван

Кстати вот подумал, что в принципе ембедед-разработчика можно сравнить скажем с шахтером. Что один, что второй копаються на низком уровне. У первого должны быть мега познания в хардваре и прогр. на низком уровне, у второго, должно хватать сил, мотивации долбить этот уголь и пр. Хотя по сути, это черная работа, за которую даже меньше платят, чем банальному формошлеперу, который при минимальных затратах своей энергии получает намного лучший результат и компенсацию.
У имбеддеров часть решений принимается по-другому. Например, формошлёпперам нужно думать про миграцию, эджайл, расширяемость, write-once code может при неправильном менеджменте перерости в головную боль, на данные завязано очень много ручек, а дизайнеры и бизнес-люди могут принять решения, которые при недостаточной внимательности формошлёппера могут привести к тому, что систему придётся полностью переписывать с миграцией и регрессией. Плюс начинаются головные боли, когда нужно взаимодействовать с другими системами.

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

Формошлёпство а.к.а. куски энтерпрайза — это очень нормально, но там весь интерес в упоре на бизнес-логику. Грубо говоря, в формошлёпстве выгодны быть или очень эффективным программером с формогенерацией, или хорошим бизнес-аналитиком. Ну или решать проблемы, которые вызваны очень высокой нагрузкой на систему.

быдлоклассы по фаулеру

— по этому глупому сочетанию слов, могу заключить, что вы немного ошиблись форумом.

Славик, такие быдлоклассы уже не модно вручную писАть. Есть ORM’ы с автоматической генерацией. (Опять таки в контексте.NET говорю)

Разделение труда — один из двигателей прогресса:). И это нормально. Как ты сам правильно отметил на примере с гипсокартоном.

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

Делать интерфейс ничем не хуже работа, чем клепать быдлоклассы по фаулеру, инкапсулирующие тривиальные селекты, инсерты, апдейты в таблицу, нереально гордясь своей объектно ориентированностью и пафосно называя это АПИ или фреймворком:)

изготовители гипсокартона наверно с презрением относятся к гипсокартонщикам, которые этот гипсокартон юзают, но сами изготовлять не умеют.,

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

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

Может, крутые дядьки с Embedded начнут вонять. Но ИМХО, разработчик всегда пытается сделать свой код таким, вносить изменения в который будет легко. Тогда зачем тратить куеву кучу времени, чтобы написать велосипед, которы будет более глюкавым, чем стабильный и проверенный фреймворк? Конечно, все имеет свои ограничения и где-то вам прийдется писать с 0. Но это скорее исключение из правила:).

Это, собственно и есть вся суть всего языка HTML, который и делает элементы из XML — и всея веб-программирования

Только это надо было реализовать для десктопа (я так понял).

>> Это, собственно и есть вся суть всего языка HTML, который и делает элементы из XML — и всея веб-программирования

А есть еще XSLT который по XML умеет генерить HTML, при чем XSLT машина встроена в IE4.5 и выше.; -)

генерить интерфейс по шаблону XML-ины... маппинг элементов языка XML на генерируемые элементы формы

Это, собственно и есть вся суть всего языка HTML, который и делает элементы из XML — и всея веб-программирования

>> А что мешало генерить интерфейс по шаблону XML-ины.
специфика, необходимо было добавить метаинформацию: порядок размещения на форме, UI для редактирования (например на свойство типа String можно навесить TextBox, OpenDialog (в этом случае еще и FileMask)... etc)

Когдато давно по маппингу NHibernate делал генератор форм, и тогда еще понял, что не стоит завязываться на атрибуты NHibernate, так как СУБД и доступ к ней могут быть изменены.

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

Какой это нафиг саксес стори? Кодер создает интерфейс, а начальство (престарелые кодеры) вносят «умные правки». Саксес стори в области интерфейса может быть только когда он разработан спецами по UX.

А ведь формешлепство можно превратить в очень даже творческую работу.

Формошлепство — это замена термина быдл0кодинг в контексте разработки ЮИ (которая так же считается «не тру»).

Когда оно превращается в «творческую работу» — это уже разработка ЮИ.

Мне недавно пришлось разрабатывать настольный редактор кучи XML’ей строго определенного формата.

А что мешало генерить интерфейс по шаблону XML-ины. тогда не нжен ни какой строгоопределенный формат, а просто маппинг элементов языка XML на генерируемые элементы формы?

А проблемы то и нет
Пессимист видит трудности при каждой возможности; оптимист в каждой
трудности видит возможности.

Уинстон Черчилль

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

Мда... Еще с такой гордостью рассказывает...

(смотрит на жалкого формошлёпа с презрением)

Подписаться на комментарии