Elephant in the Room

There has been a lot of controversy lately about Lott’s remarks about how the US would have been a better place if Thurman had been president. I’ve avoided writing up a story on this because it’s such a hot topic in today’s news. Personally, I don’t think Lott should be in a leadership position, but we have to realize that an entire state liked him enough to keep him in office all of these years.

Lott’s history of racism is long and well documented. From his college days trying to keep blacks out of his fraternity to most recently voting against the Equal Protection of Voting Rights Act. The country can complain all they want, but the reality of it all is Lott is where he is today because of the population of Mississippi.

In other racial news, David Duke pledges to become Bubba’s new dance partner. Evidently, misleading the IRS is a bad thing to do. Here is another wakeup call to people who think the race issue is over: David Duke was elected to the Louisiana House of Representatives after having been head of the KKK.

Sys Admin goes AWOL

In a stunning example of what system administrators should not do, a former PaineWebber system administrator set up a logic bomb within PaineWebber’s computer network. Essentially when the bomb was “triggered” the network would go down. The sys admin even had the bright idea to purchase over $20k in put options.

Systems administrators should follow a strict code of ethics at all times. Having access to a mountain of personal information can be tempting at times. The above story also brings up an interesting question: Could he be charged with cyber-terrorism?

In other hacking news a student in California gets an A in hacking for hacking into his school’s computer system. What I find funny is that the student changed his 4.0 GPA to a 1.9. What’s interesting is that this was not only school sponsored, but the school is actively working with the student to close the security holes in their system.

Sexual Orientation Bias in Schools

What our school systems do on a regular basis doesn’t surprise me anymore. Here is a story about a young girl who was forced out of gym class because she was a lesbian.

This is wrong on so many levels. First off this flies in the face of most education codes, which usually include a portion saying they won’t descriminate based on a student’s sexual orientation.

Here in Ypsilanti there was a proposed change to the city’s charter that would have excluded sexual orientation in it’s bias clause. This would, essentially, mean people could descriminate based on sexual orientation within the city limits of Ypsilanti. The odd part, though, is that the way the proposed change was worded transexuals would have remained protected.

Northern Michigan

Those of you who know me personally know that my parents moved me to Northern Michigan my senior year of high school. Without getting into specifics I’ll say that it was, without a doubt, the worst year of my life.

Since leaving for college five years ago, I rarely go back. My parents often get upset with me for not visiting more often. I’m now sitting in Nothern Michigan on a 33.6k connection using Windows XP … and they wonder why I don’t like it up here. Jokes aside, I have found myself reliving some things I’d rather forget. In blatantly cheesy Jeff Foxworthy style I’ll form my observations in the form of “You might be from northern Michigan if …”

You might be from Northern Michigan if:

  • Your snowmobile goes faster than your car.
  • Your trailer has an external roof on pedestals to shield it from the weight of the yearly snow.
  • Your proud that your average ACT score jumped from a 16 to a 19 in the last year at the local high school.
  • You bought your kids cammos at the local Wal-Mart for Christmas.
  • The biggest meanest bar in town is named the Rainbow Bar.

I’m not saying there aren’t rednecks downstate either, I’m just saying they seem to congregate in N. Michigan. In fact, Lauren and I were at the Wal-Mart in Ypsilanti the other day as a father, sporting a Jiffy Lube uniform and a mesh NASCAR hat, proudly bought his toddler son cammos while claiming they were for his “baby sniper.” Yeah, drop out of high school, good idea.

Your mommy will not hold your hand anymore

University professors are having problems with your parents calling in and yelling about low grades. With parents paying upwards of $30,000 a year for college they feel they have a right to call in to make sure they are getting their money’s worth.

Professors, on the other hand, are boud by privacy policies that forbid them from discussing your grades. They can, however, talk about what caused the grade slips; such as your 50% skip rate and low test scores.

What parents need to realize is the grades you recieve in classes are a direct relationship of your time management skills and overall laziness and an inverse relationship to the amount of partying you do, not your knowledge on a given subject. College is not about getting a better job or making more money, it is preschool for real life. The lessons learned in time management, money management, sex, drinking, drugs, and friendships will guide you when you finally get out of college.

Too much to learn, too little time

GTK+, XML, XUL, HTML, MFC, VB, SQL, UNIX, Windows, VIM, PHP, CSS, C, C++, Ruby, Perl, Assembly, the list goes on and on and on. I’ve dabbled in various technologies throughout my career as a programmer. I actually learned programming logic in my TI-85. From there I started in on PHP with MySQL and Apache as the backend. Why, you’re asking now, do you care?

I just finished reading an excellent article at Joel on Software about how becoming completely proficient in a coding environment is taking longer and longer. I can agree with this. I’ve been programming complex PHP/MySQL applications for over 3 years now and I’m only recently beginning to realize how truly scalable and complex applications are built within this environment.

Joel points out that more and more of the memorization is in how to utilize the various API’s programmed in the language, not the actual language. Since I’ve built an extensive library of code in PHP and utilize other libraries written in PHP, most notably PEAR, I can agree with this.

Joel also makes a great point that learning a language is compounded by the fact that you must also learn that languages environment. PHP’s main environment is UNIX, thus you need to know that Apache barfs on missing directories or that certain shell commands require environment variables to be set properly before they will execute. You need to know how tr, sort, uniq, STDIN, and STDOUT work. If you don’t understand bitmasks and permissions you’re going to spend days figuring out why you can’t write and read files and when you DO figure out how to manipulate permissions you’ll most likely just chmod 777 because it works without any regards to security.

The outline above has largely deterred me from expanding my horizons into new languages. Sure I can hack Perl and I know how to use Visual Basic, but am I proficient? Hardly. Anyone who has looked at any of the open source PHP projects lately will agree with me on this one.

The road ahead

After finishing a group project which included a Visual Basic program with a MS Access backend, a 90 page resource paper on said project, and a ten minute presentation on said project, I’ll be spending the rest of tonight celebrating at various bars throughout Ypsilanti.

With only 6 credits left until graduation, 3 being Art Appreciation, I’ve been thinking more and more what I’m going to do with my life. Luckily, Lauren has another year left, giving me one more year to ponder what I’ll become. My initial thoughts are towards world domination, but I’m more realistic than that.

I think I’ll end up working part time at my current place of employment while growing Jerum into something I can live off of. So if you are a small business owner looking for a web presence let me know. Other plans include taking a few days off to go to Hawaii, Las Vegas, and possibly Europe.

This leads me to another thing I’ve noticed. I haven’t travled nearly as much as I have wanted to. It’s overwhelming how many places there are in the world that I haven’t been to or experienced. I’m thankful Lauren likes travelling, since we’ll be doing a lot of it together in the near term.

User Interface Design

I’m the first to admit that I don’t think about User Interface design. In fact, I’m of the mantra that everyone should be as technically savvy as I am. This changed recently when I worked with a newly hired UI person at Care2. A lot of the stuff that seemed like annoying “features” made a lot of sense in the terms she used.

This experience has led me to search around the web for articles on UI techniques. I found an excellent article at Joel on Software called User Interface Design for Programmers. This is the best hands on article I’ve seen so far. Here is a brief overview for those too busy to read the entire article:

  1. A user interface is well-designed when the program behaves exactly how the user thought it would.

    If you think about it this makes a whole lot of sense. If you can learn one thing from this article this is it. Users get frustrated when they encounter programs that don’t perform the way the expect them too. This is why Windows users hate Macs and vice versus, because the UI doesn’t perform the way they are used to UI’s performing.

  2. Every time you provide an option, you’re asking the user to make a decision.

    Programmers love to make extremely flexible programs. The author makes a good point about providing options: Most users do not change the default settings and when they do there is no propagation of those changes in settings. This means even if user does change their settings they have to make those same changes on every computer they use.

  3. Good computer UI uses affordances

    Simply put make your controls appear to be controls. Doors have large bars that afford to be pushed. You should make the buttons and text on your site afford to be pushed.

  4. Users don’t have the manual, and if they did, they wouldn’t read it.

    This is very important for everyone to remember. How many user manuals have you read? I can honestly say I’ve read none. I’ve read tech books, etc., but I have not read a user manual per se. Your program should work as expected and with very little effort on the user’s part.

The articles is much more in depth with perfect real world examples. There are lots of big pictures as well. The article is overall thoughtful and well written. If you program applications for a living this is a must read.

Cheating and … Cheating

Lauren makes fun of me about my love for the TV drama “Law and Order.” While I think it’s plot twists, engaging court drama, and great acting make it a hit, Lauren says it’s “corny.” One thing I have learned from “Law and Order” is that I have the right to remain silent. This may no longer be the case. A city in California is attempting to challenge the right to remain silent. In the story the police shoot a guy five times, in the eyes, spine, and legs, and then proceed to question him while he is crying in pain. The scariest part is the federal government is backing this in an effort to help the “War on Terror.” Just one more reason to move to Canada.

In other news there is a new study out that suggests cheating on your spouse could strengthen your marriage. Being one of the lucky kids whose parents did not get divorced, I find this disturbing. I thought marriage was about trust and devotion. Maybe I’m wrong.