That’s Just Embarrassing
My colleague said it best when I presented him with this gem.
Public Function IsSatelliteConsolidatedForDate(ConsolidationId As Long, EffectiveDate As Date) As Boolean
If ApplicationSupport.DataAccessProxy.IsSatelliteConsolidatedForDate(ConsolidationId, EffectiveDate) Then
IsSatelliteConsolidatedForDate = True
Else
IsSatelliteConsolidatedForDate = False
End If
End Function
Gabe: Unnecessary...
Thomas: wow!
Thomas: Maybe we should consider that as a design pattern
Gabe: what would we name the pattern?
Gabe: WhenTrueIsTrue?
Gabe: IGetPaidByTheLine Pattern?
Thomas: WhenYouNeedMoreLinesOfcode
Thomas: that's just embarrasing
Tag You’re It
I'm the designated virus cleaner for select friends, co-workers, and family. I don't mind and accept it as a challenge, because you never know what you're going to encounter. I won't go into the details of cleaning viruses and malware, but want to list some handy tools.
Over the course of the blog's life, I have listed several must-have tools. Well, it is that time again. If I have listed any of the following in the past, take it as a clue that the tools should be part of your toolbox.
- Ultimate Boot CD for Windows - Boot from CD and clean those damn viruses!
- DriveImage XML - Drive image backup software (re-image the drive if needed)!
- Autoruns for Windows - Auto run program utility (don't ask questions, get it).
- Process Explorer - The name says it all (pile drive that pesky virus process).
- Sysinternals Suite - Life savers (utilities available in various flavors, file & disk, process, network, security, system information, etc).
Ripoff Handling Fees
I purchased a pair of tickets online and am shocked to learn that I paid a 24% handling fee, WTF! Check it out, I drove to the venue and picked up the tickets at the will call window too. The only "handling" that took place was the cashier handing me the tickets. Ripoffs!
I just checked the ticket site and priced a pair of comparable tickets with the FedEx mail option. Damn! I would have paid 41% above the ticket price for both shipping and handling! The specific ticket site has minimal competition, so it abuses the shit out of buyers.

Hitting The Pipe
Haha! Look what I found on Craigslist. Does the project background sound familiar? If this is the project I think it is, the problems are not going to be fixed anytime soon. Also, I assure you that the vendor is NOT going to find an architect-level consultant for $60 per hour.
Let me guess, the SQL architect will be billed at a $105 per hour CMAS rate and the vendor is paying only $60. I think I know who the cheap vendor is too!! Does the vendor name start with an "E", "K", "H", or "T"? Losers!
Crystal Reports, I Hate You OR Let’s Talk About Sex, Baby.
This is a follow up to my previous posts about Developers being shot. Because after a hard day of debugging the little things start to pop out more and more. Maybe it's not even so much the debugging, but the report I'm forced to maintain. The devs before me have created a hajillion subreports on this Crystal Report. This is a maintenance nightmare. Also instead of passing a parameter to a command object, they decided to read a view that collects all kinds of irrevlevant data, ship it across the network and then filter it on the report side making the report unnecessarily slow. By pulling the views into Command objects and feeding them parameters, I'm able to speed up the current reports by a magnitude of 10. Alright great. Unfortunately, even though I have named the command object the same as the view that was being called I've lost ALL of the subreport links. So now I have to manually go through each subreport and redefine the link. I wish I could see more than just the command name in this screenshot. There's absolutely no way to make that window bigger. W T F.
The only thing I hate MORE than not being able to resize the window is that if you actually want to verify which field you've linked up to in the subreport you have to actually maneuver your mouse around the drop down options. If you don't the mouse will trigger the vertical auto-scroll. The program also changes your selection based on mouse.hover, so in order to not change your selection you have to follow the little red arrow on the right. And while I'm at it, look at what these lazy idiots did. They just copied and pasted the fields. So I have like 50 SSN fields all over the report and I really have no idea which one corresponds to which value. ARGH. One of my other reports is completely labeled with SEX-XX. So I spend hours repeating to myself "sex zero one, sex zero two". Not my idea of dirty talk.

Freedom of Choice
Okay, enough is enough. If you are keeping an eye on Golden Boys Health Care Reform, you know it is another government failure in the making. One item that I am pissed about is that we will (may) be REQUIRED to carry health insurance or pay a penalty. WTF!
The dumbass government is requiring us to purchase services from the private sector. Who are the real beneficiaries here? The medical, pharmaceutical, and insurance companies of course. I should have a choice and not be subject to strong arm acts of government.
You Developers Need to be Fucking Shot
This is the second time in two days I've run into an issue where the error message tell me something of little value. When you throw an exception, include information about what caused the exception. Yesterday, I got burned by Oracle which threw the exception "Table or View does not exist." Thanks for the help, I guess I'll just find out which of the 50 tables I was referencing is missing through process of elimination. WHICH TABLE WAS IT?! I can just imagine the code next to where the exception gets thrown, the tableName variable sitting within local visibility.

Similarly, I got burned today by Crystal Reports. "Missing parameter value". I didn't write this dumb report and there's like 150 parameters in the report. How do I know which one didn't get supplied. ARGH! I'm fairly certain the answer was right next to the code where you threw the exception. Now instead of resolving the issue in a matter of minutes, the solution may take me up to an hour.