One Day Project

On Sunday Explorers I (Ward Cunningham) showed three projects that appeared over a few hours but were "in production" sufficiently to prove useful and attract additional effort when convenient. matrix

Unix developers imagined that casually authored scripts would accumulate in personal /usr/*/bin pages. The environment allowed binding these to new files and pipelines to other scripts. But our environment, and especially Assets and Frame plugins operating within a lineup, seems more encouraging. Things that make this possible: hyperlinks, public internet, fork and drag sharing.

I'm sure there is more here, and much more that can be added. We have to think it before we can make it. Every one day project ends with me asking, how could I make this easier? What projects did I not even start and for what reasons?

The thought started here: matrix mastodon

Small, autonomous teams of mostly highly-skilled developers, working closely with customers, doing frequent small releases of working software that's being continually tested. Or... Big teams of mostly inexperienced developers being micromanaged by people with no dev experience, working several degrees removed from customers, doing large infrequent releases of buggy software that gets tested late in the day by a separate team. It's fascinating to watch orgs deliberately choosing the latter. post

Ward replied: "Ask me about one day projects." matrix And Jason did him the favor.

> @k9ox Hey Ward, what's with these one day projects? 🙂 post

Ward Cunningham wrote: You have marveled at orgs choosing development by big teams ... I recognized your alternative as having roots in Extreme Programming which itself was derivative of our habit of launching "one day" efforts as a research methodology. Smalltalk-80 seemed to want us to work this way. A one point we cataloged a dozen of these efforts that had lasting impact without any management what so ever. In wiki we may have recreated this most interesting style of thought. Let's make more. post

~

Using Smalltalk-80, programmers can produce prototypes much faster than with C or Pascal. What techniques do Smalltalk-80 programmers use to produce these prototypes? What is special about Smalltalk-80 that enables them to uses these techniques? Can these techniques be used with conventional languages such as C?

See AboutUs Getting Started blog post announcing the open-sourcing of this technology. github

Programming by experimentation is exemplified by a Beck cycle which is a week long. A Beck cycle starts Monday morning with an idea. Without any planning, a programmer starts coding to see if the idea can be implemented. By the end of Monday, he will have convinced himself of the idea's feasibility. Tuesday, and Wednesday are spend finishing a prototype implementation. Thursday, and Friday are spent showing the prototype to his colleagues, and fixing any bugs that are found. If a colleague likes the idea, he wil l pick up the prototype, modify it, and …