Technologique
660 subscribers
143 photos
3 videos
42 files
945 links
Deeply involved developers about various aspects, tendencies & conceptions of programming technologies, FLOSS, Linux, security, cloud infrastructures & DevOps practices, distributed systems, data warehousing & analysis, DL/ML, web3, etc.
Author: @andrcmdr
Download Telegram
Четырнадцатый раунд нагрузочных тестов производительности фреймворков для разработки сетевых и веб приложений от TechEmpower.

В новом раунде добавили многопоточный (actor based) фреймворк Tokio для Rust.

https://www.techempower.com/blog/2017/05/10/framework-benchmarks-round-14/

https://www.techempower.com/benchmarks/#section=data-r14&hw=ph&test=plaintext&a=2

Фреймворк для создания сетевых приложений на Rust - Tokio:
https://tokio.rs
https://github.com/tokio-rs
https://github.com/tokio-rs/tokio-core
https://github.com/tokio-rs/tokio
https://github.com/tokio-rs/tokio-minihttp

https://crates.io/crates/tokio-core

https://medium.com/@carllerche/announcing-tokio-df6bb4ddb34

https://medium.com/adventures-in-rust/moving-to-tcpstream-bye-tokio-5a1488f337f6

Предыдущие посты по теме:
https://t.me/technologique/609
https://t.me/technologique/59
Проект Vagga.

https://youtu.be/bCSP5adDPJk

