By Brian Arnold
It’s a dystopian world out there right now. Twelve months ago, no one would have even imagined that the entire planet would be under orders to stay home and perform physical distancing. Even though a high percentage of workers in the IT industry have the ability to work remotely, many of us would not have expected to be shifting to a work-from-home model so hastily over the past few weeks. Getting used to working from home when you normally work in an office environment is hard enough without the additional problems of setting up your development environment to accommodate remote connections to infrastructure you usually take for granted.
Here at Teamstudio, working from home is “business as usual” for most of us. We’ve been doing it for years, and so, other than the occasional interruption from a family member who’s not usually at home with us, our working lives haven’t really changed that much. Also, since we’ve been doing this for a while, we’ve learnt a few things about working with the Teamstudio Developer Tools from home.
And so, we wanted to provide you with some helpful tips & tricks to make your use of our tools while at home more efficient. Below are our recommended Best Practices.
1. Use a Remote Desktop / Virtual Machine for Development Work
The use of a remote desktop connection (RDC) or a virtual machine (VM) which is housed in your main office may be normal for some, but not all of us have experience with this approach. Using an RDC / VM can greatly improve the performance of your own computer and alleviate all of the network traffic to and from your home office.
If you are a user of either Teamstudio Build Manager or CIAO!, there can be a large amount of bidirectional communication and processing from your computer to the HCL Domino server where those tools have been deployed. By using an RDC/ VM you can move all of that processing to an environment that is much closer to the HCL Domino server.
2. Check In or Out Multiple Elements Together
One of our most popular tools, Teamstudio CIAO!, relies on all of the HCL Domino developers to be accessing the same HCL Domino Database / Template for all of the design changes. This is how CIAO! works to keep your design clean and under control.
But if you are now working from home, most likely with higher bandwidth needs due to all of the devices in your family being online to pass the time, the process of performing the Check Out / Check In and Template Version Creation that takes place in a CIAO! controlled environment will likely take significantly longer than you are used to.
If you know that you will be making changes to a number of design elements, make sure to use the CIAO! Application Dialog instead of just right-clicking the design element to take control of it. Within the CIAO! Application Dialog you can select as many design elements as you want and check them out / in all at once. You can also use the feature “Select Dependencies” to select all of the design elements that the main design element you want to check out depends on. This is a quick and easy method for performing a check out of multiple design elements that you may need to also modify:
To experience the best performance that Teamstudio CIAO! can provide, we always recommend using an RDC / VM environment along the lines of what is described in the first Best Practice above.
3. Increase the Process Initiation Timeout Value in Build Manager
If you are using Build Manager from your local computer you will notice an increased amount of time that it requires in order to determine the processes that it needs to execute. Build Manager has a built in “timeout” threshold, similar to what can be found within the HCL Notes Preferences for Notes Ports Timeout. If the timeout is reached, Build Manager makes the assumption that the HCL Domino server cannot be accessed. When you are working from home and / or if your organization has begun using a Virtual Private Network (VPN) to secure your connection to the HCL Domino server there will most likely be a natural delay in accessing the system.
By default, the Build Manager system "listens" for a response from the executable program which runs in the background for a response code to indicate that it is beginning the process to run the Promotion. By default, if this process does not send a response within 15 seconds it believes there is a problem and sends back a response stating that there is a problem connecting to the HCL Domino server.
There is however a method for extending the amount of time that the process will wait for a response. In your Notes Data directory you should find a file called "teamstudio.ini". Within that file you can place a configuration setting which will extend the amount of time the Build Manager system waits for a response. It is a simple change by adding the following two lines into the teamstudio.ini file:
[Build Manager]
BmBgProcInitTimout=300
If the first line already exists, then you will only need the second line. The number at the end of that line represents how many milliseconds to wait. 300 equals 30 seconds. That value will double the default amount of time that Build Manager waits. If this is not enough time and you continue to receive the timeout message, then simply increase the value until you no longer receive the message.
300 = 30 seconds
450 = 45 seconds
600 = 60 seconds
4. Use Local Replicas
Using local replicas of your HCL Domino databases is a simple and easy way to improve the performance of our applications with very little extra effort. Local replicas will produce the same results and reports that would be created if you were using the server-based instances of your HCL Domino databases.
If you also share the results of your analysis, audits, or any other reports that our applications provide with your other licensed developers you can also make replicas of the Teamstudio Reports and the Analyzer Analysis Results databases. That way once you have completed all of your required tasks with our applications it is a simple process to replicate these databases back up to your central development server so that everyone can benefit from the effort you dedicated to running the processes.
5. Check Your HCL Domino Databases for Performance Bottlenecks
Now that a lot of organizations have their employees working from home, as a developer you might be encountering an increase in performance complaints. This is most likely due to the fact that the employees are now accessing the HCL Domino databases they use daily from their remote home offices.
The connectivity to your Domino servers will most likely be negatively impacted by all of the additional worldwide network traffic happening. This is a great time to review the performance in those HCL Domino databases to see where the bottlenecks are. Teamstudio Profiler is the only tool on the market that can monitor how long your LotusScript code is taking to execute and provide you with line by line timing of your code.
Once you have identified the areas that your end users are saying are taking increased amounts of time to perform, with a single click you can begin monitoring that code to determine what is causing the performance bottlenecks:
BONUS: Mobilize Your HCL Domino Databases for Your End Users
If you want to look like a Domino Rock Star to your end users, (not that you don’t already, of course) you can help them use their HCL Domino apps on their mobile devices. Many employees may not have the ability to take their computers home with them and they now feel very disconnected from what is happening at work. This can leave them feeling completely disconnected from their regular daily tasks and very alone.
There’s now an incredibly simple method for making your existing HCL Domino databases available on Android and iOS devices with little to no development effort needed. HCL has released a new product called HCL Nomad. This is a free of charge mobile Notes client that can work on Android and iOS smartphones and tablets.
Using our Teamstudio Analyzer Mobile Filters you can quickly determine if there are any areas within your existing HCL Domino databases that may cause issues when they are opened in the HCL Nomad client.
And that’s it. If you have any questions about any of this, or would just like to start a conversation about working from home or any aspect of HCL Domino app development, click below. We love to chat!