Wednesday, December 31, 2008

Mass Zune Failure, Welcome To The Social

Gizmodo is reporting that many, if not all, of the 30 GB Zunes failed at one time. 

A software glitch is suspected, but further details are not known at this time.

Tuesday, December 23, 2008

Question for people in Operations: Does Remote System Administration Require All of That System's Resources?

It seems like every time I work with a computer that has remote system administration that the remote admin tools sporradically consume all of the system's resources.

I've had some trouble lately with my current system. We suspect that the remote administration software is to blame. It's a hard case to crack. It's not as bad as the system at my last gig, that would freeze up for 5 minutes at a time. 

It's understandable that this software makes system administration a less labor intensive way of managing computers. However, if a side effect of the software is the users are unable to use their computers to work, doesn't that lessen the value of the computer? If the computer is less valuable, doesn't that really decrease the value that operations adds?

I'd like to know whether this is a configuration issue, or if it's a problem endemic with remote system mangement software. I think a really big problem with remote administration is the people who have the power to adjust the systems aren't the ones who depend on them to do their own work.

Appropriate Holiday

I'd like to share the words of a friend from college, Tim Gleason, and wish everyone an appropriate holiday.

Monday, December 22, 2008

Am I the only person who doesn't trust an IDE for Source Control?

My current assignment uses Eclipse as the blessed IDE. Nothing new there, it works pretty well and it fits the budgetary constraints, i.e., it's free.

The team also use Eclipse's source control tools to manage source control, e.g. commits, updates, merges, and branches. I'm not such a huge fan of this. I prefer to keep some separation between the development tools and the source control tools.

For performing simple source control operations like updates, and simple commits I think that Eclipse is a perfectly capable tool.

For anything more, though, I prefer to keep my source control tools separate. As a source control interface, I just don't think that eclipse is that great. I don't think that it can be. It's a heavyweight Java application that is designed for developing Java projects.

Eclipse does get the job done, but it doesn't do it as well as other clients. Many of the available specialized tools require only a fraction of the computing power to run than Eclipse and they just do the job better. I also like the fact that most of the source code client allow their users to use their favorite diff tool instead of forcing users to use their own diff and merge tools.

Usability is a big concern. I prefer having a separate source control tool from my development environment because I trust source control tools more than I trust my development environment's ability to manage source control functionality. Eclipse, even in the Team Synchronization perspective, isn't as good at managing files as tools that are made solely for the purpose of managing files. I'll take a command line or Windows Explorer over a file viewer in Eclipse because the command line and Windows Explorer aren't trying to present anything beyond the files to me.  When it comes time to dealing with source control, I only want to know about files, versions, mod dates, etc. 

Finally, I like having separate tools as a final set of checks and balances. Ideally, I prefer to review my changes before I commit them. I'd rather do that with tools other than the ones that I use to edit those files. In a way it preserves the principle of orthogonality. Developing files on a local system and submitting changes to a centralized repository are tasks that are different enough that they deserve different tools. The chances of unintended side effects are much greater when you create a tool gap between their actions.

I find that even viewing the files in a different tool and from a different perspective gives me the ability to review my changes from a clean perspective and potentially catch mistakes before they move to the source control repository.

That's my opinion for commits. If I'm going to branch and/or merge a repository, I'd much rather do it outside of Eclipse. The performance of other tools out there is much better than Eclipse's. Consider the reputation that branching/merging can be one of the most trouble prone actions in source control management, doesn't it make sense to use the best tools for the job. I've had just enough trouble with Eclipse to cast enough doubt whether it's doing what I want it to that I trust other tools more.

Tuesday, December 16, 2008

Profiling Jboss: What I Ended Up Doing

Someone suggested I try using Netbeans' performance profiler. I gave it a shot and it got the job done. 

Netbeans' profiler was able to hook into my JBoss server, that was running through Eclipse. I thought the profiler wizard setup was helpful. It asks a few questions and produces a line to paste into the to-be-profiled-application's configuration. 

That's all there really is to it. There are a few options about filtering methods and what types of profiling, e.g., memory, threads, CPU timing, etc. 

The results we found were about what we expected. It was a good exercise to refamiliarize myself with a profiler though.

Sunday, December 14, 2008

Wikipedia's List of Common Misconceptions

This is a sweet list of common misconceptions. 
It's like every piece of unsubstantiated trivia that I thought was true is dispelled all at once.
Become enlightened and enjoy!

Friday, December 12, 2008

Java/JBoss Performance Profiler Dilemma--any good free ones?

We're at that stage in our project when we're considering the performance of our application. We believe that it could be better, but we don't have a good set of data to point to bottlenecks. One of the reasons we don't have this data is because we aren't using a performance profiling tool. We aren't using a performance profiling tool because we aren't aware of on ethat works with our application server, JBoss, that fits our budgetary constraints, i.e. free.

At one of the discussions during the fall Twin Cities No Fluff Just Stuff Software Symposium an attendee asked the expert panel and the room if anyone is using an open source performance profiler and no hands were raised. This was a group of over 300 software professionals in the region and 10 expert developers and nobody could recommend an open source profiler, and there were no outstanding recommendations for any of the commercial profilers eaither.

When we look for performance profiling tools that fit that description they're either commercial and over $500, too steep for a personal license and we don't have time to evaluate competing profilers to put a proposal together for our client to buy licenses.

I've used JProbe and Optimizeit in the past, they've produced valuable data. Most of the projects I'm on though don't have commercial profilers available.

I would think that there would be an open source profiling tool available. I thought that Java 1.5 was supposed to have features that would make getting performance information easier and someone would have taken advantage of that.

If anyone has any recommendations for profilers free or otherwise, I'd love to hear them.

Thursday, December 11, 2008

I actually want the LHC people to create a little black hole

There was quite a ruckus a few months ago when the Large Hadron Collider was going online. One of the concerns is that the collider may create a black hole on earth. They say that like it's a bad thing. Sure, there is the possibility that this little black hole will consume the entirety of the planet into a space no bigger than an atom along with the rest of the solar system. Yeah, that may not be the most considerate thing we can do as a planet, but let me throw out this possibility.

What if we were able to make the black hole consume only the things we want? How cool would that be? We would have a great waste disposal solution. Yucca Mountain? Why not just put a little black hole down there? Not only can you store all of our nuclear waste in a space that is no bigger than a pinhead, we wouldn't need to worry about any radiation shielding, the black hole waste disposal unit will keep radiation and light from escaping. That's pretty sweet!

Industrial waste is another problem that a little black hole could address. Our friends the manufacturers could become good stewards of the land by disposing of their waste in a little black hole instead of dumping chemicals and other harmful waste on the sly.

The possibilities don't stop there! We could potentially put one of these in every household. You think those fancy Dyson vacuum cleaners don't lose suction? You remember the old vacuum cleaner ad where the vacuum picks up a bowling ball? They don't have nothin' on the sucking power of a little black hole. In some regards, I think a black hole vacuum would be safer than our current models. There's no risk of electrical shock. You also don't need to worry about whether it's safe to use it on combustible liquids like gasoline. Even if there were an explosion, it would all get sucked into the abysmal void of the black hole vacuum.

I would be remiss if I didn't address some of the consumer safety issues that exist with distributing appliances that have the potential of consuming our entire galaxy should they be misused. Yes that is a problem. I'm willing to concede that. But is it any different than say electrical appliances were when they were introduced? They have the potential to electrocute and start fires, but we've learned to use them responsibly. Our automobiles carry enough gasoline to start a small explosion and nobody seems to be upset with that. So I say, what's the danger of putting the power of ripping the fabric of reality in the hands of every man, woman, and child?

Let's be honest. This wouldn't be the safest appliance on the market. I think we'd need a good set of warnings so people are aware that their little black hole might consume everyone. We would need to establish a public service announcement campaign to alert the public what to do should one of the little black holes get out of control. Something like, "Should you or a member of your family notice a slowing of observable reality, please head to the nearest black hole shelter, tune in to the Emergency Broadcast System, and await further instruction."

Another great thing about little black holes is they are perishable. They will evaporate into a cloud of neutrons, thermal radiation, protons, and electrons once they expire. This will drum up a lot of repeat business and set up a loyal customer base. We used to need to engineer small defects in our products to get our customers to come back shopping, the little black hole solves that problem for us.

So, in conclusion, scientists, please do try to create a black hole, but make it so that it doesn't consume our entire galaxy into the space of a subatomic particle.

Wednesday, December 10, 2008

Productivity Tip: Fail Quickly, Succeed Quickly

Ugh, I'm in a bad spot. We're shoring up a release and I'm helping our testers with their regression tests. We're now running all the old test cases from the earlier iterations. Expectedly, some of the older test cases are failing. My job is to provide some explanations as to why the test cases are failing. It's been going well, until today.

I hit a really bad set of tests. The thing about these tests is they take a long time to run and a long time to fail. Oh, they're brimming with NullPointerExceptions that are caused by some bad assumptions that were made about 6 months ago. Fixing the NPEs is no big deal, but finding them is taking progressively longer. When I started this morning I could get to the next NPE in a few minutes. Now we're taking a good 20 minutes. I think the whole test case should take about 25 minutes to run, so we can't be too far away.

The good news, we have excellent coverage of all our test cases. The bad news, when I start a test case I have a 15+ minute void of time where I'm waiting for the next thing to do. I'm filling the void by helping my teammates with their issues, but the voids remind me of a dangerous programming rut I've found--time voids.

Time voids are the things that regularly block a programmer from doing their work. The most dangerous ones to me are development environments that take a long time to set up and require frequent setups.

When I do development I try to iterate through a cycle of setting up a test case for what I want to do, validate that the test case doesn't currently work, writing just enough code to get the case to work, and then validating that it works.

Time voids come in when a workstation takes a long time to perform one of those steps, usually it happens when an environment is being rebuilt or a server is starting up.

Ideally, I'd love to have those necessary delays take a few seconds. Unfortunately, there are times when those delays are minutes if not tens of minutes. That's a productivity killer. The biggest problem with a regular delay is everything you do becomes very expensive. Trying out an idea doesn't take a couple of minutes, instead it might be half an hour. It might cost a day.

What do you do in the time when you're waiting for your system to catch up? You can wipe out your administrative work, clean up your documentation, read documentation, work with others. Probably the best thing you could do is figure out how to eliminate the time voids and get to an environment where failure comes quickly.

Ah, nothing prepares the pallet for the taste of success like the sweet smell of swift failure.

2 Types of Java Programmers

A friend of mine posited a theory that there are two types of programmers in the world: those who can't handle multi-threading and those who are unaware that they can't handle multi-threading.

Dale Mensch has asked that I not mention his name so I will credit this basket of wisdom to anonymous.

Thursday, December 4, 2008

Productivity Tip Trip Report: Close Your Email

I've been field testing some methods to improve my personal productivity. The first method I tried is closing my formerly ubiquitous gmail window. Those readers who know me know that they could expect to get a response from me in email within a minute. To say that I obsessively checked my email is understating a borderline compulsive disorder.

I don't keep the window open anymore. Instead, I check my gmail a few times a day at the office. In the morning before work, around lunch time, and before I leave the office. At home, I sporadically check my email.

I further enabled my compulsion by carrying an iPhone. It's wonderful how easily I could check my mail wherever I am. While I'm working, I keep the iPhone stowed.

The results: big boost in productivity and more focus on whatever I'm doing. The gmail siren isn't calling me away from the task at hand. The signal to noise ratio I get for emails is about 1:4, for every one email I get that is meaningful I get four meaningless emails that immediately get deleted. Of those signal emails, almost none of them require my immediate attention, nor do they lose any significant value if I take a few hours to read them in bunches.

Another side effect of not having the window open is my friends and I don't chat. I enjoy chatting with them, but keeping a few conversations going takes a lot of attention.

The last benefit of keeping the personal email client closed is removing a source of context switching. Context switching is expensive. By controlling and planning my contact with my email I don't run the risk of losing my train of thought or deviating from my tasks at work.

Wednesday, December 3, 2008

Cool Regex Tool: strfriend

strfriend is an awesome tool for visualizing regular expressions.



I've noticed that regexes are a tragically underused resource among my fellow Java programmers. Regular Expressions are an incredible resource for dealing with text.

If you're interested in learning how to use regular expressions, I unconditionally recommend reading Mastering Regular Expressions by Jeffrey Friedl.

Tuesday, November 25, 2008

500 years of women's portraits + Bach Cello Suite No. 1 == Win

Amazing compilation of 500 years of art. I could look at each one of these paintings for hours. The original paintings, not just the morphed snapshot in the vid. But the video's still pretty cool.
Women in Art

Monday, November 24, 2008

I've been meaning to find a way to work this video into an essay

This is amazing. How do they do it without killing each other. I'd love to know if there's some sort of order involved. They probably just don't run people over.

This 2:20 Seems To Go On Forever

I'm still mulling a few essays together. In the meantime, I'll keep throwing a few videos that I find interesting up.

Sunday, November 16, 2008

Funny Top Gear Challenge, Survive Alabama

Jeremy, James, and Richard try to drive through Alabama without dying. The catch? They are each allowed to paint whatever they want on the others' car.

Friday, November 14, 2008

I'm not much of a car guy, but...

This video is awesome.

Wednesday, November 12, 2008

What Could Possibly Go Wrong?


Like a well oiled machine.

Tuesday, November 11, 2008

Sage Career Advice From My Friend Ann

Recently, I was informed that some contractors at my last jobs were given termination notices shortly after their contracts were extended. My reaction to hearing is sympathetic to the contractors' situations, affirming for my decision to leave, and anger. I was angry because they could have just let the contracts run out, why renew them just to turn around and cut them loose?

I was sobered though when I told my fellow ex patriot, Ann, the news of what happened. She's been around the industry and her reaction was, "That's contracting, it happens all the time."

That's sobering news indeed. Ann realized that nobody really talked me through contracting. She told me that for any reason, I could be told that I'm not needed and that I'm done with the client. She said that if you say the wrong thing to the wrong person it can happen. I don't think that my client would do that, but they could be faced with a situation where they may need to cut costs. I know that people in my position are some of the first costs that get cut.

Ann gave me great advice. As a professional contractor, we need to be beyond reproach. We need to take whatever the employees do, and do it a little better. Dress a little more professionally, don't keep a browser open, don't conduct personal business on site.

Ann advised me not to get involved in office politics, that's just asking for trouble.

I think my Caribou friend Keith said it best, 'an ounce of perception is worth a pound of performance.' It's true, when it comes down to it, how others perceive us really drives how well our work is received.

I believe that I work as hard as anyone, but I am not always aware of how others may perceive me. Ann gave me some good advice to improve others perception of us.

It takes very little additional effort to do a little more to project a better image. That is what I intend to do.

Clean desk. All my loose handouts are piled in a neat stack. I keep a microfiber towel to dust off my work area, I think that adds a nice touch. I stored company keyboard and mouse in a cabinet instead of leaving it on my desk. I think it will make my area look neater.

Dressing professionally, my office is casual. I'm going to try and dress less casually than I normally would.

My code. I take pride in my code. I've identified a couple of areas where it can be better though. I think I do a good job in naming and commenting, but I will kick it up a notch and make certain that all of my intents in writing code is explained. My Achilles heal is logging. I've started improving the quality of the logging in my code.

The truth is anyone can be let go at any time. As we begin facing a challenging economic future, it only makes sense to do all you can to secure your livelihood by not only doing your best work, but also doing more to make sure that the way others perceive your work, and the way you work, is as good as they can perceive it.

Friday, November 7, 2008

Smart DRM Use

Kotaku is reporting that the game Sacred 2: Fallen Angel has Digital Rights Management software that enables people to download and play a fully functional version of the game for a period of 24 hours.

This is a great idea. The publishers are encouraging their customers to share. This is a fantastic marketing technique that I believe will net them more customers than they would get through traditional video game marketing.

I hope the game doesn't suck, because I'd love to see more of this use of DRM.

Thursday, November 6, 2008

I forgot my monacle

we're hanging out in the lobby of the ordway. I was joking today about wearing a monacle. I just saw a guy wearing a top hat. Haven't seen a monacle yet. Aside from the guy sporting the stovepipe I don't see any sub-quadrigenarians in the house. I like the bars at the Guthrie better.
Question: is yelling Bravo! required every time there's any applause?

Edit: it's the first intermission of The Abduction from the Seraglio. Jolly good show so far. As I needn't remind you cultured readers, the Abduction takes place on a train. Ok, I was kidding there, but it does take place on a train. The dialogue is in English, which is nice. I had never heard the music before. It is beautiful. This Mozart fellow sure can write music. I wouldn't be surprised if he's written other good music. I just checked, he has. I wasn't expecting as much physical comedy. It's a humorous opera.

Looks like it will resume soon. Shhh.

Edit2: after the second act. I read the program a bit. The set is on the Orient Express in the 1920s. I think that this is probably an adaption. I wish they would list the movements in the program because the last song of the second act was beautiful. It's one of those songs thatbworks it's way into soundtracks of movies and commercials all the time. It's nice to get context for the songs.

Pro tip: if you want to unwrap a cough drop that is wrapped in crinkley plastic wrapping without disturbing your neighbors, don't unwrap it slowly next to the ear of the person in front of you. Instead, why not keep it in your pocket, and unwap it there. It's nature's muffler.

EDIT3: Wonderful show last night. I thought the set was brilliant. It was three train cars. The train set extended off stage. It would move to the left and the right to reveal different rooms. Wonderfully done.

My apologies for the lack of links. I was writing from my phone.

Enjoy Some Optical Illusions

Hope these don't hurt your brain too much.



Cool optical illusions - video powered by Metacafe

Wednesday, November 5, 2008

Live Streaming Puppy Cam

This is why I use two monitors, one for work. One for watching puppies.
http://cdn1.ustream.tv/swf/4/viewer.45.swf?cid=317016


EDIT: Looks like this isn't a 24/7 service. It's worth checking back a few times.

Tuesday, November 4, 2008

Can't take watching the election results

We're going to go out to eat at a restaraunt that doesn't have a tv. 

That way I'll just keep refreshing my iPhone to see the results.

Eclipse Tip: Block Autoformatting

Blocks of code can be autoformatted in Eclipse. Select the block of code and use the regular autoformat command. 

Default is CTRL + Shift + F

It comes in handy when making a small update in a file that isn't formatted. Autoformatting the whole file can cause diff tools to have trouble as autoformatting tends to make minor changes to every line of a file.

Ladies and Gentlemen of the Jury


No camera tricks or gotcha questions involved, e.g. "Governor could you provide an incomprehensible circumlocutious reply full of folksy catchphrases whilst not pronouncing a trailing G in your reply to a simple question?"

She may not be stupid, but she's not well informed and she does not communicate well. I challenge any prospective McCain/Palin voter to properly diagram a single answer of Sarah Palin's.

Palin hid from the media the entire election and now we're supposed to put her in the bullpen for an unhealthy cancer surviving septuagenarian? Like him or hate him, do you want the grossly uninformed and intellectually lazy Sarah Palin inside the White House. She's already been found to have abused the limited power she had while in office in Alaska.

She has also been found to have misused state funds by charging per diems for nights she spent at home and she let the state pick up the tab for unnecessary plane rides for Piper and Willow.

If you feel obligated to vote for Sarah Palin because of her religious beliefs, please consider this. She's likely a caricature of your beliefs. Do you speak in tongues and hunt witches? No? Well maybe you shouldn't elect someone who does to represent you.

I've said my piece. I rest my case. I bid you peace.

Monday, November 3, 2008

Big Supreme Court Case Today

The Washington Post is reporting that the future of drug regulations may change today.

At the crux of the case is when the FDA approves a drug, does it relieve the drug maker of liability from tort cases within the state courts.

Traditionally, the tort cases in state courts have provided a strong incentive for drug makers to actively improve their labeling upon discovery of new information. Facing multi million dollar liabilities is a very strong incentive for drug companies to actively work to make their drugs, and the labeling of their drugs, as safe as possible.

Traditionally, the FDA label approval is considered a minimum, or floor. That is to say, that so long as the approved labeling is in place, the drug maker could add additional labeling to clarify appropriate usage of the drug, e.g., warnings for how the drug should be administered.

Even though the drug labeling is approved, the drug companies are still liable for their products. Should they be found to be negligent in their labeling, or in any other way that can be successfully argued to hurt individuals, the company would face expensive tort cases. I think this is a nice additional check to the FDA's approval. Every other consumer products maker faces the same liability.

If you make a product that is dangerous and fail to provide adequate warning, you are accountable for the damage that it causes people. Please let me clarify that I'm talking about real dangers, not frivolous inconveniences. If you were to find out that the television set that you purchased was emitting x-rays and one of your children develops a brain tumor, I think you have a case against that television manufacturer. I think the same is true with drug companies.

The Bush administration, however, is interpreting the FDA regulations much differently. They are saying that once the approval is in place that the drug makers are absolved from any further responsibility to update the labeling on their drugs despite any new information that may become known.

The drug companies love this interpretation, without having to worry about being held accountable for their products, they need not continue updating the labeling information of their products--which is very expensive.

If the supreme court were to decide that drug companies are immune from state tort cases I believe that it would be a tremendous blow to public safety.

In my opinion, and I'm not any sort of lawyer so take that for what it's worth, this shouldn't even be up for argument. In my opinion, the justices are far too conservative. I fear that if one more Scalia or Alito were to be appointed that the interests of big businesses would take precedence over the rights and safety of individuals.

EDIT: Here is a brief of the arguments from the Wall Street Journal's legal blog.

Friday, October 31, 2008

Java Tip: java.util.Date.after(Date date) != java.util.Calendar.after(Object obj)

I'm working on some date logic where I am using instances of java.util.Calendar objects and instances of java.util.Date objects.

The Calendars are calculated dates, and the Date fields are retrieved from the database.

In almost every case I've performed a comparison by invoking either the before or after method on the Date objects. In most cases it would be something like:
if(date.before(calendar.getTime())) {
doSomething();
}

I just realized that I fell into a nasty hole confusing my calendar with my date: i.e.

if(calendar.after(date)) {
doSomething();
}

these two expressions are not equal. The Calendar before and after methods will return false if the argument is not an instance of Calendar. The Date before and after methods will only allow an instance of date as an argument.

That was not fun to find. Fortunately I found it while I was trying to get my test code coverage above 90%. This defect could have cost us time in User Acceptance testing and could have possibly made it as far as production.

I will definitely mind my P's and Q's when dealing with Dates and Calendars.

From the New York Times: Warren Buffet Pays 17.7% Income Tax? Wants to pay more.

Let's talk wealth redistribution. There are people who feel that is a bad thing. Do they believe that wealth is being equitably redistributed now? I think that that is the element to the argument that isn't being discussed.

According to this article in The New York Times, Warren Buffett is only taxed at a rate of 17.7%. More surprising than his incredibly low tax rate is his desire to pay more, and his encouraging his fellow billionaires to do the same. I salute you Warren.

The other surprising thing I learned from this article is the results of a poll that Buffett conducted among his employees. He found that they were all paying higher tax rates than he. The author, Justin Wolfers, conducted a similar poll among his fellow employees at the Wharton School of Business. Surprisingly, the pattern is similar. The administrative staff at the bottom of the pay scale were paying higher tax rates than the people at the top.

If the richest people in America are paying roughly half the tax rate that the rest of us are paying, wouldn't it be only equitable for them to pay at least the same rate that the rest of us are?

I think the time has passed for discussing whether wealth redistribution is good or bad. Both candidates support wealth redistribution, it is impossible not to. Only one candidate is looking to move the Warren Buffett bracket towards the tax rates of the rest of the country. That is only fair.

Honestly, I don't understand how anyone can support lowering the taxes for people who make billions when they don't even pay the same taxes as the rest of us. The wealth has been redistributed. A vote for John McCain is a vote to keep the current inequitable system of wealth redistribution. If you aren't in that top tenth of the top percent of the nation's earners, you really should favor Obama's plan.

Thursday, October 30, 2008

More fun with videos on MTV Music, Digable Planets

I forgot all about Digable Planets. On MTVMusic I was able to find the video for Rebirth Of Slick. Very cool. This video and song got me interested in Jazz.

Jazz lead me to go to the Sanctuary Bar, and to later work there as a cook.

The Sanctuary was where I learned to enjoy good beers.





Circle of life.

Wednesday, October 29, 2008

Google becoming less Google-like in New York Office

Valleywag is reporting that the perks at Google's Manhattan office are getting paired back. Most of the cuts have to do with shortening the times when their, as of yet still, free cafeterias are open and sending friendly reminders that the food is there for people who are working.

This is kind of a big deal. Food perks are really part of Googlers' compensation package. When they take away the food, it's a de facto pay cut for many people. I think that this will be a continuing trend at Google. With the economy as volatile as it is, the Wall Street darling Google may be expected to start producing better numbers than they are.

I don't know enough about finances to speak authoritatively about how to appease investors, but the two ways that seem to be popular are to either cut costs or increase revenue. Increasing revenue can be hard. Cutting costs, well any chump can say that a cost is unnecessary and cut it.

That's what I think is happening at Google right now. They are facing pressure from investors to improve their performance, and cutting costs is a seemingly reliable way to do that.

The real cost of cutting perks isn't measurable on a 10Q. Perks, especially food perks, provide an ROI with the employees that is difficult to measure, but it is real. Good free food gives people the opportunity to meet informally and discuss issues that provide value to the company and would never be discussed outside of an informal setting.

Food perks provide a cultural identity for the company. People who worked at Google used to be able to say, we eat good food, all of us. They believed that they were valued enough by Google to be provided not only with enough food to keep them going at work, but Google would also set them up with a little something for the evening or the weekend.

Unrestricted food perks for all employees and contractors send a message that the company believes in human equality. That's a very powerful message to a lot of people. I feel good when I work for a company that treats everyone well and values everyone's contributions. Dividing workers into groups and adjusting their rewards base on their group will end any good feelings about equality.

How valuable are good feelings by employees? I would argue extremely valuable. People who feel good about where they work are far less likely to work harder and stay with the company. From my own personal experience when I worked for a company that provided what I considered to be an excellent set of food perks: free beverages, free snacks, and free beer on Friday afternoons; I was not interested in the least about leaving the company at all.

It didn't bother me enough that I was embarrassingly underpaid. I happily worked well over 40 hours and took almost no time off for vacation. I enjoyed what I did, and I felt that my work was valued by my company. When the company's budget tightened and the perks went away, something important changed. The company lost the social and emotional attachments I had to the company. When my manager and mentor left the company, I lost all intangible ties to the company. It became a numbers game there. Seeing that I could pick up an extra 20-30% bump in salary by going somewhere else, I did.

Consider this for a minute. When the company announced that they were discontinuing their food perks, they said that the move would save the company $1 million. At that time, the company was roughly 4,000 people. The food perks came at a cost of $250 per employee per year, or about $5 a week. These weren't Google food perks, but they may have been just as effective.

What is the value of having employees who are happy with their position and who are not interested in looking for work outside of the company? In my own case, the company would need to keep my merit increases up with the market. They would have needed to pay me a good 25% to 30% more to keep me from leaving when I did, they would have needed to be diligent to keep me from continuing to look. If the job becomes a commodity, then the only significant differentiating factor becomes compensation.

I do not believe that I am alone when I say that the cultural compensation that grew from providing us with food and beverages was compensation that is more valuable than money.

I believe that if Google continues their trend of cutting down the perks that the culture will atrophy. People will leave Google for greener pastures and another company will become the new Google.

Tuesday, October 28, 2008

MTVMusic.com Showing Videos...Does Not Compute

This is really a good, and sadly ironic, idea. Let's hope that MTVMusic.com doesn't start replacing their online music videos for low budget, low content, and short lived original productions.

All kidding aside, they have a ton of music. I was thinking that I'd like to hear What's The Frequency Kenneth, and guess what? I did.



Looks like this is another app that is best when used in Internet Explorer, Chrome doesn't have any sound. Looks like the sound fails in Firefox too. Adobe, WTF?

Time for a serious question

Enough goofing around about politics.
It's time for a serious question. 

I saw Invasion of the Body Snatchers on tv a while back and I couldn't tell what kind of glove Leonard Nimoy was wearing on his left hand. I've never seen anything like it. You can see it around 1:25 in this clip.



OK, that was fleeting, how about  0:22 in this clip. 




I also attached a picture that has it, but it's tough to see.

The glove is awesome. Even against the combined awsomemeness that is Leonard Nimoy and Donald Sutherland this glove had us talking. What is it? What do you use it for?

I can't tell what the function is for a glove like this. It offers no protection to the grip. Could it be a glove for punching people? It does seem to offer some protection to the knuckles.

It might be for smoking a pipe, that way the bowl of the pipe might rest on the glove without burning the hand, but I don't recall seeing Nimoy smoking a pipe in the movie. I've never really smoked a pipe, is that how you hold one when you're done with it?

Is this glove meant to be some strange alien technology as envisioned by 1978 brightest visionaries? I don't know! 

This is really bothering me though. 

Anyone know where can I get one?

Monday, October 27, 2008

From Consumerist: Surprise offshoring security isn't a good idea

There's an interesting post at Consumerist about some of the challenges Chase is having with their offshored security people.

It turns out that Chase is offshoring their overnight security representatives to call centers in the Philippines. The security representatives use a restricted set of fraud and identity theft detection tools and just aren't very good at stopping theft. Consider the following excerpt.
The few of us who knew this account was being raped could do nothing to protect it. Some newbie wouldn't know about the situation and would let the thief have his way with the account. The US security department became aware of the issue and put blocks on the account as well as incredibly long notes that explicitly said to not remove the block for any reason at any time. But sure enough, over and over, the guy would call in overnight, talk to the out-sourced security, and the block would be removed. Again, they were only able to verify with him with information that he was already known to have, yet that never seemed to deter them from clearing him.
What a mess. That is very typical of my experience working with offshored people. There is just too big of a communication gap to establish any sort of trust with the offshored teams.

This is really a three punch combo of incompetence. Put unqualified and incapable people in charge of security, take away a bunch of their tools, and have them follow a flawed process. I really hope that the people who are responsible for this vulnerability are made to pay for it.

Who am I kidding? If Chase gets exposed to too much liability they will just fail like so many other banks. What a wonderful mess we've made ourselves.

Almost have all of my voice back so I'm going to gripe about things

Being voiceless is not fun when you're the only one in the house with the dog. All of the voice commands that I use for him were useless.

Here's a pro tip for replacing the "Come" command take whatever container that has your dog's treats with you and shake it a little. That is more effective than the "Command". A half empty box of milk bones shaking will get your dog to the door in no time flat, so will a few kibbles in the dog's bowl.

I sound a lot worse than I feel.

Am I the only person who wants to use Google's Chrome anymore? It's the browser of choice at home, and it used to be my favorite browser at work. Chrome isn't playing nice with the corporate firewall though. Looks like I'm back to Firefox.

Having used Chrome for a few months now I can say that it has some great features over the other browsers. I love the layout of the browser, compared to the others it is a lot cleaner, and it doesn't seem prone to getting a bunch of unnecessary toolbars magically installed onto it.

I love being able to drag a tab out of the main window. This is especially good for my browsing habits. I read most of my news through Reddit now. On a reddit page are about 25 news stories. Some of those stories are youtube videos. When I'm consuming my news I like having the option to open a new tab that is a video and drag it into the other window. I can casually listen to and periferally watch the video while reading other stories in my main browser window. That option isn't available in other browsers. It can be done, but it has to be done much earlier.

I've found a few rough points for chrome. One really isn't their fault. The flash player for Chrome is the same as the one they use for Firefox. It can reliably fail if the browser is rendering a page with more than only a few embedded videos--Internet Explorer's player works fine though. The symptoms for Youtube videos is they will play for 2 seconds without sound and then freeze. The only way to reliably fix this is to close all of the instances of the browsers and then restart them. Adobe, please fix this immediately.

My other big gripe is that it somehow isn't working with my client's firewall. That may be a firewall configuration issue.

I don't have a snappy conclusion to this griping, so I will wish everyone a good day.

Saturday, October 25, 2008

Pro Tip: Tiki Drinks are not good for a sore throat

I thought the bitters and the lemon juice would help me get my voice back. I was a little hoarse yesterday and I planned to meet some friends of mine at Psycho Suzi's Motor lodge. Somehow my clever plan to convalesce my voice back into shape didn't work out as well as I'd like.
I speak now and hardly any sound comes out at all. So in the future, if you're thinking that a couple of South Seas Grogs and a Fu Manchu will help your voice, they're really tasty and who needs to speak?

Thursday, October 23, 2008

This ought to wrap up the election

I have to admit that my hometown rag's, The Chicago Tribune, endorsement of Obama had me thinking that Obama had won a lot of hearts and minds. He's the first democratic candidate they've ever endorsed! That's huge.

Well, that's nothing. Actors from Hollywood are now endorsing Barack Obama. This changes everything. The last actor I remember speaking out about politics ended up as our 40th president Ronald Reagan.

Here's a clip that won't get taken down from Youtube. Ron Howard, Andy Griffith, and Henry Winkler give their endorsements for president. You may know them as Clint Howard's brother, Television's Matlock, and the funny attorney on Arrested Development.

Without further ado, here are their endorsements.



Pugs on Drugs

Yoda, our pug had an operation this week. He's had a lump removed and his teeth cleaned.

He's on some pain killers now and he's pretty drugged up. He's a little off, but he's mostly himself.

Recruiter Deal Breaker Questions

I think that in any industry there are things that can be learned from being asked a question. I certainly pay attention to the questions that interviewers and recruiters ask me before I look at a gig. There are some questions that will kill those gigs for me. 

All of these questions have been asked in the context of an interview BTW.

Here is a short list of deal breaker questions for me:

  • How familiar are you with WebSphere and the Rational Application Development tools?
  • Do you know EJB 1?
  • How well do you work with people with strong personalities?
  • Ever work with MUMPS?
  • Do you have any experience using: ?
  • Have you used waterfall?
  • Have you accepted Jesus Christ as your personal lord and savior?
  • How do you feel about administering our servers?
  • Do you mind working around children?
It's amazing how much can be stated about a job with a question.

Anyone care to contribute their own deal breaker questions?

Tax Cut Calculator

I found a handy tax cut calculator at Barackobama.com.

Surprisingly enough, Obama's plan would save my family more money than McCain's. 

I would like to propose that pugs be recognized as dependents. 

Wednesday, October 22, 2008

Fall Cold

I've got my fall cold on. Every year I get the same sore throat and runny nose. It is not fun. If past history is any indication, I'm in for a low key weekend and then I can resume my rest of the year in perfect health. Through concentration, and or fried cheese, I will lower, or more likely raise my cholesterol.

Tuesday, October 21, 2008

Stupid Question: Why do People Care About Other Groups' Tax Rates

In my workgroup we have been discussing the tax plans of the different candidates. I ran across these excellent infographics from Democratic Underground

From a data visualization standpoint I think these charts do a good job showing how the plans affect different income levels. They do a better job than reading a textual description or hearing, as McCain puts it "[Obama] wants to raise your taxes!"

With the graphics, we can now see who McCain is speaking to, it's the top 1% of the nation's income levels. As of yet, I do not plan to be in that tier this fiscal year. I'm also not in the bottom tiers this year, the plans aren't that different for my household. 

If I were to vote purely on how the candidates' economic plans were to affect my family, it's a toss up. The difference between the two plans are very small at our level. To over half of Americans though, Obama's plan would be considerably better. 

If you're making less than $18,000 a year, $567 is half a month's pay. That money is very helpful. Under McCain's plan, they'd get a $19 cut while the top half of the population would enjoy a considerable tax cut. That's messed up. People with money will be fine. They may need to sacrifice a latte, but people who make very little are making much bigger sacrifices. Shouldn't they get a little help?

Here's the thing that really makes me WTF, I work with a guy who is in a similar income bracket as me, neither plan is dramatically different for him. His reaction to Obama's raising the taxes of people who earn more than $2.87 million was so strong that it sounded like he favored McCain's plan. Who cares about these people earning $3 million? I'm sure they're doing all they can to reduce their tax liabilities. They should be fine.

My question is why do people care about how much the top percentile is being taxed? Are there that many people who are delusional enough to think that we're going to break into that bracket this year? In the next 4 years?

Even if we do make that much is it really ethical to take a big tax cut while people who are struggling to pay for health care, food, and a place to live are getting between $19 and $113 in tax cuts? I would much rather see the people at the bottom get a tax break and see the few at the top pay more than to see huge breaks for the very few at the top and next to nothing for the many at the bottom.

How can anyone with a shred of decency or humility condone rewarding those who already have done a great job of rewarding themselves while there are people who are less fortunate that could use the help? Furthermore, how can someone who has absolutely no personal stake in rewarding the very rich favor that plan? I just don't get it.

Monday, October 20, 2008

There Are Bad Ideas For Bonuses; And Then There Are Bad Ideas For Bonuses

A project manager friend is really frustrated with the quality assurance testers that are getting resourced to her projects. It isn't that the testers are all that weak, the point that is frustrating to her is that they are being discouraged from finding and filing defects.

The geniuses who set the goals for QA decided that a good metric for a Quality Assurance department is one that reports as few defects as possible. I'm not sure how they came to this conclusion, but WTF?

Is there an osterich running QA?

My understanding is that the company has redefined the role of a QA tester to be a validator. Their responsibilities are to sign off on an application before it is promoted and that's it. Why not just get a monkey with a rubber stamp? It would add a lot more value to the company, and people could have fun dressing it up in fun little outfits.

Friday, October 17, 2008

Theater Review: 10/16/2008 A View From The Bridge, Guthrie Theater

The Guthrie Theater outdid themselves with their production of Arthur Miller's A View From The Bridge

The elements that struck me as outstanding in the Guthrie production are the acting, the set design, and the story. All three of these elements meshed well together. 

A description of the play with story synopsis can be found at wikipedia. It's one of the great American plays.

The set beautifully captures the atmosphere of a Brooklyn in a time when ships were unloaded on the backs of men and not by machines. It is on these docks where the men distinguish themselves as men through their work and by their backs. The set shows a gritty and rough brick and concrete Italian neighborhood. The type of place where disagreements are settled with fists.

In the backdrop of the set is a likeness of the Brooklyn Bridge. It looks like a rough artist's charcoal sketch. I thought it kept the focus of my attention to the main set and the play. Had a more detailed backdrop of the Brooklyn Bridge been used, I could easily see myself losing focus of the play admiring the details of the bridge. 

The acting was probably the best I've seen at the Guthrie. Guthrie regular Nathanial Fuller, as the narrator Alfieri was outstanding, I'm surprised that he is an understudy for the role. John Carroll Lynch as Eddie Carbone gave the strongest performance in my opinion though. His performance was as good as I can remember seeing any artist's that I can remember. 

I was dismayed to see sparse attendance at the show. I strongly recommend the Guthrie's A View From The Bridge. It is scheduled to run through November 8, 2008.

Thursday, October 16, 2008

PSA: Upcoming Shows At In The Heart Of The Beast Puppet and Mask Theater

In the Heart of the Beast Puppet and Mask Theater has a number of upcoming shows. They are located on 1500 East Lake Street in Minneapolis, Minnesota.

If you're unfamiliar with their shows, In the Heart of the Beast produces a few main stage productions each year. They also provide a theater for visiting artists.

They also put on a weekly Saturday morning puppet show for children. If you live nearby and have children who like puppets this is a constructive alternative to having the kids watch cartoons on Saturday mornings.

On October 22-25, Paul Zaloom, AKA Beakman, will be in town to put on 3 shows.

On November 14 and 15, Heather Hensen, daughter of Jim Henson, will be in town to put on a few shows.

On December 13-21, In the Heart of the Beast will show La Natividad. La Natividad is a uniquely mobile experience.

I strongly encourage anyone who is interested in seeing one of their shows to go check them out. 

Finally, if you would like to support In the Heart of the Beast with a financial gift, they could certainly use it. You can see more details about giving here.

Full Disclosure: My wife is an employee of In the Heart of the Beast.

Tuesday, October 14, 2008

Liquid Generation's Top 10 Reasons For the Recession

These made me laugh.

They all seem so legit. If you ever seriously consider doing business with any of these businesses, um, you really shouldn't handle money.

EDIT: I can't tell if this link is broken or blocked at work...I'll try to repair tonight.

EDIT2: Just blocked at work, every add was approved by some station's Standards & Practices dept, not sure why it's blocked.

My favorite cooking show

At No Fluff Just Stuff Ted Neward opined that he hates cooking shows. Ted hates cooking shows because the format of just about ever American cooking show is to show the host throwing ingredients into a pot, mixing them around and then they go to put them into the oven and then BA...might get myself in trouble using that word, KABOO...nope that one's for toilets, ALACAZAM!!! magically a delicious finished meal emerges from the magic oven.

Through the magic of BBC programming on American Public Television I grew up watching Keith Floyd on his show, Floyd on Food. Floyd's format is different. His show follows him as he prepares  and enjoys the dishes. Floyd also cooks with wine, some for the food and some for himself. You just don't see television chefs putting themselves three sheets to the wind during the show anymore. I think that's a bit of a shame.

Floyd on Food, as I watched it was all about delicious food and enjoying a meal and a bottle of wine. His guests were some of the most untelegenic people I'd seen, but they were knowledgeable and genuine. They also had a lot of fun presenting the show.
I went ahead and embedded all of the online clips of Keith Floyd cooking that I could find. I really wish that more resources ware available.  The first and last clips are the only clips from the Floyd on Food that I grew up watching.

The more recent episodes have more polish and better production values, but they also ditch the magic oven format that annoys Neward, Perhaps watching Keith Floyd will change his opinion of food porn. I think we, as a people should really do more to make the world more enjoyable for people like Ted Neward. Just kidding, I'm glad there are people like him who have opinions and are not afraid to share them.


As you may have noticed in the earlier episodes, the people aren't exactly the types of people that you'd see on television today. They're, kind of ugly and plain looking. It's almost as if they chose their guests based on the content of what they have to offer and not because they look good for the camera. I miss that, aside from the Sunday morning political news shows, you really don't see that on TV. 

Even though the people don't look all that good that food looks great, even on a horrible picture.

Excellent Question: If we can nationalize our banks, why can't we nationalize our health care system?

The California Nurses Association issued a press release that asks: We're nationalizing our banks, why aren't we nationalizing our health care system

I think that we should take steps towards nationalizing our health care. Health is a not a privilege.

To Err is Human, to Accept That to Err is Human is Agile

Agility is approaching, if not already in buzzword land. A buzzword is a word that is overused or used without regard to its meaning. The result of the abuse of the term is that the word ceases to have meaning.

The value of the term agile is waning, but the ideas behind agility are still relevant. Even if the word agile is losing its meaning, it doesn't hurt to give defining it a shot. 

I was challenged to think what it means to be agile this weekend at No Fluff Just Stuff. David Hussman made a statement that agility isn't prescriptive. David said there isn't a simple list of steps that a group can take to transform themselves into an agile group. He even went on to suggest, and I'm paraphrasing here, that if you are an organization that is looking to find a simple list of bullet points that will make you agile, that you probably will be very challenged to be agile.

I agree with Hussman that agility isn't a template that a group can follow to magically become Toyota. A development organization can look at a set of 'agile' practices and be no better off than if one of those practices were to follow a waterfall model. It isn't about what you do or how you do it.

Agility, and this is my definition, is accepting that mistakes will be made. The mistakes are then drivers that present an opportunity to change the way that a team works to accomplish their goals. 

To me that's it. Take what you're doing and regularly question and evaluate how it's working and be willing to try alternatives. If something isn't working, make a change and see if it works better.

Iterations are conducive to agility because they embed a mechanism for reevaluation into the process. Having an iteration though doesn't make the process agile if the process isn't adaptable.

