|
Pages: << 1 2 3 4 5 6 7 8 9 10 11 ... 49 >> 10/01/08The iPhone SDK NDA has been lifted!Link: http://developer.apple.com/iphone/program/ This is the best news about the iPhone that I've read in months! The iPhone is a great device to develop for. The problem is, it can be a very difficult device to program for, especially if you are not an expert at Objective-C and Mac programming in general. I am one of those people who is not an expert at this stuff. As such, I am often looking for help as to how to fix certain programming problems I encounter while programming. So what would I normally do in this case? Google! The problem is, the NDA (Non-Disclosure Agreement) that all iPhone developers sign (including myself) forbids anyone from talking about how to program the iPhone. This means you are essentially on your own. If you can't find it in the Apple documentation, you are out of luck. You have to figure it out on your own. This is despite the fact that there are thousands of other iPhone developers out there, one of which is sure to have encountered the same problem and knows how to fix it. This forced silence placed on all developers had hurt the iPhone development market in huge ways. There is a huge amount of knowledge out there but noone can access it. By now, there should be hundreds, if not thousands of articles out there on the Internet as to how to program various parts of the iPhone. There are finished books on how to program the iPhone that can't be published because of the NDA. There are no doubt many open source programs, modules etc. for the iPhone that can't be published for the iPhone. Today all that changed. Apple finally relented and dropped the NDA. From the announcement, it is also very clear that Apple is doing this begrudgingly. The announcement is very politely worded, but if you 'read between the lines' of the announcement, it's clear that they are doing this because they received a flood of complaints and bad press for keeping it up. The floodgates have finally been opened. We'll very rapidly start to see books being published, articles being published, open source code being made available, and discussion groups being opened. (One already has been). I hope that now that this information is available, we'll start to see a great increase in the quality of published iPhone apps in the future. Due to the lack of information previously we've been stuck with a lot of frankly, low-quality software. That will now change. I can't wait to see what happens. Suddenly I'm enthusiastic about iPhone development again. 09/23/08Spam Scam #6: The Internet Service Provider ConsorciumOk, time to discuss another malware email that I received today. I wanted to describe this so that I can help others learn to identify scam/malware emails. The body of the email is as follows:
Return-Path: <monitoring@isp.com>
X-Original-To: rick@ekle.us
Received: from isp.com (unknown [192.206.246.200])
for <rick@ekle.us>; Tue, 23 Sep 2008 05:12:49 -0700 (PDT)
From: monitoring@isp.com
To: rick@ekle.us
Subject: Your internet access is going to get suspended
Date: Tue, 23 Sep 2008 07:12:49 -0500
Dear Sir!
The Internet Service Provider Consorcium was made to protect the rights of software
authors, artists. We conduct regular wiretapping on our networks, to monitor
criminal acts.
We are aware of your illegal activities on the internet which were originating from
You can check the report of your activities in the past 6 months that we have
attached. We strongly advise you to stop your activities regarding the illegal
downloading of copyrighted material or your internet access will be suspended.
Sincerely
ISC monitoring team
Attachment: user-EA3911X-activities.zip
Ok, so how do I know this is a scam? Let's describe each in detail. From Email Address: monitoring@isp.comFirst of all, this email address is very generic. 'isp.com' is not the domain name of my ISP. Had this been the domain name of my ISP, I might be inclined to believe it is real. Because this is a very generic name it is clearly fake. However, to the uneducated, they may think that it is their ISP sending this instead of a generic 'ISP'. Plus, the from email address of an email is easily faked. These should never be trusted. From IP Address: 192.206.246.200The IP address that sent an email cannot be faked. Had this email truly been from my IP address, it would have been within an IP range owned by my ISP. I just looked up the geographic location of this IP and it returned that it is from the 'CARROLLTON-FARMERS BRANCH INDEPENDENT SCHOOL DIST'. In other words, it's a school in Texas somewhere. I live in Florida. My ISP is not a school in Texas! This email likely came from a 'zombie' computer in a gradeschool district in Texas somewhere. 'Consorcium'Misspellings are often a sign of scam emails. The misspelled word 'Consorcium' in the email is a blatant sign that this email is fake. The correct spelling is 'consortium', by the way, as any spell-checker will tell you. Scare TacticsThis message is clearly meant to try to scare you. It accuses you of engaging in illegal activity on the Internet. It basically threatens you to open the attached file or you will lose your Internet access. Suddenly you are afraid of not only losing your Internet access but of going to jail! A true email on this subject would likely be much more polite. Zip file attachmentsAny time I see an attachment that is a ZIP or an EXE I instantly get very suspicious. This attachment is usually the malware program. You unzip the attachment, run the EXE inside and your computer is infected. I downloaded this attachment (very carefully) and viewed the contents. It contains a file named 'user-EA3911X-activities.exe'. Clearly this is not a record of your 'violations'. If it were it would likely be in a text file or a Word document or something similar. An EXE means this is a program. Were you to run this program it would likely infect your computer. However, when I attempted to extract this program so i can scan it with my virus checker to see what kind of virus/malware it is, my unzip program reported that the zip file was corrupt! These stupid malware people can't even send a valid zip file! So there you have it. My quick and dirty analysis of this scam email. I hope this saves you from having to fall victim to this scam. 08/29/08A Painful WeekThis has not been a good week. It seems to be my week of injuries. First, on Saturday evening, I was drinking some water and stupidly trying to talk at the same time. As a result, I ended up inhaling a good mouthful of water. That did not go over well. Instantly I'm choking and gasping for breath. For what felt like a long time I couldn't breathe. It was like my lungs were made of stone. They just would not work. Thankfully, I finally coughed up the water and was able to breathe again. Once this whole incident was over, I'm there finally able to breathe, and with tears flowing down my face. After this, my eyes started to bother me, so I took out my contact lenses. While doing so, I noticed that my eyes were suddenly bright red and heavily bloodshot. I later found out that when you choke like that it causes blood vessels in your eyes to burst. That's what caused the badly bloodshot eyes. Later that same evening, I was helping my brother take something out of his car. I leaned too close to the hot exhaust pipe and managed to burn my leg - a nice perfectly curved burn mark on my leg. And finally, on Monday evening, the king of all health screw ups. I was walking around the house, made a bad step and proceeded to sprain the ankle of my other foot! I now have a burn on one foot and a sprained ankle on the other foot. After several days of a sore ankle, I finally decided to go by the 'non-emergency' medical clinic last night to get my ankle checked out. It was starting to get swollen and black and blue. At the clinic, they took a few x-rays and thankfully no broken bones. just a sprain. The doctor also said my bones looked very good. He gave me an Ace bandage to wrap my ankle with and told me to take three Advil with each meal three times a day. So I stopped by the nearby Publix and bought some. Yes, that's right. Rick "Mr. No Pills" bought some pills. I'll try not to take many. The pain isn't that bad. So there you have the story of my painful week. I NEVER go to doctors and I rarely get injured. I guess my string of good luck in that area caught up with me - bigtime! 08/19/08Identity Theft for DummiesSo after I arrive home from work today, I stop by the mailbox to pick up my mail. However, in addition to the usual pile of ads etc., I get my credit card bill - the bill from my one and only credit card that I never use. In fact I don't think I've ever used this particular credit card. I had a problem with an online retailer a few months back (1and1.com sucks) where they were incorrectly charging me repeatedly for services I did not have. I had to cancel that credit card and get a new one issued in order to stop them. For quite a few months now, I've been on a strict 'no credit cards' policy. If I can't buy it cash (or debit card) I can't buy it. I get pissed off at myself when I get a credit card bill in the mail, even if it's only for a few bucks. Since I never use this credit card, imagine my surprise to get a bill from that credit card. I certainly couldn't remember charging anything on it recently, but occasionally I might forget that I ordered something, so I opened it up to see what I had forgotten that I charged. On the bill I see a $297 charge from "TWC*Maine". Hmm, you'd think I'd remember buying something for 300 bucks! Of course I can't remember ordering something at that price, so I called the number. It turns out that "TWC*Maine" is short for "Time Warner Cable of Maine". Considering how I live in Florida, have never been to Maine and don't know anyone in Maine, this was clearly not a valid charge. I talked with a representative at Time Warner Cable and explained the situation. I gave them as much information as I could regarding the fraudulent charge. After hanging up with them, I called the credit card company and disputed the charges. They of course cancelled my card (again) and will send me a new one. What I find funny about this is some moron with Time Warner Cable in their house decided to use my credit card. I suspect this joker decided to buy himself a new DVR for his house or something and charge it to me. Now I'm sure Time Warner keeps track of these things. I'm sure somewhere there's a record of who charged my credit card to pay their bill. This has got to be a trivial thing for Time Warner to track down and prosecute this idiot. What's disturbing about this whole incident though, is how my card got charged to begin with. This card that got used fraudulently was only about 2 months old, since I had just got it to replace the other credit card that 1and1.com was incorrectly charging. Plus, I don't believe I've ever used this card! I don't know how someone could have gotten their hands on it. Did Chase (the credit card company who I have this credit card through) recently have some big data breach and my card got stolen as part of this breach? That's the only thing I can think of. I've never used the card. I never lost the card, I never lost my wallet. I don't know how else they could have gotten a hold of it. Of course I'm not concerned about the money. It's an obviously fraudulent charge and I reported it as such. This means I don't have to pay for it since I never bought it to begin with. I'm just concerned on how this happened in the first place. That card number should not have been out there. 07/13/08An iPhone WeekendLink: http://www.apple.com/iphone/ This weekend was another expensive and bumpy Apple weekend for me. I am now the proud (?) owner of an iPhone 3G. Here's the whole sordid story of how I got my hands on this little gizmo. I knew about the original iPhone a year ago when it came out, but I didn't get one. I was hesitant because of the high price and the fact that it was with AT&T - a wireless company I didn't much like. I did go to the mall that day just to watch the insanity though. What I witnessed was a massive line of hundreds of people snaking out the Apple store and continuing hundreds of feat around the mall. However, from watching the store, it appears that they got people in and out very fast. All in all what appeared to be a very efficient buying experience. There were some bumps last year though. When people got their iPhone's home, they tried to activate them but the activation often failed. These problems got ironed out over the first few days, but things were bumpy at first. I figured that this time, Apple and AT&T would better anticipate this and be prepared for it. Apparently not. The new iPhone had several major advantages going for it that made me finally decide to buy it. First, the price. It was much cheaper to buy. I think it was $599 (maybe $699?) for the high end iPhone last year. Now, the high end iPhone is $299. Much more affordable. The new iPhone also uses a new 3G network which means it's Internet access is considerably faster. One of the biggest complaints I read about the old iPhone was that it's Internet speed was very slow. The final point that sold it for me was the announcement of the iPhone 2.0 SDK. Finally people could make real applications for it, not just the so called 'web-applications' that Apple suggested at first. Since I am a developer, this appealed to me. I applied to be a developer of iPhone apps myself. That's a story for another blog though. So I had finally decided to buy one. I knew that my current Verizon contract expired in May of this year, so I knew that come July 11th, I could finally get rid of my despised Treo 700 (worse damn cell phone I've ever had! Windows Mobile is pathetic) and get a nice new Apple iPhone. Bright and early on Friday morning (the day it went on sale) I showed up at the nearest AT&T store to my house. I got there at 7:30AM. The store opened at 8AM. Of course by this time there was at least 150 people waiting in line outside the store, in the hot South Florida sun. The line had already snaked three quarters of the way around the back of the store. I was standing in line behind the store, with a good 150 people in front of me, sweating my ass off. Of course I had to be at work at 9AM that same day, so I hoped (in vain) that I could get in and out by 9am and still make it to work without being too late. No such luck. At 8AM sharp, the doors opened up and they started letting people in. The first couple of groups of people seemed to move quickly so I was optimistic I might make it through quickly. However, after the first two exciting times when the line jumped forward, things ground to a halt. at about 830AM the line stopped moving. It didn't move at all for a half hour. By now it's 9:00AM, I've been sweating in line for 1 1/2 hours and I have to leave to go to work. So after all that waiting for nothing, I left, went home, changed, and headed to work. For the next couple of hours at work I read the news on the whole iPhone 3G release. It turns out that so many people were trying to buy and activate them, that Apple's servers were getting overloaded and the activations weren't working. This was causing massive backups at all the stores. This is no doubt why that line I was in had stopped moving. Later, around lunchtime, I decided to make another attempt. I hoped that by now they had fixed all those server problems and the lines would have shrunk down to a size where I could get in and out during my lunch break. I hopped into my car and headed to the nearest AT&T store to where I work (a different store from the one I was at earlier). As I drove up, I saw a relatively small group of people in line. There were maybe 30 people. I thought this looked like a manageable size, so I parked and got in line. After a few minutes though I decided to go to the front of the line and check what was happening. The lady at the front of this relatively short line said she'd been in the line for 3 hours! Ok, if the line is that short and it takes 3 hours to get to the front, forget it! I'm not going to wait 3 hours for this thing. I'm a fan, but I'm not that crazy! Besides, I only had 1 hour to do all this. So I left and went to eat some lunch nearby. After eating my lunch I drove back to that same store to see if the line might have cleared up. It didn't look like the line had moved hardly at all, so I just left and went back to work. Finally, at the end of the day Friday, I left work and went over to the Galleria Mall to visit the nearest Apple Store. I figured I might have better luck there. As soon as I arrived, I witnessed another long line, of probably 150 people or so. I asked someone at the back of the line how long the wait was. They said 2 1/2 hours! Now granted, it was in the air conditioning of the mall, but again, I didn't want to wait that long, so I left - again. it's now been three attempts in one day to get an iPhone without wasting hours in line. No luck. I decided to give up for the day. I figured that the next day (Saturday) would be lighter. Everyone has already gotten their iPhones, so the lines would be smaller, the activation problems would go away and I could get an iPhone without too much trouble. I decided to return the Apple Store in the Galleria Mall on Saturday morning and try again. Saturday morning arrives. I get up, eat breakfast, get dressed, and head back to the Galleria Mall. I arrive at the Apple Store to yet another line. This line was shorter, though. It was about half the size of the line from the previous night. I figure there was maybe 50 people in line. This seemed reasonable, so I got in line. I heard shortly that the wait in the line was about an hour. Ok, I can deal with that. So I waited for an hour in the air conditioned mall and we slowly moved toward the front of the Apple store. Not long after being in line, i was told that they had sold out of the black 16GB iPhone, but they had plenty of the white 16GB iPhones. I was a bit disappointed by this. I had debated between getting the white or the black 16GB iPhone. It had to be 16GB, but I wasn't sure on the color. I prefer the look of the black one, but then again, I'm going to put it in a case, so it's not like the white would be very noticeable. I decided I could live with the white 16GB one. After about an hour of waiting, I reach the front of the line. They had divided the Apple Store in half. One half for iPhones and one half for everything else. There was a separate line that people had to wait in if they wanted to get into the store to buy something other than an iPhone. I am escorted in by a very friendly Apple store employee. I told him which iPhone I wanted (the white 16GB iPhone.) I also told him I wanted to get a cover for it. The plastic on Apple iPods tends to get scratched almost instantly and since this iPhone had a plastic back, I knew I would need one. He suggested I go over and look at the cases while he goes and gets the iPhone. I walk over to the cases, and quickly picked out a black one for the phone. He comes back with my phone, and I hand him the case. I also bought a copy of MobileMe to try out. We do the whole sign up and porting of my cell phone number from his handheld computer. This is the same handheld computer they use to let you buy everything else in the store. Everything was done without opening the box of the iPhone at all. Finally after around 15 minutes or so of doing all this, and paying for my purchaces, he takes me over to one of the Mac computers on display. It is at this point we open up the box of the iPhone. He lets me take it out (so I can 'bond' with the phone, heh) and it is plugged in very briefly to iTunes on the Mac we were standing next to. After what seemed like a very brief instant, the phone was fully activated. I turn it on. After a short delay it comes up and connects to AT&T with a nice little '3G' icon appearing at the top. Success! I am now an iPhone owner and a 'slave' of AT&T wireless for the next 2 years. He tells me it could take a couple of hours for the port of my phone number to complete. In the meantime I could receive calls on my old phone but make calls on the new iPhone. I thank him, take my purchases and head out the door. It has been a total about about 1 1/2 hours in line and in the store, but I have succeeded in getting an iPhone. I go downstairs, hop in my car and leave the mall. I had left the iPhone in the box and inside the little fancy white 'iPhone 3G' bag they give you in the Apple Store when you buy one. I left it there because I was planning on driving down the street to get some lunch. I planned on opening it up when I arrived at the Quizno's where I was going to eat lunch. There I would put on the case. That way it would be kept clean, and scratch free and I could play with it while eating lunch. I pull into the parking space at Quizno's, park and open the box. As soon as I open the box I hear this odd sound and I see a number displayed on the screen of the iPhone. At first I couldn't figure out what this was! Was this phone number being displayed the temporary phone number I had on the iPhone until my cell phone number ported over? After a moment of staring blankly at the thing, I realized that someone was calling me on the phone! It turns out that it was my father calling me to ask me if I got the new iPhone yet. Apparently in the 15 minutes it took for me to leave the mall and drive to the sub shop, the number port had completed. I answered the phone, and told my father all about how I had finally got it. We also discussed going to dinner that night to celebrate my birthday (which is tomorrow, July 14th). I hung up , went inside and ate my lunch. Later that evening, I joined my parents and brother for dinner at Outback Steakhouse to celebrate my birthday. As soon as I walk in the restaurant, the first thing my mom says to me when I arrive is "Ok, let me see it." So I grin and hand her the phone. She really liked it! I swear she didn't stop playing with it for most of the dinner! The entire time we waited, while we were walking to the table, and most of the wait for dinner, she sat there silent playing with the iPhone. I think she had a lot of fun with it. I also showed my father it. He didn't seem all that interested in it, though he did like the new calculator app on it. My brother also played with it for a while. He was having fun watching Youtube videos on it. We finished dinner and I headed home. So there you have it - the story of my two day attempt to get an iPhone. But now the all important question of how do I like it. That's another long winded blog, so I'll save that for my next blog. 07/07/08Wanted vs WantedRecently, I went and saw the movie Wanted. I had read that it was based on a comic book (as many movies these days are). I enjoyed the movie. About the same time, I ended up buying a copy of the actual comic book on which it was based, in order to see exactly how close the movie was to the original comic book. It's a good thing I saw the movie before I read the comic book. The comic book and the movie are nothing alike. The name of the movie, the names of a few characters and the first few scenes were the same, but that's it. Everything else is a completely different story. In the movie, they are a 'Fraternity' of assassins that 'kill one to save a hundred'. This makes the characters almost sympathetic. The comic book, however is a completely different story. The comic book tells the story of what happens if all the supervillians in the world won. It is a very dark and adult story. Basically, the hero of the movie is a supervillian in the comic book. This book is not for kids! With various villians with such names as 'Shit-Head' and 'Fuckwit' this is not the thing you want your kids to read. It's a dark story, but an interesting one. It is fun to read because they make not so subtle references to well known comic book characters and what the villians did to them when they won. Despite the graphic nature, I am enjoying the story. All in all, I'd say both the movie and the comic book are enjoyable, but they should be considered two very different stories. Also, if you go see the movie, watch for a little inside joke in the last scene of the movie. The writer of the comic book is named Mark Millar. The artist is named JG Jones. In the last scene, you will see a office cubicle with a very visible name tag that says 'JG Millar'. This is a reference to the writer and artist of the original comic book... 06/30/08Barak Obama Must NOT Be Elected!I'm going to make a rare exception to my long standing "no politics and no sports" rule regarding subjects to talk about on this blog, because this issue must be discussed. Warning, major rant ahead! In a recent CNN article, it described Obama's plan to "tax the wealthy". Now what does he define as the wealthy? Married couples who make over $250,000 per year or single individuals who make over $200,000 per year. He plans to increase the maximum income tax rate from the current 35% to 39.6%. Since when does it make sense to increase taxes on the 'wealthy' - the very people that have worked hardest for their money and provide the jobs in this country? Where do you get off telling me that since I earn a good salary I should be punished??? While I'm certainly no expert on politics or economics, it doesn't take a genius to figure out that you stimulate the economy by lowering taxes, not raising them! By lowering taxes, you put more money into people's hands. When people have more money, they will spend that money. If people have less money, they obviously are going to spend less money. This means the economy will get worse, not better. Also, since when is it right to 'redistribute wealth'? Why are we punishing the successful to help the failures in life? I work hard for my money. I went to college, I learned a trade, I got a good job, and I worked hard. I made money. I spend and invest my money wisely. I'm doing quite well. I am constantly reading books on many different subjects. So let me get this straight, a hard worker like me, should be punished by being forced to help all the unemployed ignorant idiots out there that seem to think that they are entitled to something because they are breathing? This whole Democrat obsession with bigger government, punishing the wealthy, increasing taxes to fund more and more useless government programs has bugged me for a long time. This is one big reason I've always tended towards the Republican/Conservative side of the fence. I've been a registered independent my entire voting life. I voted against Bill Clinton both times he ran. I actually voted against George Bush in his first election and voted independent. In his last election, I was one of those 'idiots' (as many people seem to think of us) who actually voted for him. Do I agree with everything George Bush has ever done? No! I disagree with his idea of establishing a Constitutional Amendment to ban gay marriage. Of course that idea didn't have a snowball's chance in hell of succeeding so I basically ignored that. Should we have invaded Iraq? I don't know. That's a matter for much debate. Should we pull out of Iraq? I don't think we should. Regardless of whether we should have ever gotten into Iraq in the first place or not, we are in there now. If we left Iraq now, the entire Middle East would collapse into chaos. People, when are you going to realize that the government screws up everything it touches? Do not depend on the government to support you. Get a job. Pick up a book and read it. Learn something. Go out and help yourself improve your situation. You need to be constantly learning, constantly exploring new things. Read at least one non-fiction book a month. Pick up books on random subjects you know nothing about but look interesting. Talk to and surround yourself with successful people. Don't surround yourself with losers. Social Security is a joke. Anyone who thinks that they are going to be supported through Social Security when they get old are living in a delusion. Universal Healthcare is a joke. Any attempt to do that will cause medical care costs to skyrocket and increase the amount of bureaucracy you have to deal with to ridiculous levels. Put at least 10% of your income every paycheck into a 401K or equivalent. Max out your contributions to a Roth IRA. Invest in mutual funds long term. Buy mutual funds that have a profitable 10-15 year track record and then don't touch them. Don't panic when the market goes down. The market goes down one day, and it goes up the next day. It's done that for the last 80 years since it's inception. In the long term, the stock market has always made money. If you invest in good mutual funds, you will make money. If the market goes down, be happy! That means you can buy more mutual funds for the same money! Then when the market goes back up, those mutual funds you got at a bargain will be worth a lot more! So, now that you've read my rant, you probably think I'm going to vote for John McCain. The truth is, I don't know. While he is a Republican, I am very concerned about his age. He's at least as old, if not older than Ronald Reagan was when he entered the White House. In the times I've seen John McCain talk on TV, he almost seems to me to already be a 'dottering old fart'. Being President is no doubt a very stressful job. I question whether he has the health or even mental acuity to handle the job at his advanced age. I largely kept my mouth shut regarding the presidential election up until now because until we got down to the 'Final Two', it didn't really matter. Now that we have them, I'm not sure if I'll vote for McCain or maybe an indepedent candidate. A lot depends on who McCain's Vice Presidental candidate is. Am I against Obama because he is black? Absolutely not. I've been fascinated to watch his campaigning for president. He's the first black man that I've ever seen who has a very good chance to be elected president. He's also the first black presidential candidate that I've ever seen that didn't strike me as a complete nutjob (like Al Shapton and Jesse Jackson do). I'm concerned, however that the amount of racism that still exists in this country will at minimum not allow him to get elected, or if he does get elected, some racist nutjob will try to assassinate him. Should that happen, that means his Vice Presidential candidate becomes President. We still don't know who that will be, though there's been a lot of talk about the possibility that Hilary Clinton will be that candidate. Dear God, I hope not! That woman scares the hell out of me. She will do and say anything to get elected, just like her husband did. I never liked Bill Clinton either, but I could never quite put my finger on why. There was just something slimy about him, and I feel the same way about his wife. Now, if I do decide to vote for an independent, you may be saying "You are wasting your vote. The independents don't have a chance of winning." While that is probably true, I don't consider it a waste of a vote. The point of voting is to vote for who you think is the best person for the job based on their qualifications and policies. If everyone voted only for the big two despite not liking either one of them, that to ME is a wasted vote. Why are you voting for someone you don't like or don't agree with? Vote for someone who you think is the best person for the job. If enough people realized this, we might actually be able to end this ridiculous two party system we have. I've often wished there was a way to vote against a candidate. However, there is no real way to do that, other than to vote for someone else. If no candidate matches what you are looking for, then don't vote for anyone. I'd rather know that I didn't vote for anyone than know that I voted for a candidate I didn't like. I made my like/dislike of this person known by not voting for them. I have to say that up until I read this article about Obama's plan to increase taxes, I was on the fence about him. This news story has pushed me over the edge though. I will never vote for him now, nor do I think anyone else should. 04/22/08Good Article On Different Types of PlasticLink: http://www.news.com/2300-13838_3-6237932-1.html?tag=ne.gall.pg News.com has a good article on the different types of plastics, which ones can be recycled, what those little numbers on the bottom mean, and the health hazards of these different types of plastics. Read the article here.04/03/08A Very Good DayToday turned out to be one of the best days of my entire working career. This morning, we had our monthly company-wide meeting. Our new CEO likes to hold these meeting every month to let us all know how things are going with the company, do a little 'rah rah' session to get the troops excited etc. I like that he does this. I love working for a company that is very 'transparent' to their employees. They tell us exactly how much money we made this month, how our earnings are doing for the quarter etc. It's nice to know what's going on in your company and know that they are stable and profitable, especially in today's uncertain economy. During the meeting the CEO mentions me by name and compliments me on the great changes I have been making the UI of the application (see my previous blog for the whole gory story). it's so nice to have yourself complimented by name in front of the entire company. Of course he mispronounced my last name in front of everyone, but I won't fault him for that! :) Later in the same meeting, my boss also mentions me by name and compliments my changes too. That's twice I've been complimented in a meeting in front of everyone. That felt so good to hear. Normally, I'm one of those 'stealth' employees that noone even notices. This whole UI thing has really moved me into the spotlight and it feels great to be recognized for it. In addition, I found out after the meeting that I had tied for second place in the department's monthly 'employee of the month' rankings. Granted I didn't win, but considering how close I was, wouldn't that have been an amazing meeting if I'd gotten complimented twice AND won department employee of the month? In addition, this evening, I participated on the 2008 Corporate Run. This is a 5K (3.1 mile) 'mini-marathon' that is organized such that different companies put together teams of runners/walkers and we all meet and participate in this mini-marathon. Once the marathon is over, there's food, music, drinks etc and everyone from the company hangs out ans socializes. My company participated in it last year as well, but I didn't go because I thought it was a FULL marathon. I knew I wouldn't be able to run a full marathon! Of course I later found out it was only 3 miles. Hell, I can do that! I may not be able to run 3 miles, but I can easily walk that. So, this year I signed up immediately. I arrived at the location of the Run and met my company. I had arrived fairly late in that I only showed up around 20 minutes or so before the race started. I'd had a heck of a time finding parking and that had delayed me for some time. The race starts and we all move to the starting line - a great sea of people. The starting gun goes off and we all take off. I tried to run, but didn't have enough energy to do much of that. I'm no marathon runner. So I alternated between mostly walking and some running the entire distance. Midway through the walk I met up with a coworker. We walked and ran together the rest of the race. She encouraged me on by saying that my boss was behind us and she wanted to beat the boss to the finish line. So, as we walked, I'd periodically look back. If the boss was getting close, the two of us would try to run for a while to stay ahead of her. Of course, since I'm not particularly good at running, I could only run for short bursts. I kept ahead of the boss, but over time, with me walking she would get close behind me. Whenever that happened, I'd start running for a bit to put in some distance ahead of her then I'd go back to walking. These little bursts of running to keep ahead of the boss continued for the rest of the race. As we approached the last turn of the race, I was ahead of her, but not keeping an eye on her. Suddenly, she comes out of nowhere and on the last turn runs right by me at top speed. (She knew I was just trying to stay ahead of her). She took advantage of that last turn to sneak up and run past me. Of course, I couldn't have her getting ahead of me, so I took off running after her. I managed to pass her and beat her to the finish line by several seconds! I'd won my little race! :) I damn near killed myself on that sprint at the end, but I beat her. As I sprint toward the finish line, there's the CEO of the company (who'd long since finished ahead of me) cheering me on. I make it across the finish line with a time of 44 minutes and 37 seconds. Yeah, it's a crappy score, but hey, it's my first 'marathon', so I'm happy. I stumble to the company booth, panting and out of breath from that sprint. I then sat there and relaxed and had some food and drinks with my coworkers. It was a fun, if tiring evening. I'm glad went. The Story of the UIFor the last month or so, I've been working on a major project at work. This is a project to do a major overhaul of the UI of our application. Our application was written a good 15 years ago, and it shows it. Up until recently, our app still had a very archaic, Windows 95 look to it. All the dialogs had ugly gray backgrounds, all the buttons were these ugly, square boxes. We had three different types of tab controls in the program! We had a lot of custom drawn controls. The comment I heard is that even our customers had described the UI as 'antiquated'. Even running in Windows XP, it did not look like a Windows XP application. And of course running it in Vista made it look even worse. When i started at this company a year and a half ago I immediately noticed this and wanted to fix it. My first approach was an admittingly bad way of doing it. I just started to fix little things as I found them, without actually telling anyone. That did not go over well. I got yelled at (and rightfully so) for making changes without documenting what those changes were. As a result of that, for a long period of time, I just kind of gave up and had just resigned myself to having to put up this ugly blob of a program Back in August of last year, I had my annual review. I met the boss, she told me they were happy with me and gave me my (small) raise. She then asked me if there were any problems that I wanted to talk with her about. Honestly, I got along very well with my coworkers for the most part, so I had no problem there. The one problem I did mention to her was our 'ugly as hell' interface. Yes, I actually called it that (because it was ugly as hell). To my surprise, my somewhat rude comment wasn't taken as an insult. She in fact agreed with me. She commented that they had been getting a lot of complaints about the UI from customers for a long time. I told her I really wanted to fix it. In response, she said that I should just submit a proposal saying what I wanted to do and we'd likely do it. I told her I would prepare this proposal and let her know. Of course at the time, I was very busy with other tasks and was never really given any time to prepare this proposal. I asked the IT department if they could setup things so that I could access my work computer from home. I asked for this because I needed to be able to access my computer so I could play with the program, test out things, take screen shots etc, in preparation of my proposal. They kept dragging their feet giving me access. They were always too busy doing something else to take care of this. Months passed as I waited for them to give me access. They never did. Finally, in February, I got frustrated and said to myself 'Screw it. If they won't give me access from home, I'll just stay late one day and do the proposal after work." So I did. One evening I was at work 3 hours late, writing, taking screen shots, and explaining in detail what I wanted to do. I called it my 'Skunk Works' project. After a marathon 3 hour session of that, I emailed the list to my boss and said "Attached is my proposal. Let me know what you think." Things took off like a rocket from there. My boss read my proposal, liked it, and forwarded it to the owner of the company! He also read it and liked it, complimenting me on it. It was suggested that we schedule a meeting with me, my boss, the owner, and various other heads of departments to discuss my proposal. A couple days later, we all met and discussed my proposal. Now, my proposal was NOT polite. It essentially ripped the program to shreds, even referring to some of our dialogs as 'horribly complex'. That description got some chuckles out of people, but they agreed with my sentiment. In the meeting I discussed what I wanted to do. I even made it very clear to everyone in the meeting that what I was talking about doing included essentially removing some features from the program. I expected a lot of resistence to that, but they were very receptive to it. Now this was mid-February and we were preparing to release the new version of our application within the next week or so. What I was proposing was a radical overhaul of the application. Obviously this is not something you should do at the last second in the version of the application they were preparing to release. Besides, the changes I was proposing had an estimate time of 8 months or so. So it was decided that these changes would be postponed until after we shipped the current version. I was fine with this, since it made sense not to try to do all this stuff at the last second and the new version was going to ship in a week or so anyway. I could wait a week. But things got even more interesting. It turns out that our company was going to be exhibiting at the NAB show in mid-April. This was only about a month and a half away. The owner, clearly excited at the prospect of a much more attractive application, decided right then and there in the meeting that we should show these changes (which hadn't even been started yet) at this show. So, since we had such a short time frame, he suggested we pick a few items from my list that would give us the most 'bang for the buck' at the show. How much flash could we add to the app in the next month or so? We discussed it and reduced it to a list of a half dozen or so tasks that I felt could be done in that time frame and that would give us a good 'flash' for the show. He basically put me in charge of this project and asked me what tasks I would need to do and what tasks we could 'farm out' to our overseas developers in India. I picked several of the smaller tasks that I knew they could do and suggested we assign them to the overseas developers. I kept to last two 'biggy' tasks for myself. I knew those would be difficult for them, but that I could do it. The last week in February arrives. We have shipped the new version and it's time to start doing these updates. The smaller tasks get assigned to the overseas developers and the big ones get assigned to me. I dive in. I had estimated 6 weeks for these two tasks. That would give me just barely enough time to get them done by NAB. I worked furiously for the last week of February, and the entire month of March. Five weeks later (a week ahead of schedule!) I emerge, having completed both tasks and even a couple more that were on my list but not assigned to me yet. I finished these tasks around the end of March. I knew I had a couple weeks left before NAB so I wanted to discuss with the boss what else we could squeeze into those two weeks. I arranged to hold a demo of my changes to the owner, and several other executives. The demo was yesterday. It was the first time I've run any kind of meeting in my life. I'm not exactly the public speaking type. In preparation for the demo, I borrowed a coworker's Vista PC and setup the program on it. Yes, I hate Vista, but Vista's UI is much more colorful than XPs, so I felt it would be a better way of showing just how bad the old version was and just how much better the new version was. The demo meeting arrives yesterday and I show off my changes. The owner was there, the CEO was there, and several others were there too. It went very well. They were all very impressed on just how much had changed in such a short period of time. We discussed what I could squeeze into the next week or so. One suggestion was for me to update my proposal with some of the other changes that I wanted to make. I had discovered some other problems while working on these changes for the last month. The meeting ended and I went back to my desk. I prepared my updated list of changes and sent it out to everyone. I asked that tasks be created for all these changes in our bug tracking system. The tasks were created and all assigned to me (at my request). I told them I would try to assign some of these to the overseas developers so we could get them done faster. During the demo, we discussed the possibility of 'lighting up' all the UI changes for everyone. I had intentionally written a lot of the changes so that they wouldn't be immediately active. I did this because I wanted to get everything functional before I 'lit it up'. After a month of development, things are still not done, but I agreed that it was complete enough that we could let everyone see it. Of course people had already been seeing many of my changes show up over the course of the last month - unintentionally. When I had originally made the changes I had not properly shut them all off, so people were seeing my incomplete changes even when they weren't supposed to yet. I finally fixed this 'bug' a few days ago and fixed it so that the program would properly revert to the 'non-flashy' appearance by default and would not show the full UI until I specifically turned it on. Of course this 'bug' of letting the UI out accidentally turned out to be a good thing. I got many compliments on the improvements that I had let slip out so far. Anyway, after agreeing that it was ready enough that everything could be turned on, I went ahead and updated the code to make it turn it on for everyone. Yesterday afternoon, a new build with the fully lit up UI went out. So that's where things stand right now. There is some nice new 'flash' to the app, in time for NAB. It still has some bugs, but all in all runs quite well. I'm very proud of the changes I've been able to accomplish so far. I'm continuing to work on my new list of tasks. I'm going to try to get a few more done by NAB next week and fix the occasional bug that pops up as a result of my current changes. There is a long way to go yet, but even in just this short amount of time, the improvement to the app is stunning. I intend to keep pushing along with my overhaul. I think the program (and my career) will greatly benefit from this. It has been an amazing month. |