Docker - это уже синоним системы контейнеризаци. Но Docker написан на Go, и скомпилированный бинарный файл включает в себя run-time Go для управления памятью и маппинга потоков (go-routine) на системные треды, что неизбежно порождает оверхэд и задержки (stop-the-world, STW) сборки мусора в памяти, хоть и очень малые, но весьма ощутимые под реально высокой нагрузкой (https://t.me/technologique/841).

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

Поэтому контейнеризация и изоляция окружений на Rust имеет смысл.

Именно о таком проекте рассказывает спикер на недавнем RustFest, прошедшем 29-30 апреля в Киеве (http://2017.rustfest.eu) - о проекте Vagga.
https://youtu.be/dS9fIphTJfM

И ещё один очень интересный спич про Rust от Эмили Данэм с недавнего RustFest в Киеве (http://2017.rustfest.eu), прошедшего 29-30 апреля.

Предыдущий спич Эмили на Linux.Conf.AU 2017 — https://t.me/technologique/957 — оказался весьма популярен на нашем канале.
Перевод лекции Джорджа Дайсона по его книге "Собор Тьюринга" ("Turing's Cathedral") на конференции Next Berlin 2012 об истории развития вычислительной техники, достижениях Алана Тьюринга и как эти достижения заложили фундамент и повлияли на современное развитие вычислительных технологий.

https://www.youtube.com/watch?v=zoy0j3LCEI8

В лекции и в книге (очень советую к прочтению) есть ответ автора (знакомого с историей computer science со времён создания первых компьютеров) на главный вопрос современности - что же всех нас ждёт дальше и куда движется развитие вычислительных систем?

https://habrahabr.ru/post/261033/

Лекция Александра Барда с этой же конференции:
https://t.me/technologique/681
Теперь и кодовая база Windows разрабатывается с помощью Git, инструмента управления версиями кода, изначально созданного Линусом Торвальдсом, автором Linux - Microsoft меняется на глазах! 😁

https://blogs.msdn.microsoft.com/bharry/2017/05/24/the-largest-git-repo-on-the-planet/

Перевод:
https://habrahabr.ru/company/everydaytools/blog/329878/
Простой эксперимент, показывающий, что контейнеризация с помощью Docker порождает определённый оверхэд.

https://www.iron.io/the-overhead-of-docker-run/
Technologique
Простой эксперимент, показывающий, что контейнеризация с помощью Docker порождает определённый оверхэд. https://www.iron.io/the-overhead-of-docker-run/
И ещё одна очень вдохновляющая статья Трэвиса Ридэра, сооснователя Iron.io, из их блога, прекрасно иллюстрирующая экономичность технологии Golang и как с его помощью был преодолён оверхэд Ruby (по памяти и процессорному времени) на самых ранних этапах разработки проектов Iron.io.

https://www.iron.io/how-we-went-from-30-servers-to-2-go/
Большой разговор с Крисом Касперски о технологиях, информационной безопасности, профессии и жизни.

http://blogerator.org/page/evangelie-ot-myshhha-kris-kasperski-intervju-1

http://blogerator.org/page/evangelie-ot-myshhha-kris-kasperski-haker-2

http://blogerator.org/page/evangelie-ot-myshhha-rsdn-kris-kaspersky-3


https://t.me/technologique/833
Группа студентов факультета социологии СПбГУ проводит масштабное исследование для определения рейтинга работодателей IT сферы Санкт-Петербурга и Москвы.

Результаты исследования будут опубликованы в блоге "Моего круга" на Хабрахабре и в группе JUG.RU в VK.

Если вы трудитесь в области IT в данных городах, чтобы поддержать ребят и принять участие в исследовании предлагается пройти простой опрос, который займёт не более нескольких минут вашего времени.

Ссылка на форму опроса (на базе исследовательской платформы SurveyGizmo): http://sgiz.mobi/s3/63243b734400

Опрос проводится среди пользователей ресурсов "Хабрахабр" (TechMedia) и "Мой круг", JUG.RU и читателей IT каналов и групп в Telegram и VK.
Technologique
Прямая трансляция с конференции Apple WWDC 2017 https://www.youtube.com/watch?v=hntVmN2aK8k https://www.youtube.com/watch?v=lIMmFzUY2xo https://www.youtube.com/watch?v=ixPIXa1AiY8 С переводом на русский язык: https://www.youtube.com/watch?v=BrsLccII0mE…
Услышал интересное мнение от коллег, что новый MacBook Pro стоит брать как минимум из-за юзабилити трэкпада и тачбара клавиатуры, потому что "такое не поддерживается в Linux" (имелась ввиду поддержка жестов трэкпада в macOS).

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

И юзабилити в Linux дистрибутивах и десктоп оболочках ничем не хуже, чем в macOS на MacBook.

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

Плюс, если у вас сенсорный экран (например от ELAN), то он вероятно уже поддерживается драйверами X.org и Wayland, а GNOME 3 прекрасно поддерживает жесты на сенсорном экране (Debian 9 + GNOME 3 в моём случае).
А если есть трэкпойнт (прецизионный тензометрический датчик на клавиатуре, как в моделях Lenovo ThinkPad и некоторых моделях Dell и HP), то про использование мыши можно вообще забыть (я например перестал пользоваться мышью на ThinkPad).

Работа жестами с Apple Magic Trackpad в KDE с помощью TouchEgg:
https://www.youtube.com/watch?v=1Ek4QaFQ1qo

https://github.com/JoseExposito/touchegg/wiki/Gallery

Как этого достичь? Очень просто.

На данный момент устройства Synaptics и ELAN поддерживаются библиотекой libinput для X.org (xf86-input-libinput, xserver-xorg-input-libinput).

sudo apt-get install arandr x11-touchscreen-calibrator xinput xinput-calibrator xserver-xorg-input-libinput xserver-xorg-input-mouse

К сожалению Synaptics больше не поддерживает разработку драйвера для X.org.
Мультитач драйвер для X.org (http://bitmath.org/code/multitouch/ - xf86-input-multitouch, xserver-xorg-input-multitouch) также не поддерживается для более современных устройств.
Чтобы не возникало конфликтов в приоритете драйверов с libinput - их лучше удалить.

sudo apt-get purge xserver-xorg-input-synaptics synclient xserver-xorg-input-multitouch

https://wiki.archlinux.org/index.php/Libinput

https://wiki.archlinux.org/index.php/Touchpad_Synaptics

Далее нужно установить и настроить по своему вкусу TouchEgg, следуя инструкциям из вики:
https://wiki.archlinux.org/index.php/Touchegg

https://github.com/JoseExposito/touchegg

https://github.com/JoseExposito/touchegg/wiki/How-to-compile-Touch%C3%A9gg-source-code

https://github.com/JoseExposito/touchegg/wiki/All-actions-supported-by-Touch%C3%A9gg

https://github.com/JoseExposito/touchegg/wiki/All-gestures-supported-by-Touch%C3%A9gg

Совместное использование мультитач тачпэда, трэкпойнт на клавиатуре и мультитач дисплея в оболочке GNOME 3 или KDE обеспечивают самое продвинутое юзабилити и пользовательский опыт (user experience, UX), который абсолютно не сравним ни с macOS, ни с Windows 10.

Для GNOME 3 есть отличное расширение для управления всеми устройствами ввода через xinput или gconf:
https://extensions.gnome.org/extension/131/touchpad-indicator/

http://user501254.github.io/TouchpadIndicator/

https://github.com/user501254/TouchpadIndicator
Новое поколение железа для нейросетей и AI - Nvidia Tesla Volta V100, самый дорогой и самый технологически прогрессивный микропроцессор.

https://youtu.be/3aAEKRDhrj8
Дженсен Хуанг, основатель и CEO Nvidia, про закон Мура, его замедление, оптимизацию вычислений на уровне фотолитографии, архитектуры процессора, его инструкций, логики конвейерной обработки инструкций, про следующие поколения процессоров и прогресс в области процессоров GPU, параллелизм на уровне машиных инструкций, оптимизацию компиляторов, технологию CUDA и ускорение вычислений в различных прикладных областях.

https://youtu.be/NmDex7TbceE