Final thoughts on stepping up & the nifty fifty
Just read this comment on Ed’s site from one Carl Eldenhearst:
Dream on. If IBM was going to do this, it would have been done. And openNTF’s concepts are great, but the templates are nothing special.
Good to see that constructive debate is still alive and well eh?
Anyway, I don’t think a resolution is going to come any time soon on this whole issue. So I guess we carry on as we were. One note of caution however is this: my experience of Lotus Notes and Domino developers in the UK is that the vast majority are are not au fait with the “Domino community” that’s out there, specifically things like the ’blogs, OpenNTF, Lotus User Group, dominoblogs, and so on. So in the discussions around provision of templates, sources of code, I wouldn’t lay too much weight on resources like those I just listed: there are just too many nine-to-fivers who pay these things no heed...
... Which is pretty sad. As a developer in any technology, if you don’t lift your nose from the grindstone from time-to-time, take a look around, you really miss out on what’s going on—and if you’re not careful, your code will start to smell!
Posted at 09:28 GDT on 03 Aug 2006 | Categories: | |
lotus notes domino
nifty fifty (10 comments)

Sean---
As for time, well my job is stupidly demanding. I work shed-loads of overtime. I also have a long commute, three young children, and a wife who assigns me tasks in addition to people who request stuff for DominoWiki. You can fit it all in if you really want to...
http://www.timtripcony.com/blog.nsf/d6plinks/GUIN-6SC5F3
I'm working on a personal project to use DXL to apply UI styles to existing design elements, which goes a step further than just using a template.
Re your DXL project—good luck! I started down that route with an action bar processor (the download is in articles), but never got around to extending it. It also throws random DXL processor errors from time-to-time... meaningful error logging isn’t quite there yet
@6 - Openslice...saw the reference to it over on John Head's blog and have spent a little time investigating. Looks very promising, and very familiar in some respects, both to my own aforementioned "standard architecture" and to what ITFactory developed back in the day. One of the interesting bits was that it appears to make liberal use of CSS in the Notes client, so would appear to at least partially "skinnable".
Which brings up a larger point, which is the distinction between UI and *architecture*. On another related blog entry here on Ben's blog (http://benpoole.com/weblog/200607312241 the two concepts seemed to get tangled up. If there is a "nirvana" to which we should all strive, it is not a "common UI" but rather a "common architecture with a skinnable UI".
What I'd like to see is a sort of online Birds-of-a-feather collaboration effort to 1) spec out what sort of building block modules should be built, 2) identify best examples of each and allow interested parties to collaboratively improve them further, and 3) ensure that all modules share common CSS "hooks" so that collectively they can be skinned.
What I'm proposing amounts to establishing a sort of "open-source best practice standard" for Notes development, and to the extent we have a head start in the form of the Openslice example, it might actually be doable. I say *might* because if the resulting collection of code is not understandable by what Ben refers to as a "reasonable developer", it will likely be more trouble than its worth. ITFactory's efforts to achieve a similar goal collapsed in part because the learning curve for their "system" was so steep. A cautionary tale if ever there was one.
I suspect the UI / architecture thing gets wrapped together a lot because of the natre of the Notes client. On the one hand Notes was extraordinarily ahead of its time in terms of eeping data and design separate (e.g. the form vs. the document), yet on the other hand in reality the two are often quite closely linked. And what’s more, until Ytria and DXL came along, we had a bloody hard time updating the UI of a Notes client application in one fell swoop.
CSS in the client helps a little, but it has a way to go eh. And even then, without the common “hooks” into standard CSS links, a common architecture with a decent way of skinning the UI is a little way off. Can’t hurt to give it a crack though!
Looking back, what was exciting (at least for me) about their modular approach to Notes coding was how similar it was to my own approach, albeit theirs was vastly more mature from an engineering standpoint. Making everything configurable, "componentizing" pieces of functionality using subforms, etc. Even openslice seems to have adopted similar conventions to the ITFactory architecture, especially in terms of design element naming.
I learned a lot from the experience, and have since pieced together what I sometimes call a "mini-ITFactory" architecture that I have used repeatedly to quickly overhaul apps at various clients. Teamstudio and Ytria have helped tremendously in these endeavors as well, particularly in terms of hooking pre-existing design elements into the new standardized architecture.
The PROBLEM with the whole "standardized architecture" approach is that it requires a discipline that is hard to instill in other developers you may work with, to say nothing of developers who may not have you around to show them how it works. It can work great (and has) in a "queen bee" development environment where a lead developer oversees the work of several junior developers (who haven't picked up bad habits yet
I still think there is tremendous value in having something akin to an "open source ITFactory" that encapsulates the best of openslice et. al. and gives those of us willing to embrace the necessary discipline a powerful tool that doesn't require licensing fees. It could be an OpenNTF project in its own right (or several, each focusing on a specific area of functionality, e.g. Agent Management, Modular Validation, or Logging), and I suspect it would probably spark a flurry of new OpenNTF projects based on that architecture - something akin to plug-ins perhaps. I don't know how much easier the effort will be with CSS and DXL as potential tools, but it certainly looks like the talent is out there, we just need to get organized.