Analytics Roundup: Trying stuff
By Chris Gemignani
December 27, 2007
Find more about:
innovation
management
- Trying stuff
- Google is one of the few large companies that gets one fundamental rule of the Internet: Trying stuff is cheaper than deciding whether to try it.
In Fogbugz 6.0, Future Results CAN be Predicted by Past Performance
By Ken Hilburn
November 7, 2007
Find more about:
development
innovation
methodology
programming
Monte Carlo. It's a car. It’s a song. It's a casino. It's a city in Monaco (near France, somewhere). It’s also a method of statistical simulation that is used to better understand the probabilistic distribution of known set of data. Great. So what?
I recently attended the Atlanta session of the FogBugz World Tour to hear from Joel Spolsky about the latest version of his bug tracking software, FogBugz 6.0. Joel Spolsky has been writing about software development, management, business, and the Internet at joelonsoftware.com since 2000. Three books have sprung from content on his site: User Interface Design for Programmers, Joel on Software, and Smart and Gets Things Done. They are good reads for software developers and business folks alike; smart, funny, and focused on the human face of software development.
Before starting his company, Joel was a Program Manager at Microsoft on the Excel team to provide programmability to Excel.
The new release of FogBugz has quite a few nice features to make bug tracking much easier, but I was most intrigued by the new capability called Evidence-Based Scheduling, or EBS for short. This new capability uses a Monte Carlo simulation approach to determine probabilities associated with the expected “ship dates” of the software release project.
The core premise behind this capability is that unlike in the financial realm, in the software world, future results can accurately be based on past performance. FogBugz remembers the original estimate and the actuals for each task for each developer, and for all the projects they've been assigned to. Here's where it gets interesting. Based on this information, FogBugz runs a series of Monte Carlo scenarios where it randomly generates different plausible results for each member of the development team. It then assembles the results to create a distribution for probability of completion for each developer—and more importantly, for the entire project. The result of this analysis is a "Ship Date" probability curve that shows potential ship dates on the X-axis and probabilities of achieving those dates on the Y-axis. Ship Date depends not only on estimates for remaining components, but also on the probability that the individual developers will be able to individually meet their commitments. A steeper curve means the developer estimates are more confident and a flatter curve means estimates are less confident.
The classic software development process involves balancing three things: time, money, and features. Most projects of reasonable duration are not going to be able to effectively add staff mid-stream—at least not to accelerate delivery timeframes. If you assume the primary factor in determining "money" is tied to people, time and features are your only real variables. FogBugz 6.0 lets you experiment with changing these two factors. This is a useful tool. Consider a scenario where the business people come to the development lead because they need a project to be complete by a specific date. This tool gives the project lead enough information to understand the probability of making a specific date. Additionally, it lets you test out what will happen if you remove a particular feature. With this new information, the development lead has the visibility to provide back additional guidance to the project sponsor about the probability of making the requested date, as well as the effect that changing release date and scope have on the probability of on-time delivery.
So how does it know? The ship dates are based on each developer's history of estimation accuracy supported by developer time sheets. Yes, that’s right. I said time sheets—the bane of all developers. But stick with me, it's not as bad as you might think. Each developer (or responsible team lead) can turn on a timer that automatically tracks time spent on each of their cases.
Fogbugz plots a linear fit through the data points for each developer and then uses the calculated R2 value to determine how consistent the developer’s estimates have historically been. Based on this calculation, probability distributions for remaining tasks for each team member are determined, which leads the ship date probabilities. It’s then easy to see the long pole in the project (Milton Ritchie in this example). This doesn’t necessarily mean the most work, but only reflects the probability of on-time completion—and correspondingly, the most risk to the project.
Anyone who has followed Joel's writings knows that he is keen on the idea of improving the process of software development. And, we all know that estimating an accurate time to completion, or “ship date,” for any software project is a pain in the rear even after all these years of "practice." The unique approach that Fog Creek takes is not to predict the specific completion time, but rather to predict the probability of completing the project across a range of dates.
So, project estimating will likely never be a simple turn and churn process. But with this release of FogBugz, Fog Creek Software has shown great outside-the-box-thinking that could significantly improve how we deliver software projects.
2 comments
Ian Rae said:
Very interesting. First time I saw this concept as relates to managing software development projects was a few years ago at devshop.com - they billed their approach as "manage the risk" so I would be interesting in knowing where the approach originated (aside from the obvious fact that software projects always go overtime and over budget).
Sephir said:
This is great stuff, and can really be useful in any scheduling problem. (For Monte Carlo Excel plug ins, look for Crystal Ball software from Oracle, or @Risk from Palisades). The key is reliable historical data that is relevant for the future. Software delivery seems ideal because you can measure each developer's past performance, which is likely to be the same on future projects ... but as you add complexity and more variables, the accuracy and predictability quickly erodes.
Add a comment
The Google Analytics relaunch
By Chris Gemignani
May 9, 2007
Find more about:
analytics
bi
innovation
interface
tools
Google Analytics has been rebuilt and the result redefines the frontiers of doing analytics on the web. Avinash Kaushik has the definitive early review.
I had the privilege of attending the launch and playing with the early release. Here are a few things I noticed.
- Speak my language: Google has put a lot of effort into replacing specialized terms with everyday ones. This makes the application usable by a broad base of people and is one way to fight GUI Jock-itis.
- Speed kills: The interface is easily reconfigurable and fast. I've long argued that interface speed is a substitute for configuration options. I'm curious to play with the tool and get a better sense if this is true.
- Flex rules: Much of the componentry for viewing data in Google Analytics is built in Adobe Flex. This is similar to Google Finance, and not at all like GMail or Google Reader, which use the GWT. We believe this has profound implications for analytical tools on the web and will dig into this in later posts.
2 comments
FM said:
Nice and must say timely review, I've been using Analytics.google.com and found it good, some time.
some time it's not an average site owner would like to look at, i mean you may lost your way through it.
Talking about Speed, it's been major sat back, till the day. however if it's improved in relaunch, it's great.
Lynn Cherny said:
I had lunch with a friend recently who told me that the Mindmaps fellow who built the new Google Analytics was just more used to Flex. So it may not be sinister or deep, although I agree with you on the overall benefits of the feel and design :-)
Add a comment
Solving the Pie
By Chris Gemignani
December 14, 2006
Find more about:
design
excel
infovis
innovation
screencast
Last week I challenged the you to reproduce this alternative to pie charts in Excel. I promised a screencast to show how it's done.

Eighteen people answered the call with nearly three dozen different solutions. Click here to watch the screencast showing how to accomplish the two most popular solutions; filling cells with conditional formatting and pushing the column chart to extremes.
If you want to look at the source,Clint Ivy produced an excellent version of the cell filling approach.
Dermot Balson submitted an terrific version of the column chart approach.
Thank you to everyone who submitted a solution.
14 comments | Show all comments only the last 5 are shown
Robert Kosara said:
Great to see that you picked up the idea, and made this challenge around it! Being able to do more than the old pie and bar charts in Excel makes these techniques accessible to a lot more people, and hopefully shows them how much more can be done with visualization than the simple things Excel offers directly.
I agree with some of the comments in the other posting, there are some issues with perception here. Especially when only showing one number, filling the cells from the bottom (like a bar chart) is probably a better idea. However, when comparing several numbers, having areas as square as possible is preferable (squarified treemaps have shown this quite clearly). But this shows that even for simple graphics like this, there is still quite a bit of work to be done to understand how to use them most effectively.
Anyway, great blog, and you have really active readers/contributors!
Rage on Omnipotent » Blog Archive » Square pies said:
[...] Nice ways of getting square pie charts. We’ll have to start using them. [...]
Rage on Omnipotent » Blog Archive » Square pies said:
[...] Nice ways of getting square pie charts. We’ll have to start using them. [...]
David Boyle said:
Fantastic. And LOVE the video.
The challenge now is for someone to build in the functionality for showing two different ranges in the same chart.
David Boyle said:
I answered my own question and emailed in a solution (building on the previous work) that allows multiple values in the same chart. It is also here: http://beglen.googlepages.com/square_pie_DBB.xls
ross said:
Looks nice, I think this is a terrible chart, for reason as made before, but it does look nice. I could not view the video sadly, in FF or IE :-( - could you put in on youtube?
Henk said:
This excercise flashed my memory back ages ago when someone showed me how to make a squared circle. But that's maths, not Excel.
GrahamC said:
Surely to show 2 values in the same chart you'll have the 1 colour which is the lower number, then the 2nd colour which is the higher number, the 2nd colour only needs to be stacked ontop of the 1st colour to show the comparitive difference?
DBM Forum » Blog Archive » Ban de Pie Chart said:
[...] Toch lijkt deze uitwerking niet echt een goed alternatief: Optisch lijkt de eerste “taart” (of kunnen we deze grafiek beter “cake” noemen?) voor meer dan 56% gevuld. Een andere invulling (bijvoorbeeld hele regels van onderaf naar boven) vangt dit wellicht op. Ook het invullen van meerdere segmenten kan onduidelijk worden. Mocht je toch een vierkante taart willen maken in Excel, op Juice Analytics staan enkele in Excel uitgewerkte voorbeelden. [...]
Googlizing myself | Chris Teplovs said:
[...] In that alert I found a blog post on Data Visualization Gone Wrong, which was fun to read and reminded me of the Coda Hale’s rant against Google Analytics’ pie charts. The Gone Wrong posting led me to juiceanalytics, which is also helpful. [...]
Mozlog.nl marktonderzoek weblog » Blog Archief » Square pie-chart of pie-chart? said:
[...] Als oplossing wordt de square pie-chart gegeven. De blog juiceanalytics heeft hier van een aantal Excel bestanden gepost. [...]
SPSSlog.com » Happy holidays! said:
[...] If you need something to do during your time off, try out the great online graph service Swivel, or try making the coolest SQUARE PIE-CHART graphs with SPSS! Post all your creations in our comments… [...]
Stefan Schwarzer said:
Hi there,
to make things more complicated, I would like that my square actually displays with two different colors (in addition to white or "empty"). Say, I have a value of 62 (which is for example the Percentage of students finishing a course). Then I have another value, say 38 which is the Percentage (out of the total) of students finishing with a specifc grade.
So, my square looks like this (2 for those students finishing and 1 for those with a specific grade):
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 2 2 2 2 2 2 2
0 0 0 2 2 2 2 2 2 1
0 0 2 2 1 1 1 1 1 1
0 0 2 2 1 1 1 1 1 1
0 0 2 2 1 1 1 1 1 1
0 0 2 2 1 1 1 1 1 1
0 0 2 2 1 1 1 1 1 1
0 0 2 2 1 1 1 1 1 1
But how can I visualize it in this way: http://geodata.grid.unep.ch/Picture_2.png ?
Chris Gemignani said:
Stephan, Here's a quick capsule of one way to do what you want.
Create a 10x10 block and number the blocks in the order in which you would like them to be filled. For instance:
1 2 5 . . . . . . .
3 4 6 . . . . . . .
7 8 9 . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
Then if you want to show blocks for two values (call them A and B), use a two level conditional format to colorize the blocks:
IF blockval <= A: make color red
IF blockval <= A+B: make color orange
Add a comment
8 Ideas for Presentations with More Zing
By Zach Gemignani
July 9, 2006
Find more about:
innovation
powerpoint
presentations
To paraphrase from Really Bad Metaphors:
"Presentations can be as lame as a duck. Not the metaphorical lame duck,
either, but a real duck that was actually lame, maybe from stepping
on a land mine or something."
Here are a few ideas to create spicier presentations:
1. Get thematic. Chose a theme that drives home a general concept in your presentation, then sprinkle it throughout your presentation. For one client, we presented an analysis that ended with a movie. Throughout the presentation we offered subtle hints in anticipation of our grand finale. Avoid themes that could also be used for a high school prom (e.g. A Winter Wonderland, Magical Memories).
2. Change of pace. Break up the action with picture-only slides (see Beyond Bullets, Presentation Zen) or multimedia (i.e. audio or video clip). A little fun in the middle of a bunch of dry slides can help wake up the audience.
3. Use a human voice. Surprise your audience by departing from the traditional business-speak. Try writing slides that don't over-qualify the message or attempt to be comprehensive in the descriptions. Lawyers need to cover all their bases with that kind of language; you need to convey a simple message that will stick.
Instead of "IT organization has little understanding of business units’ long term strategic direction and impact on technology needs", say "IT and business aren't on the same page."
Instead of "Disparate and redundant technology solutions leads to increased operating costs", say "Technology tangle is taxing."
4. Just the answer. Present your conclusion, then ask the audience if they they need to know more detail. If not, meeting over. I haven't tried this, but surely a five minute presentation with a simple take-away will be as memorable as the typical presentation death-march.
5. Something to remember. Provide a simple, memorable acronym or metaphor so they will at least walk away with your key point. For example: Good presentation = f(S,E,C) where S = coherent Story; E = credible Evidence; C = Creatively told.
6. "And one more thing." Steve Jobs is well-known for delivering one final surprise at the end of his presentation. Is there one last blinding insight that you'd want your audience to walk away with?
7. A new format. Consider stepping out of the traditional slide presentation format. Maybe you can convey your results with a science-fair type poster or with a web page or in a short book (check out self-publishing with Lulu). How about with charades or a Broadway tune? Too much?
8. Give them a souvenir. Provide your audience with something to take away that summarizes your key messages. For example, you might hand out a laminated one-pager with your most important framework and results. A colorful summary that begs to be thumbtacked to an office wall is better than a 40-page black-and-white deck that begs to be thrown out.
Bonus post: 4 Ideas from Microsoft for Presentations with More Zing (But Are More Distracting Than Useful)
1. Animation. Animation can be useful (e.g. "building" the content of a complex slide) but is overrated for livening up a presentation. The first slide animation is novel; the second is overdone.
2. Fancy template. Microsoft has been kind enough to provide a variety of dazzling slide templates—almost all of which distract from the content.
3. Clipart. A while back, we railed against Screenbeans, the little ant-like people that visually depict activities or moods. Those little buggers continue to be a bad idea.
4. Fonts. Especially Comic Sans. Won't you join the Ban Comic Sans movement with me?
1 comment
chris said:
The screenbeans are probably not useful for most presentations, but when you have language/literacy issues with your audience and you can show screenbeans illustrating what is going on, they can be helpful. My partner gave a talk on getting ahead in American companies to an immigrant audience, and the screenbeans were very helpful to illustrate the ideas. Would I put them in a Business Intelligence talk--No Way Jose.
Add a comment
Earlier writing






0 comments | Add a comment
said: