It’s just data

Radical Simplification

My contribution to this effort.  (source)

Its a bold concept. I have to admit I’d never have believed an IBM’er would stand up and ask “Do we really need "middleware"?” I’m not convinced that its possible to break down applications like Websphere and MQSeries into a disparate set of services.

The REST model makes sense - its almost an extension to the JavaBean get/set methods. But the web-centric view of REST I believe is an advantage.

One of the technologies I thought would help simplify the Websphere monolith would be AspectJ (another IBM-led technology, and already starting to be used in Websphere, IIRC).

Best wishes for this initiative.

(Hmm, your spell checker offers “Miseries” as a replacement for MQSeries ;-)

Posted by Isofarro at

Isofarro: I have a reputation for being somewhat “provocative” in the hopes this causes people to revisit their cherished assumptions.

Posted by Sam Ruby at

This is beautiful, Sam. I have a “we have arrived” type feeling going after running through the slides.

Posted by Ryan Tomayko at

OMFG, Sam, I’m getting “?” interpolated for apostrophes. I thought you had all that stuff figured out. :)

$ curl -si http://intertwingly.net/slides/2005/rs/56.html
HTTP/1.1 200 OK
Via: 1.1 <snip>
Connection: close
Proxy-Connection: close
Date: Tue, 12 Apr 2005 20:09:07 GMT
Content-Type: text/html
Server: Apache/2.0.46 (Red Hat)
Vary: Accept-Encoding,User-Agent

...

Is it utf-8?

Posted by Ryan Tomayko at

Ryan: fixed.  Thanks!

$chunks[$i] =~ s/\x92/&rsquo;/g;

And to answer your question, it was win-1252.

Posted by Sam Ruby at

RS: Brainstorming

My favourite slide from a great presentation by Sam...

Excerpt from del.icio.us/tag/rest at

Everything I ever wanted to say about the current state of software development in ~50 slides. Thanks, Sam....

Excerpt from del.icio.us/tag/rest at

RS: Brainstorming

My favourite slide from a great presentation by Sam...

Excerpt from del.icio.us/inbox/whump at

RS: Brainstorming

My favourite slide from a great presentation by Sam (link) [del.icio.us/distobj]...

Excerpt from Web Things, by Mark Baker at

radical simplification

looks like half the industry is fighting the complexity monster, while the other half is busy adding more. i hope...... [more]

Trackback from Gregor J. Rothfuss

at

SELECT * FROM users WHERE clue > 0

Click through this: [link]...

Excerpt from blog.jj5.net at

Isofarro wrote: The REST model makes sense - its almost an extension to the JavaBean get/set methods.

HTTP was designed as a distributed realization of the Objective C (originally Smalltalk) message passing infrastructure: the first few bytes of every HTTP message are a method name: GET or POST. Uniform Resource Locator is just the result of squeezing the term object reference through the IETF standardization process.
— Dan Connolly

[link]

Posted by Robert Sayre at

RS: Radical Simplification

[link]...

Excerpt from del.icio.us/tranqy at

Application development using IBM programming models and tools is untenably complex

So IBM is working on Radical simplification of software development. And according to Sam Ruby this means asking questions like Do we really need "middleware"?. Have a look at Sam’s slides, they’re worth going to.......

Excerpt from Bertrand's weblog at

Sam Ruby: Radical Simplification

Its a bold concept. I have to admit I’d never have believed an IBM’er would stand up and ask “Do we really need "middleware"?” I’m not convinced that its possible to break down applications like Websphere and MQSeries into a disparate set of ser...

Excerpt from del.icio.us/tag/rest at

Isofarro : Radical Simplification - Sam Ruby asks ‘Do we really need middleware’ - provocative and inspiring...

Excerpt from HotLinks - Level 1 at

[Programming] Sam Ruby on Radical Simplification

Sam Ruby recently posted Radical Simplification, a set of slides that he says are his contribution to IBM’s “Radical Simplification of Software Development” effort. Although it would be far better if you could read the presdentation in sync with an...

Excerpt from The Farm: The Tucows Developers' Hangout at

dhh: IBM pledge to pursue Radical Simplification

It’s dawning on the big guys that perhaps things have gotten just a tad out of hand with the complexity in Kingdom of Enterprise. As makers of WebLogic and pushers of deep and tall J2EE stacks, Big Blue has certainly been more than willing to...

Excerpt from Planet RubyOnRails at

Perceived Usefulness

Sam Ruby has posted a slide set from a recent talk on open source. It includes this: Larry’s Psychological Conjecture: For normal people, the perceived usefulness of a computer language is inversely proportional to the amount of theory the...

Excerpt from Pyre at

In Order of Importance?

The inimitable David Heinemeier Hansson points out that in a recent set of slides by Sam Ruby, Rails is the fourth item from the top on a list of things Worth Watching. What’s item number three? Continuations. Sam also brings us Continuations for...

Excerpt from HREF Considered Harmful at

I don’t get it. Are you saying I could debug Tomcat in an hour from a standing start? Seems unlikely, but that’s the way the slides read.

I understand why ReST is better than all that WSDLing but what’s the actual proposal for really simplifying software development here?

Isn’t this the return of the perennial theme? EVERYONE thinks software development is too hard and why don’t we sit down and simplify it? And then they find it can’t be done :

[link]

Posted by phil jones at

Phil,

I claim that an experienced developer could download the sources to Tomcat and make a trivial but visible change and be able to see the results of their change in about an hour, all without any assistance.  This is important to maintaining a steady stream of new developers once previous contributors find that they no longer have an itch to scratch.  Why I included it, was that I wanted to back up my thesis that “Zero Training” was the real goal.

Take a look at the videos on Ruby on Rails for concrete examples.  Also related (at least to me) is Doc Searls' Customers to airlines: go fork yourselves and Dan Connolly’s Web Apps essay.

Every once in a while, this industry produces a spreadsheet - something simpler than what came before it, and thereby empowering an entire new class of people to be able to solve problems with computers.

Posted by Sam Ruby at

Ah! It’s clearer now I see all the slides. Missed a few of them before. Sorry.

I almost completely agree. Still, I reckon Java, C# are over on the too complicated side of things.

And I realize the reason I think that, is to do with the “view-source” principle.

I’m a great believer in it, but it only works with interpreted languages that don’t have a compile / build phase. Because how you do the compile / build isn’t itself readable in the source-code. (C’s not so hard to read syntactically but finding and linking the appropriate libraries is a bugger.)

That’s why I don’t believe the “one hour” claim for Tomcat or PHP. I have to know too much extra context about the environment, where the javac compiler is, what and where the config and JAR files are etc.

Source code in Java or C is not self-describing, because it doesn’t contain all the information you need to make your changes work.

The key to simplicity is this self-description and that really implies  that the context is completely encapsulated by the environment.

For example, if I look at HTML source for a page, I can see how it works. If I make a change, I just load my modification into the browser and it works. I don’t need to know or link with anything else. (Ok there are other files included, but if I’m using absolute addresses then I still get them.)

Scripting languages on Unix are similar. If I read a Python script, first line says “#! /usr/bin/python”. Tells me where the interpreter is. Or if I don’t have an example, there are easy discovery tools like “which python”.

Java and C, C++ (and I suspect C#) don’t work like this. There’s no zero training because a complex environment itself needs to be learned.

The interesting take-home message from the Brooks paper I linked above is that all the wins (like high-level languages, spreadsheets, garbage collection etc.) are based on one-off solutions that address particular, contingent, pain rather than some general principle of making things simpler.

So I guess my suggestion is that the next win (which will enable view-source, and what’s right about scripting languages) is to get some kind of encapsulation of the context within an interface which allows discovery of everything you might possibly need to make modifications.

Maybe like a DOM for the operating system or a weblike interface for it (so that I can hyperlink from source-editor to the config. files, or “Google” for the location of the JAR file) etc. It might mean that Operating Systems have to become more sophisticated self-contained virtual machines (like Smalltalk), though this militates against the virtues of flexibility and TMTOWTDI modular systems  like Unix.

Posted by phil jones at

I base my “1 hour” comment based on personal experience contributing to both communities.  Perhaps it is nothing more than a reflection of the fact that I am not easily intimidated.  But I believe that the ability to download a tar file, explode it, check a README, and issue a one line build command is actually a quite significant factor in the success of both communities.

Posted by Sam Ruby at

For example, if I look at HTML source for a page, I can see how it works.

I am so tired of hearing this old canard.  Take a look at this page and see how long it takes you to repost the page on your own site, but changing the color of the comments in the Javascript source code example from red to green.  Post the link to your modified page and tell us how long it took you.  (I recently did this, so I know how long it took me.)

Posted by Mark at

Mark, the point isn’t to praise HTML by saying it’s always easy to find out through “View Source”. Sure, sometimes HTML is (of necessity) too complex and context dependent to learn much about that way.

The point is that view-source gave us a clue as to how easy it could (and maybe should) be, and now it’s clear that the only thing holding us back is the current way the data and tools are organized.

The ideal situation would be that every  chunk of every piece of software had the equivalent of the wiki “Edit this page” button that would take me directly to the source code to modify it. (Possibly, respecting the relevant permission regime.)

Don’t like the way a menu is laid out on my word-processor? Click here to change it. Actually, the menu’s fine but I want to change what it does. No probs, click here to drill-down into the library call it makes and look at that. Maybe it calls a service across the web? Just another click away, etc.

The Smalltalk environment was getting towards something like this in the 70s. Although it still organizes the code according to hierarchies in the object browser.

Now we have the experience of the web, which demonstrates  that 8 billion odd documents across the entire planet are available from nearly anywhere within a few clicks. So how come it’s still so painful to find the appropriate configuration file on my hard-disk? Or to get from a piece of code which uses a class to it’s definition? Or to find the bit of code that just caused that error?

That’s what I really want. Radical hyperlinking of everything in my context : from source code to configuration files to the environment to the documentation to the user interface to the back-end database to the people who wrote the code. All within the same interface.

This is what I think “view source” is really getting at. A kind of “transparency” for  things which are currently opaque and occlude our understanding.

Posted by phil jones at

Hey, Big Blue!

Let’s close out Friday in a mood of industry bonhomie, by saying nice things about an esteemed competitor, IBM. First of all, their Jim Stallings made some eminently-sensible remarks on the problems with software patents. Secondly, Sam Ruby not only...

Excerpt from ongoing at

Old canard? Ever try to “view source” on the X Windows protocol?

won’t be long now

Posted by Robert Sayre at

Good hackers work with what they've got

[File under squishy musings... -Ed.] From Gian-Carlo Rota’s Ten Lessons I Wish I Had Been Taught: Richard Feynman was fond of giving the following advice on how to be a genius. You have to keep a dozen of your favorite problems constantly present...

Excerpt from The Little Calculist at

Two things:

1. Imitating the prevailing style:

Internalizing the REST Style +1

2. On the View Source imperative in Radical Simplification.

In much the same vein, I’ve been bemoaning that in XPath, you need to write true() instead of true and the comprehension problems this causes for technology adoption: the friction such syntactic idiosyncracies impose on what would otherwise be viral memes.

My thesis “On XForms, XPath, CSS, Brevity, Syntax And More” is the following:

“One of the main questions that will determine the adoption (or lack thereof) of XForms or Web Forms [..] is the perplexing matter of whether human beings in the next decade will become as inured to writing true() in an expression as they have become with the angle brackets of html and xml. Put a different way, it could well be something completely orthoganal to the merits of the underlying technology that will determine the outcome: it will be the appearance of the kind of code you see when you do View Source on the first cool Forms application you encounter. I’m suggesting then that the language acquisition cost and what I’m terming the cognitive impedance in the average human being of parentheses for functions, and forward slashes for selectors will determine the adoption rates of XForms technology.”

The only thing left is to submit a proposal to the XPath working group to add a “Quirks Mode” in XPath 3.0 to treat booleans as literals instead of functions as a gesture towards the ability for naive end-users such as myself to hand-author XForms. I can already hear the howls.

Posted by Koranteng Ofosu-Amaah at

Sam, if you have time / find it worthwhile can you comment on this slide from RS and this one from [Attractive Nuisance [link]] — the intersection of view source, XML as an Attractive Nuisance and Radical Simplification? It seems that viewing source can lead to its own problems, no?

Posted by Elliot Metsger at

Elliot, I’ve argued for years about the value of view-source.  XML and HTML do a pretty good job in this regard.

But, they could do better.

In the case of XML and HTML served over HTTP, I would argue that that the definition of the charset in the HTTP content-type header should not override the definition in the document; the usage of the text/* mime types were a tactical mistake; and the making of the declaration of the encoding in the XML prologue should have been mandatory and a similar feature should be present in HTML.

In short, I believe that if anything, the authors of these specifications underestimated the value of view source.

Posted by Sam Ruby at

Entry for April 12, 2005

Radical Simplification...

Excerpt from Dave Liebreich's Blog at

Thanks Sam for the reply.  I’m doing my best to “get it” and wrap my brain around all of this stuff!  :-)

Posted by Elliot Metsger at

IBM Software Group: The Baby Eating Starts Here

One of the things i most admire and like about IBM is that its such a broad church. All views are present (and correct). All views are tolerated. Part of this is down to a 100 year culture of respecting the individual. The company lives...

Excerpt from James Governor's MonkChips at

Sam Ruby Presentation - Radical Simplification, Hello from the open source world

Great preso on how open source + transparency + simplicity = unanticipated innovations...

Excerpt from del.icio.us/claireg at

The power of view source

So I don’t have a whole lot of time to type all this out.  But there is a theme happening which has been blogged a lot about recently.  The power of view source and software complexity.  We have Craigs List overlaid on top of...

Excerpt from Scrapple Stuff at

The Opposite of Integrated Aggrevation: Request fo

Some examples to further the meme: these are some things that don’t suffer from integrated aggrevation issues. 37 Signals - Say Goodbye to BloatSam’s work (my commentary here)flickrgoogle.com I would really appreciate...

Excerpt from James Governor's MonkChips at

Trading off

How to apply web metadata, especially with XML formats has seen all kinds of tradeoff issues and arguments. From RDF to RSS to SOAP to WSDL, the common theme is an endless debate about complexity.

In this entry I wanted to talk about a bit about a complexity/simplicity tradeoff centering around extensibility and flexibility. Everyone loves extensibility, almost as much as simplicity in fact, and you will not hear many bad words said about the idea. Specifically I wanted to get specific and narrow it down to one issue - repository metadata in a format called DOAP.

DOAP is a format based on RDF for describing projects, by Edd Dumbill. It stands for Description Of A Project. It caused something of a shock when it was published, for two reasons. First it amply demonstrated that we had hardly any useful or interesting metadata about software projects. Which is terribly bad when you think about how much of the stuff we put out every year. Second, and this was far more shocking, it was a highly readable RDF/XML format. Shocking because, up to then, everyone knew, just knew, that RDF/XML was insanely complex and comprehensible markup simply could not be produced with it - there are approximately 5 wildly popular RSS formats based on that assumption and who knows how many other domain specific formats exist as a result.

... [more]

Trackback from Bill de hÓra at

IBM poop heads say LAMP users need to "grow up"

IBM says LAMP users need to grow up. Woodshed!Let’s do it: According to Daniel Sabbah, general manager of IBM’s Rational division, LAMP — the popular Web development stack — works well for basic applications but lacks the ability to scale. Nope....

Excerpt from Ryan Tomayko (weblog) at

When the cluestick hits the wallet

It’s amusing to see IBM suddenly get all uppity about open source. Apparently it’s just fine when it’s taking business away from Microsoft or Sun (Eclipse), but just awful when it’s taking business away from big buck products like WebSphere....

Excerpt from Smalltalk Tidbits, Industry Rants at

LAMP users need to “grow up”

In response to some bullshit by IBM, Ryan Tomayko says: IBM poop heads say LAMP users need to “grow up”: The need for complex systems in the enterprise was and still is greatly overestimated. The trick isn’t to make PHP more complex, it’s to make...

Excerpt from the ryan king at

On The Limitations Of Notes On The Web

Some contextOn The Limitations Of Notes/Domino On The WebIn the week after Lotus announces lots of innovation in the forthcoming version of Lotus Notes, with lots of great screenshots and undoubted enhancements, it may seem weird to post a short...

Excerpt from Koranteng's Toli at

REST - The Web Style

I give you the slightly updated slides to a talk I gave on Friday to the Lotus Workplace Architecture Board. The topic was REST - The web styleAn argument about an outlook on technology, on complexity, layering and leverage.(It’s also available a...

Excerpt from Koranteng's Toli at

On Bleach, Entertainments, Forms, Atom, Kiss and Sexy MFs

Some ruminations on pragmatism, Bleached Unobtrusive Dom Scripting (BUDS), Forms, Atom, XForms, Glue, Infopath, “Entertainments”, Kisses and the Sexy Mom Factor in Software...On BleachOn EntertainmentsOn Forms and Rich Web AppsDown the InfopathOn...

Excerpt from Koranteng's Toli at

PITTs: Naming An Aesthetic

I’m back from an eventful weekend escapade in London which will be duly blogged. After taking 11 rolls of film (I’m still an analog child in a digital world), I would hope there are some stories to tell.In the interim I give you a tongue-twisting...

Excerpt from Koranteng's Toli at

$continuation = \&return;

I just noticed Autrijus Tang’s concise explanation of continuations (via, via, but main post blogged earlier): Just today I tried to explain continuations to two fellow Perl programmers, and I came up with the notion that it’s just: $continuation =...

Excerpt from Keith's Weblog at

RS: Brainstorming

[link]...

Excerpt from del.icio.us/fansipans/design at

Atom Ships

The Atom format is done. Here’s Tim Bray on from the atom-syntax list: “...the remaining IETF process steps will not introduce material technical changes, and so format-10 is appropriate as a basis for implementors to go to work. So, implementors... to work.” This means there’s some administrivia, but the format won’t be changing... [more]

Trackback from Bill de hÓra

at

Atom 1.0 Ships

The Atom 1.0 format is done. Some details within....

Excerpt from Bill de hÓra at

Rails and Django Compared

I plan on diving deep into the two frameworks so instead of one large post, I’m going to make this a running series....

Excerpt from lesscode.org at

RS: Radical Simplification

[link]...

Excerpt from del.icio.us/tag/rest at

RS: PHP

[link]...

Excerpt from del.icio.us/tomkp at

The secret to winning is not losing

This is what extremely powerful looks like. This is what extremely powerful is like....

Excerpt from lesscode.org at

On Jeff Jones, IBM AR, and rewriting Powerpoint

Jeff Jones is an IBM AR guy that has a deep grasp of the underlying technologies he works on. He is also great at building and sustaining relationships and has ideas like this:  "I would rewrite PowerPoint to allow no more than 10 charts...

Excerpt from James Governor's MonkChips at

In which, I conjecture, I preach largely to the choir by linking to Sam Ruby’s Radical Simplification manifesto, couched in a neato S5 presentation. In particular, I liked the slide about the web, but it’s all good....

Excerpt from International Man of Transparency at

RS: Cognitive Dissonance

[link]...

Excerpt from del.icio.us/gcasper/business at

In Order of Importance?

The inimitable David Heinemeier Hansson points out that in a recent set of slides by Sam Ruby, Rails is the fourth item from the top on a list of things Worth Watching. What’s item number three? Continuations. Sam also brings us Continuations for...

Excerpt from HREF Considered Harmful at

Radical Simplification: Cognitive Dissonance

[link]...

Excerpt from del.icio.us/delano at

Ruby-and-Rails

I’ll confess: I was a bit of a skeptic in the beginning. Back in 2003, Tom and Joe McDonald, programmers with whom I work at Tucows, kept raving about the programming language called Ruby. At the time, I wasn’t terribly impressed. There didn’t...

Excerpt from TopTenSources at

RS: Larry's Psychological Conjecture

For normal people, the perceived usefulness of a computer language is inversely proportional to the amount of theory the language forces you to learn....

Excerpt from unalog at

RS: Larry's Psychological Conjecture

For normal people, the perceived usefulness of a computer language is inversely proportional to the amount of theory the language forces you to learn....

Excerpt from unalog at

RS: Open Source

radical simplification...

Excerpt from del.icio.us/frobot at

IBM poop heads say LAMP users need to "grow up"

That is to say, they don’t get it. This started out as a simple rant and turned into a decent sized essay on basic shared-nothing architecture and scaling down....

Excerpt from Ryan Tomayko at

IBM Poopheads say LAMP Users Need to "grow up"

That is to say, they don’t get it. This started out as a simple rant and turned into a decent sized essay on basic shared-nothing architecture and scaling down....

Excerpt from Ryan Tomayko at

[from kenr] RS: Radical Simplification

[link]...

Excerpt from del.icio.us/network/jcausey at

Close to the surface

Larry O’Brien: Give it a REST: Do problems about types and semantics arise with REST and POX? Of course they do. But, and this is the point that is skipped over by the WS-* salesmen, the same problems arise with WS-*. The very point of a...

Excerpt from BitWorking | Joe Gregorio at

STIGMERGY -MY ANT TRAIL IN CYBERSPACE

This ANT TRAIL - led me to learn the meaning of STIGMERGY and how it works to create such RADICALLY SIMPLE collaborative creations as WikiPedia , Open Source Software and termite “cathedrals” - and it gave me a better understanding of the power of...

Excerpt from Thoughts Illustrated at

RS: Radical Simplification

[link]...

Excerpt from del.icio.us/tag/samruby at

Get On The Bus

An open note to my some of my favourite loosely-coupled people Phil Wainewright , Jon Udell , Sam Ruby , Tessa Lau and Monsieur Feinberg amongst others (connecting once again). Glue Layer People | Technology Adoption and Systems Design | A lighter...

Excerpt from Koranteng's Toli at

[from 9jack9] A Comment By Mark Pilgrim

Before I move away from DHTML Behaviors I thought I’d bookmark this....

Excerpt from del.icio.us/network/bertrandom at

Links for 2007-04-02 [del.icio.us]

Dare Obasanjo: Some Thoughts on the Yahoo! Mail Web Service Dare has some good thoughts on the new web service. It will be interesting to see what apps get built. Rails 1.2 Performance Get the speed back. JavaScript: Simulating Time in jsUnit Tests...

Excerpt from techno.blog("Dion") at

Long Bets

Jerry Cuomo: I see several common threads... [more]

Trackback from Sam Ruby

at

Prognostication

It seems to be in the air. Sam Ruby plants a stake in the ground , and isn’t too shy to point at his track record . My turn....

Excerpt from ongoing at

Dynamic Languages

So, having spent most of my blog time on modeling, process and SOA I’d like to depart at least for now into something different. I have been coding up some samples, examples and experiments over the past few months and decided that given the...

Excerpt from Simon Johnston at

Blogosphäre (aus JavaSPEKTRUM 05/07)

Mashups als EAI 2.0, Atom, REST, Hadoop, Jabber und Erlang/OTP — dieses Mal wagen wir mit der Blogosphäre einen Blick in die Kristallkugel. Sam Ruby zeigt, wie man auch ohne XML und SOAP elegant “Web Services” bauen kann. Der...

Excerpt from JavaSPEKTRUM Blogosphäre at

RS: Brainstorming

[link]...

Excerpt from del.icio.us/mikeschinkel/rest-and-uris at

Simple

I descended into a simple blog link vortex - a couple notables: Bill de hÓra: All successful large systems were successful small systems Dare Obasanjo: My Website is Bigger Than Your Enterprise Ryan Tomayko Sam Ruby: Radical Simplification...

Excerpt from Panic From Fuzzy at

I tried to follow this link, but I got a 404 error:

[link]

It is disappointing that an organization like IBM can not keep its links current. I mean, if IBM can’t, then probably no one can, right?

Posted by Lawrence Krubner at

[from bmacauley] Sam Ruby: Radical Simplification

[link]...

Excerpt from Delicious/url/097ed2e204d9d47aeaaa742e326d0c70 at

Add your comment