Личные инструменты

Программист

Материал из Lurkmore

(Перенаправлено с Программисты)
Перейти к: навигация, поиск
ZOMG TEH DRAMA!!!11
Обсуждение этой статьи неиллюзорно доставляет не хуже самой статьи. Рекомендуем ознакомиться и причаститься, а то и поучаствовать, иначе впечатление будет неполным.
«

Программирование — это церебральная мастурбация

»
— Физики
Типичный представитель

Программист (Проггер, ЭВМщик, ФГМщик, Девэлопынь) — это человек, который пишет про граммы. Программисты делятся на архитекторов[1], собственно программистов, быдлокодеров и хеллоуворлдщиков (расположены в порядке убывания профессионализма).

Содержание

[править] Применение

По области работы программисты делятся на системных, прикладных и вебпрограммистов. Первые пишут операционные системы, драйверы и виртуозно ругаются матом на нескольких языках (в первую очередь на асме и Си). Лохматы, небриты (зачастую бородаты). Знают, как написать программу для микроконтроллера, чтобы тот заработал с USB. Вторые пишут прикладной софт для голых осей, написанных системщиками. Иногда прикладники сбиваются в стаи и пишут компьютерные игры. А иногда и страдают Вебпрограммисты являются совершенно отдельной расой и пишут дейтинги на PHP. Отличаются полным незнанием классических алгоритмов и вообще теории. Что не мешает особо хитрожопым из них зарабатывать кучи денег, не особо напрягаясь.

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

Также простые пользователи, которые считают, что стоящая у них под столом коробка — процессор, называют программистами админов, сотрудников техподдержки, а в конце 90-х — начале 2000-х вообще любого человека, имеющего компьютер и доступ в интернет.

Пpогpаммист похож на шамана — оба боpмочyт непонятные слова, совеpшают непонятные действия, и оба не могyт объяснить, как оно pаботает.

[править] Программист в России

Breaking news!
b
Истинный web-программист

В Российской Федерации, в соответствии с решением заседания от 5 июня 2006 года Совета по ИТ при Министре информационных технологий и связи РФ, при организационной поддержке Мининформсвязи РФ и Ассоциации Предприятий Компьютерных и Информационных Технологий (АП КИТ) был выполнен проект, по которому лишь программист самого низшего уровня квалификации является кодером, а выше являются руководителями других программистов.

Указом Президента Российской Федерации от 11 сентября 2009 г. N 1034 «О Дне программиста» установлен профессиональный праздник — День программиста и отмечаемый 13 сентября (в 256-й день года, что как-бэ намекает нам), если год високосный — 12 сентября. [1]

Социальный состав программистов в этой стране:

  • низкие социально, пьющие и часто думающие, что вся жизнь должна укладываться в математическую логику;
  • женщины, неоправданно обласканные мужским вниманием ещё с технических факультетов, редко симпатичные;
  • стареющие «опытные» мизантропы;
  • прибежища всяких мутных тараканов типа социализма, нацизма-ксенофобии, женоненавистничества и админства головного мозга;
  • любители футбола и рока;
  • пикаперы;
  • юные форексеры;
  • «поуехалы» с завышенным ЧСВ.

[править] Виды программистов

[править] Хеллоуворлдщик

Само понятие хеллоуворлдщика тесно связано с одной из классических задач программирования (которая частенько решается самой первой при освоении языка программирования) — вывода на экран сообщения «Hello, world!».

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

[править] Быдлокодер

«

Любой дурак может написать код, понятный компьютеру. Хорошие программисты пишут код, понятный людям.

»
— Мартин Фаулер

Быдлокодер (англ. Code Monkey) — это человек, который считает рекурсию мемом башорга, не знает основных алгоритмов и тонкостей языка, на котором пишет, и поэтому использует неочевидные и абсурдные решения, а зачастую вообще использует исключительно готовые алгоритмы и программы, находя их на OpenSource.net или сайтах, подобных CodeGuru. Понятие быдлокодера тесно связано с понятием индусского кода, которое также является одним из мемов Рунета. Также быдлокодерами именуются программисты, пишущие исключительно на языках подобных VB и привыкшие программировать мышкой, результатом чего является отсутствие языковой грамотности, понимания собственного кода и культуры программирования. Программы таких быдлокодеров никогда не бывают кроссплатформенными и редко бывают стабильными.

Стоит обратить внимание, что чуть менее, чем все быдлокодеры избегают использования форматирования кода (что, к примеру, вынудило фирму Microsoft разработать средства принудительного форматирования Visual Basic кода).

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

Пример быдлокодерства на языке C++

using namespace std;
char SprositiPolzovatela()
{
char c;
for(int i=1;i<5;i++)
{
cout<<"OK? (y/n): ";
cin>>c;
//bol'shie i malen'kie bukvi
if(c!='y' || c!='Y' || c!='n' || c!='N') i--;
else i=10;
}
return c;
}

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

bool areYouSure () {
char c;
do {
std::cout << "OK? (y/n): ";
std::cin >> c;
} while (!strchr("YyNn", c));
return ('Y' == с) || ('y' == c);
}

Иногда быдлокодеры также зовутся индусами.

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

Известные быдлокодеры:

[править] Программист

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

Программист — это то, что вырастет из быдлокодера и хеллоуворлдщика, если они RTFM. Хотя, как показывает практика, из быдлокодера и хеллоуворлдщика никого не вырастает (в отдельных случаях вырастают конфигурасты на , или эникейщики на Visual Basic).

Погромист — уменьшительно-неуважительно названный программист.

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

«

Прикладные программисты - паразиты на теле мирового сообщества. Копипастят примеры из доки, дают свои имена переменным, а после этого ещё требуют зарплаты!

