Monday, September 25, 2006

Am I too lost to be saved?

I have been participating in another thread over on Ed Brill's blog and I started out writing a rebuttal of Alan's list (comment 44) of new features that have been released for Domino Designer. As I formulated my response I had an epiphany. I appreciate the elegance of the framework delivered in Notes and Domino. I appreciate Domino's server architecture, even if I'm a bit mystified and sometimes frustrated by it.

I hate Domino Designer with a passion. I loathe coming to work because I know I'll have to use Designer. I truly feel it is the worst piece of software I have ever used in my 15 year development career. I was ready to quit my job after Lotusphere but an e-mail exchange with some IBM'ers convinced me to hold out some hope that Hannover would make the development process significantly better. I now realize there is no hope of it getting better until a post-Hannover release. What I have today is what I will have for at least another year.

I know a few months ago I said I enjoy working with Notes and Domino, and that is still true. However, for me the face of that is Domino Designer, and staring into that hideous visage every day is becoming increasingly difficult. I'm not sure where this leaves me, besides really frustrated and jaded. I think I'm just burned out.

The reality is I have bills to pay and my skillset is 100% Notes and Domino, so the likelihood of me making any significant changes anytime soon is slim. I'll continue working with Notes and Domino while I formulate an exit strategy, and will continue participating in the online community. Who knows, maybe I'll start liking Notes development again. Right now my enthusiasm is at an all-time low.

11 comments:

  1. I can relate to "The reality is I have bills to pay and my skillset is 100% Notes and Domino, so the likelihood of me making any significant changes anytime soon is slim."

    I can't say I have anything against Designer, and I love the admin, development, end-user work, etc. But our company has recently undergone some culture changes which are making me unhappy. Like you, my skillset (at least as far as my resume shows) is 100% Domino/Notes. I live in a rural area, and don't want to commute an hour into a city for a different Notes job, so I won't be going anywhere anytime soon either.

    So, for different reasons, I know how you feel. So far, the only thing I've found that helps is to try to find joy/challenges in other areas. When other parts of life are good, it is easier to deal with the parts that are not. (I found that complaining and fighting the system just made me more miserable.) And I try to remind myself how much better off I am compared to so many other people. I guess some of that sounds trite, but that's all I've come up with. I'm open to other suggestions. ;)

    ReplyDelete
  2. "I was ready to quit my job after Lotusphere but an e-mail exchange with some IBM'ers convinced me to hold out some hope that Hannover would make the development process significantly better. I now realize there is no hope of it getting better until a post-Hannover release. "

    Can you elaborate on why it won't get better in Hannover? You've got a whole new platform in Eclipse, a new model in composite applications, and new development tools such as what was Workplace Designer coming into the mix. Domino Designer enhancements are coming as well, though they don't necessarily map to the list that was in the post on my site. Still, I think the overall opportunity space is increasing with Hannover, not decreasing. Why do you think it isn't?

    ReplyDelete
  3. Ed, I never said anything about the opportunity decreasing. What I said was many of the things I hate about Designer aren't on the table to be addressed until a post-Hannover release. It has already been publicly stated that many of the features that are currently missing are not being delivered in Hannover:

    No LotusScript class browser
    No formula debugger
    No Java debugger
    No Javascript debugger
    No multithreaded Notes environment

    Those have all been near the top of developers' wish lists for years. There also has been no discussion of any improvements to the LotusScript debugger and only vague hints at CSS or HTML rendering improvements. Personally I don't care about Java or Javascript support, but I know others have been asking those questions and been given the standard "post-Hannover" line.

    Furthermore, many of the new features that were introduced throughout the Notes 6 and 7 codestreams are crippled or work inconsistently and I haven't seen any statements about getting them fixed. DXL can't roundtrip all design elements, many events are only programmable by a single language (such as the often-requested onKeyUp/Down events are web only *and* Javascript only), design locking leaves hanged locks, you can't select the replica to use for embedded elements, autocomplete works just enough to be annoying and only supports built-in functions and datatypes, the unread count on folders is often inaccurate... the list just goes on an on.

    I realize Hannover hasn't even hit public beta yet, and I appreciate that rewriting the Notes client to run on Eclipse is no small feat. However, as pointed out on your blog, the Designer IDE has not been significantly enhanced since it was released in April 1999. To add insult to injury, many of the new features we have been given are crippled or broken and we're being told to wait until after Hannover is released before we get substantial relief.

    ReplyDelete
  4. Part of what is infuriating about this discussion is that some people want to turn it into another "your with us or your against us" fight. We're all here after so much time because we believe in Notes/Domino. Well founded criticism is healthy and drives improvement. I understand Ed's position. It's his job to show everything as positively as possible and he does that without going into some rose tinted fictional utopia.
    I also understand trying to use a development tool that is years out of date. I appreciate the new features in the back end, they enable me to do more. But that's a completely different topic. There are improvements in the platform and then there are developer tools available to exploit them. I could try and use vi to code up a j2ee app. The platform has all the features, it would work, it just wouldn't be very nice to do, would take longer and be more error prone.
    Dear IBM, Give us the tools to exploit the platform. Don't be surprised when we complain when the features we want from those tools aren't there in the next release. Domino is great; don't make it a chore to work with.

    ReplyDelete
  5. I can totally feel your pain Charles. I was in a similar position earlier this year. But a combination of a bit of time off work, a new contract in a better environment and trying to do as much development in other IDEs (mainly Eclipse) have re-invigorated my enthusiasm for Domino development. It's not a very good answer for your circumstances but changing your day to day habits does have a great effect.

    ReplyDelete
  6. Certainly if you do any java with domino you shoudl use a decent IDE and copy everything over. Once you get in the habit, it's not too bad. Could be a lot smoother though.

    ReplyDelete
  7. @Kerr/Matt - Thanks for the support, it's good to see that I'm not alone. I don't do Java yet, unfortunately I haven't had the time to learn it because I'm a one-man development team. I barely have the time to keep up with the new features released in Domino, much less figure out how to exploit them with Java. Also, from what I recall, Java use in Notes is limited to a few places, mainly agents. I don't see the benefit (yet) of replacing LotusScript with Java, but when I do you can rest assured I will be using a fully featured IDE.

    ReplyDelete
  8. Without getting too far off topic, in my experience, Java is useful when you get into really heavy duty document processing (so that you can take advantage of threading), and areas which are more java-centric such as Web Service consumption, servlet interaction etc.

    In normal day to day development Java and LotusScript are basically interchangeable with one big "but".

    As is obvious from the move to Eclipse as the Hannover platform, the emphasis is going to shift more and more towards Java so if you can possibly make the leap, then, in the long run it will be time well spent for your own career.

    ReplyDelete
  9. I'd also suggest that if you need to write a simple LotusScript agent and have a little extra time then try it in Java. The api is pretty much exactly the same so you know what you need to do. Get a session, get a database, get a view, get some docs, read some values, set some values, save the doc. All pretty much the same. So you can do real work while learning the basic syntax. Out side of the UI classes there is nothing you can do in LotusScript that you can't do in java. And it's no more complicated until you start pushing past the point where LotusScript would be a nightmare.

    ReplyDelete
  10. I think my feelings may be somewhat similar to yours Charles. I love Notes/Domino. Perhaps the largest praise I can give the product is the fact that I, as an administrator-turned-designer-with-average-developer-skills, can throw together some pretty respectable databases. I am still working my developer skills in general (with much help from the community) but I find that the biggest challenge for me is not the languages themselves but the roadblock that Designer/Domino throws up in so far as where we can apply certain functions and languages. I’ve read many developers’ wish lists for Hannover/Designer, etc. and agree with many. My wish may be asking too much but wouldn’t it be great if we could use any language and/or function pretty much anywhere - for all events, (both Notes client web apps), in views, forms, agents, etc.? Of course, better CSS support and script libraries for formulas would be great too. Am I being naive in thinking of these as possibilities in the future?

    ReplyDelete
  11. Dave, my crystal ball is pretty cloudy so I don't know if what you're asking for will ever happen. Having full parity between Notes and Web would be a start, then figure out what the response should be to the supported languages question.

    It truly is heartening to see people step out of the shadows, even if our frustration is our commonality. Misery loves company, you know. ;-)

    ReplyDelete