March 2003 - Posts
Abstraction and Detail
(SOURCE:Daniel Berlinger's Archipelago
Put Abstractions in Code, Details in Metadata
I'm probably the last to realize that the obvious relation between the words 'Eclipse' and 'Sun' becomes interesting when you apply it to this Eclipse and this Sun.
Also, it's interesting to see that in the Eclipse logo, the Sun is being eclipsed by a Big Blue moon ;)
I found more interesting discussions about data modeling in the home page of Wilshire Meta-Data Conference. I did not know about that conference, but they have most 'data modeling gurus' as speakers.
In an interview to William G. Smith, he says:
'Other disciplines/players/vendors in the data world (the object-oriented crowd, and the data warehousing advocates) are painfully ignorant of the already-complete and fine data modeling techniques, and bring confusion, ambiguity, and retrograde movement to the table by trying to solve problems, reinvent wheels that have are done deals.'
'As for next step in career: I think an experienced data resource professional is the best candidate for an effective CIO, and data resource professional should set their sites on this position. I see CIOs that are technology/hardware nuts, and their data environments (and usually their application code environments) are inevitably terrible messes. I see CIOs that are application nuts, and their technology and data environments are inevitably terrible messes. BUT, if the CIO is a data nut, not only will the data environment be well organized, minimally redundant, well-documented, and under control, but so will the technology and the application/transaction code! If you manage data well, it is almost impossible to have a code or a technology mess! '
I'm not sure if I disagree with him ;)
At the end of the interview there are some links to other interesting interviews.
I've been reading Practical Issues in Database Management by Fabian Pascal.
The book gives you what it promises, focusing on some common issues when working with relational databases.
If you read his articles, you'll see that he is a strong supporter of the relational theory, and dismisses every other data modeling technique.
Even if his points of view are quite radical, I liked his explanation on why and when you want to store objects in a database.
His point is that a type is defined by some data and some operations you can apply to it. Sometimes, the data and the operations are quite stable and cross-domain. The operations that an application needs to do with it are similar to the ones that another application needs. A 'Point' type is in that category. You can store this kind of type as an object.
Other types, as a 'Customer' or an 'Order' are not agreed neither in its structure nor in the operations you want to perform on them. Both structure and operations usually change during the lifetime of an application. So you need to represent them in a way that you can easily change the structure and perform any operation with it. You cannot store these types as an object. You should take advantage of the excellent support in relational databases for changing the structure or operating with data.
With Excel 11 you can bind an XSD to sections of a worksheet and then get the XML for it.
I could write a blog entry in Excel, then open the XML Schema view in a task pane, drag XML elements from the Blog schema to the cells that I want to bind to them.
Then I can write a VBA script that gets the XML document and post it to a Web Service.
No, I'm not thinking Excel would be a good weblog client ;).
I’ve seen a really impressive demo of Word 11.
The first part showed how to write a document bound to a XML-Schema and post it to a Web Service. I already knew about this feature. I think it makes Word a killing app for content editing. I was somehow involved in the development of websites where journalists write and post news. They wanted to write in Word and we wanted just the data, so we had to extract it somehow. Now it will just work. If you are involved in this kind of application, Word 11 is a must-have. I want to write my weblog from Word, so when Scott adds a Web Service to post the news, I’ll try it, even if Don’s InfoPath solution seems better for this particular case.
When I thought the demo was over, they invoked a Web Service that returned some stock quote information, and that information was added to the Word document. The section where the data was added was somehow ‘linked’ to the Web Service. You could change the view of that data, so instead of showing the last quote, it showed the volume, etc, and change the view again, and you had the 1-year chart. Also, if you changed the stock symbol _in the document_ the data was refreshed! It is like they are monitoring when you change something in the document and calling the Web Service. This was really cool.
DeKlarit was nominated as a finalist for the eWeek Excellence Awards.
We just need to beat this WebSphere Studio kids ;)
I really liked the product and the concept. It is a 1.0 version so you should look at it as the beginning of something.
You can use InfoPath in two very different scenarios.
One scenario does not require IT involvement: power users could create their own forms, and use them as a better way to communicate inside the company. For example, instead of having free-form Word documents for expense reporting, they could define an InfoPath form, and that will make the management of the documents easier. The structure will be validated, they can be summarized, etc. There are no Web Services in this scenario. This 'just forms' approach could also be part of an IT project where the forms are part of a workflow defined by the IT department, etc.
The other scenario is the universal web service client. As Richard Tallent points out, the Web Services are not deployed in most companies, so this requires the IT department to embrace the Web Services idea and to use InfoPath as the client for their apps. It will be difficult for InfoPath to succeed in the short term for this kind of applications.
Deploying the InfoPath client will be an issue for any project that involves the IT department. IT won’t like it. It won’t be an issue if it’s pushed by power users inside the company, as if this happens is because it is already deployed.
I expect that someone could write a browser-based client for InfoPath forms, with less features and with a server side component (i.e. an ASP.NET page that performs the validations that the browser cannot). I also expect that MS will allow you to buy InfoPath without Office for a low price (ie $50-$80), but this won’t solve the deployment issue.
Don Box is right pointing that the need for a rich client is based on the fact that MS needs to sell Office, and the users are not finding good reasons to upgrade to the latest versions. InfoPath could be one.
On the other hand, I think the functionality that InfoPath provides as a Universal Web Services client could had been added to Internet Explorer. If it’s not there is because the browse war is over and there is no compelling reason for MS to further enhance IE.
I do not have bad feelings about Radio. It worked OK for me. The main reason to switch is that my Thinkpad T21's motherboard is dead, and I cannot access my Radio weblog until I get my hard drive content back. If I try to install Radio again and use the same weblog, I'll lose all my weblog's content, so I cannot do it.
That was enough to convince me that I need my weblog content where someone will back it up every day ;). It also convinced me that Radio's design is weak... I should be able to install Radio in another PC and continue blogging.
The other good thing is that I will remember my weblog's URL ;). Each time I wanted open my Radio weblog page in a PC where I did not have the link, I had to google for it.
Anyway, this is my new home. Thanks Scott.