DDE keybindings and preferences

Domino Designer on Eclipse (DDE) is a huge leap in the right direction for our IDE of choice. I agree there is room for improvement but be sure that IBM Lotus knows this as well. Having DDE is a big help in my day-to-day work and with the right key-combinations and the right tweaks to the preferences it can become even better. Below are some of the nice keybindings I find myself using all the time and the preference tweaks I always do.

  • Ctrl-F6
    Switch view – allows me to easily switch between editors using the keyboard
  • Alt-<arrow back>
    Back in history, not within same editor (i.e. when jumping lines) but between editors
  • Alt-<arrow forward>
    Forward in history, same as above
  • Ctrl-Alt-L
    Goto correct Erl() line

The last one is probably one of the most important functions you should know when making the transition to DDE. Many developers have discovered that the error line number reported by the Erl function in Notes isn’t necessarily the correct line when trying to locate the line in DDE. Is problem stems from the way the new LotusScript editor calculates line numbers. This is a *MAJOR* flaw IMHO as line numbering is so basic to an IDE that it should just work! This is however not the case but luckily IBM Lotus has provided us with the next best thing namely a function to convert the Erl() line number to an actual line number in DDE. Knowing the key combination to invoke it makes it less of a hazzle.

In the preferences I normally tweak are the following:

  • GeneralEditorsText Editors
    Show lines numbers
  • Domino DesignerLotusScript EditorFonts and Colors
    Minor tweaks to the default color setup to make code easier to read.
  • Domino DesignerLotusScript EditorRemove existing object code when saving with errors
    In DDE you may save LotusScript code with errors but then what should happen to the compiled object code (the code actually being run). Should it be removed or kept in place?

Besides all of the above a thing to remember is that DDE is a brand new beast and simply sitting down in front of it and using it without investing any time in getting to know it is pretty arrogant and probably also a little stupid. I really suggest spending some time getting to know it and making sure it looks, acts and feels like you want it to.

Eclipse Demo Camp Copenhagen – it is on Thursday!

So the Eclipse Demo Camp Copenhagen will take place on Thursday in the IBM offices in Copenhagen. Checkout the wiki page for more information. The lineup looks quite promising.

Tonny Madsen, RCP Kompagniet
What exactly is the new e4

Jesper Steen Møller, NineConsult A/S
XPath2, XML Catalog and XSLT tooling

Bent Agervold Jensen, ReportSoft,
BIRT

Mikkel Heisterberg, Intravision
Signed plugins and how these works end-to-end in Lotus Notes

Jakob Lyng Petersen, Maconomy
Building a Generic Client for Business Professionals
using Eclipse RCP

Ekkart Kindler, DTU
Model-based Software Engineering with the Eclipse
Modeling Framework

Steen Brahe, Danske Bank, Use of the Graphical Modeling
Framework in Danske Bank

Jan Schoubo, LEJLN platformen
Linux-Eclipse-Java-LEGO NXT - For absolute beginners

Looking forward to seeing you there.

Using Abdera XPath on the Lotus Connections service document

As always namespaces and XPath/XSLT is “funny” to play around with. Tonight I have been messing a little with the ATOM feeds available in Lotus Connections and needed to use XPath to extract a URL from the service document instead of the object model in Abdera. I didn’t find it all together easy to figure out so I’ll post it here in case it helps anyone. The key is to specify a java.util.Map with the two namespaces in use (atom, app) when doing the XPath (the “ns” variable) and remembering to use the correct namespaces in the actual XPath string.

Document<Service> doc = ...;
XPath x = Abdera.getNewXPath();
Map ns = new HashMap();
ns.put("atom", "http://www.w3.org/2005/Atom");
ns.put("app", "http://www.w3.org/2007/app");

String link = x.valueOf("/app:service/app:workspace" +
   "/atom:link[@rel='http://www.ibm.com/xmlns/prod/sn" +
   "/mv/theboard']/@href", service, ns));
System.out.println("Link: " + link);

Lotusphere 2010: Must be ready!

I was lying awake around 4am this morning thinking about Lotusphere 2010 so I must be ready. It will be an interesting conference as I’m not speaking and we’re not exhibiting so I’m free to roam around. Looking forward to heading to Orlando.

LinkedIn vs. Facebook

Ever since I joined Facebook just a few months back I have been in a constant dilemma about friend requests from colleagues, business partners and other people that I work with or have worked with. The reason it took me so long to join Facebook to begin with was that I knew that I eventually had to decide on how to treat this, for me, new social network. Joining Facebook didn’t make it easier for me – quite the opposite. I now have a long list of friend requests from people that I work with or may get to work with at some point. I want and need to deal with these in some fashion.

The way I have chosen to deal with these friend requests is to disregard any friend request on Facebook from people that I work with or might, no matter how slim the possibility, get to work it. I don’t do this to be mean or anything. I simply want a social network where I can share information with my wife, family and “real” friends. Not that I don’t consider many of the people I work with friends – they’re just in that other category of friends. I would like to have a place where I can post comments and pictures where those not in the know, or with other points of view, might get the wrong idea. I would like a place where I can be myself.

Making this decision about Facebook also made me look more carefully into LinkedIn. It means that I will now use Linkedin for all those business connections. Much as I have in the past. I will of course also continue to use the various Lotus Conenctions sites available out these as well. So if you want to hook up with me with catch me on LinkedIn.

I would love to hear how you have decided to deal with the proliferation of social networks and where you draw the line between your personal and professional life.

Wow!! lekkimworld.com turns 5 yrs today


Has it really been that long? Well apparently it has. It seems like just yesterday that I started into this whole blogging thing and ventured down a road on which I have spent countless hours since then. When I started blogging was weird and felt strange somehow. Now after years of doing this it comes much easier and I have a hard time imagining not having and writing this blog.

Lately some of my blogging have moved to Twitter as a way of discussing the communicating small blurbs of information. Twitter will in no way replace the blog but it’s a nice addition. Micro blogging adds something to the experience and community that I cannot quantify but I feel that it’s positive. More and more of the community is moving to Twitter and the 24×7 buzz around the virtual water cooler makes for interesting discussions and a place to vent and/or rejoice.

One thing is certain – I’m looking forward to more years as the author of lekkimworld.com and I hope you as a reader are too.

Thank you for reading.

Speaker evaluations from NL LUG 2009

Earlier today I received my session evaluations from NL LUG 2009 and was very happy to see how positive they were. It’s always nice when the evaluations are so positive. Thanks to all that attended the session.

--------------------------------------
Evaluation results for session DEV08 - The low down on Notes
plugin distribution and provisioning
--------------------------------------
Number of attendees in your room: 35
Filled-in Eval forms: 25

Score (1) - Session Quality: 4,4 (!) (scale 0-5)
Score (2) - Speaker Quality: 4,5 (!) (scale 0-5)

Additional (individual) comments and remarks from people,
typed over 'litteraly and uncensored':
- Super! The Best!
- Nice intro the wonderful world of widgets and
  deploymenent/distribution. Nice stuff!
- Even when not familiar with this, the explanation was
  quite clear.
- Very good presentation
- Please come again
- Different expectations, but very good

OpenSocial (iGoogle) gadgets in Eclipse

I’ve been reading some blog posts about the upcoming Eclipse v.4 (or e4) and which features are planned for this release. One of the posts (OpenSocial (iGoogle) gadgets in Eclipse) discusses how Google Gadgets might make their way to Eclipse as views (ViewParts). Being a Notes user this is what we’ve had for a couple of years as MyWidgets but it’s always interesting to speculate who influences who… 🙂

It is becoming very clear to me that Notes as a platform is a good citizen in the Eclipse community by drawing from the community but also giving back to it.