Start | Videos | Poems | Downloads | Help | Contact me | Floating Point Software
Sunday, April 06 2008 16:01:00 by freelancer
I added a page with my YouTube videos. Currently there are three music videos (all made by me).
Friday, March 07 2008 20:29:36 by freelancer
I played this game for the first time about three months ago, and since I'm still playing it regularly I thought I'd say a few words about it. T.W.T.P.B. is a Shoot Em' Up developed by Spell of Play Studios, and it's probably the most addictive game I've ever played. The concept is simple; you control your ship with the mouse and increase your score by destroying enemy ships (which are actually various formation-flying geometric shapes). To aid you in doing so you have three different abilities at your disposal; time warp (think "bullet time"), rapid fire, and regeneration (use energy to restore your health). Energy is acquired by collecting square powerup boxes that are left by destroyed enemies. There are also triangular boxes, which provide you with weapon upgrades. This basically adds more guns to your ship for more firepower.

And...that's it, as far as gameplay is concerned. Don't get me wrong though. This game might seem simple, but it is really fun. And really hard. There is also a story to it, but it isn't very developed yet. Which brings me to another interesting point. This game is being developed iteratively, which means that about every two weeks a new update is released, for free, adding new features and refining old ones. That's right, at the moment this game doesn't cost anything. If you want you can donate $5 (it's worth it!), but it is by no means a requirement. This will probably change when the game is finished, but I'm sure it'll be worth whatever it will cost.

