Older blog entries for Phoon (starting at number 6)

Afternoon.

Got done helping a fellow student with his C++ homework. I had to correct certain problems with his code that are directly due to the professor's lack of experience. The ineffectiveness of the professor shows through in various ways: tests that are incorrect, students who always initialize floats like:

float var = (float) 0.0;

just "because the professor said so", and so on. You'd think that colleges would have stricter hiring guidelines.

No work on ithought or amcl lately; it's kinda hard to work on an X app when you're SSH-ing to your home box from a lab computer. (Technically, I can get into trouble for having PuTTY on here. sssh, don't tell anyone.) Once I have time, the first thing I'll try to do is add support for telnet echo codes to amcl. (Right now, it'll echo your password. I hope to change that.)

5 Dec 2000 (updated 6 Dec 2000 at 03:26 UTC) »
Evening.

I've been working on ithought, robbing valuable time better used for calculus study. But I digress.

Finally, I have the URL-encoding function for ithought's Advogato module working. Now, characters like + and % should be posted correctly.

Took the practice exams for the next chapter in my C++ class. The tests haven't been updated; the author still believes that numeric arrays (in this case, multidimensional numeric arrays) are always initialized to zero. I've personally tried this on gcc and Microsoft Visual C++ 6.0, and neither have initialized the array. When will students remember that they are not there simply to absorb knowledge, but to question and expand it?

These are the people that will go on to become MicroSerfs.

30 Nov 2000 (updated 30 Nov 2000 at 23:57 UTC) »

(Let's see if this WORKS this time.)

Had a C class yesterday... it was surprisingly tolerable. In the practice tests, I found at least five errors; apparently the author of the textbook we use, Diane Zak, has this mistaken belief that numeric arrays are always initalized. Also, she neglects to mention that the null character terminating a string can be overwritten. Questions like:

If char name[5] is initialized to "Peter", what does the last element contain?
A. 'P'
B. 'r'
C. '0'
D. '\0'

Of course, the correct answer is B, but D is listed as the "Right" answer.

I added a rudimentary 'convert to HTML' option to ithought's Advogato posting module. I'm using it right now.

Well, I've got to go research for my chemistry paper. My topic? "Cow Farts^W^WMethane Pollution". No kidding.

I see while I was fixing my last entry, I was certified as an Apprentice. Thank you, to all... umm... all three of you. :-P

29 Nov 2000 (updated 29 Nov 2000 at 03:18 UTC) »

(The ithought (not ithink, that's my ISP!) post didn't work too well. Maybe I need to learn to use it correctly. If not, maybe I need to fix it, or at least break it to fit my needs. ;-)

Well, here we are again.

I had a depressing experience the other day. I spent some time writing a patch to AMCL, version 0.7.0pl1, since that was the latest release. Not minutes after I sent the patch to the author, then I realized that AMCL had its own CVS and had already gone through one major revision!

So, I had to redo all the work. At least it was mostly cut-and-paste from the old source.

It's kind of disorienting, going back and forth between school and the 'real world', trying to remember what you're supposed to know at any given time. At least my hated C++ class is ending soon, and I can go back to actually learning C++.

First, some good news: I got my score back from the AMATYC math competition, round 1. I got 15 points, which is the highest from my calculus class, at least. (It's a 20 question test; you get 2 points for a correct answer and -0.5 points for an incorrect answer. I answered 10 questions; you do the math.)

I've noticed a catch-22 in the programming world. To become successful, you must become a master coder. To become a master coder, you must first gain experience. To gain experience, you must first work on a project. But, to be hired onto a project, you must first be a master coder!

In other words, how do I bridge the gap between "Hello world" and production code? I've tried working on XChat, and I'm completely lost.

Well, there's always the option of getting a MCSE or a lobotomy (or both!)

8 Nov 2000 (updated 29 Nov 2000 at 18:04 UTC) »

Well, here I am. I guess I'd better start by introducing myself, or brain-dumping, whichever this turns out to be.

I'm 18 years old, five feet nine inches tall (in my shoes), and two-hundred-and-mumble pounds. But I'm sure no one cares about that.

I'm a Linux user, have been for about 5 years. My first Linux was Red Hat 4.1, followed by 4.2, 5.0, 6.0, 6.1, then 7.0, for about a week. Then I switched to Slackware because Red Hat 7.0 was so godawful. IMHO, Slackware is better overall than Red Hat, but I haven't tried Debian or SuSE or any of the legion of other distributions, so I can't make any "Slack is the best distro in the world!" claims. Yet. ;-)

Yes, I've tried FreeBSD, never really got into it yet. Maybe later.

Yes, I use Windows. No, I'm not proud of it. And I use it a lot less than I used to, especially since getting Unreal Tournament running in Linux. Next is Quake 3.

Programming has fascinated me ever since one of my teachers sat me down in front of an Apple ][ in second grade. I've always had tremendous respect for those who write the wonderful software I use every day, but I never thought I would interact with any of them. That's why I'm glad I found OPN and this site.

Now, on to my question.

I'm in a really bad CS program, in a community college in Florida. Just for an example, I'm required to take an "Intro to C++" class to graduate. The problem with this is twofold. First of all, I've already had equivalents of this course. Three other times, in fact. Twice at Young Harris College and once at North Georgia Technical College. Not to mention the extracurricular study I've done.

Second, this is as advanced as the programming courses get. Nothing theoretical, no other languages, nothing on algorithms or data structures... just "Hello World! I can write a loop that adds up numbers!".

(Maybe I didn't mention that in this class, "C++" == "C with iostreams", or "C++" == "Microsoft Visual C++".)

I can't test out, nor can I skip class, for each class missed beyond the first is THREE letter grades off the final grade. No kidding; an A turns into a D for two missed classes. (He counts absences by the hour, and it's a 3 hour class once a week.) I have half a mind to complain, but since it's already so late in the term it's not even worth it.

Anyway, sorry for the rant. I guess my point is, my current college has a horrible CS program, even for a community college. And I'm impatient, so I don't want to wait until I enter a university to begin learning what I need to know to program 'in the real world'. Could anyone suggest any resources to allow this fledgling coder to spread his wings and fly into the world of open source software?

Feel free to respond via email, or flame me to oblivion, or whatever.

(Obligatory spam-bot feed: rbl@mail-abuse.com uce@ftc.gov )

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!