The biggest problem I see in the agile space is there are many organizations out there that are clearly not agile, but they want to be. They want to be agile and they look at organizations that they see as agile. They look at the delta between their practices and the agile company's practices and create a roadmap to get to the agility. It's a plan for failure--and that could be a good thing, but it probably won't.

The process of roadmapping agility into a set of static actions is ironically the opposite of being agile. Agility is adaptability, it's recognizing change and it's also recognizing necessary change. A big driver of change is failure, but failure is an element of agility that people shy away from.

As humans, I think we shun failure. We hate it. We hate to lose and we hate to fail. Fear of failure drives many of us to go through extraordinary efforts to perceive ourselves and to be perceived as successful. 

Instead of fearing failure I believe that we should embrace it. Failure can be a wonderful learning experience. The key to embracing failure is to make the failures uncostly and educational. Small failures can drive changes that add big value. 

Being agile is recognizing, embracing, and accepting small failures and using them as a waypoint for improvement. Celebrate your failures and use them to your advantage and you will be agile.

Take Your Eyes Off The Ball

Many people, by my observation, approach their work by doing what is asked of them. It makes sense, isn't that what a good worker does? I think it's a wasted opportunity.
Never tell a man how to do something. Tell him what to do and let him surprise you with his ingenuity. --George Patton
I think we focus on the tasks and forget about the goal. I've done my best work when I've forgotten about the task and focused on the goal. I think that more organizations would benefit from focusing on goals and seeing tasks, not as inflexible plans, but as available paths to achieve the goals.

Monday, October 13, 2008

Could you please speak up?

Argh! I've found the one weakness of shared workspaces. When I'd like to focus on something, the guy behind me is on the phone with the customer trying to figure out the requirements and then he's explaining them to the QA guy. His voice is naturally loud. He could use so much less volume and still communicate. 

He isn't doing anything wrong, I'm just having a bad day. I really hate it when I don't like what other people do for no reason other than I'd like to have silence.

Sunday, October 12, 2008

Security and Usability are at odds with each other?

At No Fluff Just Stuff in the Security Birds of a Feather session, Ken Sipe and Ted Neward both made interesting statements. 

Ken said that a secured logging system is the most important element to a security system. His reason for saying that is, even if damage is done, you'll want to know what happened. 

Ted made a good point that the vulnerabilities are likely to be through social engineering rather than trying to crack any difficult systems. That only makes sense that someone who is interested in defeating a systems is going to attack its weakest points. People have lots of weaknesses.

Ken mentioned an anecdote of a group of penetration testers who left a few USB flash memory sticks that were loaded with root kits and other goodies in the parking lot of their customer. Employees of the customer found the flash memory and couldn't resist the urge to stick them in the computers. It was game over after that.

Probably the most interesting, to me, statement made was one to the effect that for a system to be usable some degree of security must be compromised and vice versa.

The statement was in response to the single sign on trend.

That is to say that at the extremes a very usable system is insecure and a very secure system is unusable.

I agree that some measures that are performed in the name of security completely shred usability and that some things that are performed in the name of usability hurt security.

I don't see a single axis security/usability continuum. I truly believe that secure systems can be built that are secure. I also feel that I am not qualified to design these systems, but these are the recommendations that my unqualified self would suggest:

Stop relying on passwords so much. Passwords provide a single point of failure should one password become compromised. In one environment I worked, that was supposedly very secure, the security people required everyone to change each of their numerous passwords every sixty days. Say if one were to have ten accounts, each with its own password, keeping track of those passwords is a bit of a chore. Memory fails people and they will rely on other means. Some will use something like password safe. But there are some who will rely on the old paper backup. Good thing that nobody thinks to look under the keyboard.

Ted Neward touched on one good solution for usability challenges with authentication and that's multi factor authentication. I like multi factor, because it dramatically increases the difficulty of breaking a system without necessarily sacrificing usability, instead of one challenge, there are multiple. The factors usually fall into three categories, what you know(passwords, questions), who you are(biometrics), and what you have(objects).

This is how an ATM works, you have a card and you rely on a fairly weak password There are 10,000 available combinations for a 4 digit PIN. We don't worry about the relatively weak PIN because we're pretty good at keeping track of our ATM cards. Falling prey to social engineering schemes with our cards are far more likely than someone taking an ATM card and guessing the PIN.

I'd really like to see more multi factor security systems in place. If one of the factors in the system is an object, like an RSA token, then adding a relatively easily guessable second factor, for example why not provide a factor of selecting a picture of familiar objects out of a lineup of ten, twenty, one hundred other pictures? Pictures are easy for people to remember. The pass picture lineup may only provide a namespace of 100, but it only adds(multiplies) to the strength of the other factors.

People have mixed opinions about biometrics. I'd hate to think that by amputating a part of my body, someone could defeat a security system. Some of these systems can be defeated in some clever ways.

Multi factor is more about the combined strength of systems instead of requiring a single system and cranking its strength up to 11 and cranking the usability down to zilch.

I think we really do need to question why security systems are typically so unuseable and whether they really need to sacrifice usability for security.

Saturday, October 11, 2008

No Java Unit Test Tool For Thread Safety Testing--I'm taking notes from Ted Neward's Concurrency NFJS online

Ted Neward mentioned that he is not aware of a unit testing tool for thread safety. I think that there should be one.

Ted recommends reading Release It by Michael Nygard.

Ted says never ever ever catch throwable. It can really hose up a threaded app.

JVM guarantees 32 bit atomicity. Longs and doubles are 64 bit, they need to be synchronized.

Threads don't switch on code lines. Threads switch on operation lines.

Threads are permitted to keep a local copy of field values if field not declared volatile.

Ted recommends Java Concurrency In Practice by Brian Goetz.

Field visibility is irrelevant to thread safety.

Two myths of the Java language: it is expensive to create objects and it is expensive to synchronize code.

Friday, October 10, 2008

Have you ever been convicted of a felony?

A: convicted? No, never convicted.

Thursday, October 9, 2008

Out of Training Budget? WTF?!!!?!

Good training, or investing in the skills of one's employees is one of the best investments a software development organization can make. Next to getting excellent people, training those people should be a no brainer. If you are reading this and you have the ability to allocate a budget for training your people, allocate a generous budget. Make it easy for people to use that money to receive training. Your people will thank you. 

By providing training, you're adding a benefit to the position that will attract the types of people you want. People who are interested in what they do and interested in investing the time to learing how to do it better. 

I will confess that my professional opinion of people is affected adversely by those who refuse training. I understand that people have obligations outside of work that doesn't allow them to easily receive training. Nothing is free in the world though. Everyone must sacrifice something to train. If you only get to spend so much time with your kids, I really don't fault someone for choosing their kids over their careers. 

There are opportunity costs with the time it takes to get training. I'm more apt to think less of people who choose rewatching a Battlestar Galactica marathon over training. It's not that they are bad people, their choices of priorities are just telling to me about where their profession stands.

In short, training is important to me.

It's confession time. One of the driving factors behind my decision to leave my last job was the way the company handled, or failed to handle, training. I don't want to dwell on the past, but I recently learned that they are continuing their ways.

The company in question is financially very sound. They are seated comfortably north of 150 on the Fortune 500. The company is flush with resources, but they are disciplined in managing expenses, no they're stingy. One would be hard pressed to accuse the company of wasting money on snap decisions. I would say that they are guilty of wasting money through their reluctance to spend money. Below is an example of my experience.

The department that I used to work in emphasized training as an initiative for the year. They kind of had to because many of their software developers didn't keep up with what's going on outside of the company. Skill set stagnation could easily be attributed to shaky engineering and ultimately system downtime and other defects. 

As part of the initiative, all software engineers in my department were required to spend at least 20 hours in training for the year. Here's the catch, they don't count attending user group meetings, which are free, as training. They also don't have enough room in their training budget to accommodate 20 hours of training. 

My own experience was around No Fluff Just Stuff. In my opinion, NFJS is an outstanding value. For around $700-$1000 they offer 11 90-minute presentations over the course of a 3 day weekend. 

The speakers are excellent. Every time I've gone to a NFJS I've learned things that have made me better at my job. It's also a great networking experience. They arrange the conference so people have the opportunity to network. I personally payed for the conference that I will attend this weekend.

Back to the company. They royally messed up in the Spring conference with me. The managers in  my department, and our director, and our VP were all on board with sending as many engineers as possible to NFJS. 

I knew that attendance is limited and that they offer early bird discounts. About eight weeks before the conference I was tasked with getting a list of people in two different cities who are interested in attending. I did and submitted it. 

The training was quickly approved through our department, though we heard nothing about it. The deadline for the early bird discount approached. People came to me asking about the conference. I, in turn, asked the managers. They believed that the arrangements had been made. Since I hadn't heard anything I emailed Jay Zimmerman, the conference organizer to see if everything was cool. Jay, promptly replied to let me know that only the people from the first conference had been registered.

I explained the situation to the managers around me, they tried to escalate the situation, but our contact in finance refused to reply to any of our emails or answer the phone when we called. She also refused the emails and calls of our director. She finally did reply to all of the people who wanted to attend the conference telling them that, as punishment, they would need to write a report on everything that they learned and have it ready the following Monday for the CIO. She ended her communication by offering them an out, do you still want to go?

The communication seemed petty and intended to discourage people from getting training. More accurately, it was intended to discourage people from costing the company about $18,000 to get over twenty people training.

For less than the price of sending a few people to Java One, we were going to be able to send more than twenty people to quality training.

They did register us for the second conference. They also mistakenly registered one of the people in both events. They wasted about $5000 by not just registering people in one group early.

I believe that had I not persisted and insisted that the registration be done that it never would have. It got worse, the company stiffed No Fluff with the bill for a while. Or they never disclosed that they were going to pay net 30 from the time of the last event. So I got a really alarming, yet polite, email from the organizers.

I made two replies, one reply was to all explaining who the proper contact is. The second reply was directly to the person in finance who failed to acknowledge our emails or phone calls and a few people within my department. This is the same person in finance who told us that we'd need to write a book report. I asked her to deal with this issue. I also stated that I was uncomfortable having my name associated with financial delinquency.

Her reply, which copied a few additional directors and VPs, was that if I didn't like having financial delinquency associated with my name that I should deal with these people myself. That was the straw that broke the camel's back for me.

There was no apology for her unacceptable behavior. Nobody thanked any of the attendees for spending their weekends getting training. No, it was a big up yours, where's your book report!

Fast forward to my exit interviews I made certain to candidly explain that the events I just explained heavily contributed to my decision to leave the company. There were other things, but to me, the way they handled training for me personally was utterly unacceptable.

My hope in explaining those experiences was that they would accommodate training requests more seriously and give their software engineers training needs more consideration.

I recently learned that they dropped the ball on the fall conference and didn't register a few people who wanted to attend. They were told that they'd be able to go, however they learned that the company didn't have enough room in the training budget to send them. This was communicated after the last discount price had expired. 

What the hell is wrong with them as a company? On one hand they tell their people that they want them to get training and that the company wants to invest in their skill sets. On the other hand, when the employees try to take them up on the offer, they're met with resistance, hostility, and incompetence. What are people to think?

The message that I received is that they are disingenuous about valuing their employees and their careers. How frustrating is it to have a manager tell you that you need to do something, but they won't support it? They have no problem giving the employees more work than can be done, but they aren't willing to give them training or tools. They lie. 

There are only so many times when you can lie to people before your words cease to have any meaning and the credibility of management ceases to exist.

I'm very happy with my own decision to leave after those events, I wouldn't be surprised if others chose to leave after they experience similar events.

Lots of waiting on one end of the appointment, not so much on the other

As a postscript to my physical I was pleasantly surprised to see that my clinic offers my medical records online.

I was able to see my lab results within hours of taking the tests. Previously, it would take a good week to get a letter with results.  Bonus points to Allina for their online information.

Please show up 15 minutes early

It's annual doctor appointment time for me. 

Yesterday I had a little fun going to my physician's office. I booked the appointment for three o'clock.

A day before the appointment I received a letter in the mail asking me to show up 15 minutes early to my appointment. Why do they ask us to come early? Why not include the 15 minutes into the appointment time? It wasn't a huge deal, but I plan my days around these sorts of things.

I should have considered my observation that doctors' appointments in the afternoon never start close to being on time. There's always something that delays them. I was in the waiting room much longer than 15 minutes after my appointment time.

iPhones are very handy for that sort of thing.

Wednesday, October 8, 2008

10/7/08 Presidential Debate: Can I get my 90 Minutes Back

"That One" that's about the most interesting thing that happened and that one was just a WTF moment.



What's up with having the undecided voters write the questions? Are they really undecided? In a room of about 100 people, couldn't they come up with better questions. The worst question had to be the last one. I'll paraphrase it as "What is it that you don't know?". Was she looking for a Rumsfeldian reply? 



Aside from weak questions and the WTF did he just call his opponent I thought that McCain never showed much energy in the debates. Obama had a much better performance. I'm an Obama homer though.

The town hall format is supposed to be McCain's strongest debate format. I heard one of the newscasters say that McCain's campaign wanted as many as 12 of these types of debates. I can't imagine that boding well for him. 

I was glad to hear that Obama did bring up McCain's record of voting against alternative energy. A while back, Thomas Friedman called McCain out for not casting the deciding vote for a bill that would fund a solar power facility in Arizona. I'm glad that this is being brought to the attention of the American voters. 

Potentially the most damaging thing that McCain did, or didn't do, is shake Barack Obama's hand after the debate. What the hell is wrong with John McCain? Between that and "This One" and the subtle racist attacks that the McCain/Palin camp have been making I can't help but think that people will call to question whether McCain is a bigot

My prediction is that we will be seeing John McCain shaking hands with lots and lots of people who are not white.



EDIT: I almost forgot about a puzzling comment McCain made to a younger black gentleman that I thought was ill advised. I don't recall the question, but McCain rhetorically said in his response that the gentleman had probably never heard of Fannie Mae or Freddie Mac. It seemed like a poor choice of words, even if John McCain were trying to express that Fannie Mae and Freddie Mac were not institutions that many Americans were intimately aware of before the crisis. 

More on this at the Huffington Post.

Tuesday, October 7, 2008

One of these things is not like the others



It occurred to me today that there is something a little off on the city that I work in. Actually I felt a sense of vertigo as my sense of direction got skewed. Check that, I still kind of feel it.



I noticed that the satellite dishes on the rooftops in St. Paul appear to be pointing to the South East.


Satellite dishes actually point to the southwest. 


Unlike cities that have the good sense to direct their north roads north, like Chicago or its twin city. St. Paul points their north roads to the northwest. It's completely messing with my sense of direction. I had thought that my window faces the west, now I can't help but notice that I'm about 45 degrees off. It's remarkably unsettling to me.