63 changes: 63 additions & 0 deletions posts/2011-08-21-new_computer.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
---
layout: post
title: New Computer!
category: Computer
tags: General, Computer
time: 13:23:41
---
I briefly mentioned my new computer in [the last post](/blog/2011/08/18/resurrection) and I thought I'd make a post about it, as it's awesome (as all new computers are).

Firstly, the specs:

**GPU:** Gigabyte GeForce GTX 550Ti OC 1GB
**CPU:** Intel core i5 2500K
**CPU cooler:** Zalman CNPS-9900NT
**Motherboard:** MSI P67A-C45 REV B3
**Ram:** Corsair 4GB (2x2048MB) CL9 1600Mhz XMS
**Harddrive:** 1TB Samsung Spinpoint F3 HD103SJ
**PSU:** FSP Aurum 400W 80+ Gold
**Displays:** 2 x Dell U2211H ultrasharp 21,5" widescreen
**Keyboard:** Das Keyboard - Ultimate Model S Silent
**DVD burner:** Samsung DVD±R/RW/RAM
**Case:** Fractal Design Define R3, Black

Secondly, the look:
<div class="center">
<img src="/media/images/overall1.jpg" width="600" />
</div>

I wanted the computer to be fast and silent and I *had* to have two screens. I had a budget of 12,000 SEK and almost managed it too.

The screens I chose are two fairly large widescreen IPL screens, very solid, but they quickly ate up about a third of my budget... In hindsight it was a good investment, they're absolutely wonderful!

The processor was fairly straightforward to choose - the i5 2500K is a beast for it's price. I don't really need 8GB ram, I think I've used 2GB max before so I just stuck with 4 this time. The motherboard is nothing special but I don't need it to be either.

I've got about 4TB of storage laying around here so I don't need any more really, but I chose a relatively fast and silent 1TB disk. I'd love to get a SSD but I couldn't squeeze that into the budget.

Although you can say you don't need a DVD reader/burner in this era of usb sticks it's still nice to have, especially since I've got a few installation disks I'd like to use. A small fee that saves time I'd say. Floppies are dead for me though.

I also wanted it to be quiet and according to some who probably knows better than me by far the biggest noise source is the stock CPU silencer - so I threw down one which looked good. In hindsight it works great too.

The case looks good and it was also solid, no qualms there. But the one big issue I had was the graphics card, oh how hard it was! I wanted something silent, something from Nvidia (Ati drivers used to suck on linux, but maybe not anymore), something that's reasonably powerful and also cheap. Not a bad combination I say! I think I chose something reasonably good - the fan is very silent, it's a good chipset and it wasn't all too expensive. However I haven't gotten any games to work with it on linux but that's probably a configuration issue, annoying anyway.

<div class="center">
<img src="/media/images/das3.jpg" width="600" />
<em>Keyboard, Das Keyboard</em>
</div>

The keyboard, oh the keyboard! I got it in my head that I had to have a mechanical keyboard, they're supposed to be a lot better than the "regular" ones. And oh yeah it's absolutely wonderful, it's a joy to type in and I'm already irking when I have to go back typing on another keyboard. But it is a tad too load according to Veronica, and it was oh so *expensive*.

<div class="center">
<img src="/media/images/overall2.jpg" width="600" />
<em>My workspace!</em>
</div>

Overall I'm very happy and I don't think I would've done anything different if I were to buy it today, except maybe try an Ati card, some say the drivers aren't bad at all anymore.

Finally some more pictures:
<a href="/media/images/inside1.jpg"><img src="/media/images/inside1.jpg" width="200" /></a>
<a href="/media/images/case.jpg"><img src="/media/images/case.jpg" width="200" /></a>
<a href="/media/images/cables.jpg"><img src="/media/images/cables.jpg" width="200" /></a>
<a href="/media/images/inside2.jpg"><img src="/media/images/inside2.jpg" width="200" /></a>
<a href="/media/images/das1.jpg"><img src="/media/images/das1.jpg" width="200" /></a>

37 changes: 37 additions & 0 deletions posts/2011-08-28-getting_comfortable.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
---
layout: post
title: Getting Comfortable
category: Computer
tags: General, Computer
time: 14:01:27
---
So I physically built [the computer](/blog/2011/08/21/new_computer) and now I've been using it a while, configuring stuff and getting used to my new screens. I think they're about three times wide as my old laptop and now I have this one huge vertical space which is absolutely wonderful for surfing forums and reading code. Damn I love coding on it! When I go back to the laptop I feel cramped..

And while we're at dissing the old - I can never ever like another keyboard again! Well, at least not another rubber dome or scissor switch one.

<div class="center">
<img src="http://geekhack.org/attachment.php?attachmentid=21009&amp;d=1310786771" width="300" height="200" />
<img src="http://geekhack.org/attachment.php?attachmentid=20092&amp;d=1309957367" width="300" height="200" /><br />
<em>Rubber dome and scissor switch</em>
</div>

No this day forward I'm a mechanical keyboard fantast. You might think I'm crazy but the difference is pretty huge, before my fingers got tired but now they don't and it's even fun to type again!

If that got you interested you need to read [this geekhack post](http://geekhack.org/showwiki.php?title=START+HERE+--+The+Geekhack+Mechanical+Keyboard+Guide+-+Includes+Glossary+and+Links), it's nice to say the least.

Back to my screen setup again - yes everything with my new computer is either the monitors or the keyboard - I wanted to use [xmonad](http://www.xmonad.org) without relying on xfce this time. I like xfce as a truly lightweight window manager but a tiling window manager is just vastly superior, and the xfce statusbar is pretty ugly..

I set up a nice looking statusbar and some stuff on the desktop with [conky](http://conky.sourceforge.net/). I've been wanting to set up a todo list and while I was at it I put up my assignment due dates and my schedule too. And never forget the ever so important manga updates!

<div class="center">
<a href="/media/images/xmonad-left.png" ><img src="/media/images/xmonad-left.png" width="180" /></a>
<a href="/media/images/xmonad-right.png" ><img src="/media/images/xmonad-right.png" width="400" /></a><br />
<em>My dual screen setup, click to enlarge</em>
</div>

A nice little feature I added down on the right is the time in various timezones, they adjust to summer time on their own dates and they change the abbreviations too - from CEST to CET and so on.

Something that didn't go smooth at all is the gaming - I couldn't ever get any games to work with wine! After a while I found out that an older driver solved the problem, but most games still don't work with dual screen. So I kinda have to switch between two config files, but that works too I guess.

All my config files are up on [github](http://github.com/treeman/dotfiles) as well if you're interested.

22 changes: 22 additions & 0 deletions posts/2011-09-04-back_to_training.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
layout: post
title: Back to Training
category: Taekwon-do
tags: General, Taekwon-do
time: 13:56:19
---
Five days of school now and things are starting to settle down a bit. The courses are pretty cool; we have linear algebra which is pretty interesting, we have a java course where we're going to make a game (!) and one about structures and algorithms. Pretty promising but we'll see how things pan out.

Taekwon-do practice has started and it's awesome. In the beginning it's so hard so I always wonder why I continue, but in the end it's really fun and it feels good after. If you haven't tried it you really should, or some other martial arts cause it's pretty cool.

It's a perfect training for both mind and body. You might think it's just mindless hardship thanks to all the martial arts movies/anime/manga with crazy training, but you're also training your awareness, your creativity and decision making and more. Especially when sparring it's absolutely paramount that your head is with you, doesn't matter how fast or strong you are, if you don't fight with your head you're pretty screwed. That's what I really like about it, it's a pretty smart training.

<div class="center">
<img src="http://www.iuilhanguil.com.ar/images/tkd.jpg" /><br />
<em>Easy! Or maybe not?</em>
</div>

What I don't like however, and this is totally unrelated to anything, is the rain! I went to school five days and I got soaking wet *five* times! Hrblr... That's why I've decided to do absolutely nothing today, I might watch some GSL and read a bit. I've got [Learn you a Haskell for Great Good](http://learnyouahaskell.com/), [Effective Java](http://java.sun.com/docs/books/effective/) and [Thinking in Java](http://www.mindview.net/Books/TIJ/) who can hold me company a bit.

And then there's Taekwon-do training of course!

51 changes: 51 additions & 0 deletions posts/2011-09-12-10_games_in_10_languages.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
---
layout: post
title: 10 Games in 10 Languages
category: Game Making
tags: Games, News
time: 11:18:19
---
For school we have this programming course for Java. It isn't anything special really and it would be really boring if I don't like to program, it almost is anyway, if it weren't for the fact that we're to create a game! Just any game will do and we're in a group of two and we have about a month to complete it. Mmh I like.

Me and Li, my conspiring friend, have a pretty decent idea of something we can make. The only minor thing is that neither he nor I know anything about Java. Turns out I've done [some gamemaking](/games) in mostly C++ and it's really not different so we'll see how the game finishes.

Now this game me a bit of an idea, or rather it resurfaces and older idea, namely to make a few games in a couple of different languages. I like to explore different languages and I like to make games so why not combine them?

I'll try to make 10 different games with 10 different languages, starting with this Java game. I won't make this one alone but that hardly matters I guess, there's plenty of time to code in solitude later.

These are some I had in mind:

1. Java
This one is slated for release in the middle of October

2. C++
I'm not sure if this one is considered cheating? I mean I've made a few already.

2. C
I haven't done much pure C, and this looks like a nice time as any.

8. Lua
I've used you to change values without compiling before, but do you have more to offer me?

3. Clojure
I do love lisp and as it runs on the JVM it shouldn't be too different from Java.

4. Scala
Scala is one of those languages you just *got* to try someday. Also a JVM, piece of cake right?

6. Perl
Perhaps my current favorite language, it's just so fun to write you know?

9. Python
When you're gonna do the [Ludum Dare](http://www.ludumdare.com/compo/) many are recommending you to use Python with [PyGame](http://pygame.org/), it's time to find out why.

10. [Coffee-script](http://jashkenas.github.com/coffee-script/) + html 5
One of the more hyped up web technologies right now and I haven't used them? Shame on me.

5. Haskell
Oh Haskell, I've tried to get you down the last two summers but you won't quite let me. Enough is enough, you're going down!

I might change one or two later on if I find something better to try out (C++ is a bit lazy to include) and I certainly won't do them in this order. There's a big chance I won't do them once a month either, but that's the general goal I'm setting up.

Now it's time to do some other, more boring, school work...

23 changes: 23 additions & 0 deletions posts/2011-09-16-design_for_hackers.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
---
layout: post
title: Design for Hackers
category: Books
tags: General, Design, Books, New stuff
time: 16:28:48
---
I get these.. urges sometimes. Not like [Dexter][dexter] no, but sometimes I just *have* to buy a specific thing. It happened again yesterday (or was it the day before I don't know) when I saw [this post][post] on [hackernews][hackernews].

It's a book this time, again, but this is something a little different - it's about design. Now I know nothing about design but I've enjoyed designing some sites and I really like to design games but I don't have a clue how to do it in a structural manner. I just try different colors and different stuff until "hey that looks kinda good" and it's done! That's not how you make something useful or something that looks good - good design. But this book seems to teach you just that!

It's a book for hackers, in the original non-journalistic definition, and it explains stuff in a logical manner! Now I might get a feel for why I think something looks good and I might even be able to improve on it? Happy times!

The only issue is that I promised myself to not order any more programming books until I've gone through the ones I have - but this isn't one so it should be okay! So now I made myself to promise that I'll do the math assignments for the week and then I can order!

Instead of writing this I really should do them then.

Hrrmm...

[dexter]: http://www.tvrage.com/Dexter
[post]: http://www.kadavy.net/blog/posts/d4h-is-here/
[hackernews]: http://news.ycombinator.net/

29 changes: 29 additions & 0 deletions posts/2011-09-30-being_productive.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
---
layout: post
title: Being Productive
category: General
tags: General, Productivity, Status
time: 14:30:21
---
School's been going on now for... Is it a month and a half maybe? I don't know really but it's all going so fast, week after week is disappearing and I don't know where they go but I know that I'm at least not wasting them like I did most of last year!

Last year I managed school sure, but without doing anything special. Well if you don't count watching nearly every GSL live (from 06-09 or 11-13 on weekdays) which is pretty awesome. But that's also taking away a lot of time when I could've (and often should've) studied - sadly I skipped a lot of school last year. I admit GSL can't explain it all, I was lazy okay!

This year I'd like to a bit better and it has started out fine. I haven't skipped a single lecture yet (Java doesn't count!!) and I'm not too far behind in anything and a bit ahead in others, in summary I'm doing great, heh.

Aside from school though, which is almost even more important, I'm feeling good and getting things done. Our home hasn't burned down yet so that's some success right there, but I'm taking it even farther and taking care of some cooking and stuff too, of course with Veronicas help but anyway. I'm also increasing my [Taekwon-do](/blog/2011/09/04/back_to_training) training, doing some reading and a bunch of other stuff. Programming too!

I took the advice of [Cal Newport](http://calnewport.com/blog/) and now I actually plan my days, every day, on the morning or the night before. Here's an example:

* 0730 - 0900 Program
* 0900 - 1000 Call OnOff, electric company, DN, corren
* 1000 - 1100 Program
* 1100 - 1130 Food
* etc..

Of course I don't really follow it to each and every point, but it helps me know what I need to get done this day. Often I skip and I reorder and I do other stuff a lot but if I've done at least half of what I set out to do I've been more productive than I'd usually be! And I even remember to do stuff like make a prenumeration on DN which I would *never* had otherwise.

Something else that's helped me is a regular and healthy sleeping pattern - go to sleep and wake up at the same time, every day.

I'm feeling good about school and everything but I've got stuff left to do so don't see it as a perfect example - far from it to be sure, but it's a step in the right direction I guess.

11 changes: 11 additions & 0 deletions posts/2011-10-19-design_for_hackers_has_arrived.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
---
layout: post
title: Design for Hackers has arrived!
category: Books
tags: General, Design, Books, New stuff
time: 21:25:57
---
<div class="center"><img src="http://designforhackers.com/wp-content/themes/D4H/img/book-image.jpg" /></div>

It's here! After about a month of waiting I've finally gotten the book that will make me a design god! Or at least make me *aware* of something called design. Joking aside I'm really terrible at design and making things look good. Admittedly my programming art for my games has gradually improved but I honestly don't know what I'm doing, I just mess around until I get something decent. Maybe this can be a small aid? I even have some websites I want to design, and while I'm at it I want to try the [Perl web framework mojolicious](http://mojolicio.us/) which looks totally awesome!

34 changes: 34 additions & 0 deletions posts/2011-10-19-the_end_of_the_tunnel.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
---
layout: post
title: The End of the Tunnel
category: General
tags: General, Status
time: 21:18:24
---
Lately I've been feeling like there's been a shit-ton of stuff going on, quite a turn-around from the [last time](/blog/2011/09/30/being_productive).

One course about data structure and algorithms (super fun to be honest) has wrapped up. We thought we were ahead with the assignments but in the end it got very stressful. I sat up pretty late trying to optimize our code from 0.16 to below 0.15 seconds and it almost drove me crazy...

My last resort was to convert all strings to integers and do some funky bit shifting operations but it got too late so I had to go to sleep before making it work correctly. Of course I couldn't sleep and I lay and thought about all the things I didn't do or where I could've messed up. I woke really early, couldn't sleep, and I went to fix it before our presentation that morning and look and behold! It was fixed in less than 15 minutes and it was blazingly fast! It's funny how sleep or a nice shower can solve almost any problem you have, except hunger I guess.

While this was going on I also took part in a competition of some sorts in connection with the course. There was a programming problem after each lecture that we had to complete and the goal was to get as few hours as possible after the problems were released. Most problems were quite easy but there were a few hard ones. One I also lost some sleep over! But again I woke up and had to run to the computer to try to solve it... At least I won some money for some lovely new books so I guess it was worth it.

<div class="center"><img src="/media/images/sneak.png" /></div>

We're now finishing our other course, [the one with the Java game that spurred me to wanna make more games](/blog/2011/09/12/10_games_in_10_languages), and I think I spent a bit too much time on that... The game turned out pretty cool, I will make a post about it tomorrow I think, but it was a level or two above the actual demands I think so we could've chilled and not stress that much. And now we *only* have to document it! Describe how all the classes work with UML and some blocks of text... Sigh.

And oh yeah, we had totally forgotten to write a project specification that was supposed to be handed in over a month ago and we had completely missed the deadlines for the *other* assignments in that course. Luckily the deadlines were only suggestions and our assistant was cool about the specification too so we survived with our head still intact.

It just seems so silly though. Why did we wait with the other assignments, I think I did them in one day or something, until the very last second? It seems like I've been here before, and I don't like it. This time I had a bit more control over the whole situation but it's still not quite good enough.

Anyway now when this is all finishing up I can start to relax again. But then the thought creeps up on me: what's next?

I'm probably gonna program, make a game or two, go through a language, read some books, train a lot... Urr I'm getting all stressed out just thinking out loud like that!

No I need to relax. Maybe read some more manga? Yes, that is indeed a good idea...

<div class="center">
<img src="http://i.imgur.com/WwR5X.jpg" width="400" /><br />
<em>manga...</em>
</div>

13 changes: 13 additions & 0 deletions posts/2011-11-05-done_this_done_that_what_now.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
layout: post
title: Done this, done that. What now?
category: General
tags: General, Status, Books
time: 16:01:17
---
Finished and uploaded our java game [Grand Thief Arto](/games/grand_thief_arto), done an exam (didn't quite go as intended) and starting some new courses in school. I'm liking my choice of Computer Science more and more. *Data structures and Algorithms* was a super fun course, I actually ordered a [new book about the subject](http://highered.mcgraw-hill.com/sites/0070131511/) just yesterday. *Linear Algebra* is really fun now as we're getting deeper into it and we're looking into assembly and processor structures now too. *Awesome*. I can't believe I considered doing physics or electronics when I could take these courses. Now if I only could do operating systems, compiler construction and language design...

In the meantime I've finished [Design for Hackers](/blog/2011/09/16/design_for_hackers) and it was a really nice book to be honest. I never knew there was so much about design and now I keep noticing funky stuff like what font a particular website is using, what colors and how they direct the reader. I also see a lot of inadequate stuff on my page and I have a few things I'd like to try.

I also read [Watchmen](http://en.wikipedia.org/wiki/Watchmen), the comic, and it was absolutely wonderful. Sadly I saw the movie before but, naturally, the comic was a lot better. So wonderfully dark and ah... Simply awesome.

19 changes: 19 additions & 0 deletions posts/2011-11-09-swelling_with_new_shiny_books.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
layout: post
title: Swelling with New Shiny Books
category: Books
tags: Books, New stuff
time: 21:41:09
---
So I read the wonderful [Design for Hackers](http://www.designforhackers.com/) and I managed to win some money for books from a course... So I ran away and ordered some new books, and they just arrived today. Yay!

First off I ordered [Introduction to Algorithms](http://highered.mcgraw-hill.com/sites/0070131511/) which is the de facto book about algorithms and it seemed like a fitting thing to do as I won it by doing algorithm assignments.

Secondly I've been wanting to grab [Structure and Interpretation of Computer Programs](http://mitpress.mit.edu/sicp/full-text/book/book.html) for a while and I finally did. It's one of the classical computer books you *have* to read once in your life (or so they say).

I wasn't going to get a third book, but on [adlibris](http://adlibris.com/) where I got the vouchers you couldn't pay with two vouchers on one order. So I had to split it up and it felt kinda dumb to not use it all... So I ordered a third book. I had no idea what book to get though, but [stackoverflow](http://stackoverflow.com/questions/1711/what-is-the-single-most-influential-book-every-programmer-should-read) came to the rescue! It's a bunch of answers to the question "What is the single most influential book every programmer should read?" and is like a top X list for programming books.

Incidentally I've got a few of those already, and the two I've already decided on was there (SICP is 3rd, Introduction to Algorithms 5th). Of course I wanted to get either the 1st or 2nd and I ended up choosing the 2nd one, [The Pragmatic Programmer](http://pragprog.com/the-pragmatic-programmer) just because it seemed a bit easier to read. I've got a ton of fairly hardcore programming books I need to plow through so something a bit easier to digest should be welcome.

Go go programming books!

27 changes: 27 additions & 0 deletions posts/2011-11-20-the_decline_of_fps_games.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
---
layout: post
title: The Decline of FPS Games
category: Game Making
tags: Games, Thoughts, FPS, RTS
time: 11:39:25
---
I read [an article about the decline of FPS games](http://au.pc.ign.com/articles/121/1212393p1.html) and it made me think a bit. When was the last time I actually enjoyed an FPS game? I installed old [Deus Ex](http://en.wikipedia.org/wiki/Deus_Ex) a while ago but it's what 12 years old? [Team Fortress](http://www.teamfortress.com/) was okay, the one or two times I tried it, but I can't say I truly enjoyed it, hell I never even played it apart from trying it at a friends pc. Well I bought [Duke Nukem Forever](http://en.wikipedia.org/wiki/Duke_Nukem_Forever) but I haven't even completed it, it's best server collecting dust at the bookshelf now. No the truly last FPS I enjoyed was [CSS](http://store.steampowered.com/app/240/). How is this possible?

<div class="center">
<img src="http://www.gotfrag.com/files/upload/monstro_dust2b_rushdubssmoked.jpg" width="400" /><br />
<em>CSS: my one favorite FPS game.</em>
</div>

I am not a big FPS fan and I get sick of modern FPS almost directly. It feels like they are all the same, I don't even want to try them anymore. The biggest upset was actually [Duke Nukem Forever](http://en.wikipedia.org/wiki/Duke_Nukem_Forever) lately. It had totally linear levels, you could only use two weapons at a time and it just felt boring and uninspiring. Why is it that FPS games are considered good if the graphics is good? Or have an advanced physics engine? It's good of course but there has to be more to a game than that. Games feel so shallow nowadays.

But I never did think about FPS games when I read the article no I thought about RTS and construction games. The main point the article wanted to put forward is that game designers today, especially big ones, don't want to take big risks so they do the same thing as everyone else. This is what happened a decade or go or something when we got a bunch of very similar RTS games. I remember that there were a lot of very similar construtor games before that too. But where are they now? I don't want a million similar titles, but the basic ideas behind those games were great - and I miss them.

Where is Evil Genius 2 for example? It's one of the best games ever but there's nothing similar, only a bunch of similar games trying to steal the popularity of other, probably better, games in the same style.

We need to stop imitating and start innovating, but we also need to bring back the ideas of the classics.

<div class="center">
<img src="http://static2.cdn.ubi.com/emea/gamesites/anno/pc/content/screen1602_1_large.jpg" width="400" /><br />
<em>Anno 1602, one of many classic constructor games. But where are they now?</em>
</div>

15 changes: 15 additions & 0 deletions posts/2011-11-21-a_nice_weekend.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
layout: post
title: A Nice Weekend
category: General
tags: General, Status, Starcraft
time: 11:07:14
---
I've had a pretty nice weekend. On Friday MLG Orlando began and I've been staying up to 2 and sleeping until at least 10 the last days. My inner night-owl is very happy about it, my early-rising girlfriend perhaps not as much, but I think she's a bit understanding?

On Saturday we cleaned the house for Christmas and hung up a star and stuff like that. It was brutally hard work (laugh if you like) but I pulled through without dying too much. Saturday night was full of StarCraft again though so it's fine!

What about Sunday then? Even more StarCraft of course!! IPL had some grand tournament, which Stephano won of course, and MLG had it's final day. In the middle there somewhere we had some taekwon-do and I did some laundry. With that done I sat and shouted at my chosen ones in the tournament and they did do okay, not like I had hoped but still. Leenock managed to win MLG which is pretty damn awesome.

Now I need to adapt to a normal life again, with school and [Ludum Dare](http://www.ludumdare.com/compo/) coming up.

17 changes: 17 additions & 0 deletions posts/2011-12-07-finishing_stuff.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
---
layout: post
title: Finishing Stuff
category: General
tags: General, Status
time: 09:28:37
---
I haven't done much blogging or game programming in a while but instead I've finished some school stuff. We completed the assembly course labs, which were pretty fun actually, and I managed to finally complete the electronics course I've been holding off on for like forever... But now it's gone, yay!

There's not much left before christmas either, we have some sort of exam on tuesday (very boring course) and one the 20th (very fun course) but other than that I'm free to do whatever I want.

* I'm planning on entering [Ludum Dare](http://www.ludumdare.com/compo/) next weekend, finally getting some game programming done.
* I need to recap this year and plan some for the next. I fear this year wasn't as productive as I had hoped.
* I've been thinking that I know my tools (Vim, the command line) but I need to get a little bit better. Especially with emacs as I feel like a monkey on a typewriter when I'm forced to use it at school. Not cool.

And some more smaller stuff I don't have energy to type out (or maybe you're interested in reorganizing my home folder?).

13 changes: 13 additions & 0 deletions posts/2011-12-12-on_the_decline_of_fps_games.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
layout: post
title: On The Decline of FPS Games
category: Game Making
tags: Games, Thoughts, FPS, Fun
time: 22:05:30
---
Mr. Eriksson just sent me this link as a fitting video on my post on [The Decline of FPS Games](/blog/2011/11/20/the_decline_of_fps_games).

http://www.youtube.com/watch?v=W1ZtBCpo0eU

Oh How true!

22 changes: 22 additions & 0 deletions posts/2011-12-14-ludum_dare_22_here_i_come.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
layout: post
title: Ludum Dare 22 Here I Come
category: Declaration of War
tags: Games, Ludum Dare
time: 09:25:31
---
The time has finally come. After more than three hours of exam writing, and almost double spent on studying for it, I am now ready to declare my entry into [Ludum Dare 22](http://www.ludumdare.com/compo/)! I've been away far too long, with my entries for the [17th](/games/beebop_the_island_hopper) and the [20th](/games/my_minions) dare being almost a century away, the ancient game making creature will once again move into action. We'll just hope the game won't be ancient as well...

Leaving that behind us I can now focus on what to actually *use*. I wanted to try some new language and some new environment but that seems lika a really bad idea. So I will stick to what I know:

[My fast prototyping library](https://github.com/treeman/7days) consisting of old C++ on top of the nice [SFML](http://www.sfml-dev.org/) engine.
[sfxr](http://www.drpetter.se/project_sfxr.html), or maybe the newer [bfxr](http://www.bfxr.net/) for sound effects. It's seriously great, give it a try!
Probably [mtpaint](http://mtpaint.sourceforge.net/) for some nice pixelated graphics. I would like to try out [inkscape](http://inkscape.org/) for some vector based graphics but I might skip it this time.
[LMMS](http://lmms.sourceforge.net/) for music making. This I tried to use a long time ago... And failed miserably. It'll be a fun, fun weekend!
And finally my little [timelapse recording hack](https://github.com/treeman/Treebot) for linux. Be careful if you want to try it, it will most likely blow up in your face and take your computer down with it. Handle with care.

And of course here's where I'll be spending most of my waking hours:

![Ludum Dare 22 setup](/media/images/LD_setup.JPG)
I'm planning on getting some new food during all this, but I'm not entirely sure yet.

13 changes: 13 additions & 0 deletions posts/2011-12-16-starcraft_2_keycaps.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
layout: post
title: Starcraft 2 Keycaps
category: Computer
tags: Computer, Keyboard, Starcraft2
time: 16:44:59
---
When I ordered this computer I was compelled, utterly compelled to buy a mechanical keyboard. Sure they cost almost 10x as much as a "regular" one and they didn't even have these funky multimedia keys, what gives? Did I loose my insanity? It was supposed to give a great typing experience... And it sure did deliver!

I'm bringing this up again because I decided to spend my money on something possibly even more useless (or awesome?). I ordered some starcraft II modifier keys for the keyboard and now they are fitted onto the keyboard. Yay!

![](/media/images/starcraft2_kb.JPG)

13 changes: 13 additions & 0 deletions posts/2011-12-19-ludum_dare_22_timelapse.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
layout: post
title: Ludum Dare 22 Timelapse
category: Timelapse
tags: Timelapse, Ludum Dare, Games
time: 20:13:37
---
Here's the timelapse for my entry to [Ludum Dare 22](http://www.ludumdare.com/compo/), [Sat-E](/games/sat-e).

http://www.youtube.com/watch?v=eoKDyhxCVm0

This time I managed to record one screen every minute, which is very suboptimal to say the least but I slowed it down a bit so you can at least see something being done there.

74 changes: 74 additions & 0 deletions posts/2011-12-28-postmortem_sat-e.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
---
layout: post
title: Postmortem: Sat-E
category: Postmortems
tags: Postmortems, Ludum Dare, Sat-E
time: 19:22:02
---
This is my postmortem for my [Ludum Dare 22](http://www.ludumdare.com/compo/ludum-dare-22/?action=preview) entry, [Sat-E](http://www.ludumdare.com/compo/ludum-dare-22/?action=preview&uid=1895). You can find the timelapse [over here](http://www.ludumdare.com/compo/2011/12/19/sat-e-timelapse).

<img src="/media/images/ld22-lone.png" width="600"/>

## The Good

**Motivation**
I was really motivated for [this dare](http://www.ludumdare.com/compo/ludum-dare-22/?action=preview) and it showed in the game and outside it. It's super hard to make a game in only 48 hours but this time it went pretty well. My [previous](/games/my_minions) [attempts](/games/beebop_the_island_hopper) went okay, but there were always something lacking. [This time](/games/sat-e) the game feels a little bit more finished so I'm going in the right direction.

After the game the programming motivation continued and with it I've been improving [my small fast prototyping framework](https://github.com/treeman/7days) I use when making games. I got a lot of ideas on improvements during the weekend so that's great.

**The feedback**
I was moderately happy with how the game turned out, it didn't contain everything I had envisioned after all, but I got a *ton* of positive feedback anyway which is wonderful! It seems like some thinks that my game is good and there's nothing better for your game making confidence than a bunch of flattering words. I'm even considering developing the game more, maybe spending a couple of days here and there on it during a couple of months when I have the time?

**I learned a lot!**
The best way to learn something is *just to do* and it's still true. I've found a bunch of ways to improve and shorten my code, I've made an "infinite" space constructed by individual chunks and that game physics != real physics. Awesome.

Game design is a pretty fascinating creature. Sometimes you give it your best but the resulting game isn't funny, other times you think your game is shit but then you get comments on your "amazing" game! This time I was *certain* the game was crap, a neat idea wrapped behind a boring gameplay but turns out it maybe wasn't that boring after all?

I got this comment:
"Also the fact that when that happened the game didn't simply reset, I lost my money but not my items,
literally stopped me from rage quitting. Bravo"

My thougts? Wait that's a bug! Hmm...

**My girlfriend**
Of course as I live together with someone it's quite hard to devote an entire weekend, plus the extra time before and after, with my computer. Veronica handled it wonderfully well and she was very supportive which means a lot to me and it helped a ton.

<img src="/media/images/ld22-lots.png" width="600" />

## The Bad

**The music**
There's no music but I had grand plans for making music for the first time ever! It failed hard though. Which brings me to the next point...

**Not familiar with the tools**
I used [my own framework](https://github.com/treeman/7days) for the game, which is fine, but my [last game](/games/my_minions) with it was in May 2011! Which is a looong time ago. I was a bit (a lot) out of practice with this whole pixel arts thing. And of course I had never used [LMMS](http://lmms.sourceforge.net/) to make music and that didn't happen. I was short of time and it was too big of a deal to start it with the last minute.

**Not enough time**
Even though I had the whole weekend planned for the dare and I skipped practice on Sunday I was *still* short on time. I'm not really sure why though. I made a pretty simple game, not a lot of art and I generated sound with [bfxr](http://www.bfxr.net/) which took no time at all... The reasons really must be:

1. Not enough practice.
2. Unfamiliarity with the tools. Correlates closely to #1.
3. I'm bad and LD is hard.

When I see [all](http://www.ludumdare.com/compo/ludum-dare-22/?action=preview) [these](http://www.ludumdare.com/compo/ludum-dare-22/?action=preview&uid=8158) [amazing](http://www.ludumdare.com/compo/ludum-dare-22/?action=preview&uid=2982) [games](http://www.ludumdare.com/compo/ludum-dare-22/?action=preview&uid=527) I'm reminded on how much better other game makers are. I need more practice and I need to make more games. I should enter the next dare, enter [the experimental gameplay project](http://experimentalgameplay.com/) and just *make more games*.

And let's face it: Making a game in 48 hours is frickin *hard*.

## The Ugly

**The art**
Oh god... I suck at making art. Let's just leave it at that.

**The code**
There's a lot of bad and wrong in there, it works but it's not pretty. In fact, it's ugly.

**The gameplay**
This is a tricky one. I thought about placing this in the bad section as I didn't find the game very pleasing at all. The beginning was too slow, the ending too long and there wasn't enough incentive to continue flying through endless space I thought. But I got a lot of positive comments and reactions which is wonderful! I don't fully understand why yet so I'm tagging the gameplay as ugly. After all the gameplay wasn't like in my dream...

## Ending thoughts
Before entering the competition I'm always nervous but high spirited. That feeling is always crushed during the weekend and when I finally get the game done and uploaded I think it's the worst game ever. Luckily I'm greeted with positive feedback and that was the case this time again. Maybe they are okay, not super of course, but simply okay.

This time the dare came at a time where I felt I haven't done anything meaningful for a long time, it's just school, little programming and no game making. Now after my spirits are high and I can face a new year with many more games to come!

Until next time, cheers!

83 changes: 83 additions & 0 deletions posts/2012-01-04-2011_in_review.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
---
layout: post
title: 2011 in Review
category: Yearly Review
tags: Rants, 2011, General
time: 10:49:12
---
It's time to wrap up the year that's been. Be warned for slight ego boosting here.

2011 Geek Achievements
===============================

1. Wrote three games this year:
<ul>
<li><a href="/games/my_minions">My-Minions</a></li>
<li><a href="/games/grand_thief_arto">Grand Thief Arto</a></li>
<li><a href="/games/sat-e">Sat-E</a></li>
</ul>
2. Bought a [new computer](/blog/2011/08/21/new_computer)!
3. Bought a mechanical keyboard.
4. Bought [custom Starcraft 2 keycaps](/blog/2011/12/16/starcraft_2_keycaps) for the keyboard.
5. Learned 68k assembly.
6. Learned about algorithms and data structures.
7. Bought a lot of programming books.
<ul>
<li>The Pragmatic Programmer</li>
<li>Structure and Interpretation of Computer Programs</li>
<li>Introduction to Algorithms</li>
<li>Modern Perl</li>
<li>Effective Java</li>
<li>Learn You a Haskell for Great Good!</li>
<li>Land of Lisp</li>
<li>Maybe something more...</li>
</ul>
8. Read a lot of programming books. Modern Perl and The Pragmatic Programmer were my favourites.
8. Learned some Ada.
8. Learned a lot of Perl.
8. Learned a tiny bit of Haskell.
9. Learned some [emacs](http://www.gnu.org/software/emacs/)
9. Got a hint of design understanding thanks to [Design for Hackers](http://www.designforhackers.com/)

2011 Non-Geek Achievements
===============================
1. Went to a dance course with Veronica.
2. My stumach is in good shape!
3. Read and loved A Song of Ice and Fire.
5. Achieved 7 kup in Taekwon-do.
10. Read a *lot* of manga. Some recommendations:
<li>Bakuman. A nice slice of life manga about... making manga. Surprisingly captivating.</li>
<li>Gamaran. A slightly brutal battle manga with loads of weapons.</li>
<li>Vinland Saga. A bit more brutal battle manga about vikings and war.</li>
<li>Beelzebub. Battle manga but with a ton of light hearted humor.</li>
<li>The Breaker. Another battle manga, a bit more direct perhaps.</li>

2011 Failures
================
1. Didn't produce enough games.
2. Didn't write enough code.
3. Did not learn enough Haskell.
4. Have a lot of books I haven't read yet.
5. Did not have enough free time.

Plans for 2012
==================
1. Keep Veronica happy!
2. Make more games.
3. Code more! Much more!
4. Blog more!
5. Learn more Haskell (yet again)...
6. Transform my site to something new, something that I don't dread to use.
7. Improve in Taekwon-do.
8. Be more disciplined in studying, coding, training and cleaning.
9. Read the programming books I have but have not read yet.
<li>A book about Erlang.</li>
<li>K&amp;R C Programming language.</li>
<li>SICP, all important for every programmers. I hear.</li>
<li>Probably missed something... Damn I've got many.</li>
10. Get good results in school.
11. Try to be a bit more social (it's hard).
12. Get more free time somehow.
13. Complete a larger personal project.
14. Learn more mathematics.

44 changes: 44 additions & 0 deletions posts/2012-01-21-ludum_dare_22_results.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
---
layout: post
title: Ludum Dare 22 results!
category: Feedback
tags: Games, Ludum Dare
time: 21:27:47
---
[The results][res] from [Ludum Dare 22][] are in! I made the game [Sat-E][] for the 48 hour competition and I was [quite happy][postmortem] with it.

**#24 Community 3.71**
This one was really surprising, but welcome. I did post a cute picture of a korean k-pop star so I guess that's why.

**#40 Fun 3.38**
Fun is always great! I'm so happy ^^

**#49 Theme 3.69**
I thought my theme choice (Wall-E in space) was good, seems like other thought that too.

**#65 Overall 3.42**
This is supposedly the "best" category to do well in so I'm glad. I did a lot better than I thought I would...

**#95 Humor 2.82**
Damned blast I should've focus more on the funny one-liners.

**#167 Mood 2.92**
If I make a better version of the game this is probably the one thing I would focus on. But that is a thought for another time.

**#247 Innovation 2.69**
Not very innovating I agree.

**#338 Audio 2.23**
No music = shit.

**#340 Graphics 2.62**
I guess I'm not that good of an artist, but tell me something I don't know!§

**#376 Coolness 35%**
The coolness factor = amount of games rated. I wasn't motivated at all sadly... I'm a game developer but I don't play much games? I'm so strange.

[res]: http://www.ludumdare.com/compo/ludum-dare-22/?action=preview&uid=1895
[Ludum Dare 22]: http://www.ludumdare.com/compo/2012/01/09/ludum-dare-22-results/
[Sat-E]: /games/sat-e
[postmortem]: /blog/2011/12/28/postmortem_sat-e

19 changes: 19 additions & 0 deletions posts/2012-01-29-speeding_ahead.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
layout: post
title: Speeding Ahead
category: General
tags: General, School
time: 20:44:15
---
Life is slowly settling down over here. School has started with some pretty interesting stuff this year. Firstly we have a math analysis course in multiple variables which is ok. I'm not a fan of the previous analysis courses but maybe this will be a bit different. We're contining with computer hardware, microprogramming and such, and I enjoy it a little.

When I started programming the big question was how did the code I typed into my editor become something the processor could understand? I've got a good feeling for different programming languages, and now including the assembly for 86k processors. Now the basic hardware, from logical gates to ackumulators, and code are being connected together which feels very nice indeed. I still like to construct and make stuff in a more high level way though.

We're also having a new course, it's been totally remade since last year, about software prototyping. I'm quite used to prototyping with my games but as expected a university course about the subject is a bit more structured and dare I say more boring? The course book, [Effective Prototyping for Software Makers][], is pretty good as it explains the design process in a formal, but not mindnumbingly boring, way. I need to investigate more but I'll definitely use some of the ideas.

The last course for now is the advanced course in linear algebra which me and a friend chose. Linear algebra was probably the hardest math course we've had but at the same time I think it's the most enjoyable and useful so far. And finally I hear it's very useful for programmers in computation and 3D programming so it's something I really want to understand.

Life with Veronica is also working out, mainly because she's awesome, and I went to a Taekwon-do training this week. Feels good to practice again!

[Effective Prototyping for Software Makers]: http://www.powells.com/biblio?isbn=9780120885688

13 changes: 13 additions & 0 deletions posts/2012-02-02-a_simple_thought.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
layout: post
title: A Simple Thought
category: Microprogramming
tags: Microprogramming, Thoughts, School
time: 13:14:35
---
[I wrote][] that we where doing some microprogramming, making the processor work etc. We had a lab about that yesterday and I was very, very nervous. The preparations weren't that hard, but they where very bothersome. Converting the instructions to binary/hex by hand is never nice. Turns out the lab was very easy! You also had the option to prepare everything before on their simulator, which dumb be didn't do.

When I thought about how to describe what microprogramming is I was going to write that it's what makes a processor work. This sounds a bit off though, couldn't you do the same with physical hardware instead of another programming step inside the processor? Well turns out that's what RISC is all about. Sometimes the qualms you have when facing something new are completely justified.

[I wrote]: /blog/2012/01/29/speeding_ahead

26 changes: 26 additions & 0 deletions posts/2012-02-12-doing_stuff.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
---
layout: post
title: Doing Stuff
category: Life
tags: Life, General, Doing Stuff
time: 13:34:39
---
The school and my life is trotting along. I'm handling the extra course fine, but instead I've left the standard math course behind a bit. Actually more than a bit but hopefully I'll correct things later.

No my life is going along just fine, it almost feels like my life is runing ahead and leaving me behind. What have I done lately? School work I guess? Can't think of anything else the last month to be completely honest, which is pretty far from optimal. I set out this school year with the goal of programming a lot more, but so far that has been pretty dead. Sure I made a lot of progress on the new site during the christmas break but since school started I have done nothing, *nothing*! So sad.

Yesterday I did something else though. I went and bought a bunch of stuff. I bought a birthday present for Veronica which I'm very happy with, and I bought some rubber bands for training the oblique muscles among others. I tried but I couldn't find a protective condom for my new phone, yes I have a new phone! A white, shining, wonderful [Samsung Galaxy S2][s2] which is blowing my mind. I can now surf, watch starcraft and read manga in bed, in the bathroom and in school! Yay! And umm... New boxers.

Apart from all that I also hung up Veronica's two paintings and a white shelf I've been meaning to a while. I realized I had no idea whatsoever how to hang up a painting! I bought a big box with screws and stuff but there where only one of them I knew how to use. Now I know how to hang up a painting like the leaning tower of Pisa!

<div class="center">
<img src="http://4.bp.blogspot.com/-LqiqWRrdHX4/TX9XHvYIooI/AAAAAAAABqM/a2FTabGMO5Y/s400/leaning-tower-of-pisa.jpg" alt="Leaning tower of Pisa" /><br />
<em>You call that leaning? You should check out my paintings!</em>
</div>

I finally got them sort-of straight, but it took a while.

You know your life is running fast if you're savouring hanging up paintings. But now I will do something about that: I will go to Taekwon-do practice and later maybe going to the children's practice, yay!

[s2]: http://www.techradar.com/reviews/phones/mobile-phones/samsung-galaxy-s2-930907/review

22 changes: 22 additions & 0 deletions posts/2012-02-24-favourite_programming_language.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
layout: post
title: Favourite Programming Language
category: Programming
tags: Programming, Languages, Rants
time: 20:05:47
---


All the programmers love to promote their favourite language, or to hate on others. Now I read a post which claimes [my favourite language is not good enough][fav]! But he's correct of course, there is no one language to rule them all. You should always choose the mest language for the job, be it C or Ruby, but most don't learn enough of them. Maybe he's right, maybe we're all just lazy?

[fav]: http://blaag.haard.se/Your-favourite-programming-language-is-not-good-enough/


Whatever the reason I certainly have a favourite language, or rather a few. If I would have to name one I would probably say Perl, just because I've had the most fun with it! I do enjoy C++ and as I've made most of my precious games in it that's a good candidate. Haskell is absolutely awesome and so is Lisp. There I've listed 4 favourites! But of course I don't care about that really, I tend to fall in love with most of the languages I use.

Well I don't particulary like Ada... But I do admit it has some nice features, and the error messages are great! But how about Java then? I've been joking around a lot with it but to be honest I don't really hate it. Sure there are better alternatives but there are good points. The JVM, the libraries and the simplicity of it appeals to me. Maybe it's not simple but I'm used to the thinking.

To echo [his][fav] suggestion: learn new languages. I'll add that don't just learn them: use them for something real and learn to love them! And don't just learn similar languages (from C++ to Java isn't worth it) but try to switch it up a bit (try C++ to Haskell). You'll find you'll be a better programmer when the dust settles, and you can actually choose a language gwith the strengths for a particular prolem.

End rant.

18 changes: 18 additions & 0 deletions posts/2012-02-24-motivation_is_valuable.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
---
layout: post
title: Motivation is Valuable
category: Motivation
tags: Motivation, School, Courses
time: 08:56:05
---


It's funny how motivation can play such a huge role with my productivity. I'm currently having two math courses; one mandatory about analysis in multiple variables and vector analysis and one voluntary about advanced linear algebra. I don't like the analysis course, didn't like the previous ones and I don't like this one.I don't fall asleep on lectures ever and I always try my best to listen but this one is pretty horrible. Not sure if the teacher or the content is to blame?


On the other hand the linear algebra course is fun and intriguing. Every lecture I'm always surprised when it ends "already 2 hours?". This is so funny because I'm not really convinced why this is happening, are the courses or the teachers that different? Sure that's probably true, but mostly I think it's my motivation that's hurting me.

"Linear algebra seems fun! It's hard but I *will* manage it." vs "Pah analysis again. Damn the first lecture was boring, this course is boring". I do like linear algebra more and I think it'll be much more useful for me in my programming career but analysis isn't so bad, not this degree. I think my motivation blow ups my it into bigger proportions than it really is.

It's pretty bad, we have exam in two weeks and I have literary done nothing in the analysis course... Now I need to study hard if I want to complete it but the lack of motivation is just sooo hard to overcome. Sometimes I think I don't have the mentality to be a good student. Many of my class mates are in school the whole day, every day, while I try to be in school as little as possible.

23 changes: 23 additions & 0 deletions posts/2012-03-04-changes.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
---
layout: post
title: Changes
category: Life
tags: Life, Changes
time: 20:21:17
---


A lot has been going on lately and it feels like I'm being swamped. I can't complain too much but there are things I'd like to change after the exam period this week.


1. Program more!
I have seriously done *nothing* since christmas or someting. I need to finish:
1. Ada project for school. Can't believe I still haven't done it.
1. New web page. Need to track down a good perl hosting service and actually finish the site.
1. Game for my little brother to create graphics and tweak some code in, I want to teach him to code during the summer! That's a good healthy challange for me.
1. Ludum Dare 23 in April, yay!
1. Serious Taekwon-do training.
1. Don't fall behind too much in school. This time I'm hurrying like mad to catch up before exam and I'm actually worried. This shouldn't happen! I didn't even go to *a single* lesson this time.

Just wanted to get that out there.

36 changes: 36 additions & 0 deletions posts/2012-03-18-beginning_programming.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
---
layout: post
title: Beginning Programming
category: Learning Programming
tags: Learning, Programming, Learning Programming
time: 15:26:46
---


I read a wonderful post, [3 Things I hate about “beginner” programming books][beginner], which I couldn't agree more with. Basically he has these points:

1. Too long
2. Too many examples like "Hello World!"
3. No answers to exercises.

Nr 1 is a pretty curious one. Even though I think a book is good, I often end up only completing 75-85% of it before going on with my own projects or with something else. Also the best books are often shorter than your average 700+ pages brick. [Modern Perl][], [The Pragmatic Programmer][] and [Effective C++][] are all short but really good.

[The Pragmatic Programmer]: http://pragprog.com/the-pragmatic-programmer "The Pragmatic Programmer"
[Modern Perl]: http://www.modernperlbooks.com/ "Modern Perl book"
[Effective C++]: http://aristeia.com/books.html "Scott Meyers books Effective C++, More Effective C++"

[beginner]: http://allfuzzy.tumblr.com/post/19464639511/3-things-i-hate-about-beginner-programming-books


I always hate, really hate, when I can't find an answer to an exercise in a book. Often I'm unsure or I frankly don't know how to solve something, even after reading the text and examples, and I also think I learn best by copying. This may sound strange to you but I swear it's true. When I made my first game I copied from a tutorial and after I changed and wrote something new. This is also the same when doing math, first I want too see examples and how to actually solve something then I copy that and then I go "hmm what does this do, what will happen here".

The small constructed examples you always see, "this Vehicle is a class and the Firetruck inherits Vehicle", are no use at all I'd say. Is that how you solve a problem? Is that how you program? Not really. Almost all examples are contrived and not useful at all, especially for beginners. I never thought classes where good before I copied a solution to some problem I had. Wonderful!

This is what I'd do if I would write a "beginner" programming book:

1. I would use the whole book to construct a game. I would begin with simply drawing a shape, or an image, on the screen. Then I would make it move and at the end of the book I would have all the necessary code for a complete and functional game.
2. I would provide *all* the code inside the book. Of course I could provide it online but the act of actually typing in something yourself is very valuable.
3. It should be fun and easy-going. I wouldn't focus on every little detail but instead on the big picture and my goal would be to get the reader hooked on programming.

That's it! Learning programming is hard, but it's also very satisfying. My summer project will be to teach my little brother to program, we'll see how that'll go.

59 changes: 0 additions & 59 deletions posts/2012-08-12-spqr.markdown

This file was deleted.

15 changes: 15 additions & 0 deletions posts/2012-08-25-rising_from_the_dead_its_ludum_dare.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
layout: post
title: Rising from the Dead, it's Ludum Dare
category: Ludum Dare
tags: Ludum Dare, New Game, Evolution
---

I've been a long time gone, been busy with school then having summer vacation and generally not making games or blogging. But I have revived! I scrambled to push my new website live because today it's Ludum Dare time! The theme is "Evolution" and it's the 24th time for Ludum Dare and my 4th time entering.


Of course, as usual with my Ludum Dare entries I'm totally unprepared. I haven't used any of the tools I'm going to use in over half a year or something.

![](/media/images/ld24_full_desktop.jpg)
*But I did clear my desk! And an inspirational cactus friend!*

16 changes: 16 additions & 0 deletions posts/2012-08-25-ugly_and_slow_progress.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
---
layout: post
title: Ugly and Slow Progress
category: Progress
tags: Ludum Dare, Evolution, Progress
---

Ludum Dare is coming along... Slowly. The rust on me is probably so brown it's nearly black. But I have an idea and it might be good, all I need to do is execute it. Right?

![](/media/images/2012-08-25-145327.png)
*Programmer graphics coming to take you away!*

Anyway it's going to be a risk-like game with a twist: you can change all the rules and victory conditions. I played a pretty cool card game where changing the rules was the core of the game, pretty neat idea actually. As for the theme I wanted to do something with robots taking over the world - it's only the next logic evolution of computers anyway.

Not sure if the game is going to be anything to celebrate over, but I'm having fun at least. Except for getting annoyed about C++ missing all my favourite features from other languages... But in time I'll be in love with it anyway.

11 changes: 11 additions & 0 deletions posts/2012-08-25-up_like_a_sun_down_like_a_pancake.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
---
layout: post
title: Up like a Sun, Down like a Pancake
category: Ludum Dare
tags: Ludum Dare, Evolution
---

I was looking forward to this weekend, for Ludum Dare and for me to finally make a game again. But it just don't feel right to me. I'm not prepared, I feel a little bit stressed and I don't really have faith in my game so I'm gonna step down this one as well. But it's fine, Ludum Dare is supposed to be fun and challenging with an emphasis on fun but as it is now I just don't really feel it.

Next time I will come more prepared, that's a must! I think I need to do some html5 or pygame for the next time. Fast prototyping should mean more than writing a lot of boilerplate code and the boiler will make a damn stew if you're rusty.

10 changes: 10 additions & 0 deletions posts/2012-08-27-its_time_for_more_school.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
layout: post
title: It's Time for More School
category: School
tags: School, University, New Start
---

Today it's finally starting again and it's off with a flying start. We have 11 lectures this first week and an absolutely smacked schedule. If that wasn't enough I also have a mentor time to prepare for and I need to start Taekwon-do again.

On another note IÍ„'m currently plowing through 'Liar Game' manga which is pretty damn nice. It's a psychological manga about various games where you're supposed to lie and cheat your way to victory. Corny as it may sound it's pretty good.
17 changes: 17 additions & 0 deletions posts/2012-09-03-entering_pintos.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
---
layout: post
title: Entering Pintos
category: School
tags: School, Pintos, OS
---


First week of school is over and it's been full throttle from the start, in a good way. We're having four courses and for once I like them all. We have an interesting math course, a useful course "Software Development in Theory" (boring but useful) and a big project course where we shall build a robot. That'll be fun! But my favourite course so far has been the course about operating systems where we're supposed to add functionality to [pintos][], a toy operating system from stanford.

[pintos]: http://www.stanford.edu/class/cs140/projects/pintos/pintos_1.html


It's one of the things I've been wanting to learn every since I first came in contact with programming; How does the connection hardware to software work? How does an operating system work? And how does a programming language work? After two years, with [implementing a processor][MARC] last year as a high point, I think I can answer how hardware connect with software. I still need to implement my own language but for now I'm having fun with OS programming. Yesterday I implemented basic System Calls and next on the agenda is altering some thread stuff. I might make the code available when the course is over, and maybe even add even more stuff? Fun, Fun!

[MARC]: /projects/MARC

18 changes: 18 additions & 0 deletions posts/2012-09-05-robot_project_start.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
---
layout: post
title: Robot Project Start
category: School
tags: School, Robot, Project
---


So it has begun, the long road until christmas when we're supposed to have a working warrior robot. We're gonna do battle with infrared lasers instead of axes but it might be fun anyway. Luckily for me I'm responsible for software and nothing harder than that! w00p!


<div class="center">
<img src="/media/images/R_wars.jpg" /><br />
<em>We could maybe cheat a little...</em>
</div>

Our group seem pretty good, all nice guys (so far!) and we have guys on the harder jobs - documentation responsibilities and project leader - so it *should* go well. We'll see!

Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
---
layout: post
title: Eduroam for wicd in Linkoping's University
category: Eduroam
tags: Eduroam, wicd
---


So we have eduroam at our University and unsurprisingly wicd is not on their official support list but with some googling the wonderful [Arch Wiki][] had the answer. Well, almost.

[Arch Wiki]: https://wiki.archlinux.org/index.php/Wicd#Making_eduroam_work_with_wicd


Save the following as `/etc/wicd/encryption/templates/ttls-80211`:

name = TTLS for Wireless
author = Alexander Clouter
version = 1
require anon_identity *Anonymous_Username identity *Identity password *Password
optional ca_cert *Path_to_CA_Cert
-----
ctrl_interface=/var/run/wpa_supplicant
network={
ssid="$_ESSID"
scan_ssid=$_SCAN

key_mgmt=WPA-EAP
eap=TTLS

ca_cert="$_CA_CERT"

phase2="auth=MSCHAPv2 auth=PAP"

anonymous_identity="$_ANON_IDENTITY"
identity="$_IDENTITY"
password="$_PASSWORD"
}

Only difference from the wiki is the line `subject_match="$_CERT_SUBJECT"` is removed.

In a terminal:

cd /etc/wicd/encryption/templates
echo ttls-80211 >> active

Then open wicd (I use `wicd-curses`) and choose `TTLS for Wireless` under the security mode and enter your credentials [from this page][settings]. For the lazy people [download this][], save it somewhere and specify the path to it as `Path to CA Cert` then input your `<name>@liu.se` or `<name>@student.liu.se` and don't forget [your password][].

Done!

[settings]: http://www.liu.se/insidan/it/natverk/tradlost-nat/korta-installningar?l=sv
[download this]: http://www.liu.se/insidan/it/natverk/tradlost-nat/korta-installningar/1.198388/AddTrustExternalCARoot.crt
[your password]: https://account.liu.se

45 changes: 0 additions & 45 deletions posts/2012-10-07-rosa-rosa-rosam.markdown

This file was deleted.

18 changes: 18 additions & 0 deletions posts/2012-10-10-moving_private_repositories_to_bitbucket.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
---
layout: post
title: Moving private repositories to Bitbucket
category: Git
tags: Git, Bitbucket, Source
---


Long overdue, I recently moved my private repositories from [Github][] to [Bitbucket][]. Github is great of courseand they even gave me a free students account and I still host all my [public repositories][Github] there. Still, Bitbucket has unlimited free private repositories for up to 5 users which is a much better pricing model. And Bitbucket is pretty awesome as well, they're posting a lot on [hacker news][], my favourite place on the web. That's where the [final push][] came from anyway.

[Github]: https://github.com/treeman
[Bitbucket]: https://bitbucket.org/
[hacker news]: http://news.ycombinator.net/news
[final push]: http://news.ycombinator.net/item?id=4631926


The transition was as smooth as a... a sine wave...? Pretty damn smooth that is. Sign up took 30 seconds, copy paste my ssh key and redefine some remotes and I'm basically done. Decentralized source code management (git in this case) is pretty damn awesome.

22 changes: 22 additions & 0 deletions posts/2012-10-16-laying_off_pintos.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
layout: post
title: Laying off Pintos
category: Pintos
tags: School, Pintos, OS
---


Exam period is here which means all courses should be wrapping up and a week or so ago we finished up [our lab series][lab] about [pintos][]. The labs were among the best I've had yet and I learned a ton. We didn't follow the official instructions but we had our own assigmnets. Basically:

1. Implement some basic system calls.
2. Reimplement `timer_sleep` to not use busy waiting.
3. Implement synchronization between processes, program arguments and securing the system calls.
Yes quite a bit bigger than the rest.
4. Synchronize the file system.

All in all pretty darn fun. I was considering sharing the code publicly, but that might not be a too bright of an idea. I'll keep it private for now.

[lab]: blog/2012/09/03/entering_pintos/
[pintos]: http://www.stanford.edu/class/cs140/projects/pintos/pintos_1.html


37 changes: 37 additions & 0 deletions posts/2012-11-08-good_and_bad_programmers.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
---
layout: post
title: Good and Bad Programmers
category: Programming
tags: Programming, Blog
---


Every now and day blog posts about what it takes to be a good programmer or how you figure out if someone is a bad programmer arrives. There's always talk about how you find the good programmers in interviews and the topic is always hot in schools and universities.

Today I read the best comment so far about the topic by [hacker news][] regular edw519:

> My default response to any "good programmer, bad programmer" post:
> A smart accountant once told me that the answer to "How much money did you make?" is always, "Who wants to know?" If it's an investor, the answer is "A lot." If it's a customer, the answer is "A little." If it's the IRS, the answer is "None."
> Same thing here. The answer to "Who is a good programmer?" is always, "Who wants to know?"
> To a project manager, the programmer who hits every deadline (regardless of quality) is a good programmer.
> To a customer, the programmer who solves their problem quickest is a good programmer.
> To a business owner, the programmer who makes them the most money is a good programmer.
> To a PHB, the programmer who makes them look the best is a good programmer.
> To a journalist, the programmer who tells the best stories is a good programmer.
> To a junior programmer, the best mentor is the good programmer.
> To another programmer, the programmer they are most likely to want to go into battle with is a good programmer.
> To a blogger, the programmer who best fits the profile of the point he is trying to make is a good programmer.
[hacker news]: http://news.ycombinator.com/


81 changes: 81 additions & 0 deletions posts/2012-11-13-dbot.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
---
layout: post
title: Dbot
category: Programming
tags: Programming, Perl, Fun
---


So I made a small irc bot in 294 characters in code-golfing language #1: Perl.

Usage
======

`perl Dbot`

Commands
=========

* `.name` - Echo the bots name
* `.hello` - Output "hello world!"
* `.src` - Dump the source code

Code
=====

``` {.perl}
use IO::Socket;$s=IO::Socket::INET->new("158.38.8.251:6667");sub o{print$s "$_[0]\n"}o("NICK $0");o("USER b * * :b");while(<$s>){o("PONG$1")if/^PING(.*)$/;o("JOIN #$0")if/004/;if(($p,$h)=/(P.+)\.(.*)./){o("$p$h world!")if$h=~"h";o($p.$0)if$h=~"n";if($h=~"s"){open F,$0;o($p.do{local$/=<F>})}}}
```


Well uh let's try that again, without minimize shall we?

``` {.perl}
use IO::Socket;
# Connect to one server of irc.quakenet.org
$s = IO::Socket::INET->new("158.38.8.251:6667");
# o("txt") writes "txt\n" to the server
sub o{ print$s "$_[0]\n" }
# Register our nickname, same as file name
o("NICK $0");
# Register username, necessary stuff :<
o("USER b * * :b");
# Never quit!
while(<$s>) {
# Play a bit of ping-pong
o("PONG$1") if /^PING(.*)$/;
# Join when ping-pong has completed
o("JOIN #$0") if /004/;
# Parse a message our channel with message ".<cmd>"
# so example:
# :<user-info> PRIVMSG #<channel> :.<cmd>
# (P.+) Match 'PRIVMSG #<channel> :'
# \. Cmd prefix
# (.*) Cmd
# . Trailing \r
if(($p,$h) = /(P.+)\.(.*)./) {
# .hello Echo hello world! Unless an abuser appears!
o("$p$h world!") if $h =~ "h";
# .name Echo name of bot
o($p.$0) if $h =~ "n";
# .src Output whole source code
if($h =~ "s") {
# Open running script file handler
open F,$0;
# Echo contents of running script
# file slurping
o($p . do{ local$/ = <F> })
}
}
}
```

All hacky, but I had some fun with it.

50 changes: 0 additions & 50 deletions posts/2012-11-28-carpe-diem.markdown

This file was deleted.

17 changes: 17 additions & 0 deletions posts/2012-12-02-5_kup.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
---
layout: post
title: 5 Kup
category: Taekwon-do
tags: Taekwon-do, TKD
---


After a season with very bad attendence, I blame school and lack of motivation, I still went to grading. I slept well but I was super stressed all weekend so I had to constantly run to the bathroom and I couldn't eat lunch or breakfast properly, and I don't usually get nervous...

Anyways the grading went well, the kids where absolutely great! They trained 6+ hours on Saturday and 4-5 hours on Sunday and they never complained or made any trouble whatsoever. I'm so proud!

My grading went well, I was worried about some jumping kicks... But I didn't need to do them! The sparring went okay, but nothing really admirable, I guess I need to show up to more trainings. The breaking didn't pose any problem and the patterns went well, although I got super tired by the end.

At the end I succeeded in leveling up, next one is a blue belt! I really, really need to work on my kicks though.


57 changes: 0 additions & 57 deletions posts/2012-12-07-tu-quoque.markdown

This file was deleted.

19 changes: 19 additions & 0 deletions posts/2012-12-12-monaco_whats_yours_is_mine.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
layout: post
title: Monaco What's Yours is Mine
category: Gaming
tags: Gaming, Monaco, Beta
---


I've been waiting for soon to be three years for [Monaco What's Yours is Mine][monaco], and today I was granted an early christmas present - I was given a beta key! w00p!!

I was planning on studying and sending some emails to some companies... But who knows what I'll end up doing?

Tomorrow is preorder release, yes I'm going to buy a 4-pack directly, and they will also stream etc. But for new enjoy the 10 month old gameplay video!

http://www.youtube.com/watch?v=NtpLP4_losA

[monaco]: http://www.pocketwatchgames.com/Monaco/


20 changes: 20 additions & 0 deletions posts/2012-12-14-early_christmas_present.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
layout: post
title: Early Christmas Present
category: Christmas
tags: Christmas, Raspberry Pi
---


School is almost over and it's almost time to travel back up to Ă–vertorneĂĄ. This year me and Veronica opened our Christmas presents a bit early - we're impatient like that.

I got one of the best presents yet I think! A [Raspberry Pi][]!

<img src="/media/images/christmas12.jpg" width="600" />
*Just look at this bad boy!*

She got some crochet (virkning?) stuff from me, but she seemed content with that little. Now what shall I do with mine? I'm thinking of fetching a small screen for it and... and... Do something fun with it?

[Raspberry Pi]: http://www.raspberrypi.org/


54 changes: 54 additions & 0 deletions posts/2012-12-15-understanding_the_computer_bottom_up.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
---
layout: post
title: Understanding the Computer
category: Computer
tags: Computer, Hardware, Programming
---


When I discovered programming it felt like a whole new world opened up for me with endless possibilities. It granted unlimited power and I could create virtually anything and it explained so much to me - how did a program work? How could you make a game or a website? But there was a big question without a good answer lurking in the background. I understood how you made the computer to do something and I understood the concept of electronics on a very crude level, but how did you ever go from a current to a full fledged game?


After 2,5 years in University I finally feel I can understand *a bit* of that. This is a simplified view of my journey so far.

# Basic Electronics

We had a basic electronics course, although I must admit I never really got a good understanding of it and I haven't used it enough to be comfortable with it. But I have at least a basic idea of how basic digital components can be realized.

# Basic digital components

We only had one introductory course here as well. I didn't like it at all at the time, I found it a bit dumb. Why care about the theory behind digital logic so much? Who cares?

Well, it's impossible to build something bigger without the building blocks and it's hard to build a computer without basic combinatorical networks. Still didn't like it though.

# Larger digital components

This was the first hardware based course (we had several) I liked. Our mission was to build a digital clock or something. Turns out it's really fun to build things! We extended the clock to be a counter, up or down, and we built other simple things. Life was good and the world of computers started unlocking a little, from the hardware point of view this time.

# A processor

I'm not sure how it happened but the next step after playing with the smaller digital components was to play with a real CPU - motorola's 68k family. This was also my first insight into assembly, it's something I always wanted to know. Turns out it wasn't all that different from regular programming, except that you're dealing with much more detail. We used the processor to communicate with our familiar digital hardware, we made a 1D ping-pong with diodes and a simple "sinking ship" game and a lot of small assignments. We ported (parts of) Forth to it!

After that we had a construction course, we could make a digital *thing*! Maybe a processor, hurr? [So we did][MARC]. We made a microprogrammed processor, simulated on an FPGA, which ran redcode. I even wrote an assembler for it!

# Compiler

*I'm waiting eagerly for our compiler course to start in ~10 months.*

# Operating system

We had a super fun course about operating systems and we did some work in [pintos][], an OS where you're supposed to improve and implement parts of it. It was perhaps the best course I've had yet and I learnt a *ton*. Threading, scheduling, system calls, security, file systems, launching programs, etc...

After pintos it feels like I understand what a OS does and how it communicates with hardware and programs.

# A program

Ah, we've come a whole circle. I'm still writing programs, that's practically all I'm doing, but now it feels like I have a better grasp of what it takes to run it.

There are still things I'd like to do more of. More games, more assembly code, more hardware controlling stuff, using my [newly gotten][] [raspberry pi][] perhaps?, and I definately want to make my own programming language sometime.

[MARC]: /projects/MARC/
[pintos]: http://www.stanford.edu/class/cs140/projects/pintos/pintos_1.html
[newly gotten]: /blog/2012/12/14/early_christmas_present/
[raspberry pi]: http://www.raspberrypi.org/

95 changes: 95 additions & 0 deletions posts/2012-12-31-2012_in_review.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
---
layout: post
title: 2012 in Review
category: Yearly Review
tags: Rants, 2011, General
time: 23:07:00
---


Like the [last][2011] [two][2010] years I'm summarizing the year. At the end of the year like this it always feel like I didn't accomplish much, but after the yearly summary it always feels better.

[2011]: /blog/2012/01/04/2011_in_review/
[2010]: /blog/2011/01/06/2010_in_review/


2012 Geek Achievements
=======================

1. [Designed a processor][MARC] which fulfills the [Core Wars 88 standard][corewars88]. Includes a redcode assembler.
2. Went through [pintos][] in school and learned a lot about operating systems.
3. Began a [new website][website].
4. Wrote some Ruby in conjunction with [Jekyll][].
5. Learned some [Rust][] and wrote a [small irc bot][rustbot] with it.
6. Took an advanced mathematics course in *Linear Algebra*, it was fun!
7. I was a mathematics mentor to the first years in *Discrete Math*.
8. Won the "best CV" award from Ericsson during Linkdagarna.
[Here's the CV (in Swedish)][CV] and [here's the latex file][CV.tex] which produced it.
9. Got top 3 in [IMPA][], I did participate three turns out of five.
10. Participated in prog-SM and won a t-shirt! (Or three...)
11. Solved a lot of problems on [UVa][].
12. Migrated all my private projects from [github][] to [bitbucket][].
13. Wrote a lot of C.
14. Wrote some C++.
15. Wrote some Perl.
16. [Made a robot][trap14].
17. Read one programming book - [The C Programming Language][kr].

2012 Non-Geek Achievements
===========================

1. Me and Veronica had a good year.
2. Achieved 5-kup in Taekwon-do.
3. [Read 20 books][read_books].
4. Read a lot of manga. *Battle Royale* was the highlight of the year I think.
5. Read some manwha. Possibly better than manga??
* *Tower of God* (my favourite manga/manwha atm)
* *Magician*
* *The Breaker New Waves*
* *Noblesse*
6. Discovered [Power Grid][], a [German Style Boardgame][german].

2012 Failures
==============

1. Did not write enough code.
2. Did not participate in [Ludum Dare][].
3. Did not write a new game.
4. I have a mechanic course behind me...

Plans for 2013
===============

1. Take care of Veronica.
1. Complete a hardware project
2. Try out some yoga.
3. Learn about compilers.
4. Take some fun courses.
5. Achieve kup 3 in Taekwon-do.
6. Develop this site a bit.
7. Bigger and better blog posts.
8. Work hard(er?) in school.
9. Code more.
10. Read more books.
11. Fix the Failures of 2012.

[pintos]: http://www.stanford.edu/class/cs140/projects/pintos/pintos.html
[corewars88]: http://corewar.co.uk/icws88.txt
[MARC]: /projects/MARC
[website]: /projects/madeoftree
[Jekyll]: https://github.com/mojombo/jekyll
[Rust]: http://www.rust-lang.org/
[rustbot]: /projects/rustbot
[CV]: /media/cv-2012.pdf
[CV.tex]: /media/cv-2012.tex
[IMPA]: https://www.ida.liu.se/projects/impa/new/
[read_books]: /blog/2012/12/31/2012_read_books/
[UVa]: http://uva.onlinejudge.org/
[github]: https://github.com/
[bitbucket]: https://bitbucket.org/
[Ludum Dare]: http://www.ludumdare.com/
[trap14]: #
[german]: http://en.wikipedia.org/wiki/German-style_board_game
[Power Grid]: http://boardgamegeek.com/boardgame/2651/power-gridboardgamegeek.com/boardgame/2651/power-grid
[kr]: http://en.wikipedia.org/wiki/The_C_Programming_Language

46 changes: 46 additions & 0 deletions posts/2012-12-31-2012_read_books.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
---
layout: post
title: 2012 Read Books
category: Read Books
tags: 2012, Books, Read Books
---


I read a post, sadly lost the link, where the author had recorded all books she had read during the year and I thought it'd be pretty fun to do. So here goes, in a mostly ordered list.


1. **The Art of Learning** - *Josh Waitzkin*
1. **Världens Whiskey**
More of a reference book.
1. **Linear Algebra Done Right**
Course book.
1. **Linear Algebra Done Wrong**
Course book.
1. **Effective Prototyping for Software Makers**
Course book, selected chapters.
1. **Över Näktergalens Golv**
1. **På en kudde av gräs**
1. **Optimeringslära** - *Kaj Holmberg*
Course book, great both as a learning tool and reference book.
1. **Dune** - *Frank Herbert*
A truly great book, the sci-fi world is amazing.
1. **Under lysande mĂĄne**
1. **Fit Forever** - *Dolhp Lundgren*
1. **The Book of Cain**
1. **Dune Messiah** - *Frank Herbert*
Not quite like the first book, but still brilliant.
1. **Lärjungen**
1. **The C programming Language** - *Kernighan and Ritchie*
Did not do all exercises, really good book.
1. **Software Engineering**
Course book.
1. **Operating System Concepts**
Course book. Pretty good, although a bit wordy at times.
1. **Linear Systems and Signals** - *B. P. Lathi*
Course book. Quite good.
1. **XO** - *Jeffery Deaver*
1. **The Definite Book of Body Language** - *Allan & Barbara Pease*
Very informative and also pretty funny.

All in all, I did not read that many books this year. I did start on a few which I never finished for various reasons.

47 changes: 47 additions & 0 deletions posts/2013-01-07-a_vacation_filled_with_obsession.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
---
layout: post
title: A Vacation Filled with Obsession
category: Gaming
tags: Gaming, Vacation, Power Grid
---


A nice thing about school are the nice long vacations. Directly after my last exam we went north to our dear home village Ă–vertorneĂĄ and spent two weeks celebrating Christmas and New Years Eve. What did we do? I practiced some obsessive behavior with [Power Grid][] and [Minecraft][] (and finishing up with some [World of Tanks][]).

It all began with [an article][board games] and the discussion which followed on [hacker news][]. Basically they discussed the pros and cons of different games and specifically noting the advantages of [german style board games][german] over classical board games like *Monopoly*.

A summary from [Wikipedia][german]:

* Themed games
* Games made for everyone
* No player elimination
* Game 'mechanics'

[Power Grid]: http://boardgamegeek.com/boardgame/2651/power-grid
[Minecraft]: http://minecraft.net/
[World of Tanks]: http://worldoftanks.com/
[hacker news]: http://news.ycombinator.com/
[board games]: http://timharford.com/2010/07/why-we-still-love-board-games/
[german]: http://en.wikipedia.org/wiki/German-style_board_game


A note from *simonw* about Monopoly which I can relate to.

> Couldn't agree more. German-style games make Monopoly etc look positively archaic. Two great starter games are Settlers of Catan and Carcassonne. I'm a big fan of Ticket to Ride as well.
>
> There are a couple of things that make these games so good. Firstly, they're extremely well balanced - unlike Monopoly, it's rare for one player to pull ahead to the point that it's impossible for anyone else to catch up with them.
>
> Secondly, they tend to come to an inevitable conclusion - a game of Settlers will virtually never last more than an hour and a half due to resources / space on the board depleting over time. I've had games of Monopoly last 6 hours or more, by which time everyone is fed up and wishes they'd never started playing.
After some debating I figured I'd order *Power Grid* as it got really good reviews, both from the discussion thread and various reviews.

And boy was it worth a buy!

The first day I played maybe two games with my little brother, like me he's very into games and we positively loved it. When my uncle (he loves board games as well) and cousin arrived we played a bit, and then some more. In total we played at least 20 times in 12 days, with a maximum of 4 times one day. The game takes 1,5 - 2 hours and is very mentally taxing so I consider that a *lot*.

![](http://cf.geekdo-images.com/images/pic1375788_md.jpg)
*Power Grid, an great strategy game*

I liked it so much that I ordered three of the expansions for it just after I left.

Of course we didn't *only* play *Power Grid* day out and day in. We also started a new world in minecraft which we played a bit on... Sometimes things are just so good you can't get enough of it you know?
58 changes: 58 additions & 0 deletions posts/2013-01-13-fixing_problems.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
---
layout: post
title: Fixing Problems
category: Config
tags: Slackware, Xmonad, Minecraft, Flash Player
---


Today I have fixed two large annoyances I've had!

# I fixed [the blue people on youtube][blue] bug

![](http://i.stack.imgur.com/XvNff.png)

I found a nice [thread][blue] with a great answer. I solved it by forcefully patching `libflashplayer.so`

perl -pi.bak -e 's/libvdpau/lixvdpau/g' libflashplayer.so

Worked perfectly!

[blue]: http://askubuntu.com/questions/117127/flash-video-appears-blue



# I fixed the minecraft stuck in pause bug

This affects you if you're using xmonad (or similar?) and java 1.7. The solution was simply to downgrade to java 1.6.

Another problem I've had earlier was that minecraft tries to full screen over both of my screens instead of just one. The solution is to add this to your `xmonad.hs`.

``` {.haskell}
main = xmonad defaultConfig {
...
, startupHook = setWMName "LG3D"
...
}
```


# Fixed my Todo Lists

Oh and I also added a lot of levels to my todo list, [as suggested by this post][aaron].

I have now the levels

* Programming
* Writing
* Reading
* Watching
* Verro
* Misc

All so I can always have something to do pending on my different energy levels etc.

[aaron]: http://www.aaronsw.com/weblog/productivity

55 changes: 55 additions & 0 deletions posts/2013-01-20-i_robot.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
---
layout: post
title: I, Robot
category: School
tags: School, Robot, Project
---


Here are the results of the big robot construction course we had before christmas! The whole process went smooth and our group was amazing. The design and building of the robot went well even though in hindsight I would've changed a lot of stuff. The ending competition didn't go quite as we had hoped, but we never did place much effort in it anyhow. In summary I'm very pleased with the result.


Competition
============

We had a competition with the other robots at the end. It didn't matter how it went really, but as always it's fun to do well. I couldn't embed the youtube links, but here are our epic matches!

* [Game one](http://www.youtube.com/watch?v=EPU83cX80lY). Went well, getting our hopes up!
* [Game two](http://www.youtube.com/watch?v=8vdG_2DkTNM). Everything sucks. We accidentally touched the recalibrate button so the robot did not see the lines...
* [Game three](http://www.youtube.com/watch?v=cSmzn0bQOu8). Something is wrong with that curve I tell you! At least it felt better than loosing like the last one.
* [Game four (part 1)](http://www.youtube.com/watch?v=YlRP1cb5iaw) [Game four (part 2)](http://www.youtube.com/watch?v=Jc7EPJa72wE). Retribution!
* [Exhibition](http://www.youtube.com/watch?v=ckLn-DY2yck). Just a ploy game, with no rules. But they cheated anyway!

A bit upset about the second game... If that didn't happen I'm sure we could've won the whole thing, maybe. But no matter!

![](/media/images/trap14/Robot_0017.JPG)
*Do not **ever** place the blue start button right next to the gray nuke button! Or was the nuke button blue...?*


Gallery
========

Here's a bunch of nice photos of our robot.

<a href="/media/images/trap14/Robot_0001.jpg"><img src="/media/images/trap14/Robot_0001.jpg" width="200" /></a>
<a href="/media/images/trap14/Robot_0002.jpg"><img src="/media/images/trap14/Robot_0002.jpg" width="200" /></a>
<a href="/media/images/trap14/Robot_0005.jpg"><img src="/media/images/trap14/Robot_0005.jpg" width="200" /></a>
<a href="/media/images/trap14/Robot_0010.JPG"><img src="/media/images/trap14/Robot_0010.JPG" width="200" /></a>

<a href="/media/images/trap14/Robot_0012.JPG"><img src="/media/images/trap14/Robot_0012.JPG" width="200" /></a>
<a href="/media/images/trap14/Robot_0013.JPG"><img src="/media/images/trap14/Robot_0013.JPG" width="200" /></a>
<a href="/media/images/trap14/Robot_0016.JPG"><img src="/media/images/trap14/Robot_0016.JPG" width="200" /></a>
<a href="/media/images/trap14/Robot_0017.JPG"><img src="/media/images/trap14/Robot_0017.JPG" width="200" /></a>

<a href="/media/images/trap14/Robot_0018.JPG"><img src="/media/images/trap14/Robot_0018.JPG" width="200" /></a>
<a href="/media/images/trap14/Robot_0021.JPG"><img src="/media/images/trap14/Robot_0021.JPG" width="200" /></a>
<a href="/media/images/trap14/Robot_0024.JPG"><img src="/media/images/trap14/Robot_0024.JPG" width="200" /></a>
<a href="/media/images/trap14/Robot_0029.JPG"><img src="/media/images/trap14/Robot_0029.JPG" width="200" /></a>

<a href="/media/images/trap14/Robot_0031.JPG"><img src="/media/images/trap14/Robot_0031.JPG" width="200" /></a>
<a href="/media/images/trap14/Robot_0032.JPG"><img src="/media/images/trap14/Robot_0032.JPG" width="200" /></a>
<a href="/media/images/trap14/Robot_0033.JPG"><img src="/media/images/trap14/Robot_0033.JPG" width="200" /></a>
<a href="/media/images/trap14/Robot_0034.JPG"><img src="/media/images/trap14/Robot_0034.JPG" width="200" /></a>
<a href="/media/images/trap14/Robot_0035.JPG"><img src="/media/images/trap14/Robot_0035.JPG" width="200" /></a>
<a href="/media/images/trap14/Robot_0037.JPG"><img src="/media/images/trap14/Robot_0037.JPG" width="200" /></a>

Loading