Posts Tagged ‘tips’

10 Dec 2015
6

Notes Database Performance Tip: Disable Unread Marks

A Quick Summary of this Post

Unread Marks are enabled by default when creating a new Notes Database. In most cases, especially for applications used by multiple users, unread marks are not required and has a significant performance cost when the Notes database grows in size.

To disable Unread Marks:

  1. Right-click on your Notes database and select “Application -> Properties
  2. Click on the last tab
  3. Check the option “Don’t Maintain Unread Marks
  4. Compact the Notes database

A Detailed Overview

Through my years as a Notes developer, I’ve seem many cases where unread marks are enabled for Notes applications. One of the main reasons for this is that unread marks are by default enabled when creating a new Notes database. Many developers ignore this setting and continue developing an application for their client, where unread marks are most of the time not required.

Unfortunately, this comes at quite a cost to performance when the application grows in data, especially if the affected Notes database contains many Views.

In all my time as a Notes developer, I’ve never once required unread marks in the applications I developed. This became even more so the case when I moved to XPages development. I do understand that there are some cases where one would use it, but my recommendation is simple: If you don’t need it, disable it!

There are 3 settings to manage Unread Marks for a Notes database:

  1. Don’t maintain unread marks (Database Property – Last Tab)
  2. Do not mark modified documents as unread (Database Property – Tab 4)
  3.  Manage Unread Marks on a Notes View level (View Property – Tab 5)

It’s important to note that if you want to leave Unread Marks enabled for your Notes database and instead specify in your Notes View that there should be no unread marks, the View is still affected. See below abstract from the Domino Designer Help:

Note: Designing views that don’t display unread marks doesn’t improve database performance because they are still maintained but not displayed.

This means that to improve database performance, you have to implement one of the first 2 options mentioned above, at the very least option 2.

Closing

I can’t stress enough the impact unread marks can have on a Notes database. If you don’t need it…disable it. Depending on the size of your Notes database, the results are almost immediate.

Cheers for now
John
17 Sep 2015
0

User Group Update: A rename & an identity. We’re getting there!

Things are getting exciting!!! We have renamed our local User Group and finally have some branding.

SALUG is now AfriTUG

We thought long and hard about this one, but it was ultimately decided that we needed a name that encompasses not just South Africa, but Africa as a whole. Also thanks to IBM Bluemix, we don’t want the focus of the User Group only on Enterprise Social Software (aka XPagesConnections, etc.), but also on the exciting technologies that Bluemix offers.

So without any further adieu, we give you…

AFRITUG-Meetup-Banner-Web

Our new look

To celebrate this rename, we now officially have a logo. This is thanks to a great design team by the name of Gist Marketing. Check out below some great examples of what we have so far:

AFRITUG-Icon-web

AFRITUG-Logo-No-Slogan-Protrait-web

AFRITUG-Logo-Full-Landscape-web

Where to find us

For the meantime, you can find AfriTUG on the following social sites:

Twitter

Facebook

Meetup

We have a very exciting roadmap ahead for this community and are committed to progress as rapidly as humanly possible, so stay tuned!!!

John

 

15 Sep 2015
0

Appcelerator Video Tip: Reduce EventListeners and increase performance

In this video I show you how to eliminate unnecessary Event Listeners in your Appcelerator Mobile App by making use of the Bubble Parent property. This is a great way to increase performance and responsiveness in your mobile app, especially when it requires some advanced processes.

The video below demonstrates the the Bubble Parent technique when using Text Fields inside Table View Rows for an iOS app. I’m sure you’ll immediately understand how you can apply it elsewhere in your mobile application, whether developing for iOS or Android.

As always just a thanks to David Leedy for hosting this video on NotesIn9. Always appreciated :)

Enjoy :)
John
24 Aug 2015
2

Android Tip: Enable Keyboard for your apps in Genymotion

genymotion

This is a quick tip on how to enable the simulator keyboard when running your apps using Genymotion.

You might find that when running your mobile app in Genymotion, the simulator’s keyboard doesn’t display when focusing on an input field. The reason for this is because, by default, Genymotion has the input control set to your laptop/desktop’s hardware keyboard.

To enable the simulator’s keyboard, do the following:

  1. Launch Genymotion
  2. On the device profile, click on the Settings icon
  3. At the bottom in “Android system options”, check the box for “Use virtual keyboard for text input”
  4. Click “Ok”

 

GenymotionKeyboard1

GenymotionKeyboard2

And that’s it.

Till next time, enjoy :)
John
20 Aug 2015
6

IBM Domino Tip: Pass HTML to RichTextItem without using MIMEEntity

Notes8_9Logo

This is a quick tip on how to include HTML when populating a RichTextItem object without using MIMEEntity in IBM Notes/Domino.

First some venting

It’s amazing how certain easter egg features have been available in the Domino Object Model since release 5, that I’ve managed to keep missing, yet constantly required. This morning I happened to stumble across one of them.

For the longest time, whenever I needed to send out a mail programatically via code that needed even the slightest bit of HTML, I would resort to using a MIMEEntity object. Which is great don’t get me wrong, but most of the time it’s actually overkill. This morning, all I wanted to do in my RichTextItem is include a URL (Not a doclink, but a predefined URL). I would do this by using:

RichTextItem.appendText("www.ukuvuma.co.za");

This was never an issue for me back in the day because, in IBM Notes Mail, Notes would see it as a url and convert it into a hyperlink. In my particular case when testing with Gmail and Outlook, the url just showed as plain text and nothing more. “Oh crap!” are the words I believe I used this morning. I kept thinking…”here we go again with MIMEEntity“.

Thankfully, I took a minute to double check the Designer Help. At first I noticed that there were no real options for me in the RichTextItem object, but when taking a look at the RichTextStyle object (this is used to provide standard font changes, etc. in your RichTextItem), I noticed what is right now to me the most beautiful object property of the year….PassThruHTML!!!

The Solution

Using my example above, assuming you have a RichTextStyle object initiated, all I needed to do was the following:

RichTextStyle.setPassThruHTML(true);
RichTextItem.appendStyle(RichTextStyle);
RichTextItem.appendText("<a href="www.ukuvuma.co.za">www.ukuvuma.co.za</a>");
RichTextStyle.setPassThruHTML(false);
RichTextItem.appendStyle(RichTextStyle);

That’s it. Domino converts the text into HTML and applies it to your RichTextItem object. I’ve spent the day kicking myself for not seeing this before, but I think I’m over it now. As long as this blog post can help others early enough from following the same road I travelled.

Till next time :)

John