Bindings, Platforms, and Innovation
This presentation focuses on the Internet and separating myth from fact, history from the future, and the mundane from the imaginative. Bob Frankston presents a vision of what could and should be.
Tracking change and innovation in the enterprise software development community
Posted by Deborah Hartmann on Jun 01, 2006 02:03 PM
We human beings, so often capable of complex thought, paradoxically also long for something often called "simplicity". A well known example of deep reflection on the subject is Thoreau's "Walden", published in 1854, a social critique of the Western World examining aspects of humanity that needed to be either renounced or praised. But this tension is surely as old as man."Simplicity - the art of maximizing the amount of work not done - is essential"But the term is somehow deceptive - surely simplicity should be, well, simple?
"Technical skill is mastery of complexity, while creativity is mastery of simplicity."The Agile approach invites us to consider which of these is necessary at every moment: technical skill or creativity. Each is valuable in its own right, and when well balanced against one another and focused on customer goals, both can contribute to the creation of extraordinary business value.
Effective Management of Static Analysis Vulnerabilities and Defects
Give-away eBook – Confessions of an IT Manager
The Agile Business Analyst: Skills and Techniques needed for Agile
This is true in so many human endeavours, from writing a short story, to making an email concise, to making a software system 'simple'. It's often worth the effort, but it certainly isn't easy.
Take the famous Blaise Pascal quote:
I have made this letter longer, because I have not had the time to make it shorter.
It takes EFFORT to keep things simple. It's easy to cut-n-paste your way to code-hell, it takes effort to identify opportunities for reuse and refactor out common code. At work a lot of what I do is to encapsulate the complexity of something we're trying to do so that the other team members can use what I've done to very simply solve similar problems over and over again.
Take for example XFire. There's a lot going on under the covers, and even understanding it and configuring it is too complex to have to do more than once. But now that it's configured, people on my team can just annotate their classes with an @WebService annotation and the bean will be automatically registered as a web service.
Don't let the term "simplicity" fool you. Simple != Easy.
Take the famous Blaise Pascal quote:
I can definitely sympathize with that. Take InfoQ.com for example, the UI was designed to be as simple as possible, but we had to jump through many hoops to get it that way... Even editorially, I spend a long time trying to write news items in as concise a way as possible, to make them as clear and easy to understand as I can. That takes a LOT of effort.
I have made this letter longer, because I have not had the time to make it shorter.
It takes EFFORT to keep things simple. Don't let the term "simplicity" fool you. Simple != Easy.
This presentation focuses on the Internet and separating myth from fact, history from the future, and the mundane from the imaginative. Bob Frankston presents a vision of what could and should be.
This article explores the use of JBoss and jBPM to implement design solutions that effectively address the issue of orchestrating long running activities.
This presentation covers the use of graph databases as an optimal solution for data that is difficult to fit in static tables, rapidly evolving data or data that has a lot of optional attributes.
This session introduces Real Options and shows how it can help in running your project. Real Options is a decision-making process that can be used to manage risk.
This article discusses the use of bindings on services and references (including the instance of non-configured bindings) as the means to implement SCA communications in a Web and SOA environment.
After a short introduction to DSLs, Scott Davis plays with the keyboard showing how to approach the creation of a DSL by typing working snippets of Groovy code that get executed.
IBM Rational and InfoQ present, Scaling Agile with C/ALM, an eBook showing organizations how to become “finely tuned software delivery machines” by enabling team integration and scaling.
Amanda Laucher presents a real life enterprise application written in F#. She shows actual code snippets, explaining design decisions and suggesting how to use some of the F# constructs.
3 comments
Watch Thread Reply