Approximity blog home
580 to 599 of 613 articles InfoSyndicate: full/short

Just Ship, Baby   25 Sep 04
[print link all ]
(Source: Kent Beck) Short two page essay: The focus on shipping is not an excuse for cutting corners, but perfect adherence to the practices is no excuse for not shipping. groups.yahoo.com/group/extremeprogramming/files/just%20ship.pdf

When Should We Test?   25 Sep 04
[print link all ]
Kent Beck, one of the people that invented extreme programming (XP) offers an economic model. The financial risk management community and the software development community can learn a lot from each other. Think of this article as: When should you put Risk Management into place?

Amongst other things this article tells you when best to have children :-). [groups.yahoo.com/group/extremeprogramming/files/when%20should%20we%20test.pdf]

The Simplest Thing that Could Possibly Work   25 Sep 04
[print link all ]
(Source Ward Cunningham, Bill Venners) Ward Cunningham talks with Bill Venners about complexity that empowers versus complexity that creates difficulty, simplicity as the shortest path to a solution, and coding the simplest thing when you’re stuck.

In the software community, Ward Cunningham has a reputation for being a font of ideas. He invented CRC Cards, a technique that facilitates object discovery. He invented the worlds first wiki, a web-based collaborative writing tool, to facilitate the discovery and documentation of software patterns. Most recently, Cunningham is credited with being the primary inspiration behind many of the techniques of Extreme Programming. link

Case stories   25 Sep 04
[print link all ]
Been skimming the XP-ML this morning.

About the $200M Oracle-Ford Desaster: the management did not give them enough power to go fully agile

Chet Hendrickson:

 It was a very frustrating situation.  The team asked Don and me
 to help with preventing the Oracle consutants from making changes
 directly to the production system.  This was about $150 million into the project.

 We tried to sell them on a more agile approach (as you might imagine), but by
 this time they were pretty far gone.

 It was unfortunante that we were not operating at a level in the organization
 that would have allowed us to get the plug pulled sooner.

 chet

Georg Tuparev has a nice case story, too: speak out if you are put on a death march.

 Few years ago I was called to lead a huge team stuck in one and half
 year design phase. The team was supposed to build a control software
 for a network of telecom satellites. Cannot disclosed names and
 resources, but one could imagine ...

 Three days in the project I had a phone conference with the CxO's of
 both companies involved. Told them that the way it is going no
 satellite will ever fly and that I know a better way. After getting
 green line, the design document was burned with a small celebration at
 a BBQ, and 85% of the initial team members were sent to an indefinitely
 long vacation. With the rest (15%) of the team we had the first
 functioning version 2 months ahead of the schedule and 50% lower then
 expected expenses.

 So the lessons:
 - it is never late to change direction of a project in order to save it.
 - I do not agree with Kent that this is a sad story. If you are a good
 programmer put on a death march project you should speak out! If no one
 listens - walk away. There is just one very precious life in front of
 us - do not waste it! And if these folks wasted 2 years of their lives,
 well, it is their business ... but they should not expect my
 sympathies.

 BTW, Philip is right - the project I was telling about had a 9 months x
 40 people "Big Requirements Up Front"!!! Then the design started...

 Just my 0.02

 Georg Tuparev

Agile Processes Summarized   25 Sep 04
[print link all ]
(Source: Ron Jeffries and Alistair Cockburn, XP-ML)

I think that to get a group to be agile, you have to get people to do something like one of these things:

  1. Go in that room there and do all 12 XP practices until you actually do know better. (XP)
  2. Go in that room there, don’t let anyone screw with you, work on whatever you think you can get done for a month. Keep doing that until everyone is happy. (Scrum)
  3. Go in that room there, in peace love and understanding, ship software every month (*), and think about it. (Crystal Clear.)

There is a telling sameness to all of these, is there not? —> This is a wonderful summary of a summary! There’s not much to be removed (see Saint-Exupery, below). In Italian, the expresso of an espresso is called a "ristretto" (any Italians online?). This is the agile ristretto. It belongs on a Blog or something. "La perfection est atteinte non quand il ne reste rien a ajouter, mais quand il ne reste rien a enlever." (Saint-Exupery)

XP success story: Sabre takes extreme measures   25 Sep 04
[print link all ]
(Source: Computerworld) Using extreme programming practices, Sabre Airline Solutions has reduced bugs and development times for its software products.

Sabre Airline Solutions had many years of experience with its AirFlite Profit Manager, a big modeling and forecasting package that many airlines use to wring more income out of flight schedules. Even so, Release 8 of the software was four months late in 2000 after final system testing turned up 300 bugs. The first customer found 26 more bugs in the first three days of its acceptance testing, and subsequent joint testing by Sabre and the customer uncovered an additional 200 defects. www.computerworld.com/softwaretopics/software/story/0,10801,91646,00.html

Increasing Software Development Productivity   25 Sep 04
[print link all ]
(Source: Mary Poppendieck) Income growth of workers in any economic sector is directly related to productivity growth. In the past, the productivity of the technology sector grew not because technical workers were becoming more productive, but because technical capability was growing so fast. Unfortunately for the incomes of software development professionals, this is no longer the case. Future income growth will be related to our ability to increase software development productivity.

How can software development productivity be increased? Through the same approaches used in operations: a focus on customer value, a short, effective supply chain, healthy discipline, and innovation. Mary will discuss techniques that businesses have used for decades to jump-start an increase productivity, and show how they can be used to increase software development productivity. pdf

Ender's Game and Software Development   25 Sep 04
[print link all ]
Very interesting entry by /\ndy Hunt. Ender is in reference to a novel by Orson Scott Card called ‘Ender’s Game’. Its part of a series of three books, all of which are well worth reading. www.toolshed.com/blog

Knoppix remastering mini-howto   25 Sep 04
[print link all ]
(Source: Daniel Stirnimann) This mini howto shows how you can easily make on your own customized knoppix build. Apart from that, there are a few working methods described which make doing changes conveniently. The howto is intended for people who work occasionaly on their builds.

link

How to Construct Bad Charts and Graphs   25 Sep 04
[print link all ]
(Source: Gary Klass) A short but good article in the style of Edward Tufte, the big guru when it comes to displaying data in a meaningful way. Fundamental rule of efficient graphical design: minimize the ratio of ink-to-data The three fundamental elements of bad graphical display are these: Data Ambiguity, Data Distortion, and Data Distraction. link Make sure you check out these classic bibles about envisioning information by Tufte: Envisioning Information and The Visual Display of Quantitative Information

The Rise of ``Worse is Better''   25 Sep 04
[print link all ]
(Source: Richard Gabriel) Good characteristics:

1) Simplicity-the design must be simple, both in implementation and interface. It is more important for the interface to be simple than the implementation.

2) Correctness-the design must be correct in all observable aspects. Incorrectness is simply not allowed.

3) Consistency-the design must not be inconsistent. A design is allowed to be slightly less simple and less complete to avoid inconsistency. Consistency is as important as correctness.

4) Completeness-the design must cover as many important situations as is practical. All reasonably expected cases must be covered. Simplicity is not allowed to overly reduce completeness.

www.jwz.org/doc/worse-is-better.html

[ANN] DataVision 0.8.2 released; upgrades to JRuby 0.7.0   25 Sep 04
[print link all ]
DataVision 0.8.2 is now available from SourceForge at sourceforge.net/project/showfiles.php?group_id=33343

DataVision is an Open Source reporting tool similar to Crystal Reports. Reports can be designed using a drag-and-drop GUI. They may be run, viewed, and printed from the application or exported as HTML, XML, PDF, LaTeX2e, DocBook, or tab- or comma-delimited text files. The output files produced by LaTeX2e and DocBook can in turn be used to produce PDF, text, HTML, PostScript, and more.

DataVision is written in Java and uses JRuby to add Ruby scripting.

Communication is the Transfer of Emotion   25 Sep 04
[print link all ]
Seth Godin has put together a nice pdf about how todo decent powerpoint slides. By the way, his new book "Free Prize" is out, too.

I always enjoy reading his weblog.

RubyX   25 Sep 04
[print link all ]

I just now came across the rubyx website and noticed the logo. Nice!

Rubyx is a Linux-distribution similar to Gentoo, but all based on one ruby script :-).

The Best and Worst of Statistical Graphics   25 Sep 04
[print link all ]
This Gallery of Data Visualization displays some examples of the Best and Worst of Statistical Graphics, with the view that the contrast may be useful, inform current practice, and provide some pointers to both historical and current work. We go from what is arguably the best statistical graphic ever drawn, to the current record-holder for the worst. link

Visualising wikis   25 Sep 04
[print link all ]
been surfing to get good ideas about visualising knowledge.

The pics shows "history flow" from IBM research. Tons of other good links can be found in the c2-wiki.

Visualising is really interesting and up for a major change. I am totally sick of all these boring search-engines out there and yeah, grep -r is still my best friend. Another reason why I despise MS-Word, he, he and use LaTeX. It took me years to fall in love with that programming-language, which happens to be a word-processor, too.

POV-Ray - getting 10 years old   25 Sep 04
[print link all ]

"The Lovers" by Gilles Tran (2001). Find more in the Hall of Fame

I still remember my first ray traced spheres on old XTs 15 years ago :-).

There is a competition and the monthly irtc. See the May-June viewing page and relax.

Computers are a grate time-killer, especially once you get into 3D images and animations. Enjoy it!

Installing Oracle 10g On Debian   25 Sep 04
[print link all ]
We go through, step-by-step, the process of installing Oracle 10g Release 1 (10.1.0.2) Enterprise/Standard Edition for Linux x86 on a Debian unstable installation as of 2004-06-04. This chapter was originally written by Damien McAullay with suggestions from Giuseppe Sacco and Oliver Bankel. link

Paris Metro firm to run Wi-Fi buses   25 Sep 04
[print link all ]
(Sourc: register) Wireless Internet access will soon move beyond railways and onto the roads if RATP, the company which runs the Paris Metro and the capital’s bus services, has its way.

The organisation will next week show off a Wi-Fi enabled bus at the Paris-hosted Public Transport Exhibition 2004. It will also launch a public trial of the technology, on the number 38 bus, which runs between North and South Paris. Buses on the route have already been equipped with Wi-Fi, RATP said. Travellers will be able to connect their (suitably equipped) PDAs and notebooks with the bus’ on-board access point. However, Internet connectivity is only provided at Wi-Fi speeds when the vehicle passes within range of a fixed hotspot - at a major terminus, for example. For the rest of the journey, connectivity is maintained through a GPRS link. link

Introducing agile methods if the customer is obsessed by dead trees   25 Sep 04
[print link all ]
(Source: posting to agile-testing@yahoogroups.com by John Goodsen) I think a big mistake many of us make trying to introduce Agile development practices, is we fall into the trap of agreeing that we are not providing documentation. If your organization wants to see documents along the way, don’t tell them they can’t have it! Tell them they will have the most up to date documentation that they have ever seen, because you are going to generate it directly from the code. Our teams use an XP process. It doesn’t take much to tie in a tool to auto-gen design specs from the code and if you are automating customer tests, you can put description in the headers of tests methods and use a javadoc based generation of a "requirements specification"… so rather than view your organization as an enemy that requires an "undergound attack", listen very carefully to what people are asking for and figure out how Agile approaches can deliver it. We are not the enemy. We are the liberator. We have exactly what they want, but we often fail to match up our Agile solution with what the stakeholder is asking for.

When an organization wants more than the Agile process requires, it is easy to show the additional cost each iteration, and as the team builds credibility the customer/stakeholder(s) might be less inclined to want to spend money each iteration producing documentation.

So have some courage, tell your stakeholders that they can have it (whatever "it" is) if they want it and then make sure you follow up with giving them a good picture of the cost and value they get from "it". It’s their money - let them blow it if they want to. Let them slow the velocity by asking for non-code related items. All you can do is make it visible and help them down the path of figuring it out.

The sooner you start delivering some working code, the sooner you’ll have the credibility to address their real process issues. "It" will become less important the more iterations you deliver working tested code.

The hard part is getting code started, right? Maybe you can disguise the first few iterations as "prototyping" and use TDD as the process for your prototyping? :-)

 

Powered by Rublog