Ben Langhinrichs

Photograph of Ben Langhinrichs

E-mail address - Ben Langhinrichs






April, 2021
SMTWTFS
    01 02 03
04 05 06 07 08 09 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30

Search the weblog





























Genii Weblog


Civility in critiquing the ideas of others is no vice. Rudeness in defending your own ideas is no virtue.


Thu 18 Mar 2021, 11:55 AM
Inline JPEG image
 
There are a lot of ways to write out an exact date and time, but for the sake of international standards, dates in JSON and other interchange formats should be written using ISO 8601. But even that gives us options. The following two dates represent the exact same moment in time, but do they represent the exact same information?
 
"@created""2021-02-22T16:32:19Z"
 
"@created""2021-02-22T11:32:19.53-05:00"
 
While they are considered equivalent, are they? What is the piece of metadata that is lost in the first but not the second? It is the original time zone in which the document was created.
 
Now, this may seem unimportant. In most cases, it probably is unimportant. But if there is one thing I have learned in my years converting data from one format to another, and especially in doing roundtripping or synching of data that must coexist in two different platforms, it is that every detail is precious some of the time or to some of the people. In meeting invites, we see both when the invitation is and what time zone it was created it. If we convert to the first of these two formats and then back, we lose that information, or even if we just pull it out for display elsewhere, we won't have it.
 
Now, I want to be clear that even the second format is risky. A standard JSON parser that recognize dates may turn these both into the same timedate object. But a savvy parser in a system that has the capability to store time zones will store that time zone with the second format. It can't with the first. The detail is simply lost.
 
Addendum: Just a quick follow up to this. In reality, you can't determine the time zone itself from the time offset, but you can calculate the local time in which the time was created. Therefore, we offer an option to use an extended construct for Notes time date item values that gives the time zone as a separate value along with the time and date, e.g., "StartTime": {"zone":"EST", "value":"2021-03-01T10:30:00.00-05:00"}

Copyright 2021 Genii Software Ltd.

Tags:

Mon 15 Mar 2021, 10:12 PM
Inline PNG image
 
While Genii Software is best known for our Notes/Domino related coexistence and migration products, we work in other areas as well. But both inside and outside of Notes/Domino, our core business is really data movement. If you have data in some format or encapsulation, and you need it in some other format or encapsulation, that's what we do. Whether you need the data to move for a moment, for the duration of a project, or forever, we help you move it.
 
The challenge for me is usually not the format or system or structure the data is going to, but the format or system or structure the data is coming from. Often older, outdated systems, though certainly not always, I need to understand as much or more about the source as the destination. Which is why I spend time building new design and new data into things like Infopath Forms that are already facing EOL. Because when that data needs to go elsewhere and fit into some other design (whether Microsoft Power Apps or Salesforce Lightning Apps or whatever), we need to be able to understand the data we are likely to see, and the stuff we are less likely to see, but still will because developers will use anything. we need to be prepared for structures allowed in one system but not in another, especially multi-value anything (e.g., repeating tables), as those tend to be implemented differently in different systems.
 
So, I am creating forms that will never be used by anybody but me, all to be ready for you.

Copyright 2021 Genii Software Ltd.

Tags:

Wed 3 Mar 2021, 10:57 PM
Inline PNG image
 
 
Barely a week goes by when I don't hear the question "But can you take my Notes data and move it into <Shiny New Thing>?" Sometimes, the question goes the other way around. Either way, the answer is almost certainly yes. When it comes right down to it, one of the things we excel at is moving data around.  Chances are even good we can move from <Shiny New Thing One> to <Even Shinier New Thing Two>. (Companies do like shiny.) Moving data accurately and well is critical whether you want to move your data for a project, for a moment, or forever.
 
We might already have a tool for it. We might need to pull together some different custom tools we have. We might need to use Midas or Exciton or sheer magic. But we can most likely get your data moved, and we can most likely do it with the highest fidelity available. We are not as cheap as that freeware tool you can download from <Shady Website Du Jour>, but we also don't bring the viruses along with us. We might not have the sales team to take you out to a fancy meal before lifting your wallet and dumping it out on the table.
 
We just care about data. We are especially good with Notes data, kind of a speciality of the house, but we are quite adept with other data as well. You might need it in JSON or XML or CSV or HTML, or most likely some combination. Whatever your shiny new thing is, we can help you get your data there, and make sure it shines too when it gets there. The image below includes some of the formats we support, but there are plenty  more that are specialized variants, so don't hesitate to ask. Just know that the answer is probably yes, and that even if it isn't, we can probably turn it into a yes in short order. We're good that way. If you want to ask this question or any others, I can be reached at . I look forward to hearing about the data you need for your shiny new thing.
 
 
Data retrieval, migration, and archiving
 

Copyright 2021 Genii Software Ltd.

Tags:

Mon 1 Mar 2021, 03:25 PM
Inline JPEG image
 
This week, I'll hit my blog's 18th birthday. With over nine posts a month on average, I've kept this going far longer than I would have expected. Sometimes, people even seem to read the darn thing.
 
Thanks for reading. Thanks for putting up with the dating advice to my daughter, the nonsensical tales of Mike Midas and Crystal Coex, the endless ponderings, and the incessant self-promotion. Without you, this blog would be totally pointless. So, thanks. On a different blog, I might try to come up with highlights, but the biggest highlight for me is just being here.
 

Copyright 2021 Genii Software Ltd.

Fri 19 Feb 2021, 11:44 AM
Yesterday, I wrote a post called Getting the point(s) across with Domino, O365, and Outlook365, but while it is fascinating, it also related to Notes/Domino email which may be a distant memory for some companies. But last night, it occurred to me to try a similar test with Domino mobile and web development, surely a more pressing issue for many companies today who are upgrading Domino applications. I decided to make one change to the content first, which was to make the lists ordered rather than bullets, as it is easier to tell the levels apart.
 
Note: Before I start, I want to acknowledge that part way through writing this post, I started doubting myself, as I was sure nested lists couldn't be this bad. I realized that there are two ways to create nested lists in Notes, and while they may look identical, one renders more reliably than the other. The basic difference is how you create the indents for the list. Suffice it to say, you have no easy way of knowing which technique was chosen, so the rendering can only be considered unreliable.
 
I decided to start with classic Domino web development and move forward in time. I would have included the new AppDev stuff, but it doesn't really render rich text at all. Go figure. Anyway, let's first look at how this looks in the Notes client, and then how it looks retrieved by our Exciton Boost REST API, just to see what it should look like. In each case, take note of what Roman numeral is displayed for C is for Cantaloupe. In the Notes client, it was III.
 
Created in Notes 11.0.1 client
 
Inline JPEG image
 
 
Displayed by Genii Software's Exciton Boost 4.6.1
 
Inline JPEG image
 
 
Displayed by Domino 11.0.1 HTTP (Classic web design)
 
Inline JPEG image
 
 
Displayed by Domino 11.0.1 XPages
 
Inline JPEG image
 
 
Retrieved by Domino 11.0.1 Domino Access Services (retrieved as HTML with ?multipart=false)
 
Inline JPEG image
 
 
Retrieved by Domino 11.0.1 Domino Access Services (retrieved as MIME)
 
Inline JPEG image
 
 
 
Explanation of the two ways to create nested lists
 
Modern method: The current common way to created a nested list is to use either the Indent and Outdent toolbar icons or F8 and Shift-F8 to do the same thing. This will shift both the left margin and first line left margin. See the two middle icons below with the little arrows.
Inline JPEG image
 
But these were not always there as options, and an earlier way to create nested lists was to change margins via the ruler.
 
Older method: The older way to created a nested list was to use the ruler and change the margins. Older rich text, or text created by long time users, may be more likely to have nested lists created this way. If you look at the ruler below, this is the indentation for Granny Smith. Note that only the top margin (the first line) is indented. In Notes rich text, that first line margin is what determines a "new indentation", which is why the ordered lists start over. But for some reason, the different engines that drive Domino don't seem to recognize that simple fact, and treat the nested list as a single list, albeit with different list types.
 
Inline JPEG image
 
 
--> Request an Exciton Boost evaluation license today and give it a try. <--
 

Copyright 2021 Genii Software Ltd.

Tags:

Thu 18 Feb 2021, 03:11 PM
When running some tests for a couple of prospective CoexLinks Fidelity customers, I was reminded again of two things.
 
One: Domino email doesn't always render well without help (i.e., CoexLinks Fidelity)
 
Two: Outlook 365 is a weird beast, not matter how much people might want it to be a successor to Notes/Domino.
 
Let's take the following email, written in Notes. 
 
Sent from Notes 11.0.1 client
 
While nested bullet points like this may not be elegant, they are reasonably common in office emails, and were back in 1989 when Lotus Notes 1.0 was released. Notes 1.0 supported nested bullet lists.
 
Inline PNG image
 
 
 
Received in Outlook 365 web client (after rendering by Domino)
 
One of the fundamental ideas of nested bullet points is in that first word, "nested", but sadly, the point has been lost due to the Domino rendering. But worse is yet to come.
 
Inline PNG image
 
 
 
Received in Outlook 365 desktop client (same email)
 
Having already lost the first fundamental idea of nested bullet points, Outlook manages to screw up the second, as in that second word, "bullet". The bullets are mysteriously missing from the email. Absent nesting, indentation, and bullets, the combination of Domino 11 and Outlook 365 has taken this commonplace corporate staple and completely missed the point(s).
 
Inline PNG image
 
 
 
Received in Outlook 365 web client (after rendering by Domino with CoexLinks Fidelity)
 
Fortunately, all is not lost even if you use the unholy combo of Domino and Outlook 365. You just need to add CoexLinks Fidelity to the mix, and badda-bing badda-bang, things get rendered right and displayed right in Office 365 on the web.
 
Inline PNG image
 
 
 
Received in Outlook 365 desktop client (same email)
 
... and, of course, in Outlook 365 desktop client. I hope this gets the point(s) across.
 
Inline PNG image
 
If your company uses Notes mail/Verse, even if it just uses them to pass on programmatic emails to Outlook 365 (or Gmail or whatever), CoexLinks Fidelity fixes the problems that both Domino and Exchange have with email. It's that simple. Use the form below to send yourself a few sample emails and see what I mean. (Email address will not be sold or shared or used for anything but a single follow up to offer an evaluation license.)
 

 

Copyright 2021 Genii Software Ltd.

Tags: