XPages - The Good, The Bad and the UGLY - IV
Week one completed.. What an amazing learning experience filled with many emotional highs and lows.....
The Good - Outline panel: In my last blog I talked about the drag/drop capabilities for editing Xpages. John Head made some excellent points in response about how he uses the Outline panel almost exclusively to rearrange the content of an XPage. I didn't even realize the outline allowed you to do that. But sure enough, you can even use drag/drop within the Outline to rearrange controls etc. I had already found the Outline to be useful as a way of quickly navigating between controls, so this makes the outline even more useful. There still seem to be some clunky things when using outline this way.
The Bad - Designer Stability: This may be just an issue with the configuration I am using (feedback wlecome). But I have certainly struggled with keeping both my Notes and Designer clients fully operational when doing extended design work with XPage components. I seem to have to restart my clients 3-4 times a day. I don't recall having these issues when I was editing other design elements. The good news is that the 8.5.1 (beta) clients seem to be more stable than 8.5.0 (at least when editing Xpages). What I also have found is that it is sometimes not too hard to make a change to an XPage that causes an error to occur on the HTTP server preventing my Xpage from displaying. Even when I try to undo the last lot of changes the Xpage will no longer display. This may just be me fumbling along, but I often found myself having to recreate my Xpage again from scratch as a way to get it to display again.
Random Thoughts: After my first week of Xpages development the one things that strikes me more than anything is just how different XPages is from the rest of Notes development. I have drawn more from my experiences with ASP.Net development this week than at any other time whilst doing Notes development. Xpages do not appear to be able to incorporate components from existing Notes design elements . And the only design element I found so far that can consume an XPage is a frameset (see my last blog). Information can be imported from views and forms but Xpages is like a separate product within a product. The page lifecycle is completely different (and vastly superior). The programming language choices are distinctly different. No LotusScript or @Language but a new variation to Javascript that inherits some of LS and @. As Nathan T Freeman keeps pointing out to me, it is still an NSF and I get all the things like security, encryption, replication etc. But I do still wonder where this all may lead... The extent to which I adopt XPages will be dependent on three things:-
- The extent to which I can remain as productive when developing with XPages as standard Notes development. This is the key reason I like Notes and why I can earn more than the minimum wage... I can build applications so much faster than with non-Notes development which makes me look good - i.e. Notes makes me shine.
- The extent to which the Notes community adopts XPages. Without doubt Java is a superior programming language to LotusScript and yet it is not lost on me that in all the years since Java has been an option for Notes development so few Notes developers have adopted it. IBM have tried to push Notes developers to its vision of the future using product offerings such as Workplace, NSF2DB2 (the big thing in Notes 7), Websphere/Component Designer, Expediter etc. and there has not exactly been a stampede to adopt any of them. We all bleed yellow right! Even if I loved XPages to death (not quite there yet) and wanted to program using nothing else there would be little point to me doing so if everyone else I worked with didn't do much the same and/or each of my next few contracts were with clients that hadn't decided to make the jump.
- What my clients direct. Regardless of any of the above, if the people who pay me so I can put food on the table direct me to either use (or not use) Xpages I am probably going to do as I am directed. There is a very practical side to this debate!!!!
|
Ratings
0
|
Comments (2)
I never said you wouldn't take a productivity hit from Xpages. :-) Actually, you ESPECIALLY would take a hit, given the absence of Lotuscript.
Here's what I can say with authority: we have 4 developers who are
old school Notes/Domino gurus who are now full time on Xpages.
After 30 days, they are ALL more productive. After 60 days, the
difference is substantial. Tim has been full time in Xpages for
about 180 days now, and he develops solutions about 3 times faster
than before. But more importantly, Devin can look at his code and
understand what he's doing in about half the time.
I really, truly wish that these new capabilities had been designed
with a better transition path in mind. They will get somewhat
better, but not perfect. Our experience is that people create more
value as their experience grows. And that it's an accelerating
process.
Peter, I think you're an exceptional example of Notes/Domino
tradition growing to embrace advanced development techniques, even
within the constraints of the history platform. It is my earnest
belief that if you apply that same rigor to this new technology,
you will ultimately be delighted. I could certainly be wrong, but
if I can draw upon your trust -- I'd request another 14 to 20
days.
The emotional lows aren't over, though. 8.5.0 is a very quirky
release, and you'll definitely pound the keyboard on occasion. Why
just today, I asked Tim "what the heck just happened?" as he looked
at his screen and grimaced in a clearly irritated way. Restarting
from time to time is a wise strategy in the dot-oh release.
Hopefully that will get better soon.
But those quirks won't change the fact that you're fundamentally
more productive.
That's my opinion. I could be wrong.
@Nathan for sharing the Lotus911 experience with Xpages. It is extremely insightful and gives me more clarity on what I may be in for. If I and/or my clients decide that Xpages are the way to go I am convinced some sort of framework is a MUST to address the productivity issue. I see a custom control library as essential to build Xpages for various design patterns. On the language front I am not so sure. Clearly some JavaScript (client and especially server). And there may be a role for Java there too (I assume IBM are not introducing Java UI classes this late in the game just for the hell of it). It took me 2 years (part-time) to rewrite the .Domino Framework from a procedural library into a OOP framework. A 2.0 framework would probably need to focus on two approaches. One to show how to implement old-school Notes application design patterns as an Xpage and the other to help developers build Enterprise 2.0 applications. Migration tools are clearly opportunity for someone. An XPage-centric 2.0 framework should take a lot less time to create. Especially if as an OpenNTF project I found a few people to help. That in turn might make the transition for some Notes developers easier.