Pull to refresh
3
Karma
0.2
Rating
  • Followers 7
  • Following
  • Posts
  • Comments

Выпуск Rust 1.56.0 и 2021 редакция

Open source *Programming *System Programming *Compilers *Rust *
Translation

Команда Rust рада сообщить о новой версии языка — 1.56.0. С этим выпуском также стабилизируется 2021 редакция. Rust — это язык программирования, позволяющий каждому создавать надёжное и эффективное программное обеспечение.


Если вы установили предыдущую версию Rust средствами rustup, то для обновления до версии 1.56.0 вам достаточно выполнить следующую команду:


rustup update stable

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

Читать дальше →
Total votes 23: ↑23 and ↓0 +23
Views 2K
Comments 3

Rust 1.55: обновление `std::io::ErrorKind`, изменение алгоритма разбора чисел с плавающей точкой

Open source *Programming *System Programming *Compilers *Rust *
Translation

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


Если вы установили предыдущую версию Rust средствами rustup, то для обновления до версии 1.55.0 вам достаточно выполнить следующую команду:


rustup update stable

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

Читать дальше →
Total votes 29: ↑29 and ↓0 +29
Views 4.4K
Comments 3

Слегка ржавое EFI-приложение

RUVDS.com corporate blog System Programming *Rust *UEFI *
Translation
После двух твитов, оставленных на прошлой неделе, про мои игры с UEFI и Rust, несколько человек попросили опубликовать заметку, объясняющую как создать UEFI-приложение, полностью написанное на Расте и продемонстрировать тестовое окружение.

Так что сегодняшняя цель — это создание UEFI-приложения на Расте, которое распечатывает карту памяти, отфильтрованную по доступности для использования (такая память называется традиционной памятью в описании UEFI-спецификаций):

Читать дальше →
Total votes 56: ↑55 and ↓1 +54
Views 7.3K
Comments 3

WireGuard заработал в режиме ядра WindowsNT

GlobalSign corporate blog Information Security *Open source *System Programming *Development for Windows *


Разработчик WireGuard VPN Джейсон Доненфельд выпустил новую версию WireGuardNT, которая работает в режиме ядра WindowsNT (7, 8.1, 10, 11, 2012, 2016, 2019, 2022). Перенос всего кода в ядро значительно повышает пропускную способность туннеля практически на любых соединениях, особенно по WiFi.

Примечание. Чтобы запустить свою программу на уровне ядра Windows и не иметь проблем с Microsoft SmartScreen, разработчику требуется приобрести сертификат подписи кода типа EV, который стоит намного дороже, чем обычный сертификат подписи кода — примерно $2000 за трёхлетний. Хорошо, что у опенсорсного некоммерческого проекта WireGuard есть спонсоры.
Читать дальше →
Total votes 28: ↑28 and ↓0 +28
Views 9.1K
Comments 31

Rust 1.53.0: IntoIterator для массивов, "|" в шаблонах, Unicode-идентификаторы, поддержка имени HEAD-ветки в Cargo

Open source *Programming *System Programming *Compilers *Rust *
Translation

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


Если вы установили предыдущую версию Rust средствами rustup, то для обновления до версии 1.53.0 вам достаточно выполнить следующую команду:


rustup update stable

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


Что было стабилизировано в 1.53.0


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

Читать дальше →
Total votes 30: ↑30 and ↓0 +30
Views 3.6K
Comments 22

Марсоход «Настойчивость» высадился на Марс! [Дополняется...]

Selectel corporate blog Popular science Astronautics

Первое изображение, полученное от «Настойчивости» после высадки
Несколько минут назад появилась информация о том, что высадка на Красную планету прошла успешно! Как и сообщалось, информация об этом поступила на Землю через 11 минут после начала процесса посадки. Сейчас ровер начинает проверять свои системы, а чуть позже — начнет основную миссию по изучению поверхности Красной планеты.

Вскоре (наверное, спустя несколько дней) посадку аппарата мы сможем увидеть во всей красе и даже услышать благодаря большому количеству камер и микрофонов, которыми оснащен ровер. Данные обработают и только после этого представят миру.
Total votes 89: ↑88 and ↓1 +87
Views 33K
Comments 132

Ржавеем дальше. Как появился Rust и можно ли на нём WEB?

System Programming *Rust *WebAssembly *

Моя предыдущая статья про rust вызвала положительную реакцию и большое количество обсуждений о том что да как с rust. Мне исключительно приятно видеть что вам понравился этот материал.

В комментариях я встретил много вопросов типа «А можно ли использовать rust для WEB?» Лаконичный ответ таков: «Можно». Можно и brainfuck использовать, если хочется. Нужно ли? Скажем так, brainfuck для WEB использовать категорически не стоит. А вот rust – тут надо понимать что именно делает rust и каковы его цели. Для того чтобы это понять мы должны погрузиться в компилятор и разобраться в устройстве процессоров. Под катом вы найдёте глубокий заныр в историю того как появился rust и поймёте что это такое и когда его нужно использовать а когда можно и на «ноде запилить».

Ржавеем дальше и глубже...
Total votes 39: ↑34 and ↓5 +29
Views 12K
Comments 88

Как мы ржавели. История внедрения и обучения

Programming *System Programming *Rust *

Все говорили – переходи на rust! Начинай пользоваться самым-самым языком, который самый любимый язык на stackoverflow и всё такое.

Я тяжело вздохнул и огляделся. Ну опять двадцать-пять. Ладно, давайте разбираться, как правильно покрывать всё ржавчиной.

Профессионально я программирую уже 17 лет. В далёкие-предалёкие времена я начал изучать программирование с x86 Assembly. Такой жестокий подход к изучению компьютера дал мне глубокое понимание того как работает процессор и что делают другие языки программирования. Учить новые языки для меня никогда не было проблемой. Я их просто учил. C, C++, шарпы, ГО, тысячи разных скриптов и фреймворков. Чего уж там, ещё один язык, можно и выучить.

Ага.

Только вот не с этой ржавой развалюхой. Я просидел две недели над официальным руководством, пялился в VSCode и не мог выдавить из себя больше чем fn main() {}. Ну какого же чёрта? Я просто закрыл глаза, открыл руководство на рандомной странице и начал его читать. И прикол в том, что я понял о чём там говориться. И тут до меня дошло… Руководство написано наизнанку. Начало и конец ничуть не лучше чем в Мементо Кристофера Нолана. Они как-то умудрились запутать в общем-то нормальное руководство. После этого всё пошло получше.

Ржавые шестерёнки заскрипели и начали крутиться. Программа пошла-поехала. Если хотите знать как я внедрил rust в продакшин, как я ему научился и что из этого вышло – добро пожаловать под кат. Реальные люди, коммиты, примеры и никаких todo-list и хеллоу-ворлдов.

Ржаветь так ржаветь.
Total votes 142: ↑138 and ↓4 +134
Views 24K
Comments 314

Зонд New Horizons выяснил, что в небе лишь сотни миллиардов галактик

Astronautics

Ученые узнали с помощью зонда New Horizons, что количество невидимых галактик меньше, чем предполагалось ранее — сотни миллиардов, а не два триллиона.

Читать далее
Total votes 28: ↑27 and ↓1 +26
Views 13K
Comments 35

Разработчик Cyberpunk 2077 рекомендует не создавать лишние предметы: если сохранение больше 8 МБ, оно повреждается

Game development *Games and game consoles
Сообщение об ошибке, когда сохранение оказалось размером более 8 МБ, при попытке загрузки игры оно было повреждено и не может быть восстановлено.

Разработчики Cyberpunk 2077 предупредили пользователей о необычной ошибке с файлами сохранения, которая сейчас присутствует в версии игры для ПК.
Читать дальше →
Total votes 36: ↑29 and ↓7 +22
Views 90K
Comments 152

Опубликован релиз Sequoia 1.0, реализации OpenPGP на языке Rust

Selectel corporate blog Information Security *Open source *Development for Linux *Software

Спустя три года после начала разработки опубликован релиз Sequoia 1.0. Это реализация OpenPGP на языке Rust, содержащая обширную библиотеку функций и инструментарий командной строки. Релиз опубликован после того, как разработчики закончили работу над низкоуровневым API — в нем как раз и реализован в полной мере стандарт OpenPGP.

Написано все это на Rust, а распространяется пакет под лицензией GPLv2+. Есть версии для всех основных платформ — Linux, FreeBSD, Windows, macOS, Android и iOS. Команда разработчиков небольшая, ее основа — три участника разработки GnuPG из компании g10code. Эта же команда создала и сервис ключей Hagrid, который применяется в сервисе keys.openpgp.org. О том, что представляет из себя пакет — под катом.
Читать дальше →
Total votes 28: ↑28 and ↓0 +28
Views 2.1K
Comments 0

Фантастическая эклектика: романы, написанные на невероятном стыке жанров

Science fiction


В мире постмодерна и постиронии, где мы живем сегодня, многие рамки становятся все более хрупкими и условными. Так в литературе авторы все более и более смело обходятся с понятиями жанра, комбинируя их или работая на тонкой грани между двумя, тремя и более направлениями. Если несколько лет назад шутка про «кибер-утопический-порно-триллер» казалась только шуткой, то сейчас нет ничего невозможного! Главное — иметь в запасе смелость и чувство вкуса. И, желательно, представление о том, какой именно цели служит тот или иной эксперимент.

И вот несколько примеров подобных книг, не укладывающихся в прокрустово ложе привычных жанров.
Читать дальше →
Total votes 16: ↑14 and ↓2 +12
Views 19K
Comments 11

Роботы. Часть два. Крылатые качели

.NET *Industrial Programming *Robotics development *Project management *Robotics
Дисклаймер. Роботы — очень надёжные парни. Среднестатистический роберт нормального бренда может как проклятый работать годами без перерыва, требуя только коротких перерывов для обслуживания и проверки калибровки. Все нижесказанное — исключительно следствие того, что мы пытаемся этих парней заставить делать то, к чему они не привыкли. Конечно, нельзя не отметить, что мы пытаемся это сделать в рамках мануалов, но, видимо, лезем в такие дебри, где функция вроде как написана, но при этом не до конца проработана. В связи с чем и выхватываем всю ту радость, о которой пойдёт далее речь в тексте. Лонгрид.

image
Читать дальше →
Total votes 31: ↑30 and ↓1 +29
Views 7.2K
Comments 75

Что под капотом чипа DRAM, этапы развития технологии

Kingston Technology corporate blog Data storage *Manufacture and development of electronics *Computer hardware Data storaging
“Всем знаком закон Мура, описывающий уменьшение размеров транзисторов в логических схемах. Для того, чтобы он продолжал работать, технологам приходится идти на все новые и новые ухищрения, однако их работу несколько усложняет то, что все чипы очень разные по структуре. А что было бы, если бы можно было оптимизировать технологию под конкретный дизайн микросхемы? Ответ на этот вопрос может дать динамическая память.”

Классический пример работы закона Мура — ячейка статической памяти. Ее схема давно известна и широко используется, занимая десятки процентов площади современных микропроцессоров и систем на кристалле. Именно площадь ячейки статической памяти стали использовать как мерило плотности упаковки новых технологий, когда стало понятно, что длина канала транзистора больше не может быть эталоном проектных норм. Учитывая важность статической памяти, технологи стараются подбирать параметры процессов так, чтобы не только в принципе увеличивать плотность упаковки элементов на кристалле, но и заботиться конкретно о статической памяти. Однако, на чипе всегда есть множество других схем, и если очень сильно упираться в оптимизацию именно памяти, это может выйти боком. Но что было бы, если бы технологию можно было полностью подчинить нуждам схемотехники? Ответ на этот вопрос может дать динамическая память.

Читать дальше →
Total votes 29: ↑29 and ↓0 +29
Views 8K
Comments 10

Rust 1.47.0: const generics для массивов, LLVM 11, Control Flow Guard и сокращение трассировок

Open source *Programming *System Programming *Compilers *Rust *
Translation

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


Если вы установили предыдущую версию Rust средствами rustup, то для обновления до версии 1.47.0 вам достаточно выполнить следующую команду:


rustup update stable

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


Что вошло в стабильную версию 1.47.0


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

Читать дальше →
Total votes 36: ↑35 and ↓1 +34
Views 4.2K
Comments 2

OpenPGP переписывают на Rust: проект Sequoia

VDSina.ru corporate blog Information Security *Cryptography *Open source *Rust *

Секвойя Стагг в роще Олдер-Крик, Калифорния

В 2018 году три бывших разработчика GnuPG начали работу над проектом Sequoia — реализацией OpenPGP на Rust. Как известно, OpenPGP — это открытый стандарт шифрования данных, часто используемый для защищённой электронной почты; а GnuPG — эталонная реализация этого стандарта.

Сами разработчики так изложили мотивацию за создание новой библиотеки OpenPGP:

  • GnuPG трудно модифицировать. Код и API накапливались в течение 21 года. Модульные тесты отсутствуют. Компоненты тесно связаны друг с другом. Архитектура оставляет желать лучшего, и простой рефакторинг уже не поможет.
  • Многие разработчики недовольны программными интерфейсами GnuPG. У инструмента командной строки GnuPG и соответствующих программных библиотек разная функциональность: некоторые команды доступны только из командной строки.
  • Rust — безопасный для памяти язык, что автоматически исключает целый класс багов.
  • GnuPG невозможно использовать под iOS из-за ограничений GPL.
Читать дальше →
Total votes 47: ↑46 and ↓1 +45
Views 7.1K
Comments 16

Rust 1.46.0: track_caller и улучшения const fn

Open source *Programming *System Programming *Compilers *Rust *
Translation

Команда Rust рада объявить о новой версии Rust 1.46.0. Rust — это язык программирования, который позволяет каждому создавать надёжное и эффективное программное обеспечение.


Если у вас установлена предыдущая версия Rust через rustup, получить Rust 1.46.0 так же просто, как:


rustup update stable

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


Что вошло в стабильную версию 1.46.0


Этот выпуск достаточно небольшой, с улучшениями в const fn, стабилизацией двух новых API в стандартной библиотеке и одной опции, удобной для авторов библиотек. Смотрите подробные примечания к выпуску чтобы узнать о других изменениях, не представленных в данном анонсе.

Читать дальше →
Total votes 25: ↑25 and ↓0 +25
Views 3.6K
Comments 2

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

GTD *Personnel Management *Brain

Основные стереотипы о шизоидах в одной картинке

Synopsis: шизоид — не диагноз, это тип характера. Существуют шизоиды, имеющие психические заболевания (как существуют истероиды, эпилептоиды, сварщики, мужчины и женщины, дети и бухгалтеры, имеющие диагнозы из области психиатрии), но далеко не каждый шизоид (мужчина, бухгалтер, сварщик и т.д.) — болен.

Сам этот характер довольно тяжело описать одновременно коротко и корректно. Некоторые называют их «гиками», «интровертами», «чудаками», «ботаниками», «хикканами», «эксцентричными», «нердами», «компьютерными гениями»[1, стр. 231], и все эти характеристики в той или иной мере имеют отношение к, собственно, шизоидам, но ни одна из них не является определяющей.

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

Большая часть литературы, посвящённой шизоидам, имеет клиническую направленность и описывает достаточно тяжёлые случаи шизоидизации, а в рамках этого текста я хотел бы рассказать о здоровых шизоидах, коих среди нас присутствует достаточно для того, чтобы их особенности имели значение в контексте трудовых отношений, управления и маркетинга.
Читать дальше →
Total votes 170: ↑163 and ↓7 +156
Views 90K
Comments 349

ИИ снова победил пилота F-16 в воздушном бою

Cloud4Y corporate blog Popular science Artificial Intelligence IT-companies


В истории о машинах, побеждающих людей, появилась новая глава: ИИ снова победил пилота-человека в виртуальном воздушном бою. Соревнование AlphaDogfight стало финалом испытаний нейросетевых алгоритмов, разработанных для американских вооруженных сил. И наилучшей демонстрацией возможностей интеллектуальных автономных агентов, способных победить вражеские самолеты в воздушном бою. Подробнее — в материале Cloud4Y.
Total votes 27: ↑26 and ↓1 +25
Views 17K
Comments 82

Information

Rating
1,887-th
Registered
Activity