Thursday, March 4, 2010

Thomas Edison and Bill Maher

Here are a couple more quotes:

"People would rather be nice than right, rather be sensitive than be true. Well, being nice and sensitive are important, but they're not more important than being right; they're not more important than the truth."
Bill Maher

"Opportunity is missed by most people because it is dressed in overalls and looks like work"
Thomas Edison

Favorite Quotes

I was out to dinner with some friends and was going through a few of my favortie quotes. I realized that I don't have any posted, so here they are:

*All comments are written in first person by Ike.
"Reduce everything to it's essence, so that form harmonizes with function"
Cris Kobryn
Chair, U2 Partners' UML 2.0 Submission Team

"If we pursue the parsimony koan to its full intent, we should find UML modeling projects to be as enjoyable as we found finger-painting and drawing classes in grammer school."
Cris Kobryn
Chair, U2 Partners' UML 2.0 Submission Team

"Do not rely on Rigid, Inefficient Processes (RIP)."
Steve McConnell
Software Project Survival Guide

"Early in the project you can have firm cost and schedule targets or a firm feature set, but not both."
Steve McConnell
Software Project Survival Guide

"There is a word for software that cannot be changed after delivery. That word is hardware."
Ward Cunningham
co-Inventor of Extreme Programming
Preface to Extreme Programming Pocket Guide

"The problem with quick and dirty is that dirty remains long after quick is forgotten."
Unknown

"As a programmer writing computer programs, you must develop a very special relationship with a shadowy being who lurks just beyond the periphery of your vision. At the same time needy, confused, angry, and malicious, that person is known to you only as The User."
Charles Petzold
Programming in the Key of C#

"Some people hold the view that the UML should be used to create a design that is independent of the programming language that's used for implementation. Others believe that language-independent design is an oxymoron, with a strong emphasis on the moron."
Martin Fowler
UML Distilled
I agree with this on most topics, not just on software design, ie database design, T-SQL authoring, multi-platform development. -Ike

"Question: What is the difference between a methodologist and a terrorist?
Answer: You can negotiate with a terrorist."
Martin Fowler
UML Distilled

"You should use iterative development only on projects that you want to succeed.
Perhaps that's a bit glib, but as I get older, I get more aggressive about using iterative development."
Martin Fowler, espousing Extreme Programming
UML Distilled

"Often, you'll find that the more stable packages tend to have a higher proportion of interfaces and abstract classes."
Martin Fowler, espousing Polymorphism
UML Distilled


"The real moments of discovery aren't when someone shouts "Eureka", but when someone mumbles, "Hmmm....that's wierd." "
Carl Sagan

"Too often, however, the metaphor is used to assert that the child class inherits the internals of the parent class, an allusion to the fact that biological organisms inherit the DNA structures of their parents. This is a poor and potentially misleading use of the metaphor....
The desire for a child class to inherit internals of its parent classes can be better accommodated if we change the notion of inheritance from DNA to assets. It has been noted that an object has access to whatever resources it needs to fulfill its behavioural expectations. "
David West
Author of Object Thinking

"The best programmers are up to 28 times better than the worst programmers, according to "individual differences" research. Given that their pay is never commensurate, they are the biggest bargains in the software field."
Robert L. Glass
Author of Facts and Fallacies of Software Engineering

Friday, February 12, 2010

Agile Development - Not A License to Skip Steps


We've all been part of software development projects that didn't have a very good project plan. I believe that it is still possible for a project to be successful without a project plan, but it introduces unnecessary risk. A properly agreed upon project plan will not eliminate that risk, but it will greatly reduce it. Proejects without planning documents are about 50% successful. When they have a plan, they are about 90% successful. That is independent of developer talent.

Often as agile developers, we skip some of the SDLC steps. Agile does not mean that SDLC steps are skipped. It just means that they are compressed into shorter, more frequent release cycles.

Here are the SDLC steps that are mandatory:

Planning/Design
Development
Review
Testing
Rollout
Support Plan

The two steps that are most frequently skipped or inappropriately shortened are arguably the most important: planning and testing. This is just a friendly reminder to review how those steps are implemented and delivered.

Wednesday, January 6, 2010

Programmers Are Like Boy Scouts On A Hike


