Мне очень нравится YouTube-канал Wintergatan. Вы, возможно, знаете его, но если нет, то наверняка видели 5 лет назад ролик Marble Machine — он тогда обошёл весь интернет (это НЕ тот ролик, который я приложил к посту, но тот вы без труда найдёте).
Автор канала — шведский музыкант Мартин Молин — невероятно талантливый человек. Он не только мультиинструменталист с абсолютным слухом, но ещё и обладает прекрасным инженерным чутьём и изобретательскими навыками. Последние несколько лет он собирает у себя дома вторую версию этой самой Marble Machine — электромеханического музыкального инструмента, использующего для работы тысячи металлических шариков (marbles). Процесс сборки документируется на канале, и лично мне доставляет огромное удовольствие. Как человек с музыкальной школой и инженерным дипломом за плечами, я весьма высоко оцениваю и то, что делает Мартин по творческой части, и то, что по технической. Многие его инженерные решения просты в своей гениальности, при этом очень гармоничны и элегантны — как музыка :)
Этот пример приближает меня к мысли о том, что противопоставление рациональной науки и иррационального искусства, равно как гуманитариев и технарей — не совсем верно. С какого-то расстояния и наука и искусство становятся очень похожи. Наш мир гармоничен, логичен и красив. И попытки отразить этот мир — хоть в картине, хоть в математической модели — неизбежно перенимают эти качества.
https://youtu.be/b-nU21YgXTg
#life
#Asynchronous#JavaScript
🛠
Asynchronous Programming in JavaScript
Asynchronous programming is often intimidating, it’s not how we normally consider writing code. This course shows how promises and async/await can help simplify async programming.
Asynchronous programming is often confusing when first learning JavaScript. In this course, Asynchronous Programming in JavaScript,, you’ll gain the ability to handle async programming in JavaScript. First, you’ll explore consuming promises. Next, you’ll discover creating your own promises. Finally, you’ll learn how to use async/await to handle asynchronous programming. When you’re finished with this course, you’ll have the skills and knowledge of JavaScript promises needed to handle asynchronous code.
📅 1/2023
🔗Link
-----
Main channel: @repo_science
Coupons: @freecoupons_reposcience
-----
https://medium.com/@seashorepartners/python-3-6-has-it-redefined-web-development-233165023a36
Python 3.6 — Has it redefined web development?
#Python 3.6 is the biggest ever release by Python, and it starts its enhancements from where Python 3.5 left. Released in December 2016, the world is going gaga over the new release, as the #enhancements help improve speed and performance of your website without compromising on the quality or, the way you have construed your website.
#Asynchronous Functions
https://docs.python.org/3/library/asyncio.html
#asyncio
#Asynchronous programming is more complex than classical “#sequential” programming: see the Develop with asyncio page which lists common traps and explains how to avoid them. Enable the debug mode during development to detect common issues.
https://github.com/szastupov/aiotg
aiotg
https://travis-ci.org/szastupov/aiotg.svg?branch=master
#Asynchronous#Python#API for building Telegram #bots, featuring:
Easy and declarative API
Hassle-free setup - no need for SSL certificates or static IP
Built-in support for analytics via botan.io
Automatic handling of Telegram API throttling or timeouts
http://sahandsaba.com/understanding-asyncio-node-js-python-3-4.html
I spent this summer working on a #web_platform running on #Node.js. This was the first time I worked full-time with Node.js and one thing that became quite apparent after a few weeks of working with it was that many developers, including myself at the time, lack clarify on exactly how the #asynchronous features of Node.js work, and how they are implemented at a lower level. Since I believe the only way to use a platform efficiently is to have a clear understanding of how it works, I decided to dig deeper. This curiosity also made me start playing around with implementing similar asynchronous features in other languages, in particular Python, it being my go-to language for experimenting and learning. This led me to Python 3.4's asynchronous IO library asyncio in particular, which intersected with my already existing interest in coroutines (see my post on combinatorial generation using coroutines in Python.) This post is about exploring the questions and answers that came up while I was learning more about this subject, which I hope can help clarify and answer some questions for others as well.
http://krondo.com/an-introduction-to-asynchronous-programming-and-twisted/
Twisted Introduction
This multi-part series introduces #Asynchronous Programming and the Twisted networking framework.
#Twisted is an event-driven networking engine written in #Python and licensed under the open source MIT license. Twisted runs on Python 2 and an ever growing subset also works with Python 3.
#network#learn
#signal — Set handlers for #asynchronous events
This module provides mechanisms to use signal handlers in Python.
The signal.signal() function allows to define custom handlers to be executed when a signal is received. A small number of default handlers are installed: #SIGPIPE is ignored (so write errors on pipes and sockets can be reported as ordinary Python exceptions) and #SIGINT is translated into a KeyboardInterrupt exception.
#Asyncio
https://docs.python.org/3.4/library/signal.html
https://pypi.python.org/pypi/uvloop
#uvloop is a fast, drop-in replacement of the built-in #asyncio event loop. uvloop is released under the MIT license.
uvloop and asyncio, combined with the power of async/await in Python 3.5, makes it easier than ever to write high-performance #networking code in Python.
uvloop makes asyncio fast. In fact, it is at least 2x faster than #nodejs, #gevent, as well as any other Python #asynchronous framework. The performance of uvloop-based asyncio is close to that of Go programs.
https://vorpus.org/blog/some-thoughts-on-asynchronous-api-design-in-a-post-asyncawait-world/#websocket-servers
I've recently been exploring the exciting new world of #asynchronous I/O libraries in Python 3 – specifically asyncio and curio. These two libraries make some different design choices.
Example 1: #asyncio, with callbacks
Example 2: #curio, with #async/#await
Example 3: asyncio, with async/await
#websockets