Originally posted to LinkedIn on March 25, 2015 Slim Pickings A recent Forbes posting blew up the age old question, “Why don’t more people work as programmers?” (http://www.forbes.com/sites/quora/2014/10/31/why-dont-more-people-work-as-programmers/) Forbes claims that we have plenty of programmers, just a shortage of qualified ones. Most hiring managers I know would agree. We see tons of good resumes,…
Category: Tech
Big Data Is Not Enough
Originally posted to LinkedIn on Aug 25, 2014 You Don’t Want to Need Big Data Janitors When Big Data hit the scene, technologist told us to throw away our databases, our spreadsheets, and our models. This was a brave new world where simply having tons of data would answer everything. A 2008, Wired article prognosticated “The End…
Jira: Epics, Sub-Epics, and Story Points
I love Jira, probably more than I should, but the difficulty in tracking progress and breaking down work to mirror my teams kills me. The new Greenhopper 6.2 and the “edit in place” fields made a big difference, but I still needed a couple of things: A way to groups a bunch of Epics together…
Software Estimation that Works, Part 1: Ranges. Confidence and Risk
Estimates Cannot Be Precise “How long will that take?” No other question stops a tech team dead in it’s tracks. Without exaggeration, it is like asking a new parent, “So how much do you think it will cost to send you kid to college?” If you are that parent and paid your own way, or…
How Software Estimates Fail Part 4: Lots of Little Estimates
Last week we talked about how easily estimates go wrong when you try to make giant ones up front, but they can also fail easily when you try to add up lots of small ones. Once again, it comes down to simple math and how optimistic we are about our planning. If I were to…
How Software Estimates Fail Part 3: The Grand Estimate
Classic project planning work backwards, you pick a large goal that will propel the business forward and add the right mix of enough man power and/or time to hit your goals. Make millions. Retire. If it were that simple, none of us would be dialing into 9am scrum meetings.There is a reason why when people…
How Software Estimates Fail Part 2: Estimating Once
This is the “Cone of Uncertainty.” The numbers behind the cone are based upon surveys of thousands of software projects and the differences between their estimated and actual schedules. As you travel into the cone, you are travelling further into the project’s timeline. Estimates made later in a project are base upon more data and…
How Software Estimates Fails Part 1: What Is an Estimate Anyways?
Nothing dooms a project faster than its first estimate. From the fateful moment that someone even hints at one; the launch date, budget and staffing all seem to be broadcast to every possible stakeholder and locked down in an iron clad contract. This kind of behavior is why so many gun-shy developers just stopped giving estimates all…
Stupid sed Tricks: LDAP
Spent too many minutes doing a simple task today: Take groups from LDAP and tell me who in in group 1 but not group 2. Apache’s Directory Studio is essential if you do a lot of LDAP work. It makes it easy to navigate and peek around. With this I was able to dump two files, each listing…
Apple Airport Extreme Dissapointment
A couple months ago, in a fit of green responsibility, I decided it was time to retire my firewall server. This doesn’t seem like much until you realize it was a 10+ year old dual Pentium-II Xeon IBM PC Server 325… I suspect that this server was $20 of my monthly electric bill all by…
Agile is Dead
To be honest, I never though much of Agile to begin with. By the time that silver bullet was shot, I was already a cynical veteran of the many buzzwords prior. Agile, like many of the other buzz phrases: Service Oriented Architecture, Extreme Programming, Internet Time, Web 2.0, etc; they are all just the endless…
Exceptional Exceptions
In Java 1.4, java.lang.Throwable finally allowed for nested Throwables. This may not seem like a big breakthrough, but in a world of n-tier application, low level exceptions from driver objects are not appropriate to return to end users. Also, loosing the root cause introduced its own set of problems. In a Java 1.3 world, we…