"Metemos kubernetes, kafka, grafana, prometheus, influx, Istio, consul, glusterfs, arquitectura hexagonal (…)" y lo que pasó a continuación te sorprenderá
(basado en hechos reales)
I read an interesting research paper from Google - "Towards Modern Development of Cloud Applications"
It has everything you need for a good controversy:
- Microservices bad ❌
- Monoliths good (yay!) ✅
- New modular monolith framework
The paper starts by saying: "Microservices conflate logical and physical boundaries."
Logical boundaries = how you write code
Physical boundaries = how you deploy code
Google suggests a new framework that decouples logical and physical boundaries.
You write your application like a logical (modular) monolith, and the runtime automates the distribution and deployment.
The team identified five challenges in developing microservices:
C1) Microservices hurt performance. This is because of frequent serialization and deserialization of data and sending it across the network.
C2) Microservices hurt correctness. The larger your system, the harder it becomes to reason about the interactions between various services.
C3) Microservices are hard to manage. Each service is an independent application, binary, and deployment unit.
C4) Microservices "freeze" APIs. Once a service establishes an API, changing it without breaking any dependent services becomes hard.
C5) Microservices slow down development. Changes that impact multiple services require a carefully planned rollout to each service.
Their proposed solution can be summed up as a modular monolith with a runtime to handle deployment.
You write your application modularized into logically distinct components.
The keyword here is "logically". This also means controlling the degree of coupling between your modules (components).
They also developed a runtime to dynamically and automatically assign logical components to physical processes based on execution characteristics.
The paper is an interesting twist on the whole microservices debate.
The framework is open source, and it's called Service Weaver.
We'll see if it gains a broader adoption.
I'm keeping an eye on it, that's for sure.
P.S. What do you think about building modular monoliths?
---
P.P.S. If you liked this, consider joining The .NET Weekly - my newsletter with 40,000+ engineers that teaches you how to improve at .NET and software architecture.
Subscribe here → https://t.co/apmm3XxWUL
BLE spam but for adult toys
Using Flipper Zero or nRF Connect app, it is possible to send Bluetooth LE advertisement packets (without being paired) to adult toys in vicinity and make them all vibrate.
It is also possible to start Denial of Pleasure by continuously broadcasting the stop packet
https://t.co/NoDKchFQKg by @whid_ninja
A recipe for frustrating developers:
🚫 Require a slow VPN or slow remote virtual machine to work.
🚫 Forbid changing most things. We must accept painful, slow, difficult, outdated processes.
🚫 Provide unclear or constantly changing requirements.
🚫 Don’t trust their judgment.
🚫 Create a highly political environment.
🚫 Hire incompetent people, freeloaders, and jerks. Then, ignore the people issues that occur.
🚫 Micromanage. Try to dictate precisely how people do their job. Require management approvals for every release.
🚫 Be cheap. Use old, slow hardware and software. Be unwilling to spend money to save time.
Just reviewed a web page making 55 fetch calls totaling 570k of JSON. This one page is 1.6 MB.
Why 55 calls? Because each database table is exposed as an endpoint. The UI joins all the JSON together via the provided foreign keys.
To be clear: Don't do this.
Dear journalists, it makes absolutely no sense to write:
"PaLM 2 is trained on about 340 billion parameters. By comparison, GPT-4 is rumored to be trained on a massive dataset of 1.8 trillion parameters."
It would make more sense to write:
"PaLM 2 possesses about 340 billion parameters and is trained on a dataset of 2 billion tokens (or words). By comparison, GPT-4 is rumored to possess a massive 1.8 trillion parameters trained on untold trillions of tokens."
Parameters are coefficients inside the model that are adjusted by the training procedure. The dataset is what you train the model on. Language models are trained with tokens that are subword units (e.g. prefix, root, suffix).
Saying "trained a dataset of X billion parameters" reveals that you have absolutely no understanding of what you're talking about.
En 2004, doscientos anarcocapitalistas se mudaron a un pueblo de New Hampshire para transformarlo en su utopía: sin impuestos, sin planeamiento urbano, sin recogida de basuras...
Diez años después, el sueño terminó destruido por osos mutantes. En serio.
Está es la historia: Grafton es un pueblito tranquilo entre los bosques de Nueva Inglaterra. Bueno, *era* un pueblito tranquilo hasta que, en 2004, un grupo de "libertarians" que se habían conocido en foros de internet, (en su mayoría anarcocapitalistas) decidieron que era el lugar perfecto para poner en práctica un experimento que demostrase que las ideas de máxima libertad y mínima intervención pública eran el estado perfecto para el desarrollo del ser humano. Lo llamaron Free Town Project.
Dicho y hecho, unos 200 se mudaron a Grafton y, en poco tiempo, consiguieron reducir el ya exiguo presupuesto municipal en un 30% a costa de servicios públicos que consideraban innecesarios: mantenimiento de carreteras, planeamiento urbano o recogida de basuras.
Las cosas fueron más o menos bien durante un tiempo: se abrieron socavones que nadie reparaba, se declararon incendios que nadie apagaba y se cometió el primer asesinato en la historia del pueblo (por una disputa vecinal). Pero nada que no resolviesen una camionetas gigantes y un buen montón de armas. Supongo que es el precio que se paga por vivir en, ejem, la arcadia de la libertad absoluta.
Pero entonces llegaron los osos.
Alrededor de 2010, unos cuantos osos negros, que teóricamente no son agresivos con los humanos, comenzaron a internarse en los terrenos de los graftonitas. En realidad es posible que, al haber eliminado el planeamiento urbano, fuesen los graftonitas quienes ampliaron sus parcelas hasta el territorio de los osos, pero ese no era el verdadero problema. El verdadero problema era que la basura de los humanos huele MUY bien.
Veamos, el anarquismo (sea capitalista o no) requiere de un fuerte compromiso con la responsabilidad individual. Sin embargo, parece que muchos de estos mendas pasaban de lo de la responsabilidad y estaban allí solo por lo de no pagar impuestos. Se ve que no conocían al oso Yogui porque, como habían eliminado el servicio de recogida de basuras y hasta el mandato de meter la basura en cubos a prueba de osos (sí, eso existe), pues resulta que los osos dijeron "Mmmm, deliciosos emparedados de excursionistas". Y allá que se fueron en manada.
Claro, los restos de comida humana tienen un huevo de sal y azúcar, así que son mucho más sabrosos y MUCHO MÁS CALÓRICOS que las bayas y los salmones de los bosques, así que empezaron a llegar más y más osos, que dormían menos, hibernaban menos y estaban cada vez más espídicos y agresivos. Una suerte de osos mutantes drogadictos (pero sin cocaína).
Además, los plantígrados recibían mensajes confusos de los graftonianos, porque unos les lanzaban petardos, otros les disparaban, pero otros LES OFRECIAN TARTAS Y PASTELES.
Con la cosa un poco descontrolada, los anarcocapitalistas pidieron ayuda al Servicio de Caza y Pesca de New Hampshire, que les dijo algo así como "Chachos, este es el estado del 'Live Free or Die'. Apañaoslas vosotros".
Al final, en 2014, y con el pueblo hecho un poco una pena, los anarcocaps dieron por terminado el Free Town Project. Unos cuantos se fueron y otros se quedaron, pero entre todos acordaron que el presupuesto municipal aumentase hasta 1.5 millones de dólares: un 50% más que el que había antes de que llegaran.