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

5) Программирование было коммерчески выгодным до появления лампочек

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

Лампочки, напротив, в 1802 году существовали лишь в очень низком виде. Конструкция лампы накаливания была усовершенствована в 1806 году и в последующие четыре десятилетия, и до 1870-х годов она по-прежнему не была широко доступна для практического использования.

4) Объем данных, которые в настоящее время производятся всеми программистами во всем мире, недоступен человеческому мозгу

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

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

3) Разработка программного обеспечения с открытым исходным кодом обладает утопическими качествами

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

2) Продолжаются экзистенциалистские дебаты о самой природе программирования

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

Некоторые в сообществе разработчиков начали сомневаться, следует ли фундаментально изменить абстрактный способ программирования, чтобы дать создателям немедленную связь с тем, что они создают, упростив задачу: То, что вы видите, это то, что вы делаете. get »(WYSIWYG) для самой разработки программного обеспечения. В определенной степени конструкторы веб-сайтов уже сделали это, поэтому сегодня любой может создать веб-сайт, не зная HTML или CSS.

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

1) ИИ (вроде) уже здесь

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

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

Вам также может быть интересно: