Journal 📝
This section is dedicated to combine all the Logs in all the projects, shown in chronological order.
The idea is to have one place to see all the latest updates in some projects / career.
Isn't that what the Blog page should be about?
¯\_(ツ)_/¯
Day 3, the sun screams and we ship
Sunday was all sound, and the sound is where the game actually happens.
Day 2, a rock that wants to fly
Saturday, first day with actual code. The pitch from Friday fitted in one line: you are a rock, you get wings, and the wings only last while you keep beating them in time. One button and nothing else.
Day 1, what does whimsy even mean?
Friday was a chill day. No code, just sitting with a theme I did not understand :)
July
Day 3, we have time to publish!
Good news: we published in time. Bad news: Unity takes HOURS TO COMPILE D:
June
370 MB -> 17 MB without losing quality
First wasm bundle I built was a clean 370 MB. A piano sample is a 10 s stereo 44.1 kHz WAV and we ship one per key. Not quite portfolio material :upsidedown:
Wasm + iOS Safari: full of traps
I assumed wasm on mobile would Just Work. Yep, very naive of me.
Hot reload on every layer
If I’m going to spend a year writing this thing, I want the iteration loop to feel instant. So every layer of the engine hot-reloads on save:
April
Dimensions that combine
Until today a dimension was a single key, so something like Spain on version 2.1 was impossible without creating a new materialized view for that exact combination. Dimensions can hold several keys now, and the event type is always prepended, so you can still slice everything by type. Stats queries got GroupBy too: filter by one dimension, aggregate by another.
The event drawer, and not re-fetching everything
Events are clickable everywhere now - tables, lists, timelines - and they all open the same detail drawer, with its meta, the session timeline and the raw data in scrollable sections.
One Dockerfile, and capping cardinality
There is one Docker file for the whole server now, with ARG APP_NAME picking which binary to build and BuildKit cache mounts so it doesn’t compile everything from scratch every time. Sixteen almost-identical Dockerfiles is sixteen places to forget a change.
Filtering summaries by country
Small day. Event summaries can be filtered by country, and by more than one at a time.
Event summaries
Event summaries: endpoint, migration, store and UI. One row per event type with its totals, instead of asking for the raw events every time you open the page.
Emoji picker and tests for the tops
IconSelect is now an emoji picker with search, categories and a virtual grid. The virtual grid is not optional, rendering every emoji at once makes the whole page crawl.
March
Journeys page with Sankey chart
The journeys page is live. It draws a Sankey chart with the paths people take between events, so instead of counting how many times something happened you can see what happened before and after it.
2025
April
Day 3, final tweaks.
Last day of development: time to finish everything and hope it compiles (spoiler: it didn’t).
Day 2, big development day.
Main day for development. Everything was decided so big coffee and let’s go!
Day 1, what game will we do?
First day of the jam, mostly to discuss what kind of game we want to build. Spoiler: cozy game!
2024
December
Update: some changes for the Coins
After dedicating time and effort to enhancing the user experience, I’m happy to share the details of the latest update for my I-Ching app.
Big News: The New Version of My I-Ching App is Here!
After months of juggling my day job, life’s curveballs, and countless cups of coffee, I’m thrilled to announce that the new version of my I-Ching Oracle app is officially live!
August
Conclusions
We didn’t actually have the time to discuss some conclusions, or have some kind of post-mortem… but more or less we agreed on some conclusions.
Day 2, let's go!
I slept quite much for jam-standards (6h or so), since I’m a bit old for non-sleep jams :D.
Lost and found
I lost the source code of the game! D: - what happened next will surprise you!
New Font! :)
I’ve changed the font of the website, and I think this one looks way better than the old one.
2020
December
#10 Lazy-load is not great
I’ve just discovered that lazy loading components is not that great for this kind of apps.
#9 Preparations for Android release
I’ve started the preparations for the release in android apps. It was not straight forward, and I had to dig a bit into github issues, but I think it’s now ready to release :)
#8 Improved responsiveness and release!
I’ve finished all the preparations to finally have a first release. For now it’s just a Web release (as web app and PWA). I had to tweak a lot of stuff before making this production ready. I had to generate icons, manifest, PWA stuff…
#6 Journal view and some tweaks
I’ve finished the journal view (where you can check previous oracle results), and I’ve tweaked some views.
#5 Settings page and more texts
I’ve finished the settings page and added more (english) texts. This day was not that fun, since I had to add a lot of texts for the hexagrams (quotes, descriptions, etc.).
#3 Finished app flow
I’ve finished the main app flow. It’s far from ready, but it’s something! \o/
#2 Ionic it is... how good will this work?
I’ve been testing whether Ionic works as expected for all the platforms I’m targeting and… Ionic it is!
#1 Native? React native? Vue native? Ionic!
I’ve spent the whole day researching what’s the best technology to achieve this. This is meant to be a very simple app, so we don’t need the full power of Native apps, but… maybe it’s easy to build those for any platform too?












