Прогер кто это – Кто такой прогер?

Как стать крутым прогером? | Практическая Java

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

Итак, дорогие читатели моего журнала, начнем. Многие думают, что крутота прогера определяется количеством освоенных им технологий и количеством проектов в которых он поучаствовал. На самом деле — это фигня. Крутота прогера измеряется количеством и серьезностью ошибок которые он допустил за свою жизнь. Сегодня я расскажу о 2х самых наиболее частых и серьезных ошибках в веб-программировании. Правда ни один крутой прогер никогда не сознается, что он их допускал. Но будьте уверены, если вы видите перед собой крутого прогера, то эти 2 ошибки он допускал точно. И наоборот, если прогер успел допустить эти 2 ошибки, то он уже дико крут! Собственно, это не ошибки а описания атак на сайты, но атаки эти возможны в следствии ошибок теперь уже крутых прогеров.

SQL-injection

Очень стара атака. Реализуется до безобразия просто, если прогер формирует SQL-запросы при помощи конкатенации строк (конкатенация — это крутое прогерское слово, которое обозначает соединение строк, но крутые прогеры всегда употребляют слово «конкатенация», потому что так круче). Итак предположим, что прогер проверяет правильность пароля SQL-запросом следующего вида:

"select * from users where login='"+login+"' and password='"+password+"'"

Возьмем какой-нибудь логин попроще, например «admin», а пароль сформируем следующим образом: «' or ''='«. В результате получим SQL-запрос:

"select * from users where login='admin' and password='' or ''=''"

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

Как же этого избежать? Например в Java есть и

appliedjava.wordpress.com

Про кодерров и прогерров :-)))


Форум: «Потрепаться»;
Поиск по всему сайту: www.delphimaster.net;
Текущий архив: 2003.01.13;
Скачать: [xml.tar.bz2];

Вниз

Про кодерров и прогерров :-))) 

FLIZ   (2002-12-22 01:08) [0]

кто такие кодеры и кто такие программисты? :-)

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

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

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

А что такое кодер? а это человек случайно попавший в
мир создания программ (специально не написал «в мир
программирования»). Ему по фигу что там получит пользователь.
Знаю немало случаев когда на фирме «набросать программку»
получали кому угодно и в результате получалось что угодно :((

Знаю и другие ситуации — когда люди косвенно относящиеся
к компам, «упирались» например в Аксесс и создавали хорошо
оформленные и неплохо работающие офиссные приложения.
Кто они? по моему — прогеры. «Локальные», так сказать :-)

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

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

Уровень его программ, кстати тоже остается средний или низкий.

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

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

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

в общем вот так… :)

З.Ы.
и наврядли кодеры сидят в Дельфи в выходные, чтобы понять
что-то новое :).Им это не нужно.

З.З.Ы.
естесвенно это все имхо. написал не в укор или наезд на кого-то,
просто решил выступить 🙂



nu und   (2002-12-22 01:16) [1]

>FLIZ © (22.12.02 01:08)

Логично! Кодер = Программист-любитель;
Программист = Программист-профи или -будующий профи.



FLIZ   (2002-12-22 04:04) [2]

эээ… в 4 ночи трудно понять — это с ирониейц или нет? :-))



MikeN   (2002-12-22 04:12) [3]


то бишь Майк Науменко (царство ему небесное, если он сам хотел его) уже давно ответил на сей вопрос: «Это гопники, они мешают нам жить»!



Viktor Kushnir   (2002-12-22 09:22) [4]

А как назвать человека, который тратит на Дельфи выходные, получает от этого удовольствие и никаких денег?



Lola   (2002-12-22 11:27
) [5]

Мне, например, абсолютно без разницы, как называться :))) Лишь бы заплатили вовремя и в полном объеме ;)))
Одно скажу, одним без других не обойтись. Кто-то может и должен «творить», а кто-то выполнять «черную» работу. Главное, чтобы волею судьбы или начальства они не поменялись местами.



Marser   (2002-12-22 12:24) [6]

Да ну вас!Я свою точку зрения высказал в ветке «Начало».



Сатир   (2002-12-22 12:59) [7]

…эх, жалко, что сёдня выходной…
но ничего, потерпите немножко, в Понедельник прийдёт Эльф и расставит все точки над «i»%)



Ihor Osov’yak   (2002-12-22 13:10) [8]

2 Сатир © (22.12.02 12:59)

Это тот, который Ketmar?



Сатир   (2002-12-22 13:34) [9]

2Ihor Osov»yak © (22.12.02 13:10)
ya-ya, das ist er



Оливейра   (2002-12-22 13:36) [10]

Какой-то наивный юноша пост толкнул. Мне лично глубоко по барабану, как меня назовут, хоть горшком, главное — проект в срок сдать с минимумом багов. А навык оптимизации с опытом непременно придет, особенно если работаешь в софтверной команде, где тебе просто ВДОЛБЯТ в подкорку, как переменные обзывать, где пробелы делать, где ++i, а где i++ ставить. Программировать и обезьяну научить можно. Это такое же ремесло, как и хот-доги продавать. Одни более способные, другие менее…



Judith   (
2002-12-22 14:10
) [11]

Оливейра © (22.12.02 13:36)
Совершенно верно.
Народ, ну неужели нельзя обойтись без ярлыков?



Ketmar   (2002-12-22 14:28) [12]

>FLIZ © (22.12.02 01:08)
бредим. видимо оттого, что пиво кончилось.

>Viktor Kushnir © (22.12.02 09:22)
назвать психом. %-)

>Сатир © (22.12.02 12:59)
а самому потрудиться? всё я да я… %-))

>Judith © (22.12.02 14:10)
можно. но уж коли подняли вопрос… не в том дело, что ярлык навесили, а в том, что неправильный %-)

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

Satanas Nobiscum! 22-Dec-XXXVII A.S.



Сатир   (
2002-12-22 14:33
) [13]

2Ketmar © (22.12.02 14:28)
пятёрочка, особенно это: не в том дело, что ярлык навесили, а в том, что неправильный



Viktor Kushnir   (2002-12-22 15:47) [14]

На счет способностей — все бегом на lib.km.ru -> АИЗЕК АЗИМОВ:
ПРОФЕССИЯ



FLIZ   (2002-12-23 00:34) [15]

2 Оливейра © (22.12.02 13:36)
>Какой-то наивный юноша пост толкнул.
не согласен! 🙂 и на то есть причины … 🙂



Dok_3D   (2002-12-23 06:14) [16]

Прогеры, кодеры, памперсы …
Дурь.
А, и еще, автор не написал, к какому из пунктов его классификации он себя относит.



OlDemon   (2002-12-23 07:45) [17]

Согласен с dok-3D. Это похоже на «гопников» — «нефоров» средней школы. Одни хорошие — другие плохие. А кто конкретно, зависит от принадлежности говорящего.
2 ketmar> мне вот итересно что твой тирлайн значит. Даже в инете искал. Ненашел. Могет скажешь?



Ketmar   (2002-12-23 11:08) [18]

>OlDemon © (23.12.02 07:45)
это не тирлайн. это оригин %-)) в FAQ. для намёка: Satanas — это он самый, Nobiscum — это «с нами». %-)

Satanas Nobiscum! 23-Dec-XXXVII A.S.



Ru   (2002-12-23 11:20) [19]

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



.nuke   (2002-12-23 11:21) [20]

>А что такое кодер? а это человек случайно попавший в
>мир создания программ.

странное мнение, а ктож по твоему те люди которые всякие демы и интро пишут? извиняюсь и _НЕ_НА_ДЕЛФЯХ_, для демомэйкеров кодер это такой человек который как раз дожен позаботиЦа об оптимизации, ибо его задача объединить въедино все то что написали художни, моделер и музыкант, и чтоб оно все шустро бегало без затраты больших ресурсов.



VAleksey   (2002-12-23 11:27) [21]

Хм … я случайно в этом мире…
Вообще, в сысле 🙂