»
— Анонимус

[править] День сабжа

Такова жизнь программиста

Неофициально праздновался в России «каждый 256-й день года» (sic!). И так аж до 13.09.09, ибо Шмеле таки подписал указ, узаконив сей день как профессиональный праздник всея быдлокодеров. Эпик вин, хотя, конечно же, всем как обычно.

[править] Отношения с непрограммистами

«

пасть заткни. тож мне ацкий айтишнег. вебпрогер блять! хоть бы на сях писал. в гробу в белых тапках я видала заниматься айти. я социальный антрополог между прочим. а таких криворуких боянщегоф как ты надо УБИВАТЬ УБИВАТЬ УБИВАТЬ РЖАВОЙ СЕКИРОЙ УЖОСА ВО ИМЯ ДОБРА. Выебается тут перед невинными детьми. Думаешь если кусок кода написал, то никто ниче не поймет? лошара ты.

»
— мнение эталонной ТП о сабже

[править] Отношения с коллегами

«

— Ты функциональщик! - прокричал Сергей на весь оупен-спейс-рум номер 14. Комната притихла в ожидании развязки. — Я видел, как ты вчера вечером каррировал и декаррировал прямо за рабочим компьютером! Неодобрительный ропот и возгласы удивления прокатились по комнате. Кто-то громким шепотом сказал “какой ужас, а я с ним за руку здоровался”. — Знаешь что, Сергей, — сказал Денис, вставая из-за рабочего стола, — любой нормальный мужчина, если у него всё в порядке, может позволить себе позаниматься функциональным программированием. Это естественно. Каждый хотя бы раз, да пробовал. Зачем только об этом кричать на всю комнату? Я же не кричу, что ты объектно-ориентированный! Девушки захихикали, кто-то снова громко пробормотал “ну надо же, а по нему и не скажешь”. Присутствовавший при этом Игорь Матвеевич сильнее вжался в кресло. Только бы никто не узнал про его процедурные наклонности!

»
— Суть явления

[править] Оценка трудоёмкости

Общение с начальством

  • Невозможно в принципе — я не знаю, как это сделать.
  • Невозможно — я знаю как, но мне лениво.
  • Сложно — придется прочитать документацию.
  • В принципе, реализуемо — я как раз вчера скачал из интернета библиотеку, которая решает поставленную задачу.
  • Элементарно — употребляется исключительно при оценке задач, стоящих перед другими программистами, независимо от степени их сложности.
  • Работает — компилируется.
  • Отлаживаю — не компилируется.
  • Прогоняю тестовые примеры — пытаюсь найти такой, на котором программа не вываливается.
  • Работал допоздна — играл по сети.
  • К десяти — после обеда.
  • После обеда — к 18:00.
  • Завтра — через неделю.
  • Неделя — месяц.
  • Месяц — полгода.
  • Год — никогда.
  • Точно — может быть.
  • Вероятно — вероятность равна 1,5.
  • Может быть — нет.
  • Нет — а кого вы еще найдёте за такие деньги?

Общение с заказчиком

  • Невозможно в принципе — невозможно в принципе.
  • Сложно — элементарно, но предложенная сумма мне не нравится.
  • В принципе, реализуемо — я понятия не имею, как это сделать, но предложенная сумма мне нравится.
  • Элементарно — употребляется исключительно в ответ на вопрос, легко ли будет пользователю освоить интерфейс программы.
  • Ресурсоёмкая задача — мне лень заниматься оптимизацией.
  • Передовые информационные технологии — мне лень заниматься оптимизацией.
  • Большой объём работы — целый час качал библиотеку из интернета.
  • Минимальные требования — запустится, но работать не будет.
  • Дружественный интерфейс — поддерживается мышка.
  • Простой интерфейс — не поддерживается мышка.
  • Полная совместимость — никто не проверял, но чем чёрт не шутит?
  • Релиз — бета-версия.
  • Особенности — глюки.
  • Оптимизация — выкидывание того, что так и не удалось заставить работать.
  • Превосходит аналоги — занимает больше места.
  • Неделя — 1) месяц; 2) день.
  • Месяц — 1) полгода; 2) неделя.
  • Год — понятия не имею, сколько.

Общение с коллегой

  • Ламеры — 1) все авторы программных продуктов, за исключением говорящего и собеседника; 2) то же, но включая собеседника.
  • Юзеры — низшая форма жизни, тупиковая ветвь эволюции.
  • Хакеры — 1) вершина эволюции, принадлежность к каковой говорящего неявно подразумевается; 2) гады, вчера приславшие мне очередной троян.
  • Глюкало — 1) софт; 2) железо.
  • Глюкодром — 1) железо; 2) софт.

[править] Программисты и собаки

Собака программиста на Haskell гадит только если кому-то нужно удобрение.

В собаку любителя OCaml можно засунуть другую собаку и получить третью.

Собака лиспера постоянно путается в своей подстилке.

Собаку программиста на Perl иногда не узнает даже хозяин.

Собака программиста на Python отходит ровно на четыре шага от места, где нагадила.

Скелет собаки Cишника виден без рентгена.

Призрак собаки программиста на COBOL пугает других собак по полнолуниям.

Собака программиста на Java умеет дышать кислородом, водородом, хлором и даже аргоном.

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

Собака программиста на Scala родилась в будке собаки программиста на Java от связи питомцев программистов на OCaml и Smalltalk.

[править] Галерея

[править] Видео

b
Сортировка методом выборки
b
Сортировка методом Шелла
b
Пузырьковая сортировка
b
Сортировка методом вставки


[править] См. также

[править] Ссылки

[править] Примечания

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