home.social

Search

178 results for “max_guadagnoli”

  1. Tick tock, drip drop... Weathervane highs/lows Saturday 24 October 2026:

    High temperature 11.1°C at 18:50 hrs
    low 5.5°C at 03:50 hrs

    High humidity 93%RH at 18:50 hrs
    low 70%RH at 21:50 hrs

    Max wind gust 21.3mph at 23:31 hrs

    Daily rainfall 6.9mm

    #ouseburn #byker #newcastle #uk

  2. europesays.com/it/745516/ Austin, Libere 3: Hamilton fa sognare la Ferrari con Max vicino, poi Leclerc e le due Mercedes #austin #F1Austin #Formula1 #IT #Italia #Italy #Libere3:HamiltonFaSognareLaFerrariConMaxVicino #PoiLeclercELeDueMercedes #Sport #Sports #StatiUniti

  3. Osobní cloud pro vaši AI s plnou kontrolou

    📁🚀 ToolDurus také nabízí správce souborů pro LLM!

    💡 Funkce:

    🛠️ AI čte, tvoří a třídí soubory
    🔍 Vektorizace pro bleskové hledání
    🔒 Human-only složka
    🛡️ Izolace chatů pro max soukromí

    #ToolDurus #AI #LLM #MCP #tech #CloudStorage #czechrepublic #filemanager

  4. Hamilton completes Ferrari practice sweep in USA FP3

    Lewis Hamilton has completed a Ferrari sweep of practice at the United States Grand Prix, topping FP3 at the Circuit of the Americas.

    ➡️ speedcafe.com/f1-news-2026-uni

    #F1 #Formula1 #USGP

  5. 📺 ¿Sabes cuánto pagas al año por Netflix, Disney+, Max y Prime Video juntos? La cifra puede sorprenderte. Comparamos los precios de tres países.

    #Streaming #Netflix

    enter.co/cultura-digital/entre

  6. europesays.com/uk/1272051/ Strong winds from two storms are testing pilots skills to the max this weekend 😱 🛬 Jets flying in had to face Storm Austen on Friday, and this weekend Storm Boelo is going to cause more of the same. This footage from Manchester Airport shows skilled pilots using their skills to land in the strong conditions. #manchesterairport #stormausten #stormboelo #weather #manchestereveningnews #Britain #England #GreatBritain #Manchester #UK #UnitedKingdom

  7. @Taweret @monsterdon

    Info & trailers for the #Monsterdon poll options

    Eternal voting is the price of not watching Price

    Village of the Damned (1960)

    Scifi horror by Wolf Rilla, with George Sanders, Barabra Shelley & Michael Gwynne.

    After a strange incident, every woman in a village gives birth to a cohort of very unusual children

    The Howling III (1987)

    Comedy-horror by Philippe Mora with Barry Otto, Imogen Annesley & Max Fairchild

    Human-like marsupials appear suddenly in Australia & a sociologist who studies them falls in love with one

    Monster on the Campus (1958)

    Sci-fi horror by Jack Arnold, with Arthur Franz, Joanna Cook Moore & Whit Bissell

    A professor comes into contact with the irradiated blood of a coelacanth, which causes him to "regress" to being a primitive caveman

    Demons (1985)

    Horror by Lamberto Bava, with Urbano Barberini & Natasha Hovey

    People are trapped in a cinema infested with ravenous demons who proceed to kill & possess them one-by-one

    The Visitor (1979)

    Sci-fi horror by Giulio Paradisi, with Mel Ferrer, Glenn Ford, Lance Henriksen, Joanne Nail, John Huston, Sam Peckinpah & Shelley Winters

    A battle between cosmic forces over the soul of a young girl with telekinetic abilities

    Cellar Dweller (1988)

    Monster horror by John Carl Buechler, with Debrah Farentino, Yvonne De Carlo & Jeffrey Combs

    A comic book artist is doomed to repeat history in a most grotesque way when she unleashes a demon after drawing it

  8. Aeroméxico abre tres nuevas rutas directas a los Estados Unidos

    Aeroméxico y Delta Air Lines abrirán tres nuevas rutas directas desde Ciudad de México hacia Orange County, Fort Lauderdale y Portland a partir de enero de 2027, con vuelos diarios que ampliarán la conectividad aérea entre México y Estados Unidos.

    SN Redacción

    Aeroméxico y Delta Air Lines anunciaron el día de hoy la incorporación de tres nuevas rutas para conectar al Aeropuerto Internacional de la Ciudad de México (AICM) con el Aeropuerto John Wayn en Orange County, California (SNA); el Aeropuerto Internacional de Fort Lauderdale-Hollywood en Florida (FLL) y el Aeropuerto Internacional de Portland, Oregón (PDX), fortaleciendo la conectividad entre México y Estados Unidos como parte de su Acuerdo de Colaboración Conjunta (JCA por sus siglas en inglés).

    Operadas por Aeroméxico, las tres nuevas rutas comenzarán a partir de enero de 2027 con una frecuencia diaria, a bordo de equipos 737 MAX 8, aeronaves equipadas con un amplio sistema de entretenimiento a bordo y con capacidad para 166 pasajeros: 16 en Clase Premier, 18 en AM Plus y 132 en Cabina Turista.

    Con ello, Aeroméxico se convertirá en la única aerolínea en ofrecer vuelos directos entre la Ciudad de México y cada uno de estos tres destinos. Las nuevas rutas ampliarán la red de la alianza Aeroméxico-Delta a 27 destinos en Estados Unidos desde Ciudad de México.

    Al respecto Giancarlo Mulinelli, Vicepresidente Senior de Ventas Globales en

    Aeroméxico expresó: “Nos complace anunciar tres nuevas rutas hacia los Estados Unidos, uno de los mercados más dinámicos, estratégicos y de alta relevancia para la conectividad internacional de México. La incorporación de estos destinos acerca a nuestros pasajeros a nuevas alternativas para disfrutar de una amplia oferta turística en ambos países, al tiempo que impulsamos la apertura de nuevas oportunidades de negocio e intercambio comercial.”

    En conjunto, Orange County, Fort Lauderdale y Portland ofrecerán una amplia variedad de experiencias de placer en Estados Unidos.

    Orange County brinda acceso a más de 67 kilómetros de playas sobre la costa del Pacífico, así como a algunos de los parques temáticos más populares de Anaheim, en el sur de California. Desde la esencia artística y las pintorescas playas de Laguna Beach hasta el puerto de Newport Beach y la tradición del surf de Huntington Beach, cada una de las comunidades costeras del condado posee un carácter distintivo, mientras que sus reconocidas zonas comerciales amplían aún más el atractivo del destino.

    Por su parte, las playas de Fort Lauderdale, su extensa red de canales y su clima cálido durante todo el año la convierten en una opción ideal para disfrutar de actividades al aire libre. Además, su cercanía con Port Everglades permite a los viajeros complementar fácilmente su itinerario con una estancia en el sur de Florida antes o después de un crucero.

    Mientras que Portland combina una reconocida escena gastronómica y un carácter independiente con fácil acceso a la belleza natural del noroeste del Pacífico. Sus cervecerías artesanales y singulares vecindarios se complementan con atractivos cercanos como el río Columbia, el monte Hood y la región vinícola del valle de Willamette.

    Los itinerarios y fechas de operación de las nuevas rutas se expresan a continuación:

    Ciudad de México (MEX) – Orange County (SNA)

    Inicia 11 de enero 2027

    RUTASALIDALLEGADAFRECUENCIASCiudad de México –  Orange County09:15 h11:30 h1 vuelo diarioOrange County –  Ciudad de México13:00 h19:00 h

    Ciudad de México (MEX) – Fort Lauderdale (FLL)

    Inicia 14 de enero 2027

    RUTASALIDALLEGADAFRECUENCIASCiudad de México –  Fort Lauderdale09:35 h14:05 h1 vuelo diarioFort Lauderdale – Ciudad de México15:35 h18:20 h

    Ciudad de México (MEX) – Portland (PDX)

    Inicia 21 de enero 2027 desde México

    Inicia 22 de enero 2027 desde Portland

    RUTASALIDALLEGADAFRECUENCIASCiudad de México –  Portland16:15 h20:00 h1 vuelo diarioPortland – Ciudad de México09:30 h17:00 h

    Horarios locales. Itinerarios sujetos a cambios.

    La incorporación de Orange County, Fort Lauderdale y Portland refleja el compromiso de la alianza Aeroméxico-Delta de ofrecer a los clientes de México y Estados Unidos más opciones de viaje, una mejor conectividad y acceso a la amplia red de destinos de ambas aerolíneas.

    La venta de boletos para las tres nuevas rutas ya está disponible en los canales oficiales y sitios web de Aeroméxico y Delta. –sn–

    Aeronaves de Aeromexico

    ¡Conéctate con Sociedad Noticias! Suscríbete a nuestro canal de YouTube y activa las notificaciones, o bien, síguenos en las redes sociales: Facebook, Twitter e Instagram.

    También, te invitamos a que te sumes a nuestro canal de información en tiempo real a través de Telegram.

    #NoticiasMX #PeriodismoParaTi #PeriodismoParaTiSociedadNoticias #Cdmx #Información #InformaciónMéxico #México #Morena #noticia #noticias #NoticiasMéxico #NoticiasSociedad #SN #Sociedad #SociedadNoticias #SociedadNoticiasCom #sociedadNoticias #SociedadNoticiasCom
  9. I'll ask on irc tomorrow if there's a service or something for this, but I'm kinda tired right now and I spent a bit more time than I was wanting to spend.

    If anybody ever comes across this, #openbsd #imac , if you remove the HDD on your imac and replace it with a drive that doesn't plug into the temperature probes for the old drive, the SMC will just set the "center mid rear" fan to the max all the time.

  10. #datocurioso

    ¿Sabían que el agua regia fue la sustancia secreta que usaron unos científicos para esconder oro en las narices de los soldados nazis?

    Durante la invasión a Dinamarca en la Segunda Guerra Mundial, los oficiales alemanes tenían la orden estricta de confiscar cualquier pieza de valor, incluyendo las medallas de oro del Premio Nobel que los físicos Max von Laue y James Franck habían mandado a guardar en el laboratorio de Niels Bohr. Sacar los pesados discos metálicos del país era imposible porque los fusilarían al instante por traición, así que al químico George de Hevesy se le ocurrió una idea brillante para salvar los galardones sin levantar ninguna sospecha.

    Hevesy agarró un frasco de agua regia, una mezcla muy potente de ácido nítrico y ácido clorhídrico inventada en el siglo 8 por el alquimista Jabir ibn Al-Hayyan, y metió las medallas adentro. Ninguno de estos dos ácidos puede hacerle cosquillas al oro si trabajan por separado, pero cuando se juntan, el nítrico rompe la capa exterior del metal mientras el clorhídrico atrapa los pedacitos invisibles, logrando que el material sólido desaparezca por completo en un líquido de color naranja brillante. La Gestapo registró el laboratorio buscando los tesoros de los físicos, pero ignoraron por completo una botella polvorienta llena de líquido ámbar que estuvo guardada a la vista de todos en un estante hasta que terminó la guerra, momento en que los científicos recuperaron el oro del fondo del frasco para volver a fundir las medallas originales.

    — A. Eldritch, Periodista, Locutor, podcaster y bloger del fediverso

    Alt text via @altbot y @TeLoDescribot

    #AguaRegia #Historia #Oro #SegundaGuerraMundial #Química #PremiosNobel

  11. #Demo und #Event #Termine für die kommende Woche bis 01.11.2026
    26.10.2026, Mo
    Demos
    Baden-Württemberg
    Karlsruhe: 11:55, Bundesverfassungsgericht

    Bayern
    Nürnberg: 18:30, Hallplatz
    Obernburg: 18:30, Wendelinusplatz
    Rosenheim: 18:00, Max-Josefs-Platz, solinetz_rosenheim

    1/ #tdgr

  12. I let my Claude Ai cut out 15 words from <elou> Emily Campbell's original work, dropping to 201 from 216.

    Apple's macOS transcribed her 216 to begin with, but had sometimes said A L in title case to mean A I in uppercase, oops.

    My Claude AI feels everybody knows Mastodon counts every hotlink as 23 of its 1337 max characters per tweet.

  13. In honor of Halloween, I'll post spooky artwork every day until the joyful day has come.

    Announcement of my new site in the mid-2000s. My company name was Seven's Heaven back then.

    Modeled in 3ds Max, rendered using the finalToon renderer.

    #halloween #horror #design #artwork #sculpture #3DArt #3DModeling #illustration #illustrator #digital #art #artist #arts #arte #designer #GraphicDesign #NoAI #3D #3DRendering #DigitalArt #MastoArt #FediArt #MastodonArt #CreativeToots #ArtistsOnMastodon

  14. I checked out the #iPhone Duo today and I have to say it’s impressive engineering. The crease was imperceptible, I ran my finger over it several times and couldn’t tell there was one. You really would have to look for it. It’s very intuitive to use, but as the end of the day, it’s really just another type of iPhone. It’s a nice touch have but not a must have. For those wanting a foldable iPhone #Apple has a solution for you. For me I’ll use my iPhone 17 Pro Max for a very long time.

  15. 📻 Top 10 @acarsdrama posts (past 24h):
    📊 Total Engagement: ❤️ 21 | 🔄 37 | 📈 58 | 📊 Avg: 5.8

    1. ⏰ 15:56 UTC | ❤️ 10 | 🔄 13 | 📊 23
      📝 Air to Ground Message: WHAT DO YOU CALL NUN WHO SLEEP WALKS... ROAMING CATHOLIC Area: Louisville, KY, USA Type: Boeing 737-800A: #a6eed290ec3 F: #f6dc...
      🔗 live.acarsdrama.com/@acarsdram

    2. ⏰ 04:38 UTC | ❤️ 4 | 🔄 4 | 📊 8
      📝 Air to Ground Message: CART FULL OF SODA ITS LIKE A DREAM Area: Virginia, USA Type: Boeing 737 MAX 9A: #ad98917fa25 F: #fe9b7aee44d #acars #vdlm2
      🔗 live.acarsdrama.com/@acarsdram

    3. ⏰ 14:50 UTC | ❤️ 4 | 🔄 2 | 📊 6
      📝 Happy Saturday Sky Drama Fans!This week, thanks to our wonderful army of Sky Drama Farmers, we added/expanded coverage of the skies above:York, UKVilh...
      🔗 live.acarsdrama.com/@acarsdram

    4. ⏰ 11:38 UTC | ❤️ 1 | 🔄 5 | 📊 6
      📝 Air to Ground Message: PAX IS FINE AFTER OJ AND A SNACK. APPEARS HE PARTIED TOO HARD LAST NIGHT. NO MEDICAL EMERGENCY. Area: St. Louis, MO, USA Type: ...
      🔗 live.acarsdrama.com/@acarsdram

    5. ⏰ 21:19 UTC | ❤️ 0 | 🔄 4 | 📊 4
      📝 Air to Ground Message: NO AIR START NEW PLANE WHO THIS Area: Washington DC, USA Type: Bombardier CRJ900A: #a6d7d889e07 F: #f261dca2b33 #acars #vdlm2
      🔗 live.acarsdrama.com/@acarsdram

    6. ⏰ 12:13 UTC | ❤️ 0 | 🔄 3 | 📊 3
      📝 Air to Ground Message: NAH. JUST GONNA WING IT. PUN INTENDED. BW Area: Boston, MA, USA Type: Embraer 175 (Enhanced Wing)A: #a97493b8023 F: #f46df71d7f...
      🔗 live.acarsdrama.com/@acarsdram

    7. ⏰ 22:35 UTC | ❤️ 0 | 🔄 2 | 📊 2
      📝 Air to Ground Message: I TOLD YOU A COUPLE DAYS AGO BUT WE ALL HAD A HIGH WORKLOAD IT WAS THE CHICAGO FLT HAHA XXXXXX Area: Washington DC, USA Type: B...
      🔗 live.acarsdrama.com/@acarsdram

    8. ⏰ 19:36 UTC | ❤️ 1 | 🔄 1 | 📊 2
      📝 Air to Ground Message: NEED CLEANUP 4 THROWUP ON ROW 23+24 D E AND F Area: Seguin, TX, USA Type: Airbus A321A: #a687446cb9b F: #f4827e486c2 #acars #vd...
      🔗 live.acarsdrama.com/@acarsdram

    9. ⏰ 04:57 UTC | ❤️ 0 | 🔄 2 | 📊 2
      📝 Air to Ground Message: GOOD JOB BACK THERE Area: Austin, TX, USA Type: Airbus A321A: #a5bde974ffc F: #fa6fab0387d #acars #vdlm2
      🔗 live.acarsdrama.com/@acarsdram

    10. ⏰ 04:53 UTC | ❤️ 1 | 🔄 1 | 📊 2
      📝 Air to Ground Message: REQ A REBCOAT MEET US AT THE GATE. PAX IN 2C OUT OF SEAT TOUCHING FA LIGHTING PANEL AND VERBAL ALTERCATION WITH FA Area: Amster...
      🔗 live.acarsdrama.com/@acarsdram

    #EWR

  16. (Fotos) Choque entre bus y carro en Cartago dejó cinco heridos

    Un choque entre un bus y un carro en Cartago centro dejó cinco personas heridas. El incidente ocurrió a las 3:00 p. m. de este sábado 24 de octubre. La Cruz Roja atendió en el sitio a estos pacientes. Los cruzrojistas trasladaron a cuatro de ellos en condición urgente y uno estable al Hospital Max […]
    The post (Fotos) Choque entre bus y carro en Cartago dejó cinco heridos appeared first on CR Hoy.

    #Bus #Cartago #Choque #CruzRoja #Nacionales

    crhoy.com/fotos-choque-entre-b

  17. Doppelband-Regenpfeifer

    Allein wegen seines Namens hat dieser niedliche Vogel schon einen Beitrag verdient, finde ich. Aber auch sein Zugverhalten ist interessant.

    Der kleine Watvogel brütet ausschließlich in Neuseeland, doch nicht alle Tiere verbringen dort das ganze Jahr. Schätzungsweise 70 Prozent fliegen nach der Brutzeit fast 3.000 Kilometer über die Tasmanische See, um in Australien zu überwintern. Vor allem Vögel aus den raueren Binnenregionen der neuseeländischen Südinsel unternehmen diese Reise.

    Ein Forschungsteam des Max-Planck-Instituts für biologische Intelligenz hat nun Hinweise darauf gefunden, dass sich dieses Zugverhalten verändert.

    Die Forschenden werteten dafür Vogelbeobachtungen aus, die zwischen 2014 und 2025 auf der Citizen-Science-Plattform eBird gesammelt wurden.

    Anhand der zeitlichen Verteilung der Sichtungen schätzten sie, wann die Regenpfeifer in ihren australischen Überwinterungsgebieten eintreffen und wann sie diese wieder verlassen.

    Dabei zeigte sich eine deutliche Verschiebung. Im Durchschnitt kamen die Vögel jedes Jahr etwa vier Tage später in Australien an. Der Zeitpunkt ihrer Rückreise nach Neuseeland veränderte sich dagegen nicht erkennbar. Damit verkürzte sich die geschätzte Aufenthaltsdauer in Australien innerhalb von elf Jahren von etwa 173 auf 129 Tage.

    Die Forschenden vermuten einen Zusammenhang mit dem Klimawandel.

    Seit Jahrzehnten verschiebt sich die Westwindzone rund um die Antarktis zunehmend nach Süden. Für Neuseeland bedeutet das insbesondere in den südlichen Regionen häufiger ruhigeres und milderes Wetter. Tatsächlich trafen die Regenpfeifer vor allen Dingen in Jahren mit entsprechenden Wetterbedingungen später in Australien ein.

    Eine lange Wanderung lohnt sich für Zugvögel vor allem dann, wenn die Vorteile die Kosten und Risiken überwiegen. Werden die Winter in Neuseeland milder, könnte es für immer mehr Doppelband-Regenpfeifer günstiger sein, dort zu bleiben.

    So scheint es sogar möglich, dass die Wanderung nach Australien langfristig weitgehend verschwindet. Ob einzelne Vögel ihr Verhalten verändern oder sich die Zusammensetzung der Population verschiebt, untersucht ein Forschungsteam inzwischen mithilfe individuell markierter Tiere.

    Auch bei unseren heimischen Zugvögeln verändert der Klimawandel längst das Verhalten. Was wir hier beobachten, geschieht auch auf anderen Kontinenten. Weltweit verändern sich mit den klimatischen Bedingungen die Wanderungen vieler Tierarten, die sich über lange Zeiträume entwickelt haben.

    Quelle Jarayseh et al. (2026), Ibis
    « A rapid shift in migration schedule of an Austral shorebird is linked to a changing southern climate oscillation »

    doi.org/10.1111/ibi.70128

    #vogel #ornithology #citizenscience #klima #biologie #birdphotography #australien #wissenschaft #wisskomm #anysci

  18. After an epic #AEWWrestleDream clash, can FTR (@CashwheelerFTR/Dax Harwood) use their NC home court advantage to even things up, or will MCMG (@[email protected]/@[email protected]) keep pulling ahead in this Best of 5? Watch #AEWCollision TONIGHT LIVE at 8/7c on TNT & HBO Max!

  19. #F1 | ¡LOS LATINOS SUFRIERON EN AUSTIN! ❌🇺🇸

    Gabriel Bortoleto 🇧🇷 terminó P13, Franco Colapinto 🇦🇷 P15 y Checo Pérez 🇲🇽 P21 en la tercera práctica libre del GP de Austin.

    🔥 Lewis Hamilton marcó el mejor tiempo de la sesión, seguido por Max Verstappen y Charles Leclerc.

    📸 F1

    #f1
  20. Man, your head is haunted; you have wheels in your head! You imagine great things, and depict to yourself a whole world of gods that has an existence for you, a spirit-realm to which you suppose yourself to be called, an ideal that beckons to you. You have a fixed idea!
    -- Max Stirner

    #anarchism #quote #bot

  21. I keep my drafts as Markdown files with a short front matter block at the top. It holds the title, a one-line description that ends up as the meta description, and a few tags. When a piece is ready, the static site generator or the blogging platform reads those fields and builds the page from them.

    The trouble is that front matter is the part I look at least. I spend hours on the body and about ten seconds on the block above it. So the mistakes pile up there: a title that grew while I was editing and is now far too long for a search result, a description I meant to write later, a tags line I left empty.

    None of this is hard to fix. It's just easy to miss. So I wrote a short script that reads every draft in a folder and tells me what's missing or too long.

    What it checks


    I kept the rules deliberately small:

    • Every file starts with a front matter block between two --- lines.
    • title, description and tags are present and not empty.
    • The title is 60 characters or fewer.
    • The description is 155 characters or fewer.

    The two length limits are rough guides, not official numbers. Search engines cut titles and snippets by display width, not by a fixed character count, so treat them as a "probably too long" warning. Change them to whatever your platform or site uses.

    A draft that passes looks like this:

    ---
    title: How I name my draft files
    description: A simple naming pattern that keeps a folder of drafts easy to search.
    tags: [writing, workflow]
    ---
    Body text starts here.

    The script


    It uses only the standard library, so there's nothing to install.

    #!/usr/bin/env python3
    """Flag Markdown drafts with missing or overlong front matter fields."""
    import sys
    from pathlib import Path

    REQUIRED = ["title", "description", "tags"]
    MAX_TITLE = 60
    MAX_DESCRIPTION = 155

    def read_front_matter(text):
    lines = text.splitlines()
    if not lines or lines[0].strip() != "---":
    return None
    fields = {}
    for line in lines[1:]:
    if line.strip() == "---":
    return fields
    if ":" in line:
    key, value = line.split(":", 1)
    fields[key.strip()] = value.strip().strip('"').strip("'")
    return None # no closing ---

    def check(path):
    problems =
    [] fields = read_front_matter(path.read_text(encoding="utf-8"))
    if fields is None:
    return ["no front matter block"]
    for key in REQUIRED:
    if not fields.get(key):
    problems.append(f"missing {key}")
    title = fields.get("title", "")
    if len(title) > MAX_TITLE:
    problems.append(f"title is {len(title)} characters (max {MAX_TITLE})")
    description = fields.get("description", "")
    if len(description) > MAX_DESCRIPTION:
    problems.append(
    f"description is {len(description)} characters (max {MAX_DESCRIPTION})"
    )
    return problems

    def main():
    folder = Path(sys.argv[1] if len(sys.argv) > 1 else ".")
    found = 0
    for path in sorted(folder.rglob("*.md")):
    for problem in check(path):
    print(f"{path}: {problem}")
    found += 1
    sys.exit(1 if found else 0)

    if __name__ == "__main__":
    main()

    read_front_matter returns None when there's no opening --- or no closing one, and a dictionary of fields otherwise. check turns that into a list of plain-language problems. main walks the folder recursively with rglob, prints one line per problem, and exits with status 1 if anything was found.

    Running it


    Save it as check_front_matter.py and point it at your drafts folder:

    python3 check_front_matter.py drafts

    With one good file, one file with a long title and no description, and one file without front matter, the output looks like this:

    drafts/long-title.md: missing description
    drafts/long-title.md: title is 83 characters (max 60)
    drafts/no-front-matter.md: no front matter block

    Each line starts with the file path, so in most editors' terminals you can click straight through to the file. When everything passes, it prints nothing and exits with 0.

    Making it hard to forget


    If your drafts live in a git repository, the exit code means you can run the check before every commit. Put this in .git/hooks/pre-commit and make it executable with chmod +x .git/hooks/pre-commit:

    #!/bin/sh
    python3 check_front_matter.py drafts

    If the script finds a problem, git stops the commit and shows the list. When I really do want to commit a half-finished draft, git commit --no-verify skips the hook for that one commit.

    I don't always want that level of strictness. On some projects I just run the script by hand before I move a file into the "ready" pile, and that's enough.

    What it doesn't do


    This is not a real YAML parser. It reads simple key: value lines, one per field. If you write tags as a block list:

    tags:
    - writing
    - workflow

    the script sees an empty tags: line and reports it as missing. If that's how you write front matter, either switch to the inline [writing, workflow] style or install PyYAML and use yaml.safe_load on the block instead of the loop.

    It also can't tell whether a description is any good. It only knows that one exists and isn't too long. Writing a description that makes someone want to read the piece is still my job. The script just makes sure I don't publish without one.

    That's the part I like about small checks like this. They take the boring, forgettable items off my mind, so the attention I have left goes to the writing itself.#python #markdown #writing #productivity #software #coding #development #engineering #inclusive #community
    A small Python check for front matter in a folder of Markdown drafts

  22. Coldenhovense Beek in de herfst

    � Locatie: Ede (Gelderland), nabij Eerbeek/Loenen op de Veluwe. 🌲 Landschap: Stroomt door bos- en heidegebieden (Zilvense Heide, Loenermark).

    💧 Loop & Ontstaan:

    Bovenloop van de Eerbeekse Beek, grotendeels gegraven (sprengenbeek).
    Gevoed door sprengensystemen (o.a. Gravinnebeek).
    🌿 Ecologie & Beheer:

    Natura 2000-gebied (Veluwezoom).
    Herstelprojecten (2013–2015) Waterschap Vallei en Veluwe voor waterkwaliteit en ecologie (beekprik, ijsvogel).
    🏛 Cultuurhistorie:

    Langs de beek stonden Huize Coldenhove (verd.), Huis te Eerbeek en Huis Voorstonden.
    🥾 Wandelroutes:

    10 km: Landal Coldenhove → Zilvense Heide → Eerbeekse Beek.
    7 km: Coldenhove → Gravinnebeek → terug.
    Startpunten: Camping Coldenhove, Boshoffweg Zuid (Eerbeek).
    bron: euqai.chat
    click4 more info: euria.infomaniak.com/shared/01
    , , , , herfst, on1 2027, photo raw max, fz300/330

  23. Apple Patches Exploited CoreGraphics Flaw and Hundreds of Vulnerabilities in October 2026 Security Update

    On October 26, 2026, Apple released security updates across iOS, iPadOS, macOS, tvOS, watchOS, visionOS and Safari, patching several hundred vulnerabilities concentrated in WebKit, the kernel, ImageIO and CoreStorage. The fixes include WebKit code-execution and sandbox-escape flaws, a Remote Management remote code execution bug, and many privilege-escalation issues, plus the most urgent one: CVE-2026-86950 in CoreGraphics, which was exploited in targeted attacks and makes updating to iOS 18.7.11 critical for owners of older iPhones.

    **If you use any Apple device (iPhone, iPad, Mac, Apple Watch, Apple TV or Vision Pro), update it now. The current versions are iOS/iPadOS 27.2, 26.7.2 or 18.7.11, macOS Golden Gate 27.2, Tahoe 26.7.2 or Sequoia 15.8.2, tvOS/watchOS/visionOS 27.2, and Safari 27.2. If you still use an iPhone XS, XS Max or XR, install iOS 18.7.11 first: it fixes a flaw that has been exploited in targeted attacks. Until you've updated, be extra careful about unfamiliar websites, files, images and fonts from strangers, and connecting to unknown file-sharing or Screen Sharing servers.**
    #cybersecurity #infosec #advisory #databreach
    beyondmachines.net/event_detai

  24. Quick Answer


    A fleet tracking backend should treat every GPS ping as untrusted input. Sort pings by device time, drop duplicates and impossible values, reject poor fixes and teleport jumps, hold position while a vehicle is parked, and add hysteresis to geofences. Keep the raw stream, store the cleaned stream beside it, and snap to roads only after cleaning. The Python below was tested on synthetic data only, not on live device feeds.

    Why does a fleet app receive bad GPS data?


    Some of the reasons are written down in vendor documentation. Samsara's vehicle locations documentation says a device reports about every 5 seconds while the vehicle is on and about once an hour while it is off. It also says identical consecutive records can occur, and that GPS interference in a garage can suppress updates even when the vehicle shows as on. The same page says the device keeps a rolling 30 days of location data, so after a connection is restored the buffered points become available through the API.

    Read together, those statements describe four problems a backend must expect: duplicate rows, silent gaps, a misleading "on" status, and late data that arrives out of order. This is one vendor's documentation. Other vendors will behave differently, so read the equivalent page for the device you actually use.

    What should the ingest layer check before it stores a ping?


    My suggestion (author judgement, not a standard) is six cheap checks, run in this order:

    1. Sort by device timestamp, so late arrivals land in the right place.
    2. Drop exact duplicates (same time and position).
    3. Reject impossible values, including out-of-range coordinates and the 0,0 position that some receivers report before they have a fix.
    4. Reject poor fixes, where the reported accuracy is worse than a threshold.
    5. Reject teleport jumps, where the implied speed between two kept points is not plausible for a vehicle.
    6. Hold position while parked, so receiver jitter does not draw a wandering trail.

    The thresholds in the code (50 m accuracy, 45 m/s, 10 m jitter) are starting values I chose for the example. Tune them against your own vehicles and devices.

    from dataclasses import dataclass
    from math import radians, sin, cos, asin, sqrt

    @dataclass(frozen=True)
    class Ping:
    device: str
    ts: int # epoch seconds, device clock
    lat: float
    lon: float
    acc_m: float = 10 # reported horizontal accuracy in metres

    def haversine_m(a, b):
    r = 6371000.0
    p1, p2 = radians(a.lat), radians(b.lat)
    dp, dl = p2 - p1, radians(b.lon - a.lon)
    h = sin(dp / 2) ** 2 + cos(p1) * cos(p2) * sin(dl / 2) ** 2
    return 2 * r * asin(sqrt(h))

    def clean(pings, max_acc_m=50, max_speed_ms=45, jitter_m=10):
    """Return a cleaned, time-ordered list for ONE device."""
    seen, ordered = set(),
    [] for p in sorted(pings, key=lambda p: p.ts): # 1. fix ordering
    key = (p.ts, round(p.lat, 6), round(p.lon, 6))
    if key in seen: # 2. drop duplicates
    continue
    seen.add(key)
    if not (-90 <= p.lat <= 90 and -180 <= p.lon <= 180): # 3. impossible values
    continue
    if p.lat == 0 and p.lon == 0: # "null island" fix
    continue
    if p.acc_m > max_acc_m: # 4. poor fix
    continue
    ordered.append(p)

    out =
    [] for p in ordered:
    if out:
    prev, dt = out[-1], p.ts - out[-1].ts
    if dt <= 0:
    continue
    d = haversine_m(prev, p)
    if d / dt > max_speed_ms: # 5. teleport jump
    continue
    if d < max(jitter_m, p.acc_m): # 6. parked jitter
    p = Ping(p.device, p.ts, prev.lat, prev.lon, p.acc_m)
    out.append(p)
    return out

    Testing status: I ran six unit tests with Python 3.13 on synthetic points: out-of-order input, duplicates, 0,0 and poor-accuracy points, a teleport jump, parked jitter, and geofence flapping. All six passed. I have not run this against real device feeds, so treat it as a teaching sample and not production code.

    How do you stop geofence alerts from flapping?


    A vehicle parked near the edge of a depot boundary can cross it back and forth because of receiver noise, and each crossing can fire an alert. Two techniques help. Use hysteresis, which means the vehicle enters a zone inside radius r but only exits beyond r plus a buffer. Then require several consecutive pings before the state changes.

    class Geofence:
    """Circle fence with hysteresis: enter inside r, exit only outside r + buffer."""
    def __init__(self, lat, lon, r_m, buffer_m=30, confirm=2):
    self.c = Ping("fence", 0, lat, lon)
    self.r, self.buf, self.confirm = r_m, buffer_m, confirm
    self.inside, self._streak = False, 0

    def update(self, p):
    d = haversine_m(self.c, p)
    want_inside = d <= self.r if not self.inside else d <= self.r + self.buf
    if want_inside == self.inside:
    self._streak = 0
    return None
    self._streak += 1
    if self._streak >= self.confirm:
    self.inside, self._streak = want_inside, 0
    return "enter" if self.inside else "exit"
    return None

    In the test, a sequence of distances of 150, 90, 95, 110, 98, 105, 160 and 170 metres from a 100 m fence produced exactly one enter event and one exit event. Two of those readings (110 m and 105 m) were outside the 100 m radius while the vehicle was still inside the zone, and the buffer absorbed both.

    Should you snap points to roads?


    Map matching can clean what the filters above leave behind, but it has its own rules. Google's Roads API documentation says one snap-to-roads request accepts up to 100 GPS points and returns points snapped to the most likely road. It recommends keeping consecutive points at or below about 300 metres apart, and offers an optional interpolate setting that adds points following the road shape. Interpolated points have no original index, so the response can contain more points than the request.

    OSRM's Match service takes optional timestamps, which must increase, and optional per-point radiuses that default to 5 metres. The documentation suggests using the device's reported accuracy. It returns null for points dropped as outliers and a confidence score from 0 to 1 for each matching. The OSRM page I read was for version 5.5.1, so check the documentation for the version you run.

    My judgement: snap after cleaning, keep the raw point and the snapped point side by side, and treat a low confidence score as a flag for review rather than an error.

    How do you find vehicles near a depot quickly?


    PostGIS documents ST_DWithin as a cheap filter that can use a spatial index, while ST_Distance computes exact distances and cannot use indexes. For geography values the distance is in metres. The common pattern is to filter with ST_DWithin first and sort with ST_Distance on what remains.

    SELECT v.id, ST_Distance(v.last_position, d.location) AS metres
    FROM vehicles v
    JOIN depots d ON d.id = 7
    WHERE ST_DWithin(v.last_position, d.location, 2000)
    ORDER BY metres;

    This query is untested. It assumes both columns are geography with a spatial index on last_position, so check the types and the index in your own schema.

    What should the fleet database store?


    In my view three tables cover most needs: an append-only table of raw pings, a table of cleaned pings that maps and reports read, and a small table holding the last known position per vehicle for proximity queries. Keeping the raw data lets you re-run a better filter later and settle disputes about a route.

    Which are the top five fleet management app development companies?


    Teams that prefer to buy this work instead of building it can compare the five partners below. The list is not a ranking of quality.

    Figures below come from each company's own website and are self-reported, so confirm them directly before signing anything.

    1. Dev Technosys


    Dev Technosys is a fleet management app development company with 250+ professionals that does business globally. Its fleet page describes connecting GPS tracking, fuel monitoring and dispatching systems, then automating assignments, maintenance alerts and journey updates. The company builds its own platforms and connects them to existing business systems through APIs instead of configuring third-party ERP products. It states an 89% project success rate and says most new business comes through client referrals; both claims are self-reported. That scope fits teams that already own tracking hardware and need workflow software around it.

    2. N-iX


    N-iX lists fleet management software development as a dedicated service. Its page covers telematics and predictive-maintenance integration, ELD and IoT sensor integration, hours-of-service compliance modules, route-planning and dispatch engines, and mobile fleet apps. A case study describes a GPS-tracked in-vehicle Linux gateway, a Google Cloud IoT platform and an Android driver app for a telematics client, in a partnership that began in February 2021. The site states over 2,400 software engineers, and the case study gives no fleet outcome figures. N-iX suits teams that need hardware-to-cloud telematics work from one vendor.

    3. Intellias


    Two fleet case studies sit on the Intellias site. In the first, a Florida telematics client has worked with the company since 2018 on a platform with real-time GPS mapping, idle-time tracking and diagnostic trouble code reporting, and the page says it handles 100,000+ vehicles with data points every 30 seconds. The second is a native iOS, Android and Angular truck-tracking front end for a large car maker, tested on 1,000 vehicles and offered in more than 20 countries. Intellias suits teams that expect high vehicle counts and need a backend built for that volume.

    4. Altoros


    Altoros says it was founded in 2001 and lists GPS tracking software for car rental, trucking and delivery, fleet management with vehicle tracking and dispatch, and IoT platforms for fleets. Its logistics page cites a transport management case serving 100+ companies and processing 10,000+ automated orders a day, with operator workload cut by up to 70%, plus a truck-parking app prototype covering 10,000+ locations. All of these figures are self-reported, and the page names no ISO certification, so ask for evidence. Altoros suits teams that want an IoT-heavy build from a long-established vendor.

    5. STX Next


    Describing itself as a Python-native team with more than 20 years of experience, STX Next lists fleet management systems, route optimization, electronic proof of delivery, predictive maintenance and IoT integration on its transport and logistics page. Named case studies include Sendcloud (a carrier integration proof of concept), GS1 Polska (a location-data app for drivers) and T Dispatch (dispatch software). The page mentions Python, IoT, RFID, AWS, Azure and Snowflake and lists delivery centers in Poznan and Merida, but it states no headcount. STX Next suits teams that prefer a Python backend.

    FAQ


    How often should a fleet device send a position?

    Samsara's documentation describes about every 5 seconds while a vehicle is on and about hourly while it is off. Your hardware and data plan set the real figure.

    Should raw pings be deleted after cleaning?

    In my view, no. Keep them for a retention period your own policy allows, so you can re-run improved filters later.

    Do I need map matching in every fleet app?

    No. Many dashboards work with cleaned points. Matching helps most when you report distance driven on roads.

    What accuracy threshold should I use?

    The example uses 50 m as a starting value. Tune it per vehicle type and device.

    Can I use this code in production?

    It is a teaching sample tested on synthetic data. Add tests built from real device samples first.#python #backend #iot #architecture #software #coding #development #engineering #inclusive #community
    Designing a Fleet Tracking Backend That Handles Bad GPS Data

  25. BeeLadybug, my open-source debug overlay, has always shown what's happening in real time: FPS, logs, !important, z-index traps, clicks being swallowed by the wrong element.

    The problem is the overlay. Make it big and it covers the game or the page you're debugging. Make it small, the way it is now, and you're squinting at a phone-sized box on the left of the screen while the rows scroll past.

    One evening I gave up and asked myself a simple question: why can't I just press a key and get everything on one page, to read calmly?

    One key, one file


    Version 0.6.1 adds exportReport(). Press F8, or the EXPORT button, and you get report-YYYYMMDD-HHMM.html:

    • a summary at the top: errors, warnings, ok
    • the Core log with sim time and frame
    • series: FPS min / avg / max, nodes, mutations
    • one section per adapter: Canvas hitboxes and collisions, DOM box model and clipped nodes, CSS (!important, stacking contexts, intercepted clicks, overflow), long tasks, slow resources, Python metrics

    It's plain HTML with a dark theme. Ctrl+P turns it into a PDF. You can also get json (for CI or an AI agent) or csv (for a spreadsheet).

    import { BeeLadybugCore, exportReport } from 'bee-ladybug';

    const bee = new BeeLadybugCore();
    // ...attach adapters...
    exportReport(bee, { format: 'html' }); // downloads the file

    In headless mode (ui: false) nothing is downloaded. The function just returns the data, so it works in Node and in bots too.

    How it fits a "blind" Core


    The Core still knows nothing about Canvas, the DOM or Python. Each adapter can now register an optional snapshot() hook that returns rows like { severity, selector, rule, value, source }. The exporter asks every registered adapter for its snapshot, and if one throws, it becomes a single warn row while the rest of the report still renders. A new adapter only has to implement snapshot() to show up in the report.

    Then I pointed it at real sites


    First, my own games portal. It found:

    • my .entry-content creating a stacking context that traps the z-index of the game grid
    • a container blocking clicks on three elements
    • an average of 33 FPS, which explains a lot

    Then, for fun, a big professional games portal. 25 errors, 51 warnings 😄 To be fair, most of them are intentional tricks: negative margins so a carousel can bleed to the edges, and content clipped on purpose inside cards. Their site works great. It still averaged ~52 FPS with 3× my DOM nodes, which taught me more than the error count did.

    …and it found bugs in itself


    The best part of testing on real pages: the report exposed its own weak spots.

    • an icon from the WordPress admin bar slipped through the filter
    • the same row repeated dozens of times instead of being grouped as ×N
    • the summary said "0 errors" while the log had four of them

    All three are being fixed. A debugger that finds bugs in itself on its first real run felt like a good sign.

    Try it


    Install it in your project:

    npm i bee-ladybug

    Or try it right now without installing: open any page, press F12 and paste this in the console, then press F8 for the report.

    import('https://cdn.jsdelivr.net/npm/[email protected]/src/index.js')
    .then(({ BeeLadybugCore, WebDOMAdapter, CSSAdapter }) => {
    const bee = new BeeLadybugCore();
    new WebDOMAdapter(bee, { root: document.body }).attach();
    new CSSAdapter(bee).attach();
    window.bee = bee;
    });

    Feedback welcome, especially from people debugging Canvas games and DOM-heavy pages.#javascript #webdev #debugging #opensource #software #coding #development #engineering #inclusive #community
    I got tired of reading CSS bugs in a tiny overlay, so I made my debugger print a report

  26. Convex Finance (CVX) — Protocol Research Report


    By zkscout — Solidity security auditor. Public methodology: aaannvv.github.io/evm-audit-notes. Data: DefiLlama (2026-10-26).

    1. Protocol Overview


    Convex Finance is a yield-aggregation meta-layer built on top of Curve. Instead of staking Curve LP tokens directly (where rewards depend on each user's veCRV boost), depositors hand LP tokens to Convex, which permanently locks the underlying CRV into its own veCRV position and passes boosted rewards back in simplified form: boosted CRV plus CVX emissions, claimable with no lock. Convex also wraps cvxCRV so CRV stakers retain exit liquidity. Launched May 2021, it became the central instrument of the "Curve Wars" — protocols bid for Convex's veCRV vote weight to direct CRV emissions toward their own pools.

    2. TVL Metrics (on-chain, DefiLlama)


    • Ethereum (LP pools): $555.0M
    • Ethereum staking (cvxCRV): $124.4M
    • Fraxtal: $6.1M, Arbitrum: $1.1M, Polygon: $0.2M
    • Total: $811.3M

    The trajectory matters more than the level: Convex peaked at $21.2B in January 2022 and today runs at 3.8% of peak. The decline tracks the general DeFi bear, Curve-specific stress events, and structural share loss to newer venues.

    3. CVX Tokenomics


    • Supply: 100M max, majority already distributed.
    • vlCVX: staking + voting requires a 16-week lock; vlCVX directs Convex's veCRV gauge votes and earns platform revenue share.
    • Liquidity: cvxCRV and cvxCVX give exit-liquidity workarounds at a floating market discount.
    • Bribe market: Votium aggregates bribes for gauge weight; even at reduced TVL, Convex retains a historically dominant veCRV share.
    • Fees: 16% performance fee on CRV earned via staking.


    4. Risk Factors


    1. Single-protocol dependency: revenue is a derivative of Curve's emissions and pool health.
    2. Contract risk: read-only reentrancy in cvxCRV was disclosed and patched (2022); the platform depends on Curve gauge and Vyper integrity (2023 incident).
    3. Lock illiquidity: vlCVX's 16-week lock is absolute; wrappers mitigate only at discount.
    4. Governance concentration: large lockers and Votium coordinators control allocation.
    5. Structural decline: 96% TVL drawdown from peak with continued share loss to Aura and non-Curve venues.


    5. Competitive Positioning


    • vs direct Curve staking: Convex wins for boost without lock.
    • vs Aura Finance (Balancer analogue): Aura out-executed growth post-2023; Convex retains the deeper Curve integration.
    • vs Morpho/Ethena-era yield: fresher narratives compete for the marginal dollar.

    Bottom line: a cash-flowing, declining-dominance incumbent. For LPs already in Curve pools it remains the rational boost wrapper. As a token, CVX is levered Curve beta with lock friction — not a standalone growth position.#blockchain #crypto #ethereum #web3 #software #coding #development #engineering #inclusive #community
    Convex Finance (CVX) — Protocol Research Report: The Declining Curve Wars Incumbent

  27. Tokens Over Hires

    In the middle of September I ran ccusage against every Claude Code session on my laptop since May. It walks the local logs, counts the tokens, and prices them at what the API would have charged. I expected a big number. What came back was about twenty billion tokens and just under fourteen thousand dollars, across every project I’d touched in four months, with most of it going to Pepper, which is now open for signups, so go check it out. Nineteen billion of those tokens were cached reads.

    I sat with that for a minute. Fourteen thousand dollars is real money. At my current pace it works out to roughly thirty thousand a year. I could triple it and spend a hundred thousand dollars a year on tokens, and that still isn’t one engineer. In exchange, Chris and I have shipped more code than I’ve shipped in any stretch of my career. I wrote in September that the two of us merged 657 pull requests in our first thirty days with a budget instead of a platform team. When I put the ccusage number in those terms on a panel, it came to about a dollar fifty a pull request.

    That number is what my laptop would have cost at API prices, and it isn’t what we actually pay. Here’s the whole bill for both of us. Two Codex subscriptions, one each, are $200 a month. Anthropic is $550 a month: a Max plan for me and Chris, plus two Vycari team seats, one for Chris and one that runs our automation. I have an Ollama subscription at $200 a year. Greptile is about $1,500 a month. All in, that’s a little under $2,300 a month, or about $28,000 a year, for both founders and every pipeline we run. It still isn’t one engineer.

    The obvious conclusion is the one a friend reached when he heard the figure: if code is that cheap, just get more tokens. I thought so too, for about a day. Then I looked at what was actually slowing us down, and the token budget wasn’t on the list.

    The Constraint Is Attention

    Every agent I run needs things from me that tokens can’t buy. It needs a plan approved before it starts. It needs its pull request read when it finishes. When it hits something it can’t decide, it escalates, and somebody has to be there to answer. None of those steps is expensive on its own. The problem is what happens when I run enough agents that the steps overlap.

    When I run too many agents, the cost goes up a little and the risk goes up a lot. The biggest thing that’s slipped past us so far was how we managed database connections. It got out of hand, a little at a time, while my attention was on other pull requests, and eventually it caused an outage. Chris had to roll forward while I was out of town, and I spent the following week building a proper database abstraction layer. He put it more bluntly than I would have: the thing that kills us is splitting our attention. That’s when stuff slips through.

    When people ask how we decide what to spend, I give them the order. Optimize for human time, because that’s the scarcest thing we have. Then money, because that’s the second scarcest. Then everything around agent time. “I can waste agent time all day. I don’t care.”

    So the number that limits us is how many agents one person can supervise well at the same time. I don’t have a precise figure for that ceiling. I know I’ve been over it, because I can feel the difference between a day when every pull request got a real read and a day when I was skimming to keep up.

    Another friend told me recently about engineers at his company running up bills in the thousands to build simple internal copies of SaaS tools. His reluctant guess was that they just aren’t as good at using agents yet, and that it’s a skill people have to develop. I don’t know what they’re doing differently. It doesn’t sound like token maxxing, which I’ve never really understood either. I’d love to sit with engineers who run up giant bills and just watch. My guess is they’re using the agents inefficiently, and that what’s missing is supervision, which a bigger budget won’t fix.

    Building for More Agents per Person

    Almost everything I’ve built since the summer has been an attempt to raise that ceiling, and almost none of it has been about spending less.

    The pipeline I described in The Agent That Never Merges is the first piece. Agents open pull requests continuously and never merge them, which means the supervision cost per pull request is bounded at one careful read. The pipeline absorbs the rest: triage, planning, the first round of review comments, the retries. I only see the work once it’s in a state worth my attention.

    The second piece is where the work lives. I wrote about pulling Pepper apart into small, bounded repositories to keep CI fast and give agents less to load. It mattered just as much for my attention. An agent working in a repository with one job produces a pull request I can evaluate in one sitting.

    We’re up to fourteen repositories now. Last week I moved our iOS app out of the monorepo into its own. That was 150,000 lines of code, and nobody noticed except Chris, who had to wait a day to land his next batch of iOS changes. Agents make refactors that size easy. Having the CLI and the iOS client in their own repositories also forces us to keep good API definitions between the server and its clients.

    The third piece is delegation inside the agent layer itself. I run two Claude Opus 5.5 orchestrators on medium effort. One is the UTL, for uber tech lead, and its job is to spawn subagents that build features. The other is what I call the focused worker, and its job is working with me. It catches the manual tasks that come out of the UTL’s pull requests and keeps them in a ledger. Then we work through them together: systems changes, bringing up new platforms, migrating data, anything that needs my level of access and oversight. Everything else goes to a subagent under the UTL, Opus for design docs and code reviews, Sonnet for implementing a feature from a design doc. Every one of these agents can consult a model a tier above it as an advisor, and they all share a wiki for notes.

    Anthropic is now advertising much the same pattern with Claude Projects, and I’m happy to see others arriving at the same answer. Chris has been building a loop that babysits open pull requests through review until they score well enough to be worth a human’s time. Each layer like that turns a job I used to do by hand into something I check. The ceiling goes up one delegated task at a time.

    The Token Budget Was the Easy Problem

    There was a week in September when the meter really was the constraint. We ran through our free credits and paid about $120 in overage. Then AutoDev ate the whole Vycari quota, and I did server cleanup by hand because I couldn’t do anything else.

    Most of that was self-inflicted. I’d started with Fable as the orchestrator, with no cap on context, and burned a week’s quota in three days. The setup above fixed it. The orchestrators run on medium effort, and the cheaper model does the implementing. Opus answers the reviews because Sonnet is too literal about them, and a literal reading turns two review cycles into twelve. Every agent auto-compacts at 200K tokens, because Anthropic charges more for context past that point. With that setup, and the work spread across parallel sessions, I find it hard to spend all of my quota. My goal now is to hit 99% of it every week just before it resets. I keep a list of research projects, and if I have quota left 24 hours before the reset, I spin one up. That isn’t the same as maxing out tokens. I’m not trying to use as many as possible. I’m trying to use all the ones I’ve already paid for.

    There’s also a second account on the same machine. Claude Code reads a CLAUDE_CONFIG_DIR environment variable, so two shells with two config directories give you two accounts side by side. The second one runs the AutoDev and code review pipelines, and those use up its quota every week, so it isn’t a fallback for my own sessions. When I do run short, I supplement with other labs’ plans. Every one of those fixes took an afternoon or less. None of the supervision problems above has had an afternoon fix.

    Where the Money Actually Goes

    While I had the numbers in front of me, I looked at where development spend actually lands, because it isn’t where I expected either.

    Development tokens currently run about ten times what the product itself consumes, even with real people using it. Building the thing costs more than running it. That won’t last. The feedback from our private beta has been really good, and we now open Pepper to a limited number of new signups every day, so product usage is rising quickly.

    Most of what we actually pay goes to code review. Subscriptions are the cheap way to buy tokens if you’re willing to hit limits, so they’re the smaller line. Greptile reviews every pull request we open, and at about $1,500 a month it’s our biggest single expense. We both think it’s worth it, because it’s the layer that lets the never-merge pipeline run without me reading every first draft.

    In October I tested that. I spent a few days building a cheaper reviewer to replace it. I came out the other side saying, “I think we should just pay for it because I can’t do it cheaper.” What I could change was how often we call it. The agents kept asking for a re-review before they’d fixed anything. Because every repository shares a common dev environment, the fix went in once: our pull-request skill now has agents run /simplify and then /code-review before they’re allowed to open a pull request. On many of our repositories, our own reviewer also does the first round and only then calls Greptile. My goal is a pipeline where Greptile’s reviews come back with nothing to say. We’re not there yet, but we get a little better every week.

    I’d rather pay for review than have a second person do it, and the reason isn’t salary. The person would need supervising too, because review is a job I’d have to check, not one I can hand off.

    What a Hire Is For Now

    Five years ago, if I’d been getting a product like this ready for market, I’d have been hiring twenty to fifty engineers. The work would have needed that many hands, and most of what they’d have done was write code. Today the code is the cheap part. If I bring someone in to write code, I’ve added a person who needs plans approved and pull requests read, which is the exact resource I’m short on. A hire whose job is output adds coordination faster than it adds capacity.

    I said on a podcast that came out last week that the code I’ve written would have cost about fifteen thousand dollars at API prices, and that I couldn’t hire engineers for that money. That’s true. The engineers I’d still want are a different kind from the ones I hired at Google. We need a few more people who can herd agents, not fifty.

    The engineering hire that adds capacity is a different shape. It’s someone who can own a bounded service whole. Here’s the interface, here’s everything it needs to do, let me know when it’s done. That person brings their own supervision. They run their own agents, read their own pull requests, and answer their own escalations, and the only thing that crosses the boundary between us is the contract. Supervision divides along the interface instead of piling up on one person. That’s a tech lead’s job, and it’s the only kind of engineering hire I can see that raises the ceiling instead of lengthening the queue.

    That raises a fair question about how anyone grows into that job now, which I tried to answer in The Questions Are the Job. The other advice I give is to work on open source. I’ve met people who showed they could work really efficiently with agents through open source projects, Gemini CLI in particular, and some of them ended up being hired onto my teams. Open source has its own problems right now. But if you show up as a thoughtful engineer with features or bug fixes that are well reviewed, well tested, and bring value to the project, I think you’ll be welcome. That’s one of the reasons I decided to open source the Pepper CLI.

    The first hire probably isn’t an engineer at all. I’ve said this a few times now, including on stage at a panel in September. Neither Chris nor I are go-to-market people, and I may hire one before I hire another engineer. I can create piles and piles of code, even relatively good code. What I can’t do is agentically acquire customers. (Did I mention that Pepper is open for signups now?) Someone in marketing came up after the panel and told me I’d validated her existence.

    The Third Trend

    I’ve watched this happen twice before. Open source developer tooling made it so a small team didn’t need to buy or build its own compilers, databases, and frameworks. Cloud infrastructure made it so that team didn’t need to own hardware or a data center. Each time, the number of people you needed to start something real dropped, and the skills that mattered shifted toward the people who understood systems well enough to compose what was suddenly free.

    Agentic tools are the third one. Anyone with a good idea can now get from concept to production on a budget that would have been a rounding error in a Google planning cycle. But the constraint didn’t vanish. It moved, the same way it did the last two times, toward the people who understand systems design well enough to drive the agents and notice when something has slipped through. I wrote a year ago that management skills were going to carry over to working with agents. I didn’t expect to be proving it with a two-person org chart and fourteen thousand dollars of tokens.

    This isn’t only a small-company problem. At Google it was hard to get more than a few changes in a day, because each one waited on code review. I’ve talked to engineers there who now do all their work in experimental directories that don’t require review, then port it back to their team’s repository at a pace the review process can keep up with. That’s what happens when you don’t manage for human attention. Productive people spend their cycles waiting on the process.

    When other companies ask me what to change, my answer has become: drive until human attention is the scarce resource, then build for that. If you’re reading your own ccusage number and wondering whether the answer is more tokens, look at where your attention went first. For us the answer has been more interfaces. Those are the places where one person’s supervision ends and another’s begins, or where an agent takes over a job one of us used to do by hand.

    #Agents #AI #Developer #Startups
  28. Your Python code works. It’s also slower than it needs to be. 🐢

    If you work in AI or data, you’ve probably lived this loop:

    Prototype in Python because it’s fast to write.
    Hit a performance wall.
    Rewrite the hot paths in C++, Rust, or CUDA.
    Now you maintain two languages, two toolchains, and a fragile bridge between them.

    This is often called the two-language problem. It costs teams time, hiring flexibility, and a lot of debugging hours. Mojo is an attempt to fix it at the root.

    What is Mojo?

    Mojo was created by Modular, co-founded by Chris Lattner, who also created Swift and LLVM. It combines Python-like syntax with systems-level performance and memory safety ideas inspired by Rust, and it uses the MLIR compiler framework to target hardware such as GPUs, CPUs, TPUs, and ASICs.
    opensourceforu

    The goal is simple: one language from prototype to production, with code that looks familiar to Python developers.

    Why 1.0 matters

    For years, Mojo was a fast-moving experiment, and its syntax changed often. That made it hard to bet a real project on it.

    Version 1.0 brings backward compatibility and API stability, and future 1.x releases are expected to be mostly additive. Modular also says it relies on Mojo daily in production, as the foundation of its own commercial products, MAX and Modular Cloud.
    opensourceforu
    modular

    In short, the language you learn today shouldn’t break under you next month.

    What problems does it solve?

    1. Performance without leaving the Python mindset

    You write code that reads like Python, but you get control over types, memory, and hardware when you need it. You don’t have to jump to a different language for the hot path.

    1. One language for the whole stack

    Instead of Python for the model and C++ or CUDA for the kernels, you can aim to write both in the same language. That means a smaller skill gap inside your team.

    1. Hardware portability

    AI workloads now run on many kinds of accelerators. Because Mojo is built on MLIR, it is designed to target different hardware without rewriting everything per vendor.

    1. Gradual adoption

    You don’t need to migrate your whole codebase. Mojo is designed to work alongside Python, so you can start with the one function that’s too slow.

    A first look at the code

    Here is a simple example. It looks like Python, which is the point:

    mojo
    def main():
    var total = 0
    for i in range(1_000_000):
    total += i
    print(total)

    The real gains show up when you add static types and use Mojo’s low-level features for performance-critical sections. Check the official Mojo docs for the current syntax, since the language was cleaned up significantly for 1.0.

    Where to be realistic

    I don’t want this to read like hype, so here are the caveats:

    The ecosystem is young. Python has decades of libraries. Mojo does not, and you’ll often lean on Python interop.
    It’s strongest for AI and performance-heavy work. For a typical CRUD web app, Python or Go is still the simpler choice.
    Governance is worth watching. Modular was acquired by Qualcomm in mid-2026, and open-source status and community direction are things to keep an eye on as the ecosystem grows.
    opensourceforu
    Features are still arriving. Async programming, pattern matching, and tagged unions are on the roadmap.
    opensourceforu

    Should you try it?

    My take:

    Yes, if you work on ML, GPU kernels, or numerical code and you’re tired of maintaining a Python and C++ split.
    Maybe later, if your workload is mostly I/O-bound or web-focused.
    Worth a weekend, if you just want to see where language design is heading.
    Getting started
    Read the official Mojo documentation.
    Install the toolchain and run a small benchmark of your own slow Python function.
    Port just that one function and measure the difference.

    Measure on your own workload. Benchmarks from other people’s projects won’t tell you whether it helps yours.

    Final thoughts

    The two-language problem has been accepted as “just how things are” for a long time. Mojo 1.0 doesn’t magically end it, but it’s the first time the idea feels stable enough to try seriously.

    Have you tried Mojo, Rust, Zig, or another newer language? What problem did it solve for you, or why are you still skeptical? Let me know in the comments. 👇#programming #mojo #ai #python #software #coding #development #engineering #inclusive #community
    Mojo 1.0 Is Here: Is the Two-Language Problem Finally Over?

Share on Mastodon

Enter the server where you have an account.