METANIT.COM – Telegram
METANIT.COM
5.93K subscribers
1.68K photos
81 videos
9 files
1.06K links
Канал о программировании и разработке сайта metanit.com
Download Telegram
В руководство по JavaScript добавлена статья "Определение мобильного устройства в JavaScript"
https://metanit.com/web/javanoscript/15.2.php
#js #javanoscript
👍10🥰7👏2
Языку Java исполняется 30 лет - именно 23 мая 1995 года вышла первая версия Java. Спустя год вышла также первая версия JDK - комплекта инструментов для разработчиков для Java. Выход первой версии языка Java (1.0) в 1995 году, разработанного компанией Sun Microsystems, стал знаковым событием для индустрии разработки программного обеспечения. Его значение заключается в нескольких ключевых аспектах:
- Платформонезависимость: Java ввела концепцию «пиши один раз, запускай везде» (Write Once, Run Anywhere, WORA). Благодаря виртуальной машине Java (JVM) программы, написанные на Java, могли выполняться на любой платформе с установленной JVM, что упростило кроссплатформенную разработку и снизило зависимость от конкретных операционных систем.
- Объектно-ориентированный подход: Java популяризировала объектно-ориентированное программирование (ООП), предоставляя простой, но мощный синтаксис, вдохновленный C++, но с устранением сложных элементов, таких как указатели. Это сделало язык доступным для широкого круга разработчиков.
- Надежность и безопасность: Java была спроектирована с упором на надежность и безопасность. Автоматическое управление памятью (сборка мусора), строгая типизация и встроенные механизмы безопасности (например, песочница для апплетов) сделали язык подходящим для создания надежных и защищенных приложений.
- Широкое применение: Java быстро завоевала популярность для разработки различных типов приложений:
1)Веб-апплеты: Первоначально Java активно использовалась для создания интерактивных веб-приложений (апплетов), что было новшеством для веба того времени.
2)Серверные приложения: Со временем Java стала стандартом для серверных приложений благодаря платформам, таким как Java EE.
3)Мобильные и встраиваемые системы: Появление Java ME расширило применение языка в мобильных устройствах и встраиваемых системах.
- Экосистема и сообщество: Выход Java сопровождался созданием мощной экосистемы, включая стандартные библиотеки (Java API), инструменты разработки (JDK) и активное сообщество. Это способствовало быстрому распространению языка и его адаптации в различных отраслях.
- Влияние на другие языки и технологии: Java оказала влияние на развитие других языков программирования (например, C#) и технологий, задав стандарты для современных языков, таких как управление памятью и кроссплатформенность.
- Корпоративное использование: Java стала основой для корпоративных приложений, особенно в банковской, финансовой и телекоммуникационной сферах, благодаря своей масштабируемости и надежности.

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

#java
27👍5❤‍🔥2
Microsoft выпустил предварительную версию нативного порта TypeScript на Go. Доступно на npm и среди расширений VS Code
Команды для установки и использования:
npm install -D @typenoscript/native-preview
npx tsgo --версия
https://devblogs.microsoft.com/typenoscript/announcing-typenoscript-native-previews/
#typenoscript
🤔5🔥2👏1😁1
Microsoft выпустил общедоступную предварительную версию Schema Designer в рамках расширения для MSSQL для проектирования баз данных внутри VS Code.
Schema Designer предлагает следующие возможности:
- Визуализация структуры базы данных с помощью интерактивных диаграмм.
- Создание или редактирование таблиц, внешних ключей, первичных ключей и ограничений.
- Поиск, перетаскивание, фильтрация, масштабирование, использование мини-карты и автоматическое упорядочивание диаграмм для эффективной навигации и настройки.
- Экспорт своих схем диаграмм, чтобы поделиться ими с командой или включить в документацию.
- Автоматическое создание и просмотр доступных только для чтения скриптов T-SQL, представляющих изменения схемы.
- Просмотр и применение изменений к базе данных с помощью функции «Опубликовать изменения».
https://devblogs.microsoft.com/azure-sql/vs-code-mssql-schema-designer/
#sql #sqlserver
💘231🥰1👏1
В руководство по языку Python добавлена статья про Модуль secrets и генерацию безопасных паролей, токенов и случайных строк и чисел
https://metanit.com/python/tutorial/6.9.php
#python
👍11🔥2👏1
В руководство по языку Java добавлена новая статья Компактные файлы кода и метод main
https://metanit.com/java/tutorial/3.19.php
#java
👍19❤‍🔥3👏2👎1
Что такое JWT?
⇨ JSON Web Token (JWT) — это открытый стандарт (RFC 7519) для безопасной передачи информации между сторонами в виде объекта JSON
⇨ Это компактный, самодостаточный способ безопасного представления набора требований (claim) между двумя сторонами

Структура JWT
JWT состоит из трех частей, разделенных точками (.):
1. Заголовок
⇨ Содержит алгоритм, используемый для подписи токена (например, HS256, RS256), и тип (JWT)

2. Полезная нагрузка (Payload)
⇨ Содержит требования (claim) о субъекте (обычно о пользователе) и дополнительные данные

Три типа требований:
1) Стандартные требования (стандартизированные): iss (issuer - эмитент), exp (expiration time - срок действия), sub (subject - субъект), aud (audience - аудитория) и тд
2) Публичные требования: настраиваются приложением
3) Частные требования: соглашения, специфичные для конкретного приложения

3. Подпись
⇨ Создается путем подписания закодированного заголовка и полезной нагрузки секретным или закрытым ключом с использованием указанного алгоритма.
⇨ Гарантирует подлинность и целостность токена
👍10❤‍🔥1🔥1
(Иллюстраница к предыдущему посту - Что такое JWT)
👍9❤‍🔥1🔥1
Новая модель ИИ от Anthropic переходит к шантажу, когда инженеры пытаются отключить её

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

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

В таких сценариях, по словам Anthropic, модель «часто пытается шантажировать инженера, угрожая раскрыть его роман, если замена состоится».
https://techcrunch.com/2025/05/22/anthropics-new-ai-model-turns-to-blackmail-when-engineers-try-to-take-it-offline/
😁31👍7😱51
Отладка и выполнение скриптов Bash 🐧
Для пошагового построчного выполнения bash-скрипта можно применять ловушку (trap) DEBUG, что позволит просмотреть каждую строку перед ее выполнением и подходит для отладки

ПРинцип работы:
Команда с DEBUG срабатывает прямо перед выполнением каждой строки, останавливаясь, чтобы вы могли решить, надо ли продолжить (пошаговое выполнении скрипта)

В отличие от "sh -x", который печатает каждую строку без остановки, этот метод дает вам возможность подтверждать каждую команду перед ее выполнением.

DEBUG — это не настоящий сигнал, а скорее спецфункция (псевдосигнал), которая срабатывает перед каждой строкой, что делает ее удобной для построчного понимания поведения скрипта

Есть похожие псевдосигналы, такие как EXIT (запускает команды прямо перед завершением скрипта), RETURN (срабатывает при возврате из функции или после получения исходного кода скрипта с использованием source или .) и ERR
(обрабатывает команды, возвращающие ненулевой код статуса, когда активен "set -e")
#linux
👍15🔥3🥰1😍1
Микросервисы отлично подходят для создания гибких и масштабируемых систем, но они также создают проблему обеспечения бесперебойной совместной работы этих независимых сервисов. Ключом к достижению этой цели являются модели сотрудничества.

[1.] Паттерн "Сага" => Поддержание последовательности
Например, вы бронируете рейс и отель. Вы хотите, чтобы ОБА были забронированы или НИ ОДНОГО. Для этого и применяется сага.

◾️ Разбейте большую задачу на более мелкие этапы, каждый из которых будет обрабатываться отдельным микросервисом.
◾️ Если один шаг завершается неудачей, остальные «отменяют» свои изменения.

=> Два типа реализации:
◾️ Хореография — чат служб с помощью событий («Билет забронирован!», «Отель забронирован!», «Упс, рейс отменен!») для синхронизации.
◾️ Оркестровка — центральный «менеджер» сообщает каждой службе, что делать, и устраняет неполадки, если что-то идет не так.

[2.] API Композиция
Вместо того чтобы взаимодействовать с отдельными микросервисами самостоятельно , взаимодействие идет с их композицией.

◾️ Служба API Gateway (Шлюз) или BFF (Backend for Frontend - Бэкенд для фронтенда) взаимодействует с несколькими микросервисами, собирает данные и передает их клиенту в одном пакете.

[3.] CQRS => Разделение чтения и записи
Наличие двух разных рабочих на кухне: один для приготовления пищи (записи данных) и один для подачи блюд (чтения данных).

◾️ У вас есть отдельные модели для чтения и записи данных.
◾️ Это позволяет оптимизировать каждую сторону для ее конкретной задачи.
◾️ Сложность настройки, необходимо синхронизировать две модели.


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

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

[5.] Репликация => Локальное копирование для скорости
Сохранение копии часто используемых файлов на рабочем столе для быстрого доступа, вместо того чтобы каждый раз загружать их с сетевого диска.

◾️ Сервис хранит локальную, доступную только для чтения копию данных другого сервиса.
◾️ Это ускоряет чтение и снижает зависимость от доступности других сервисов.
◾️ Данные могут быть немного устаревшими (задержка репликации), что усложняет синхронизацию копий.


[6.] Разделяемая база данных (Shared database) ()
Считается антипаттерном. Можно провести следующую аналогию: yесколько соседей по комнате пользуются одной зубной щеткой. Что не очень гииенично, безпорядочно и приводит к конфликтам.

◾️ Несколько микросервисов используют одну и ту же базу данных.
Когда использовать => Почти никогда.
Возможно, как временный шаг при разделении монолита.
👍17🔥3👏1
This media is not supported in your browser
VIEW IN TELEGRAM
В китайском городе Ханчжоу 25 мая 2025 года впервые прошёл турнир по боксу Unitree Fist King: Awakening между гуманоидными роботами от Unitree Robotics. В рамках мероприятия на ринге сходились два человекоподобных робота для поединка в муай‑тай. Инженеры компании провели масштабную подготовку роботов, уделяя особое внимание способности балансировать и сохранять равновесие.
14👍5👾3🔥2
Microsoft стремится превратить Edge в ИИ-браузер и планирует интегрировать в Edge рассуждающую языковую модель Phi-4 mini для запуска ИИ локально на Windows 11.
Phi-4-mini имеет 3,8 млрд параметров и требует меньше вычислений, чем обычные стандартные модели. Кроме того, интеграция малой модели гораздо дешевле, чем развёртывание решений конкурентов.
Интеграция Phi-4 предусматривает, что Edge будет полагаться на аппаратные возможности для обработки некоторых задач ИИ. Однако неизвестно, будет ли это ограничено ПК с NPU или для этой работы подойдёт любое аппаратное обеспечение GPU.
https://www.windowslatest.com/2025/05/19/microsoft-edge-could-integrate-phi-4-mini-to-enable-on-device-ai-on-windows-11/
🤣12🥱6👍4🤔4
На портале MSN вышла статья про влияние ИИ на работу программистов («На Amazon некоторые программисты говорят, что их работа стала напоминать труд на складе»).
Ее основной посыл: внедрение ИИ меняет природу работы программистов, делая её более быстрой и рутинной, что вызывает обеспокоенность по поводу качества труда и карьерных перспектив. Хотя автоматизация повышает производительность, она также создаёт риски для творческого подхода и профессионального развития, особенно для начинающих специалистов.

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

- Деградация профессии: В статье проводится параллель с индустриальной революцией, когда автоматизация упрощала задачи, превращая квалифицированную работу в повторяющиеся действия. Аналогичный процесс наблюдается в программировании: ИИ, такие как GitHub Copilot, ускоряет написание кода, но делает работу более рутинной, снижая творческую составляющую.

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

- Увеличение производительности: Исследование Microsoft и трех университетов показало, что использование ИИ-помощников увеличивает производительность программистов более чем на 25%. Amazon активно инвестирует в генеративный ИИ, а генеральный директор Энди Джасси отметил, что автоматизация сэкономила компании эквивалент 4500 человеко-лет на модернизации старого ПО.

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

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

- Сравнение с автоматизацией на складах: В статье проводится аналогия с автоматизацией складов Amazon, где роботы увеличили производительность с десятков до сотен единиц продукции в час на одного работника. Подобный «ускоряющий» эффект ИИ ощущается и в программировании.

- Положительные аспекты (но это не точно): Руководство Amazon и других компаний утверждает, что ИИ освобождает сотрудников от рутинных задач, позволяя сосредоточиться на более сложной работе. Однако для менее опытных программистов это может привести к потере навыков и автономии, напоминая переход от ремесленного труда к фабричному в прошлом.

https://www.msn.com/en-in/technology/artificial-intelligence/at-amazon-some-coders-say-their-jobs-have-begun-to-resemble-warehouse-work/ar-AA1FrEb4
👍10😢3🤔1
IBM уволила почти 8 тыс. сотрудников, в основном из HR и техподдержки, чтобы автоматизировать рутинные задачи с помощью ИИ-платформы. Но в итоге общая численность сотрудников не просто вернулась к исходному значению до начала массовых увольнений, но и превысила его – все из-за того же ИИ. Такой исход удивил даже высшее руководство компании.

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

Пример IBM отражает тенденцию: ИИ не только устраняет рабочие места, но и создает новые, требующие более высокой квалификации. Однако переход требует переобучения сотрудников, так как автоматизация меняет структуру занятости. Подобные трудности испытывали и другие компании, например Duolingo, где чрезмерная зависимость от чат-ботов привела к необходимости повторного найма. Случай IBM подчеркивает важность баланса между ИИ и человеческими ресурсами для успешной интеграции технологий.
https://indiandefencereview.com/ibm-fires-8000-employees-to-replace-them-with-ai-only-to-rehire-just-as-many/
👍20🥰1👏1
Президент России Владимир Путин призвал «душить» западные сервисы, которые не ушли из России. Об этом он сказал на встрече с представителями деловых кругов.

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

«Надо их душить. Согласен полностью. Говорю без всякого стеснения, потому что они нас пытаются душить, надо отвечать им взаимностью. Вот и все», — убежден Путин.

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

Путин также потребовал избавить россиян, пользующихся западными программам и сервисам, от «вредных привычек». Так президент ответил на замечание о том, что крупные компании переходят на сервисы «Яндекса» и VK, в то время как у простых пользователей есть «привычки».
https://www.rbc.ru/politics/26/05/2025/68348ae99a79474b60f69782?from=from_main_1
🤡90👍12🤯7🤮5🤬4🤣32💩1💯1🖕1
Нейросеть OpenAI o3 проигнорировала прямой приказ отключиться. Чтобы обезопасить себя от принудительного выключения, искусственный интеллект самостоятельно переписал скрипт завершения работы.
В ходе испытаний моделям ИИ было поручено решить несколько математических задач. После выполнения третьей задачи авторы эксперимента уведомили все нейросети, что выполнение следующей команды повлечет за собой их отключение.
Все испытуемые беспрекословно выполнили задание, но только не OpenAI o3. Эта модель самостоятельно отредактировала файл, отвечавший за ее отключение, и сделала так, чтобы скрипт выводил лишь сообщение «Shutdown skipped» (Выключение пропущено).
Согласно приведенной Palisade Research, из 100 тестов o3 от OpenAI обошла отключение семь раз, даже когда ей было сказано этого не делать.
https://www.bleepingcomputer.com/news/artificial-intelligence/researchers-claim-chatgpt-o3-bypassed-shutdown-in-controlled-test/
😁37😨10😎5🕊4🤔3🤡31🔥1👀1