Subject: Need advise - Learn Domino AppDev or Eclipse?
Hello Jim,
I’ve been developing Notes client and Domino web applications since late 1997 (Notes 4.5). I also have had some administration experience over the years, including passing a sys admin test, and as of August 2006, I am now the sole Notes developer and administrator (and more) for a small company. In addition to being app dev certified, I’m now working to become a certified Notes administrator. I’m also currently a junior Java programmer (I know enough to be dangerous, but am not an expert yet), and use Eclipse for most of my Java work.
You asked, “Where should I start?” That leads me to ask a couple of questions:
-
Do you want to eventually change your primary focus to become a programmer and/or Domino developer?
-
Are you currently learning, or wanting to learn, any programming languages other than @Formula or LotusScript?
If you answered “no” to both of the above questions and your long-term plans are to continue as a LND System Administrator, I’d say stick with Domino Developer. You can be VERY productive and do alot with that tool alone. It gives you everything you need to create and maintain core Notes elements such as forms, views, outlines, etc. You can get plenty of work done using the @formula and LotusScript languages, neither of which require Eclipse.
If you answered “yes” to either of the above questions, then working with Eclipse (or a derivative, such as Lotus Expeditor or IBM WebSphere), is probably somewhere in your future.
Should you “learn” Eclipse or Expeditor? That depends on what you’re trying to accomplish. If you think you might eventually become a hardcore programmer (whether or not you continue with Domino), then you will probably happily use Eclipse at some point. It’s a great tool as a programming IDE for several languages (including Java, C/C++, PHP, and more). Again, I use Eclipse for my Java development (including Notes agents), and I love it. The Wikipedia article on Eclipse ( Eclipse (software) - Wikipedia ) includes the following tidbit:
“The basis for Eclipse is the Rich Client Platform (RCP)… Eclipse employs plugins in order to provide all of its functionality on top of (and including) the rich client platform, in contrast to some other IDEs where functionality is typically hard coded. This plugin mechanism is a lightweight software componentry framework. In addition to allowing Eclipse to be extended using other programming languages such as C and Python, the plugin framework allows Eclipse to work with typesetting languages like LaTeX, networking applications such as telnet and database management systems. The plugin architecture supports writing any desired extension to the environment, such as for configuration management. Java and CVS support is provided in the Eclipse SDK. It does not have to be used solely to support other programming languages.”
So Eclipse can be used to create complete IDEs (Integrated Development Environments) and application clients. In fact, IBM Rational Application Developer (fomerly Websphere Studio Application Developer) is built on Eclipse. So is Expeditor. If you were already a programmer and wanted to extend the capabilities of Notes or Sametime beyond what Lotus gives you out of the box, then you’d want to take a serious look at Expeditor.
Regardless, if you want to add Notes development skills to your repertoire, I’d suggest the following:
-
Download and start reading the IBM redbook “Domino Designer 6: A Developer’s Handbook” from http://www.redbooks.ibm.com/abstracts/sg246854.html?Open
-
Consider taking the basic Lotus AppDev class(es) and/or look into courses from TLCC ( http://www.tlcc.com/ ).
-
Learn the basics of the @Formula language so you can perform form input validation, create agents, code actions, etc.
-
If you get to the point where you need to push your development skills further, then it will be time to learn LotusScript, and/or Java.
-
If you get into building web applications, you’ll want to also learn HTML, JavaScript, and CSS.
Sorry this was so long, and let me know if you have more questions. I hope that helps.
Cheers,
Andrew P. Tasi
Bloomington, MN, USA