Older blog entries for carmstro (starting at number 8)

Woohoo! I got my drum set today. It's not exactly a quality one, but I know how to get a good sound out of it. It's got one cracked ride ("repaired" so it doesn't crack further), but it sounds good, and another huge 18" crash that sounds like shit unless you play it very quietly. Came with throne, sticks, stands, 3 toms, standard snare. $150.
Now on to become a drumming god!

I love Lisa. I wish she would accept help, though. She won't go to a doctor, and she's having problems. :(

29 Oct 2000 (updated 29 Oct 2000 at 06:56 UTC) »
jgg: When did the diary entries turn into a chat line?
I was pondering if it would be a good idea to request that some permanent forums be set up, or maybe some system where temporary subject-based forums could be started by any person (well, maybe apprentice and up) here on Advogato.

FreeBSD

I installed FreeBSD last night, accidentally overwriting my Debian /usr partition, but I'm not too disappointed, because this is turning out to be quite nice. I've installed bunches of applications with Ports, and I'm having a ball. Although I have a few gripes. It took me quite a while to figure out how to update the skeletons in ports, and I'm a debian user, so I'm used to things like apt-get update. After finding some 3rd party documentation, and a little bit of tweaking around, I figured out how to update the skeleton. Also, the Makefile in /usr/ports really needs some work in the 'update' rule. It doesn't check to see if $SUP or $SUPFLAGS are defined, and it tries to run
$(SUP) $(SUPFLAGS) $(PORTSSUPFILE).
This is obviously bad, because I had no idea that I needed to define $SUP and $SUPFLAGS from the error messages I got (It was trying to execute $PORTSSUPFILE). I think I may submit a patch that helps out with the usability of this Makefile. Maybe check for $SUP(FLAGS), and if they're not defined, use default values, and if the 'cvsup' command isn't on the system, recommend that the user install the cvsup-bin port.

I also had a few more ideas for contributions. A set of update scripts that updated each different ports tree with a different 'cvsup' command. This would require writing (or generating on-the-fly) several different supfiles, one for each ports category.

My other idea was to write a script that upgrades all currently installed software if there is a new version in the ports skeleton tree. I have to figure out the system a little better before I tackle that one, though. Oh, and if any of this stuff has been implemented already, please someone let me (carmstro) know. :)

Other than these few problems I've had so far, I must say I've been quite pleased with FreeBSD so far. It's a much more "integrated" system than most Linux distributions, even moreso than Debian, at least in my first impression. We'll see if that impression lasts long, though.

dria: You're getting into some very philosophical things. "What positive things are being accomplished?". I tend to look at it from a more personal perspective. If things like working 12 hours a day make me happy, then I'm damned well going to do it. Of course people don't really need cellphones, but if they like staying in touch with their associates, then that's great for them. The thing that really disgusts me is people who don't like what they're doing. I look lower upon someone who doesn't like what they're doing than someone who likes doing "bad" things (not by much, though ;)).

What you may be experiencing is some sort of technological burn-out. Of course, I'm no psychologist. I'm not going to tell you that you'll get over it and get back to being a techno-geek, because you very well might never again. That's great, that's what you want. I really wish you happiness with whatever you do. </cheese>

The Pixies kick ass.
I want one of those modern skooter things with the really thin bases.

Coding on Exanoks

I did a lot more coding this week. Thursday I skipped school just to code. Theoretically, my pthread function queue is somewhat finished, and Ken and I are working to integrate his server code with my queue code. Hopefully soon we'll have some bare-bones client interaction (Only by telnetting to the server, though).

Fooks will no longer be written as C++ classes, instead being a shared object containing a specific set of C functions. I can't really explain it perfectly, but for some reason C++ classes in a shared object can't be dlopen()ed and instantiated directly. Ken is working on an inheritance system and a base Fook class that all the functions will be loaded in to. I have to start looking at and trying to understand his code.

Next on the list of things to do is work on the world data routines, which will offer base functions to Fook programs. I have much (most?) of the API documentation done on this, and I'm proud of how elegant some of my solutions are (Well, at least I hope they are). Also we're going to have to start working on a real client for Exanoks. Ken wrote a C++ wrapper for SDL that he'll be using in the client (It's called OODL, for Object Oriented sDL, I think it's available at sourceforge).

I'm really excited about all the progress we've been making, and also about all the knowledge I've obtained in these last few weeks.

Coding on Exanoks

Well, after a long and heated debate, I decided to switch the queue system to C++. Anyway, I got a lot accomplished today. I learned pthreads and singly linked lists, among some other smaller things. I'm really proud of the code I've been cranking out lately. My goal of having a finished queue system done by this past weekend was of course not accomplished, but that's understandable due to the change of implementation language.

Real Life

It's amazing. Ever since I actually got a real life a month or so ago, i've been coding TONS more productively. I guess it has to do with burn out. In the past I would be on the computer during any and all my free time (which there was a lot of), and I would sometimes just get so sick of it. Now I get on the computer, and I think "Okay, time to get productive with this time I have". Yum Yum Yum.

Coding on Exanoks

<sys/socket.h> is horrible. Don't argue with me on this. Anyway, Ken and I wrote up some minimal socket server code, and we're testing it. For some reason, on my machine, and only my machine, the server will always crash when one of the clients manually disconnect. The code is in the Exanoks CVS Tree (the main.cpp) file. I'd appreciate it if someone tested.

I need to really start working on the Python Microthread queuing system. It uses uthread, and it's some really wizardly stuff. Hopefully i'll be able to get a functioning queue this weekend.

Real Life

I've been hanging out with my girlfriend too much. Haven't been studying enough. I'm supposed to be going to a Kaplan SAT prep course after school on Mondays, Tuesdays, and Thursdays, but i've been going out with my girlfriend instead. Hopefully, next week we'll start going home and studying together instead of gallavanting around town. :)

Well, I'm a new advogato member, and I guess I need to get my name out there so people can certify me as an apprentice ;)

Coding
I've been working on the main C(++?) server code for Exanoks today. I have very little experience actually coding in C*, so it's been rough getting used to everything. (good thing I have Ken Rockot around, the guy who I'm working on Exanoks with. He's helping me out a lot with C*) I have a basic non-threaded server ready that accepts connections and prints out some messages. Next step is to add threading code.

I started out doing this in libCommonC++, but I just got sick of it and decided to code it the old-fashioned way, with sys/socket.h.

We don't have any protocol defined for client communication yet, so work on the main server code is going to stop soon, and I'll probably work on the base Fook library (in C*) and the protocol (on paper). I'm gonna have to start working on/finding people to work on graphics/sound/storyline for the first real game we're going to release for Exanoks. You can never start too early when it comes to quality game content.

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!