Highload — медіа для розробників
4.17K subscribers
5.59K photos
277 videos
18 files
6.48K links
Розповідаємо про людей, які створюють код, та про код, який вони пишуть.

Зв'язатися із редакцією можна тут: news@highload.today. А щодо розміщення реклами, будь ласка, пишіть на specials@highload.today.

Наш чат https://t.me/highloadchatt
Download Telegram
​​Fable получил новое минорное обновление

Очередное минорное обновление компилятора, преобразующего функциональный язык платформы .NET в JavaScript. Полноценная третья версия продукта вышла в декабре 2020 года.

Fable компилирует F# в JavaScript. По задумке создателей, он должен помочь бэкенд-разработчикам и приверженцам функционального программирования в разработке веб-интерфейсов. Энтузиасты, разрабатывающие этот опенсорсный проект, уже говорят о превращении его в полноценную экосистему.

Сайт Fable: fable.io
​​Новые возможности ECMAscript 2021

Очередное заседание TC39 — комитета разработчиков и теоретиков JavaScript — завершилось опубликованием 3 февраля списком функций ECMAScript 2021. Вот несколько самых интересных нововведений (некоторые из них уже были доступны в разработке через Babel).

1. Promise.any
Метод Promise.any() принимает несколько "обещаний" (Promise). Как только одно из "обещаний" выполнится успешно, метод возвращает единственный объект Promise со значением выполненного "обещания". Если ни одно из "обещаний" не завершится успешно, то возвращенный объект promise будет отклонен. По существу, метод Promise.any() — противоположность для Promise.all().

2. Оператор логического присваивания
Оператор логического присваивания означает, что можно будет использовать комбинацию логических операторов &&, || или ?? с присваиванием = . Присваивание произойдет при выполненном условии.

3. replaceAll()
String.prototype.replaceAll() заменяет все вложенные строки, согласно паттерну, другим строковым значением. В отличие от уже существующего метода replace(), который заменяет только первую найденную часть строки.

4. Приватные поля класса
В ES2021 объявить приватными переменную или метод очень просто, просто нужно поставить # перед именем переменной/метода.

5. WeakRef
Когда мы присваиваем объект переменной, он указывает на часть памяти, где хранится значение этого объекта (сильная ссылка). Если программа больше не ссылается на этот объект, сборщик мусора уничтожает его и освобождает память. Экземпляр WeakRef создает ссылку на заданный объект, которая возвращает его, если он все еще находится в памяти, или undefined, если целевой объект был удален сборщиком мусора.

Полный текст ECMAScript 2021: https://tc39.es/ecma262/
​​Искусственный интеллект ответил, что такое любовь

Дата-сайентист Прашант Мудгал обучил философским трудам модель машинного обучения GPT-2. GPT-2 сейчас находится в открытом доступе на GitHub, более продвинутая модель GPT-3 все еще не доступна для широкой публики.

Разработчик развернул модель на своем локальном компьютере (MacBook Pro 16”) и снабдил минимальным интерфейсом, а затем использовал для ее обучения тексты Аристотеля, Платона, Ницше и Вольтера. По словам автора, машина несколько раз дала разумные на вид ответы на задаваемые ей вопросы, но большую часть времени диалог был похож на разговор с человеком, у которого серьезные психические проблемы.

Вот один из примеров “разумного” ответа GPT-2 на вопрос, что такое любовь: “Любовь это хорошо. Любовь это весело и замечательно. Она огромна. Она огромна. Она большая. Любовь и жизнь родственны, но правда горька. К сожалению, никто не любит тебя. Некоторые люди не понимают этого”.

Вся статья доступна по ссылке: https://towardsdatascience.com/-taught-philosophy-to-gpt-2-and-it-felt-i-am-talking-to-a-deranged-but-intelligent-person-875820735af5
​​5 главных тезисов из книги “Прагматичный программист”

Разработчик из noiiz.com Джейми Буллок рассказал о главных выводах из книги “Прагматичный программист” (The Pragmatic Programmer by Andrew Hunt, David Thomas), которую ресурс best-books.dev признал лучшей книгой по программированию всех времен.

1. DRY (Don’t Repeat Yourself) — не повторяйся
Авторы определяют принцип DRY следующим образом: «Каждая часть знания должна иметь единственное, недвусмысленное и авторитетное представление в системе».
DRY — это не только предотвращение дублирования кода, но и дублирования знаний, намерений, структур данных, дизайна, API или даже усилий членов команды.

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

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

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

5. Agile — не то, что вы думаете
Авторы критикуют жесткие методологии и связанные с ними сертификаты:
“Нужна способность смотреть за рамки существующих правил и использовать все возможности. Это совершенно другой образ мышления”. По их мнению, решения по управлению проектами всегда должны быть “контекстными” и зависеть от компании, команды и многих других факторов.

Вся статья доступна по ссылке: https://medium.com/better-programming/5-essential-takeaways-from-the-pragmatic-programmer-6bb3db986294
​​Пора ли переходить ли на Vue 3?

Автор блога Maison Futari подробно разобрал, в каких случаях стоит переходить на обновленную версию фреймворка Vue 3, а в каких — Vue 2 все же будет лучшим вариантом для вашего проекта.

Краткая выжимка такова:

📌если вам нужна поддержка Internet Explorer 11, не используйте Vue 3: такой поддержки пока нет;

📌если вы работаете в большом давно существующем проекте, не используйте Vue 3: в зависимости от кода, время миграции и преимущества в производительности могут просто не окупиться;

📌если у вас есть проблемы с производительностью даже после некоторых оптимизаций, используйте Vue 3;

📌если вам нужна поддержка TypeScript, используйте Vue 3, где она намного лучше, чем раньше;

📌и очевидное: не все плагины и фреймворки успели перейти на новую версию, используйте Vue 3 только, если нужные вам зависимости поддерживают его.

Полный текст разбора по ссылке: https://itnext.io/yes-vue-3-is-out-but-you-probably-dont-need-it-%EF%B8%8F-3e60634991b4
​​Запускаем конкурс pet-проектов разработчиков. Принимайте участие!

Пока сайт Highload готовится к запуску, мы объявляем старт конкурса pet-проектов — тех, которые вы делаете с особой заботой и любовью.

Расскажите о своем «питомце», а мы вместе с опытными инвесторами и разработчиками выберем самые интересные, расскажем о них миру и, конечно, наградим призами!

Победитель получит Apple iPhone 12 64GB, а участники, занявшие второе и третье место – наушники Marshall Monitor II ANC Black и набор Arduino соответственно.

Это могут быть проекты по мобильной разработке (Android и iOS), frontend и backend, AI и ML, IoT, Big Data, desktop, написанные на любом из языков программирования. Будьте готовы ответить на много дополнительных вопросов о проекте и показать исходный код.

Конкурс проводим вместе с IT-компанией Genesis.

Ждем ваши проекты до 14 марта включительно.

https://specials.highload.today/
Highload — медіа для розробників pinned «​​Запускаем конкурс pet-проектов разработчиков. Принимайте участие! Пока сайт Highload готовится к запуску, мы объявляем старт конкурса pet-проектов — тех, которые вы делаете с особой заботой и любовью. Расскажите о своем «питомце», а мы вместе с опытными…»
​​COBOL живее всех живых

В 2020 году в Нью-Джерси (США) неожиданно обнаружилась нехватка программистов на языке COBOL: перегруженность системы выплат по безработице, написанной 40 лет назад на этом языке программирования, вызвала задержку в обработке дел.

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

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

Вся статья доступна по ссылке: https://www.datacenterknowledge.com/design/no-cobol-not-dead-language
​​Подсудимый в США проверит код софта для теста ДНК, чтобы доказать невиновность

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

Апелляционный суд Нью-Джерси (США) постановил, что Кори Пикетт, обвиняемый в стрельбе со смертельным исходом в 2017 году, имеет право проверить проприетарный софт для генетического тестирования, чтобы оспорить доказательства, представленные против него. Программа TrueAllele помогла проанализировать генетический образец из оружия, которое использовалось для связи обвиняемого с преступлением.

Производитель программного обеспечения, компания Cybergenetics настаивала, что исходный код программы — коммерческая тайна. Соучредитель Cybergenetics Марк Перлин к тому же заявил, что программа состоит из 170 тыс. строк кода MATLAB, настолько плотных, что на их проверку потребуется восемь с половиной лет. Но суд эти доводы не убедили: Cybergenetics придется открыть код TrueAllele для команды защиты.

Ссылка на новость: https://www.theregister.com/2021/02/04/dna_testing_software/
Вакансия: Senior Backend Developer в SocialTech

SocialTech – продуктовая IT-компания в индустрии social discovery, у которой миллионы пользователей.

В свою дружную команду компания ищет senior backend developer, который имеет от 4 лет опыта. Кроме интересных задач в SocialTech предлагают клубы по интересам, бесплатное посещение тренингов и изучение английского языка.

#вакансия

https://mc.today/vacancy/senior-backend-developer/?utm_source=telegram&utm_medium=social&utm_campaign=telega
​​Найдена критическая уязвимость в менеджерах пакетов JavaScript, Ruby и Python

Блогер и разработчик Алекс Бирсан нашел способ взломать Apple, Microsoft и множество других компаний. Он обратил внимание на странную работу менеджеров пакетов в таких языках как JavaScript, Ruby и Python. Указанную в программе зависимость они искали в первую очередь среди публичных пакетов. Идея была проста: найти в открытом коде больших компаний названия внутренних пакетов и загрузить свои пакеты в менеджер под теми же названиями, содержащими вредоносный код. Информация о каждой машине, скачавшей ложный пакет, была закодирована в шестнадцатеричном формате, использовалась как часть DNS-запроса, чтобы обойти DNS exfiltration, и передавалась автору.

Алексу удалось внедриться в более чем 35 компаний и заразить больше 1 тыс. компьютеров их сотрудников. 75% данных было получено от JavaScript-пакетов. Но, как считает автор, это не из-за того, что Ruby и Python менее восприимчивы к атаке, просто имена пакетов на JS было легче найти.

Читайте полный текст статьи по ссылке: https://medium.com/@alex.birsan/dependency-confusion-4a5d60fec610
​​Запускаем конкурс pet-проектов разработчиков. Принимайте участие!

Пока сайт Highload готовится к запуску, мы объявляем старт конкурса pet-проектов — тех, которые вы делаете с особой заботой и любовью.

Расскажите о своем «питомце», а мы вместе с опытными инвесторами и разработчиками выберем самые интересные, расскажем о них миру и, конечно, наградим призами!

Победитель получит Apple iPhone 12 64GB, а участники, занявшие второе и третье место – наушники Marshall Monitor II ANC Black и набор Arduino соответственно.

Это могут быть проекты по мобильной разработке (Android и iOS), frontend и backend, AI и ML, IoT, Big Data, desktop, написанные на любом из языков программирования. Будьте готовы ответить на много дополнительных вопросов о проекте и показать исходный код.

Конкурс проводим вместе с IT-компанией Genesis.

Ждем ваши проекты до 28 февраля включительно.

https://specials.highload.today/
​​Google, Microsoft и Amazon займутся поддержкой языка программирования Rust

Команда разработчиков Rust объявила о создании фонда поддержки и развития языка. О решении присоединиться к новой независимой некоммерческой организации Rust Foundation уже объявили несколько крупных компаний, включая Amazon Web Services, Huawei, Google, Microsoft и Mozilla.

Rust — экспериментальный язык программирования, созданный Mozilla. Это компилируемый и мультипарадигмальный язык, позиционирующийся как альтернатива С/С++. В Rust поддерживаются функциональное, параллельное, процедурное и объектно-ориентированное программирование. Ключевые приоритеты языка: безопасность, скорость и параллелизм, при этом уникальное управление памятью позволяет обходиться без системы сборки мусора. Rust пригоден для системного программирования и, в частности, рассматривается как перспективный язык для разработки ядер операционных систем.

Ссылка на новость: https://foundation.rust-lang.org/posts/2021-02-08-hello-world/
​​Вышла бета-версия Angular 12

Развиваемый Google JavaScript-фреймворк Angular 12 вышел в бета-версии. Полноценное обновление запланировано на май, но в предварительном варианте уже доступны новые возможности, включая улучшенную валидацию форм и поддержку языков, поддержку сборщика Webpack 5, добавлен метод appendAll() на HttpParams, экспорт читаемого списка HTTP-статусов и многое другое.

Продакшн-релиз 11-й версии Angular вышел в ноябре 2020 года.

Полный список изменений по ссылке: https://github.com/angular/angular/blob/master/CHANGELOG.md
​​Остается чуть меньше месяца, чтобы подать заявку на наш конкурс pet-проектов для разработчиков и получить iPhone 12!

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

Победитель получит Apple iPhone 12 64GB, а участники, занявшие второе и третье место – наушники Marshall Monitor II ANC Black и набор Arduino соответственно.

Принять участие могут проекты в сферах мобильной разработки (Android и iOS), frontend и backend, AI и ML, IoT, Big Data, desktop, написанные на любом из языков программирования.

Конкурс проводим вместе с IT-компанией Genesis.

Ждем ваши проекты до 14 марта включительно.

https://specials.highload.today/
​​Microsoft назвала атаку на SolarWinds крупнейшей в истории

Президент Microsoft Брэд Смит заявил, что итоги анализа вредоносного кода кибератаки на американскую IT-компанию SolarWinds в декабре 2020 года позволяют назвать ее “самой крупной и сложной атакой, которую когда-либо видел мир”. По его оценке, в атаке участвовали не менее 1 тыс. разработчиков. Брэд Смит не сказал, кто был заказчиком атаки, но сравнил ее с масштабными атаками на IT-инфраструктуру Украины 2017 года.

Кевин Манида, CEO компании FireEye, тоже пострадавшей от атаки, рассказал, как был обнаружен взлом. Работники информбезопасности заподозрили взлом аккаунта одного из сотрудников при попытке двухфакторной аутентификации. На его имя было зарегистрировано сразу два номера телефона, один из которых сотруднику не принадлежал.

Ссылка на новость: https://www.theregister.com/2021/02/15/solarwinds_microsoft_fireeye_analysis/
​​Вышел Go 1.16

Команда разработчиков языка Go объявила о выходе новой версии языка. В ней, в частности, появится директива embed, которая обеспечит доступ к файлам или даже веб-страницам. Кроме того, добавлена поддержка macOS ARM64, исправлены множество ошибок и сделаны качественные улучшения сборки проекта: она ускорилась на 25% и потребляет на 15% меньше памяти.

Впрочем, комментаторы, например на площадке Reddit, уже раскритиковали обновление. Некоторым показалось неестественным, что embed работает из комментария. Другие же критикуют язык в целом, указывая, что он создан скорее для ускорения написания кода, а не последующих чтения и поддержки.

Ссылка на новость: https://blog.golang.org/go1.16
​​Microsoft анонсировала .NET 6 Preview 1

Релиз назначен на ноябрь 2021 года. Прошлое обновление вышло в ноябре 2020 года. Если все пройдет, как планируется, впервые за долгое время компания порадует свежими обновлениями фреймворка два года подряд. А пока можно ознакомиться с изменениями. В их числе:

📌 Интеграция Xamarin в .NET для поддержки кроссплатформенной разработки. Это позволит напрямую использовать платформу для создания мобильных приложений на Android и iOS.

📌 Возможность писать настольные приложения на Blazor.

📌 Добавление горячей перезагрузки для C#.

📌 Улучшение производительности на процессорах ARM64.

И многое другое.

Читайте полный релиз со всеми изменениями по ссылке: https://devblogs.microsoft.com/dotnet/announcing-net-6-preview-1/
​​Apple уже ищет инженеров для работы над стандартом 6G

Разворачивание сетей связи 5G в большинстве стран займет еще несколько лет, но Apple уже опубликовала несколько вакансий, указывающих на то, что она нанимает инженеров для работы над следующим стандартом — 6G. Списки вакансий, которые обнаружил Bloomberg, такие как “Инженер по системам беспроводных исследований — 5G/6G” и “Инженер по стандартам RAN1/RAN4”.

Похоже, что Apple планирует развивать эти технологии внутри компании, чтобы не полагаться на партнеров, когда 6G-технологий будут готовы к запуску. В частности, Apple, вероятно, не хочет зависеть от продукции компании Qualcomm, модемы которой используются в iPhone 12 с поддержкой 5G, вышедших в конце 2020 года. Не исключено, что первые модели собственных модемов Apple выпустит уже для стандарта 5G.

Ранее стало известно, что Apple присоединяется к альянсу Next G (в него также входят Facebook, Microsoft, Nokia, Samsung и др.) для совместной работы над определением спецификаций для 6G.

Ссылка на статью: https://arstechnica.com/gadgets/2021/02/apple-starts-hiring-engineers-to-work-on-6g-modems/
​​Многие разработчики развивают свои личные проекты в надежде на прорыв, крупных инвесторов и большую аудиторию. Если вы один из них, то не забудьте до 14 марта подать заявку на наш конкурс!

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

Победитель получит Apple iPhone 12 64GB, а участники, занявшие второе и третье место – наушники Marshall Monitor II ANC Black и набор Arduino соответственно.

Принять участие могут проекты в сферах мобильной разработки (Android и iOS), frontend и backend, AI и ML, IoT, Big Data, desktop, написанные на любом из языков программирования.

Конкурс проводим вместе с IT-компанией Genesis.

Ждем ваши проекты до 14 марта включительно.

https://specials.highload.today/