Lotusphere OGS Live Blog

Last year a group of us decided to live blog the Opening General Session at Lotusphere, it went pretty well with hundreds of people joining in at some points.

So this year we’ll be doing the same. You can come back here, or go to Declan’s, Paul’s, Stuart’s or the Turtle’s sites to watch and join in. The aim is for us each to cover our areas of expertise / interest. So if you have any questions or comments about Notes and Domino Development, XPages, anything else dev related then direct them to Declan or myself. Paul will be covering admin topics, Stuart will be looking for Quickr, Connections and Portal announcements and the Turtle will be adding in his thoughts on the event as a whole. 

Should be a fun couple of hours starting at around 8am EST on Monday, 18th January. See you here!

Why using FTSearch in LotusScript is usually a bad idea

Well it’s New Year’s Day so the obvious subject that is on everyone’s lips is database full text searching. Isn’t it?

Yesterday I tweeted about having to remove a load (and I mean a load) of database.FTSearch calls from an application I’ve inherited recently. Several people asked why I would want to do that, so I thought I’d explain.

On the face of it using the Full Text Index to find a collection of documents is an ideal way of working, it saves you having to create a suite of views that will only be used by your LotusScript and we all know that less views is a good thing. But, in my view, there is almost no situation when you should use an FTSearch unless you are looking for a word or phrase across *all fields* in *all documents* in your database. If you find you are writing query syntax that uses the FIELD or CONTAINS keywords then you should probably be thinking again about your code design.

The main issue with relying on the Full Text Index is that it is normally out of date. As a rule of thumb you can’t rely on any changes that have happened in the last 30 minutes to show up in your search results. So in my case yesterday, the agents were being run almost immediately after a new document is added to the database and then expecting to find that document and ones related to it. When you’re relying on luck rather than judgement then you know you have a problem.

So, what to do? Generally the answer is to design your database views carefully. You can build a suite of views that can be used across the database that will allow you to build collections of documents that match your requirements. Remember, you can have multiple sorted columns if needed and pass an array as the key parameter in you getAllDocumentsByKey call, or build composite keys in the first column of your views.

In fact I’d go as far as saying that if your document collection isn’t too big that it may be better to build a larger collection than you need and loop through it to find the exact documents you need, rather than performing an FTSearch. The other benefit of using views, of course, is that you can build a NotesViewEntryCollection which will perform a lot better than a document collection and you get the added benefit of being able to use the sorting from the view design rather than having to apply your own quick sort after you’ve built whatever output array you’re trying to get to.

As with all of these types of general design principals, your mileage may vary, if you have a good reason to use the Full Text Index then go ahead and use it. But please make sure you understand what limitations you face when using the index rather than views.

Review of the Year – 2009

Every year, for the last several, I’ve done a blog post sometime between Christmas and New Year that wraps up my life over the previous 12 months. Normally there has been some big change, but this year has been more evolutionary than revolutionary.

As ever, the year started with Lotusphere, but it was a very different one for me for two reasons, I was speaking for the first time and it was a great (if pant wettingly scary) experience, one that I hope to continue for a few years to come. Indeed Tim Clark and I will be presenting in less than three weeks at Lotusphere 2010. The other big change at Lotusphere 2009 was that Elguji had a stand on the Showcase floor. It gives a totally different view on the proceedings, still great fun of course, and also something that we’ll be repeating in a few weeks time.

The public speaking continued on a couple of fronts throughout the year with sessions at The View Developer 2009, IamLUG and UKLUG. All great events in their own way. The user group scene continues to expand and get better every year. There are several European groups that I’m going to try and get to during 2010. The speaking is the biggest new thing for me this year. If you’re unsure about getting started, all I can say is that I highly recommend it. And this is coming from an introvert who was pathologically scared of public speaking until recently.

In parallel to the conferences and user groups, I was lucky enough to continue to get invited along to various XPages courses run by IBM. XPages has been the constant technology throughout the year for me. From January when we released the XPages version of IdeaJam through to later in the year and the release of IQJam. And into 2010 with my new XPages101 course that’s running in February.

Elguji has been the main constant during the year. We’ve had some great success in sales of IdeaJam to more companies, government organisations and, more publicly with the Lotus Knows IdeaJam in August. It continues to be great fun, and to keep things moving along we added lots of new features to IdeaJam and a whole new product called IQJam. Launching in November we’ve already had encouraging sales to both existing IdeaJam customers and new customers for Elguji, in both cases people seem really excited about the possibilities with the tool that we have created. Working with Bruce and Gayle has been the most rewarding thing I’ve done in my professional life, we’re building a really nice little company, but more importantly having fun as we go.

While Elguji has taken up a large portion of my time, I’ve also been working on some cool consulting projects as well. Mick Moignard and I created an XPages application which was both challenging and interesting (thank the Lord for the arrival of 8.5.1 is all I’ll say!), and the LDC grouping of independent developers continues to offer some interesting opportunities. Even when we’re all off doing our own thing then it’s good to have people like Ben, Julian, Mark and Rob around to run problems past (and maybe have the occasional beverage with as well).

There was no ILUG 2009 which made UKLUG all the bigger. We all decamped up to Edinburgh, people flew in from all over the world and, for two days, everyone seemed to have an amazing time. Lots of new friendships were made, late nights were had, large Martinis drunk. Roll on all of the user groups next year is all I can say.

The blurring of work and personal lives continue with more and more people using Twitter to keep in contact, the never ending Skype chats. To make things even more blurred, this year has also included a wonderful trip to Vancouver, WA to see Bruce, Gayle and family, walking weekends in Northern Ireland and Yorkshire. Hopefully the walking weekends will continue into next year.

Other than that, a 2010 that is as good as 2009 would be fine with me, but why not be greedy? 2010 is looking very positive, hopefully it is for you as well.

</2009>

</noughties>

<teens>

<2010>

Merry Christmas one and all

Well, I’m off to Suffolk for the Christmas break to see the family.

Here’s wishing you and your family a wonderful Christmas. Now, where was that bottle of champagne?

Announcing XPages101 – An Introduction to XPages course

A few weeks ago I asked the twittersphere what people thought would be a reasonable cost for a one day long, introduction to XPages course. This was before I had investigated the cost of anything such as room hire etc, and also before I had thought about what the content for the course might be. But I liked the idea of running a single day bootcamp that will help you get started with XPages so, taking people’s advice and sourcing all of the elements for the course, I’m happy to be able to open up xpages101.net today.

I’ve managed to find a very reasonably priced training room, and more importantly, written a sample application which includes as much of the elements of a “real world” XPages app as I could squeeze into an eight hour course. The plan for the day is that you bring along your own laptop with Domino Designer 8.5.1 installed, I give you a starting point template and then together we go through the steps to build an XPages application. As we progress we’ll cover all of the major elements of XPages including the new design elements, server side Javascript, Dojo, OneUI and Themes, searching and so on. Then at the end of the day you’ll have a working application (in theory at least!) and be able to go back to your office and use it as a reference point for your first real world development when you deploy Domino 8.5.1.

So please do head on over to xpages101.net, have a look at the site and if you’ve got any questions drop me a line, otherwise I hope to see you in London in February 2010.

Only ten days of Movember left

'Tache Progress

Well the ‘tache growing is progressing as poorly as can be expected for someone so follically challenged as myself. But, remember this is all in a good cause. If you’ve not yet sponsored my continuing social embarrassment then there’s only ten days left to head over to the Movember website and sponsor me, all in aid of Prostate Cancer Research.

The photos show the progress (or lack thereof) for those who wanted proof and haven’t seen me in person 🙂

I’ll be presenting with Tim Clark at Lotusphere

The annual frenzy of speaker announcements happened yesterday. This basically consists of people who have submitted an abstract to speak at Lotusphere hearing that someone else had been told they got their slot and then waiting over your inbox until you hear either way about your sessions.

I’m lucky enough to be presenting with Tim Clark, my partner in crime for the XPages workshops earlier in the year. Our session title is “How to build an XPages application from start to finish”. So we’ve set ourselves a nice, achievable target in two hours!

It should be a lot of fun, and now we have a few weeks of prep work ahead of us as we create the app and the slide deck.

If you’re not already registered for Lotusphere, then now is the time. See you in Florida in January.

HTC Hero and Android First Impressions

My new phone got delivered yesterday, and for those who know my proclivity to buy Apple gear, you’ll be surprised to know that I’ve dropped the iPhone and gone for an Android phone instead. My reasoning is that I’ve had the iPhone for a couple of years now and I want to see what the market elsewhere is doing. Plus the HTC Hero that I have now was free from T-Mobile whereas the insane contracts with O2 or Orange would still require me to drop hundreds of pounds for a 3GS. And finally, I have tried to do some iPhone dev work but I just found I didn’t enjoy the experience, too alien from everything else I know I suppose, whereas developing for the Android platform is just Java (or at least similar enough as to be the same), so I immediately have a leg up when starting a new application.

The biggest check against the iPhone at the moment is that I’m just getting a bit bored of it. It’s amazing that I find myself in that position after lusting after one for so long, but it is how I feel. Whether it’s the early adopter, gadget freak’s curse or whether it’s because everyone has one and I need to be different who knows?

So taking the device and the OS as two different entities, which they most definitely are, what are my first impressions?

The handset itself feels very well built, it has some heft to it so at least on that side of things it’s a decent replacement to the iPhone. The fiddly little buttons for Home, Back, Search etc take some getting used to, but once muscle memory kicks in they actually work pretty well. The trackball seems superfluous to me, I just naturally do everything that it offers on the touch screen which is probably a hangover of the iPhone for the last two years. The screen looks and feels of a very good quality, easily as responsive as my old 3G iPhone (I’ve not used a 3GS so can’t comment there).

The screen unlock process is quite different to the iPhone with the “Draw Pattern To Unlock” being a much faster way of getting into the phone than entering a PIN so I really like that.

Once you’re into the phone, then you’re presented with the Home screen which can be pretty much any combination of application links along with widgets that can display information about the phone, calendar, email, stocks, weather etc etc. T-Mobile has it’s own themes pre-loaded but I immediately removed all of those in favour of a grid of application icons. 14 years of the Notes workspace and 2 years of the iPhone home screen means it’s the way I prefer to work. In the same way that the iPhone has multiple screens of icons, so you get seven pages that you can fill up with icons and widgets, but thus far I only need three.

Of course, I immediately started to install and launch tons of new applications and this is the main difference with the iPhone. Installation is a breeze, it works for me much better than the iPhone. But then you can launch apps and they run in the background so you have to get back into a computer mindset of being aware of what’s running. And this is the biggest problem I’ve had so far, there is no way to close applications, in theory the memory is managed automatically, but in reality when you’re jumping in and out of different tools you quickly start to bog the processor down. So one of the apps I have close to hand is called TasKiller which simply kills everything running at the moment, very quick and simple.

If you’re not a big Google apps user (Gmail being the primary app), then Android really isn’t for you. Pretty much everything assumes you have a Google account. The joy being that rather than setting up the phone and synching with your computer, you just log in and everything is automatically populated over the air to the device. This is just as well as the Hero doesn’t sync with the Mac, at all. You can mount it as a USB drive to add music and take photos off, but that is all. The phone will also sync with Facebook, Flickr etc and even integrates them into your address book so you can tie a contact to a Facebook friend and monitor what’s going on that way.

The apps that I’ve installed (and would recommend) so far are:

  • Battery Meter – the only widget that I use, it displays the battery percentage
  • Compass – A simple compass application
  • eBuddy – A chat client for MSN, Yahoo, Google Talk etc
  • Locale – Manages phone settings depending on your location, time of day. Very cool to be able to turn on WiFi when you get home automatically.
  • NetCounter – Monitors WiFi and 3G data usage
  • NewsRob – An RSS client (not sure about this yet)
  • Places Directory – suggests places to go based on your current location
  • ShopSavvy – A barcode scanner that compares prices online
  • TasKiller – Kills apps running on the phone
  • TwiDroid – A very nice Twitter client

So, in conclusion what do I think? The HTC Hero and Android combination feels like it’s designed for someone like me, that is a geek / early adopter. It does make you think to do certain things where the for iPhone everything is just natural. But in contrast you’re able to do a lot more than Apple allow on the Jesus Phone so from that side of things, you pays your money, you takes your choice. If you’re looking for an iPod that can also make phone calls then the iPhone is undoubtedly the choice for you. If you want to do a little more with your phone, maybe do some development, then Android has the feeling of an OS that is going places over the next few years. If HTC could just sort out a Mac client then I’d say this would be a definite iPhone killer.

It’s Movember, get those wallets out

Those of you who know me in person (as opposed to some disembodied Twitterer or blog poster) will know that growing hair isn’t one of my strong areas.

Why then, would I sign up for Movember? Well, apart from it being an excellent cause to which we should all give generously and be more aware, it’s also an experiment to see whether it’s just the top of my head that’s follically challenged or if my top lip will also betray me.

So what do you need to do? Well two things. Number one, and most importantly, is to visit this page and pledge a little bit of cash to the Prostate Cancer Charity. Second, just sit back and see just how grand a “Mo” I can grow in 30 days. Very exciting isn’t it?