IT-тренды 2024 года, ИИ — воришка паролей и секреты JavaScript: самое интересное в декабре
2026-02-21 19:31 Diff

#статьи

  • 10 янв 2024
  • 0

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

Иллюстрация: Оля Ежак для Skillbox Media

Востоковед, интересующийся IT. В прошлом редактор раздела «Системный блок» журнала «Fакел», автор журналов Computer Gaming World RE, Upgrade Special, руководитель веб-ресурсов компании 1С-Softclub.

Если не брать бум на подведение итогов, в декабре в айтишной медиасфере всё было по-старому: СМИ писали о новых угрозах старого доброго Скайнета, программисты в своих блогах делились лайфхаками, а простые пользователи Reddit задавали непростые вопросы. Давайте посмотрим на самые интересные публикации месяца, чтобы отправиться в новый год с чистой совестью.

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

В процессе обучения разработчики исследовали звук каждой клавиши с соответствующей буквой. Затем они набирали пароль и просили ИИ вычислить, какое слово было набрано. ИИ дал верный ответ в 95% случаев. После этого они повторили эксперимент во время видеозвонков в Zoom и Skype. В первом случае ИИ ответил с точностью 93%, во втором — 92%.

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

Открыть публикацию

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

В 2023 году команда экспертов GitHub и Microsoft провела небольшое исследование. Они попросили 95 человек создать веб-сервер и предоставили половине доступ к Copilot. Те, кто использовал Copilot, справились с задачей в среднем на 55% быстрее.

Мощный ИИ, который избавляет от необходимости гуглить, полезен, но изменит ли он игру? Мнения разделились. Марко Иансити, соучредитель Keystone Strategy и профессор Гарвардской школы бизнеса, сравнивает ИИ-ассистента с сеньор-разработчиком, который сидит рядом с вами и даёт ценные подсказки. Правда, каким бы мощным ни был ИИ, пока что он неспособен предлагать по-настоящему оригинальные решения, считает Джастин Готтшлих, CEO компании Merly, много лет работающий над автоматической генерацией кода:

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

Джастин Готтшлих,
CEO Merly

Открыть публикацию

Своими прогнозами на грядущий год делились не только учёные, журналисты и айтишники, но и компании. Так, по мнению экспертов из Capgemini, в 2024 году пристальнее всего стоит следить за этими технологиями:

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

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

Полупроводники. Индустрия классических микропроцессоров тоже стоит на пороге больших перемен: ждём прорыва в 3D-стекинге чипов, инноваций в материаловедении и появления новых форм литографии для дальнейшего увеличения вычислительной мощности.

Аккумуляторы. Как сделать батареи более безопасными, ёмкими и дешёвыми в производстве? Это большой вопрос. Но есть и ответ: натрий-ионные и твердотельные технологии, которые, вероятно, станут активнее применяться в 2024 году. В случае успеха могут появиться более дешёвые, надёжные и безопасные батареи с большим сроком службы.

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

Открыть публикацию

«Скошенные бордюры», ARIA, и адаптивные ИИ-алгоритмы — это, конечно, круто, но никогда не поздно вернуться к истокам. Оказывается, простые советские HTML-атрибуты могут серьёзно улучшить пользовательский опыт и повысить доступность веб-интерфейса. А вы про них и думать забыли.

Открыть публикацию

Лучший способ понять, как устроены современные JS-фреймворки, — написать свой. Веб-разработчик из Salesforce Нолан Лоусон даёт пошаговое руководство, как это сделать. В процессе он объясняет, что такое реактивность, как и зачем клонировать DOM-дерево и что собой представляют современные JavaScript API.

Открыть публикацию

21 приём, который сделает из JS-мальчика настоящего JS-мужчину, а из JS-девочки — королеву фронтенда. Возьмём, например, вот этот код для обработки исключений:

let name = ''; if (!name) { name = 'Guest'; }

И запишем его более лаконично с помощью оператора присваивания:

let name = ''; name ||= 'Guest';

Большинство приёмов из статьи, конечно, немного «кэпские», но новичкам будет полезно.

Открыть публикацию

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

Оказывается, интересная особенность JavaScript в том, что без него иногда можно и обойтись. Ведь одна из основных заповедей программирования — выбирать наименее мощный язык, подходящий для конкретной цели. Если мы говорим про веб, то декларативные HTML и CSS предпочтительнее JavaScript, так как из коробки поддерживаются большинством браузеров.

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

<label> <input type="color" /> Color </label>

Открыть публикацию

Портал The New Stack выделил главные тенденции года в мире клиентской веб-разработки.

Next.js — впереди всех, но Astro «дышит в спину». Согласно отчёту Netlify, Next.js остаётся самым популярным фреймворком в сфере рендеринга сайтов: его использует почти половина (46%) респондентов. На втором месте в рейтинге оказался Gatsby — 25%, но он явно теряет позиции — только 44% его пользователей заявили, что продолжат применять его в 2024 году. Nuxt занял третье место с 20%.

Интеграция искусственного интеллекта от Vercel. Компания Vercel известна как один из главных трендсеттеров в мире веба. Вот и в прошлом году они не уронили планку и выкатили SDK для работы с ИИ, дав в руки разработчиков всю мощь генеративных нейросетей. Вскоре после его запуска в менеджере пакетов NPM было зафиксировано 40 000 еженедельных загрузок.

Облачные IDE набирают популярность. Согласно последнему опросу JetBrains, около половины респондентов занимались удалённой разработкой и из них 30% используют так называемые CDE — то есть облачные IDE. Наиболее распространённым CDE является GitHub Codespaces (42% респондентов).

Открыть публикацию

Язык программирования 64-летней давности COBOL до сих пор активно используется в таких отраслях, как финансы, автомобилестроение, страхование, государственное управление, здравоохранение и финансы, сообщает PCMag. 43% всех банковских систем до сих пор используют COBOL, который ежедневно обрабатывает транзакции на сумму 3 трлн долларов, включая 95% всех операций с банкоматами в США и 80% всех операций с кредитными картами.

Проблема в том, что COBOL давно уже нигде не преподают, и мало кто заинтересован в его самостоятельном изучении. «COBOL-ковбоев», старых программистов, владеющих языком, становится с каждым днём всё меньше. Фактически некому модернизировать существующие системы и переписать их на более современные языки.

Чтобы решить эту проблему, компания IBM даже выпустила ИИ-помощника watsonx, который помогает программистам преобразовать пыльные залежи COBOL-кода в чуть менее пыльный Java-код. Вот как это работает:

Пример работы с watsonx

Открыть публикацию

В сабе r/compsci собрали список малоизвестных книг по информатике, которые действительно стоят внимания:

Открыть обсуждение

По-настоящему важные вопросы задавали и в программистском сабе r/AskProgramming.

Так, пользователь с ником u/Turings-tacos попросил порекомендовать ему непонятный язык программирования, который не принесёт никаких денег в профессиональном плане, но, зная его, он сможет насмехаться над другими программистами и читать им лекции о его сложности, демонстрируя своё превосходство. Вот краткий список кандидатов:

Открыть обсуждение

Реддитор u/Defiant-Place-3092 поинтересовался, почему команде из 10 человек требуется пара месяцев, чтобы создать или клонировать приложение вроде Uber, но поддержкой занимаются сотни или тысячи разработчиков.

Больше всего пользователям понравилось такое объяснение:

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

Открыть обсуждение

u/ubettersleep озвучил боль многих начинающих разработчиков: «Я слишком туп для программирования. Всякий раз, пытаясь выучить Python, я просто не могу ничего запомнить, сразу же всё забываю. Я слишком глуп».

Ему дали такой совет:

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

Открыть обсуждение

u/codeaddict495 поинтересовался: «Если JavaScript настолько ужасен, почему его до сих пор не заменили другим языком?»

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

Открыть обсуждение

В сабе r/learnprogramming реддитор u/Healthy_Entry_1072 спросил: «Если код нужно компилировать, чтобы он работал, то как был запрограммирован первый компилятор?» И получил такое объяснение:

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

Открыть обсуждение

Реддитор u/datbeowulfisreal из немецкой компании рассказал новичкам, по каким критериям они набирают программистов.

«Мы создали базовый профиль, он описывает наши требования к тем, кого мы нанимаем. Возможно, вы удивитесь, но основные навыки программирования даже не входят в этот профиль. Речь идёт скорее о способности учиться, вникать в сложные проблемы и самостоятельно решать их. Также важно, какой вы человек. Вы должны вписаться в коллектив и обладать хорошими софт-скиллами. Я пишу это, чтобы вы понимали: в реальном мире написание кода — это лишь часть работы. Гораздо важнее умение самостоятельно разобраться в материале и быть порядочным человеком, чем способность легко решать сложные задачи по программированию».

Открыть обсуждение

Научитесь: Профессия Специалист по кибербезопас­но­сти + ИИ Узнать больше