Ketmar   (2002-12-23 11:50) [22]

>.nuke © (23.12.02 11:21)
хоть кто-то знает, где водятся настоящие кодеры и что они из себя представляют. %-)

зыж
кстати, совсем не по теме: вспомнились слова pascal»я: comments are for beginners %-)

Satanas Nobiscum! 23-Dec-XXXVII A.S.




Форум: «Потрепаться»;
Поиск по всему сайту: www.delphimaster.net;
Текущий архив: 2003.01.13;
Скачать: [xml.tar.bz2];

Наверх

EMAIL={{}};LOGIN={{FLIZ}};TITLE={{Про кодерров и прогерров :-)))}};ATTRIBUTES={{}};ID_MSG={{302708}};ID_GROUP={{14}};ID_NNTP={{93327}};ID_DM={{37297}};REPLYNR={{0}};ID_DM_AUTHOR={{0}};ARCHIVE={{2003.01.13}};REPLYDATE={{2002-12-22 01:08}};CNT={{22}};





Память: 0.8 MB
Время: 0.04 c

www.delphimaster.net

Программист — Lurkmore

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

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

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

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

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

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

Собака программиста на Ruby по словам продавцов гадит только там и тогда, где хозяином ожидается такое ее поведение.

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

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

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

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

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

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

Собака программиста на ABAP чем-то похожа на собаку программиста на 1С, только говорит на немецком языке и стоит в 9000 раз дороже. А еще постоянно пугает других собак, так как папа у нее был пес программиста на Cobol.

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

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

Собака программиста на Objective C чем-то похожа на собаку программиста на C, при этом имеет квадратную голову, глаза и хвост в виде символов @, а ноги и уши в виде квадратных скобок. Ранее питалась чистым углеродом, сейчас питается только какао.

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

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

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

Собака программиста на Flash/ActionScript чем-то похожа на собаку программиста на Javascript, только очень не дружит с владельцем мобильной версии собаки на Objective C. Умеет показывать видео и играть с хозяином, больше ни на что не способна.

Собака программиста на Delphi, как и собака программиcта на C#, живёт только за окном в помещении с сероводородом (хотя её одичавшие версии могут дышать всем тем, чем дышит собака на Java, а мобильные версии — всем тем, что и собака на Objective C). Внешне выглядит как собранная из отдельных компонентов, внутри чем-то напоминает собаку программиста на C (если разозлить, то норовит откусить если не ногу, то руку владельца).

Собака программиста на LOLCODE напоминает нян-кэта, но ничего не умеет. Имеет размер мозгов такой же, как и у собаки C++ника.

Собака программиста на Assembler’е может сбрасывать пароли биоса. Лает словами eax, edx и прч.

Собака программиста на JPHP — СОБАКА !!!!!1111!

Собака программиста на MS SQL хорошо ищет палку, но только если хозяин бросил палку не в собаку.

Собака программиста на бинарном коде похожа на труЪ собаку, но стоит чуть-чуть ошибиться — и у тебя инопланетный волкожук из 6 цивы

Собака АСУТП-шника гадит без передыху в один и тот же угол. Если её прибить, то через две секунды появится другая такая же и продолжит гадить.

lurkmore.to

Ответы@Mail.Ru: Кто такой программист?

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

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

Кто такой программист? Во времена своего детства золотого (конец школы и младшие курсы универа) я почему-то был твердо уверен, что я программист. Но учеба в универе плавно подходит к концу, и пора бы уже заниматься не пьянками-гулянками, а некой профессиональной деятельностью. Устроиться на работу. И тут вдруг детство кончилось. Радужные мечты разбились о чугунную задницу реальности. Ну не то, чтобы совсем разбились, но вопросы возникли. А почему собственно я программист? Да, я знаю синтаксис пары языков. Цикл — for, условие — if. Зашибись знание, если подумать. Ну еще писал на этих языках всякую чушь — от потуг создать некую «игрушку» до университетсих лаб, недалеко ушедших от заданий типа «отсортируйте массив по убыванию». Фактически — просто проявлял указанные выше знания на протяжении n килобайт. Просто отлично. Да, у меня (в отличии от большинства одногруппников) не бывает страшных проблем из цикла «как же это написать? «. Но говорит это скорее не о моей смекалке, а об окружающих. При всей глубине своего незнания я уже вроде начинаю понимать, что не это все делает человека программистом. Вопрос — что? Мне, наверное, скажут, что образ мышления. Но если я скажу работодателю, что он дожен меня взять, потому как у меня правильное мышление, то, боюсь, с собеседования меня уведут санитары. У «серьезных» людей, это все решается опытом. Два года — хороший спец, 10 — просто отличный. Но я опыт пока еще собираюсь получать. Так что же должно произойти, чтобы и мне, и окружающим стало понятно, что я таки программист, и меня надо срочно брать к себе, пока конкуренты не перехватили? Или, если быть проще, как определить, что у меня хорошее/отличное знание с++/пхп/делпхи? (часто вижу вакансии с такой формулировкой) А самое главное — как это показать кому надо?

Ба! да у меня такой же монитор 🙂

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

Это я, а точнее если ты программист, то вот это: var number=1 backround-color: red; и <?php ты должен знать как минимум.

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

touch.otvet.mail.ru

Прогер или Кодер? — Мысли вслух — Статьи — Каталог статей

Далее прогер — программист, кодер — так называемый кодировщик (вроде так их называют), прога — программа.

А ты?! Да ты?! Именно! Чуешь разницу меж «кодером/прогером»? Просто многие те, кто пишут проги, думают, что они прогеры, так как программист это типо тот, кто делает программы. А может программы делают программистов? О_о  Всё относительно. Например строителем можно обозвать ребёнка в песочнице который строит замок, однако втоже время, может этот ребёнок в песочнице строит дом О_О. Строителями называют обычно тех, кто имеет хотябы какое-то мастерство в своём деле. Ещё любят такое смачное слово «специалист». Типо «я специалист» ололо. Так вот, кодерами обычно называют тех, кто набирает код программы… Это не означает что код программы неможет набирать прогер. Просто тогда прогер кодит ). Дак в чём же отличие? Кто же тогда прогер? Прогер это тот кто разробатывает архитектуру софта, подбирает алгоритмы, структуры данных, и прочее. Прогеры тоже бывают разными — заразными, злыми — добрыми, флудерами — молчунами, крутыми — ватнегами, задротами — нубами, тру — фэлс, и т.д. Кроме того прогерам платят много больше чем кодерам ).

Теперь два примера, ставящих кодеров и прогеров на свои места.

Пример номер раз (краштест для нубов): часто приходится сортировать списки из элементов, по какому-то «порядку» (линейному, если тут бывают ботаны кроме меня… см. Отношение Порядка) Начнём с кодеров… Кодер-обыкновенный с интузиазмом отнесётся к данной задаче, типа: «сча мы тут всё отсортируем», и начнёт придумывать алгоритмы — оно и правильно. Просто у всех разная думалка, и я считаю велосипеды придумывать полезно: сначала сам изучишь что кчему, попробуешь, попробуешь на вкус, а потом сравнишь, насколько круто кто-то другой решил это, и самое хорошее — тебе будет интересно, почему у него намного круче чем у тебя, короче снова «почуствуй разницу». Дак вот, нуб скорее всего придумает что-то на подобии такого алгоритма, яже тоже был когда-то нубом, я придумал следуйщий алгоритм:

  1. Находим «минимум» — минимальный элемент по нашему «порядку». Затем поставим этот элемент на место первого, то есть поменяем местами первый элемент, с «минимальным». Просто вставить в начало — зачастую сложно, т.к. чаще всего прийдётся передвигать все элементы на одну позицию в сторону, такчто лучше просто меняем два элемента местами.
  2. Находим «минимум» начиная со второго элемента, и ставим его на второе место.
  3. И так далее.

Данный алгоритм отсортирует список. Кому не очевидна «корректность» — «досвидульки и вон отсюдого» (http://mf0.me/wps/2009/10/22/ty-slishkom-blondin-2/) Когда я его придумал, я его обзывал «сортировка паравозом» не помню почему, однако он называется в народе «сортировка выбором». Такой алгоритм работает за O(n2). Оу,  я наверно забежал вперёд. Это короче «сложность» алгоритма, так говорят когда понятно итак о чём речь, а обычно это называется «вычислительная сложность». Для тех кто не знает, что такое «сложность» алгоритма, на пальцах, это типо оцценки времени выполнения алгоритма. Зачастую сложно вычислять «сложность» досконально, до мелочей, да и часто это безсмысленно. Такчто первое с чем соглашаются, это оценивать сложность в «худшем случае», то есть подругому сказать: алгоритм работает не медленнее чем за стока-то. Однако логично что на разных машинах (вычислительных), на разных входных данных, время работы алгоритма может быть разным, то есть нужно как-то оценивать не вдаваясь в мелочи. Поэтому вместо точного времени работы, определяют только динамику роста — как быстро растёт время. Динамику роста относительно чего? Относительно некоторых характеристик входных данных, от которых зависит время работы алгоритма, например для сортировки это n = количество элементов списка. Дак вот, g(x)=O(f(x)) — это понятие вообще из матана, а означает оно то, что можно подобрать такое число C, что для всех x будет C*f(x) больше g(x), то есть как бы f(x) полюбому меньше g(x) при таком C, а значит f(x) растёт не быстрее.  Называется это Ассимптотической сложностью.

Дак вот, судя по алгоритму, можно посчитать, что сравнений делается n+(n-1)+(n-2)+…+2+1=n*(n-1)/2 (арифметическая прогрессия), далее делаем оцценку вверх n*(n-1)/2 < n2/2 = 0.5 * n2. Сдесь 0.5 константа, её можно подобрать, поэтому это всё есть O(n2). Прикинем: если у нас 1 000 элементов, то сравнений нужно сделать порядка 1 000*1 000=1 000 000. Фигня, мало. Если например взять комп с процессором 1GHz, а 1GHz это частота, то есть 1 000 000 000 в секунду, а раз это тактовая частота, то значит ровно 1 000 000 000 тактов в секунду. Операции можно считать выполняются не быстрее чем за один такт, значит 1 000 элементов отсортирует минимум за 0.001 секунды. Действительно фигня, с таким процессором ). Теперь пусть у нас 10 000 элементов, то сравнений порядка 100 000 000, а это 0.1 на 1GHz проце, вроде фигня… всего десятая секунды, однако. А если 100 тысячь? то 10 секунд.

Простой пример (это ещё не второй пример, это подпример…) Допустим мы в игре хотим отображать объекты сзадинаперёд, и мы сортируем их для этого, и допустим у нас 25 FPS, это означает что кадр должен обрабатываться за 1/25=0.04 секунды, то есть 10 000 элементов будет лагать это точно ). Но это нужно ещё представить игру в которой столько объектов. Очевидно, что кроме сравнений, во время сортировки ещё другие операции происходят то есть не за 0.1 будет это точно. Но теперь ещё в игре же кроме сортировки ещё много всякой всячины, например видеокарта должна отрисовать, звук должен обновится, может физика, потом ввод с клавы, и т.д. в итоге скорость — очень важная весчь. Есть такая тенденция — сильно не оптимизировать (ускорять алгоритмы), а просто поднимать минимальные требования, и говорить «купи лучше тачку» (комп).

elektropage.ru

Сумрачный гений — Lurkmore

«

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

»
— Безумный ученый Эрик Ворнофф о своих планах

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

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

Дедушкой всех сумрачных гениев был доктор Фауст из одноименного произведения Гёте. Он заключил договор с самим Сотоной и послужил прототипом для будущих поколений.

[править] Происхождение

Доктор Фауст

Очевидная копипаста с творческим переосмыслением из поэмы «Скифы» А. Блока:

Мы любим всё — и жар холодных числ,
И дар божественных видений
Нам внятно всё — и острый галльский смысл,
И сумрачный германский гений…

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

Кстати, «острый галльский смысл» в свое время было распространён в сообществе shushpanzer_ru как альтернатива СТГ, применительно к шушарам французского производства.

Альзо, в прозе дитятей Сумрачного Гения является градоначальник Органчик из повести «История одного города» Салтыкова-Щедрина.

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

[править] Характерные черты сумрачного гения

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

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

Обычный результат такой реализации — очередная вундервафля (вот, например, гриль от суровых немецких инженеров [1]) или план будущей войны, который вся страна готовит двадцать лет, с блеском переворачивающийся пузом вверх уже через неделю. В мирном планировании и строительстве такие сумрачные гении тоже встречаются, в диапазоне от поворота северных рек и прочей гидромелиорации министерского масштаба до эпического строительства БАМа через дикую тайгу и глушь, где он в итоге оказывается нафиг никому не нужен.

[править] Кто не является сумрачным гением

Расовый еврейский сумрачный гений — изобретатель химического оружия и Циклона Б Фриц Хабер

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

[править] Игры в сумрачного гения

Есть flash-игра Mastermind: World Conqueror, где необходимо уничтожить Землю. Дико доставляет концовка. Пример сумрачного гения в действии.

Туда же Evil Genius, и его прототип — Dungeon Keeper, хотя там уже и больше про Тёмного Властелина, но ничего, эти темы глубоко пересекаются.

В известном симуляторе шляп от Valve есть сумрачный тевтонский медик-фошыст, который лечит и калечит своих пациентов.

В фильме «Назад в будущее» Док много лет в тайне от всех мастерит машину времени, а затем подписывается на запиливание ядреной бомбы для террористов (на самом деле кидает их ради плутониевых ТВЭЛов). В третьей части фильма таки выясняет, что он еще и расовый тефтонец, и его чукровавшая в США семья звалась фон Браунами.

[править] В реальной жизни

«

Гении тупеют со временем. Обыватель я теперь. Пивной бюргер. Пиво пит, водку жрат. Короче говоря, я отупел. Тем и счастлив. Клёво быть тупым. Ну что там гений — ходит, грузится всякими гениальностями. Ерунда какая-то.

»
— Никалай Кал
Guten Morgen meine Liebe

А в реальной жизни всё очень и очень прозаично. Есть какой-то оторванный от людей шизик с огромными амбициями. Ему в голову приходит идея… например, смастерить летающую тарелку. Денег у него нет, поэтому он идёт в свой гараж и начинает там Строить. Строит он долго, несколько лет, а то десятилетий. Сумрачный Гений обычно — параноик, поэтому о том, что он строит летающую тарелку, и вообще о том, что он что-то делает, он никому не говорит (а если и расскажет, то только потому, что у него закончились деньги и ему нужно больше). Поэтому вовремя узнать о его планах и остановить, пока не поздно, родным и близким не получается (если они вообще есть).

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

Через несколько лет сумрачный гений выходит из своей конуры, вынося гордо на вытянутых руках своё поделие (или хотя бы его прототип). Естественно, что все, кто это видит, тут же понимают, что это — какая-то непонятная гадость. Сумрачный гений на это серьёзно обижается и убегает обратно в конуру — дорабатывать вещь. Слава Богу, что ни знаний, ни времени на то, чтобы действительно сделать летающую тарелку или, например, боевого человекоподобного робота, у него нет, поэтому соседи могут спать спокойно. Если, конечно, сумрачный гений — не Марвин Химейер.

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

[править] Лики сумрачных гениев

Гений и после смерти гений
  • Советский сумрачный гений дает фору Свиборгу внутри ядерного ракетного двигателя

  • С. Б. Субботин — «Хозяин атомного озера». Семипалатинск.

Сумрачный гений — это такое быдло такой типаж.
Сумрачный гений имеет отношение к писанине, но ты же ниасилил?
Deutschland über alles!

lurkmore.to

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *