administration mode

 

Bashing Domino »

FERDY CHRISTANT - NOV 22, 2006 (07:36:22 PM)

Last Monday, Jake had a stab at Domino. It resulted in quite an intense, but good discussion about Domino as a web platform in nowadays market. It is a discussion that has taken place over the last years. However, the discussion is getting more fierce because time goes by and nothing seems to ease the old pains.

Below is my take on some of the comments in that thread and how I currently feel about Domino. I'm not going to get personal, but I'm going to be very blunt. Just to get things of my chest, to do a reality-check, and simply because I care about the product.

I wonder if Domino is still the best platform for web development?

It is the worst web development platform I have ever witnessed, and I say that as a big promoter of Domino web development. It feels like web support is added as an afterthought, without proper architecture or vision. It may have cut it back in 1999, but it certainly doesn't right now. There is a reason why hardly any internet site runs on Domino. I do it, and many in the Lotus community do it, but that's about it, exceptions aside.

Not only is it cumbersome to develop for the web in Domino, the extremely unnatural way of doing things (read: work around the out-of-the-box functionality) can seriously screw up one's web development skills if you don't know any other platforms. I would even go as far as to abuse a legendary quote of Dijkstra concerning Visual Basic to illustrate the poor state of Domino web development:

“It is practically impossible to teach good programming to students that have had a prior exposure to Domino: as potential programmers they are mentally mutilated beyond hope of regeneration.”

Of course that remark was over the top, but this post needs the humour, trust me. It took me years to figure out, and many platforms to try out, but I can't make this any prettier: Domino web support is way behind other platforms. It really hurts me to observe this. The Lotus community is awesome, full of passionate enthusiasts with great personalities. We deserve something better.

So Domino is an unsuitable platform for web development?

I'm not saying that. I have used it for countless applications at work and also to develop Blogo. I now realize that there are better platforms to build the same applications, however this does not render Domino as useless to me. For instance, at work we use Domino as a very thin web front-end while the real web front-end runs inside a portal. In hybrid architectures like that, the strength of Domino's document-based database and workflow capabilities are combined with powerful web features of a portal system. For all-round web development, I think the Domino platform will stay as it is, but there are still jewels to be found.

If you think you know it all, why don't you request IBM support?

Because I have lost hope that Domino will ever be a serious web platform. There are many complaints outstanding for years, and I'm not seeing the solutions. Even if they were there, to me it feels like the base architecture is wrong, and only a drastic change could fix it. This seems to be consistent with IBM's strategy where a move to Eclipse/J2EE is promoted. In other words, the Domino engine will stay as it is, but will slowly evolve into something much different. If you intend to stay on the Domino platform, you're probably never going to see the improvement you have screamed for the last years. You may even have a problem, as that market is quite thin (I think).

The Eclipse/J2EE market is big, why not move along with IBM's roadmap?

This may not be a bad idea at all. To me personally, IT strategy at work has pushed my path away from J2EE. I did try to learn and practice it. My opinion is that J2EE certainly is a better web platform than Domino, but it has it own problems. Many in the J2EE community admit that J2EE has failed at being a successful web platform. It certainly has lost its momentum considering the rise of PHP and Ruby. PHP and Ruby succeed because they are designed and architected as a web platform, they do just that and they do it well. They embrace simplicity and productivity. Therefore, I have my doubts about IBM's Domino successor.

Can I continue to make a living of Domino development?

Maybe, but I think the question itself is wrong. One should not rely on a single vendor or platform to make a living. I know it is an idealistic statement, but it is my philosophy towards technology. It is good to be passionate about a technology but don't make it a religion before it bites you in the ass. Drastic changes in the IT landscape and market occur at a frequent rate, if you don't reevaluate your own strategy, you're in for a big risk. Remember, technology vendors like IBM have an agenda and you have your own. They do not necessarily match at all times.

I personally try to push it even further: one should not rely on technology alone to make a living. Learn to properly test software, architect it, specify requirements, so that you maximize your value and diversity in the ever changing job market.

How will I cope with having to learn all this new stuff?

Step one. Acknowledge that you need to learn it. In the long term, do you really think you have a choice? Or do you want to wait for a technology to be become obsolete? Or perhaps you think your job will never be offshored?

Step two. Position yourself so that you actually want to learn it. Without the passion to want it yourself, it is unlikely that you will successfully adopt to change.

