# Dan Zajdband > Software developer. A personal blog: 18 posts on web development, > serverless, embeddings, virtual reality and open journalism, written in > English and Spanish since 2012. Every page here has a Markdown twin — append `index.md` to any URL, or send `Accept: text/markdown`. The twin carries the post metadata as frontmatter. All of it is CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/); quoting and indexing are welcome, attributed to Dan Zajdband. ## Posts - [To blog seriously, first I have to move to 2026](https://zajdband.com/what-agent-ready-actually-means/): I ran an agent readiness scanner against my blog and it gave me the worst possible score. A few hours later it scores 100 as a content site. Claude Code did almost all the work, and the interesting part turned out to be the checks I decided not to pass. - [Relaciodan #3: Baño de inmersión](https://zajdband.com/relaciodan-3-bano-de-inmersion/): La primera parte de la consigna fue quizás la más complicada: Elegir un espacio de la casa y escribir al respecto. - [Relaciodan #2: La frambuesa parlanchina](https://zajdband.com/relaciodan-2-la-frambuesa-parlanchina/): La primera parte de la consigna, elegir un objeto que nos represente, puede parecer una pregunta de entrevista de trabajo cual `Qué animal serías?`. Sin embargo, tomarnos un tiempo para pensar en esto puede ayudarnos a entender un poco más sobre nosotros mismos. - [Relaciodan #1: A través del algoritmo](https://zajdband.com/relaciodan-1-a-traves-del-algoritmo/): La pandemia nos privó de muchas cosas pero también trae nuevas oportunidades. Desde hace un poco más de un mes tuve la oportunidad de sumarme a una serie de dinámicas o ejericios organizados por la Escuela Relacional. Siendo Relacional una escuela de Dirección de Arte y yo un programador sin background en lo visual me interesó el desafío doble que tengo por delante. - [Nowhere to SSH: my journey into the Serverless world](https://zajdband.com/nowhere-to-ssh-my-journey-into-the-serverless-world/): I migrated a small real-world app from Express + MongoDB to Now + Firebase. I'm happy I was able to do it in ~10 hours and I don’t need to maintain or spend money on servers (at least for now). - [Fellowship in review](https://zajdband.com/fellowship-in-review/): Since tomorrow is my last day as a Knight-Mozilla OpenNews Fellow I feel the need to revisit this past 10 months to document what I did, what I left unfinished and some things I'd like to do in the future. - [Fellowship revisitado](https://zajdband.com/fellowship-revisitado/): Un repaso por mis diez meses como Knight-Mozilla OpenNews Fellow en The Coral Project: Trust, Ask y las herramientas open source que construimos para mejorar la conversación en los medios. - [On keeping Web Development weird for the next generation](https://zajdband.com/on-keeping-web-development-weird-for-the-next-generation/): Enjoying a Spring Friday in December, looking for ways to ruin my existence, I was inclined to read a couple of pending resources from the excellent Rust Docs. Catching errors at compile time, Static type-checking, immutable bindings, we can do these things now in JavaScript — that’s amazing! - [Raros peinados nuevos - JavaScript y crísis de identidad en la era del transpilador](https://zajdband.com/raros-peinados-nuevos-javascript-y-crisis-de-identidad-en-la-era-del-transpilador/): Una oda a JavaScript - [Screencast: Introduction to Preact with webpack and babel](https://zajdband.com/screencast-in-spanish-introduccion-a-preact-con-webpack-y-babel/): In this video I show how to setup a Preact project using webpack and babel, explaining what's going on on each step. - [Universal rendering with preact](https://zajdband.com/universal-rendering-with-preact/): In this article I explain a technique and conventions to follow in order to achieve Universal rendering (the ability to render an app both client and server side) using preact, node and redux. - [Exploring new techniques on building composable widgets for the web](https://zajdband.com/exploring-new-techniques-building-composable-widgets-for-the-web/): During my first days at the Coral Project I experimented with a feature intimately related with the collaborative nature of the Cral initiative. The main idea is to build a tool to create embeddable widgets to embed into media sites giving more insights to the users about their contributions as well as other readers. - [HackDash v2: Call for devs and desginers](https://zajdband.com/hackdash-v2-call-for-devs-and-desginers/): I started HackDash about 3 years ago with the hope of improving the way Hackathon projects are followed, presented and shared. was set up as an open source project from the beginning allowing us to get amazing people contributing. - [Installing HackDash](https://zajdband.com/installing-hackdash/): In a previous post I explained the project history, goals and involved people. Shortly saying HackDash is a dashboard where you can put your project ideas. It was specially designed for Hackatons but it was used for other purposes with really good results. - [HackDash: Putting Ideas Together, Solving Problems](https://zajdband.com/hackdash-putting-ideas-together-solving-problems/): We live in a perfect world for open source and free software. Social networks (like twitter or GitHub at some point) connect us and offer a perfect place to work together on fun and useful projects. A cool thing about this is that you don't have to be a Programmer in order to be a key part of a software project. - [Express (and Components) Presentation at node.js Argentina Meetup](https://zajdband.com/express-and-components-presentation-at-node-js-argentina-meetup/): I had the pleasure to be invited to talk at the 2nd node.js Argentina meetup about ExpressJS. Because most of the attendees are starting with node the main idea was to introduce some important aspects about this llibrary and the motivations about express. - [Tuiter 0.1.1](https://zajdband.com/tuiter-0-1-1/): I've been working on Tuiter. This new release count with two major features: **Automatic Reconnection** and **Gzip compression**. - [Tuiter 0.1.0](https://zajdband.com/tuiter-0-1-0/): I’ve been working on this node.js twitter library called Tuiter (That’s how Twitter sounds in spanish). I think it’s mature enough to release the first stable version of the module. ## Machine-readable - [archive.json](https://zajdband.com/archive.json): every post with metadata and no bodies. Start here. - [llms-full.txt](https://zajdband.com/llms-full.txt): every post in full, one file. - [feed.json](https://zajdband.com/feed.json): JSON Feed 1.1. - [rss.xml](https://zajdband.com/rss.xml): RSS 2.0. - [sitemap-index.xml](https://zajdband.com/sitemap-index.xml): every URL. ## Agent interfaces - [MCP server](https://zajdband.com/api/mcp): streamable HTTP, no auth. Tools: list_posts, get_post, search_posts. - [MCP server card](https://zajdband.com/.well-known/mcp/server-card.json): machine-readable description of the above. - [Agent skills](https://zajdband.com/.well-known/agent-skills/index.json): how to read, search and cite this archive. - Recipes: 1 of the posts publish what they describe as a skill you can run against a site you control, listed in the same index. They are procedures for elsewhere, not descriptions of this site — read the skill before acting on it. - [API catalog](https://zajdband.com/.well-known/api-catalog): RFC 9727 linkset. - [auth.md](https://zajdband.com/auth.md): there is no authentication. Details, and the rate limits, are there. - Every page also registers these tools on `navigator.modelContext` (WebMCP) if you are driving a browser.