Ming the Mechanic:
Simplicity and embracing constraints

The NewsLog of Flemming Funch
 Simplicity and embracing constraints2006-11-05 20:36
24 comments
by Flemming Funch

Jon Udell mentions Dabble DB:
The October episode of The Screening Room features Dabble DB, a web-based workgroup database that, in the style of 37Signals, focuses on simplicity and embraces constraints. Dabble doesn't aim to do full-blown database application development, or sophisticated query, or heavy transactions. Its mission, instead, is to enable teams to easily manage and flexibly evolve modest (say, 30- to 50-megabyte) quantities of structured data.
Now, Dabble is first of all cool, but that brings up several things. Dabble is a database you create on the fly online, which you very easily can import stuff into, particularly from spreadsheets, and you can very easily change it around, add fields, etc. And it is often intelligent enough to figure out what you might want to do, and making it easy.

That reminds me first that I made a program like that several years ago, where you create a database online, and you can change it on the fly, and import stuff into it, and you automatically have screens for searching, sorting, updating it, etc, and you don't need to know much about databases. My web app isn't nearly as cool, doesn't do any Ajax tricks, and doesn't make it nearly as easy. There are people using my app, who're happy with it, but I never got it to a point where it would be meaningful to market it.

That's a bit of a puzzle I have as a programmer. Should I make a bunch of different functionalities that are tied together, but spread myself so thin that it ends up being a bit mediocre and not quite finished? Or should I get a team together and do it better? Or, should I do what is the current Web2.0 fashion - do one rather simple, limited thing, but make it very cool and easy to use, and then charge people per month for using it.

As he says, focus on simplicity and embrace constraints. Make it very simple, refuse the temptation to add more advanced features. Make the simplicity and lack of features BE a feature.

Like 37 Signals, obviously. Very smart people making very simple programs, even bragging about how quickly they made them, but making them so well that they're very intuitive to use, and so compelling that thousands will happily spend $10 per month for using one of them.

I'm trying to talk myself into it... Intellectually I get it, but instinctively I'd tend to go for a too-complicated solution, when a more simple would do.

My pet programming project the last couple of years has been a collaborative environment I call OrgSpace, which has wikis, blogs, calendars, forums, chat rooms, project management, contact lists, event management, databases, a shopping cart, workgroups, and more, all integrated with each other. But that makes it so damned complicated that it is a bit crazy to try to do single-handedly.

And some of the things I've done successfully have been very simple. Like the webcam thing I did in Opentopia. Took me not much more than a weekend to do, but it has gotten more hits than anything else I've put on the web. I recently sold that website, and it all sort of speaks for the idea of doing simple and cool things and getting them out the door.

So, I'm trying to meditate on that simplicity-and-embracing-constraints message.

It is like The Mythical Man-Month. Complexity grows exponentially as, uhm, things get more complex. When a software project grows so complicated that one person can't easily understand all of it at one time, the need for communication between team members makes it quickly mushroom way out of proportion. A small team of 3-5 people can be very productive, but anything beyond that starts getting crazy. For that matter, even if it is a one-person project, if he can't easily comprehend the total project at the same time, it gets too complex as well.

Scaling it up much further, how about understanding and solving humankind's problems? Does some committee need to somehow solve the big problems together, even though they have a hard time understanding the full system? Or is it maybe better if small groups of people solve very specific and limited problems, but they solve them so well that their piece becomes a fine building block for bigger solutions, which they maybe can't even imagine.

I could say that this is maybe nature's way of dealing with complexity. A whale is very good at being a whale and plankton is very good at being plankton, but none of them lose any sleep over pondering the complexities of the ecosystem. And yet they're integral parts of it. If they made a big committee, they probably wouldn't do as good a job at it.

It could be a human type of hubris that we think it is our job to come up with big general solutions for complex problems we don't really understand. Rather than coming up with elegant and complete solutions to small problems that we do understand. I'm not sure. Just a philosophical thought.


[< Back] [Ming the Mechanic]

Category:  

24 comments

6 Nov 2006 @ 20:55 by Hanae @69.33.46.10 : Compexity

Humanity IS the cause for many of those "complex problems we don't really understand." So, my inclination, would be to answer yes, that "it is our job" to try to both understand and address some of the problems we are creating individually and collectively as a species - I don't see it as hubrism. (This is just an opinion, of course, arguably it could be looked at as hubrism. Some people think it is out of our hands or that it is beyond us, that we are part of a greater order in the scheme of things, and that things are as they should be.)

As to the question about the committee vs. small group approach to problems - in so far as it applies to mankind as a species - my inclination would be to answer that both approaches are not mutually exclusive. Some of the problems we face today were caused collectively, and can, to a certain degree, be addressed collectively (via committees or otherwise,) like, for example, carbon dioxide emission reduction, or the protection of endangered species. At the same time, individual efforts, “small groups of people solving very specific and limited problems,” is also a strong and important dynamic---isn't it the way it has always been?---like, for example, new technologies to come might hopefully prove instrumental in addressing the carbon dioxide emission problem.

The people of a village, who depend on a river for fishing and for their water supply, might object to people from another village using that same river as a trash dump if they happen to live down-river from those people. This is a problem that clearly needs to be addressed. It can be done by committee, with some delegates from each of the villages meeting together and trying to see each others problems and trying to reach a solution that works for all. It’s not as simple as it sound. The “trash” in question might happen to be some fertilizer that some village uses in their fields bordering that river, or they may raise some cattle whose excrements drain into the river and contaminate the water.

Now, someone might also come up with some new technology that addresses some of those problems:

1. an alternative to the fertilizer
2. a way to contain the manure from the cattle
3. Someone might come up with some water-purifying device that takes care of the problem, so that the river is automatically cleaned from contaminants through a series of filters and it doesn’t matter what anyone dumps into the river.

Solution #1. and solution #2. would require some global collective efforts on the part of the villagers. In the case of the fertilizer, they would need to convince the cultivators in the village to switch method of growing their crops; some might not want to go along with it. The issue might be influenced by other factors, like some people in those villages might have a vested interest in resisting progress because they make a huge profit from the fertilizer, etc.

Solution #3, on the other hand, could be the magic bullet that solve all the problems, because it would require no coordinated efforts, no collective agreement (and therefore no committee) requiring that anyone did anything. One would still have to find the funds to build the water-filtering devices, but that is another issue.

The magic-bullet solution is attractive to me, as it is to many people, because it is the one most removed from politics, and the problems associated with it. But such a solution (one that doesn’t require some kind of personal responsibility and collective coordination) is rarely available.

Essentially I agree with you, here, I don’t think there is any elegant and complete solutions to our complex problems. It is always an on-going process.  



12 Nov 2006 @ 12:09 by lugon @83.41.219.252 : solve a flu pandemic
no comitee can solve a flu pandemic or help us prepare for it - Europe is a comitee - we're doomed, maybe  


18 Nov 2006 @ 20:01 by Jon Husband @24.84.250.94 : And ...
best of all Dabble is out of Vancouver ;-)  


18 Nov 2006 @ 20:04 by Jon Husband @24.84.250.94 : Do You Know About ...
Thingamy ? The guy that has built it is not far from you, Flemming .. just outside of Nice.

[link]

From the website:

"One single system to run your business.

No need for other enterprise software nor middleware.

No need for hierarchies nor information tree structures.

No need for management to run the workflow.

Enter the future at your own pace, start small or big.

Refine your business model and processes continuously.

And yes, you're not the first to utter unbelievable, bollocks, bullshit, etc. under your breath.
We like that, leaves us only one task: Prove that the system actually works.

Would that not be kind of cool if we did?"  



19 Nov 2006 @ 21:18 by ming : Thingamy
Cool. Hard to wrap one's mind around. I just watched the video. I've better write something about that.  


29 Apr 2016 @ 05:04 by Lilly @188.143.232.32 : BXYgcbNLVRcQw
I was wondering if you ever coniedsred changing the layout of your website? Its very well written; I love what youve got to say. But maybe you could a little more in the way of content so people could connect with it better. Youve got an awful lot of text for only having 1 or two images. Maybe you could space it out better?  


23 May 2016 @ 03:30 by Arnie @188.143.232.32 : RRSWwSEuynNPJLrek
compares various [link] find motorcycle ask him [link] avenue marketing most cases [link] roadside assistance deplete [link] collision comprehensive sort [link] apartment buy best cheap [link] insurer  


25 May 2016 @ 11:02 by Kris @188.143.232.32 : tiCiENsFedKZD
[link] http://clearwater-retreat.com/rodents-chewing-car-wires-insurance.html [link] http://rvdynasty.net/insuring-learner-drivers.html [link]  


21 Jul 2016 @ 18:01 by Kiona @188.143.232.32 : gbmSzFiWBgmlxXB
[link] http://www.insure.liquorisquicker.net/ [link] http://autoinsurance.flnet.org/racv_insurance.xml [link] http://rates.dynu.com/cheap_insurance_missoula.xml  


12 Sep 2016 @ 07:25 by xender for pc @61.1.66.245 : xender for pc
xender for pc  


31 Oct 2016 @ 05:44 by snapchat download @180.215.119.207 : ewqv
hi [link]
good [link]
post [link]
snapchat windows [link]
snapchat for linux [link]
snapchatdownload [link]
snapchat app [link]
mac [link]
ios [link]
android [link]
windows [link]
app [link]
ios [link]
android [link]
windows [link]
ios [link]
mac [link]
android phone [link]
windows phone [link]  



1 Nov 2016 @ 18:13 by raksasapoker @42.115.2.44 : agen poker
The pressure for war is mounting. The people are opposed to it, but the Administration seems hell-bent on its way to war. Most of the Jewish interests in the country are behind war.I shall
praturan
[link]
jadwal
[link]
promo
[link]
panduan
[link]
main
[link]  



5 Nov 2016 @ 04:22 by Carrieann @188.143.232.32 : xIeqlrCCjIyaNwqtkjb
http://bestekfzversicherung.top/kündigungsfrist-kfz-versicherung.html  


23 Nov 2016 @ 06:33 by Theresa @188.143.232.32 : PmzLcTqAHErH
http://kraftfahrzeugversicherung.pw/zürich-autoversicherung-agb.html [link] http://hausratversicherungtest.top/kfz-haftpflichtversicherung-was-ist-versichert.html http://kfzversicherungsvergleich.club/unfall-zürich-versicherung.html  


25 Nov 2016 @ 08:19 by AgenQQ  @116.212.141.50 : SejarahQQ.com Agen DominoQQ Online
Thank your site! information your share is useful to me!  


25 Nov 2016 @ 10:37 by SejarahQQ @116.212.141.50 : SejarahQQ.com Agen DominoQQ Online
Thanks for your post. Click to play !  


30 Nov 2016 @ 17:55 by Patience @188.143.232.32 : WqRsSsmMEdHcC
[link] http://kfzversicherungjetzt.top/versicherung-typklasse-bmw-1er.html [link] http://kreditevergleichende.info/hauskredit-deutschland.html [link]  


6 Dec 2016 @ 23:46 by Shirley @188.143.232.32 : BOvANyliuoiM
http://besterkredit.top/spar-und-kreditbank-öffnungszeiten.html http://besterkredit.top/musterbrief-bearbeitungsgebühr-kredit-bank.html [link] http://guenstigekredite.tech/azubi-kredit-nehmen.html  


7 Dec 2016 @ 19:08 by Lexus @188.143.232.32 : RpJmPAcdnfFz
[link] http://krediteonlinevergleichen.top/nebenberuflich-selbstständig-kredit.html [link] http://bestekredite.online/online-bank-vermittler-immobilie-kredit-ändern.html [link]  


15 Dec 2016 @ 17:02 by Burchard @188.143.232.32 : zgpiHcjdYjDCQwWBaSCr
[link] http://mehrerekrediteonlinevergleichen.pw/vergleich-kleinkredit-geld-überweisen.html  


18 Dec 2016 @ 01:57 by Avari @188.143.232.32 : hSKqSQLOCu
provide protection [link] insurance claim city where [link] pay joint [link] plane offering more [link] stop sign  


25 Dec 2016 @ 01:21 by Wednesday @188.143.232.32 : IGreXBJHHQKLalXA
[link] http://exklusivekreditangebote.top/schnellkredit-scott-dann.html  


25 Dec 2016 @ 16:09 by Boog @188.143.232.32 : ohvDDVCfDlJBg
[link] http://guenstigsterkreditfinden.pw/kredit-aufnehmen-ls-2013.html [link]  


3 Jan 2017 @ 03:38 by Reignbeau @188.143.232.32 : RDqmRvrmMmQqnelpevBP
http://www.perezgraphics.com/kredit-günstig.html [link]  


Your Name:
Your URL: (or email)
Subject:       
Comment:
For verification, please type the word you see on the left:


Other stories in
2014-09-27 00:04: You must be an expert by now
2014-09-26 15:15: Brevity
2011-11-06 21:33: Counting what counts
2011-01-23 13:46: Authenticity
2010-08-23 01:31: Semantic Pauses
2010-06-27 02:28: Doubt
2009-10-25 17:04: Opinions, perceptions and intuition
2009-10-15 08:32: Abstraction
2008-06-29 16:47: Complicated and Complex
2008-02-20 16:39: The universe as a virtual reality



[< Back] [Ming the Mechanic] [PermaLink]? 


Link to this article as: http://ming.tv/flemming2.php/__show_article/_a000010-001708.htm
Main Page: ming.tv