Kahoot's nest

This is a blog about my flash animations, programming, the Bible, Linux, and a hand full of other misc things.

Wednesday, April 07, 2010

I'm Alive!

I kind of remember how I haven't updated my blog in quite some time, even if nobody has much viewed it, so I thought I would make a quick post.

Oh, did I mention I have a website?

kahootbird.com !

Thursday, June 04, 2009

Here's a little background on myself.

After picking up C programming, I had a big idea for a project. I suppose it's every programmers nature when they first began programming to try a big project and kick themselves in the head at least once. My idea was a battleship clone. If you've ever played the board game "battleship" then you know what I'm talking about.

I used to be a Windows XP user (and that's another story in itself! Linux is the way to go!) and I settled eventually on the Allegro programming library. After I got a grip on it, I wasn't quite happy with some of its limitations.

I designed some graphics and spent some time planning, and eventually came up with a basic game. What I did finish can currently be downloaded at kahoot.bbitmaster.com

The biggest thing that turned it into a fiasco was I didn't use multiple source files.
Multiple source files are a great thing. Multiple source files can help you greatly in keeping track of things in your project. My project wasn't the same without it.

*sigh* I wish I had finished it. Perhaps one day I will go back and redo the code in another language.

Other than that, I learnt some basic win32 API code and played with it. I enjoyed debugging some programs with ollydbg for a while. It all seemed like the way to go because it's a low level API. I even made a lot of basic test applications in win32 API. Because of this knowledge, I was able to change the behavior of some older applications/games I liked to some extent, and I feel it paid off enough that it was worth the trouble.

So anyway, shortly thereafter my main hard drive starting going out slowly. I had to buy a new one, and decided to switch to Ubuntu Linux all the way. Now I'm slowly learning my way around.

I poked around in the Xlib library for about a couple of weeks and read a big manual on it for quite a while till I realized it was the wrong way to go. I don't mind programming low level, and I was wanting to write a wrapper. Xlib is pretty difficult in a lot of ways compared to toolkits and even win32 API. What finally turn me off to the whole idea was learning about XCB.

There is a lot of detail I'm skipping here if your unfamiler with these libraries. You can read about the basics of XCB and xlib here: http://xcb.freedesktop.org/ and here: http://en.wikipedia.org/wiki/Xlib All I really planned to use Xlib for was simply setting up a window for keyboard input.

To get to the main point, XCB turned me off to programming in the X windowing system. Why, seeing it's so much better than xlib is that the case? Well, I saw a post on gamedev and some other sources that was in early 2008 where people mentioned having trouble with keyboard input without mixing xlib calls.

On the XCB webpage it brags that it is better than xlib because it has better calls and is more suitable for multi-threading. However, I can't seem to find many real projects made with XCB alone. XCB with Xlib would be a real mess to have to program in togather.

My original motivation for going so low level is to reduce the file size for and projects I make. If you program something in GTK then windows users have to tote around about a 15 MB .dll file just for your library. Most people would disagree with me, but I see absolutely no reason for having a big library. A lot of software could be programmed more effiecently, and a lot of software could also take up a minimal file size.

Now days I've finally settled with SDL because of a lack of another option. Although there are some things I don't like about it, I plan to stick with it. But that's another story to isn't it?

Labels: