Today, we're announcing our first hosted infrastructure product: pyx, a Python-native package registry.
We think of pyx as an optimized backend for uv: it’s a package registry, but it also solves problems that go beyond the scope of a traditional "package registry".
We are saddened by the passing of our dear friend and former speaker, Michael Foord, a contributor to the mock, unittest and Python’s standard library. Nicholas Tollervey has written a remembrance in his honor. Our condolences to his family and friends. https://t.co/UBTeuzSFNi
We’re building a new static type checker for Python, from scratch, in Rust.
From a technical perspective, it’s probably our most ambitious project yet. We’re about 800 PRs deep!
It's not just that Python is no. 1, but it's growth is still accelerating — it's also the fastest growing language!
And (together with TS) Python is miles ahead of other languages in terms of growth.
I really don't like the 30-year-old thinking behind this "data transformation" model. Back then, we thought that we were doing "data processing." We thought that the data was central, and that a program was made up of functions/components whose job was to manipulate that data as it passed through them. Data in. Other data out. We've learned a lot since the 1970's, however. I now think of a program as a collection of loosely coupled smart agents that _do_ something. They contain whatever data they need to do whatever they do, and that data does not leak out. We don't collect data to do work. We ask the agent that has the data to do the work for us. (Delegation) That way, it's trivially easy to change those agents without impacting any other agent. We can not only change the way the data is stored, but also how it is organized and represented, with minimal impact on the rest of the system.
Events are reified function parameters, like messages in actors.
Invoking function with parameters is nicer than events, so why use events?
N-way dispatch, decoupling caller from callee, durability, concurrency.
If you want to kill off events, you gotta ponder the replacement.
This is important stuff. An object is NOT a data structure with a bunch of methods tacked onto it. It’s an independent component with hard, impenetrable boundaries, the implementation of which is unknown to other objects. It is defined by what it does, not what it contains. This thinking applies to everything from a small class written in an OO language to a microservice deployed across a network.
Ladies and gentlemen. There is nothing wrong with OO. It is a necessary, but insufficient, component of a complete software architecture.
Don't get all hung up about mutable variables inside data structures. That's not what OO is about. We had that long before the word "object" was a gleam in Kay's mind.
OO is about message passing, where the sender has no intimate knowledge of the receiver; and the receiver has no knowledge at all about the sender. Control flows from sender to receiver, but source code dependencies point the opposite direction. This allows the relationships between modules to be controlled by the designers and architects, and not dictated by the flow of control.
Other necessary parts of software architecture are Structured Programming (the proper use of sequence, selection, and iteration), and Functional Programming (the proper isolation and management of mutation.)
I talk about all this at great length in my book: Functional Design.
https://t.co/R3HCubLv31
We lost a titan of programming languages, programming methodology, software engineering and hardware design. Niklaus Wirth passed away on the first of January. We mourn a pioneer, colleague, mentor and friend.
@fortuneo coincé dans l’ouverture d’un compte bancaire avec l’appli mobile : impossible de revenir en arrière à l’étape de sélection de la profession ! 2 mails envoyés au support sans réponse et attente tel >10 min :(
@dstufft@holdenweb So basically unless someone builds up a competing index or kicks you out through some dramatic intervention by the PSF you are free to decide whatever you want?
Sigfox, ancienne star française des objets connectés, placée en redressement judiciaire: la société, qui emploie quelque 300 personnes dont 250 en France, cherche un repreneur. Depuis sa création en 2009, la start-up n’a jamais gagné d’argent. https://t.co/mkE3T0AdYl
Effbot the creator of PIL and numerous python libraries passed away. That guy helped so much people, me included, early 2000 learning python.
https://t.co/zL2iULFTHP
« Il a rendu possible les rêves du XXIe siècle. Je vais taper sur les touches en caoutchouc d’un Spectrum en votre honneur. RIP » : Clive Sinclair, inventeur de la première calculatrice électronique portable, est mort jeudi, à l'âge de 81 ans. ↘ https://t.co/oK70a6EDKL