Latest Updates

Products & Applications

Showtime
My Blackberry Enterprise Server Push Utility for the Lotus Notes Client, allows you to create Jobs for individual Channel, Message, and Browser Content Pushes, as well as allows you to delete Pushed Channel Icons from defined recipient devices.

Time Tracker
The idea is simple. At the start of your day - upon completion of your first task - create an entry highlighting what you did and whether you feel it was an efficient or inefficient use of your time. Based on several requests, you can also select the priority, apply categories, or even align your time against a project.

For Lotus Notes Client v8.0 and above, you can use the Time Tracker Widget to make this process even easier!

Zephyr
My Configuration-based Rich Text Mail Merge and Emailing Utility, Zephyr allows you to create rich, data-driven emails to support automated workflow - all via Microsoft Word Mail Merge-like architecture. Dear <firstname> allows you to personalize each email message not only to the individual recipient, but also to the individual application workflow event!

xCopy
xCopy is a simple configurable xCopy client for the Lotus Notes client. By creating and defining xCopy Profiles, you can batch process your file backup or remote upload jobs. With the addition of the xCopy sidebar widget, you can easily kick-off these jobs, and modify both the xCopy Profiles and xCopy itself.

Community & Resources

Lotus Technical Information & Education Community

The Lotus Technical Information & Education community is comprised of IBM, business partner, and customer subject matter experts who use product wikis, published articles, white papers, community blogs and the latest in social media to build and share high quality technical content.

OpenNTF.org - Open Source Community for Lotus Notes Domino

OpenNTF is devoted to enabling groups of individuals all over the world to collaborate on IBM Lotus Notes/Domino applications and release them as open source.

developerWorks Lotus : Wikis

Share your deployment experiences and best practices in our wikis and help IBM to create scenarios for successful deployments. Contribute to the community by collaborating on shared content and leverage the shared knowledge from that community.

Welcome to dominoGuru.com!

Focused on being the go-to resource for the IBM Lotus Notes Domino developer, dominoGuru.com delivers introductory-level best practices and advanced development deep dives for the IT professional, book and gadget reviews, and technical weblog, and more!

Blackberry Widget API and SDK - What You Should Know!

10/12/2009 09:17:26 AM by Chris Toohey

I've gotten a few questions about just what the Blackberry Widget API and SDK are... specifically, not only what is it? but also what do I need to know?. Well, less than 24 hours after getting started... I'm happy to report that Blackberry development has never been so easy.

See, before the Blackberry Widget API and SDK, you needed to know a lot of things that most web application developers may only be slightly familiar with. You had to know Java. You had to know WSDL. You should have a firm grasp on WAP. You needed to know how to write web applications for mobile browsers - and when compared to the mobile browser on devices like the iPhone/iPod Touch... well, it was frustrating to say the least.

And then came the Blackberry Widget API and SDK... which sounds really interesting, but most people I know don't get that excited when I talk about Blackberry Application Development. Most people I know are busy working on their own platforms, and the thought of needing to learn yet-another-technology to support what some may consider a nice to have customer base for the majority of their projects.

I know that I've moved "I need this on the Blackberry" to the nice to have column on countless occasions myself - both due to the time it would take to create a local Blackberry client for the project application and (to be honest) my lack of expertise in Java mobile device development and the Blackberry application development platform itself.

See, I'm more of a web application developer. I use HTML, XML, CSS, and JavaScript to interact with web technologies - mostly IBM Lotus Domino - to build feature-rich web applications.

And I'm happy to report that the Blackberry Widget API and SDK is designed for me: a web application developer.

Using any HTML, CSS, JavaScript, and XML editor, you can create a feature-rich web application... that uses the Blackberry Widget API to allow complete interaction with the device.

Want to get information from the Blackberry device like the PIN, IMEI, or interact with the device Calendar?

Just can use these JavaScript functions:

// Display the device model
function displayModel() {
      var model = blackberry.system.model;
      alert("The model of this device is " + model);
}

// Display the PIN of the device
function displayPin() {
      var pin = blackberry.identity.PIN;
      alert("Your PIN is " + pin);
}

function displayIMEI() {
      var imei = blackberry.identity.IMEI;
      alert("Your IMEI is " + IMEI);
}

// Launch the calendar with today's date
function launchCalendar(){
      // Get today's date
      var today = new Date();
      alert("Today is " + today.toString());
      // Launch Calendar App with today's date
      var calendarArgs = new blackberry.invoke.CalendarArguments(today);
      calendarArgs.view = blackberry.invoke.CalendarArguments.VIEW_DAY;
      blackberry.invoke.invoke(blackberry.invoke.APP_CALENDAR, calendarArgs);
}

And this HTML to call the JavaScript:

<html>
      <head>
            <title>Widget API Basic Sample</title>
            <link rel="stylesheet" type="text/css" href="simple.css"></link>
            <script type="text/javascript" src="actions.js"></script>
      </head>
      <body>
            <div>
                  <p>Widget API Basic Sample</p>
            </div>
            <div>
                  <input type="button" value="What is the model of my device?" onclick="displayModel()" />
            </div>
            <div>
                  <input type="button" value="What is my PIN?" onclick="displayPin()" />
            </div>
            <div>
                  <input type="button" value="What is my IMEI?" onclick="displayIMEI()" />
            </div>
            <div>
                  <input type="button" value="What do I have planned today?" onclick="launchCalendar()" />
            </div>
      </body>
</html>

Yep - it's really that simple! You just write JavaScript functions that interact with the Blackberry Widget API. And you write HTML and CSS to makeup the UI for your application. Yeah, it's pretty simple stuff.

... but you probably think that we're missing something here -- and I am: you need to take your web application - every HTML, CSS, JavaScript, and XML resource - and zip them up into a single file. You then use the Blackberry Widget Packager to create your Blackberry Device Application installation files:

Via command prompt, issue the following commands:

C:\>cd c:\program files\research in motion\blackberry widget packager

C:\Program Files\Research In Motion\BlackBerry Widget Packager>bbwp.exe web/helloworld.zip
[INFO]       Parsing option parameters
[INFO]       Parsing bbwp.properties
[INFO]       Validating zip archive
[INFO]       Widget packaging starts...
[INFO]       Populating source codes...
[INFO]       Start compiling and building...
[INFO]       Generating output files...
[INFO]       Widget packaging is done.

C:\Program Files\Research In Motion\BlackBerry Widget Packager>

From there, you simply install the now self-contained COD file onto your device the same way you would any other Blackberry Device application, and you're done!

You can install your new applications for testing via the Blackberry Device Emulator or - with a few more steps that I haven't actually gotten to yet - install it on your own Blackberry devices.

The good news? We've got not only API documentation, but some pretty slick examples of how we can better use the Blackberry Widget API to interact with not only local applications and offline data stores, but also interact with web/SaaS/Cloud services.

I'm eager to deep-dive into the integration of a few Lotus Notes Client applications that I've worked on/am working on and the Blackberry Widget API. A good one that comes to mind: a mobile device application for tracking effecient, prioritized time against various customers, projects.

Before that of course, I really need to play around...

RIM releases Blackberry Widget API and SDK v1.0 Beta!

10/09/2009 04:53:16 PM by Chris Toohey

Blackberry Application Development RIM just made it much easier to develop feature-rich and hardware-integrated applications for their Blackberry devices by releasing the BlackBerry Widget SDK 1.0 Beta 1.

With the advent of Blackberry Widgets, web developers can leverage local hardware and device software functionality - such as accessing messaging, calendaring and other PIM capabilities as well as phone, GPS, and extended storage card space. To ensure that web developers can hit the ground running, the official SDK page comes complete with sample code and development tutorials.

From the Widget SDK 1.0 page:

The BlackBerry Widget Packager 1.0 Beta 1 is a new tool that allows web developers to package up their web assets into BlackBerry Widgets (small, discrete, standalone web applications that use HTML, CSS and JavaScript). A BlackBerry Widget looks, behaves and has the same security mechanisms as a native BlackBerry application. BlackBerry Widgets can be installed on a BlackBerry smartphone like any native application and can be extended to use device-specific information and data using the BlackBerry Widget APIs.

This is a great opportunity for RIM and the Blackberry itself; I see it bringing not only new developers to the platform, but changing the way we develop "fat clients" for the platform. One of the included examples even showcases the use of Gears/SQLite for offline/local storage of - what could be - Cloud/SaaS content!

And now I know how I'm spending my weekend! I'll be downloading the new Blackberry Widget SDK, configuring Eclipse, and building out some Widgets! Of course, post-Hello World, I plan on ripping into integration with IBM Lotus Domino and Widget-enabling some of the standard template Lotus Notes/Domino applications like Discussion Databases, Document Libraries, Domino Blog, etc.

Of course, if my last weekend exchange with setting up an SDK in Eclipse was any indication, I doubt I'll hit the end of Hello World before Monday morning!

Are you a Domino + BES shop? Part II

10/08/2008 10:05:16 AM by Chris Toohey

Asking "Are you a Domino + BES shop?" shed some light on several things that I'm both happy and eager to share with you:

  1. There are a lot of Domino + BES shops out there.
  2. Most people are using BES - which can be an amazing application platform that can be utilized to enable employees - only for messaging. (Where have we heard that before?!)
  3. Most people are too busy to learn Java, and feel as though that's the only way to put their business applications on mobile devices.

The real eye-opener here is just how closely Blackberry Enterprise Server + Mobile Devices parallel Domino + Lotus Notes. Most shops that are using it today use only a fraction of the capabilities of the technologies, and their business and employees in particular have grown dependant on those technologies. The technology is simple to setup, and a breeze to maintain, and JUST WORKS.

Sure, there are prettier technologies out there (like the iPhone), but for a dependable business solution - something that you would arm your employees with and feel confident that it's going to enable them to use the technology to do their job. And Blackberry Mobile Devices do just that - they let the user get their job done. Same with Lotus Notes.

But just like Lotus Notes, BES shops (at least that majority that I know of) have yet to fully appreciate the technology, nor fully get something back from their technology investment. Sure - my employees are "always on" with instant-access to their email, calendars, and task lists - but can they easily view a portfolio from their mobile device and show a potential customer a given product of interest? Can they lookup contact information in a vendor address book while on the road? Can they submit a simple sales order from the road, having just walked out of a customer's office?

When you hear these things, a lot of us probably think "well, that'd be nice - but I don't know Java". I know I thought that I needed all of these fancy mobile development skills to get my Domino and Lotus Notes-based applications onto Blackberry devices... but I couldn't have been more wrong.

The other day, I had the opportunity to sit down and discuss a few open projects with one of RIM's mobile application developers, who proceeded to take me to school! I learned how I could use BES built-in capabilities such as "Channel Push" and the MDS Studio to allow me to create simple, mobile versions of my Domino and Lotus Notes-based applications. And I want to share what I learned and what I'm learning with you, so we can all get more out of both our Blackberry and IBM Lotus Notes/Domino technology investments.

So, starting now, I'll be writing a series of articles on this site that cover mobile application development specific to RIM's BES and IBM Lotus Notes/Domino. And we'll start this off with the following two projects:

  1. Mobile Directory/Address Book.
  2. Project Showtime!

First, we'll create a simple Mobile Directory/Address Book that will act as a secondary address book or group address book on your Blackberry devices, with it's contents stored and managed in a Personal Address Book-based Lotus Notes Client Application. Getting this application onto the devices is where Project Showtime comes in. I'm currently developing a Lotus Notes Client Application that will facilitate the creation, management, and deployment of "Channel Push" Icons to defined mobile devices.

Once we have this up and running, we'll move onward with using Web Services in Domino to get more of our "beefier" Lotus Notes and Domino Applications onto our Mobile Devices via MDS Studio.

So - are you Domino + BES shops ready?

Are you a Domino + BES shop?

09/30/2008 11:30:10 AM by Chris Toohey

Had an idea yesterday for a new freeware Lotus Notes application that I think would really help Blackberry and Domino shops... which got me thinking - how many of you are both Domino and BES shops?

This utility application will use a combination of Java and the BES API to... well, I'll go into more details once I get the proof of concept up and running. Let the teaser stand at "it will help Domino + BES shops utilize mobile devices for more than JUST email, without having to write mobile device applications".

On a side note - expect to see a new YouTube demo/tutorial for MixMaster - my Remote Logic-Driven NotesItem Manager (as well as the actual utility application) later today.

RIM's Blackberry Connections Client - First Impressions (Part 2)

05/19/2008 04:10:18 PM by Chris Toohey

RIM's Blackberry Connections Client - First Impressions - Part 1

So, once installed, I was greeted with a really slick v8-esc Connections Client icon:

Check out Chris's article to get the how-to on connecting with your BleedYellow credentials.

Once in, we see the Connections Client home page - giving us access to Profiles, Dogears, Communities*, Blogs*, and Activities*.

Profile Search is pretty slick, allowing us to use the Profiles as a Mobile Directory, with call-out capabilities - very cool!

Dogears - this can be useful for the maintenance of mobile device client-friendly links and resources.

The rest of the client - and this is what loses me - is simply links to the web implementations of Communities, Blogs, and Activities.

Yeah - Activities isn't handled in this local client - W.T.F?!

So, to sum up:

  1. RIM doesn't know how to get me the app.
  2. Thankfully, our community rocks!
  3. It looks purty...
  4. Profiles and Profile Search will give you a pseudo-mobile directory on your device - pretty slick.
  5. Dogears... ok, I can see where this might be useful.
  6. Communities and Blogs - meh, grab a feed reader.
  7. By far the biggest let-down: Activities are not maintained in the device.
  8. That's my "First Impressions" having used this for the past few days, and while it's looks slick and I'll certainly use the Profiles - I'm looking forward to the next release in hopes that they'll include Activites.