<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Rubo · Observatory · Observation log</title><description>A study log of the B.S. in Data Science at ITAM, one entry per term: the mathematics and statistics underneath, the computing, the economics, and the humanities the programme insists on. Written as I go, in the first person.</description><link>https://rubo6.dev/</link><language>en-us</language><item><title>From syllabi to stars: how I mapped my skills to their sources</title><link>https://rubo6.dev/log/de-los-temarios-a-las-estrellas/</link><guid isPermaLink="true">https://rubo6.dev/log/de-los-temarios-a-las-estrellas/</guid><description>Every star in the skills section now carries a provenance: the course, job or project behind it. How I rebuilt the official programmes of Bátiz and ITAM, and what I decided not to claim.</description><pubDate>Sat, 05 Sep 2026 12:00:00 GMT</pubDate><category>Computing</category><category>skills</category><category>syllabi</category><category>ITAM</category><category>Bátiz</category><category>transparency</category><category>this site</category></item><item><title>WhisperFlow: why I built voice dictation that never leaves my machine</title><link>https://rubo6.dev/log/whisperflow-dictado-sin-nube/</link><guid isPermaLink="true">https://rubo6.dev/log/whisperflow-dictado-sin-nube/</guid><description>I wanted the convenience of cloud dictation without giving away my voice. WhisperFlow is the result: offline push-to-talk for Windows with two swappable speech engines, a native orb overlay and a threat model written before the code.</description><pubDate>Fri, 04 Sep 2026 12:00:00 GMT</pubDate><category>Computing</category><category>WhisperFlow</category><category>speech recognition</category><category>ONNX</category><category>privacy</category><category>Win32</category><category>Python</category><category>projects</category></item><item><title>Pulsars: the lighthouses that keep time better than an atomic clock</title><link>https://rubo6.dev/log/pulsares-faros-que-marcan-el-tiempo/</link><guid isPermaLink="true">https://rubo6.dev/log/pulsares-faros-que-marcan-el-tiempo/</guid><description>A pulsar is a neutron star spinning tens of times per second, sweeping the sky with a beam of radiation. How they were discovered by accident, why they are the most precise clocks in the universe, and what they have to do with a data degree.</description><pubDate>Fri, 04 Sep 2026 12:00:00 GMT</pubDate><category>Astronomy</category><category>astronomy</category><category>pulsars</category><category>neutron stars</category><category>Crab</category><category>time series</category><category>outreach</category></item><item><title>The Helix through James Webb&apos;s eyes: the Sun&apos;s future in a photograph from January 2026</title><link>https://rubo6.dev/log/helice-jwst-2026/</link><guid isPermaLink="true">https://rubo6.dev/log/helice-jwst-2026/</guid><description>The Helix Nebula is a Sun-like star in its final phase, only 650 light-years away. In January 2026 Webb released a view of its cometary knots that is the image of this page&apos;s Personal category. What it shows and why I chose it.</description><pubDate>Fri, 04 Sep 2026 12:00:00 GMT</pubDate><category>Astronomy</category><category>astronomy</category><category>Helix</category><category>planetary nebula</category><category>JWST</category><category>white dwarf</category><category>outreach</category></item><item><title>Carina: why my favourite nebula is a stellar nursery</title><link>https://rubo6.dev/log/carina-vivero-de-estrellas/</link><guid isPermaLink="true">https://rubo6.dev/log/carina-vivero-de-estrellas/</guid><description>The Carina Nebula is the image that opens this page&apos;s observatory and the one I chose for the academic category. What it is, what the James Webb telescope saw in the Cosmic Cliffs, and why a place where stars are born is the right metaphor for a school.</description><pubDate>Fri, 04 Sep 2026 12:00:00 GMT</pubDate><category>Astronomy</category><category>astronomy</category><category>nebulae</category><category>Carina</category><category>JWST</category><category>star formation</category><category>outreach</category></item><item><title>Why this site computes the real sky over Mexico City</title><link>https://rubo6.dev/log/por-que-mi-sitio-calcula-el-cielo/</link><guid isPermaLink="true">https://rubo6.dev/log/por-que-mi-sitio-calcula-el-cielo/</guid><description>The sky on the home page is not a decorative animation: it is the sky above Mexico City at the moment you open the page, computed with sidereal time and a change of coordinates. Here is the mathematics, and why the degree made it easy.</description><pubDate>Thu, 03 Sep 2026 12:00:00 GMT</pubDate><category>Astronomy</category><category>astronomy</category><category>sidereal time</category><category>coordinates</category><category>spherical trigonometry</category><category>TypeScript</category><category>tests</category></item><item><title>Big data, mining, multivariate methods and the applied project (eighth term, in progress)</title><link>https://rubo6.dev/log/octavo-semestre-big-data-multivariados/</link><guid isPermaLink="true">https://rubo6.dev/log/octavo-semestre-big-data-multivariados/</guid><description>What I am taking now: architecture for large data volumes, data mining and analysis, multivariate methods and the first half of Applied Data Science, which since this fall can replace the thesis. What I hope to get out of each.</description><pubDate>Tue, 01 Sep 2026 12:00:00 GMT</pubDate><category>Data science &amp; AI</category><category>big data</category><category>Spark</category><category>principal components</category><category>data mining</category><category>applied project</category><category>thesis</category></item><item><title>Causal inference, MPI and the ethics of deciding with data</title><link>https://rubo6.dev/log/inferencia-causal-mpi-etica/</link><guid isPermaLink="true">https://rubo6.dev/log/inferencia-causal-mpi-etica/</guid><description>Linear Methods and Causal Inference gave rigour to the question of whether X causes Y; Parallel Computing had me write an MPI Bag-of-Words in C++; Artificial Intelligence opened the box of agents; and the ethics seminar reminded me that data belongs to people.</description><pubDate>Fri, 05 Jun 2026 12:00:00 GMT</pubDate><category>Probability &amp; statistics</category><category>regression</category><category>generalized linear models</category><category>causal inference</category><category>difference in differences</category><category>instrumental variables</category><category>MPI</category><category>C++</category><category>data ethics</category><category>privacy</category></item><item><title>A parallel Bag-of-Words with MPI and what measuring teaches</title><link>https://rubo6.dev/log/bag-of-words-paralelo-mpi/</link><guid isPermaLink="true">https://rubo6.dev/log/bag-of-words-paralelo-mpi/</guid><description>The Parallel Computing project: implement Bag-of-Words serially and in parallel with MPI in C++17, compare two ways of splitting documents across processes, and discover that intuition loses to the stopwatch.</description><pubDate>Mon, 15 Dec 2025 12:00:00 GMT</pubDate><category>Computing</category><category>MPI</category><category>C++17</category><category>parallelism</category><category>partitioning</category><category>Docker</category><category>benchmark</category><category>projects</category></item><item><title>ECOBOX AI: doing research with students who have exams</title><link>https://rubo6.dev/log/ecobox-ai-coordinar-investigacion/</link><guid isPermaLink="true">https://rubo6.dev/log/ecobox-ai-coordinar-investigacion/</guid><description>At DataLab ITAM I was part of the ECOBOX AI team, a computer-vision model for classifying waste. We delivered the model and a paper; the hard part was not the technique but doing research with people who have exams.</description><pubDate>Wed, 10 Dec 2025 12:00:00 GMT</pubDate><category>Data science &amp; AI</category><category>computer vision</category><category>image classification</category><category>DataLab</category><category>coordination</category><category>documentation</category><category>sustainability</category><category>projects</category></item><item><title>Maximum likelihood, bias-variance and the first job</title><link>https://rubo6.dev/log/estadistica-matematica-aprendizaje-de-maquina/</link><guid isPermaLink="true">https://rubo6.dev/log/estadistica-matematica-aprendizaje-de-maquina/</guid><description>Mathematical Statistics and Machine Learning in the same term are the best pairing in the curriculum: one tells you why an estimator works and the other what happens when you let it loose on data. In November I started working in data at Mercado Pago Point.</description><pubDate>Fri, 05 Dec 2025 12:00:00 GMT</pubDate><category>Data science &amp; AI</category><category>maximum likelihood</category><category>Cramér-Rao</category><category>Neyman-Pearson</category><category>bias-variance</category><category>trees</category><category>regularization</category><category>visualization</category><category>BigQuery</category></item><item><title>My first job interview: nerves, school projects and a seat at Mercado Libre</title><link>https://rubo6.dev/log/mi-primera-entrevista/</link><guid isPermaLink="true">https://rubo6.dev/log/mi-primera-entrevista/</guid><description>I had never done a job interview. The first one was for Mercado Libre, competing with candidates from ITAM, UNAM and Tec. What they asked, why I was shaking, and what I would do differently.</description><pubDate>Mon, 03 Nov 2025 12:00:00 GMT</pubDate><category>Work</category><category>Mercado Libre</category><category>interview</category><category>first job</category><category>career</category><category>nerves</category></item><item><title>APIs, JSON, the central limit theorem and auctions</title><link>https://rubo6.dev/log/fuentes-de-datos-nosql-teoria-de-juegos/</link><guid isPermaLink="true">https://rubo6.dev/log/fuentes-de-datos-nosql-teoria-de-juegos/</guid><description>Data Sources and Non-Relational Databases had me extracting and structuring real-world data; Probability II closed with the law of large numbers and the central limit theorem; Market Design taught me to think in incentives.</description><pubDate>Fri, 06 Jun 2025 12:00:00 GMT</pubDate><category>Computing</category><category>APIs</category><category>web scraping</category><category>JSON</category><category>NoSQL</category><category>MongoDB</category><category>central limit theorem</category><category>game theory</category><category>auctions</category></item><item><title>577 World Cup shots and a model you can explain</title><link>https://rubo6.dev/log/keeper-save-probability-interpretable/</link><guid isPermaLink="true">https://rubo6.dev/log/keeper-save-probability-interpretable/</guid><description>Keeper Save Probability: a prototype to estimate the chance a goalkeeper makes the save, built with logistic regression, Monte Carlo uncertainty and a grid search over positions. Why I chose the simplest model on purpose.</description><pubDate>Fri, 30 May 2025 12:00:00 GMT</pubDate><category>Data science &amp; AI</category><category>logistic regression</category><category>Monte Carlo</category><category>entropy</category><category>interpretability</category><category>football</category><category>scikit-learn</category><category>projects</category></item><item><title>AIESEC: hosting volunteers from the world, then leading a team, at twenty-one</title><link>https://rubo6.dev/log/aiesec-liderar-un-equipo-a-los-veinte/</link><guid isPermaLink="true">https://rubo6.dev/log/aiesec-liderar-un-equipo-a-los-veinte/</guid><description>A year at AIESEC in ITAM: hosting foreign volunteers in social projects in Mexico City, then leading a three-person team that sends students abroad. What I learned about funnels, 1:1s and working English.</description><pubDate>Fri, 13 Dec 2024 12:00:00 GMT</pubDate><category>Leadership</category><category>AIESEC</category><category>leadership</category><category>volunteering</category><category>SDGs</category><category>stakeholders</category><category>English</category><category>KPIs</category></item><item><title>Sigma-algebras, SQL and the Porfiriato</title><link>https://rubo6.dev/log/probabilidad-bases-de-datos-historia-mexico/</link><guid isPermaLink="true">https://rubo6.dev/log/probabilidad-bases-de-datos-historia-mexico/</guid><description>The term where real statistics began, with Probability I, and where databases stopped being tables and became a formal model. Also the term of Mexican history, from the viceroyalty to the Porfiriato.</description><pubDate>Fri, 06 Dec 2024 12:00:00 GMT</pubDate><category>Probability &amp; statistics</category><category>probability</category><category>Bayes</category><category>SQL</category><category>normalization</category><category>ACID</category><category>Mexican history</category></item><item><title>Big-O, Lagrange multipliers and Marx&apos;s critique</title><link>https://rubo6.dev/log/estructuras-de-datos-calculo-iii-marx/</link><guid isPermaLink="true">https://rubo6.dev/log/estructuras-de-datos-calculo-iii-marx/</guid><description>Data Structures gave me the vocabulary for computational cost; Calculus III, constrained optimization; and the last part of Ideas and Institutions, the critiques of the world the first two had built.</description><pubDate>Fri, 07 Jun 2024 12:00:00 GMT</pubDate><category>Computing</category><category>data structures</category><category>complexity</category><category>graphs</category><category>Lagrange</category><category>macroeconomics</category><category>Marx</category><category>Nietzsche</category></item><item><title>Learning to prove: Mathematical Thinking, Linear Algebra and the social contract</title><link>https://rubo6.dev/log/demostrar-algebra-lineal-hobbes/</link><guid isPermaLink="true">https://rubo6.dev/log/demostrar-algebra-lineal-hobbes/</guid><description>The second term gave me the language I still use: proofs by induction, eigenvalues, least squares as geometry, and Modernity from Hobbes to Kant read aloud.</description><pubDate>Fri, 08 Dec 2023 12:00:00 GMT</pubDate><category>Mathematics</category><category>proofs</category><category>induction</category><category>linear algebra</category><category>eigenvalues</category><category>least squares</category><category>Hobbes</category><category>Kant</category></item><item><title>Calculus, supply and demand, and Plato in the same week</title><link>https://rubo6.dev/log/primer-semestre-calculo-economia-platon/</link><guid isPermaLink="true">https://rubo6.dev/log/primer-semestre-calculo-economia-platon/</guid><description>What the first term of Data Science at ITAM taught me: that the degree is mathematics before it is code, and that reading Plato on Tuesday and differentiating on Thursday is not a contradiction but the design.</description><pubDate>Sat, 10 Jun 2023 12:00:00 GMT</pubDate><category>Mathematics</category><category>calculus</category><category>vectors</category><category>microeconomics</category><category>Plato</category><category>first term</category></item><item><title>The Bátiz: three years as a programming technician at the most demanding IPN high school</title><link>https://rubo6.dev/log/batiz-tecnico-en-programacion/</link><guid isPermaLink="true">https://rubo6.dev/log/batiz-tecnico-en-programacion/</guid><description>I entered CECyT 9 &quot;Juan de Dios Bátiz&quot; on 13 August 2018 and left on 23 July 2021 with a bivalent diploma: a high-school certificate and a technical degree in programming. What is taught there, why it has the reputation it has, and what it left me.</description><pubDate>Fri, 23 Jul 2021 12:00:00 GMT</pubDate><category>Computing</category><category>IPN</category><category>CECyT 9</category><category>Bátiz</category><category>programming</category><category>OOP</category><category>databases</category><category>software testing</category><category>COMIPEMS</category></item></channel></rss>