Dim myData as String * 256

You C-coders have known about this for years I’m sure. Many of you Lotusscript types probably have known about this for years. Hell, once upon a time, I probably knew this. But yesterday, I ran across a line of code like this and was intrigued… “What the heck is that?”

If you peruse help for the String data type, you find:

The declaration of a string variable uses this syntax:

Dim varName As String [* num]

The optional num argument specifies that varName is a fixed-length string variable of num characters. A fixed-length string variable is initialized to a string of null characters (the character Chr(0)).

When you assign a string to a fixed-length string variable, LotusScript truncates a longer string to fit into the declared length. It pads a shorter string to the declared length with trailing spaces.

Fixed-length strings are often used in declaring data structures for use in file I/O or C access.

I don’t know about you, but I don’t know how many times I’ve written some kind of padding function so that my data was exactly the length I needed, whether for some kind of data export, or funky display table thing.

Oh well, old dogs can learn new tricks.

Lotus Open Labs in Dallas and Houston starting next week

One of my favorite IBM/Lotus events is rolling through Dallas next week (Tuesday, Aug 28). It’s the Lotus Open Labs. If you’re not familiar with it, it’s a day at IBM with 30 computers hooked up to external drives containing 30+ VM images of various labs, such as NSFDB2, Component Designer, Portal, Forms, you name it. A complete list is provided below.

The beauty of this event is that it’s a full day without a single speaker, just you and a computer with self-paced labs. There’ll be people there from IBM and WFS to assist in a limited fashion, but it’s a no pressure, no sales environment to learn how these technologies work. You should definitely check it out. Here are some registration links.

Location Event Registration Date
Dallas Lotus Open Labs – Dallas 08-28-2007
Houston Lotus Open Labs – Houston 09-06-2007