I was reading "The Goal", by Eliyahu Goldratt, when I came across an analogy that was familiar. I'm a scout leader, and so get plenty of opportunities to watch boy scouts hike on trails. I've noticed that when each one walks at their own pace, some boys will get to the end of the trail far faster than the slowest boy. If it's a two hour hike, one boy will finish in 90 minutes, while the slowest boy will finish in 2 1/2 hours.

If this were a software development department, that would mean that some developers would finish far ahead of others. The entire project would be delivered according the pace of the slowest developer.

When Boy Scouts march as a troop, the most amazing thing happens. They work together as a team. Two hour hikes are often completed between 1 3/4 hours and 2 hours. That means that the team environment compensates for the slowest guy far more than it slows down the fastest guy.

For a software development department, this increase of productivity is immediate. As the team gets used to working together, they get faster and faster, often sprinting and running towards finish lines. Each software project is delivered on or before the deadline, as long as we are implementing the principles of team development.

Now if I could just get the developers to "Be Prepared", we'd be all set.

Thursday, October 1, 2009

Book Review - Marketing Metrics, by Paul Farris


I have seen some very poorly run marketing departments. Because of my past experience, I’ve been skeptical every time I deal with marketing. This book made me reevaluate those feelings and grow to respect the new found science of marketing. Marketing can be effective when metrics are measured and qualified. While reading this book, I met Ron Hendricks, CMO for Northcentral University. He runs his department like a lab, and he is very, very effective. Thanks to this book and Ron, I admire a well-run marketing department and look forward to dealing with more of them.

The metrics in this book are well thought-out, with clear formulas, good examples, and thoughtful insights. I think this should be on every executive’s desk. These measures will make you rethink your business. Hopefully, you’ll have new ideas on how it can grow.

Also, our business intelligence practice will be better equipped to interact with marketing executives, salesmen, and creatives.

Here's the Amazon link:

Marketing Metrics

Friday, September 25, 2009

Book Review - The McGraw-Hill 36-Hour Course In Finance for Non-Financial Managers, by Robert Cooke


This book is perfect if you are not an accountant and one of the following things are true.

-You need to read financial reports
-You interact with executives
-Deal with CFOs or Controllers
-Prepare budgets
-Invest in companies

As a technology consultant, I’m often asked to help with difficult business problems, and more often than not, those issues deal with accounting principles. I’ve tried reading Accounting 101 books, but I don’t need to know how to keep a "T" account. I needed a summary book for Accounting 400, and this book fit the bill.

There is also an online test that will grant you a certificate of completion. I didn't do that, but you might like to.

Here's the Amazon link:

The McGraw-Hill 36-Hour Course In Finance for Non-Financial Managers

Tuesday, September 15, 2009

Book Review, Hiring Smart by Pierre Mornell


Before reading this book, I thought my philosophy of hiring fast and firing fast was a sound management principle. I was wrong. After reading the horror stories in this book, I am recommitted to interviewing thoroughly, completely a full background check, checking all references, and then proceeding cautiously. I still believe that we should terminate employees very soon after discovering that they weren’t who we thought they were.

I also have a habit of being captivated and intrigued by everyone I meet. I need time to let that fade away. I need reality to set in before making an objective hiring decision.

This book is filled with 45 great tips on hiring good people, but all of them don't need to be applied all at once. In fact, I think that would be impossible. Instead, I intend to continuously evolve the hiring process by selectively applying these tips. I’ll just keep experimenting until the perfect team is assembled.

I liked the idea of putting prospects on projects immediately. For instance, I could show a prospect a user interface design and tell them to improve it. I could show them a database and ask them to write a query.

Mornell mentions that we should walk the prospect to his or her car. He says you can tell a lot about a person by how they organize their car. Mornell is a psychiatrist, and brings a unique insight to the hiring process.

Mornell mentions a 49er's Football scout that would not recommend a player until he observed 200 plays of the player. He did this so he could feel comfortable with how they react in different situations. It's impossible to observer 200 plays when hiring people, but we should watch the person in a variety of situations before making a hiring decision.

This book was very easy to read, had very big type, lots of pretty pictures, and can be completed in about 2 hours.

Software development is increasingly becoming a team sport. This book reinforced my belief that the team needs to be part of the entire hiring process.

Here's the Amazon link:

Hiring Smart