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

    image


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


    Это legacy код.


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


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


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


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


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


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


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


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


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


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


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


    Это StackOverflow.com.


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


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


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


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


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


    P.S.


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


    Это реляционная база данных.


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


    Это NoSql база данных.


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


    Это облачное хранилище данных.


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


    Это 3D-принтер.


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


    Это IP адрес.

    Поделиться публикацией

    Комментарии 86

      0
      Креативно! Было бы неплохо добавить описание что такое база данных, IP адрес и 3D принтер.
        +6
        Вы выкопали картошку и складываете её в погребе — каждый сорт отдельно. Если по ошибке ваша картошка попадёт не на ту полку, прибежит ваш дед и начнет вас бить палкой.

        Это реляционная база данных.

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

        Это NoSql база данных.

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

        Это облачное хранилище данных.

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

        Это 3D-принтер.

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

        Это IP адрес.
          0

          С 3d принтером некорректно. На нем можно делать вполне годные вещи.

        0

        Круто!) больше всего понравилось по собеседование.


        В копилку: твоя компания покупает картошку в США, упаковывает в красивую упаковку и продает по всему миру. В один прекрасный день США накладывает санкции и ты перестаешь получать картошку. Купившие твою картошку ещё могут её есть. Ты плюёшь на картошку и начинаешь сам выращивать и продавать свеклу --> Google и Huawei

          +9
          Я бы насыпал вам мешок картошки сорта UDP, но часть может просыпаться мимо.
            +2

            Ага, ваша дальняя родственница передаст вам TCP картошки через кума в Новгороде, дяду в Китае и брата на Марсе. По одной. И только если вы письменно подтвердите получение. Каждой.

              +2
              Она будет пытаться отослать вам картошку, пока вы письменно не подтвердите получение
                +1
                Несколькими машинами, но строго по разным дорогам к вам едет картошка сорта SCTP.
                  +6

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

                    0
                    Собралось одновременно несколько соседей и начали с разбега закидывать картошку к вам. Однако картошку они кинули одновременно и вы не смогли поймать ни одной. Тогда соседи отступили от забора на случайное расстояние и вновь начали закидывать к вам картошку. Благодаря интервалам между прибытиями картошки вы смогли поймать их все. Это CSMA/CA.

                    Собрались опять соседи и опять начали закидывать вас картошкой с разбегу. Однако теперь, когда вы видите что соседи вот-вот кинут в вас картошкой одновременно, вы орёте на них благим матом. Соседи отступают на случайное расстояние и повторяют процедуру. Это CSMA/CD.
              +7
              Прикольно. Немного сбила с столку подача. Выделение жирным шрифтом выглядит как заголовок, невольно путается. Видимо говно код, это когда пытаешься упорядочить картошку сразу по многим признакам собственного назначения, а в результате она просто валяется не пойми как, но только мы знаем что она валяется правильно.
                +1

                Я только на последней фразе понял, что это не заголовки жирным.

                  +1
                  Убрал форматирование. Спасибо за рекомендацию.
                    0
                    Я бы форматирование оставил, просто сделал бы это заголовками.

                    Без форматирования тяжелее читать и понимать.
                      +3
                      Схема «сначала описание, потом ответ» даёт ощущение разгадывания загадки, ИМХО прикольный приём.
                        0
                        Ну тогда надо явно это обговорить в начале статьи и ответы спрятать под спойлер.

                        А так получается что всё время путаешься и не сразу начинаешь вникать.

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

                      > Во хотел попробовать.

                      Это другая фишка.
                    +4
                    На пункте с legacy картошкой потекли слезы :D
                      –1
                      Интересно, что картошка — это и есть генетический legacy код. Изначально этот код получают из семечка. Если код удачный, то берут его копии (клубни) и размножают их. Через некоторое время код устаревает (сорт вырождается), и нужно создавать новый из семечка.
                      И, когда происходит посадка, то среди клубней может попасться код, созданный отцом или дедом.
                      +2
                      Описание хэширования скорее подходит к симметричному шифрованию. Документ — шифротекст, грамотность председателя колхоза — ключ. Из шифротекста с помощью ключа можно однозначно и без перебора восстановить открытый текст, в отличие от хэширования.
                        +2
                        Спасибо за самое доходчивое объяснение! Возьму на заметку. Особенно впечатлило про scrum-митинг и bitcoin.
                          +3
                          Отличные разъяснения терминов IT через обычную жизнь. Особенно понравилось про биткоин.
                            0
                            В закладки, однозначно
                              +12
                              Вы берете почву, воду, воздух и световое излучение и акуратно составляете из этого молекулы крахмала, из которых можно сформировать идеальную картофелину.

                              Это программирование на Ассемблере.
                                +8
                                Это разработка на C

                                В конце грядки нет нулевой лунки, и вы сажаете картошку пока не упретёсь в забор соседа.
                                  +3
                                  Если нет нулевой лунки, вы выкапываете картошку соседа и съедаете. Это может привести к разрушительным результатам…
                                    0
                                    Это разработка на С++, когда получаете доступ к элементам контейнера
                                    std::map<hole, potato>
                                    при помощи
                                    operator[]
                                    вместо метода
                                    std::map<hole, potato>::find()
                                    .
                                  +3
                                  Повеселило) в «искусственный интеллект» нужно добавить:
                                  "… но картошка не вырастает, потому что робот по ошибке посадил высохшую отбраковку, которая внешне очень похожа на нормальный посадочный материал".
                                    +9
                                    Про legacy скорее так: вы пытаетесь выкопать лунку под очередную картофелину, но ломаете лопату о закопанную на этом куске поля старую борону. Пытаясь её вытащить вы обнаруживаете что к ней прицеплен трактор. В тяжёлой ситуации при попытке выдернуть из земли старый трактор краном ваш дом съезжает в яму, образовавшуюся в результате.
                                      0
                                      Копая картошку, вы время от времени пробиваете трубу, по которой течет навоз из соседней коровьей фермы.

                                      Это legacy код.
                                        0
                                        Тоже вариант. Причём труба идёт не прямо, как можно было бы предположить, а кругами и зигзагами. Причём тот, кто её прокладывал переехал в другую деревню, а карты не оставил. Иногда, если заткнуть дырку в трубе — затапливает здание почты.
                                      +20
                                      В вашей деревне есть стенгазета, куда время от времени выкладывают статьи. По идее, они должны быть про посадку картошки, но на деле там всё подряд.
                                      И даже если проскальзывает действительно что-то про картошку, то это либо про посадку картошки дронами на Марсе, либо про экспериментальные модели 100-тонных комбайнов. Лопаты и мелкие огороды обсуждать настолько не принято, что выглядит так, будто их и не существует.
                                      Каждый год назначаются модные сорта картошки, даже если это просто новые синонимы давно известных сортов. Картошка новых сортов считается априори лучше старых.

                                      Это хабр.
                                        +2
                                        Если кому-то не понравилась ваша картошка он напишет вам на спине матное слово (но вы никогда не узнаете кто же это был и чем конкретно ему не понравилась картошка).
                                        Если понравилась — в лучшем случае сотрёт одно из уже написанных.

                                        Это карма на Хабре :)
                                          –1
                                          … на самом деле матное слово было написано за то, что во время совместной пьянки после или во время очередной посадки картошки Вы случайно сказали, что жуки в штате Колорадо пожирают картошку более жадно, чем их сородичи из Тульской области.
                                        +3

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

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

                                            Вот в комментах потом было добавлено:
                                            Вы выкопали картошку и складываете её в погребе — каждый сорт отдельно. Если по ошибке ваша картошка попадёт не на ту полку, прибежит ваш дед и начнет вас бить палкой.

                                            Это вот с учителем
                                          +2
                                          Вы сначала едите картошку, потом сажаете её, потом копаете под неё ямку, а только тогда убираете урожай. Никто не понимает что происходит, но вы сыты и всё нормально.

                                          Это асинхронное программирование.
                                            0
                                            Пока однажды не помираете из-за того, что попытались съесть еще не выращенную картофелину.

                                            Это Concurrent Modification Exception
                                            +1
                                            Вы долго клеите синей изолентой одинаковые универсальные саженцы в форме картошин. Засаживаете ими всё поле.
                                            В результате на солнечной части огорода вырастают пальмы плодоносящие картошкой, на затененной — кусты с картошкой, на поливаемой — картофельный камыш.
                                            Это — кроссплатформенность.
                                              +7
                                              Сосед жуёт вашу картошку, выкидывает некоторые картофелины называя их невкусными, но не может объяснить как их исправить. Сажать картофель сам он тоже не умеет.

                                              Это Q&A.
                                                0
                                                Вот обидно было, правда-правда.
                                                  0
                                                  Q&A это questions and answers, а вы наверное имели в виду QA. Ваш опыт взаимодействия с QA звучит удручающе, соболезную Вам. Если бы Вам повезло чуть более то звучало бы так:
                                                  Сосед приходит на поле, забирает свежевыкопанную картошку и уносит в сарай, там он готовит из кортошки примерно 300 различных наименований блюд, всеми возможными способами, включая автоматизированную линию по приготовлению чипсов. По окончании он предоставляет полный отчет в котором описывает в деталях как при определнных условиях, выложенная из картофельного пюре пентаграмма в вальпургиеву ночь приводит к спонтанному возгаранию находящихся поблизости предметов и ухудшению качества приема радонеж-тв. Далее весь выкопанный урожай выбрасывается всей кучей назад к вам на грядку, где вам предстоит перезакопать его повторно пока вы не обнаружите подозрительный клубень глазки на котором при определнном угле обзора складываются в 666 и переполняют регистр.
                                                  0

                                                  Теперь надо ещё статью: объяснение терминов из сельхоз-работ по выращиванию картошки на примере IT процессов.

                                                    +2
                                                    Просто великолепно!)

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

                                                      Хеширование скорее надо так: председатель занес информацию о вашей выкопанной картошке в свою домовую книгу, а вам выдал справку, где написано, что отчет о вашей выкопанной картошке записан в этой книге под номером eb54f97536da.

                                                      И про создать с нуля ведро и лопату — это скорее чистый С. С++ будет: пойти в библиотеку и взять там книгу (#include), где написано, как должны выглядеть ведро, лопата и картошка, из чего они должны быть сделаны, и какие действия разрешено с ними совершать на огороде, сделать конвейеры (new), позволяющие штамповать эти ведра, лопаты и картофелины по этому описанию, пойти на огород (namespace) и поставить там эти койвейеры, штампующие картошку, где раскладывать ее по ямкам. Выносить наштампованное с огорода, носить в ведрах что-то кроме воды и драться на лопатах с соседом вместо копания земли ими запрещено. Если вы хотите сделать это, вам сначала надо написать свою книгу об этом и отнести ее в библиотеку.
                                                        0
                                                        Больше уже джаву напоминает
                                                        +2
                                                        Если программирование на С++ выглядит так, то на ассемблере надо собрать простые вещества из атомов, что бы потом сложить из них сложные органические вещества, из которых вырастить жизнь в виде картошки и деревьев…
                                                        Короче я уже запутался.
                                                          0
                                                          Вы сажаете картошку, потом с части урожая берете клубни и засеиваете снова
                                                          Это программирование на BitBitJump
                                                            +2

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


                                                            Это JavaScript разработка

                                                              +4
                                                              JavaScript разработка — это когда берёшь новейшую лопату, начинаешь ею сажать, а к концу грядки приходит 17-ти летний сосед и спрашивает почему ты копаешь таким старьём, ведь уже вышла Redux-Лопата, с удобной системой сапания и полива.
                                                                0
                                                                Только ее еще не поддерживают другие поля, но надо смотреть в будущее.
                                                                  0
                                                                  Просто на лопату нужно навесить двухкилограммовую чугунную насадку, которая добавит поддержку этой лопаты для всех остальных полей, включая старый огород деда Афанасия. Да, пользоваться такой лопатой станет менее удобно, она станет тяжелее, зато вы сможете использовать Самую Новую (тм) лопату!
                                                                    0

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

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

                                                              Это Kubernetes.
                                                                0
                                                                Вы берете с собой сынишку. Он ещё неумело копает ямки, иногда забывает класть в них картофелины перед закапыванием или по ошибке берет свёклу вместо картофелины. Вам приходится присматривать за ним.

                                                                Это джуниор

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

                                                                Это миддл

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

                                                                Это сеньор
                                                                  0
                                                                  Забавно :-) Добавлю свои 5 копеек

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

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

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

                                                                      Модный фреймворк vs код на стандартной библиотеке
                                                                        0
                                                                        так і есть)
                                                                        0
                                                                        Еще про data science можно написать :)
                                                                          0
                                                                          Так напишите :)

                                                                          Давайте я начну.

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

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

                                                                          Это кластерный анализ.
                                                                            0
                                                                            Вы решили не заморачиваться с сортировкой и отбором картошки, открыли подвал и накидали туда большой картошки, маленькой, чистой, грязной, кабачков, капусты и случайно — кота Васю.
                                                                            Вроде всё хорошо, но теперь нужно выбрать для жарки молодую чистую картошку из этой свалки…
                                                                            Это Hadoop.
                                                                            0
                                                                            Вы долго читали про всякие способы, как сажать и выращивать картошку, как получить картошку, но у них всех были фатальные недостатки. Вы разрабатываете принципиально новый(тм) способ и метод.
                                                                            Это разработка нового языка программирования (или вы уже долгое время работаете в Микрософт)
                                                                              0
                                                                              Вы насыпаете картошку из мешка в ведро, а потом постепенно забираете оттуда по одной верхней картофелине. Это структура типа LIFO (стек).

                                                                              Ваша бабуля сыпет картошку из мешка в длинный наклонный желоб, по которому клубни съезжают вам в руки. Это структура типа FIFO (очередь).
                                                                                +2
                                                                                У автора знания о С++ лет на 20 не отстали?
                                                                                Самая длинная реклама C# на Хабре.

                                                                                Про шарп скорее так:
                                                                                Вы можете взять странную лопату, обклееную рекламой, с розовым помпончиком на конце и очень красиво, с пафосом посадить готовую картошку в строго определенные готовые лунки (в других она не вырастит).
                                                                                Картошка будет постоянно о себе напоминать и просить самую последнюю версию воды для полива в 3 ночи.
                                                                                А в конце созревания она передаст данные о выращиваемой вами мяте на соседней грядке в соответствующие органы.
                                                                                  0
                                                                                  Вы сажаете картошку, но никто никогда её не увидит. Это Embedded программирование.

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

                                                                                  Это Precision Agriculture

                                                                                    0

                                                                                    Про биткоин не понял. Им же спокойно можно расплачиваться, то есть, это не фотография денег, а деньги.

                                                                                      0
                                                                                      Недавно на хабре? Щас все поймете :D
                                                                                        0
                                                                                        Насчет «спокойно» это мягко говоря кривда. Я знаю еще кучу вещей которыми можно расплатиться, с некоторыми из этих вещей люди рождаются, это тоже деньги?:)
                                                                                          0
                                                                                          Биткоины обмениваются на обычные деньги в несколько кликов. Я это имел в виду.

                                                                                          Фотографии картошки можно обменять на картошку? Если да, жду адрес и выезжаю с фурой.
                                                                                        0
                                                                                        пакетные менеджеры забыли…

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

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

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

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

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

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

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

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

                                                                                                Это прототип
                                                                                                  0
                                                                                                  Вы закапываете одну картошинку в маленькую ямку, на участочке 20 на 20 сантиметров.

                                                                                                  Это минимально значимый продукт (MVP)
                                                                                                    0
                                                                                                    У вас есть лопата, а у соседа есть картошка. Вы обещали помочь друг другу: сосед даст вам картошку для посадки, а вы одолжите ему лопату. Но вы можете дать лопату только после того как получите картошку. Сосед может дать вам картошку только после того как получит лопату.

                                                                                                    Это дедлок (deadlock)
                                                                                                      0
                                                                                                      Вам срочно, до первого числа нужно посадить всю картошку иначе потом она сгниет.

                                                                                                      Это дедлайн (deadline)
                                                                                                        0
                                                                                                        Вы придумали новую конструкцию лопаты, которая значительно облегчает процесс посадки картошки. Как то раз вы выкладываете фоточку в инстаграм, на которой вы с другом стоите в поле, на заднем плане видна эта лопата. Ваш сосед просматривая ваши фото, подсматривает конструкцию лопаты и делает себе такую же.

                                                                                                        Это промышленный шпионаж.
                                                                                                          0
                                                                                                          А как назвать ситуацию, когда придумывается конструкция двусторонней лопаты, которая теоретически будет на дцать процентов эффективнее, но на практике это проверять дорого и опасно. Но вы хитрый и заработали репутацию конструктора лопат, поэтому фоткаетесь с экспериментальной лопатой на заднем плане, выкладываете фотку в инстаграмм и ждёте, что будет с попробовавшим реализовать?
                                                                                                            0
                                                                                                            Если вы заработаете на этом денег — таки это гешефт.
                                                                                                          0
                                                                                                          спасибо и в тему и по-делу)))
                                                                                                            0
                                                                                                            Это машинное обучение (machine learning):
                                                                                                            Это когда вы берете картошку слайсите ее на слои и раскидываете по полю, только те слайсы, что дали ростки вы поошряете окучиванием, затем выкапываете каждую новую картошку, и опять слайсите и по той же схеме окучиваете. Через 10-20 лет, картошка сама слайсится под землей, окучивается и разнмножается без вашего участия.
                                                                                                            Как вам такой вариант? )

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

                                                                                                            Самое читаемое