Lab Lab Title Description Products
1 IBM Lotus Domino NSFDB2: Development and Integration Part 01 – Create a DB2 Access View (DAV); Part 02 – Create Query Views; Part 03 – Joining data from external DB2 tables; Part 04 – Creating a Parametric Query View Lotus Notes and Domino; DB2
2 Building Composite Applications with Notes 8 This tutorial describes how to create a local composite application using procedures that make use of new features in IBM Lotus Notes 8 Beta and IBM Lotus Domino Designer 8 Beta. It provides an end-to-end scenario for creating and running a simple composite application using Notes applications as components. When you complete this tutorial, you will have a composite application with inter-component communication, similar to that shown below. Whenever you select a row in the upper component, the lower component will display the documents that have an identical category value in its embedded view. Lotus Notes and Domino
3 Beginners Guide to Lotus Component Designer This tutorial explains how to create a component using IBM® Lotus® Component Designer. This component can be deployed as a portlet and added to an IBM WebSphere® Portal page or application. Lotus Component Designer, WebSphere Portal
4 Building AJAX applications with Lotus Component Designer 6 You will create a simple static portlet application by using Lotus Component Designer 6.0 wizard. Your work is to deploy the created sample portlet application to WebSphere Portal Server 6.0 and to update page configuration to add the deployed portlet application on your page. Lotus Component Designer, WebSphere Portal
5 New Features of Sametime 7.5.1 The overview lab will walk you through the new features of the Sametime 7.5 meeting center and the new connect client. Sametime
6 Creating a Plug-in with Sametime 7.5 In this lab you will create the Buddy Note plug-in. The Buddy Note application provides a way to store notes about the people in your Contacts list. Whenever a contact is selected their buddy note is displayed. These notes are stored locally. Sametime
7 Developing and deploying rich client application for desktops and mobile devices This is an introductory lab, which will show you how to create a simple RCP application and test it in IBM Rational Software Architect (RSA), and then deploy it into the Lotus Expeditor workbench on the desktop and device. Lotus Expeditor
8 Developing and deploying portlets for desktops This is a quick start tutorial on Portlet (JSR 168) programming for the IBM Lotus Expeditor Client for Desktops. You will create a small portlet application and deploy it on the IBM Lotus Expeditor Client. Lotus Expeditor
9 Developing and deploying composite applications for desktops This tutorial will cover the implementation of a composite application in Lotus Expeditor. The application will use the Property Broker feature that is included in Expeditor to communicate between multiple disparate applications. The example uses a JSR 168 Portlet as a user interface to collect a customer number from the operator. The customer number is then passed via the Property Broker to two other applications which use it to display information. Lotus Expeditor
10 Introduction to Workplace Forms 2.7 “This lab consists of 5 labs:
01 – Getting Started with the Workplace Forms Viewer
02 – Installing Workplace Forms Designer 2.7
03 – Creating a form using XFDL
04 – Developing a form using Xforms
05 – Webform Server”
Workplace Forms
11 IBM WebSphere Portal 6 Walk Thru In the first part of this lab, we will highlight some of the main features of WebSphere Portal 6.0. We will explore the Document Manager and other product areas within the Portal. Then we will learn how to create new users and groups. We will also demonstrate how users can work with portlets and pages. WebSphere Portal
12 IBM WebSphere Portal 6 Themes The purpose of this lab is to provide the technical professional experience working with the new features for configuring and building themes in Portal V6. WebSphere Portal
13 IBM WebSphere Portal 6 Document Manager The lab is built to explore the Portal Document Manager and how it can integrate into the daily work of Portal users. WebSphere Portal
14 IBM WebSphere Portal 6 Search The objective of this lab is to provide you with an understanding of using WebSphere Portal V6.0 Search Features and Search Portlets. WebSphere Portal
15 IBM WebSphere Portal 6 Templates This exercise walks you through importing and modifying an application template. You then create an application using the new template. WebSphere Portal
16 IBM WebSphere Portal 6 Template and Applications During this lab you will create a new application template and add a workflow. Once you have completed these steps you will create an application from the template and then test that application and workflow. WebSphere Portal
17 IBM WebSphere Portal 6 Attribute-based Administration The purpose of this lab is to provide you with an understanding of the Attribute Based Administration (ABA) feature of Portal 6. WebSphere Portal
18 Application Integration with WebSphere Portal Express V6 – Portal Branding In this lab, you will gain a better undertstanding of how the portal can be “branded” to your specific look-and-feel. More specifically, you will learn how to define a new custom theme. You will then learn how to use theme policies and color palettes to customize this theme. WebSphere Portal Express
19 Application Integration with WebSphere Portal Express V6 – Lotus Component Designer The purpose of this exercise is to give you some hands on experience using IBM Lotus Component Designer. In the course of this lab you will create a component using IBM Lotus Component Designer and deploy that component to the WebSphere Portal 6 server. The main focus on the lab is to get you familiar with the basic capabilities of the product. WebSphere Portal Express
20 Creating Cooperative Portlets with IBM WebSphere Portlet Factory In this tutorial you will create a set of cooperative portlets, deploy them to the portal server and wire them together without writing one line of code. WebSphere Portlet Factory
21 WebSphere Portlet Factory Designer – Employee Compensation Summary This is an introductory demonstration of the application of WebSphere Portlet Factory Designer in the development of a portlet that exposes information from a relational database. His portlet will interact via Cooperative Portlet Messaging with the WPF Employee Detail portlet installed and deployed in the Employee Compensation – Getting Started Guide. this exercise will introduce you to Data Services in WPF (SOA) and Rich Data Definition, concepts vital to competency in WDF/WPF. WebSphere Portlet Factory
22 Workplace Dashboard Framework – Compensation Budget Summary and Drilldown This is an introductory demonstration of the application of Workplace Dashboard Framework in the development of a dashboard portlet that exposes information from a relational database. This portlet is similar to the Department Compensation portlet, but adds a number of dashboard features. Workplace Dashboard Framework; WebSphere Portal WebSphere Portlet Factory
23 Building Composite Applications for WebSphere Portal 6.0 with Portlets You Create Composite applications enable end users to translate their knowledge and skills into business value by assembling complex applications out of a set of components. The lab attendee will learn how to create a component using AJAX then compose into Composite Applications. The technologies covered and touched in this lab are: AJAX, Lotus Domino and Web Services Composite Applications WebSphere Portal, Lotus Domino
24 IBM Workplace Web Content Management End to End Tour The objective of this lab is to provide you with an understanding of the steps to define, create and edit content in a Portlet using WebSphere Portal 6.0 Web Content Management. IBM Workplace Web Content Management
25 Integrating portal search with IBM Workplace Web Content Management 6 The objective of this lab is to provide you with an understanding of the integration of portal 6 search with IWWCM. IBM Workplace Web Content Management
26 Workplace Forms and Domino Web Services Integration This lab describes the steps to integrate Workplace Forms with Domino using Domino Web Services. The integration explores a very common scenario encountered in a majority of solutions: pre-populating a form based on information entered by the end-user. In this particular lab a user will request a Purchase Order form which will be pre-populated with personal details based on the input of a contractor number. The personal details are stored in a Notes database, which is extracted by making a web service call from the form itself. This lab requires some basic understanding of Domino Administration, Domino Designer, and Workplace Forms Designer. A basic understanding of Web Services is useful but not a prerequisite to complete the lab. Lotus Domino, Workplace Forms
27 Using Web Services to Integrate Workplace Forms and WebSphere Process Server This is a quick start tutorial on integrating Workplace Forms and WebSphere Process Server (WPS). You will create a Web application on WPS using WebSphere Integration Developer (WID) and a Forms application with Workplace Forms Designer, and integrate them by Web Service. Workplace Forms, WebSphere Process Server
28 WebSphere Portal Express V6 – Lotus Component Designer (BLOG Portlet) In this lab you will create a Blog component using Lotus Component Designer and deploy that component to Portal Server Express. WebSphere Portal Express
29 Configuring IBM HTTP Server and WebSphere Application Server The purpose of this lab is to configure the Web infrastructure components – IBM HTTP Server and WebSphere Application Server – prior to installing Lotus Connections IBM HTTP Server, WebSphere Application Server, Linux
30 Lotus Connections – Administering and Using Profiles The purpose of this lab is to become familiar with the user interface of the Lotus Connections Profiles application Lotus Connections, Linux
31 Using Lotus Quickr (Domino) 8 The purpose of this lab is to introduce you to how to use the new Lotus Quickr. The lab will demonstrate how to create places, add members, create documents and so on. Lotus Quickr
32 Installing and Using the Lotus Quickr 8.0 Connectors The purpose of this lab is to introduce you to the Quickr Connectors. The lab will demonstrate how to install the Quickr Connectors, and will lead you through some exercises to use them with Domino Services for Quickr. The Connectors are an exciting new way to allow users to work with Lotus Quickr while they are in other applications. Users do not need to leave what they are doing and go somewhere else to get information. Whether they are reading mail or working in a Notes application, chatting with a teammate, or creating an Office document, they can access the power of Lotus Quickr from right there. Lotus Quickr

A non-standard Notes 8 client upgrade

For whatever reason, on my production machine I’d been unwilling to run Notes 8 Betas with the Standard client. Call me cautious. (Ha! No one’s believing that.) I saved the Standard client for my VM environments. Now that 8’s gold, I decided to upgrade to the Standard client. I started the installer, and boing, unsupported upgrade.

Ok, I halfway expected that. Re-check the Release Notes (you do read the Release Notes don’t you?) and confirm that a client un-install is in order. Do a quick backup of the data directory, and uninstall. Check

Install the new Notes client, accept the defaults and start. Hmm, where are all my icons? Well, it looks like we have a REALLY fresh install. Where did it install to? After missing it a couple of time, I realize that the new default path for Notes 8 install is to c:program filesIBMLotusNotes, not c:program filesLotusNotes.

Time to do a little pruning of the old data directory and move it over. Take the bookmark.nsf, names.nsf, desktop6.ndk…leave cache.ndk, leave all the old NSD crash logs (only 20 or so) and dump files. Restart Notes client. Voila, up and running. A little sluggish at first as lots of indexes have to be rebuilt, but then pretty speedy. I’m loving the embedded ST client already. Nice.

UPDATE: After catching up on some reading…a portal entitlement is there for Domino customers!

Yesterday I posted about getting to know WebSphere Portal to really be able to state the case for a Notes 8 standard client deployment. One of the things I mused about in comments was a Portal entitlement from IBM for Domino customers so they could have that opportunity.

If IBM doesn’t have it, IBM should consider a Portal development entitlement for Domino customers that would allow them to effectively research this. I’ll ask Sue to look into it.

Reading through Ed’s blog from last week, I found that IBM has indeed made that entitlement available. Here’s the link, WebSphere Portal Server software – limited use entitlement. Essentially, for every Domino server that has Collaboration licensed users running against it (i.e. not just a messaging server), you are entitled to 20 users of Portal. Those users can:

  • Deploy composite applications to a supported Web browser
  • Use a Lotus Notes 8 client to access composite applications hosted by WebSphere Portal Server software

That’s exactly what I was thinking customers needed, a way to explore without having to make a fullscale committment up front to Portal. Well done IBM!

Customer: Notes 8 has been released, what should I do now? Evaluate Portal

Answer: Evaluate WebSphere Portal

I know it sounds strange, but if you don’t truly know what Portal is and what it can do, then you really don’t know what Notes 8 is. Since you’re probably not going to rush out and deploy Notes 8 immediately, now’s the time to understand the Portal environment and it’s capabilities. To me, it’s similar to companies that deployed Notes as an email platform and never really looked at or discovered what they could do with it from a development perspective. Certainly there’s value in Notes as strictly a mail platform, certainly around the security and virus aspects alone. Right or wrong, a lot of companies found themselves evaluating the licensing down the road and wondering why they were paying so much for strictly mail.

I think a similar situation occurs with Notes 8. You can deploy the Notes 8 basic client, at which point, I think a decision is being made (consciously or otherwise), to relegate Notes to legacy status. However, blindly upgrading to the Notes 8 standard client isn’t necessarily the right answer either. For one thing, when you install Domino 8, it’s going to ask about your Portal server, as it wants to install templates on it. While I’m sure you’ll be able to retrofit that later, I’m not sure I want to mess with that down the road. So, if you’re going to take full advantage of the Notes 8 world, you’re going to have sidebar items in the client and you’re going to have composite applications that leverage the entire IT enterprise rather than silo’d Notes applications. And this is where you need to understand what Portal is, what the Lotus Component Designer is, and how these things play together.

So, what’s your next step for Notes 8? Understanding the entirety of the Notes 8 platform which means understanding Portal’s role in it.

Ever flown through a tropical storm?

Woke up this morning and went to the window to see how it looks here in St Maarten, a little windy (maybe 20-25 mph) and some good clouds, but not too bad otherwise.

Then turned on the computer and saw the satellite image.

It appears by takeoff, we may have Tropical Storm type winds and again in Puerto Rico when we leave there. Should be fun!

Hurricane Dean and Derek intensify

We’ve been keeping track of the storms down here, and as of this morning, we now have Hurricane Dean headed our way. Right now, Dean is just a category 1, but it has potential to spin up to a 4 or 5 before all is said and done. It’s headed on a track that will put it over St. Lucia and Dominica around Friday afternoon. We’re taking off out of St. Maarten at 9:30 Friday morning, so even if it turns a bit, we should be gone before it gets near. Who knows, maybe we’ll see it again in Texas in a few more days.

Meanwhile, closer to home, Derek has continued to worsen into a category “go visit the doctor” sickness. In addition to Albuterol and Prednisone breathing treatments, he’s now on antibiotics but his coughing seems to continue gathering strength. I hope we do not see a repeat of Christmas 2004 when we ended up in a Tortola hospital with pneumonia. But I don’t think it will come to that.

So we’re packing up and battening down Francie’s house as best we can. Even though Dean looks like it will miss Anguilla, chances are there’ll be another along in the next 10 days while they’re still out of town. Jonas has a nice collection of motorcycle fenders outside that would make nice projectiles in a 100mph wind. We’re shooting for the 9am ferry to St. Martin (French side) and then over to the Sonesta Maho Beach Hotel for the day. After that, 12 hrs of travel on Friday brings us back to Dallas at 9:30pm and a trip to the doctor Sat morning. Vacation is giving way to the real world again.

The 12pm Carnival parade in Anguilla

Have you heard the expression “island time”? It’s used to note how the clock seems to slow down when you’re in the islands. Whether it’s the actual clock or your own body’s clock, the pace is definitely slower. A great example of this is the 12pm Friday Carnival parade. 12 might be a suggested time for the participants to start showing up. Being aware of this, we hit Subway (yes, the one fast food chain restaurant on the island) at about 12:30, then wander over to the drugstore for some t-shirt shopping. Around 1:30, we exit the drugstore and it looks like maybe things are starting to get underway. So we find a shady palm tree over at the National Bank of Anguilla and wait. More…