The Pragmatic Craftsman         :: Simplicity from complexity :: | About Me |

You are here: The Pragmatic Craftsman > Buzzwords

New version of HTML: 5 August 9, 2007
Simple Intro to SOA April 11, 2007
Guice -- Spring killer? March 20, 2007
SOA Best Practices October 27, 2006
My SOA Views May 22, 2006

New version of HTML: 5

It's been some time since we had an update to the HTML language. Actually, it's been years! After such a long time, things are starting to heat up again. HTML 5 is the next worked-on version. By reading this article, below, I got a glimpse of what's coming. What can I say? A LOT of changes are coming. Nice improvement, in my opinion.

Hypertext Markup Language (HTML) 5 introduces new elements to HTML for the first time since the last millennium. New structural elements include aside, figure, and section. New inline elements include time, meter, and progress. New embedding elements include video and audio. New interactive elements include details, datagrid, and command.

Reference
New elements in HTML 5


Simple Intro to SOA

Simple. Precise. Without the use of buzzwords. The Uncle Bob's way.

Reference
What is SOA, really?, Uncle Bob


Guice -- Spring killer?

I don't think so, but it looks to me it's going to be a good competitor in what it aims to do: dependency injection. I don't know much about Guice, just heard about it couple of days ago, but the fact that it is coming from Google, it already has good following -- at least in the blogoshpere.

Personally, I like it already. I hate writing the Spring's XML files. I would much rather do it in Java. Guice claims to do that.

Spring is a good framework, no doubt about that. But you should not be too dependent on it. I know that's not always the case, which is not good.

Drink some juice, I mean guice. :-)

Reference
Guice: Spring Comparison

Guice User's Guide


SOA Best Practices

Excellent article about SOA. The article should be called Pragmatic SOA 101 -- hype free.

Resource
SOA best practices (need an IBM account), Mark Lorenz


My SOA Views

I have not done any SOA development yet. I've just been reading and hearing a lot about it. I'm reading the Enterprise SOA e-book at ACM.org now (my first on SOA; so far it is a very good book) and I just want to share some of my SOA views.

I think the Service Oriented Architecture (SOA) holds great promise. The key word is "holds" because, as of now, I think we mostly have a lot of hype surrounding it. There is too much hype and not too much actual implementation, because SOA has some issues that need to be adressed/resolved. There are certainly bits and pieces actually being developed, but that's not really service oriented architecture.

The potential of SOA is there. It enables reuse in dimensions never seen before. It enables the usage of different technologies. It gives you the ability to bring old technologies/projects back to life.

What I see happening is that you have a project that provides some functionality that you would like to reuse. Instead of putting this functionality inside your project (as a dependend project) you make it a service. This does not couple you with the project as before. And the project that you are dependent upon has its own life. It can change the DB, it can change the language it is implemented in, and a lot more. One thing that does not change is its public face, the API, the service contract. This really is exciting.

I think there are two very big problems, though. First, the complexity. It is still very complex to actually develop the self standing services. We have so many different techniques, and they do not really like to talk to each other easily. I am still lost in the midst of all the available technologies. I think that's changing and I hope a clear, easy to develop/understand standard will appear.

The second problem is speed. Calling a service is a network call. In the traditional way, where you have a dependent project, it is a regular function call. The difference in speed in the two is huge, I don't know the details but I'd guess a service call is at least 100 times slower. To mitigate this issue, good caching is needed. In this case, the service calls would be cached on the client. This way, only the first call for each service parameter values would incur the call expense. Not too bad. Certainly possible. But this just adds more complexity.

SOA promise is certainly there. It will happen. Probably in the next couple of years, in the next decade. There are still major issues with it, as I see it. But the major obstacles in my mind are complexity and speed.


© getCopyDate() ?>

Random Quote

Search

 

Topics

Architecture & Design :12
Better Coder :30
Books :43
Books Recommended :18
Buzzwords :5
Career :25
Craftsmanship :15
Java :15
Quotes :25
Recommended :9
Software Engineering :3
Uncategorized :33
Web Development :1

Archive

May 2008 (1)
April 2008 (2)
March 2008 (1)
February 2008 (1)
January 2008 (2)
November 2007 (1)
October 2007 (3)
August 2007 (3)

...since January 2002

Currently Reading


:: See list of books I finished reading

Info

© 2001-2008 Stanley Kubasek About me :: Contact me