Technologique
663 subscribers
144 photos
3 videos
42 files
949 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
Антон Кекс - про применение Kotlin в реальных проектах.

Многие вещи про которые говорит Антон в текущей версии Kotlin уже исправлены, тем не менее спич и доклад весьма интересны, также весьма интересно наблюдать за развитием языка Kotlin.

https://youtu.be/CABN2r4GPpQ

На английском:
https://youtu.be/lpPbCWpBM3I

#Kotlin
Technologique
И снова про патентный троллинг и патентные войны в наше время... https://youtu.be/Scq94Er7VB8
JVM vs. .Net

Спустя время "open source и Oracle патенты" (41:41) смотрится очень забавно, в свете последних разбирательств Oracle vs. Google по патентам на API - а ведь Ричард Столлман предупреждал в своё время, ещё когда Java принадлежала Sun, что Java не свободна.
Тем не менее исходники Java были открыты и был создан проект OpenJDK до покупки Sun компанией Oracle, поэтому Google удалось избежать претензий со стороны Oracle по патентам на API.
В этом случае лицензии FOSS сработали как и должны были, сработали в защиту открытых платформ.

Хотя .Net тоже не свободен, но есть свободная (распространяемая по свободной лицензии) open source платформа Xamarin Mono, которая сейчас развивается очень большими темпами, благодаря покупке Xamarin компанией Microsoft и благодаря открытию исходников .Net и созданию проекта .Net Core - уже можно писать мобильные приложения на Xamarin.Android и Xamarin.iOS, десктопные приложения на Xamarin.Mac и кроссплатформенные десктоп приложения на Mono+GTK# для Linux и Windows, например так сделан оригинальный KeePass 2.

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

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

https://youtu.be/1z32YuiyncI

Ссылки по теме (Thread):
https://t.me/technologique/610
https://t.me/technologique/577
https://t.me/technologique/530
https://t.me/technologique/444
https://t.me/technologique/434
https://t.me/technologique/400
https://t.me/technologique/327
Technologique
JVM vs. .Net Спустя время "open source и Oracle патенты" (41:41) смотрится очень забавно, в свете последних разбирательств Oracle vs. Google по патентам на API - а ведь Ричард Столлман предупреждал в своё время, ещё когда Java принадлежала Sun, что Java не…
Но в Java как в технологии всё равно больше шума и boilerplate кода в экосистеме - сама технология Java это поощряет, а её популярность это только усугубляет.

Об этом есть очень классный доклад Антона Кекса, особенно первая его часть, с очень подробным анализом проблем в экосистеме Java.

Первую часть посмотрите обязательно - очень крутой обзор и разбор проблем в экосистеме с разных сторон.

Часть первая:
https://youtu.be/TSAlj04_tkA

Часть вторая:
https://youtu.be/cPXTozVjSHo
Бартош Милевски - теория категорий

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

https://youtu.be/p54Hd7AmVFU

Полный курс лекций — Category Theory:
https://www.youtube.com/playlist?list=PLbgaMIhjbmEnaH_LTkxLI7FMa2HsnawM_

Category Theory II:
https://www.youtube.com/playlist?list=PLbgaMIhjbmElia1eCEZNvsVscFef9m0dm

Links:
https://t.me/technologique/1002
Бартош Милевски - правда о типах

Пожалуй лучшая лекция, раскрывающая понятие теории типов, систем типов и что такое тип, основываясь на очень простых концепциях теории категорий.

https://youtu.be/dgrucfgv2Tw
Наикрутейшая лекция о теории категорий применительно к практическому программированию от Филипа Вадлера, соавтора Haskell

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

https://www.infoq.com/presentations/category-theory-propositions-principle/

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

Есть виды типизированного лямбда исчисления (https://gist.github.com/andrcmdr/7121c3d9eb83f06785d8055a5c3604a3, https://t.me/technologique/1002).
Если к ним применить теорию категорий - это уже будет конструктор для разработки различных систем типов.

Парадигм пограммирования много конечно, но все они сводятся к нескольким основным структурным парадигмам - структурной (процедуры/функции, модули, объекты/классы) и функциональной (лямбда функции (термы и типы) и категории). Или же по типу программ - к императивной и декларативной парадигме.

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

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

Типизированное лямбда исчисление и теория категорий - это очень мощные концепции в парадигме функционального программирования и именно за ними будущее всего пограммирования и всей IT отрасли.


Список литературы, статей и лекций - "Programming Language Theory":
http://steshaw.org/plt/
https://github.com/steshaw/plt

Дополнительные материалы:
Лекция Филипа Вадлера "Утверждения как типы" - https://www.youtube.com/watch?v=IOiZatlZtGU
Google выпустили Android 8 Oreo

Из основных новшеств: полная поддержка Instant Apps в Google Play, легковесная сборка платформы Android Go, поддержка Java 8 API (finally!) и языка Kotlin.

https://youtu.be/7kD0ZYzJbYo
Следующее поколение процессоров Intel, Coffee Lake, разрабатываемых по 14 nm техпроцессу, будет выпущено в октябре.

На видео есть пасхалка с подсказкой о дате выпуска на кружках с кофе. 😁👍

Не смотря на прежние технологические нормы в 14 нанометров для транзисторов Intel говорят о значительной оптимизации архитектуры, благодаря чему удалось повысить производительность чипов до 40 процентов относительно предыдущего поколения Kaby Lake и при этом значительно снизить их энергопотребление.

https://youtu.be/AAQuQh4dSgA?t=4m50s
Technologique
Сегодня состоялся официальный релиз Go 1.8. https://blog.golang.org/go1.8 https://golang.org/doc/go1.8 https://github.com/golang/go/tree/release-branch.go1.8 Как я уже писал выше - серьёзно улучшен Garbage Collector в runtime компилятора за счёт упрощения…
Сегодня состоялся официальный релиз Go 1.9

Как всегда в очередной раз улучшены алгоритмы работы сборщика мусора (GOGC) - повышена производительность выделения и освобождения больших объектов в памяти кучи (heap) для приложений использующих очень большой невыгружаемый пул памяти (memory footprint) и очень большие кучи (heap size >50GB), хранящие много крупных объектов в памяти, что весьма хорошо для улучшения производительности in-memory кэширования и приложений in-memory баз данных написанных на Go.

Вызов функции runtime.ReadMemStats и подсчёт указателей в памяти теперь занимают меньше чем 100µs даже на очень больших кучах (heaps).

В run-time улучшен механизм inline подстановок кадров стэка вызова функций, что также повышает производительность работы с памятью.

В компиляторе Go теперь по умолчанию включена паралльельная компиляция, что значительно повышает скорость сборки и компиляции очень крупных проектов на многоядерных машинах.

Также улучшения коснулись самого языка - введены псевдонимы типов для улучшения возможностей рефакторинга.

Множество небольших улучшений сделано в инструментарии Go (Go toolchain) и стандартной библиотеке, с которыми можно более подробно ознакомиться в Release Notes.

https://blog.golang.org/go1.9

https://golang.org/doc/go1.9

https://github.com/golang/go/tree/release-branch.go1.9

http://talks.godoc.org/github.com/davecheney/go-1.9-release-party/presentation.slide#1

Links:
https://t.me/technologique/1008
https://t.me/technologique/750
https://t.me/technologique/721
Technologique
На пути к Go 2.0 - Расс Кокс о дальнейшей эволюции Golang на конференции GopherCon 2017 https://blog.golang.org/toward-go2 На русском: https://habrahabr.ru/post/333346/ Грядущие изменения в Go 1.9: https://beta.golang.org/doc/go1.9 #Go #Golang
Видео с недавней конференции GopherCon 2017 с докладом Расса Кокса о будущем Go и грядущем релизе Go 2.0.

https://www.youtube.com/watch?v=0Zbh_vmAKvk

Данный доклад лёг в основу статьи Расса "На пути к Go 2.0" ("Toward Go 2.0"), которую мы публиковали в канале ранее — https://t.me/technologique/1008.


#Go
#GoLang
Technologique
Также в этом феврале в продажу поступил флагман Lenovo - Thinkpad X1 Carbon 5-го поколения, показанный ранее в январе на CES2017. https://www.youtube.com/watch?v=HV5vMhZYNKw https://www.youtube.com/watch?v=XCOHTLNMvCE http://blog.lenovo.com/en/blog/thinkpad…
Новый рекламный ролик Lenovo к 25-летию серии Thinkpad о самом лучшем топовом бизнес лэптопе всех времён - ThinkPad X1 Carbon.
Показанное в этом году на CES2017 пятое поколение модели стало ещё лучше, мощнее, удобнее в использовании и главное - работа от одного заряда батареи достигла 24-х часов, т.е. целых суток!

Очень кинематографично и художественно снято! Именно такой должна быть реклама!

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

Links:
https://t.me/technologique/914
Поддержку yield (для сопрограмм, итераторов и генераторов), сначала экспериментально, а теперь и полностью, внедрили в Rust на уровне языка и в RLS [Rust Language Server - реализация LSP сервера для Rust, для редакторов имеющих поддержку LSP (Language Server Protocol), например GNOME Builder и Visual Studio Code].

Поддержки async/await пока нет даже в планах (https://github.com/rust-lang/rust/pulls?q=async) и RFC, поэтому нет даже таких зарезервированных ключевых слов (https://doc.rust-lang.org/book/second-edition/appendix-01-keywords.html). Видимо пока оставили поддержку асинхронного кода на откуп библиотек.
Но если появилось ключевое слово yield то и реализация async/await не заставит себя долго ждать!

https://github.com/rust-lang/rust/pull/43076
https://github.com/dtolnay/syn/pull/186
https://github.com/rust-lang/rfcs/pull/2033
https://github.com/rust-lang/rust/issues/43122

https://github.com/rust-lang-nursery/rustfmt/pull/1928

https://github.com/rust-lang-nursery/rls/tree/rustfmt-yield


#Rust
Technologique
Второй трейлер киберпанк триллера "Blade Runner 2049". https://www.youtube.com/watch?v=dZOaI_Fn5o4 Трейлер о процессе съёмок фильма, с мнением актёров и съёмочной группы: https://www.youtube.com/watch?v=BBsjZgu7T2U Продолжение спустя 35 лет обещает быть…
Новый тизер "Blade Runner 2049" для ТВ (TV Spot) с интересными подробностями о фильме.

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

Плюс небольшое сюжетное отступление от фильма, "2036: Nexus Dawn", снятое Люком Скоттом (братом Ридли Скотта), с предисловием от рефиссёра Дэниса Вильнёва, о ранних событиях 2036 года, раскрывающее характер Ниандера Уоллеса (завладевшего обанкротившейся корпорацией Tyrell) и показывающее моральные возможности нового поколения репликантов Nexus 8, воссозданных им из прежних моделей Nexus 7.
Слабонервным и впечатлительным смотреть крайне не рекомендую.

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


#киберпанк
#cyberpunk
Действительно интересная интерактивная GIS система для мониторинга и прогнозирования атмосферных процессов, разработанная чешской команией InMeteo.

25-26 августа по восточному побережью США прошёл тайфун Харви (Harvey).
10-12 сентября ожидается другой тайфун - Ирма (Irma), который по прогнозам пройдёт по штату Нью-Йорк.

Пример мониторинга и моделирования атмосферных течений над Атлантическим океаном:
https://www.ventusky.com/?p=27.2;-69.6;3&l=wind&t=20170910/06

Пример метрик температуры и атмосферных потоков в Средней Азии:
https://www.ventusky.com/?p=41.2;73.5;5&l=temperature&t=20170907/06


#GIS
Фреймворк Rocket для экосистемы Rust.

Сержио Бенитез, автор фреймворка Rocket на прошедшей 18-19 августа в Портлэнде (штат Орегон, США) конференции RustConf 2017.

https://youtu.be/t_FUZ34ahBE

https://rocket.rs

https://github.com/SergioBenitez/Rocket

Плэйлист видео с конференции:
https://www.youtube.com/watch?list=PL85XCvVPmGQhUSX_QBkxb4g1-o56cCqI9&v=COrl851gMTY

Расписание Rust конференций:
https://blog.rust-lang.org/2017/07/18/conf-lineup.html


Links to the latest posts about Rust:
https://t.me/technologique/1063
https://t.me/technologique/1061


#Rust