Need advise - Learn Domino AppDev or Eclipse?

Need some advise from the experts (especially those with System Admin and AppDev experience).

Have been a Lotus Domino System Administrator since R4. Basically learned enough about AppDev way back then in order to pass the one required AppDev certification test.

With Hannover (Notes8) coming out this year, as well as with Sametime 7.5 already in production, I now see that I’m not going to be able to get by without some AppDev experience.

Question - Where do I start? Should I take Domino Designer classes or should I look for training in Eclipse, or do I look for training with Lotus Expeditor?

I’m frustrated that I can’t really even get a handle on what Eclipse is, where it ends and where Lotus Expeditor begins? Is Lotus Expeditor another form of Eclipse, an AppDev client, or maybe it’s a tool of some kind? Not sure.

If Notes8 is “based on” Eclipse (whatever that means), am I wasting my time to learn Domino Designer AppDev? My company has only a couple of Notes based Apps (CRM) and that app hasn’t needed any updating since R5.

Is formal Eclipse or Lotus Expeditor training even available?

I am interested in Sametime plugins, although I’m not 100% sure on what they’re used for.

When answering, please remember I have no AppDev experience to speak of, so please offer suggestions as if I were a newbie.

Thanks.

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:

  1. Do you want to eventually change your primary focus to become a programmer and/or Domino developer?

  2. 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

Subject: RE: Need advise - Learn Domino AppDev or Eclipse?

I appreciate your thoughts and the amount of detail you offered.

I guess I’m a bit torn about learning Eclipse first or Domino AppDev

While at Lotusphere, I heard an awful lot about Sametime Eclipse based plug-ins. Also heard that Notes8 is based on Eclipse platform.

I see (looking at TLCC website) that there are at least 3 Lotus AppDev courses I can take.

But I’m not sure how to go about learning Eclipse and/or Lotus Expeditor. Is there an Eclipse AppDev client I can download. Are there Eclipse or Expeditor classes I can take?

I’ve gone to http://www.eclipse.org but that really confused me even more (many different products; no product name or install jumps out as the place to begin if working with Notes 8 or Sametime 7.5).

At least with Lotus AppDev I know where to start. Have no clue on how to get started with Eclipse based products.

Thanks again.

Subject: RE: Need advise - Learn Domino AppDev or Eclipse?

I am more a java developer and am actually developing eclipse plug-ins. Thats no big thing, if you have some years of development experience. But don’t bother. You have other strength. Just don’t panic. If something confuses you, prepare for a long and deep period of learning or stay away from it. To contribute your stuff to the crm app of your org, classic notes development knowledge is the thing you are going to need. So start with that and if you like (and only then) dive deeply into Java and Eclipse. Or perhaps you might not need to. I think that Lotus will have some ideas for people without deep OO/Java/programming skills to exploit the aditional opportunities of Notes.On.Eclipse.

To understand an “osgi based plug-in infrastructure” (Eclipse) is really not easy. But its good. Eclipse is quite successfull. And a lot of people who discuss with big words about Eclipse in blogs or forums don’t know more than you do.

Subject: RE: Need advise - Learn Domino AppDev or Eclipse?

Hello Jim,

I recommend that you “learn Eclipse” while learning a language.

For example, I started learning Java by downloading the Java SDK (now just called the JDK - Java Downloads | Oracle) and using a “teach yourself”-type of book. Initially, I used nothing more than Notepad and the command line. After I had the hang of the basics of Java, I downloaded Eclipse (Eclipse Project Downloads), and started using it as my Java IDE.

I hope that helps…

Regards,

Andrew P. tasi