Monday, April 22, 2013

Deciding to Lose Freedom

Freedom is widely perceived as a purely good thing. It is most often defined as the ability to act as one wants, lacking external restraints and regulations.

A small thought experiment will introduce my premise. You are fully free, and you are facing a decision between freedom and imposing restraints on your future self. Would you not instantly decide for freedom?

Yet, we often are happiest when we have placed restraints on ourselves. When we have decided to do so, when we have decided to allow external control over part of our lives. Marriage, for example, can be seen as a decision to restrict your future actions. Ignoring legal and financial advantages, many would nevertheless, happily decide to bind themselves to one person for the rest of their lives. The breaking of such a restriction would result in negative consequences, perhaps social, perhaps legal, perhaps otherwise. Another example could be the restriction of alcohol consumption on the self. Simply an imposed diet, an exercise routine, or a sleeping schedule, also match the criteria. Perhaps a dream of talent is supported by forcing bi-daily practice. Perhaps actions are taken to introduce negative consequences if these things do not happen.

Freedom of people are lost through such decisions, however, it has not stopped them from achieving their dreams. It has guided them, it has provided consistency and removed impulsiveness. It has set a framework for the future self.

We are often so quick to judge those which give up their freedom, yet exactly such myopic vision prevents us from seeing advantages in restriction. We are scared of truly deciding, of truly living.

It is like the horse (桂馬) in Shogi. Every turn, the horse has the decision of two open moves. Taking one removes the possibility of ever taking the other. Yet, the horse steadily moves forward after every decision, and upon reaching the other side, is granted a more flexible set of motions.

Sunday, April 14, 2013

Love and Distance

Note: Read this blog selectively. This post is about love and distance. It's a post with the purpose of expressing my emotions and feelings. If that's not your cup of tea, don't drink it. Don't waste tea. Seriously. =)

9814 kilometers, the blink of an eye, enough to bind the heart for a lifetime. As the snow melts, and flowers break their spell, I breathe in. I remember this smell, the smell of freedom and energy, a combination of rain and sun. A lonely snowflake kisses my nose, only to loose its form, but never it's nature. Leaves whisper, as the wind relays their message. The sun shines through the trees, and I remember.

Sitting under a tree, careless. I felt the warmth of a breath, and the rhythm of a heart. We shared a universe, and it was ours. I remember, simply walking, with a familiar hand to hold. I remember watching as the birds flew by above, my mind joined them, and reached for the sun. I remember kissing in heavy rain, perfectly content, knowing that a dry place would take five steps to reach. I remember holding each other, listening to the ocean with closed eyes, being one with nature, feeling calm, as if time stood still. I remember going out in the middle of the night to buy ice cream, her head in my lap, and reaching for the stars, on a lonely wooden bench by the river. I remember her shock when the koi threatened to eat her, hearing sparrows chirp as a gong rings in the distance, her face.

I imagine her face, completing mine. I imagine the smell of her hair, the look in her eyes, the taste of her lips, the feeling of her soft, small hands. I yearn to see her paint with concentration in her eyes, to see her read with wonder, to see her cook with her weight on one leg, to see her be. I yearn to share my experiences with her; days of snow, days of rain, days of wind, days of sun. Hiking, cycling, swimming, walking, discovering, breathing, being.

Together.

I breathe out. I let go. An infinity of sensations leaves me.
They return in my next breath.

I don't ask for much, yet I ask for everything.

Thursday, April 4, 2013

Persistence

It's been three years since I've posted anything, and a lot has changed.


Why did I start blogging again?

The aim of this blog is to provide me with an outlet for my ideas and thoughts. Perhaps I get to enjoy the company of people like you, reading my blog, and perhaps you decide to contribute, or perhaps you learn something, or perhaps, you enjoy run-on sentences as much as I do. Whatever the case, I believe more good will come out of publicizing my posts, than bad.

I decided to continue my old blog, rather than start a new one. While some of my old posts may not reflect who I am at the moment, I believe it is healthy to accept who you once were. If I separated the new me from the old me, I believe I would not be doing that.


My Current Situation

I finished high school, quite well, I might add, and entered a university. I just started my second semester, after having an admittedly disastrous first one. While I'm trying to get as much out of university as possible, I'm mainly going through it for future security.

For the past 9 years, half of my life, in fact, I've lived in Japan. After graduating from an international school there, I moved to Switzerland (my home country) for my Bachelors. Currently it is in Software Systems, however it could change into one of Business Informatics with a strong focus on Economics. Frankly, I will, as I did with my choice of university, pick the one allowing me for more freedom of my studies. This includes free time, and course choice.

I've found that I learn a lot faster by myself, at least at this stage. I wouldn't be surprised that this will stop being the case at some point. I just began learning Ruby and Rails simultaneously, and I'm amazed at the power and speed at which one individual can accomplish things. I'm aiming to acquire these skills as quickly as possible, while not sacrificing too much of my university performance. It is a pain to walk the line, but it is necessary.

My Future Situation

In three years, I aim to have graduated university, with a well rounded portfolio in my hand. I have many planned projects, and I hope I get to share them with my dear readers. If, with luck, one of those projects turns out to be sufficiently profitable, well then, I might consider my alternatives to higher education.

The goal of my life, is to help as many people as possible. How I go about accomplishing this, I have yet to figure out, but as of now, I aim to gather as much power and information as possible. I owe it to those not granted with the chances I have been granted with.


I welcome Discussion,
Simon

Saturday, March 6, 2010

Quake Live requires Intelligence

I'm tired of people badmouthing Quake in terms of intelligence just because they haven't played it long enough to understand it. To prove that Quake doesn't only require extreme skill, which should be obvious by watching some Youtube movies, but also intelligence, I'm going to show what goes on in my mind while playing the game. I play Quake Live (so Quake 3 Multiplayer) and mostly Clan Arena.

The general Quake strategy is to move around the map while controlling when, and where to get in a fight as well as how long it will last. There are two parts, the overall movement plan, and the encounters.

During an encounter there are many things to consider, one of the most important of which is weapon choice. Here's a list of weapons and the factors I take into consideration when choosing:

  1. Rocket Launcher; It's great for spamming places you think the enemy will be in soon. I use it when it's obvious what the enemies next move will be, and when the enemy has a small movement range available.
  2. Railgun; Used in long range fights or when the enemy is running away. Excellent for sniping the enemy if he has no clue where you are. Good for finishing of an enemy, deals high damage.
  3. Machine Gun; Useless in Clan Arena, designed as a basic weapon if there are no others available.
  4. Plasma Gun; Good for obscuring the enemies vision or for spamming dorways he will appear in.
  5. Lightning Gun; Good in medium range fights when the enemies movement is easy to trace, for example if he is falling or jumping towards you.
  6. Shotgun; Extremely good at finishing of an enemy or at close range.
  7. Grenade Launcher; Good for spamming small doorways, good for protecting your back and making sure no one follows you.
  8. Gauntlet; Good for Humiliating someone =p
As you can see, there's many factors to take into consideration just for weapon choice alone. During a fight you will also need to know when and how to escape, will a rocket jump get you killed or will a teleport place you in the midst of your enemies? Dodging is also a crucial part of fights, how far do you run to one side before your enemy realizes he can predict your movement? Moving a little may only prove good if the enemy is not firing rockets at the ground near you which is very common.

The General Movement is the other important thing. Here's a map I made of one of the countless well played Clan Arena Maps:

(click for larger/clearer image with white background)

This isn't a blueprint and the lines don't represent how long it takes to get from one node to another. The map shows the areas of the map I connect with one another, for example, if I'm in the Lower Central Area (1) I think I could rocket jump into the intersection, teleport to Central Area (2), take the sneaky waterway to another teleporter, or simply walk the normal path. Directly after that comes the thought of where I will land. If I think about rocket jumping to the intersection, I will likely consider another route if I know that 80% of my enemies are camping in the Stairwell. Another thing I take into consideration is the tactical advantage I will end up in, for example taking the sneaky Tunnel from the Stairway to the Central Area (2) will put me on the bottom floor in a long narrow area where I can easily be disposed of. I mainly decide on such sneaky routes if I know my enemy is sitting with his back to the exit. The final thing I worry about is the route itself, for example the teleports are very loud and my enemy will know where I have gone. The rocket-jumps and waterways make a sound but only if the enemy is close by. Sometimes you can mislead your enemy by teleporting and then hiding, and sometimes he will just shoot you down. Another important factor is the length of time it would take to go that way, for example it may be useless to run around for 5 minutes if your enemy can simply turn around and shoot you in the face.

It's debatable whether predicting the other players movement is a skill that does or doesn't require intelligence, so I'm not including that here. Remember this is a very narrow window into Quake Live (... or 3), there are 5 game modes, countless items, more than 20 maps, and many more factors you will find out if you go play some Quake Live =D

Thursday, December 24, 2009

Monday, August 31, 2009

How to Completely Encrypt your Hard drive

This tutorial assumes you have basic knowledge in partition editing. Go here if you don't.

About a year ago I stumbled on TrueCrypt, Open Source encryption software which by definition allows government level encryption (AES) . Encrypting your Hard drive can help you in a lot of situations and it only sacrifices 30 minutes of your valuable time.

Optional: Create a backup of your entire hard drive on a separate storage device now
Optional: Create a TrueCrypt Rescue disc

First of all you will want to Create an empty partition. Use any partition editing software for this, I prefer gparted as it's free and open source. The partition needs to support the OS you will install on it (format and size wise).

Next install any OS (operating system) on that partition. The OS on this partition does not have to be the OS you want to use later on so go ahead and install an Open Source OS to save yourself some copyright issues. The OS's only requirements is that it needs to be able to run TrueCrypt (Linux, Mac, Windows). Set up some drivers if needed (windows...) and get the OS up to speed. Next install TrueCrypt on the partition. Lastly install a boot loader on your computer if you don't already have one. I recommend grub (what's a bootloader?).

Clone the partition you just created. One partition will be your backup to work from if something goes wrong , this partition can be deleted later on, just keep it until you are sure everything is running smoothly. Now boot into your backup partition and run TrueCrypt. Select:
System > Encrypt System Partition/Drive...
Select normal press Next.
Select Encrypt the System Partition and press Next.
Select Multi-Boot and press Next.
Just answer the next view questions truthfully (hint: use your brain).
Wait and Watch as it encrypts your OS.

The TrueCrypt Boot-loader should now be installed on your boot-hard drive.

Enjoy your Encrypted OS =)

Continue Reading if you are either very paranoid or very illegal

But wait, what if Authorities or the Mafia force you to reveal the password to your OS?
Well this is where Plausible Deniability comes into play.

You may create a hidden OS inside your already encrypted OS. It is impossible to know whether a hidden volume exists on your computer as it looks exactly the same as random bits, the only pointer to it is a password you choose.

To create a hidden OS boot into your Encrypted OS and Start TrueCrypt.
System > Encrypt System Partition/Drive...
Select hidden volume this time.
You should be familiar with the steps...

You now have a Hidden OS inside an Encrypted OS. To boot into your hidden OS simply enter the password you choose for it. To boot into your Encrypted OS just enter your old password.

What do you do if someone forces you to reveal your password?
Give them the password of your Encrypted OS. They don't have proof that you have a hidden OS so don't give them any reason to believe so.

Now how do we make the Denial of a Hidden OS Plausible?
Every now and then do something (legal) on your Encrypted OS, this will make it look like you actively use it. I have some scripts which I run now and then to surf the web for me and do other random stuff, I might release them but you should be able to come up with your own.

Enjoy =D

Wednesday, July 29, 2009

First Computer Build

I just finished building my first computer =D
Gotta install the OS now...

More Details Really Really Soon =D

Edit:

System:

CPU: Phenom II x3 720 BE
Motherboard: ASRock M3A780GXH 128M
Case: Antec 900
Power Supply: AQTIS Double Graphic Power AP-650GTX
Memory: Just Some DDR3
Hard Drive: 1tb (Hitachi)
and a simple DVD/CD Reader/Writer

It doesn't have a Graphics Card yet but I'm going to get one soon (probably around Radeon 4770 HD or more). The integrated Motherboard Graphics (ATI Radeon 3200 HD) are doing fine so far but then again I've only tried Compiz Fusion and some Screen savers =D

It runs stable and it looks really great next to my old build:


Of course there is a huge mess of cables but then again it's my first and I'm happy all the parts I chose work together as expected =D


And just for giggles here's the trusty glass penguin always sitting on my desk:

Wednesday, July 1, 2009

Website Backups

Today I made a Website Backup. This post has nothing to do with the Server I'm currently working on. Unfortunately I didn't get time to work on it, as I promised myself that I would only work on it for an entire day at the minimum.

I made the site backup using the FileZilla FTP Client. Of course it runs on Linux, otherwise I wouldn't use it. It's quite convenient, here's a (huge) screenshot of it running:


And yes, the blurry parts are not some cool graphic effects of the program, they where added in by me using GIMP for security reasons.

The backup took me quite some time. After realising it was going to take longer than expected, I wanted to know what exactly was so space consuming on my server. My first guess was correct, the pictures where to blame. In dismay I realised I had forgotten to compress them before uploading. This obviously wasn't good, so I started GIMP and slowly re-saved every picture at a lower quality. Of course this could have been done using a macro but there weren't that many pictures and I was bored. As a result my site may (should) load quicker now.

And that's all for today, just a quick post about my site Backups =)

Saturday, June 27, 2009

Server Day 1 - Brainstorming

During this great and incredible summer vacation I'm going to attempt to program a server. This server will be part of my MMORPG, hence the title. Today I just brainstormed what and how the server will act like.

First of all I had to decide on the protocol. While UDP is very quick, it's not very reliable. Packets may get lost a long the way and there is no way to know if they arrive in the same order that they where sent. TCP is of course the opposite. It is very reliable, however it is of course slower. I choose to go with TCP. The reason is that I need a reliable connection between my Server and Client to debug the Server easily. TCP is also easier to implement, which is an added bonus. Maybe when the server is up and running I will switch some things the server sends in an endless stream (like the players locations) to a UDP protocol to ease the load.

The serve will be programmed in C. The reason being is that C is very quick and reliable once all bugs have been found. I do not now C fully yet, however for the last month or so I have been playing around with C and some parts are extremely similar to Java, my current all time favorite. I'll have to learn a little bit of C while programming this server, not to speak of the idea of sockets, something which I have never looked at before. Overall this server will be a tremendous learning experience, I will have gained a lot from it even if it ends up in heaps and ashes (something which I am positive won't happen) =D

The server will run on Linux. Linux is just more reliable. Period. My chosen Linux OS is Ubuntu. The reason behind this is that I have been using Ubuntu for the past year now and only switched to windows for the occasionally PowerPoint presentation I had to create for "educational means". I have my old computer lying around and I thought I might install Ubuntu on it and see where it goes from there =D

Now how do I test the server? Well my idea is that I will connect my main computer to my old computer (via LAN of course). After that I 'm going to install SSH on my old computer so I can compile and run the C code through SSH. That's what I'm going to try to do next.

This post has become very long and I hate to see it end, but if I would write about everything I have brainstormed the next few posts would look like nothing you've ever seen, simply because you wouldn't be able to see them =D

Friday, June 12, 2009

Exams Ended & Got tons to Do !

Those terrible terrible worthless ugly exams are over!
I have two months of free time now! YAY!
Jealous Much?

Here's all the fun stuff I'm planning to do:

(I'll strike them out as I finish them)

- Get my Site up to Date
-- Update Articles
-- Update Software Section
-- Maybe add a Login Section
-- Add Comment Section
-- Add a ToDo list
-- Finish of the CSS
- Create a New Blogger Style
-- Similar to Style of my Site
- Install SSH on an OLD laptop
-- Wipe HardDrive
-- Somehow get a Command Line Running
-- Note: Windows and X Window Server don't work
- Help a Friend finish psp.zirconcode.com
- Read a Book on the Linux Kernel
-- 19 / 19 Chapters Left to Read

Those are the things which I'm going to finish first. After that, I'm going to start on the more heavy stuff =D

Edit:
The ToDo list has moved to my sites ToDo section.