Older blog entries for chipx86 (starting at number 239)

libcomprex

I've been working on a partial rewrite of libcomprex, my compression/decompression abstraction library. It is now object-oriented, using a scheme similar to glib but simpler, as we don't need anything complicated. However, it does provide support for abstract classes, virtual functions, constructors, and destructors. It's quite nice. Hopefully it'll be ready to commit to CVS soon.

elliot

Was that really necessary? Leave the man be. He's done a lot of good, and has gone through a lot of bad. I don't get why people in this so-called "community" feel the need to constantly bash one another. Sure doesn't help our image any, and it makes some of us embarrassed to be a part of it sometimes...

Life

Unbelievable... Ever since last weekend, when Grandma died, I've just had the worst time. Not sleeping right, not waking up for school, etc. But yesterday and today top it off.

Yesterday, every piece of software I touched died. Gimp died, Enlightenment died, and some others I can't remember right now. I decided to try to make a switch to GNOME 2 + Metacity, which is interesting, since I never use desktop environments normally. A bit late, Metacity crashed (probably some weird unrelated glitch) and locked up the box. When I rebooted, fsck hung. I spent the next couple of hours trying to get the computer to just boot again.

Today, the 100' of CAT-5 that connects me to the Internet got tripped over. No, I don't leave it on the ground. It runs near the roof outside, but it fell down and got tripped over. This was enough to sever the connections inside part of the cable, and kept me off the Internet for some time until I was able to splice it back together. Seems to work now..

Gaim

Not everything has been bad though. I rewrote Gaim's file transfer, and created a new dialog. See the screenshot. I'm happy with it.

Yeah, it's kind of ripped from galeon2, but this is open source. I hope people take my stuff and use it :) It's also a bit modified to be more suitable for IM.

We're making good progress on the gaim core/UI split, which (not to brag) didn't make any progress until I did my conversation rewrite. Now everybody seems all excited about core/UI-splitting things. Gaim is actually getting documented and having a real API. Very cool.

Sad Day

Today has been a sad day for many, due to the death of the astronauts in the space shuttle explosion. However, it's been a sad day for me in another way...

My Grandma died of lung and liver cancer today, February 1st, 2003.

Gaim

More bugs fixed in the conversation rewrite. I'm hoping to get to the rest this weekend, though I imagine I'll want to sleep after this week of school.

Last night, I wrote a little plugin for gaim, which is now bundled in CVS. It provides support for mouse gestures in conversation windows. I imagine we're probably the first and only IM client with support for mouse gestures, but I'm not positive about this. It's pretty cool, though. You basically have galeon-style gestures for closing conversations and for switching to previous and next conversations, as well as moving a conversation out of a window.

School

School is wiping me out, but it's not too bad. I won't go into details about my teachers for fear of one of them reading this ;). I'm taking Japanese again, but not officially. Since I can only attend on Wednesdays, I'm simply going to be sitting in on class. Should be fun.

It's good to see all my friends again. I even ran into some old ones (or rather, they ran into me and called out to me). I have not yet taken Speech class, which I am not looking forward to. It's a 3 hour class on Mondays. Bleh.. Ah well.

And now I must sleep before I go insane.

Gaim

My conversation rewrite made it into gaim CVS last night. Very cool. There were a ton of bugs, but we've gotten through most of the major ones, and people are using it without major issues now.

Among the features of the new (550+KB) patch:

  • Core/UI split. The core conversation backend and the user interface are completely separated. A UI isn't even technically needed to function, but obviously, you wouldn't see anything without one.
  • Fully documented API.
  • Multiple windows on screen, with multiple tabs per window.
  • Tabs (containing IMs or chats) can be dragged from window to window.
  • The Send As drop-down box is moved to the menubar.
  • Added a menubar to chat conversations.
  • A stock icon system.
  • Customizable window/conversation positioning.

There's more I think.. those are the highlights though. Very happy with this patch. It should get even cooler soon.

Gaim

The conversation rewrite is almost finished. I finished writing chat support, and just need to map a few buttons on IM windows, setup a few more API functions, and bring back the Send Message As drop-down and the menu bar. After this, it should be ready for inclusion into the main tree.

Gaim

My conversation patch has progressed considerably. Although chat windows are not implemented yet, IM windows work quite well. Multiple windows can be used at once. Each can have tabs, and tabs can be dragged between them. All goes according to plan.

Eeexcellent...

Artificial Life

One subject I have always been fascinated in is the subjects of artificial intelligence and life. Lately, I've been studying genetic algorithms and neural networks, trying to piece together concepts in my mind. Interesting subjects. I have not yet done much as far as code goes, but I'm starting to fill up a notebook with ideas and theories.

One thing I would like to do is implement a world that is imperfect. I want to create a simple single-celled lifeform that can evolve and eventually evolve into a multi-cellular lifeform. I want flexibility and accidents to happen. Ambitious project, and I'm nowhere near the stage to be able to pull it off, but you've got to have dreams, right?

There are theories I have that I'd like to either prove or disprove. One of them is that emotion is a result of intelligence, and most emotions depend on the ability to desire or wish for something. But what is desire? Wanting to better yourself? Why do you want to better yourself? See, when you're happy, it's because something happened that you wanted to happen. Something you desired happened. When you're angry, it's typically the opposite. Something happened that you desired not to happen. When something is stolen, or somebody dies, you feel anger or sorrow.

I haven't mapped them all out. I should sit down and think about this more. Anyhow, I would like to see an AI advanced enough to be able to develop emotion. I don't think our current method of building an AI and teaching it is going to work as well as we'd like. I feel we would be better off creating an organism that could evolve intelligence, and giving it a world it could interact with in order to learn.

How do you describe an imperfect world? Maybe more importantly and to the point, how do you create a world and a cellular organism that can self-evolve to that point? In genetic algorithms, you can give them fitness levels and goals and the most fit generate offspring, etc., all based off certain parameters describing fitness. That's great and all, but it limits you to those parameters. So then what?

In the real world, everything is made up of atoms. In the digital world, we describe these organisms as code, structures, and algorithms. Perhaps cells should evolve themselves partially by rewriting themselves in code.

Well, from a guy new to all this, those are my thoughts. I plan on doing more reading and theorizing, and hopefully soon some actual code for more basic concepts.

School

7 days away! Ack!

I have gotten so bad at updating this. I'll have to work on it a bit more.

GNUpdate

Well, GNUpdate Hackfest was on the 27th-28th (my time, it officially started at 0:00 UTC on the 28th). I got a bit of work done. We now have support for the Debian package database, though a lot of the searching isn't there, because the database has no form of indexing from what I can tell for groups, dependencies, etc. I'd have to go through every file, and that takes awhile.

I also fixed up the dependency checking quite a bit. I'm now able to actually install packages successfully! The next step is support for upgrades and removals.

Oh yeah, and scripting works too! Woohoo! I told gpkg to install cyrus, cyrus-md5, openldap, pine, and screen, and it figured out the order, ran the scripts, installed the files, added the DB entries, and everything Just Worked (TM). Very happy.

Gaim

I've been working quite a bit on a rather large patch for Gaim. I'm completely ripping out the entire conversation backend and rewriting it from scratch. The advantages are that it's now developed with a core/UI split in mind, it has a fully documented API, and users will now be able to have multiple windows each with multiple tabs, and can drag-and-drop tabs between the windows. I'm not even near a working stage, but a lot of work has been done, so it'll get there.

Unfortunately, it's requiring that I clean up messes in other parts of gaim...

Life

So.. let's see. Well, I'm out of school for the semester, of course. I have no idea how well I did on the finals. Probably decent, but not great. I'm actually missing school now, though, because there are friends I wish I could see every day that I simply can't now... Ah well, next semester.

Christmas was pretty good. I got some nice decorations from my room, some DVDs I wanted, some games, and a room fridge :) Very cool. It's empty, but I'll remedy that soon.

I feel dead tired at the moment. For some reason, I was unable to sleep last night until about 06:30 in the morning. I woke up at almost 14:00. Hopefully I won't have this problem tonight :/

School

I've been preparing for my two finals tomorrow in Anthropology (Magic, Witchcraft, and Religion) and Food And Nutrition. The Anthropology will be the easier of the two, though I'm obviously looking forward to neither. However, I think I'll do okay on them. I just have to go over the Nutrition notes a few million more times. At least we're able to use our study guide on the anthropology one! :)

Birthday

I haven't posted on here since my birthday. Well, I got some good stuff, and we had great food at Genkai, the Japanese restaurant. One of my favorite presents was the Go board (I've been wanting one for a long time). I also got a Japanese-style desk lamp, a bonsai tree, one of those sand Zen gardens, and a few other things. Notice a theme? After finals, I figure I'll redecorate a little ;)

Other stuff coming up that I can't elaborate on just yet...

Happy Birthday To Me!

Today's my birthday! Woohoo! I turned 19. Looking forward to a good day :)

230 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!