Хабрахабр

ІТ термины на примере процесса выращивания картошки

image

В результате родилась идея объяснить значение тех или иных ИТ терминов на примере процесса выращивания картошки. Недавно меня спросили, чем разработка на C# отличается от разработки на C++.

У вас есть много способов решения этой задачи. Представим, что вам необходимо посадить картошку.

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

Это аутсорсинг (outsourcing).

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

Это аутстафинг (outstaffing).

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

Это R&D, или научно-исследовательская работа.

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

Это фриланс (freelance).

Вы можете позвать всех свох родственников, соседей, друзей и вместе посадить картошку.

Это краудсорсинг (crowd sourcing).

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

Это краудфандинг (crowdfunding).

Но, если вам нужно будет посадить другой сорт картошки, то вам нужно будет перекопать огород еще раз. Вы можете взять плуг, несколько ведер, картошку, книгу "Посадка картошки за 21 день" и самому посадить картошку. Риск: ночью может наведаться сосед и выкопать вашу закопанную картошку.

Это разработка на WordPress.

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

NET/C#. Это разработка на .

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

Это разработка на C++.

И это будет реально круто, а урожай будет в 10 раз больше, чем урожай соседа. Вы можете прийти к председателю колхоза, и сказать ему, что вы лучше всех знаете, как сажать картошку, однако в этом году вы её сажать не будете, но 100% вы займетесь этим в следующем году. Поэтому вам нужны сейчас деньги, лопаты, трактор, тракторист (лучше два), пять копателей и секретарша.

Это питчинг стартапа перед инвестором.

И вы тоже продолжаете сажать картошку. Ваш прадед сажал картошку, ваш дед сажал картошку, ваш отец сажал картошку.

Это поддержка продукта (support).

Копая картошку, вы время от времени выкапываете ту, которую сажал еще ваш отец и дед.

Это legacy код.

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

Это scrum-митинг.

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

Это отладка (debugging) кода и исправление ошибок (bug fixing).

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

Это руководитель команды (Team Lead), проджект менеджер (Project Manager) и рефакторинг (refactoring).

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

Это интервью в сервисную компанию.

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

Это программное обеспечение с открытым исходным кодом (open source).

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

Это StackOverflow.com.

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

Это sales-менеджер, продающий свою offshore команду.

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

Это блокчейн (blockchain).

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

Это биткойн (bitcoin).

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

Это Data Mining или поиск знаний в больших массивах данных.

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

Это майнинг криптовалюты (cryptocoin mining).

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

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

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

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

Это открытые данные (open data).

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

Это хеширования (hashing, hash function).

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

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

Это test-driven development или TDD.

Кто-то уже занёс выкопанную картошку в погреб, а кто-то выкопал, но еще не собрал, и она так и лежит на огороде. Ваши соседи копают картошку. А кто-то еще даже не начинал процесс, и их картошка еще находится в земле.

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

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

Это скрепинг (data scraping) или парсинг данных (data parsing).

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

Это искусственный интеллект (Artificial Intelligence).

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

Это машинное обучение (machine learning).

Теги
Показать больше

Похожие статьи

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

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

Кнопка «Наверх»
Закрыть