Monday, December 06, 2004
Software Factories
The first thing to keep in mind, is that there is a war going on. The combatants are familiar: Microsoft and a few friends on one side, eveybody else on the other. As somebody once said, "the first casualty of war is truth".
One of the main principles of the software factory idea from Microsoft is that of "Domain Specific Languages". Fankly I am having trouble accepting the idea as useful for large scale developments in large development shops. I can see how it might work well with a team of A-Team programmers. But when dealing with 9-5 programmers - those with lives away from programming, I think having a dozen DSLs within the organization will be too much to handle. These DSLs will be on top of the general programming languages we already have. At least for the next 10 years. The average Joe doesn't want to learn that much.
On the other hand, I can see the counter argument. As Grady Booch points out, " In many cases, the semantics of the UML are pretty close to what you need" (December 3, 2004), UML is not exactly what you need - just close. There is often an impendance mismatch - which means you lose power, perhaps introducing distortion. The DSL approach says create exatcly what you need and use that - the mismatch is avoided.
The difficulty I have with that is that it may just be moving the problem. Now the programmer has to deal with a dozen different interfaces (DSLs). Is the programmer more likely to make a mistake in the coding? Would there be 'Whoops - that would have been the way to code it using DSL#34, but in DSL#93 it is done this way, becuase of what we learned when we used to use DSL#67. "
Grady also said, "we do disagree with Microsoft's rejection of the UML in favor of proprietary domain-specific languages". At first is wondered from where he pulled the word "proprietary". That word to me usually implies 'closed', 'owned', 'not generally available'. I thought these DSLs could be open, public, generally available. But then when I consider the number of them that could exist, I realized that proprietary is not so wrong.
Enough for now. This Software Factories versus MDD (or MDA) battle will be ongoing for years. I don't either will win, but both will declare victory.
Wednesday, September 22, 2004
Java over-engineered?
What I think is most interesting is that I think he is comparing typical solutions built on those technologies rather than J2EE and .NET. Ya I know - semantics.
Anyhow, he goes on to blame this on "cross-platform compromises" and "textbook OOP".
Hmmm.
In the many commercial grade J2EE code bases that I am familiar with (high volume web banking and brokerage web sites), I can't say that we have made many cross-platform compromises - very few in fact. But when we do, we usually encapsulate the dependency, and put a factory in front of it. This add layers and makes the code more opaque. That is certainly true. But, as I said, we don't do that very often. Would stored procedures made the code simpler? I don't think that would be true either. In our case, it would add another layer!
What about textbook OOP? Is that a bad thing? Must be. I am wondering if what is observed is a tendency to make things overly abstract, overly decoupled - perhaps even overly reusable? The motivation is good - planning for change. It is often done with a view to save money in the future, without looking at the ROI. I think that too often we spend two dollars today to save a dollar next year.
.NET does not have any redeeming features that will save it from the same fate - (except maybe an army of VB6 programmers who haven't seen an OOP textbook!). Given time it will build it's own empires. Perhaps with the help of Microsoft! Chris Anderson and Miguel de Icaza exchanged some volleys about the complexity of Avalon see here and here.
Wednesday, September 01, 2004
PHP versus Java
Of particular interest was this quote. in the journal "ACM SIGMETRICS Performance Evaluation Review, Volume 31 Issue 3" there was an article called "A performance comparison of dynamic Web technologies" where Perl, Java server technolgy (also tomcat) and Perl was benchmarked in a labratory environment. It was concluded that Serverside Java outpreformed PHP and Perl by a factor 8. The abstract also states, In general, our results show that Java server technologies typically outperform both Perl and PHP for dynamic content generation, though performance under overload conditions can be erratic for some implementations.
Monday, August 30, 2004
Gartner says WSDL is a critical standard
More on Rich Clients...
The IBM workplace technology seems to be gaining some traction. Stephen O'grady has written up an analysis of what some other vendors are proposing to do on top of it.
Actuate's plans are intersting for two reasons: 1)it is an open source business intelligence project, 2) it is built on Eclipse.
Tuesday, July 13, 2004
Rich Client Wars
There are those at the other extreme as well. The say there is nothing the browser can't do and notuing it shouldn't do.
I suggest that truth lies in the middle. I also think that the middle will shift over time - towards the browser side.
This posting at looselycoupled, by Phil Wainewright, talks about how the Yahoo purchase of Oddpost is an indicator of things to come - delivery of rich user interfaces within the browser. His main point is that Microsoft's Avalon is the wrong direction for the company to be taking.
He may be right. Time will tell. I think Microsoft has surely thought about that. I think they are hedging their bets - make the borwser irrelevant. Where you really wnat to work is in Microsoft Office (with a healthy serving of Sharepoint Portal Server and BizTalk server to help it out). Take a look at their Office Information Bridge. If Microsoft could get us to live in a purely MS-Office world, then the browser becomes irrelevant, as does Google, Yahoo, IBM, Sun, Java and Linux. Apple would still be around - after all it does run Office, and the Microsoft marketing department needs Macs to publish their material (look at the document properties for their PDFs - you'll often see something like "Mac OS X 10.3.4 Quartz PDFContext")!
Friday, July 09, 2004
Microsoft Project Competitor Released under Open Source License
Despite the price tag, it was not a major revenue contributor, so Niku decided to release most of the code to the community under a Mozilla license. The product contains a few licensed components from others that cannot be released, as well, they will not release the source for their scheduling algorithm - which they may patent. They will distribute the binary for that piece. You can find out more at the web site.
Steve Ballmer commented in his corporate email that "Microsoft needs to do a better job of convincing customers that the latest versions of its products are worth having" (clipped from cnet). OpenWorkbench for free, or Microsoft Project for US$600 - Microsoft has its work cut out for it!
Wednesday, June 30, 2004
Interesting Items From Apple's World Wide Developer Conference
So what is so attractive this week. Well, first off there is the dual processor 2.5Ghz G5. It's not new. But it is what goes with it that is interesting. Like the 30 inch Cinema displays! Gorgeous. A pair of those would be ever so sweet.
What else? Spotlight. This is Apple's search technology that will be part of the Tiger release of OsX. Think of it as Google for your desktop. The demonstration at the conference was very impressive. Speed was excellent. But I think effectiveness it the more important aspect. With spotlight you can save a search query and have it re-executed any time. Because of its speed, one should regret opening such a folder. I know that when I do a search on my windows machine, I plan on it taking some time.
Finally there is Rendevous. This might come in handy within our branch environment for application deployments with minimal configuration.
These are each very cool. Good work Apple.
Thursday, June 17, 2004
Loose Lips Sink Ships?
During World War II, the Japanese made huge balloon bombs that they release into the air to be carried to North America. The intent was to start fires and kill people. It was of some success. However, 'In May 1947, the New York Times wrote "Japan was kept in the dark about the fate of the fantastic balloon bombs because North Americans proved during the war that they could keep their mouths shut. To their silence is credited the failure of the enemy's campaign."'
Somebody once said about music that the anybody can play the notes, but the rests make the music. Perhaps something similar can be said about security and silence.
Tuesday, June 08, 2004
Smart Dust, Even Smarter Vacuums?
So what happens after we produce billions of Smart Dust devices and spread them pervasively (invasively) throughout our world?
Perhaps this could spawn add-on features for our Robot vacuum cleaners?
Not only could your smart vacuum cleaner take care of regular dust, it could seek out smart dust as well? And then what?
Do we need virus scanners for our smart dust? Can we run Norton anti-virus on our Roombas in order to separate 'good' smart dust from 'bad'? Maybe we will need a Smart Dust recycling program?
Wednesday, June 02, 2004
A New BEA Emerges From The Beehive
You need to be a customer to access the article. http://www.metagroup.com/us/displayArticle.do?oid=48577
Tuesday, June 01, 2004
California Passes Anti-Gmail Bill - Is this good
I have been using GMail for a month now. The text ads that Google has been placing on the right hand side have been very relevant. I find myself actaully reading the ads, and clicking thru many times a week. Are they invading my privacy? I don't think so - since I agreed to it.
If there must be ads on the web sites I use, then I prefer it the GMail way.
Wednesday, May 26, 2004
BEA donates Beehive to Apache
In October 2003, Crossvale (a research firm) published a report entitled “A Study in Enterprise Development Productivity”, subtitle “Comparing Implementation Approaches with J2EE API coding vs. Using a J2EE Development Framework”.
This report has been widely circulated by BEA as evidence that WebLogic is better than Websphere. However, in reviewing the report I found that they were really comparing the benefits of using advanced tooling to generate code rather than coding major portions by hand.
My conclusion was that BEA's WLW (WebLogic Workshop) may offer some improvements in our project delivery time, it also required a significant change in our infrastructure, and more importantly would require us to abandon our vendor neutral position.
On May 19 of this year, BEA announced that portions of WLW will be released to the open source community via Apache. The first code releases would be available later this year. It is a little early to gage the importance of this development. But given good market acceptance, this may be an importance addition to our tool set.
References
The Crossvale report
BEA Beehive Press Release
ZDNet News article
Friday, April 30, 2004
First Impressions of Gmail
I like the label approach to filing things, rather than the folder concept.
Good work, Google.
Wednesday, March 31, 2004
Infopath and Sharepoint Portal Server
Simple form design is very straightforward. Drag-n-drop form controls - very easy. When you want to publish the form to the SPS server, that too is very easy. It creates a portal page for the form with a simple click to fill out a form interface. The portal page can show any field values from the saved forms.
One aspect that I still need to work on to get it working the way I would like is the merging of multiple forms in order to aggregate the data into a single view.
Another area that I need to work on more is scripting.