Category Archives: Interesting News Articles

Getting A Little Flashy And Free Icons

For some reason I couldn’t resist tinkering with the Text Ascii Art Generator (TAAG) app again. Last Wednesday I updated it so that its generated output would be displayed in Firefox without flickering. I used to do all my web development in IE since it was the most popular, but I switched to working in Firefox and Opera late last year since they have Error Console windows and don’t crash as much (if I have too many IE windows open, my computer slows down and I have to restart it). Though I still double check to make sure things work in IE.

Anyway, for this new update, I decided to get a little flashy and add in a footer that would fade-in when the user typed in a message. I’ve heard that presentation is an important part of the user experience and can be the difference between someone passing a site by and taking a closer look. Plus, after a rapid prototype, I thought the footer looked really cool.

Right now it currently holds the links for opening the message in a new window and generating an image from the text. They’re identified by these icons:

– – – – –

Which I found here. Luckily they’re licensed under the LGPL, which from what I gather from wikipedia, means they’re free for anyone to use as long as they don’t extend them (in which case they have to freely provide the extensions).

I think the new footer came out pretty well. TAAG now feels complete to me, though I’m not going to rule out any future updates. Later this week I’m going to try to get to work on some new stuff, but I don’t want to promise anything since lately I’ve been jumping around in what I work on.

$103

In completely unrelated news, if you’re bored, I found this website to be mildly amusing:

websitevaluecalculator.com

You give it a web address and it’ll tell you how much that site is worth. patorjk.com is apparently worth $103, though a couple of days ago it said 6k, so they must still be modifying their algorithm. I wouldn’t take an analysis from a site like this seriously, but it is kind of fun to see what it says different sites.

Fired for Blogging

No, not me, don’t worry :-).

On Friday I dropped by the office of an old boss of mine. He had apparently heard I was back in the building and wanted me to come by and say hi. It was pretty cool seeing him again; he was a really good guy to work for. I interned under him 3 years ago, and I believe the job I did that summer was the reason I got hired by my current company. The internship was a VB / Access job. It’s not the kind of job I’d want to do as a career, but it was fun to be able to apply all the VB skills I had racked up as a teenager. I churned out something like 2,000-3,000 lines of code a week, it was ridiculous. During the meeting he actually told me that most of the stuff I had done was still being used and that people still talked about me (which I found kind of shocking). It was really cool to know that I had had such a positive effect.

I don’t always have such good experiences though. I’ve had some jobs where I’ve felt bored or like I didn’t really live up to what I could have done. I thought about writing an entry contrasting good and bad experiences and how one can avoid certain pitfalls, but then I decided against it. Blogging about work is almost always a bad idea. Unless all of your stories are positive feel good stories – and the best work stories usually aren’t – it’s a bad idea to have a work related blog (same goes for dating, but that’s another blog post all together).

Interestingly enough, as I was debating whether to write a such an entry, I stumbled upon a blog post about a 28 year old video clerk who had been fired for blogging that Tucker Carlson came into his store (link). He didn’t reveal any personal information about Tucker, but he did joke about sending items such as frozen urine cakes to his house, and he did call the guy a “Gigantic Cobagz”, which is obviously not giving the store he works for the best image, so it’s no wonder he got canned.

After this interesting find, I decided to see how many bloggers I could find who had been fired because of blog entries they had written. Below is a summary of what I found. Some of them are pretty interesting. If you can find more, feel free to post links in the comments.

2. A blogger who was fired for joking about goofing off at work (link). This guy was essentially called into his boss’ office one day and told he was fired and had to leave immediately. His boss watched him clean out his desk and then escorted him out of the building. This was the post that got him in so much hot water:

Getting to surf the web for 3 hours while being paid: Priceless.
Getting to blog for 3 hours while being paid: Priceless.
Sitting around doing nothing for 3 hours while being paid: Priceless.
Installing Windows 2000 Server on a P2 300: Bloody Freaking Priceless.

Everyone experiences down time at work, however, this wasn’t a wise post to make. I do feel sorry for him though. It’s a harsh punishment for something that was just intended as a light hearted joke.

3. A Google employee who was fired for saying too much about the company (link). Almost everyone loves Google, and if you have a blog that talks about what goes on inside of Google, people are going to read it (hell, it’s one of the reasons I read Steve Yegge’s blog). The problem is, Google doesn’t want you to do this, and divulging too much about them will get you fired (this is true for almost every company).

4. A Nintendo blogger who was fired for “Inexcusable Behaviour” (link). This blogger, who actually wrote under a different name to protect her identity, was fired for blogging negatively about her co-workers. Quote from her blog that most likely got her fired: “One plus about working with [a] hormonal, facial-hair-growing, frumpy [woman] is that I have found a new excuse to drink heavily… My gut tells me that this woman hasn’t been fucked in years”. Not a good thing to publically say about your boss.

5. A Microsoft employee who was fired for posting up certain pictures in his blog (link). Companies take their proprietary info very seriously.

6. A flight attendant who was fired for posting up risque pictures in her blog (link). This probably wouldn’t have been that big of a deal had these not been taken at work and then posted on the web, oh well.

7. Thailand teacher fired for writing about her personal life (link). From the blog entry:

Imagine my surprise when last night I received a rather cruel email (didn’t even bother with the courtesy of calling) from my employer terminating me from the school after a week of labor because of an article I wrote days before I got the teaching job. My lifestyle apparently does not conform to the acceptable teacher’s way of living (if there’s such a thing). They were afraid that at some point I’d start writing about the school and tarnish its precious and rather inexistent reputation, and I wasn’t a good enough teacher.

Oddly enough, since these people were among the first to get fired over blogging, most of them became minor celebs after they got fired. That probably won’t be the case as time goes on.

Edit: As a side note, this is kind of a weird entry to write, isn’t it? I should say that I don’t have any fear of being fired (hopefully it didn’t come off that way), I’m on good terms with everyone I work with. I’m just cautious about this kind of stuff and it’s interesting to see how small missteps can get you escorted out of a building.

Ping! (just checking in)

I feel like I should try and check in at least every week or every other week, just so I don’t let this site get away from me. Ideally I’d like to have 2-3 updates a week. However, because working on this site isn’t my full time job, updates sometimes happen in quick succession, and sometimes far apart.

I also feel like I’ve had a rather uneventful last two weeks. Programming wise that is. In real life I’ve done a bunch of a stuff, including changing jobs within my company, which is strange and exciting but also daunting because it means having to learn a whole new system and set of processes. I’m hoping this learning curve doesn’t interfere too much with the plans I have for this site.

It’s amazing how energized I can feel about a certain idea. I’ll have it in the back of my mind all day, but then when I get home, I’ll be exhausted and not feel like programming. I’ll end up doing something lazy like watching TV, or something slightly physical like going to the gym. It’s not until around 11 o’clock that my mind wakes up again and I feel like doing something that requires brain cells. In fact, it’s amazing how much of the work for this site gets done between the hours of 11pm and 2am (I usually don’t get into work until around 10am).

I think I also jump around to too many ideas. At one point last week I was reading tutorials on Ruby – I’d heard so much about it that I wanted to see what the fuss was about – but then, after about an hour of reading, I realized I didn’t really need to know this language. It looked cool, but there were other languages I was currently using/learning, and it wasn’t really something I needed on my plate. A similar distraction happened when I looked into developing Facebook apps. You know those annoying things people post up on their profile pages? Apparently there’s big money in it:

LA Times Article on Facebook Software Biz
Business Week Article on Facebook Money Making
Crazy Story About a 17 Year Old Who’s Making 70k a Month From Her MySpace Layouts Page

The idea of making it big is appealing, and it caused me to look further into Facebook development, however, I actually do find most of the Facebook apps annoying, so I don’t think I could bring myself to make one. The fact that people are making so much money off them actually blows my mind though. How can such a dinky little app pull in so much money?

Blogging

Lately I’ve been telling my friends, friends of friends, casual acquaintances, and random strangers I meet on the street that they should start a blog*. I’m not sure what’s gotten into me. Blogs are fun though, even if no one reads them. I’ve had a lot of trouble trying to justify this though, until I came across a really interesting article the other day:

You Should Write Blogs

That blog entry was written by Steven Yegge, a 30-something Google employee (though he was working for Amazon when he wrote that). My favorite observation from Stevey is that “struggling to express things that you’re thinking or feeling helps you understand them better.” I think he’s dead on there. If you take the time to write about something that’s on your mind, you’ll end up understanding it a lot better. It’s like having to teach someone something. The act of explaining the subject helps you better understand it – and it helps you understand how much you really know about that subject.

When I was in grad school I had to teach these 45 minute C++ lab courses. They were comprised of small groups of students from one of the computer science introduction lecture hall classes. I taught the labs daily, but they only ocurred once a week for each group of students. Even though I considered myself pretty proficient in C++, having to explain all the nooks and crannies made me realize I didn’t understand things as well as I thought. However, it turned out that each class usually had the same questions about C++ and the lab assignment (it was almost Twilight Zone-ish really), so I got progressively better at teaching the lab as the week went on. It was funny, on Monday I’d look like a bumbling slacker, but by Friday I seemed like some kind of C++ wizard. I actually had a couple of the Friday kids give me some strong complements on my C++ skills :P. So writing down your thoughts and exploring certain topics can help you better understand them.

Another thing Stevey does in his article is give and refute 4 popular excuses people give for not writing blogs:

  • I don’t have enough time to blog.
  • I’m afraid to put my true thoughts on public record.
  • No one will read my blog.
  • Blogging is narcissistic.

Reasons #1, #3, and #4 are petty excuses in my opinion. However, reason number #2 is not something that should be treated lightly. One’s opinions may be the “spice” to their entries, but you can get yourself in a lot of trouble if you don’t exercise some common sense. I’ve had employers, girl friends, ex-girl friends, and friends get pissed at me over entries I’ve written in past blogs. And not the kind of pissed where they grumble and forgive you 5 seconds later, the kind of pissed where you’re given the look of death and not spoken to for a while. You live and your learn though. I no longer blog about personal matters unless I have a good story to go with it. Plus it’s just more fun to write about my hobbies/interests than it is to write about things that annoy me or about my daily activities. I could probably write an entry on how I sat in a cube for 8 hours today and then went home and ate some ramen noodles, but it wouldn’t be very fun to write, and I’m sure it’d be even less fun to read.

So anyway, if you have the urge to blog, I highly recommend reading the above article. It’ll jump start your motivation. And don’t worry about no one reading your blog, you should write it for yourself. Hell, this blog isn’t even the most popular thing on this site – TAAG is (I’m actually surprised by this – it’s mostly due to Google though). Which reminds me, I need to get back to developing stuff. Anyway, think about what I said.

*If you’re one of these people, know that I didn’t write this entry to be directed at you. I actually have been a little over zealous in my promotion in blogging. I dunno why, it’s just gotten under my skin.

“Google! Teacher, mother… [lustful voice] secret lover.”

I love google. Lately it’s been bringing me lots of visitors. It brought me 55 yesterday, which is a pretty damn cool (and pretty good for a small site like this one). However, this past weekend when I messed up my .htaccess file, it brought me no one. In case you weren’t here: I screwed up my 301 redirect links and no one was able to access anything in the /software, /downloads, or /programming directories of this site (you were just redirected to one of my blog pages). I will now do a total site checkout after touching that file. I can’t believe I was that stupid.

Like an idiot I let this error sit around for a few days before I realized something was terribly wrong. That something wrong was that google was no longer bringing me traffic. I’d fallen in my page rank. I quickly fixed the error and my page rank mostly returned. However, my ranking for the term Patrick Gillespie seems to have disappeared. I was actually kind of hoping to grab the top spot from that stupid news article on the pervert named Patrick Gillespie. Though then again, it was my Tiburon entry that was climbing the top ten of that page, and I’m not so sure that article would look good next to one titled “Patrick Gillespie arrested for failing to register as a sex offender.”

Back to the topic at hand though. Luckily google forgave my foolish .htaccess blunder. I was reading an article on some other blog earlier this week where the site owner wasn’t as lucky:

Google Penalty Nightmare

Google penalizes sites for certain offenses. Usually this is because a site is trying to do something artificial to raise its page rank. But since google doesn’t tell these sites the reason they are penalized, no one can be sure why a page suddenly drops in its page rank – or in some cases, is removed from the search results. Sometimes you mess up and things go back to normal (like me), and sometimes you mess up and things are sucky for a decent amount of time (like the girl in the blog entry above).

I find the whole idea of a secret penalty system quite interesting. It makes sense that they wouldn’t release all of the details, because then people would know exactly what to try and get around. Not knowing what you’re up against means there are more mines you could potentially step on, and when those mines are things like being removed from google’s search results, you’re less likely to do something to try and cheat the system. At least that’s what I think their reasoning is.

Not surprisingly, webmasters have tried to understand this system and some have even put together lists of possible google penalty filters. Below is one such list:

Google Filters

Jargon you’ll need to know to understand that article:
SERPS = Search engine results pages
SEO = Search engine optimization

If you’re a webmaster, that article is worth reading. It’s even caused me to think twice about the naming of my “links” section – though it’s late now so I’ll rename it later.

Oh yeah, in case you’re wondering, the title of this entry is a reference to a famous Homer Simpson quote. I figured it would probably be a good idea to mention that :).

Cool New Image Resizing Technique

One of the things I studied in grad school was how to find the least visible seam in an image. This would be useful say if you overlapped two images and wanted to find the best way to cut them together, or if you wanted to create your own waldo image. I thought that the seam finding algorithms were really cool, but that there wasn’t a whole lot of use for them outside of doctoring photos and generating texture. Holy crap was I wrong. Check out this video:

This is the first time I’ve ever watched a technical video and thought to myself “I understand everything that is going on here… why didn’t I think of this!!” That’s a truly awesome idea. It makes me want to breakout my seam finding code and make an image resizer (I’ve written code that finds the low energy image seams you see in the video – it’s what I used to make the waldo image, which is the same image randomly pasted over and over again with a seam between overlapping areas).

The only problem with that idea is that finding seams isn’t as fast as they show you, at least not for large images (400+ by 400+). They might be using a different algorithm then what I’m thinking of, or maybe they were running the app on a super fast computer, but in my experience finding a seam can take some time if the image is of a decent size (by “some time” I mean 1 or 2 seconds). Though I might be wrong and this might be a super fast algorithm. It’ll be interesting to see how people apply this.

Blocking Firefox

There’s been a decent amount of hysteria on some of the social news web sites about a new campaign to block Firefox users. The reasoning behind this is because Firefox has a plug-in that allows you block ads.  Proponents of this campaign argue that this robs website owners of the opportunity to make money from their site. You can see the campaign’s website here:

http://whyfirefoxisblocked.com

The majority of people who are reacting to this seem to be upset about this. However, after doing a bunch of googling, I was only able to find one site that is participating in this campaign (and it sucks).

Anyway, I figured I’d give my opinion on this issue since I’m sure I’m in the minority. Frankly, I don’t see why so many people are getting upset. If a website is going to block you, just don’t visit that website. There are millions of places to go on the internet, if a handful of sites want their ad revenue and you don’t want to look at ads, just don’t go to those websites. For every site that blocks Firefox, I’m sure an alternative will spring up somewhere.

I kind of like the ad revenue based system though, since it allows a lot of stuff to be free. Most sites I visit have a tasteful display of ads. If I go to a website and they ambush with lots of crap, I just never go there again. I’d hate to see this model replaced with a model where ads are injected into the actual content (movies and TV shows sometimes do this). I wouldn’t put it above sites to do this either. They’re going to make their money one way or another (or disappear).

As a site note, according to my web stats, 37% of the people who visit this website use Firefox. 52% use Internet Explorer, and the rest use a variety of other browsers. I guess that’s indicative of a more web savvy audience.

Social Bookmarking Websites

A couple of years ago a friend of mine showed me a website he was working on. It was a site that allowed you to save a list of your favorite websites to a server, so that you could obtain a list of these sites no matter which computer you happened to be at. He told me it was fully functional, and he had even given a few test accounts out. When I saw it, I thought it was a pretty neat idea, though nothing revolutionary. Later that day I did a google search and discovered that there were already a couple of sites like that. “Hmm, looks like this idea has already been implemented pretty thoroughly…” And social bookmarking sites left my thoughts completely, until a week ago.

I frequent sites such as reddit.com. Mostly so I can get my daily dose of odd ball news and information. A lot of the sites that are posted on reddit are blogs, and lately I had been noticing that many of these blogs had these strange little buttons at the bottom of their entries. After having wondered what the hell they were for some time, I finally clicked on one out of curiosity and it took me to del.icio.us, a modern day social bookmarking site. I was actually kind of amazed that the site had become so popular that bloggers were posting a link to it in all of their posts. After some researching though, I figured out why.

  • Social bookingmarking sites allow you to share your favorite links with friends and strangers. For website owners, this is free promotion, and people are much more likely to spend some time looking at a link on someone’s favorites list than they are to spend time looking at some random site they came across in a search engine.
  • Links on social bookmarking sites actually get factored into your page rankings on most search engines. Thus, the more people who favorite your site, the higher your page is ranked.

The first point may be obvious, but the second point is probably the reason those little buttons have taken off. Search engines are a powerful tool in driving traffic to your site. It didn’t seem to make sense to promote some other site just for point 1, but with points 1 and 2 together you actually have a pretty nice combination.

Those little buttons have taken off so much that there are now sites that offer the service of providing you with the latest buttons. Sign up for an account on their site and you can have all the popular buttons easily placed on your blog or website. Check it out:

  • http://blog.addthis.com/ – A plug-in you can get for WordPress. Has a nice little popup of notable bookmarking sites when you mouse over the button.
  • http://badged.net/ – Free service that doesn’t require you to register an account. It looks like they survive by taking donations.

These seem like nice little services, but one has to ask themselves: How do these sites make money? My biggest fear with using a free service like the ones listed above is that they’d start putting ads everywhere once they got really popular. And the last thing I want for my visitors is for them to be greeted by some pop-up window, especially if I’m not making anything off of it. This may seem like a rather cynical thing to say, but most of the free services I’ve used in the past have all ended up being saturated with ads (geocities, xoom, various free counters I’ve had, and the list goes on).

For the moment, AddThis appears to be looking at data mining as a possible income generator:

http://www.techcrunch.com/2007/03/05/addthis-widget-gathering-lots-of-interesting-data/

Badged may be doing the same thing, but they don’t say anything about keeping track of clicks on their website. Personally, I actually prefer Badged’s setup. It’s nice to be able to choose which buttons you want. However, it’d be a lot nicer if there was no dependence on the main site. For example, after you selected the buttons you’d like, it’d generate the HTML for you and you’d simply right click and save the icons to your computer. That way there’s no chance of people putting ads on your site and no chance of them mining data from your users. I like that idea so much I may do it myself, maybe.

In the meantime, I’ve decided to put two social bookmarking buttons on my TAAG program. Just to see how that goes. TAAG will also be getting an update later in the week. To give you a hint, I’ve been reading up on AJAX.

As for my friend, to my knowledge, he didn’t really do anything with his bookmarking site, which is kind of a shame, since it was a neat enough site to leave an impression on me.

Programmers are lazy, self-important, unintelligent bamboozlers

I recently read an astonishingly bad article by Tim Bryce on “managing programmers”. The purpose of the article was to help other IT managers better understand their software developers. Instead, the article just reinforces the stereotype of the “Pointy-Haired Boss” that inhabits the Dilbert comics. It actually scares me that this article was read by people who manage programmers. Let me give you a taste of Mr. Bryce’s idiocy:

Regardless of the image they wish to project, the average programmer does not have a higher IQ than any other worker with a college degree. In fact, they may even be lower. Most exhibit little imagination and require considerable instruction and coaching in performing their job. When they have mastered a particular programming task, the source code becomes a part of their portfolio which they carry from one job to the next. So much so, that copying or stealing source code is actually the predominant mode of development in most companies. Consequently, there is little original source code being produced in today’s software.

I’m not sure why he had to make the remark about programmers possibly having a lower than average IQ. Where is the data for that? First off, IQ tests don’t accurately measure intelligence. Secondly, IQ tests are all about problem solving, something a programmer has to do everyday. I’m sure your average computer scientist would score better on an IQ test than your average manager who knows nothing about science or engineering. In fact, here are is a break down by major of average GRE scores (not an actual IQ test, but close):

http://www.iupui.edu/~philosop/gre.htm

Notice that computer scientists rank higher than business majors in all 3 categories. I’m not saying computer scientists are super smart, but it’s certainly unfounded to make comments about them possibly having a lower than average IQ.

And the comment about programmers requiring “considerable instruction and coaching in performing their job,” that sounds like something you’d say when you’re talking about how to train your dog. Any manager that thinks that way is going to foster an unpleasant working environment. No one likes to be patronized.

Programmers tend to perceive themselves as free-spirited intellectuals who possess the magic of technology. Whereas the knowledge of the language is vital to performing their job, programmers often use it to bamboozle others and heighten their own self-importance. To outsiders, programmers are viewed as a sort of inner-circle of magicians who speak a rather cryptic language aimed at impressing others, as well as themselves. Such verbosity may actually mask some serious character flaws in their personality. Speaking in a foreign language may be amusing to a listener for awhile, but will inevitably alienate people over time.

The author’s contempt for programmers becomes pretty apparent here. “Magicians”? “Aimed at impressing others”? These comments sound almost like jealously. Here are some more gems:

“There are very few true artists in computer programming, most are just house painters.” – Bryce’s Law

Without basic organization and discipline, programmers will become mentally lazy.

Basically, the programmer’s task is to convert human understandable specifications into machine understandable instructions. From this perspective, a programmer can best be characterized as a translator.

This last quote states a gross over simplification. If some engineers were to build a car based on a list of features someone requested, would those engineers simply “translators”? This statement alone shows that Mr. Bryce doesn’t know what he’s talking about. There’s more to software development than simply translating human specifications into instructions that a machine understands.

It’s actually flabbergasting that someone who obviously knows very little about programmers would write an article in such an authoritative tone. Not surprisingly, Mr. Bryce took a bashing in the comments section of this article. In his final reply back to his antagonists he states:

These are the same people who believe corporate cultures should change to suit their needs as opposed to the other way around. It just doesn’t work this way.

Unfortunately for Mr. Bryce, supply/demand is such right now that programmers have a choice in where they want to work. If you want to run your company like an ass, the good programmers will go elsewhere. Maybe this is why Mr. Bryce has so much experience with the “house painters”.

As a final aside, here are some real tips on managing programmers:

1. Have a good understanding of the technology you’re using / developing.
2. Thoroughly plan out what you want before having your programmers code it up.
3. Make sure your programmers have plenty of work to do. As a plus, make sure this work involves some thought of their part.
4. Free soda. Maybe this is more of a perk, but I seriously think every office would be better served if there was an all you can drink soda fountain.

For those of you who are interested, here is a link to the actual article:

http://blogs.ittoolbox.com/pm/irm/archives/theory-p-the-philosophy-of-managing-programmers-4993

A peak inside Google…

I found the following blog entry on a leaked memo from Microsoft about life at google really interesting:

http://no2google.wordpress.com/2007/06/24/life-at-google-the-microsoftie-perspective/

Basically, a new Microsoft employee, who formerly worked at Google, is dishing out all the info he can about his former employer to Microsoft so that they can better understand their competition. Some of the more interesting pieces of info:

* All of the food at Google is free – breakfast, lunch and dinner – however, they stop serving hot breakfast at 8:30 and they don’t start serving dinner until 6 or 6:30, thus encouraging people to come early and leave late.
* A lot of people don’t get around to doing their 20% project.
* The culture is very college-like.
* People tend to take their work home with them.
* Office space apparently sucks.

However, though this memo tends to try and put everything in a negative light, I still think Google has some pretty awesome perks. Hell, if Northrop Grumman served free hot breakfast before 8:30, I’d probably try and get in earlier, and if lunch was free I’d probably eat there instead of packing a lunch. In fact, I hope the whole free food thing catches on, because food isn’t that expensive and a large company could easily buy in bulk and save its employees some cash.

I also like the idea of free t-shirts and free soda. Though maybe I’m living in a dream world.

At Northrop we do get free brownies on Friday, however, that’s only because one of the ladies on the floor bakes them for everyone. We also have giant snack room, however, you have to pay for the snacks you take.

I’ve talked to many of my non-techie friends and they’re surprised by the perks I get, so maybe I shouldn’t be so selfish. However, I hope the trend of free stuff continues and spreads to other companies.