Pingora : Cloudflare new rust based proxy for edge servers https://blog.cloudflare.com/how-we-built-pingora-the-proxy-that-connects-cloudflare-to-the-internet/
How much memory your video card has : https://www.cyberciti.biz/faq/howto-find-linux-vga-video-card-ram/
Rewriting a monolith into microservices (or just into a more maintainable monolith) : the Strangler pattern https://www.redhat.com/architect/pros-and-cons-strangler-architecture-pattern
Context switching costs in sw development : https://www.infoq.com/articles/multitasking-problems/
Wasmedge runtime https://wasmedge.org/book/en/index.html
Python compiler that produces native machine code (10/100x speed gain) https://github.com/exaloop/codon
How AVIF compares to other image formats https://storage.googleapis.com/avif-comparison/index.html
Some tools for enumerating : https://github.com/OJ/gobuster, https://github.com/OWASP/Amass
Updates on the twitter affair : https://newsletter.pragmaticengineer.com/p/the-scoop-twitters-ongoing-cruel
Reverse engineering Swift physics
Pelikan cache, a C/Rust memcached type cache server made in twitter http://www.pelikan.io/
Giza 3D http://giza.fas.harvard.edu/giza3d/
Memory allocator used in Go language : https://google.github.io/tcmalloc/design.html
Slab Allocation : https://hammertux.github.io/slab-allocator
Linux virtual FS filename lookup : https://www.kernel.org/doc/html/latest/filesystems/path-lookup.html
Linux dentry cache and slabtop command
Your wordpress site can feed mastodon https://fedi.tips/the-fediverse-beyond-mastodon/#WordPress
Image Format wars :
– Google removing JXL support from chrome : https://chromium-review.googlesource.com/c/chromium/src/+/3988999
– reasons https://www.phoronix.com/news/Chrome-Dropping-JPEG-XL-Reasons
– comments : https://cloudinary.com/blog/the-case-for-jpeg-xl
– support for JXL in android : https://issuetracker.google.com/issues/259900694?pli=1
Bare metal or cloud services : https://levelup.gitconnected.com/how-we-reduced-our-annual-server-costs-by-80-from-1m-to-200k-by-moving-away-from-aws-2b98cbd21b46
New Directions in Cloud Programming : https://www.cidrdb.org/cidr2021/papers/cidr2021_paper16.pdf
I know you all know but, just a reminder :
package main
import "fmt"
func main() {
var m = 0.1
var n = 0.2
fmt.Println(m + n)
var a = 0.1
var b = 6.0
fmt.Println(a * b)
var o = 0.6
var p = 0.3
fmt.Println(o + p)
var f = 1.39
fmt.Println(f * f)
const c = 1.39
fmt.Println(c * c)
}
0.30000000000000004
0.6000000000000001
0.8999999999999999
1.9320999999999997
1.9321
Reducing Cognitive load (Golab2022 notes) in code :
- Line of Sight : 1st level, second level for error conditions
- eliminate else, return early, avoid extra nesting, wrap in function
- align the happy path
- remove misterious booleans
- Package Names : concise and clear, move on the calling side. No util/common/ packages, split
- Pure functions as much as possible
- pass with & to indicate we change the object
- Don’t lie to the reader
Interesting WASM talk from https://xeiaso.net/
Organize you software assets https://stackoverflow.blog/2022/09/19/i-spent-two-years-trying-to-do-what-backstage-does-for-free/ spotify open sourced their internal tool
VCF East 2019 Bryan Kernigham interviews Ken Thompson : how unix, pipes, and other things like grep came out just to run nroff/troff for Bell Labs patents office https://youtu.be/EY6q5dv_B-o
Engineering ladders https://github.com/jorgef/engineeringladders
Stackoverflow engineering https://hanselminutes.com/847/engineering-stack-overflow-with-roberta-arcoverde
Stackexchange 1.3 bil pageview/month : https://stackexchange.com/performance
Airbnb path from monolith to microservices https://medium.com/qe-unit/airbnbs-microservices-architecture-journey-to-quality-engineering-d5a490e6ba4f
Perche’ l’innovazione e’ cosi’ difficile in italia : qui
Questo non vale solo per la digitalizzazione, vale per l’industrializzazione e per il capitalismo. Prendo in prestito la domanda (e la risposta) di Roberto Maragliano “Perché i temi della maturità sono ancora così? Ce lo dice Camillo Olivetti (padre di Adriano) in un appunto del 1927: “L’istruzione della nostra borghesia ha un fondamento prettamente anti-industriale. Noi siamo ancora i figli dei Latini che lasciarono ai servi e ai liberti i lavori industriali e che in ben poco conto li ritennero, tanto che ci tramandarono i nomi dei più mediocri proconsoli e dei poetucoli ed istrioni che dilettarono la decadenza romana, ma non ci ricordarono neppure i nomi di quei sommi ingegneri che costruirono le strade gli acquedotti e i grandi monumenti dell’Impero Romano” (da Paolo Bricco, Adriano Olivetti, un italiano del Novecento, Rizzoli, appena uscito)”.
End to end tracing : Jaeger (opentelemetry)
Consistent Hashing used for load balancing resources :
- envoy : ring hash and maglev
- haproxy
- gRPC client load balancer
Porting python2 code to python3
Interesting point of view on “complete rewrite” vs “enhance/evolve the existing” from dropbox tech blog
T Shape Engineers
Perkeep .. “Throughout our life, we all continue to generate content …”
Peer to peer hypermedia protocol : https://ipfs.io/
Building and Testing in-kernel (Rust code to be discussed at next Linux Plumbers : https://lpc.events/event/16/page/193-proposed-microconferences and discussed here : https://arstechnica.com/gadgets/2021/03/linus-torvalds-weighs-in-on-rust-language-in-the-linux-kernel/
Linux Foundation Real Time OS : https://www.zephyrproject.org/learn-about/
Microservice patterns : https://microservices.io/patterns/index.html
Broken Window Theory applied to software ( initial statement in “The Pragmatic Programmer” by Andrew Hunt and David Thomas, 1999 if I’m not wrong) interesting review and interesting to meet another fan of simplicity and minimalism in code.
Again on avoiding accidental complexity (I wrote something on this in the past) https://searchsoftwarequality.techtarget.com/tip/How-to-prevent-accidental-complexity-in-software-development
Interesting :
Super, 10X, rockstar — these are names for developers who produce a lot of code or work in many development areas. Such developers sometimes build a reputation — and an ego. “These super developers usually make their code unnecessarily complex just because they can,” Rials said. Other team members struggle to comprehend and edit the complex code. These colleagues might even compliment the super developer about the code’s complexity, which encourages more of it. Businesses should empower junior developers to take a fresh look at code.
Bill Rials, associate director and professor at Tulane University’s School of Professional Advancement
How common the pattern above is ..
Composer, music theorist, architect, performance director and engineer https://en.wikipedia.org/wiki/Iannis_Xenakis (I love multi potential people). Known for his studies on Music generation software : author of UPIC, which inspired many other tools like Iannix, HighC, UPISketch. I was able to run HighC …
Tz0, a video game made to listen music
The first ecologist ? https://www.rachelcarson.org/
Clearness when she explains, clearness of vision, clearness of thinking : Mariana Mazzucato
https://projecteuler.net/ take some time to solve math things
The importance of Rubber Ducking : a funny tool to do it alone ..
Ethical resources : sustainable, mindful, transparent, open and much more. Here’s a list of tools (browsers, search engines, email services, web hosting, tools for team collaboration, messaging, and a lot more) for a more ethical internet.