Mar 10

Why Linux ist not ready for the Desktop yet

Note: this post has been migrated from another blog. Some links may be broken.

For testing the Linux compatibility of our new YouAtNotes CRM Release 5 I played around with some Linux distributions. Most of the time I spent with Ubuntu 8.10.

And while working with that, I realized that Linux is – from my personal perspective – far, far awayfrom being “Ready For The Desktop”. And with that I mean “ready for the desktop for standard users who are not geeks”.

I compare Ubuntu with Mac OS X and Windows. While we all know how many flaws Windows has, Mac OS X is so far the best and user friendliest OS I’ve seen. It is not perfect, but it is quite good. And Linux in general and Ubuntu as one of the user friendliest distribution in special have a hard time comparing with Mac OS or Windows (from the point of view of a normal user).

You know why?

Because it tells me so much stuff I don’t want to know about!!! For example, I just installed Java. The process itself is simple and good and could be done by any user. But then the installer window shows me all the packages being installed… and they all have very strange and geeky titles. Boy, if I were a normal user, I would get frightened just by seeing all those technical stuff…

Or as I installed OpenOffice.org 3.01… package downloaded and extracted and I get a folder named “OOO300_M15_native_packed-l.de_9379”. As a dummy user, I would have no idea what it is and what I should do with it.
You might ask why I didn’t used the Ubuntu install tool – simple: it offered my only the “Go-OO” and installed an old version 2.4 of OpenOffice.

When I want to install something, I have some icon on the desktop. I doubleclick it and – nothing happens. Simply nothing. I know that it doesn’t work because I’m not root… but the standard user? And I didn’t found any way to run the install with root rights beside opening a terminal and using “sudo”. This is totally out of the question for a standard user.

There are many, many small issues like these in Desktop Linux distributions today. And when I ask myself if I would give my parents a computer with Ubuntu (or some other Linux), Windows or Mac then I would never choose Ubuntu. I might be safe, and if everything is configured it might work reliable and well. But they would have always the feeling that they are working with something strange and very technical.

On the other hand they would see a Mac as their friend, they would really like it. They would not see it as a very, very complicated technical thing but more as a tool which does what they want.

And I guess they would simply use Windows because everyone else does, but they would not like it either.

So, still much work to do for Ubuntu & Co, and I hope they will address those small things in the future because I like Linux and I would like to see our customer’s desktops running Mac or Linux, but not Windows :-).


Mar 09

How to setup Eclipse on the Mac for developing Lotus Notes/Domino stuff

Note: this post has been migrated from another blog. Some links may be broken.

When running Eclipse on the Mac you might ask: where do I get the Notes.jar file?
Pretty simple: open the finder, go to your program folder, rightclick the Notes icon and select “show package”. Then, in the Notes package, go to “Contents/MacOS/jvm/lib/ext” and there it is.

But since you cannot select that path in an Eclipse project properties, you should copy the Notes.jar to some other folder (I copied to my Eclipse workspace folder).


Mar 06

Having fun with my own Java server task

Note: this post has been migrated from another blog. Some links may be broken.

Since I learned on Entwicklercamp 2009 from Andy Brunner that running a custom Java server task in Domino is stable and safe I just finished my first Java based server task 🙂

The use case is processing administration requests from our YouAtNotes CRM software. In our CRM serveral changes are made via admin requests (just like the adminp in the Domino server). For example, if some user specific folders are missing some admin requests are created, so that the folders can be created by the server later. Or if a name of a contact changes, the name change is distributed to various other documents by the server.

Until now all this work was done by an hourly agent.

But since today’s build of YouAtNotes CRM the customers have the option to let a server task do this work very quickly. The server tasks notices after 10 seconds if there is a new administration request, and if so, the request is processed immediately.

This is pretty cool and a noticable improvement for the users. And: if the administrator at customer’s site does not want a third party server task, he can leave the work to the hourly agent.

We even made a one-click install which performs the following actions:

  • Extracting the .class files to the Domino program directory (on Windows) or the data directory (on Linux). On Windows you need to read the Windows registry to get the program path of the Domino server.
  • Adding “runjava YNCRM” to the ServerTasks in notes.ini of the Domino server (via NotesSession.setEnvironmentString).
  • Starting the task via “load runjava YNCRM” (this is done via NotesSession.SendConsoleCommand).

The whole install is packed into an agent, which is started via NotesAgent.runOnServer – so it runs on the Domino server and can perform the install.


Mar 05

Entwicklercamp 2009 – Rückblick

Note: this post has been migrated from another blog. Some links may be broken.

Gestern ist das Entwicklercamp 2009 zu Ende gegangen. Ich war zusammen mit meinem Kollegen Stephan (Metsch) und unserem Partner Stephan (Holowaty) dort, ich selbst habe als Referent auch eine Hands-On Session über das OpenWebCMS gehalten.

Es war wieder eine exzellente Veranstaltung. Rudi, seine Frau und sein Team haben den Dreh mittlerweile wirklich raus und die ganze Organisation lief wie Bienchen. Sehr gute Referenten, interessiertes Publikum, super Essen, perfekte Betreuung.

Meine Session war total überbucht: 23 Anmeldungen bei 12 Plätzen 🙂 15 Leute hab ich untergebracht, dann haben wir uns gemeinsam das OpenWebCMS und sein Backend angeschaut und auch direkt damit gearbeitet. Von einfachen Dingen wie “wie bringe ich Dynamik in eine Vorlage” bis zur Anbindung von Agenten via Ajax und Einbindung von JavaScript Frameworks.

Und ich hab in den Sessions von anderen Referenten auch noch ein paar Dinge gelernt:

  • Andy Brunner hat sich durch die Erstellung von Server Tasks mit Java gebissen und eine hervorragende Session darüber abgeliefert. Ich hatte mit den Möglichkeiten auch schon gespielt, war mir aber bisher nicht sicher, wie stabil das alles ist… nun weiß ich, dass man eigene Java Server Tasks produktiv einsetzen kann und darf.
  • Bei Gregory Engels habe ich endlich mal auf einen Blick gesehen, wie man die Notes 8 Java Views für eigene Anwendungen nutzen kann, welche Möglichkeiten und welche Grenzen es gibt.
  • Bert Häßler hat sehr eindrucksvolle Dinge mit dynamisch geänderten Masken gemacht: er verwendet Eingaben vom Benutzer, um dann via DXL automatisch und im Hintergrund eine Maske zu verändern. Dann zeigt er das aktuell geöffnete Dokument mit dieser geänderten Maske an. Und er hat auch einen Weg gefunden, damit das ein Benutzer auch ohne Designer Rechte machen kann. Interessante Sache.
  • Maureen Leland, Ms. Domino Designer on Eclipse herself, hat die Keynote und andere Sessions gehalten. Sehr unterhaltsam, sehr interessant!
  • Ein weiterer Höhepunkt war die Session von Rocky “Mythbuster” Oliver, wo er mit diversen Mythen rund um Lotus Notes aufgeräumt hat. Herrlich vorgetragen und lehrreich.
  • Bei Karsten Lehmann und Tammo Riedinger habe ich gesehen, wie man eigene Java Programme nahtlos in Lotus Notes integrieren kann. Cool. Muss man aber schon gute Java und Eclipse Kenntnisse haben und sich durchbeissen können, da vieles nicht oder nur teilweise dokumentiert ist.
  • Und letztlich hab ich auch mal wieder mit Matthew Fyleman von Teamstudio diskutiert, wohin die Reise mit Teamstudio Ciao gehen sollte (und wohin sie gehen wird 🙂 ).

Und daneben gab es noch viele andere Sessions, die einen Notes Entwickler spürbar voran gebracht haben.

Stephan (Metsch) hat auf dem Camp viele Einblicke in XPages und Composite Applications bekommen, so dass er damit jetzt auch loslegen kann. Stephan (Holowaty) hat übrigens eine gut besuchte Session über Suchmaschinen-Optimierung gehalten – mit bestem Feedback der Teilnehmer.

Danke an Rudi, seine Frau und seinem Team für diese sehr schönen und lehrreichen drei Tage!

Und: der Termin für das Entwicklercamp 2010 steht schon, unbedingt nachschauen und vormerken. Wer eher Administrator ist, sollte unbedingt die Agenda für das Admincamp 2009 beobachten und sich den Termin vormerken!


Mar 01

Geschafft. Lotus Notes CRM “YouAtNotes CRM 5” ist verfügbar. Noch ein paar Worte zu Mac und Linux.

Note: this post has been migrated from another blog. Some links may be broken.

Wie geplant haben wir unser neues YouAtNotes CRM 5 Ende Februar (genauer am 27.2.) fertiggestellt.

Die Demo ist bereits
zum Download verfügbar, das Update Paket folgt noch. Alle bestehenden Kunden werden wir benachrichten und bei der Aktualisierung unterstützen. Das Marketing wird Montag entsprechende Inhalte auf www.youatnotes.de veröffentlichen. Dort findet ihr dann auch eine Liste mit neuen Features.

Aus persönlicher Sicht möchte ich zu dieser neuen Version erwähnen, dass wir – neben der Realisierung des neuen Ticketsystems – hart an der Verfügbarkeit von YouAtNotes CRM auch unter Mac und Linux gearbeitet haben. Ihr wisst vielleicht, dass wir eine Reihe von Funktionen nicht mit normalen Lotus Notes Features realisiert hatten, um einfach eine schickere Optik und bessere Usability zu erreichen (so pushen wir beispielsweise dynamisch generiertes HTML zu einem in einer Notes Maske eingebetteten InternetExplorer Control).


Derartige Funktionen nun auch auf den Mac und Linux zu bringen, war alles andere als einfach. Hier haben wir vor allem mit der neuen Composite Applications Technik von Notes 8 gearbeitet… und ich hab schon mehrfach darüber geschrieben, dass in dieser Technik leider immer noch, selbst in Notes 8.5, eine Reihe von Problemen stecken. Einige davon konnten wir umgehen, andere kann nur die IBM lösen.


Daher bezeichnen wir das Lotus Notes CRM “YouAtNotes CRM 5” unter Mac und Linux offiziell noch als “Beta”. Das heißt: das allermeiste funktioniert, einige Dinge sind aber noch nicht so rund, wie wir sie gerne hätten.
Details dazu hier.

Aber: Abhilfe ist in Sicht. Ich spreche direkt mit den IBMern aus der Entwicklung über diese Themen und die Jungs arbeiten intensiv daran, die Probleme zu lösen. Einiges ist in aktuellen Builds vom kommenden 8.5.1 schon gelöst.


Festzuhalten ist aber auf jeden Fall: bei uns arbeiten einige Leute mit Macs (mich eingeschlossen) und daher ist gesichert, dass die Behebung der letzten noch ausstehenden Unschönheiten unter Mac und Linux hohe Priorität hat.


Mar 01

Ich spreche auf dem Entwicklercamp 2009

Note: this post has been migrated from another blog. Some links may be broken.

Ich halte eine Hands-On Session über das OpenWebCMS auf dem Entwicklercamp 2009. In dieser Session werden wir gemeinsam mit dem OpenWebCMS eine kleine Website bauen und dort eine Reihe von grundlegenden Funktionen demonstrieren:

  • Automatische Navigation basierend auf den Inhalten.
  • Volltextsuche.
  • Verwendung von Vorlagen – Trennung von Layout und Inhalt.
  • Dynamische Elemente in Vorlagen.
  • Einbindung einer “Web 2.0” Javascript Library am Beispiel von jQuery
  • Verwendung von Ajax um dynamisch Daten von einem Agent nachzuladen.

Und Zwischendurch betrachten wir das Backend vom OpenWebCMS und lernen, wie man unter Domino ein performantes und skalierbares Web-CMS bauen kann.

Also: wer auf dem Entwicklercamp ist, sollte vorbeigucken und mit machen 🙂


Feb 20

Ein Erlebnis an der Tankstelle

Note: this post has been migrated from another blog. Some links may be broken.

Eben bei der Tankstelle – mehr Liter als Euro, wann gab es das zuletzt?


Feb 19

What happens if a stupid and arrogant Mac evangelist who really wants to hate Lotus Notes does a testdrive

Note: this post has been migrated from another blog. Some links may be broken.

Perhaps you already read this post from a “writer, analyst, tech geek” who did a test of Lotus Notes for Mac: http://www.bynkii.com/archives/2009/02/notes_still_sucks.html

If not, go on, read it. And then be stunned how much stupidity and fanaticism can be fitted into one single person. Boy, this guy really wants to hate Lotus Notes.

He needs about four pages to curse only about the Installer. For example, he states that Notes sucks because the install package is about 300MB… then he gets angry about single words in the Installer. And that’s only the beginning….

His whole article can be summarized as: a bigheaded I-know-everything-better-than-anyone-else guy who still thinks that Lotus Notes is an E-Mail software like Thunderbird tries to test a client for enterprise messaging and collaboration.

But instead of getting the idea “hey, Notes is not a simple E-Mail software, it’s something too big for me, I try it again if I built up an enterprise with a couple of users”, he rails about it. And in a bad language, by the way.

I could write an article about “OpenOffice still sucks!” where I rail about OpenOffice being so big and ugly and slow when I just want to edit a textfile.

John C. Welch, one should choose the right tools for the right purpose and according to the personal skills. You want to read E-Mail. You should use Apple’s Mail. Or write your own, if you have the skill for that.

Update: after reading the comments of the article, I’m speachless about so much arrogance. He sits on his small Mac island and thinks he is the one and only centre of the world. Hey John, wake up, there is so much more than you and your single Mac in the world!


And BTW yes, he raises some points. But to be honest: the wording in the installer or if Notes works with IMAP for a private user does not win the war.


Feb 16

$ConflictAction setting does NOT work on save conflicts. Is that really true?

Note: this post has been migrated from another blog. Some links may be broken.

In one application we have save conflicts every now and then, that means a user edits a document and when he saves it he gets the message “someone else modified the document at the same time, save as conflict document?”.

There are background agents in the application which are modifying documents. But we doublechecked that the agents are modifying different fields that the user. And we tried several settings for $ConflictAction without any luck, the conflicts still occur.

Now I made an interesting test: I held a document in edit mode while a server agent modified a field named “jbtestxxx” on the same document. Obviously, there is no such field on the form of the document, or in any querySave script.

After the agent ran I saved the document and bang! – save conflict occured.

So that means that a save conflict always occurs, regardless which field is modified and regardless of the $ConflictAction setting? Is that true?


Feb 12

Customers are so pleased about XPages! Thanks, IBM for finally providing us with a good solution for web development!

Note: this post has been migrated from another blog. Some links may be broken.

I’m just on the way back from some days at a new customer. My task was to help the customer evaluating if our product “YouAtNotes Workflow” is a better solution than the product they are currently using (and yes, it is the better solution 🙂 ).

The customer wants to focus on web based workflow applications, based on Domino. At the moment, the customer is on Domino 7. And while we discussed web development on Domino 7, I thought to myself “boy, should we really develop all that stuff with classic Domino web development…?”. And since I already did some stuff with XPages, I only needed a fraction of a second to get to the conclusion “No! No classic Domino web development anymore. Never ever!”.

So I asked them if they heard about XPages yet. They did not. We agreed to use some time on the last day of my visit to have a look at the XPages, and in the meantime we focused on evaluating the Workflow questions.

Well then, yesterday evening in the hotel I prepared some XPages demos, and today I showed them. And I explained what’s going on behind the scenes and how XPages are developed with Designer 8.5.

And yes, the people were well trained developers for Notes and other platforms.

Guess what… they were simply blown away. It was like finally seeing the light after an age of darkness and misery.  

They were so frustrated about the development environment from the stoneage (also known als Domino Designer 7), and how bad web development was supported. And now with XPages, they see that Domino finally envolves in a good direction. That finally there is new and good stuff for developers. And that finally they don’t need to shame for developing on Domino.. that it even looks like it may be fun and productive to do web development with Domino.They got the feeling that having Domino is not that bad after all.

This is only one example of a customer (about 2000 employees), but shows that it was really, really overdue to do something for developers. So, keep going IBM! Domino is on the right track! Don’t stop making Domino a kick-ass development platform again.