refactor: moved to hugo

This commit is contained in:
Felipe M 2024-06-16 20:39:53 +02:00
parent 4c6912edd0
commit e77e5583c2
Signed by: fmartingr
GPG key ID: CCFBC5637D4000A8
604 changed files with 1675 additions and 2279 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 193 KiB

View file

@ -0,0 +1,16 @@
+++
title = "2019"
date = 2020-01-01
tags = ["year"]
+++
This is a brief summary of my last year in random order:
- Gained back my reading habits. I set myself a safe goal of 6 books and ended up reading 8.
- Moved to an apartment with my player 2.
- Gave away/sold a lot of my stuff in the process.
- Got the habit of doing some regular exercise.
- Lived in Japan for almost three months.
- Said goodbye to my fellow coworkers of [Reply.ai](https://www.reply.ai) (I will miss you!)
![Photo of Mt. Fuji made in my stay](fujisan.jpg)

View file

@ -0,0 +1,85 @@
+++
title = "January 2020"
date = 2020-01-31
+++
![Munich in January](munich.jpg)
I didn't have much time for anything on January since I have spent more
time traveling than anything else: Being on my homecity for christmas,
traveling for work two times and then another conference just because.
At least the planes gave me some time to read and finish some pending
things, though I hope next month is more relaxed.
<!--more-->
## Conferences
- DevConf, Brno [^link devconf.cz]
Not much to comment apart from feeling a complete newbie about
everything, but more on that on another post in the near future.
## TV Shows/Movies
- Watched The Witcher S01 [^link the witcher]
I'm not sure if coming to the TV Show without having read the books
or played the games was good or bad, but I enjoyed it. Not sure why
some of the hate out there. It may be a bit difficult to put
everything together if you're not focusing on it (as it happened to
me), but it's a good fantasy show and I'm glad they renewed for a
second season.
## Books
- Stopped reading Prince of Thorns[^link prince of thorns]
I didn't get involved with the story, the characters and so on. Only
read a few chapters but there are tons of books to read to stop on
one I wasn't enjoying. I may try again in the future.
- Started reading The last wish[^link the last wish]
This was obvious, having watched the series it seems like an awesome
fanstasy world to explore and so far so good. Looking forward to the
game too.
## Games
- I started and dropped Pokemon Shield[^link pokemon] on record time.
Got some hype from a friend and from a recent announcement but it's
just the same as always and it bored me going through. Made to the
second or third gym and I just didn't want to turn on the Switch to
play, so...
## Articles
Some stuff I've read over the month. Since I don't store a proper
history this is just what came to mind, but I'm going to try keeping a
record for the coming months. Also I'm going to use this as a pressure
point to read some more pending articles, at least to the point that
I read more than I add to my pocket account.
- There's No Such Thing as Knowing Your Computer 'All the Way to the
Bottom' [^article1]
- You should have a personal website [^article2]
- The boring technology behind a one person internet company [^article3]
- From 15,000 database connections to under 100: DigitalOcean's tale of
tech debt [^article4]
- What happens when you push to git.sr.ht, and why was it so slow?
[^article5]
- How SSH port became 22 [^article6]
[^article1]: https://codefol.io/posts/no-such-thing-as-knowing-coding-all-the-way-to-the-bottom/
[^article2]: https://writing.markchristian.org/2019/04/29/personal-web-sites/?c=1
[^article3]: https://broadcast.listennotes.com/the-boring-technology-behind-listen-notes-56697c2e347b
[^article4]: https://blog.digitalocean.com/from-15-000-database-connections-to-under-100-digitaloceans-tale-of-tech-debt/
[^article5]: https://sourcehut.org/blog/2019-11-22-what-happens-on-git-push/
[^article6]: https://www.ssh.com/ssh/port#how-ssh-port-became-22
[^link devconf.cz]: https://www.devconf.info/cz/
[^link the witcher]: https://www.tvtime.com/en/show/362696
[^link prince of thorns]: https://www.goodreads.com/book/show/9579634-prince-of-thorns
[^link the last wish]: https://www.goodreads.com/book/show/40603587-the-last-wish
[^link pokemon]: https://www.nintendo.es/Juegos/Nintendo-Switch/Pokemon-Escudo-1522110.html

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 758 KiB

View file

@ -0,0 +1,165 @@
+++
title = "February 2020"
date = 2020-03-01
+++
After lots of flights and traveling around came the calm. A month to get
everything in order, sort my routine and start gettings things done.
![The beach after a walk](image.jpg?width=640#center)
<!--more-->
## Conferences
- Fosdem 2020 [^link fosdem 2020]
We were nearby for DevConf so we just went a few days here. I forgot
how packed and difficult going to some tracks is... but we managed
to attend some interesting talks and meet with some friends there,
which is always a plus.
## TVShows/Movies
- Finished watching Friends, again. It was so my player 2 and I had a
20m episode series to watch at lunch/dinner. It still make me laugh.
- Finished watching The Good Place [^show2]
Interesting show. The first season is what I liked the most, and
the show is a good overall to watch while eating or something,
short episodes (~20m), comical and with good actors. The show
mocks humanity in every way possible, the sad part is that most
of that is totally true! The ending kinda surprised me and made
me think a little bit.
- Started watching Money Heist [^show3]
We flew through the entire first season in a flash, and we're now on
the second (which it doesn't seem as good as the first). I liked the
first one a lot, even if there were some stuff that didn't make much
sense. Totally recommended.
## Books
- Finished reading The last wish [^book1] by _Andrzej Sapkowski_
As many people I started reading this after watching the TV Show (but
haven't played the game yet).
I was scared that it would be too similar to I was already seen but to
my surprise, even though some of the events tell the "same story" (on
a sense) are different enough from what I saw on TV.
I did enjoy it though it was short in length, but in exchange you
don't necessarily need to continue reading the rest of the books if
you don't want to (right away) because it contains a tale per chapter
that even if they are a full story when read in full it doesn't put
the reader in a position where it needs to read the rest.
I recommend it if you like the fantasy genre, is a light read, short
and self-contained.
- Started reading The Magicians' Guild [^book2] by _Trudi Canavan_
## Videogames
- Started and quickly dropped (and refunded) Warcraft 3: Reforged
[^game1]
I didn't manage to finish the "classic" Warcraft 3 back in the day, so
even after the critics and so on I decided to give it a go. Huge
mistake. The game is not prepared for wide-screens, it doesn't help
that the UI covers most of the screen either, my units keep getting
stuck on trees around and the game crashed on me a few times (and I
only played the tutorial and one scenario). My first though was...
well, since I have the classic one on my account let's just play
that... but no, the classic version now download the Reforged game
with the classic graphic pack. Even if you are a HUGE Warcraft fan,
you shouldn't pay for this. Luckily Blizzard knows and they do instant
refunds for the game.
Blizzard, please release classic Warcraft III on Good Old Games as
you've done with the two previous entries. [^gog-war1-2-bundle] I just
bought and downloaded them just in case you decide to _Reforge_
everything. [^gog-petition-w3]
- Started and dropped Assasin's Creed Origins [^game2]
I was in the mood of playing some of these open world games, and I had
this in my uPlay account already waiting as a gift for purchasing an
nvidia graphics card. The game looked good but it seems it was
horribly optimized since I had constant frame drops and AI glitches.
I tried some stuff to make it better but nothing worked. It killed the
inmersion so much that I just uninstalled it.
- Started playing Wolcen [^game3]
To play with some friends (though I've played mainly by myself because
of schedule issues). It's an action RPG that aims to be good, but
has still some bugs (it released this month).
- Played some Clash Royale [^game4] and Animal Crossing: Pocket Camp
[^game5] on mobile.
The first one just because, the other because of the hype of the next
Animal Crossing game releasing soon for the Switch.
## Articles
- Google Maps Hacks (incl. video) [^article1]
On how the virtual world affects the physical world.
- Why Discord is switching from Go to Rust [^article2]
Article from Discord Engineering on how they switched a specific piece
of their infrastructure to Rust.
- **[VIDEO]** OVER-TOURISM - Is sustainable tourism possible? - 観光公害
[^article3]
An interesting video about how tourism has evolved in Japan over the
last years.
- Fucking laptops [^article4]
The honest state of the laptop industry. It reminded me when I wanted
to switch my laptop and no option seemed good enough even in the
highest price ranges.
- The World We Leave Our Children: How I became a free software
extremist [^article5]
- The boss who put everyone on $70k [^article6]
- **[VIDEO]** How Crash Bandicoot Hacked The Original Playstation
[^article7]
I love this kind of war stories (as the series name) of what tricks
developers used to do to accomodate to old hardware. Really
interesting.
[^link fosdem 2020]: https://fosdem.org/2020/
[^show2]: https://www.tvtime.com/en/show/311711
[^show3]: https://www.tvtime.com/en/show/327417
[^book1]: https://www.goodreads.com/book/show/40603587-the-last-wish
[^book2]: https://www.goodreads.com/book/show/28249.The_Magicians_Guild
[^game1]: https://warcraft3refunded.com/
[^game2]: https://www.origin.com/esp/en-us/store/assassins-creed/assassins-creed-origins
[^gog-war1-2-bundle]: https://www.gog.com/game/warcraft_bundle
[^gog-petition-w3]: https://www.gog.com/wishlist/games/warcraft_iii_frozen_throne
[^game3]: https://store.steampowered.com/app/424370/Wolcen_Lords_of_Mayhem/
[^game4]: https://clashroyale.com/
[^game5]: https://ac-pocketcamp.com/es-ES/site
[^article1]: http://www.simonweckert.com/googlemapshacks.html
[^article2]: https://blog.discordapp.com/why-discord-is-switching-from-go-to-rust-a190bbca2b1f
[^article3]: https://www.youtube.com/watch?v=qSqHp0DLRJc
[^article4]: https://drewdevault.com/rants/2020/02/18/Fucking-laptops.html
[^article5]: https://lunduke.com/posts/2020-02-19/
[^article6]: https://www.bbc.com/news/stories-51332811
[^article7]: https://www.youtube.com/watch?v=izxXGuVL21o

Binary file not shown.

After

Width:  |  Height:  |  Size: 1,003 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 230 KiB

View file

@ -0,0 +1,121 @@
+++
title = "March 2020"
date = 2020-04-01
+++
**#StayAtHome #StopTheCurve**
As everybody know (unless you live under a rock) this month the COVID-19
hit hard on some European's countries, including mine. I have spent half
of the month staying inside in quarantine.
It's a weird sensation that gives you perspective even to the point that
going out to take the trash is a special (but dangerous, since people
here aren't taking this seriously) thing to do.
The good thing is that I had some time to move some thing out of my
backlog and I have no excuse to study some things now.
> Since most pictures are taken from my living room window these days is
> better to share how I spend time with friends. This is a screenshot of
> Tabletop Simulator [^game4] while I play Zombiecide [^game5] [^game6]
> with my friends.
![Playing Zombiecide with some friends online](image.jpg?width=640px#center)
<!--more-->
## TVShows/Movies
- Up to date with Money Heist [^show1]
The third part (first half of the second season?) is worst overall
compared to the previous heist, but good enough to have enough will
to watch it to the end.
- Watched The Boys Season 1 [^show2]
A good show about what could happen if super heroes where controlled
by a corporation.
- Rewatch: Rick and Morty Seasons 1 to 3 [^show3]
- Started wathing Dragon Ball [^show4]
The first series, watched so long ago I don't even remember the story,
is a good show to watch while I cook as episodes are short.
- Started watching Gravity Falls [^show5]
Recommended by a friend, to watch while we have lunch/dinner.
## Books
- Continued reading The Magicians' Guild [^book1] by _Trudi Canavan_
Haven't read much this month though. :(
## Videogames
- Started playing The Legend of Zelda: A link to the past [^game1]
Don't kill me, but this is my first time playing it.
- Started playing Animal Crossing: New Horizons [^game2]
I have been waiting for this for a **long** time.
- Played a bit of Guild Wars 2. Nostalgia. [^game3]
## Articles
- **[VIDEO]** Nintendo NES Famicom Creator Interview [^article1]
- Working from Home: Lessons Learned Over 20 Years & a Shopping List
[^article2]
- Before the DNS: How yours truly upstaged The NIC's Official
HOSTS.TXT [^article3]
- Decentralised SMTP is for the greater good [^article4]
- **[VIDEO]** NLNOG 2019 - DNS over HTTPS considerations - Bert
Hubert [^article5]
- **[VIDEO]** Spyro Had One of the Coolest Anti-Piracy Measures Ever
[^article6]
- **[VIDEO]** Clever Anti Piracy on the Super Nintendo [^article7]
- The reckless, infinite scope of web browsers [^article8]
- **[VIDEO]** How the Nintendo GameCube Security was defeated
[^article9]
- The mysterious origins of an uncrackable video game [^article10]
- Where do all the bytes come from? [^article11]
- Debunking "You should not run your mail server because mail is hard."
[^article12]
- UpNext: eInk display for future events #diy [^article13]
- A short thread on a few Celeste game-feel things [^article14]
[^show1]: https://www.thetvdb.com/series/la-casa-de-papel
[^show2]: https://www.thetvdb.com/series/the-boys
[^show3]: https://www.thetvdb.com/series/rick-and-morty
[^show4]: https://www.thetvdb.com/series/dragon-ball
[^show5]: https://www.thetvdb.com/series/gravity-falls
[^book1]: https://www.goodreads.com/book/show/28249.The_Magicians_Guild
[^game1]: https://www.nintendo.es/Juegos/Super-Nintendo/The-Legend-of-Zelda-A-Link-to-the-Past-841179.html
[^game2]: https://www.nintendo.es/Juegos/Nintendo-Switch/Animal-Crossing-New-Horizons-1438623.html
[^game3]: https://www.guildwars2.com/en/
[^game4]: https://www.tabletopsimulator.com/
[^game5]: https://store.steampowered.com/app/468726/Tabletop_Simulator__Zombicide/
[^game6]: https://www.zombicide.com/en/
[^article1]: https://www.youtube.com/watch?v=EbL9OFlxwV8
[^article2]: https://blog.dustinkirkland.com/2020/03/working-from-home.html
[^article3]: https://iconia.com/before_the_dns.txt
[^article4]: https://poolp.org/posts/2019-12-15/decentralised-smtp-is-for-the-greater-good/
[^article5]: https://www.youtube.com/watch?v=pjin3nv8jAo
[^article6]: https://www.youtube.com/watch?v=4GYSeXLr5sY
[^article7]: https://www.youtube.com/watch?v=KLyK1FMwc8Q
[^article8]: https://drewdevault.com/2020/03/18/Reckless-limitless-scope.html
[^article9]: https://youtu.be/Uxjl_kD3imQ
[^article10]: http://www.bbc.com/future/story/20190919-the-maze-puzzle-hidden-within-an-early-video-game
[^article11]: https://www.freecodecamp.org/news/where-do-all-the-bytes-come-from-f51586690fd0/
[^article12]: https://poolp.org/posts/2019-08-30/you-should-not-run-your-mail-server-because-mail-is-hard/
[^article13]: http://brettcvz.com/projects/6-upnext
[^article14]: https://twitter.com/MattThorson/status/1238338574220546049

Binary file not shown.

After

Width:  |  Height:  |  Size: 119 KiB

View file

@ -0,0 +1,142 @@
+++
title = "April 2020"
date = 2020-05-01
+++
Weird month. It seems that quarantine finally caught up with me (and my
sleep schedule!). Since I cannot go to sleep when I want, I'm trying a
different approach... reading something at bed and waking up later. So
far so good.
This month I didn't read many articles/books (in fact, any book) but in
return I came back to reading some Manwha I had in my backlog. And I
have also invested some time in a few projects I'm currently
_incubating_.
I'm also on my way to self-host my own stuff, trying out software and
servers architectures so I can _dog-food_ some of the stuff I use at
work, hopefully.
[![Screenshot of Final Fantasy VII: Remake main menu screen](image.jpg?width=640#center)](image.jpg)
<!--more-->
## TVShows/Movies
- **Money Heist** (up to date)
This last season way less interesting than the others for my taste,
and they are extending this heist too much. It should had already
ended. But oh well...
- **Mandalorian** (ongoing)
Started watching this on Disney+, of course I had to! I'm just a few
episodes in and so far I'm loving it. Star Wars universe for the win.
- **Gravity Falls** (finished)
I only watched this because a friend told me that it would diverge
into some Rick-and-Morty-like _shirt_. And it didn't. I'm dissapointed
at my friends now.
- **Dragon Ball** (ongoing)
I'm slowly going through this one since I only watch it while I cook.
- **The Lion King (2019)**
Same old, same old. Why not? Environments are amazing.
## Books & Manwha
- **The Magicians' Guild** (_Trudi Canavan_)
Put on hold. Even though the book was interesting enough I didn't
bring myself to continue reading it. In exchange...
- [**DICE**](https://www.webtoons.com/en/fantasy/dice/list?title_no=64&page=1) (ongoing)
I started _DICE_ a long time ago, and it has been on my backlog for
the same period. Since I have a bit of IQ left at night, I gave it a
shot, and oh man, this one is **good**.
- [**The Gamer**](https://www.webtoons.com/en/action/the-gamer/list?title_no=88) (ongoing)
This is esentially the **exact same** comment as above.
## Projects
There's no repository for this projects at the moment, I'm trying to
make projects public once I have something somewhat usable first,
so my accounts are not poluted with unfinished stuff. I will have my own
server for that soon:tm:.
- **Butter Robot**
On my current employeer we had the need of having some information
automatically posted in our channel reacting to different events. At
the beginning this was a simple python script reacting to a webhook
but as everything it has evolved. I'm making a simple bot framework
(Slack app & telegram) to generate bots, trying to make it easily
extensible via plugins which are just python classes than can be
exposed to the main package using entry points.
- **Jeeves**
I started this some months ago, is an automated task manager via
configuration files. You define tasks on a pipeline and can execute
it via CLI/Server. There's few code and it does near to nothing (can
execute scripts and call docker containers), but I have plans to have
a server so triggers can be set, flows to execute several pipelines,
etc. This has been on my head for years, so glad it's finally taking
shape.
- **Unnamed photo collection viewer**
I have been thinking about this for a while. There's no photo/video
management software that suit my needs right now, and even if there's
free/cheap alternatives out there I always have a copy of all my
collection just in case (you never know what could happen). So making
a viewer for all my collection should be the way to go, it wouldn't
have nice features (like automatic videos and all that stuff everyone
do nowadays) but I want a simple viewer, with a timeline, groups, that
*do not edit* my files without my explicit permissio (because
somtimes a wrong timezone or DST flag _fork_ up a timeline).
## Videogames
- [**Animal Crossing: New Horizons**](https://animal-crossing.com/new-horizons)
My daily fix. I'm just doing some daily stuff, events and all little
by little. The 3DS version made me a hardcore player, so I'm taking
this one with more _zen_. It's really impressive how have they
improved this game.
- [**Valorant**](https://beta.playvalorant.com) and **[Tabletop Simulator](https://store.steampowered.com/app/286160/Tabletop_Simulator/) ([Zombicide DLC](https://store.steampowered.com/app/468726/Tabletop_Simulator__Zombicide/))**
These two has been my social distancing vaccine for the month. We
continued with the Zombiecide campaigns and my friends and I managed
to get a Valorant beta from Twitch drops so I'm fragging like the
newbie I am.
- [**Final Fantasy VII: Remake**](https://store.playstation.com/es-es/product/EP0082-CUSA07187_00-FFVIIREMAKE00000)
Ow yes... How couldn't I see this coming. With this _#StayAtHome_
thingy my hype for this came back until I finally bought it. With
the system and all. I'm just a few days in and so far is awesome!
Just keep in mind that there are DLC blocking some summons and all
that, but going through the story again, with new graphics, 2020
cutscenes and characters have way more deep than in the vanilla
version... Right now I recommend it, but let's see what happens when
I finish it (or at least one third on the entire story...? Since this
is **not** the entire vanilla story)
## Articles
- [Why PlayStation 1 Graphics Warped and Wobbled so much](https://www.youtube.com/watch?v=x8TO-nrUtSI) **(video)**
- [How Raft consenssus works](http://thesecretlivesofdata.com/raft/)
- [Open Source cloud gaming with WebRTC](https://webrtchacks.com/open-source-cloud-gaming-with-webrtc/)
- [How Nintendo killed the best version of Tetris](http://www.nintendolife.com/news/2020/04/feature_how_nintendo_killed_the_best_version_of_tetris)
- [You need to stop using HTML email](https://jrswab.com/blog/you-need-to-stop-using-html-email)

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 MiB

View file

@ -0,0 +1,161 @@
+++
title = "May 2020"
date = 2020-06-01
+++
I can go out now. In those rare days with good weather here I can
take pictures like this.
[![A picture from the beach](image.jpg?width=640#center)](image.jpg)
<!--more-->
# TVSHows/Movies
- **Mandalorian** (ongoing)
I say ongoing, but I think I have not watched it this month... the thing
is that I still have to finish it.
- **Rick and Morty** (ongoing)
Of course I'm up to date, don't be _rickdiculous_.
- **Once upon a time** (ongoing)
To kill time during lunch/dinner because my Player 2 likes it. Pretty
boring though. Only the first season is "good" in some way because the
premise is interesting, after that it all goes to _shirt_.
# Manwha
Same as [last month](/blog/2020/05/01/april/).
- [**DICE**](https://www.webtoons.com/en/fantasy/dice/list?title_no=64&page=1) (ongoing)
- [**The Gamer**](https://www.webtoons.com/en/action/the-gamer/list?title_no=88) (ongoing)
And I have the urge to read _One Piece_ but don't know from where
(legally) withouth investing a lot in physical copies...
# Projects
Little progress on code this month, just making some tests and
concepts (because _Memories_ required front-end work and I forgot
almost everything I knew about CSS).
Spent some time reworking my local infra from scratch. All the
services I had running were done with poorly manual labor and now I'm
working on provisioning everything using Ansible. I have to do the same
for my computers since I'm planning the new dotfiles from scratch too.
- **Jeeves**
Very little progress, just added a few tasks and so, the example here
is not working because docker is broken on my machine at the time of
writing, but it should work. Promise.
My problem with this is that until it has a proper server to trigger
tasks via webhooks, crons or other methods is just a lightweight
(and worst) Ansible _wannabe_.
``` text
$ jeeves execute Jeevesfile.yaml
(i) Running flow from Jeevesfile.yaml
=== Running flow: Create synology-drive package
ok! Running step [1/8]: Download x86_64 deb
ok! Running step [2/8]: Calculate md5sum for x86_64 deb file
ok! Running step [3/8]: Download i686 deb
ok! Running step [4/8]: Calculate md5sum for i686 deb file
ok! Running step [5/8]: Create build directory
ok! Running step [6/8]: Parse PKGBUILD
ok! Running step [7/8]: Create SRCINFO file
Image 'archlinux:latest' does not exist container
err Executing step [8/8]: Test install in container
```
- **Butterrobot**
Spent some time refactoring code and thinking on what to use for
a simple admin interface to setup new features for the bots, enable or
disable plugins and all that.
![Butterrobot !dice plugin](butterrobot.png)
- **Memories** (previously _Unnamed photo viewer_)
Worked on reading the files from the filesystem and extracting the
mininmum required metadata for me to save on the database (to have
some search/filters going on). Also got some ideas depending on how the
files are stored (use folder names as "tags" to search for example).
Also played around with thumbnails, which are tricky to do depending on
the file, and I have a lot of variety (from standard JPEG to HEIC going
through 360 videos, etc.). I also noticed that I have a lot of files
with wrong metadata, which does **not** help at all with my testing.
Well, I have a simple frontend now, but everything is a very work in
progress (and those menu links are just dummy navigation).
I need to focus on implement a proper backend and decide on the main
features to implement in the first release, which should come with a
simple frontend and API for people to create their own.
![Memories screenshot](memories.png)
# Videogames
- [**Animal Crossing: New Horizons**](https://animal-crossing.com/new-horizons)
Just a daily routine trying to complete the monthly _citteropedia_.
- [**Final Fantasy VII: Remake**](https://store.playstation.com/es-es/product/EP0082-CUSA07187_00-FFVIIREMAKE00000)
I think I'm almost through the end, just finishing up some side quests
prior to the final chapters. I'm having lots of fun, probably
because the slow pace so I don't finish it in just a few days.
I can't describe how awesome the soundtrack is, specially with the
nostalgia effect from the original.
- [**Terraria**](https://store.steampowered.com/app/105600/Terraria/)
The last update for Terraria came out this month and I'm going through
the content with a friend trying to go though all the content. Well,
not _all_ content, since there is **a lot**. This game is a piece of
art, one of those rare gems that I wish I had more time to properly
enjoy it.
- [**Northgard**](https://store.steampowered.com/app/466560/Northgard/)
This has been on my Steam library for quite some time, and since the
Valhalla announcement I had the urge to play something Viking related.
Didn't play much (two scenarios I think). Is a fairly nice strategy
game but it has enough elements to make it enjoyable for a player like
me (because I'm not very good at them).
- [**Minecraft Dungeons**](https://www.nintendo.es/Juegos/Programas-descargables-Nintendo-Switch/Minecraft-Dungeons-1749059.html):
Got this for the switch because I wanted to have something to spend a
few minutes in and kill some time and couldn't I be more worng.
My surprise has been the awful load times (2m+ to start playing from
the Switch main menu), sub-30 framerates and the awesome chance of the
game crashing when putting the console in sleep mode. The game is
_fun_ to play from time to time (and I'm sure is way more fun in
multiplayer) but the Switch version is just so bad that no one should
buy it.
- Some [**Sea of Thieves**](https://www.seaofthieves.com/) and [**Valorant**](https://beta.playvalorant.com) with friends to keep me close while social distancing, though I'm not sure I would keep playing since rebooting to Windows just to play some games is itching me a lot lately, rather buy what I can play on Linux and purchasing the rest on Switch or PS4 if needed.
# Articles
- [Take care editing bash scripts](https://thomask.sdf.org/blog/2019/11/09/take-care-editing-bash-scripts.html)
- [Bye, Amazon](https://www.tbray.org/ongoing/When/202x/2020/04/29/Leaving-Amazon)
- [Sprite Analysis: Top-Down RPG Pixel Art (Pokémon)](https://www.youtube.com/watch?v=gwF0L55kIgg)
- [Experiences with email-based login](https://www.arp242.net/email-auth.html)
- [Should I block ads?](https://shouldiblockads.com/)
- [The day AppGet died](https://medium.com/@keivan/the-day-appget-died-e9a5c96c8b22)
- [How our 99th percentile response time went from 4000 ms to sub 10 ms](https://nrkbeta.no/2020/05/26/how-our-99th-percentile-response-time-went-from-4000-ms-to-sub-10-ms/)
- [Linus Torvalds Re: A wide monitor is for looking at lots of files.](https://lkml.org/lkml/2020/5/29/1038)
- [Do you know how much your computer can do in a second?](https://computers-are-fast.github.io/)
- [Making game engines is a waste of time. I probably won't stop making them](https://benwiser.com/blog/Making-game-engines-is-a-waste-of-time---I-probably-won%E2%80%99t-stop-making-them.html)

Binary file not shown.

After

Width:  |  Height:  |  Size: 150 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 712 KiB

View file

@ -0,0 +1,69 @@
+++
title = "June 2020"
date = 2020-06-02
+++
We can travel now! Quarantine restrictions have been raised here, and we can go visit family. It's weird
seeing people with masks, cleaning its hands and so on (though not everyone eveytone). It gives me some Japan
nostalgia.
It hasn't been a productive month, and I don'tknow where time went. And that made me realize that I can't
do everything I want to do... I have to start dropping tasks from all kinds of hobbies and organize myself
**way** better. That is my homework for this summer.
[![On the road, finally](image.jpg?width=640#center)](image.jpg)
<!--more-->
## Projects
Sad times here. The shock when you finally discover that time is not infinite.
Both the _photo manager_ and the _pseudo-CI/CD tool_ were fun, but I'm going to stop working of them for
the foreseable future. Both were monoliths that I can't schedule on my life right now.
**Butterrobot** I'm happy to continue with since we're going to _dog-food_ it at work. Happy to say
that the app is now fully modular and you can install that and your own package with plugins and make
it work easily. Hopefully releasing it this month.
Infra has evolved too, I've simplified a lot of my services, turned down some things I wasn't using and
trying to save time on this as well. If there's a good alternative out there I'm probably using it.
And on that matter, I'm going to start moving all my repos to Github. I have them spread around github,
gitlab and sourcehut and it's causing me headaches. I will have my own gitea instance to mirror my repos
in case something happen with the cloud service and also to put there all tests and concepts (like the
two discontinued above) before making it available to the public (though they will be accessible, just not
so easy to find) so my github account isn't filled with unfinished stuff.
## Games
- [**Animal Crossing: New Horizons**](https://animal-crossing.com/new-horizons)
Still play ocasionally, finally burn-out got to me. I only turn on the game to get some of the collectibles and check some daily stuff, just a few minutes and definitely not daily as before.
- [**Terraria**](https://store.steampowered.com/app/105600/Terraria/)
Still on-going and very happy with it. I'm still shocked on the number of features included with this game, number
of items, progress, bosses and all for the price, after a lot of years.
- [**Final Fantasy VII: Remake**](https://store.playstation.com/es-es/product/EP0082-CUSA07187_00-FFVIIREMAKE00000)
Didn't play much, almost to the end, time constraints and sharing the TV as main issues, but I'm very eager to get
to the end to see if anything non-trivial changed from the original.
- [**Reventure**](https://store.steampowered.com/app/900270/Reventure/)
Started playing this on my GPD WIN 2, it's awesome for quick runs and is funny so far, trying to discover
what crazy stuff to do in order to unlock the over one hundred endings this game has.
- [**Minecraft Dungeons**](https://www.nintendo.es/Juegos/Programas-descargables-Nintendo-Switch/Minecraft-Dungeons-1749059.html):
Dropped for the obvious reasons [I said last month](/blog/2020/06/01/may/).
## Articles
- [Dwarf Fortress Creator Explains its Complexity & Origins | Noclip Interview](https://www.youtube.com/watch?v=VAhHkJQ3KgY)
- [Linux Sucks 2020](https://lbry.tv/@Lunduke:e/LinuxSucks2020:b)
- [The Untold Story Behind Astroneer's Difficult Development](https://www.youtube.com/watch?v=tfUjl4owxTQ)
- [Raspberry Pi 4 - a viable mini desktop?](https://www.dedoimedo.com/computers/raspberry-pi-4-viable-desktop.html)
- [After 3 Years of Work, Chrome Killed My Extension and Wont Tell Me Why](https://medium.com/@miko_89964/after-3-years-of-work-chrome-killed-my-extension-and-wont-tell-me-why-83a3f8d65cbc)

Binary file not shown.

After

Width:  |  Height:  |  Size: 706 KiB

View file

@ -0,0 +1,115 @@
+++
title = "July 2020"
date = 2020-08-02
+++
Summer is here!
Even without restrictions or quarantine is has been a weird month. Cases here are going up and down,
I don't want to go back to the gym (and I think I won't until next year), some restaurants and cafe
have closed permanently and the ones that are still standing are usually full (which is good). We're
just trying to go back to normal, step by step, and having some friends stay at home a few days
helped a lot.
[![A picture of myself from behind walking through a port](image.jpg?width=640#center)](image.jpg)
<!--more-->
This month I have focused on getting more organized. As I said [last month](/blog/2020/06/02/june/)
I badly needed it.
I have managed to move almost everything into my [notion.so](https://notion.so/) workspace.
I had some boards and notes here and there but Notion is so powerful and comfortable to use that I
just went all in. There's some cleanup to do, but my main points of interes are already there. I have
a board with my personal tasks and some metadata about them, and secondary boards for my hobbies
(Games, Books, TVShows, etc), Blog related posts, ... I may go into more detail in the future.
<div class="grid">
<div class="col-1-2">
<a href="./notion-tasks.png">
<img src="./notion-tasks-320.png" />
</a>
</div>
<div class="col-1-2">
<a href="./notion-games.png">
<img src="./notion-games-320.png" />
</a>
</div>
</div>
Related to this I'm also starting to cleanup every last drawer at home. I got a bit tired of not
knowing how much stuff I have so I'm making a full inventory of _everything_. It all started
reviewing how many of my clothers would still fit me after quarantine, and it snapped on me. I
don't know how much I own, and I think it happens to all of us at different levels.
With tech this is gonna be very difficult, I have managed to stash a lot (**a lot**) of cables
during the years. Just imagine how many HDMI and USB cables the average tech guy can get a hold
of... Arduinos, Raspberries... etc.
This will take time, but I'm very happy with the progress I already had and all the things I've
already donated or sold.
## Projects
- My **local infra** is mostly done at this point. I just need to secure everything a bit more
but has been working fine (with some hiccups) for the past months. I may need to check some
networking alternatives and move all SSL negotiation to the main node (avoiding re-encrypting
traffic on a non-controlled node).
- **Butterrobot** got some love this month. I'm _slowly_ setting up an automated CI/CD system to
deploy the application in my local infra, but I need to setup some other details as well. Source
code is already on Github though repository is private while I made last minute changes. I'm
hoping to release it this month.
- I'm also cleaning up my **Home Assistant** node. What that really means that I'm re-deploying a
new instance on a more powerful Raspberry Pi. I have been playing with this software for years
and my current pi is a bit underpowered and messy, so the plan is start from scratch trying to
make the connected devices local trying to avoid third-party clouds as much as possible and
document everything in some blog posts. Let see how that goes.
## TV Shows
I watched something!
- **M.A.R.V.E.L.s Agents of Shield**
Some chapters of the last season. This may be the worst season so far...? (At least the few I saw)
- **The 100**
Up to date with this one, without much focus because some interdimensional time thingy is not very
appealing to me, just want to know how it all ends. If it doesn't end this season, I'm done with it.
- **Sword Art Online (Aincrad saga only)**
Rewatched this one (a friend's fault) as series to have while cooking and doing chores. A bit complex
to read subtitles the same time you do other things, but since this is a re-watch... Now looking for
some other series with the same "protagonist sent to fantasy world" genre.
## Games
- [**Final Fantasy VII: Remake**](https://store.playstation.com/es-es/product/EP0082-CUSA07187_00-FFVIIREMAKE00000)
I have gone through a bit more of the story, trying to enjoy the story till the end. And wait
another five years for the next chapter...?
- [**Reventure**](https://store.steampowered.com/app/900270/Reventure/)
Quick play sessions are quick. Oh my god this game has soooo many endings...
- [**Carrion**](https://www.xbox.com/en-US/games/carrion)
This has been on my radar for quite some time. It's a shame is so short! Finished in a few hours, but that didn't mean
is not great, because it is. Being the monster trapped wanted to go out instead of the _"Hero"_ killing monsters is
a really appreciated change of perspective. The mechanics were amazing and the graphics gorgeous, it was very fun while it
lasted.
- [**Rick and Morty: Virtual Rick-ality**](https://store.steampowered.com/app/469610/Rick_and_Morty_Virtual_Rickality/)
I got time to play some VR, and I had this in the backlog for quite some time. I love Rick and Morty and this was
a short and fun puzzle adventure, just what I expected. I could get on with the optional stuff but I just have too much
on backlog!
## Articles
I forgot to take note of the interesting ones this month. :sweat_smile:

Binary file not shown.

After

Width:  |  Height:  |  Size: 548 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 111 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 938 KiB

View file

@ -0,0 +1,61 @@
+++
title = "August 2020"
date = 2020-09-02
+++
Slowly going back to routine, this month has been well spent going out when possible and spending
time with friends and family, a thing that we couldn't do properly for some time now. Not much
"progress" on anything else for that matter.
[![A picture of the beach](image.jpg?width=640#center)](image.jpg)
<!--more-->
## Projects
Didn't have much time to play around with projects this time, but in simple terms I've managed to
release the code for [butterrobot](https://github.com/fmartingr/butterrobot) for anyone to see
and shame my code and prepared the slack application for my team to use. I'll admit that is a bit
of a pain to play with several repositories at the same time, and github doesn't make this easy on
itself requiring authentication for the container registry... but well, so far it's working and
it's good to have room for improvement.
I've also received my [Firewalla Gold](https://firewalla.com/) and finally finished tidying up
my network infrastructure a bit, though it will require a bit more tuning but at least I can now
focus on what I've been eager to do: setup my home assistant for all the devices and automations
on my home, yay!
## Books
- Started reading [**The Ballad of Songbirds and Snakes**](https://www.goodreads.com/book/show/51901147-the-ballad-of-songbirds-and-snakes).
Prequel to the Hunger Games, seems like a short enough book to get back with my reading habits again.
## Games
- [**Assemble with care**](https://www.assemblegame.com): Played this on my phone and it was a short but
wonderful playthrough. It's a story-driven puzzle game, though puzzles are very easy since they are
secondary. Full voice acting makes this a calm and relaxing experience to do while on the move (or at
the beach!)
- Some more [**Reventure**](https://store.steampowered.com/app/900270/Reventure/)
## Articles
Mostly videos this time around, since I'm used to put something off-screen while I'm working. Some interesing stuff in
there, mostly videogame related.
- [The lightning digital AV adapter surprise](https://panic.com/blog/the-lightning-digital-av-adapter-surprise/)
- [Snormal: a wonderfully normal social network](https://tinyprojects.dev/projects/snormal)
- [How Stardew Valley Was Made by Only One Person](https://www.youtube.com/watch?v=4-k6j9g5Hzk)
- [New York's 1040 Street View](https://1940s.nyc/)
- [Cuba's Underground Gaming Network](https://youtu.be/lEplzHraw3c)
- [NYC IS DEAD FOREVER. HERE'S WHY](https://www.linkedin.com/pulse/nyc-dead-forever-heres-why-james-altucher/)
- I think I watched **all** videos from [The Gaming Historian Youtube channel](https://www.youtube.com/user/mcfrosticles)
- [The NODE nano server V2](https://www.youtube.com/watch?v=dLfLEYs7N3Y)
- [How the Sony PS1 Security was defeated](https://www.youtube.com/watch?v=7HOBQ7HifLE)
- Deciphering Japan series
- [Why is Japan's gender gap so wide?](https://www.youtube.com/watch?v=5dsD6FWfZHE)
- [What's the cost of being the hardest workers in the world?](https://www.youtube.com/watch?v=2ajH2Id5FY4)
- [Coping With A Super-Ageing Nation](https://www.youtube.com/watch?v=HQU-NeP_spU)
- [What does it means to be Japanese?](https://www.youtube.com/watch?v=BdDjmc8QbVg)

Binary file not shown.

After

Width:  |  Height:  |  Size: 122 KiB

View file

@ -0,0 +1,60 @@
+++
title = "September 2020"
date = 2020-10-01
+++
**Very** cool month, finally managed to have some hard earned holidays! I had the privilege of
going with some friends (even some I hadn't seen in a long time!) to an apartment near the beach,
and oh boy did I need that. I came back fully charged! Apart from that, not much movement in any
area.
[![Another picture of me at the beach, this time in Malaga](image.jpg?width=640#center)](image.jpg)
<!--more-->
## Projects
I have _refactored_ my local network a bit, bought a proper router with integrated firewall and monitoring,
and a new AP to get along with that. Next step will be re-creating my entire home-assistant instance from
scratch on a new raspberry pi. With that I will start a blog post series on every step I'm going to take,
sort of a tutorial sort of informative. You can do very cool things with it.
Not much time for anything else.
## Books
- [**The Ballad of Songbirds and Snakes**](https://www.goodreads.com/book/show/51901147-the-ballad-of-songbirds-and-snakes).
I read only a little more, either the good is not as impacting as the first one (it isn't) or
I'm completely gone with my reading habits again. I though I would enjoy this on my vacation time, but
I didn't end up hooked. I will probably drop this one, sadly.
## Games
- [**Super Mario 3D All-Stars**](https://www.nintendo.es/Juegos/Nintendo-Switch/Super-Mario-3D-All-Stars-1832369.html):
Tried starting with Mario 64 first, but the camera and controls were so frustrating I ended up skipping it
and going directly to Sunshine. I've collected a few stars but I haven't sit down properly to get with it,
only playing on spare time between other things.
- [**Among Us**](https://store.steampowered.com/app/945360/Among_Us/): The new cool kid on the block, very
funny to play with friend over discord; guaranteed fun.
## Articles
I ended up doing a [Telegram channel](https://t.me/fmartingr_articles) to paste interesting articles/videos as I see fit, this way I don't forget
taking notes that much. Now I only need to remember this channel exists...
- [The design behind Super Mario Odyssey](https://www.youtube.com/watch?v=z_KVEjhT4wQ)
- [Legend of Zelda: Breath of the Wild - An open world adventure](https://www.youtube.com/watch?v=vmIgjAM0uh0)
- [The magic of the first Legend of Zelda](https://www.youtube.com/watch?v=KHbQ6ti5BQ0)
- [How to keep players engaged (without being evil)](https://www.youtube.com/watch?v=hbzGO_Qonu0)
- [How One Gameplay Decision Changed Diablo Forever](https://www.youtube.com/watch?v=huPF3Gid7DE)
- [Diablo: A classic game postmortem](https://www.youtube.com/watch?v=VscdPA6sUkc)
- [When you browse Instagram and find former Australian Prime Minister Tony Abbott's passport number](https://mango.pdf.zone/finding-former-australian-prime-minister-tony-abbotts-passport-number-on-instagram)
- [Edmund McMillen Breaks Down His Game Design History (Meat Boy, Isaac & More) | Noclip](https://www.youtube.com/watch?v=_97zYunu2w0)
- [Did Nintendo download a Mario ROM and sell it back to us? - Here's A Thing](https://www.youtube.com/watch?v=zR1uEwjx7VI)
- [Why Masks Work BETTER Than You'd Think](https://www.youtube.com/watch?v=Y47t9qLc9I4)
- [Mining Your Own Design: Crafting the Crafting System in Astroneer](https://www.youtube.com/watch?v=oCwQtZcLrVs)
- [Skill-Building Series: Pixel Art and Animation in the Hi-Bit Age](https://www.youtube.com/watch?v=ZR_JBgNEeVM)
- [The Era of Visual Studio Code](https://blog.robenkleene.com/2020/09/21/the-era-of-visual-studio-code/)
- [The origins of the Super Mario fashion decision](https://twitter.com/katewillaert/status/1308881238145617920)

Binary file not shown.

After

Width:  |  Height:  |  Size: 550 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 271 KiB

View file

@ -0,0 +1,78 @@
+++
title = "Final Fantasy VII: Remake - My review"
date = 2020-10-15
+++
I started the out of pure hype and even bought -again- a PlayStation 4 in the process, but haven't finished it until recently due to time constraints, lack of interest and having lost the initial momentum.
I will try to to a quick review of what I feel playing it and if there's something spoilery it will be obscured to avoid accidents; same with the pictures.
[![Final Fantasy VII: Remake Slash Screen](splash.jpg?width=640#center)](splash.jpg)
<!--more-->
> Disclaimer: I've only finished the game, not completed it. I played quite a lot at the beginning but I lost momentum due to various reasons, the main one being lack of time to play (anything, not just this). I haven't completed all thropies for the game nor I have collected everything (and I don't intend to).
## Music
This is just something one can't write about, let just say that playing with headphones was a really good idea from the beginning and that for me this is easily the best part of the game. They remastered the original soundtrack and made something amazing with it. Not better (I like the "original" a lot too), just different.
When you already played the vanilla game and appear on a zone that you only recognize because of it's music... it's awesome! That combat music remastered, traveling through Midgar, doing missions, the fanfare! <span class="spoiler">While you don't have the classic fanfare tune once you win a battle, Barret will sometimes hum it if he's in your party, it's hilarious and very nice attention to detail.</span>
The edition I bought came with a "mini soundtrack" CD with some music, but in my oppinion it should've been the entire OST, <span class="spoiler">at least the game also allows you to collect some of the tracks in-game and let you play it from the menus.</span>
## Character development
<a href="./sector-7.jpg"><img class="spoiler" src="sector-7.jpg?width=640#center" /></a>
They added more backstory and personality to our well known characters to make the first sections of the game way more enjoyable. Notable mention for how Jessie is handled, my favourite! Wedge is also very funny, more or less what my imagination created for him back in the day.
To add contrast to the previous point, there's a new character that appears out of nowhere: <span class="spoiler">Roche, he is a SOLDIER and a boss battle in an expanded part of the story</span>; he didn't have any backstory nor anything to him and then you just never meet him again. That was really weird, I expected to find it sometime later in the game (and there was the perfect moment to do so right at the end...).
Avalanche gets more human as it is not just the characters you meet, there are more people that know you and help the cause... and others that don't. It gives more life to the resistance group.
Sephiroth <span class="spoiler">is shown several times, but they didn't add any meaningful explanation nor backstory to him, only some glimpses from flashbacks; then it becomes the final boss of the Remake with no explanation whatsoever. While I can understand the impact I think new players will be lost here.</span>
## The ending
<a href="./cloud-sephiroth.jpg"><img class="spoiler" src="cloud-sephiroth.jpg?width=640#center" /></a>
<span class="spoiler">Oh boy... I'm not sure I've understood the ending properly but I'm reluctant to read or watch anything related to it to avoid subconciously alter what it made me feel. If it meant what I think, it gave a lot of room for the next chapters to continue through. Whatever that's a good think or not... we'll see in a few years.</span>
<span class="spoiler">I liked what they did, though it was a bit of a mind<i>fork</i>. And if it was for me, who have played the original, I can't possibly understard what someone that didn't think about it.</span>
<span class="spoiler">Basically the succession of events happening in the remake is the same as the ones in the vanilla game (sort of) but at some point you encounter a new kind of creatures that you know nothing about preventing you from going _where you're not supposed to be_. These creatures are revealed to be called _Whispers_ -servants of destiny itself- that doesn't allow events to diverge from they path _its supposed to take_. Do you understand where this is going?</span>
<span class="spoiler">So, events continue and you end up in the Shinra building at the end, and you met Sephiroth. Maybe. After the touching reunion, **Sephiroth kills Barret** (OH MY GOD), but this whispers came to the rescue, because that's not supposed to happen, that was not _his destiny_.</span>
<span class="spoiler">Sephiroth ends up summoning the mother of all _Whispers_ and you need to fight it **in order to fight destiny itself**. Which you of course beat, and then the game ends, not after presenting you with a touching scene from Zack and Biggs still alive when they are not supposed to.</span>
<span class="spoiler">So my take for all of this is... you beat destiny so the characters in the remake doesn't need to follow the predestined path they required to follow, esentially breaking free from all the events happening in Final Fantasy VII. Aerith could live, Sephiroth could just not appear again, Zack could appear in future chapers, ... they managed to get free from the original in a very elegant way.</span>
<span class="spoiler">I liked this ending -and the possibilities it represent- a lot as a player that know the original... if I got it right.</span>
## Replayability
<a href="./sector-gone.jpg"><img class="spoiler" src="sector-gone.jpg?width=640#center" /></a>
While thropies are a good initiative, some of them require to re-play some of the chapters of the game, one of them in particular requiring to play the entire game again in another difficulty mode. At least the game makes really easy to jump to any chapter of the game once you have completed it, in case you missed or left something for later.
I'm not a fan of this kind of tactics to make games longer as my main motivation to play a game is the story and gameplay, making the same things I've experienced already more difficult is not going to make me want to play the entire thing again. That said, some collectibles (<span class="spoiler">the music discs in this case</span>) are easy to obtain and I got them all without the need of any guides though I'm not sure if I would have come back for them.
This is how it finished for me:
![The game current thropy completion on my account](trophies.png)
## No screenshots on the ending
<a href="./church.jpg"><img class="spoiler" src="church.jpg?width=640#center" /></a>
This is a really stupid thing on my part, but I **love** taking screenshots, I have gigabytes of screenshots from PC, PS4 and Switch combined.
The last chapter for the Remake disables this possibility for users for some reason. I'm assuming it was to prevent a lot of screenshots/videos posted of the ending which were already out there anyway. Instead of that they prevented legitimate users of the feature from using it and make my screenshot collection bigger. Sad.
## Conclusion
Maybe this is not a tech marvel as other games in this platform are, but they surely know how to play with a good story and nostalgia from us. At the beginning I was reluctant to know about any other chapter in this series, but the ending left me wondering... what they have in store for us?

Binary file not shown.

After

Width:  |  Height:  |  Size: 245 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 336 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 392 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3 MiB

View file

@ -0,0 +1,97 @@
+++
title = "October 2020"
date = 2020-11-01
+++
And another month went by.
[![The view from the beach here is awesome](image.jpg?width=640#center)](image.jpg)
<!--more-->
## Projects
I have started my slow journey into Golang and spend an skill boost day at work doing some stuff with it. Ended up
with a lot of tabs open but it was the most fun I have had for a while! If you're curious the result is on my
[gurl repository](https://github.com/fmartingr/gurl), it's not complete (or useful) by any means, but I want to
expand it with new _features_ while I learn some more.
In my spare time I've been working on a simple program to manage my game's screenshots, I have a lot over several
computers/operating systems and I want to organize them better to publish them on an online gallery. I'm starting
to enjoy Go quite a bit the more I do with it, even if it's only minor stuff.
## Books
- [**The Magicians' Guild**](https://www.goodreads.com/book/show/28249.The_Magicians_Guild) (_Trudi Canavan_)
Started again from the beginning, I just need to fit the reading habit into my schedule.
## TVShows and Movies
- [**The social dilemma**](https://www.netflix.com/title/81254224)
An interesting movie/documental about how social networks are not our friends. They didn't provide me with
anything I didn't knew, but should be interesting for less _techy_ people to watch and understand they are
the product.
- [**Star Wars: The Phantom Menace**](https://www.disneyplus.com/movies/star-wars-the-phantom-menace-episode-i/2ezYynkgW1AH)
- [**Star Wars: Attack of the clones**](https://www.disneyplus.com/movies/star-wars-attack-of-the-clones-episode-ii/mgpYHGnzZW6N)
- [**Star Wars: The Clone Wars (animated movie)**](https://www.disneyplus.com/series/star-wars-the-clone-wars/1wYXzjabXGVZ)
- [**Star Wars: The Clone Wars (animated series)**](https://www.disneyplus.com/series/star-wars-the-clone-wars/1wYXzjabXGVZ)
- [**Star Wars: Revenge of the Sith**](https://www.disneyplus.com/movies/star-wars-revenge-of-the-sith-episode-iii/4WvbqLFumNvi)
- [**Solo: A Star Wars story**](https://www.disneyplus.com/movies/solo-a-star-wars-story/7ks3IYr1eU2P)
- [**Star wars: Rebels**](https://www.disneyplus.com/series/star-wars-rebels/64MCZgAzY0Zw)
Star Wars Marathon!
- [**Bones**](https://www.primevideo.com/detail/0HBVL22LMA40B0XBY30RUOC9EH/)
Our new show for lunch/dinner/off time. Player 2 totally loves this and was very happy to know we could watch
it in order, since on the TV Channels they emit it here episodes seem to be randomized for some reason, so you
could watch an episode of the second season followed by another from the last one.
## Games
- [**Final Fantasy VII: Remake**](https://store.playstation.com/es-es/product/EP0082-CUSA07187_00-FFVIIREMAKE00000)
I finally put an end to it. [My review in a separate post](/blog/2020/10/15/final-fantasy-vii-remake-my-review/)
- [**A Short Hike**](https://www.nintendo.es/Juegos/Programas-descargables-Nintendo-Switch/A-Short-Hike-1821799.html)
A short (as the name implies) adventure of the path to hike a mountain and all the people you met in between. Love the art style and the simplicity of the game.
Liked the idea of having the achievements directly on the switch too, in-game. (I miss that from Steam on the Switch)
I'm a fan of this kind of games you can enjoy and put an end to them in a few hours.
- [**Terraria**](https://store.steampowered.com/app/105600/Terraria/)
![My terraria state](terraria.jpg)
We managed to **complete it**. Which in our case meant getting al achievements. It was a really fun
ride! This game is easily one of my favourites and for the price you can get it is completely a must, you get
an incredible amount of content and entertainment, better played with friends!
- [**Starbound**](https://store.steampowered.com/app/211820/Starbound/)
Terraria, but in **space**! And I have a MECH!
![My mech in Starbound](starbound.jpg)
- [**Graveyard Keeper**](https://www.nintendo.es/Juegos/Programas-descargables-Nintendo-Switch/Graveyard-Keeper-1579157.html)
Got this for the Switch because it was supposed to be more linear and light than Stardew Valley, but upon
starting I got tons of things to do and it got a bit overwhelming for me right now, wanted something more
lightweight to play at the moment. On hold for now.
- [**10 mg :)**](https://store.steampowered.com/app/1425380)
This is a really small game (10mg stands for 10 minute games) as a tribute to the arcade classics with some kind of twist.
I got near 20 minutes of gameplay from this and it was fun to go through it :)
## [Articles](https://t.me/fmartingr_articles)
- [Why most Hacktoberfest PRs are from India](https://pulkitsharma07.github.io/2020/10/02/hacktoberfest-india/)
- [PinePhone Camera pt4](https://blog.brixit.nl/pinephone-camera-pt4/)
- [The Reason Some Say New York City Is Dead Forever](https://www.youtube.com/watch?v=EMs07SPo5rk)
- [How does Base64 works](https://www.pixelstech.net/article/1457585550-How-does-Base64-work)
- [How I built an IPFS crawler with libp2p](https://adlrocha.substack.com/p/adlrocha-how-i-built-an-ipfs-crawler)
- [How DAT works](https://datprotocol.github.io/how-dat-works/)

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

View file

@ -0,0 +1,62 @@
+++
date = 2020-11-08
title = "Setting up TP-Link's Archer C5400 in AP mode"
+++
I recently bought a firewall router for home to improve our general stability (ISP provided routers kinda suck) and
improve security at home. The more smart devices connected to the network the more concerned I become of this kind
of stuff.
In this case my problem was very simple: I have the firewall router and the access point router. My access point
router (TP-Link's Archer C5400) exposes it's own DHCP server over it's own LAN segment. For my firewall router to
work properly it has to recognise all devices on the network and with the access point creating it's own LAN,
everything connected via Wifi was showing up in the firewall as one device (the access point router).
![Archer C5400](c5400.jpg)
<!--more-->
The router's interface didn't allow me to set up AP mode, thus only letting me use it as a router. I contacted support
and they told me that the version the router I had (V1) didn't support AP mode only the newest version (V2, from 2017)
supported it, or some other latest devices.
I didn't want to gave up on my router because it improved my wireless performance at home significantly from the ISP
router and even some Unifi's I tried in the past but in the end I got an AX6000 to try it out (which was the newer
version of the one I have so I expected it to perform similarly).
We tested it for some days and wireless performance wasn't as good as with the C5400 and some of our devices lost
connectivity from time to time so I ended up returning it and keeping the one I had.
After thinking for a while and even considering looking for a C5400-V2 I tested to manually set it up on my access
point before wasting more money on devices, after all, I was very happy with this one. And to my surprise I could
enable AP mode on the router very easily.
## Instructions
1. Connect to your C5400 via Wifi (Ethernet should work as well)
2. Disconnect the WAN cable from the router (you will lose internet connection but you can access the C5400's web
interface)
![Internet](internet.png)
3. Disable DHCP. You will retain your lease until you reconnect again.
![DHCP](dhcp.png)
4. Give the router a free IP address from the range your router is exposing on it's LAN segment.
![LAN](lan.png)
In this case the LAN segment is `192.168.1.0/24` and the DCHP esposes from the `192.168.1.150`-`200`,
in order to have the IP easily accesible I gave it the `192.168.1.2` while the router is the `192.168.1.1`.
5. Connect an ethernet cable coming from the router to a LAN port (**not WAN**).
6. Reboot your router.
After your access point has finished rebooting it should have the IP address you set on the LAN settings and
all devices connected to the access point should have their IP Addresses allocated by the router, successfuly
making the C5400 a proper access point.
I'm unsure if this works in other models as well, but I belive it should and if you came here looking for a
change give it a try and let me know if it worked for your model as well so I can update the post accordingly.

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 987 KiB

View file

@ -0,0 +1,150 @@
+++
title = "November 2020"
date = 2020-12-01
+++
Checking my images it seems this month I didn't have anything remarkable from the outside so... I just
wanted to share that this month I have given myself some very nice meals and I improved the
Katsu Curry recipe quite a bit. I'm not good at cooking by any means, but the relax you get
from listening to music while cooking some healthy food is pretty good.
[![This month I've made myself a lot of nice meals](image.jpg?width=640#center)](image.jpg)
<!--more-->
## Projects
- [**Switch games json**](https://github.com/fmartingr/switch-games-json)
I made a simple script to parse and expose the Nintendo Switch game list in JSON including the encrypted title ID
field that is used on the screenshots on the system. The JSON list is generated every day from the Switchbrew wiki
and exposed via Github pages.
The main problem here is that not every game is present on Switchbrew, so I'm unsure how to automate this without
asking people to pull request missing games or doing that myself (for the ones missing). I need to check if the same
title ID filed that is required to get the proper encrypted field is present on the eShop's API. If that's the case
it would be possible to get the list for all games _easily_.
- [**Games Screenshot Manager**](https://github.com/fmartingr/games-screenshot-manager)
Related to the one above, an application to fetch and sort all screenshots found from several providers and games.
Currently working for Steam, Nintendo Switch and some games on several operating systems. I'm starting to like this
_golang_ thing. :D
- [**Butterrobot**](https://github.com/fmartingr/butterrobot)
I've been making slow progress with the admin interface. I'm trying to keep it as simple as possible: a way to
check which channels and plugins there are available and an option to enable plugins with channels allowing a
JSON configuration to be used with them, since the same plugin on a different channel would require a different
output. I hope to have something useful on December if my time allows.
- I've also spent some time playing with:
- **My Raspberries**: Playing with different OSs, booting from USB, setting up Home Assistant properly, ...
- **Firewalla**: Setting up my network devices, assigning IPs and understanding it's inner workflows a bit. I've
also setup Pi-Hole inside it as main DNS server replacing the one they use.
- **Alpine Linux**: On the Pis and containers to understand the difference with other OSs.
- **Arch Linux**: I'm currently starting from scratch my Dell XPS 13 using Arch Linux base, and while it's more work
than a _Next, next, next, finish_ install I'm enjoying it quite a lot since the result you get is a minimal install.
- I'm working on blog posts for the Arch Linux installation, Alpine on Raspberry and self-hosting my smart devices
using Home Assistant so the blog have more content than the monthly updates. Another mini-posts for the tools I
self-host myself will
- Infra side it seems that my docker services via an VPS as door from the internet through an SDN to my home server
keep achieving 100% uptime from some months now, only going down if I test something on a dev service.
Problem is that even if it _works_, the containerized setup with two load balancers, SDN and so on seems both
complex from my use case and useful if something goes wrong.
I'm considering either moving to a simpler approach (non-containerized) or go all-in containerd and use something
like [k3s](https://k3s.io) to orchestrate the server at home. I would have an excuse to add some Pis and clusterize
everything properly.
I still don't know the path I'm going to take with this.
## Books
- [**The Magicians' Guild**](https://www.goodreads.com/book/show/28249.The_Magicians_Guild) (_Trudi Canavan_)
Ongoing. I try to read a chapter a day if time or focus allows. I'm actually enjoying the story so far, even if
reading anything magic related after Mistborn seems dull.
## TVShows and Movies
- [**Star wars: Rebels**](https://www.disneyplus.com/series/star-wars-rebels/64MCZgAzY0Zw)
- [**Rogue One: A star-wars Story**](https://www.disneyplus.com/movies/rogue-one-a-star-wars-story/14CV6eSbygOA)
- [**Star Wars: A new hope**](https://www.disneyplus.com/movies/star-wars-a-new-hope-episode-iv/12fVeZxD2fWJ)
- [**Star Wars: The empire strikes back**](https://www.disneyplus.com/movies/star-wars-the-empire-strikes-back-episode-v/iqtDTZAewwYl)
Star Wars Marathon continues!
- [**Bones**](https://www.primevideo.com/detail/0HBVL22LMA40B0XBY30RUOC9EH/)
Slowly and steady our _joker_ when we don't know what to put on TV over meals.
- [**Mandalorian**](https://www.disneyplus.com/series/the-mandalorian/3jLIGMDYINqD)
It's back! This is why I look forward to Fridays now.
- [**The Blacklist**](https://www.netflix.com/title/70281312)
I discovered this randomly because the trailer poped up on my Netflix feed. The premise seemed interesting
and James Spader is such a great actor... Not sure how I managed to convince the Player 2 to watch this but
it seems she's enjoying it too. Kinda different from what we usually watch together, but welcome nevertheless.
## Games
- [**Forager**](https://store.steampowered.com/app/751780/Forager/)
I completed all the achievements a while ago, but the author decided to add more... so I just fire this up
from time to time to try and maintain Forager on my Steam Perfect Games list.
- [**Minecraft**](https://minecraft.net)
Oh my, this again? It seems so. Some friends wanted to get on the _blocky_ train again. I have been out of
Minecraft for a good while (years!) and it seems interesting to come back after all this time. There are
some new things to explore and since I didn't really "finish" the game back in the day... let's see how
this goes.
Spoiler alert: We spent more time constructing stuff rather than _progressing_ through the game.
- [**Pyramida**](https://store.steampowered.com/app/1390010/pyramida/)
From Sokpop, the creators of Simmiland. A simple village builder game that seems minimalistic and fun in
the same way their other games are. I don't play this often since a play session can last a while (as it happened
with Simmiland) but let's see if I manage to get every achievement.
- [**The legend of Zelda: Age of Calamity**](https://www.nintendo.es/Juegos/Nintendo-Switch/Hyrule-Warriors-La-era-del-cataclismo-1838129.html)
The Nintendo game for this month, already going strong on my Switch. I wasn't really sure if I would enjoy a
_musou_ game even if it was Nintendo related, but so far is looking really good. I didn't though that cutting
through hordes of bokoblins would be so satisfactory and fun! I'm still not sure if the lore is "_canon_" or if
it truly precedes Breath of the Wild as <span class="spoiler">it seems to happen on a parallel timeline created
by a time traveler</span>, but I'm eager to know how it ends, even if the finale is the same as the sequel.
- [**Magic: The gathering (physical)**](https://magic.wizards.com/en)
This refers to the physical version of the game. We bought a starter kit and play against each other from
time to time. It's new for both of us so this is an interesting learning curve to share.
## [Articles](https://t.me/fmartingr_articles)
- [What is this Gemini thing anyway, and why am I excited about it?](https://drewdevault.com/2020/11/01/What-is-Gemini-anyway.html)
- [Raspberry Pi 400: Teardown and Review](https://www.jeffgeerling.com/blog/2020/raspberry-pi-400-teardown-and-review)
- [(podcast) Self-Hosted Show](https://podcasts.google.com/?feed=aHR0cHM6Ly9zZWxmaG9zdGVkLnNob3cvcnNz)
- [Why Arcades Are Still Thriving In Japan](https://www.youtube.com/watch?v=LWyAtbOhW2w)
- [Your computer isn't yours](https://sneak.berlin/20201112/your-computer-isnt-yours/)
- [Does Apple really log every app you run? A technical look Jacopo Jannone - blog](https://blog.jacopo.io/en/post/apple-ocsp/)
- [Response from Apple](https://social.wildeboer.net/@jwildeboer/105219402213708346)
- [We can do better than DuckDuckGo](https://drewdevault.com/2020/11/17/Better-than-DuckDuckGo.html)
- [No, "Open Source" does not mean "Includes Free Support"](https://raccoon.onyxbits.de/blog/bugreport-free-support/)
- [random(7)](https://man7.org/linux/man-pages/man7/random.7.html)
- [GETRANDOM syscall](https://security.stackexchange.com/questions/162507/getrandom-syscalls-relation-to-kernel-entropy-pool-state/175771#175771)
- [Even faster bash startup](https://work.lisk.in/2020/11/20/even-faster-bash-startup.html)
- (Spanish) [La Revolución Mandaloriana que va a cambiar el cine](https://youtu.be/FOxUAMuBtMM)
- [Booting from a vinyl record](http://boginjr.com/it/sw/dev/vinyl-boot/)
- [When too much concurrency slows you down (golang)](https://medium.com/@_orcaman/when-too-much-concurrency-slows-you-down-golang-9c144ca305a)
- [TIL: eBPF is awesome](https://filipnikolovski.com/posts/ebpf/)
- [SQLite as a document database](https://dgl.cx/2020/06/sqlite-json-support)
- [Blogging vs. blog setups](https://rakhim.org/honestly-undefined/19/)

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

View file

@ -0,0 +1,311 @@
+++
title = "Self-hosting my home with Home Assistant (part 1)"
date = 2020-12-20
+++
Even if I've been a Home Assistant's user for quite some time I have never dedicated myself to have a truly stable and dedicated service at home. I always treated it more like a pet project than anything else, but this is changing now.
I have a fair amount of _Smart Devices_ around the house and just as you come to expect they come from different companies, protocols and sizes. Each day it passes I'm more and more concerned about my privacy and the value of the hardware I do not truly own.
With this in mind I have started **the journey of self-hosting!** Which to put it simply is... every device that is in my home (with a few exceptions that you'll see later) will be controlled by this Home Assistance instance.
<!--more-->
> Note: I wanted to install this on a USB Drive, but apparently that's still not supported for _Home Assistant OS_, so I'm stuck with an SD Card for now. Some time after starting working on this I heard about [`datactl`](https://www.home-assistant.io/blog/2020/12/13/home-assistant-os-release-5/#external-data-disk) but I will setup that sometime later.
## Base Home Assistant OS using an SD Card
For this just stick to the [official documentation](https://www.home-assistant.io/hassio/installation/). Only download the latest release [from github](https://github.com/home-assistant/operating-system/releases) and copy the _img_ card to your SD Card with `dd`, Balena or the tool of choice.
Put the SD Card on your Pi, turn it on and let's get started.
## Base installation
After booting, you will be welcome with a wizard installation. Just follow the basic instructions to generate the main user/account, and the name and location for your home assistant.
Bonus: Use some website [like this](https://www.freemaptools.com/elevation-finder.htm) to get your elevation if you're feeling picky.
After that, you will be greeted by something similar to this:
[![Base install after the wizard](base.png?width=640&q=100#center)](base.png)
## Update the system
Go to your Supervisor tab and check if you have any pending updates.
## Moving to MariaDB
The default database backend is SQLite, and that has it's limitations, so let's move everything to MariaDB before any other configuration.
1. Install the File editor addon from **Supervisor > Add-ons > File editor** and start it.
2. Install the MySQL addon from **Supervisor > Add-ons > MariaDB**
3. Once installed, go to the configuration tab and set a password
4. Under the Info tab start the MariaDB Service and enable the Watchdog service
5. Go to the file editor interface and edit the `configuration.yaml` file.
6. Add the configuration for the [`recorder`](https://www.home-assistant.io/integrations/recorder/) integration:
```yaml
recorder:
db_url: mysql://homeassistant:<password>@core-mariadb/homeassistant?charset=utf8
commit_interval: 5
purge_keep_days: 90
history:
```
In this case I also set data to be stored for 90 days and a 5s delay between disk writes (since I'm using an SD Card and their lifespan is not very long with abundant I/O).
More information on the documentation: [`recorder`](https://www.home-assistant.io/integrations/recorder/), [`history`](https://www.home-assistant.io/integrations/history/)
7. Restart Home Assistant for the changes to take effect under **Configuration > Server Constrols > Restart**.
## Backups
Now another if not the most important of them all, automatic snapshots in case something goes wrong.
Go to **Configuration > Automations > Add automation**, and in top-right hamburger menu press **Edit as YAML**.
This configuration will perform a Weekly Snapshot every Monday at 3.00 AM. It is a sensible default once Home Assistant is running, but if you're going to play with it you may need to consider more frequent backups.
``` yaml
alias: Weekly Snapshot
description: 'Performs a weekly snapshot'
mode: single
trigger:
- platform: time
at: '03:00'
condition:
- condition: time
weekday:
- mon
action:
- service: hassio.snapshot_full
data:
name: 'weekly_{{ now().strftime(''%Y-%m-%d'') }}'
```
Keep in mind that this snapshots are stored on the `/backup` folder on the Home Assistant instance, you need to create a way of moving that **out** of the system. You can use other automation, SCP from another machine or any compatible tool of your choice.
## Setting up accounts and users that will use the system
This used to be more complex a while ago, now you only need to go to **Configuration > People** and add the users you need.
Now you can even add the avatar directly from the interface! Back in the day you required to upload the file and fiddling with YAMLs.
Also, for some options and add-ons to display, you need to enable "Advanced mode" on your user profile page.
![Advanced mode enabled on my user](advanced_mode.png?width=640#center)
## SSH Access
Easily handled by an integration, as almost everything with Home Assistant.
> For this add-on to show up you need to enable Advanced mode as shown in the previous step.
Just install the **Terminal and SSH** addon, add your ssh key under the configuration tab under the `authorized_keys` property, and expose a port for the SSH server on the host. After that Start the service and enable the Watchdog to monitor it in case it fails.
## Enable SSL
Even if my home assistant installation is going to be LAN only (using a VPN to have external access) I always setup SSL in all my services and while there are some options when setting this up with Home Assistant, I went the nginx way since that's what I'm more comfortable with.
Go to **Supervisor > Add-on Store** and install the **NGINX Home Assistant SSL proxy**.
Put your files under `/ssl` connecting to the instance via SSH or using any file editor addon on the store.
Under its **Configuration** tab, set up the domain and path to the certificate and key files.
``` yaml
domain: homeassistant.local
certfile: nginx/homeassistant.local/homeassistant.crt # Relative to /ssl
keyfile: nginx/homeassistant.local/homeassistant.key # Relative to /ssl
```
There are a number of guides out there to generate self-signed certificates. I have my own Certificate Authority that use to sign certificates for my local services, that way I can just trust my own CA and every dependant certificate will work out of the box.
As a note, for this to work with the companion apps on iOS you need to generate the certificates with [pretty specific requisites](https://support.apple.com/en-us/HT210176). Android worked as a charm.
## Getting the Home Assistant Companion
Download the application from your phone's store and after logging in you can setup the sensors to be sent to Home Assistant, this will be linked to your account so you could perform automation with them on the server.
Apart from using the app to control your home devices, the sensors will be useful to generate automation in the future.
Another useful thing to setup here is the local (LAN) address to use when the phone is connected to Wifi at home, using an external hostname when connecting via VPN/RemoteControl.
## The first automation: tell me about updates
I use an script to send notifications to all devices (persons) on the house, with the `title` and `message` parameter:
``` yaml
alias: Send Notifications
sequence:
- service: notify.mobile_app_oneplus6
data:
title: '{{ title }}'
message: '{{ message }}'
# Insert more notifcations into sequence
mode: single
variables:
title: null
message: null
```
And this automation will check when there are any updates and send a notification using the previous script with the version number that just came in:
``` yaml
alias: Update notification
description: "Notify everyone when there's an update available"
trigger:
- platform: state
entity_id: binary_sensor.updater
from: 'off'
to: 'on'
condition: []
action:
- service: script.send_notifications
data:
title: New Home Assistant Release
message: >-
Home Assistant {{ state_attr('binary_sensor.updater', 'newest_version')
}} is now available.
mode: single
```
![Update notification on my phone](update_notification.jpg?width=640#center)
## Add system sensors
I want to control how the Raspberry is doing, so I'm going to enable some system sensors using the [`systemmonitor`](https://www.home-assistant.io/integrations/systemmonitor) sensor.
Edit the `configuration.yaml` file and add the following:
``` yaml
sensor:
- platform: systemmonitor
resources:
- type: disk_use_percent
- type: memory_use_percent
- type: swap_use_percent
- type: load_1m
- type: load_5m
- type: load_15m
- type: processor_use
- type: processor_temperature
- type: last_boot
- type: throughput_network_in
arg: eth0
- type: throughput_network_out
arg: eth0
```
This requires a Home Assistant restart for the changes to take effect.
I also added a custom lovelace dashboard to monitor everything easily, here is the YAML configuration:
``` yaml
views:
- title: Overview
path: overview
icon: 'mdi:eye'
visible:
- user: be3b6f5bc71c49ff9be6830d545cb4e0
badges: []
cards:
- type: grid
cards:
- type: gauge
entity: sensor.processor_use_percent
min: 0
max: 100
name: Processor
severity:
green: 50
yellow: 75
red: 80
- type: gauge
entity: sensor.memory_use_percent
min: 0
max: 100
severity:
green: 50
yellow: 65
red: 75
name: Memory
- type: gauge
entity: sensor.disk_use_percent
min: 0
max: 100
name: Disk usage
severity:
green: 50
yellow: 60
red: 75
- type: gauge
entity: sensor.processor_temperature
min: 0
severity:
green: 45
yellow: 50
red: 55
max: 70
name: Temperature
- type: gauge
entity: sensor.load_5m
min: 0
max: 4
severity:
green: 1
yellow: 2
red: 3
title: System
```
And here's a preview:
![Home Assistant simple system monitor lovelace dashboard](system_monitor.png#center)
## Adding integrations
At this point if you already have devices on your network your Home Assistant will send you a notification like this:
[![Notification telling that devices where found on network](notification.png#center)](notification.png)
So I'm going to setup the base integrations with the server to start controlling some devices.
### Chromecast
> But you said self-hosted! Yeah, yeah... And I want to, but there's no real alternative to the Cast protocol to self host, the speakers with Chromecast devices are just so convenient...
One of the simplest things to set up, just go to your integrations and add it. It will prompt you to select in which rooms each Chromecast device is and that's it.
[![Chromecast configuration](chromecast.png#center)](chromecast.png)
### Weather (OpenWeatherMap)
I'm going to use the [`OpenWeatherMap`](https://www.home-assistant.io/integrations/openweathermap/) integration because it provides more sensors than the one setup by default.
You just need to [register to the service](https://openweathermap.org/) and enable the integration under **Configuration > Integrations > OpenWeatherMap**, supply your API key and set the mode to __onecall_hourly__ which will download 3h forecasts each hour, enough for the free tier.
> I had to wait for an hour or so until the API Key was valid for the integration to use, it keep saying **Invalid API Key** until I received a confirmation email for my account.
### Phillips Hue
Linking the Phillips Hue is super easy, you only need to add the Hue integration, select the bridge IP from the dropdown (or input one manually) and press the button on the bridge to confirm.
After selecting in which area the bridge and bulbs are in, you're good to go.
> **BONUS:** Since the comunication is done via LAN with the bridge, the bridge itself doesn't need internet access to work (as I have mine blocked in my firewall). Also in my case this is only temporal since I will move every Zigbee device to a cluster controlled by Home Assistant.
### Tuya (Smart Things)
This is one of the dependencies I have that I'm most eager to get rid off, but for now there are some smart plugs at home that I need to control.
Going to **Configuration > Integrations > Add** the **Tuya** is on the list; you need to enter your username, password and country code for the integration to communicate with the Tuya API, so your devices will require internet connection.
The plan is to try and flash the plugs with Tasmota to free them from the _cloud_ and any new ones I'm getting will be Zigbee compatbile with the hopes on having only Zigbee smart plugs at home.
## Closing
That was easy!
The folks at Home Assistant have been working on this so good that almost everything can be done from the interface now. I see any _normal_ user working with this mostly plug and play from the UI which is amazing in my opinion.
In future post I will dive into my Zigbee configuration, InfluxDB, ESPHome, Alarms ... there's so much to do!

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB