Monday, September 28, 2009

Stuff I Have Found Interesting Last Week

9 Ways Marketing Weasels Will Try to Manipulate You

People sure are a funny bunch.

Rich, Black, Flunking

Fascinating story about a researcher's conclusions and the negative reaction it caused.

Where The Buffalo Roamed

I find this interesting. For those to lazy to read the farthest you can get from a McDonalds in the contetental US is 107 miles and can be found in South Dakota.

Friday, September 18, 2009

Review of "Traitor to His Class"

Subtitled "The Privileged Life and Radical Presidency of Franklin Delano Roosevelt" by H.W. Brands.

I long book (over 800 pages) about the president who served the longest (just over 12 years). The book was well written and gave great insight into FDR and how he was a master politician with a view of expansive government control. If you want to know why we have such a large government know all one needs is to read this book. He envisioned government in ways presidents before him never had. He was definitely a master politician and served us well during WWII, but his legacy is felt every paycheck deduction.

I would only recommend this book to people who are serious about history as 800 pages about a single man can be daunting. I had a hard time finishing it. I don't blame the author, but my attention span. I got a little sick of FDR somewhere around page 650.

Monday, September 7, 2009

Stuff I Have Found Interesting Last Week

Petabytes on a budget: How to build cheap cloud storage

This is fascinating. 67 petabytes (that's 1,000 terabytes) for under $8K! A knowledgeable engineer responds - Sun engineer responds to the Backblaze "Petabytes on a budget" design

Things Every Programmer Should Know - Edited Contributions

Lots of little articles that have something important to say.

Economics in One Lesson

A book in HTML form that drills some holes into what you hear on news programs about the economy.

Sunday, August 23, 2009

Saturday, August 15, 2009

Stuff I Have Found Interesting this Week

Interesting take on an old question. I like the baker and cook prototypes. I tend to be more baker than cook.
This is the best article on healthcare I have read ever and it comes from the CEO of Whole Foods.

Good article that shows how iterations can lead to utilization and how iterations can be used with a Kanban system as a delivery time frame. Lots of good diagrams and explanations.

Sunday, August 9, 2009

Review of "1789"

Subtitled "The Threshold of the Modern Age" by David Andress. The book's goal is best quoted from the publisher, Macmillan:

he world in 1789 stood on the edge of a unique transformation. At the end of an unprecedented century of progress, the fates of three nations—France; the nascent United States; and their common enemy, Britain—lay interlocked...David Andress reveals how these events unfolded and how the men who led them, such as Benjamin Franklin, Thomas Paine, Emmanuel-Joseph Sieyès, and George Washington, stood at the threshold of the modern world.
I did learn some interesting things while reading it's 398 pages. Taxes in France of the 1780's where paid almost completely by the lower end of the populace as the royalty and rich where mostly exempt from taxation. Also, France was completely broke and this as much as anything led to their revolution. In England, Thomas Paine's writing were so incendiary that he had trouble finding publishers. For his part two of the Rights of Man he had to sign off as publisher to give the actual publisher protection. Cornwallis, after failure in war with America, went on the oversee India and then Ireland with some success.

I have mixed feelings about this book. It is well written and full of history, which I love, but I didn't like this book. I think that this book might be too advanced for me. Maybe if I knew more of the details of English, French history of the 1780's I would have been able to see deeper meaning meant by the author. As it was, I just picked up some interesting tidbits and the rest mostly rolled through the brain.

Stuff I Have Found Interesting Yesterday

Quite long but full of good information. If you still believe markets are efficient then please read this. If not then just browse it for some cool graphs.

Exceptions: The Airbags of Code & Defensive Programming, or Why Exception Handling Is Like Car Insurance

This first one links to the second one. They both cover roughly the same subject but slightly different and they are short. Basically is you use an Exception to handle a predictable case (like divide by zero) you should consider a different career.

2 steps to improve your website load time by 50%

I never heard of Content Delivery Network before this post. The concept isn't new, but the fact that Amazon cloud supports this so cheaply is shocking. I guess there is more out there than I have time to learn.

Choosing a non-relational database; why we migrated from MySQL to MongoDB

Another DB I have never heard of as well as a list of non-relational DBs with details on MongoDB.

Lean Primer [PDF]

A good, long paper on Lean that covers the subject well.

Wednesday, July 29, 2009

Stuff I Have Found Interesting Today

Traits That Make A Good Development Manager (guest post)

Great list for anybody who is or wants to be a manager of developers.

Where does the money go?

A graphical view of where the average consumer spends their money.

My ideal IDE

Good wish list. I hope VS 12 does it :-)

Incremental Delivery Through Continuous Design

Good article and a better practice.

Friday, July 24, 2009

Stuff I Have Found Interesting Today

Differences in Beliefs Results in Differences in Approach

Quite long, but the author makes some good points. I agree that often Scrum can miss the boat by leaving too many things up to the team. Many I have worked with would be lost in such a situation. I believe process is what you do. If everyone on the team follows a completely different process then improvement will be limited if not impossible. Like the author, I think good management is essential to improvement and much of Scrum seems to be to limit management. I think this inherently places limits on the Scrum team to improve. I think it is due to the history of so much mismanagement in software, but 180 degrees from wrong is still wrong.

From the short article "Locus of Control (LOC) is the belief one holds about who or what controls events – oneself (internal) or factors outside the control of oneself (external)". I have at times been both. I wonder what that makes me?

Thursday, July 23, 2009

Stuff I Have Found Interesting Today

My students forged the notes. I turned them into a lesson plan.

This is brilliant! Kids writing excuses notes as part of class!

Software Engineering: An Idea Whose Time Has Come and Gone?

Tom DeMarco in a 2 page opinion piece has some strong opinions. He starts out slamming his 1982 Controlling Software Projects: Management, Measurement, and Estimation book. He then writes these gems
  • "To my mind, the question that’s much more important than how to control a software project is, why on earth are we doing so many projects that deliver such marginal value?"
  • "Software development is and always will be somewhat experimental."

I'm a sucker for top 10 lists:
  • Lesson 1. All software is flawed.
  • Lesson 2. Check-in often.
  • Lesson 3. Tests, gotta love them.
  • Lesson 4. Refactor, check-in and repeat.
  • Lesson 5. Coding is easy, humans are tough.
  • Lesson 6. The more eyes on your code the better.
  • Lesson 7. Keep learning and improving.
  • Lesson 8. Simple is beautiful.
  • Lesson 9. Learn software development not coding.
  • Lesson 10. Think about your audience.

Tuesday, July 21, 2009

Review of "American Lion"

Subtitled: Andrew Jackson in the White House by Jon Meacham. The subject was interesting. He was our seventh president. He came from humble beginnings as his father died before he was born and his mother and brothers died during the revolution leaving him an orphan at age 14. He was struck by a British officer during the revolution which gave his his distinctive facial scar which can be seen on the $20 bill. He won a convincing victory over the British at New Orleans during the war of 1812 even though the war was technical already over. He was the first to lose an election (1824 to John Quincy Adams) after having the most votes due to his rivals joining forces (Henry Clay became Secretary of State) in the House. He was quoted by future presidents (e.g Abraham Lincoln, FDR) and has a statue less than 1000 ft from the back of the white house.

Unfortunately the book didn't live up to the subject. I found myself getting confused as the author would jump backwards and forwards chronologically without much warning. He also quoted quite heavily from letters of the time, that I found difficult to understand, with little explanation. He spent a lot of words on family relations and less on important historical events of the time. I have not read another book on Andrew Jackson, but I would hope there is a better one out there. Andrew Jackson: His Life and Times looks promising as it got slightly better reviews at Amazon.

Thursday, July 16, 2009

Stuff I Have Found Interesting Today

Uncovering Better Ways of Developing Software by doing it and Helping Others do it

I liked the summary of Gerald Nadler’s book from the mid 1990’s, Breakthrough Thinking: The Seven Principles of Creative Problem Solving. Nadler's seven principles:

1. Uniqueness

2. Purposes

3. Solution-after-next

4. Systems

5. Limited Information Collection

6. People Design

7. Betterment Timeline

A well written critique to the Kanban craze. He biggest beef seemed to be that without iterations he couldn't tell the business when he would deliver. I think Kanban (or something like it) is the future of software process as I do not see the need for iterations and forcing the customer to split their needs into a size that fits the software team's chosen process. The software team should take the business need, give a date range (with a probable date) and then deliver it as fast as possible using best practices (e.g. TDD). Iterations are not a necessary component. For a detailed response read: Response to critical article on Kanban.

Stack Overflow Architecture

Covers the architecture of and gives it fairly high marks.

Wednesday, July 15, 2009

Stuff I Have Found Interesting Today

Two Timely New Tees

The first one is precious!

free eBook “12 Things to Shorten Your Lead Time” [PDF]

A good short read that will help most people. In summary here are his 12 things (for detail read the PDF):

1. Measure, measure, measure
2. Increase quality
3. Reduce rework
4. Frequent releases
5. Stop working in parallel
6. Shorter stories
7. Visualize and manage flow
8. Rigorously cancel meetings
9. Continuous deployment
10. Shorten product management
11. No single point of failure or bottleneck
12. Leveling work

Where Has All the Income Gone?

Long, but thorough article that shows how easy it is to misunderstand statistics. In conclusion "Careful analysis shows that the incomes of most types of middle American households have increased substantially over the past three decades." The richest 25% have gotten richer, but the middle class hasn't done as bad as many politcal people might lead you to believe.

Tuesday, July 14, 2009

Stuff I Have Found Interesting Today

Kanban Is Process Control, Not A Process For Adding Value To WIP

Does a good job of explaining what Kanban is and is not. I love the quote:

the kanban is an organized system of inventory buffers and, according to Ohno, inventory is waste, whether it is in a push system or a pull system. So kanban is something you strive to get rid of, not to be proud of
- Jeffrey K. Liker, “The Toyota Way”, p. 110.

Author makes the point that handling failure is key to success of a start up. I would argue that it is key to success, regardless of what you are doing. How you deal with failure is a good predictor of success. The best in any field have seen more failure than success.

I have never heard of this idea. I am not sure what the ramifications are, but I like it!

Monday, July 13, 2009

Stuff I Have Found Interesting Today

The Three Types of Change

Jurgen does a good job in this one. He defines three types of change in a complex system (closed, contained, open-ended) and gives examples plus a personal story to boot.

The author shows how Kanban solves some problems he has had with iterations. I think iterations was a good step when the starting point was waterfall, but I think everyone's goal should be to abolish iterations as they produce more waste than they are worth.

Most interesting that they wound up ditching iterations.

The DFT “à Pied”: Mastering The Fourier Transform in One Day

Good explanation of Discreet Fourier Transform with code to boot.

Saturday, July 11, 2009

Stuff I Have Found Interesting Today

Global Banking Economist Warned of Coming Crisis

A 6 page article on William White, a former BIS economist, who was critical of Greenspan's policies. A string of gems: "[White's team]...observed the real estate bubble developing in the United States. They criticized the increasingly impenetrable securitization business, vehemently pointed out the perils of risky loans and provided evidence of the lack of credibility of the rating agencies....predicted the disaster, and yet not even his own clientele was willing to believe him.... the central bankers knew exactly what was going on, a full two-and-a-half years before the big bang... BIS reported that the index for securitized US subprime mortgages had fallen sharply in the fourth quarter of [2006]...At the London G-20 summit in April, the group decided to promote a crisis-prevention model based on White's theories."

He has come out of retirement to help instruct those who had ignored his advice. There is a cool graph, titled "The Curse of Cheap Money", embedded in the article.

Relearning: The Productivity Problem that We're Not Supposed To Talk About

I fascinating look into code solubility (I had to look this up). Gem "One of the worst mistakes that programmers make in writing code is in failing to recognize that more productivity will be spent over the life time of code navigating through the code than will be spent writing the code"

Better Now Beats Best Later

This is so true! I have done this too many times to count.

Why the Brain Craves Exercise and Sleep

A seven minute interview/overview of "Brain Rules" that covers roughly half of the book.

Friday, July 10, 2009

Stuff I Have Found Interesting Today

Why Does Chrome OS Make Sense?

Kent makes a good point that I did not see.

JavaScript Expression Closures and Why They Rock

I didn't get it at first, just as he said, but the ability to delegate functions inline is powerful and the syntax is clean.

Robert C. Martin's Clean Code Tip of the Week #10: Avoid Too Many Arguments

A cute story with a good point. I wonder why we programmers feel that bad code is faster when experience has taught us that it isn't.

Review of "Blink"

Subtitled "The Power of Thinking Without Thinking" by Malcolm Gladwell.

A short, interesting read that was filled with stories and studies that made you think. The opening story is fascinating. In 1983 the J. Paul Getty Museum purchases a kouros (small ancient Greek statue) for $10 million. They did every thing you could think of the verify it's authenticity. When they showed it to art experts they immediately felt it was a fake, which wound up being the truth. The theme of the whole book is basically stories and studies like that. The brain can do amazing things with short slices.

The next story is about John Gottman and his ability to accurately (95%) predict if a marriage will last 15 years by just observing a couple for 1 hour. He measures emotional slices on a scale (SPAFF) and used the results to predict failure. Another amazing study, by Steele & Aronson, had African-American students take the GRE. One group answered questions about their race pre-test and did half as good as the group that didn't! Another interesting thing was the implicit association test(IAT). The author whose mother is Jamaican took the race IAT and it showed he was biased against blacks. The last story is about classical music. Since instituting screened auditions the number of women in orchestras has gone up 500%. Even women judging women playing were biased if they saw the women before she played.

I'm not sure I learned much from this book but it was enjoyable.

Thursday, July 9, 2009

Stuff I Have Found Interesting Today

The Power of U

This post starts with calligraphy then factory floor setup then change management then personal change. Next is my favorite part "The four stages of competence" then a high level review of a book Theory U: Leading from the Future as it Emerges. It ends with a picture of a horseshoe. He deserves credit for tying so many things to a single vowel.

A Dubious Foundation

A long article that brings up many scary points. The one the sticks with me is "The magnitude of recent growth in the monetary base is literally moving off the charts, having increased from about $870 billion to almost $1.7 trillion in the last nine months." I see double digit inflation in our near future.

Wednesday, July 8, 2009

Stuff I Have Found Interesting Today

T-Shirt Estimation

A good write up on estimation in a Lean (no iteration) software process.

The Nanny Nation

A review of a new book by Barry Ritholtz, Bailout Nation: How Greed and Easy Money Corrupted Wall Street and Shook the World Economy. In the review are some interesting tidbits, like 1971 was a watershed moment as it was the first time the US government bailed out a private company (Lockheed) and the bailout of Chrysler in 1980 stopped the market from correcting the US automotive sector. I might have to read this book.

PMI: US Home Prices Likely Lower In 2 Years

I'm glad I have NO plans of selling my houser anytime soon. This graph also shows how out of bounds the housing prices are compared to GDP.

Introducing the Google Chrome OS

I didn't think they would go there, but they went there. It is a crowded marketplace, but they do have good name. Now can they live up to it?

Refactoring challenge Part 1 - Examination

You have to respect a developer when they post their code and let others shred it, then repost it and shred it themselves. It is a good lesson and I look forward to his journey to clean code.

Tuesday, July 7, 2009

Stuff I Have Found Interesting Today

On Hearing and Speaking the Truth

I have worked in both types of places and find most fall into area #2.

Michael Lewis on A.I.G.

A fascinating 5-page story on how AIG was involved in the gobal financial meltdown. It just goes to show that bad management is bad business.

Monday, July 6, 2009

Stuff I Have Found Interesting Today

So You Want to Buy an American Car?

4 out of the top 10 cars with the most domestic content are made by Toyota (with #1 being the Camry).

Lessons in Software from James Waletzky

A sensible top 10 list (for detail follow the link):

Lesson 1. Keep it simple.
Lesson 2. Define ‘done’.
Lesson 3. Deliver incrementally and iteratively.
Lesson 4. Split scenarios into vertical slices.
Lesson 5. Continuously improve.
Lesson 6. Unit testing is the #1 quality practice.
Lesson 7. Don’t waste your time.
Lesson 8. Features are not the most important thing.
Lesson 9. Never trust anyone.
Lesson 10. Reviews without preparation are useless.

Resources on Self-Organizing Teams for Agility

Quite a list for those who have the time.

Sunday, July 5, 2009

Review of "Brain Rules"

Subtitled "12 Principles for Surviving and Thriving at Work, Home and Schhol" by John Medina.

I loved this book. The brain has been fascinating to me since I studied neural networks in graduate school. This book is the most informative and readable book about the brain I have ever read. I think it is must read for anyone, especially true if you are a parent and/or teacher. The books main point is much of the brain is a mystery, but there are some thing we do know. He groups this knowledge into 12 rules.

Rule #1: Exercise boosts brain power.
Rule #2: The human brain evolved, too.
Rule #3: Every brain is wired differently.
Rule #4: We don't pay attention to boring things.
Rule #5: Repeat to remember.
Rule #6: Remember to repeat.
Rule #7: Sleep well, think well.
Rule #8: Stressed brains don't learn the same way.
Rule #9: Stimulate more of the senses.
Rule #10: Vision trumps all other senses.
Rule #11: Male and female brains are different.
Rule #12: We are powerful and natural explorers.

One of my favorite quotes comes in the introduction "If you wanted to create an education environment that was directly opposed to what the brain was good at doing, you probably would design something like the classroom. If you wanted to create a business enviroment that was direclty opposed to what the brain was good at doing, you probably would design something like a cubicle." There are many myths busted by this book as well as some points to adjust how you live to allow your brain to function better. I think we all need that.

Friday, July 3, 2009

Stuff I Have Found Interesting Today

The perils of estimation

The authors makes a good point about making sure you serve the customer needs not your own.

GETting Documents From CouchDB

Pretty simple interface for an online document centric data store.

How to conduct a Five Whys root cause analysis

A good explanation of the technique with real world examples. One point that didn't get enough focus is the need for trust in the organization. Without the "respect for people pillar" this will just be a exercise in futility (e.g. the Toyota Half-Way).

Review of "The People's Tycoon"

Subtitled: "Henry Ford and the American Century" by Steve Watts.

A well written book about an interesting and amazing man. Henry Ford was born during the Civil War (1863) and died after WWII (1947). He was the father of mass production, a fervent anti-Semite, and a pacifist. He created one of the largest companies in the world then almost drove it in the ground by driving out rising stars and undercutting his only son as president. He was close friends with Thomas Edison and received a Grand Cross of the German Eagle from Nazi Germany.

His legacy affects us today. He is the father of Lean, the consumer economy and the rise of the middle class. Some of his ideas were truly weird, but his impact on last century and thus today can not be dismissed. To understand America one needs to understand our history. Henry Ford is definitely a figure worth studying and this book is a good place to start.

Thursday, July 2, 2009

Stuff I Have Found Interesting Today

FW: Sailing a Straight Course in a Time of Variances

A message on the Lean Software Development yahoo group by Tom Poppendieck that has a great email from Jim Womack on leadership.

Oh, You Wanted "Awesome" Edition

Funny stuff from Codinghorror.

Wednesday, July 1, 2009

Stuff I Have Found Interesting Today

Canalizing Design

A great post with a new term "Canalizing" - as in like a canal.

Malcolm is wrong

Seth Godin on the future of writers and editors and how magazines and papers are dead. I think it is obvious, but I have been known to be wrong before.

Hudson River Crossings: Improving Bus Capacity

I never plan on being a commuter from NJ to NY, but this short film was extremely well done!

WIP Limits are for Adults too!

I have had the same thoughts as Alistair. This response from David Anderson basically says we need limits because that's how we do it. I think WIP limits can help when you are learning (prevents you from sliding down the path of large amounts of WIP), but I think your goal would be to not need them as your process becomes more mature. A lean practitioner blogged a similar idea as The Fifth Primary Practice of Kanban, but kinda wimped out on his original idea of "Eliminate Kanban".


Interesting idea: work a fairly simple problem many times so the variations will be the techniques used. Now to make the time to do this!

Tuesday, June 30, 2009

Stuff I Have Found Interesting Today

Immovable Object versus Unstoppable Force: Capex and the Marginal Cost of Production

Kent Beck on economics and other things. Most interestingly is that he is selling a 2 hour pair programming session on eBay! Started at$50 yesterday and after 12 hours has gone up above $200. I wonder what the final price will be?

This is just plain weird: "Some say that a major cause of the U.S. housing bubble was a surge in savings overseas, particularly in China, where the personal savings rate soared to 30 percent of disposable income...China’s “one child” policy, which created a huge surplus of men in the country, has driven up the cost of getting married...could account for as much as half of the increase in the country’s household savings since 1990."

These two columns cover the same supreme court decision, but look at it COMPLETELY differently. The second is from George Will and makes sense to me. The first makes some statements which make me tilt my head: "The two decisions are mirror images in terms of their consequences, one harming minorities and one harming whites." I don't see how one can make such a statement. I do know that the law is in for a rough road as we recover from decades of racism.

A good case that covers the reasons for the current structure as well as an appeal for change. I think it will happen as money will force it. Lean won manafacturring and it will win in IT as well.

The Toyota Half-Way

Points out that without respect for people there is no way you're getting any benefit.

Good post with an interesting question at the end "Is what I wrote above the case? And if so, how should that impact the way we test software?"

How maths killed Lehman Brothers

As I like to say "Do the math!"

The author makes a good point. I happen to think one-size fits all is a bad idea with technology.

Takes the popular MVC pattern and shows you their approach.

Details on the CLI that make sense.

The 12 page document is the first link on the page. It is a good summary of the changes in C# 4.0 with examples. The changes can be summarized thusly: Dynamic lookup, Named and optional parameters, COM specific interop features, and Variance.

Monday, June 29, 2009

Stuff I Have Found Interesting Today

This is neat!

Fighting Fabricated Complexity

I like the term fabricated complexity and I believe it is a major component in most systems.The post has some good points but it does go quite deep on metrics so beware.

Real World Refactoring

Some decent code that the author refactors and makes even better.

Saturday, June 27, 2009

Stuff I Have Found Interesting Today

One day in Kanban land

A great way to describe a Kanban software process. I'm not sure why there is a person who only does deploy, but it's still a good story.

Video of a talk by Kent Beck (>71 min). I particularly liked this gem "Design = Beneficially Relating Elements". He analyzed data from Gump and found that there is a power law distribution for length of builds and time of runs for failing tests. He says this distribution is it lots of places (e.g. number of incoming calls into an object and size of methods). He thinks it's interesting, but doesn't know what it means other than some of our metrics wisdom must be rethought. I agree.

Starts off with his most negative people series Greg the secretive, Jon the incompetent, Gary the not invented here, and Roger the refactorer. This is followed by good advice summarized here (the details are worth reading):

1. It pays to share everything you know.
2. Give people credit, even if they don't deserve it.
3. Don't play any blame games.
4. When the code is good enough, stop working on it.
5. Work hard.
6. Lighten up.
7. Take time for yourself and your family.
8. Keep studying.
9. Keep regular hours.
10. Don't fool with fools who'll turn away.

Top 10 Productivity Basics Explained [Lifehacker Top 10]

Good ideas to try.

Friday, June 26, 2009

Stuff I Have Found Interesting Today

What is Woot?

This is perhaps the most enjoyable FAQ I have ever read. Read it and it will bring you joy!

Google Voice: Cloud Meets Cell

This guy sees big things coming from Google in the mobile landscape.

The 20 Most Practical and Creative Uses of jQuery

Some fascinating ways to make web sites do cool things.

I never knew that the Sumerians used a "...sexagesimal (base 60) number system" by using the parts of the fingers (minus the thumb) to count to 12 on one hand. Sometimes, history is more fascinating than fiction.

The Climate Change Climate Change

I chose not to find time to fully explore climate change, but I do know we humans tend to be a bad predictor and manager of nature.