pointers are a pain in the butt

I’ve been programming in C for about 6 months now. I learned C waaaay back in college. At that time, I hated it. It was very awkward to me, after having done a lot of work in Pascal. We weren’t really given much instruction in C, either, and so I learned the hard way. Well, mostly. I never really grok’d pointers as they exist in C. It’s weird. Once I learned Java, I thought I’d never have to worry about pointers ever again.

Wrong. At my last job, I did a little C++ programming as well. Somehow, I managed to get by, but still never really learned pointers properly. It really wasn’t until about a week ago that I really, truly started to understand them.

I feel much better now.


how to avoid viruses and worms the geek way…

In the last several years email worms and viruses have taken the forefront in security concerns for PC users. I’ve never had to worry about it. No, it’s not because I have a Mac, and no, it’s not because I use Unix. It’s a lot simpler than that.

Let’s set the wayback® machine to the mid 90’s. At that time, there were those annoying chain letters that would warn of heinous viruses that were transmitted by merely reading one’s mail. Now, anyone computer savvy back then knew that this was impossible. Even if someone embedded malicious code into a mail message, the mail readers at the time would simply ignore them, because that code was nonsense to them. How things have changed. Various client providers have endowed their software with new “features” that allow their clients to, you guessed it, execute arbitrary programs embedded in email messages. And soon, all of those hoax email scares became reality. Time after time, huge corporate email systems and even public servers were brought down under the weight of the added traffic and other nefarious activities perpetrated by the malicious email messages or attachments.

In all of this, I’ve never broken a sweat. The primary defense is, of course, common sense. I never open attachments that I have not actively requested. In fact, I often ignored attachments I should have paid attention to :). Anyway, to make things even safer, I’ve almost always used a mail client that is text-only. I’m talking about pine. If you don’t know what pine is, it’s a command-line (think DOS) mail reader. “How archaic,” you may think. But pine is still actively developed, has a rich set of features, and most of all, is not succeptible to the myriad of worms and viruses that plague graphical mail clients. In fact, in pine, I often see the source code or other mechanisms by which crafty spammers obtain info about unsuspecting recipients, but rest assured that pine isn’t going to do something stupid like downloading images that tell the sender that I got the message, validating my email address.

I’m not advocating that anyone switch to pine, I’m just trying to feel better about using a command-line email reader 😉


I hate iTunes music store…

because they’re going to end up with all of my money. Okay, to date, I’ve spent only about $30USD, but the fact that I’ve spent any money at all is a testament to the draw of iTMS.

For the most part, music I’m looking for is there. There are a few big examples of absent artists (the Beatles for instance), but it changes every day. Also, you gotta love the fact that you can audition a track before you buy it. And, at $0.99 per track, it’s sooo within the impulse buy range.

At first, I thought that this type of buying would severly limit my musical breadth, but there are a few things that mitigate the narrowness. First of all, the search feature tends to be “greedy” in its matching. That is, things that aren’t exactly what you were looking for appear, and I tend to investigate those results further. For the most part, I’m not interested, but every once in a while, I find something I normally wouldn’t have sought out and like. Also, these other results tend to remind me of other things I was looking for. I’m one of those people who knows exactly what music he’s looking for… until I step foot in the music store. Then my mind draws a blank. This happens in the video store as well and results in a complete sweep of the recent releases.

But I digress. The other factor that mitigates tunnel vision when purchasing music is the fact that you can audition all the tracks on an album. I used to go by the maxim of, “if there are 2 good tracks from one album, consider buying it”. I no longer need to worry about this any more. I can audition all the tracks, and if I only like one, I buy it.

So, if you haven’t yet discovered iTunes, by no means should you click this link and download iTunes. And by no means should you enter your credit card info. You have been warned.


fixin’ maniac…

It all started with that old ADA preamp. Since then, I’ve fixed Ken’s Tobias bass (just needed to re-solder a wire to a potentiometer), and I’ve revived my old fretless bass.

Way back in 1992, I bought my first bass. I don’t even remeber what brand it was, but it had a cherry burst finish, and a small body. I really liked that bass. I had it setup by the one guy in my hometown who *really* knew how to set up a guitar. Dave Pickett was his name, and if Pickett couldn’t fix it, it couldn’t be fixed. Needless to say, when I got it back, it played like a dream.

Then a friend of mine, Jay, wanted to know if I’d trade him for his fretless. He needed a fretted bass to do some recording. He sweetened the deal by throwing in a Crybaby wah-wah pedal. This was an offer I couldn’t refuse. So, I traded my first bass for this fretless and the wah pedal.

Many years passed, and since I didn’t play enough to be good at the fretless, I really didn’t play it much at all. Eventually, I moved out to the east coast and got the itch to play again. Unfortunately, years of neglect had taken its toll on the fretless. The battery for the active electronics had corroded and took the battery connector with it. Also, the output jack corroded. I thought it was finished. “Maybe one day I could fix it”, I thought. And so, it lingered amongst my possessions until a few days ago.

With my new-found interest in fixing things, I thought I’d fix my gaze upon this old thing and give it a shot. I looked at the electronics, and it looked like I really just needed to replace the jack and the battery connector. Everything else seemed to be okay. So, this Saturday, I headed over to a local guitar shop and got the jack and the connector. A grand total of $12. I figured it was worth that much to see if it was fixable. If it didn’t work, I was out $12 and I could get rid of the bass with the knowledge that I had at least tried to fix it.

To make a long story short, after one failed attempt, I realized my mistake and rewired one of the connections. That did it! I plugged it in and I was in business. How cool is that?!


a little underwhelmed

Well, I’ve been using linux (Redhat Enterprise Server 3.0) at work now for over a month. It’s mostly good, but there are a few problems.

  • The CD-ROM drive has issues : for some reason, after about a day of being powered on, the computer loses all communication with the CD-ROM drive. I can’t even open the tray. I don’t recall this being an issue under XP, but it may have been.
  • The GNOME interface is kinda crappy: for instance, sometimes, dragging a window doesn’t work; a second click pops the window to that position. If this were consistent, I’d think it’s a feature, but it isn’t. sometimes, dragging a window drags a window. Other times, it just sits there, waiting for the second click. I don’t get it. I’m pretty sure it’s a bug
  • Still no good Office alternative: I have to interact with others who are using MS Office. Unfortunately, OpenOffice destroys various parts of these documents, so I really can’t use it. For my own files it’s fine.
  • Inconsistency: It’s driving me nuts that every application has a different interface, and different conventions. I never thought much about this before, but even Windows does a better job here. Of course the Mac is great when it comes to this, and I *usually* don’t run into issues.
  • No Sound: This isn’t a big issue for me, but the darn thing should work. Apparently, it mis-identifies the sound device, and it thinks everything is okay. However, it just produces no sound save for the system beep. Not too cool.

Other than these (somewhat significant) issues, linux is nice. I like having all the commandline tools at my fingertips (I guess I could just use Gygwin on Windows), but overall, the stability is nice. If I can get these things working, I’d be all set. I’ll try to figure them out, but I’d rather spend my time writing code, which I can do just fine without fixing these things. Oh well