The smallest Git commit
I was wondering: Just how small can a Git repository be?
I was wondering: Just how small can a Git repository be?
A new year, a new website! I've redone my website again and now use my cool laria.me domain to host it.
It's mostly a blog and my plan is to write long-ish articles here from time to time, instead of the mostly really short articles from my old blog, although I've imported some of them, so it's not so empty here.
Both! And I love it already! It's an Ideapad Yoga 11s from Lenovo.
I needed a small portable computer for my daily commuting. I want to do something useful with that 90 minutes on the train every day (okay, let's be honest, I will mostly surf reddit once I get mobile internet, can't decide on a contract yet, they are all shitty).
I needed to tag some MP3 files to transfer them to my Hi-MD player (I know, I'm a technological caveman sometimes...). Since I have the most important music infos encoded in the directory structure, I could write a little shell script to automate this.
#!/bin/sh # Mass retagging of mp3 files that don't have ID3 tags. # The MP3 files must be named like this to use this script: # ./<first letter of artist>/<artist>/<album>/<track number> - <title>.<file extension(s)> # ^-- The current working directory exsomething() { echo "$1" | sed 's#'"$2"'#\1#'; } exartist() { exsomething "$1" '^\././\([^/]*\)/.*$'; } exalbum() { exsomething "$1" '^\././[^/]*/\([^/]*\)/.*$'; } extrack() { exsomething "$1" '^\././[^/]*/[^/]*/0*\([0-9]*\)\s*-.*$'; } extitle() { exsomething "$1" '^\././[^/]*/[^/]*/[0-9]*\s*-\s*\([^\.]*\)\.[^\.]*$'; } hasinfo() { id3info "$1" | grep Title >/dev/null; } retag() { id3tag -a"$(exartist "$1")" -A"$(exalbum "$1")" -s"$(extitle "$1")" -t"$(extrack "$1")" "$1"; } find -type f | while read fn; do if ! hasinfo "$fn"; then retag "$fn" fi done
https://gist.github.com/silvasur/4508b9c695a124f239ac
This is why a Unix-style system beats Windows: You can combine simple tools with a simple, yet powerful programming language to automate almost everything if you want to. On Windows you'd probably have to download a 3rd party program for that.
Apparently not many big things have happened in the field of programming in the last 40 years. This talk shows many awesome techniques that were invented back then. They still aren't in widespread use.
https://www.youtube.com/watch?v=VYP_YL7O2yg
One of the creators of Legend of Dungeon (A cool game you should check out!) beats his own game for the fisrt time (yes, it's that hard). Highly emotional moment.
https://www.youtube.com/watch?v=NCbb86jphn4
This video explains the magic behind the fantastic Cruisin 3 demo (here is the original video).
http://mndlbrt.onekb.net. The link is dead now, so here is a version hosted on this page.
onekb.net offers ultra cheap hosting... if you can fit your stuff into 1024 bytes!
I decided to write a mandelbrot renderer in 1kb. mndlbrt is the result! You can zoom and even share the current image with others (the URL automtaically updates to represent the current area). Also learned a bit about the HTML canvas in the process, which has a surprisingly sane API for webstandards.
https://www.youtube.com/watch?v=cN_DpYBzKso
A great talk from Rob Pike about concurrency and the Go programming language. Definietely worth the 30 minutes.
https://www.openstreetmap.org/changeset/20834790
I got a GPS today, the etrex 10 from Garmin. Cool little device :).
Recorded a GPS trace and added some previously unmapped paths to OpenStreetMap (which is a cool project BTW).
http://commandcenter.blogspot.de/2014/01/self-referential-functions-and-design.html
Cool idea for designing options in Go.
http://www.youtube.com/watch?v=RIctzAQOe44
Cool talk about X11 and Wayland.
A hobbyte!
I have made some improvements to biomed, my biome editor for Minecraft maps:
Dave Baggett describes the horror of hardware bugs. Very interesting read!
https://code.laria.me/mailremind
I've written a web-based service that allows you to send yourself an email based on a schedule: mailremind.
Why? Because I often send myself an email to remind me of something and I thought it would be useful if I could send mails in the future or based on a schedule (e.g. useful for birthdays).
If you also think this is useful, you can have your own installation (it is quite easy to configure), or you can use my public mailremind installation: mailremind.silvasur.net
I updated gomcmap, my Go library for handling Minecraft maps.
I updated biomed. A bug in the weather condition fix code was fixed (snow could fall through glass because of Minecrafts weird definition of a height map).
There is now also an experimental minecraft-1.7
branch which adds the new biomes that the recently released snapshots introduced. When Minecraft 1.7 is out, I wil merge that branch into master.
https://www.youtube.com/watch?v=UrrHelRzGjg
Awesome chiptune-style track from Endzeitkind.
Including background artwork from me :-).
http://www.youtube.com/watch?v=LtDY-kBUjUM
Awesome band that played on the "Freiheit statt Angst" rally in Berlin.
http://www.robotloveskitty.com/LoD/
An awesome roguelike game with nice pixel art and a phantastic lighting system. Tons of fun to play!
Thanks to Endzeitkind for suggesting the game in his "Indie Spotlight" series.
http://www.guardian.co.uk/world/2013/jul/11/microsoft-nsa-collaboration-user-data
And that's why you shouldn't use a proprietary operating system...