If I want to call this a review I should probably say something about graphics too... Well, there's nothing really fancy in there, but if you take the enemy ships for what they really are (various geometric shapes) they actually look really good (see screenshot below). Besides, in my opinion most games today focus way too much on graphics, and not enough on gameplay (yes, that's a cliché, but it's a damn good one). Hopefully after reading this you'll want to play the game. If not, I advise you to download it and try it out anyway (it's only 6MB!). After doing so, don't forget to post your feedback on the forum. As I said, this is probably the most addictive game I've ever played, so don't blame me if you lose any sleep playing it. Big thumbs up for the awesome guys at Spell of Play Studios!

T.W.T.P.B.


(No, I'm not going to give the game a score. I really don't believe in arbitrary scales based on subjective opinions. Also, if you know what T.W.T.P.B. means, do tell. There's a cake in it for you. (Can you mail cakes? Oh well, I'm sure I'll figure something out.))
Monday, March 03 2008 17:48:27 by freelancer
Tabatha on my Toshiba Portege M200I mentioned a while ago that I was going to download and install Tabatha. Well, I did. And I like it. A lot. It's a pretty simple concept, and yet it can be extremely useful. As I said in a previous post, Tabatha basically provides a popup menu for executing system commands. It reads this menu from a config file, and executes the commands as the user who started Tabatha. For this reason, I have a shortcut to "sudo tabatha" on my desktop. I'll add my config below, which produces the nice menu on the right.
(Suspend to Disk doesn't actually work on my laptop (not sure why), but the button is there for future use)

/etc/tabatha
<tabatha title="Toshiba Portege M200">
<section title="Power">
<button title="Suspend to memory">
<command>acpitool -s</command>
</button>
<button title="Suspend to disk">
<command>acpitool -S</command>
</button>
<button title="Reboot">
<command>reboot</command>
</button>
<button title="Shut Down">
<command>halt</command>
</button>
</section>
<section title="Brightness">
<button title="Level 0">
<command>acpitool -l 0</command>
</button>
<button title="Level 1">
<command>acpitool -l 1</command>
</button>
<button title="Level 2">
<command>acpitool -l 2</command>
</button>
<button title="Level 3">
<command>acpitool -l 3</command>
</button>
<button title="Level 4">
<command>acpitool -l 4</command>
</button>
<button title="Level 5">
<command>acpitool -l 5</command>
</button>
<button title="Level 6">
<command>acpitool -l 6</command>
</button>
<button title="Level 7">
<command>acpitool -l 7</command>
</button>
</section>
<section title="Network">
<button title="Wired Info">
<command>ifconfig eth0 | gmessage -nearmouse -title Wired -file -</command>
</button>
<button title="Wired Up">
<command>ifup eth0</command>
</button>
<button title="Wired Down">
<command>ifdown eth0</command>
</button>
<button title="Wireless Info">
<command>ifconfig eth1 | gmessage -nearmouse -title Wired -file -</command>
</button>
<button title="Wireless Up">
<command>ifup eth1</command>
</button>
<button title="Wireless Down">
<command>ifdown eth1</command>
</button>
</section>
</tabatha>
Thursday, February 28 2008 16:49:37 by freelancer
Contrary to common belief, Microsoft does not want to sell your family to the lowest bidder. I've never actually had an established opinion on whether or not Microsoft is evil, but most tech-savvy people in my generation seem to think that it is. I have no idea why, as I have yet to see any real proof to support that claim. Their biggest argument is usually that Windows is closed-source. But why is that so bad? If you write something in your notebook, is it your opinion that everyone should be allowed to read that? Doesn't really matter what I say I suppose, since most of these people never budge no matter what. But please, tell me why you think Microsoft is evil. I'd be happy to tell you why you're wrong.

Hyper-v

Two IT Pro Evangelists from Microsoft Sweden, Maria Lundahl and Michael Anderberg (also acting Chief Security Advisor) visited my university yesterday to demonstrate the virtualization features in Windows Server 2008 and the Security Development Lifecycle (among other things). The former is called Hyper-V, and is quite different from most common virtualization techniques. A traditional virtualization application (for example Virtual PC) runs as a normal application on top of the host operating system, and emulates specific existing hardware. The guest operating system is completely unaware of this, and uses its own drivers to communicate with the emulated hardware, which then uses the host's drivers to communicate with the real hardware. Hyper-V is different in that it uses a microkernelized hypervisor.

The hypervisor runs on top of the existing hardware, beneath the host operating system (called the Root Partition), and doesn't emulate actual hardware. Instead, the root OS provides something called synthetic devices. Since these synthetic devices are in no way trying to act like real hardware, they are not bound by its limitations. This would of course not make a big difference if the guest OS (called the Child Partition) was still using "normal" drivers to communicate with what it believes is actual hardware. So it doesn't. Instead, the guest OS is fully aware that it is running virtualized. In Hyper-V, this is called Enlightenment. When an enlightened OS boots, it checks for a hypervisor. If it can't find one, it assumes it's running on physical hardware, and continues normally. However, if it does find a hypervisor, it will use it to communicate with what it knows is the synthetic devices.

Instead of using normal drivers, when a hardware call is made it is relayed to the host OS' VSP (Virtual Service Provider) using something called an VMBus, which connects child partitions to the root partition. This completely removes the device emulation layer, but for obvious reasons it only works on enlightened guests. So what about, say, Linux? That's the really fun part. There is in fact a virtualization application called Xen, which supports Linux (as well as *BSD, OpenSolaris, ...) and uses a very similar technique with a hypervisor of its own. Of course, it's not directly compatible with its Windows counterpart, but using something called a Hypercall Adapter, enlightened Linux guests can run on top of Hyper-V. Not all operating systems support enlightenment though (Windows 2000 for example? don't quote me on that), and for this Hyper-V provides emulated devices as well, just like Virtual PC or Virtual Server does.

I don't have any first-hand experience with Hyper-V, but from what I've heard it looks very promising. I can't wait to try it myself.

Security Development Lifecycle and UAC

The thing Michael Anderberg talked about, Security Development Lifecycle, has to do with how people at Microsoft write their code. To tell you the truth, I don't remember most of the specifics, but in general it's about having secure code in mind throughout the entire development process (which seems perfectly reasonable to me). He also talked about why it often takes a lot of time between when a vulnerability is discovered and when Microsoft releases a patch (testing, testing, and even more testing).

Another thing that came up was the User Account Control (UAC) in Windows Vista. You know, that annoying popup that makes you wanna throw the computer out the window ("You are trying to inflict damage on the computer. Cancel or allow?", or as I've come to see it "Would you like this box to disappear?"). I've always considered it an annoyance myself, but that's probably because I've never really though about why it's there. Since most Windows users always run everything with administrative privileges, if they accidentally execute malicious code, it too will have those privileges. Sure, you might just want to see that flying pig on that cool website (Michael's example, not mine), but have you ever considered what else that pig can do? Maybe it contains a trojan, which will infect your computer as soon as you watch it. This is a big problem if your browser is run with administrative privileges. UAC prevents this by not automatically giving you those privileges even though you have them. That is, they are not granted until you click that "Allow" button. Which shouldn't even have to happen very often, since most of the things people do on a daily basis doesn't require administrative privileges.


Would you like to know more?

Maria Lundahl's blog (in Swedish)
Michael Anderberg's blog (in Swedish)
Windows Server 2008: Virtualization and Server Consolidation
Hyper-V @ Wikipedia
The Security Development Lifecycle (blog)
The Security Development Lifecycle (book)


Disclaimer: I did my best to make sure everything in this post is accurate. If you find an error, please let me know.
Tuesday, February 19 2008 12:05:48 by freelancer
Haven't been much activity lately, sorry about that. That might change, or not, I have no idea. So, what's happened lately? Well, a few months ago I bought a Toshiba Portégé M200 (hybrid Tablet PC), but I didn't really use it for anything (are you starting to see a pattern here?). Last week I decided to install Debian Linux on it (and succeeded). Linux actually handles tablets pretty well, and I had no problem getting it to recognize the digitizer or to rotate the screen. Of course there are also some really nice Linux applications out there suitable for tablets, among which these are some of my favorites:
  • Xournal - Note taking application similar to Microsoft Journal.
  • Pingus - A highly addictive Lemmings clone with penguins.
  • Tabatha - Popup menu to execute system commands. I haven't actually tried this yet, but I intend to. I like the concept.
  • Virtualbox - Virtual machine similar to VMWare Workstation. Has a really nice feature called "seamless mode", in which
    all of the client operating system (in my case Windows 2000) is hidden except for the taskbar and active applications.
  • Fluxbox - Not really an application, but rather a lightweight windowmanager. I really like it, and it works great on my laptop.
  • and of course The GIMP, which has native support for digitizers (including pressure sensitivity).


Another good thing that has happened is related to my domain name. I purchased it last November, but there were some...problems. Namely, I couldn't administrate my DNS records. After about a month I was offered the temporary solution to run my own DNS server and have it handle the domain name. Sure, no problem, that's actually more convenient for me. Two weeks ago, the actual problem was fixed, and because of my inconvenience the payment for this entire year was refunded. Thank you, Atlantis North Limited!

Also, I added a section for my poems. Love it or hate it, I couldn't care less. Oh, I've decided that this is a blag.
Monday, January 28 2008 19:59:21 by freelancer
I made this application last year, and haven't really done anything with it since, so I might as well "publish" it (available in the Downloads section). It's a remote control application for the music player foobar2000, and requires the fb2k plugin foo_controlserver. The design is based on Brumal's Treeline config.

(Synchronization is completely untested and probably doesn't work)
Tuesday, January 22 2008 00:11:59 by freelancer
I bought this domain name last November, so I guess it's time I do something with it... That's why I made this page. Not quite sure what it is yet, but I'm sure I'll think of something. I know it looks like a blog, but I don't really want to call it that. Blog = "web log", and in my opinion that's just a fancy way of saying "online diary". This is not a diary (I think). Therefor, I'll refer to it as my Web Thingy until I can think of something better. Hopefully I'll post something interesting here soon. We'll see.
Posts:
YouTube videos
T.W.T.P.B.
Tabatha
Microsoft is not evil
Inactivity
foobar_remote
Web Thingy online...

 Log in/Register