Step three. Time management. It can be hard to combine study with your life but it is almost always possible. My strategy is to combine frequent short sessions with long deep sessions. There is always a way, especially if it concerns your future income.

Having said that, there are strategic choices to be made about what to learn, and its not an easy one.

To end this ramble I would like to make an ode to Jake. He pretty much alone pioneered advanced Domino web development in our community. I can hardly imagine the countless hours of voluntary work he has done to bring Domino development to a higher level. He deserves respect for that, from us, but also from IBM.

Final note: At one point in the aforementioned discussions, it was stated that large enterprises use Lotus Notes for email only, and that this moves the focus away from Lotus Domino. I don't claim to represent all those companies, but I work in a 110,000 seat Notes environment where the platform is used for pretty much anything. Sadly, it will probably not take long before we migrate away. Well, in fact the migration itself will take long but you know what I mean.

Comments: 20
Reviews: 4
Average rating: rating
Highest rating: 5
Lowest rating: 2

COMMENT: JEFF CROSSETT emailhomepagerating

NOV 22, 09:40:41 PM

comment » Ditto, ditto, ditto

I made the jump to the .NET world and I find it painful when I have to go back to the LND world. It's not easy to change, but there is no where else to go. Folks just gotta move on. «

COMMENT: FERDY

NOV 22, 10:05:57 PM

comment » Ditto here, Jeff. At work, it looks like we're moving into the .Net world as well. I have even used some of your articles to prepare a bit 18

Despite the changes at work I don't see myself moving away from Domino entirely in my hobby time. I still write articles about it and I maintain my Blogo product, which I use to run this site. I'm actually still quite enthusiastic about my Domino work for the community.

Nevertheless, since about 2 years I also spent a lot of time on PHP and occasionally J2EE. I look forward to adding .Net to my belt, and even Ruby. Domino is still in the picture, its just that it isn't my only choice.

In the end, they're just tools. I earn money with them and try to have fun with them. Who cares about anything else 21 «

COMMENT: TONY PALMER rating

NOV 23, 02:25:27 AM

comment » Good comment. You hit the nail on the head on a number of points.

1) Yes, I believe that Jake has lost his passion/mojo for Domino

2) It's not the fittest that survive it's the one that adapt to change, keeping your eggs in one technical basket is career limiting in this industry - even more so if you are running your own company.

Jake did great work when Domino web development was closer to the leading edge and gave inspiration to countless developer. However, the marketplace has moved on, new technology options are now available for web development.

Mabe its time to reinvent and invigorate....and get the mojo back.

Jake 2.0 ??? «

COMMENT: EGOR MARGINEANU emailhomepage

NOV 23, 09:23:40 AM

comment » Nice article, Ferdy.

I made the jump to .Net 2 years ago and J2EE 1 year ago. Now I'm learning Python and Django Web Framework. My opinion is that every developer should learn something new every year. «

COMMENT: HENNING HEINZ email

NOV 23, 09:55:16

comment » 110.000 seats? That should be enough to get an Ed briefing on site !?

IBM has excellent tools to scale up especially if you do not care about the hardware requirements (that should not bite that much for such a big company). As much as problems I see for small shops, IBM should be a good partner for a company of that size!?

I would not agree with your description of Domino web development. There is not much that I miss (but I am not a core web developer) but the fact that certain annoyances exist for years with no hope of being fixed anytime soon drive me nuts from time to time.

Keep up the good work and if you haven't done so maybe have a word with Ed Brill about your company. «

COMMENT: PATRICK KWINTEN homepage

NOV 23, 11:12:15

comment » I believe Domino is still a pleasant environment to develop in.

I agree that Domino is not the best WEB platform to develop, but customers are still amazed how easy it is to set up a Notes database and include all the workflow / security models.

Maybe some technically daring project would bring your mood again??

18 «

COMMENT: MICHAEL

NOV 23, 04:24:53 PM

comment » Well, certainly Domino is not perfect for web development but I've not seen anything that can compete with it in terms of productivity and efficiency for "document oriented applications". As usual, the idea is to get the best tool for the job as noone fits them all. The idea is also that a company should have a coherent archicteture (which sometimes implies to not use the very best tool for anything, but the best and most homogeneous combination)

I also think that developers tend to think that the more "low level" code they do, the more powerfull the platform is.

Take J2EE for exemple, beeing completely free is very cool sometimes, but many times you deal with complexity that should not exist anymore (persistence anyone ?).

I would also be very curious to know the developers reaction if they had to switch back to "command line" stuff like you do in RnR and stuff like that...is this really a progress ? What's the big deal with that ? Not having to deal with persistence ? my god...

And how many "monsters" each and everyone of you has seen built with those "hype frameworks"... «

COMMENT: FERDY

NOV 23, 06:51:24 PM

comment » Henning, I thought about that earlier, but there are IT committees in my company that deal with IT strategy at the CIO level. I'm a foot soldier, am happy with that and even agree with some of the reasoning behind this likely move. I can't share anything more I'm afraid, as this is an internal matter. I only used this example to illustrate that some big companies use Lotus Notes and Domino for much more than just email.

I guess I agree with you disagreeing on my criticism of the platform. Domino web development in itself takes a while to get used to, and after that I may not feel awkward anymore. The pain I feel is that everything around Domino is moving and improving rapidly, whilst Domino stands still. This triggers the question: do I also want to stand still, or will I move to something more modern and suitable that sells better in today's market?

Egor, couldn't agree more. I try to learn something new each year as well. There's a danger in it though. Before you know it, you know a little about everything, and thats it. It is sometimes better to limit the amount of education targets, but to do them well, resulting in deep knowledge and skills.

Patrick, yes, the workflow and security models rock. But I wonder, with the proper amount of architecting and reuse, can we not get the same productivity factor in other platforms? I think it can, my experience with PHP and limited experience with .Net tell me it can be achieved.

Not too sound arrogant, but I had my share of daring project in Domino. I also did some where Domino was not the ideal platform given the requirements. For my after work activities, I mostly like to learn new stuff, and Domino I feel I already know long enough.

Michael, I couldn't agree more with your "best tool for the job" point. But for web development, Domino simply isn't always the best tool for the job. It could be if it was taken seriously, but it is standing still. I agree with your point on J2EE as well, I don't consider myself a fan of it at all. I have learned that PHP and .Net do deliver in the area of rapid application development, so there are more choices than just J2EE.

I still love Domino web development, even though I stated before that I find it awkward. I'm productive in it and I think I know it well. I'm definitely not saying goodbye to it at all. Its just that over the years, my perspective on it has changed. I no longer see it as my standard choice. I now realize that there are many choices, and that often other platforms are much more convenient for web development. So, its a platform I have in my portfolio, and I use it when I find it suitable, without religiously attaching myself to it. «

COMMENT: MICHAEL

NOV 23, 10:05:39 PM

comment » I think that we could start a constructive approach and, for ex, setup a list of things we would like to be improved for web developpers in Domino. We could make a very clean, very pro document, and I think BP can post it in the BP forum or so and I'm sure it's get IBM attention. «

COMMENT: SASHA

NOV 24, 09:35:03 AM

comment » What has been said here is almost top value for every Domino developer. Domino has a lot of weaknesses and today Domino Designer is way too cumbersome to implement state of the art technologies on the web platform. I fully agree with Ferdy.

It must also be said that the client, still alive in most big corporate companies, offers lots of features over the web interface, and there are lots of applications alive for the client. Going to migrate them to a complete new and different platform will offer new knowledge but lot of pains too. For instance, developing a simple workflow application on Domino is a matter of a few hours, while doing it on a .net platform requires some days. Is this overhead really needed? Is it going to improve the business? I don't think so. We'll get the same application, shining for the new interface, rewritten from scratch, it'll take more than double of the time to implement and will offer the usual advantage: a new flow that better suits the new business model and more knowledge to the developer. So in the end it won't be that bad, but the same could be done with Domino in less than half of the time.... In the end there is still little that can't be done on Domino...

Just my 2 cents. «

COMMENT: MICHAEL

NOV 24, 10:20:29 AM

comment » Has anyone noticed that there is a session at lotusphere dedicated to "what's new in Domino Web App Server"...maybe some good suprises ;) «

COMMENT: BEN POOLE emailhomepage

NOV 24, 22:21:55

comment » Good post, especially with regards encouraging Notes / Domino developers to look at the other stuff out there. It flat-out scares me how many Notes & Domino developers focus solely on their platform. Dinosaurs! «

COMMENT: RICHARD SCHWARTZ emailhomepage

NOV 25, 04:02:08 AM

comment » Dijkstra never said that about Visual Basic. He said it about BASIC, a couple of decades before Visual Basic existed. And, by the time Visual Basic existed, the BASIC language had gone through extensive evolution, to the point where he never would have said that about it anyhow. «

COMMENT: FERDY

NOV 25, 11:05:33 AM

comment » Richard, my bad. I didn't give that part too much thought, I merely tried to add a humurous note the article. Emphasis on "tried" 21 «

COMMENT: ROB emailhomepage

NOV 25, 04:46:49 PM

comment » Dijkstra said what he did long, long, long before the invention of Visual Basic. And he didn't limit his comment to Basic; it included any non-structured language such as Fortran. The Basic in his day used line numbers to keep statements in order and had no subroutine calls. Can you imagine that. We edited with a command line editor on a model 33 Teletype that printed on paper. «

COMMENT: ROSS HAWKINS emailhomepage

NOV 27, 01:14:41

comment » Ferdy, I think you hit a very important nail on the head with the statement "One should not rely on a single vendor or platform to make a living". Maybe this is a horrible generalisation, but I know a lot of Notes/Domino professionals out there who made it their primary skill, and after a few years felt like their fates were intertwined with IBM's. You can spend years developing web applications, and at the end of it you've spent 25% of your time learning about good standards compliant development, and the other 75% of your time hacking Notes/Domino in order to support what you're trying to achieve. That ends up leaving you with a rather non-transferable skillset.

Having said all that, I'm still incredibly passionate about Notes/Domino and the things that can be achieved with it, but more and more it feels like it's the Betamax of the Web x.0 world. I still work with Domino, but these days I'm finding that as a consultant, 95% of my time is being spent in the world of .NET - the transition is something which was a little harsh to make initially, but it's something I'm incredibly glad I did, and it's also something which was driven by sheer market demands over here (it's also something that I wanted to write more about like Jeff, but never seem to find the time!).

Btw, keep up the good work with Blogo! «

COMMENT: MICHEL VAN DER MEIREN emailhomepage

NOV 27, 09:53:59 AM

comment » I am developing web applications with Lotus Notes/Domino for 10 years now, and I've seen much worse platforms than that. Now I have to program VbScript in an ASP based WCMS. It takes me up to 10 times longer to do the same as with my own Domino and XML based WCMS... VbScript has no errortrapping, just to name one inconvenience.

And the interface is about 20 times slower too. So I returned to Domino in my free time and started a blog on all the things you can do with Domino when you combine it with XML and JavaScript...

For my own blog template, I used Blogo for inspiration a lot. Thanks, Mr. Christant! «

COMMENT: DD emailrating

NOV 29, 12:48:27 PM

comment » Excellent Ferdy !!!. When future is at stake we have to find out ways to add tools on our tool box to keep ourselves employable. Tools doesn't always mean technical skills with various platforms .It can be any soft skill which can help us pay our bills. Life is not fair for domino developers but let's try our luck somewhere else .Not easy but do we have any option left ? «

COMMENT: PEJMAN emailrating

DEC 29, 11:07:01 PM

comment » let's say that if you are not using distributed transactions or complicated business logic (done well with WebSphere) you'll spend definitely more time using any other platform that Domino.

And this IS NORMAL for 2 reasons

- the designer is ui oriented

- the platform offers a lots of built-in functionalities : security, replication, directory, archiving, messaging, transparent persistence, database, container concept....... and this should also change with the new rich client, the new transactional capabilities and web services orientations.

I spend 95% of my time on WebSphere and WebSphere Portal but from what I know about Domino, I have a simple question :

Is it more productive to write DAO's or struggle with spring, hibernate, struts, jsf, ....

or just drag / drop a field on a form ?

technology is not important (XML, SOA, Perl, PHP... )

simplicity, ease of use, learning curve, maintenability.. these concepts are important and have deep impact

The grass is not always greener on the other side «

COMMENT: CHRISBOOTE

JUL 21, 2008 - 08:19:18

comment » I know this is an old thread, but I just read it for the first time

I hve clients who are moving away from Domino, and willing to take all the cost and pain of losing Domino and over a decade's worth of apps, not because it can't do what they want, or because it's not suited for Web apps, but because they can't guarantee to find any Domino developers for new apps or to maintain or upgrade old ones

It's a vicious circle that IBM just doesn't understand - they are lukewarm about Domino & don't work with it properly => fewer devlopers => fewer clients/customers => fewer developers => ... «

RATE THIS CONTENT (OPTIONAL)
Was this document useful to you?
 
rating Awesome
rating Good
rating Average
rating Poor
rating Useless
CREATE A NEW COMMENT
required field
required field HTML is not allowed. Hyperlinks will automatically be converted.
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30