Category Archives: Kerika

Posts about Kerika, the company and its people

A change to our Privacy Policy

We have updated our Privacy Policy because we have decided to use Microsoft Clarity, at least on an experimental basis, to understand better how visitors navigate our website.

Microsoft Clarity uses cookies (see here for more details), and you can reject or block them if you want; it won’t affect your use of the website or the app.

We have a lot of different website pages, but we still need a better understanding of how people actually view them, and which parts seem to be most important to our users.

Google Analytics provides some of that information, but not enough, and it looks like Microsoft Clarity will help us optimize our website content.

Let us know if you have any questions or concerns.

How Kerika became zippy

With the new version you will notice that Kerika has become much faster on the desktop than previously: now any board, regardless of size, should load in under 3 seconds if you have a fast Internet connection.

With the old version this wasn’t true: the time to load a board was proportional to the number of cards (tasks) that were on the board, and while most users didn’t notice any lag, people who were using Kerika at a large scale, e.g. with boards of a thousand cards, would have to wait a while for the largest board to full open.

With our old code, every board was loaded sequentially column by column, starting with the leftmost column, and within each column every card was loaded before another column’s loading started.  This approach didn’t scale well, and the flaw of this approach became all to obvious when we built our mobile apps, which used a “lazy loading” approach.

To fix this, we rewrote the desktop app from scratch, an effort that took nearly nine months for our small team to complete, from design, implementation, testing and endless refinement.

With lazy loading the system prioritizes which cards to load, rather than trying to load all of them one by one.  If your board has 15 columns, for example, not all of these can be viewed at the same time: most displays will show just 5-6 columns at a time.  Kerika keeps track of which part of the board you were last viewing, and then intelligently loads the board from that point of view.

All the other columns are loaded only as the system senses you are going to need them: as you scroll to the left or right, for example, the system automatically (and quickly) fetches more columns into view. If the system does this fast enough, the user never realizes that her entire board wasn’t loaded at the very beginning, because no matter where she is looking, everything she needs is always in view.

We took a similar approach to loading columns with a lot of cards (tasks). Instead of loading all the cards that exist within a column — and these can number hundreds, for large boards — the system considers how many can be displayed at a time given the user’s particular device: laptop, desktop, tablet, or phone.

Having calculated how much of a column can be actually viewed by a user, the system loads just those many — and a few more in anticipation of the user scrolling her view of a column. As the user continues scrolling down a column, the system races to fetch more cards from the server so there’s never a gap in the user’s view.

But lazy loading alone wasn’t enough, we also had to deal with the speed at which a browser can display a bunch of cards. This speed varies by browser type, as well as device.  A low-powered computer, perhaps running an older browser, can’t render cards as fast as we need for the user to have a true real-time experience.

Yes, we have updated our Log4J

We use Log4J mostly in our development environment, where we write new code; less so in our test environment, where we use our new code ourselves to make sure it works well (a philosophy known as “eating your own dogfood”); and only rarely on our production environment, which is where our users are.

That reflects the normal approach to debugging: you want to find problems well before they reach users.

And we are aware of the guidance from the United States Cybersecurity and Infrastructure Agency about a recently discovered critical vulnerability in the Log4J software. Naturally we acted promptly upon getting that news and updated our software on all our environments!

Tablet support

We have added tablet support for iOS and Android devices, as you can see:

The tablet experience is like that of the desktop, not the phone.

For the phone app we had to redesign a lot of the user interface to accommodate the limited screen space, but with most tablets today there is enough screen resolution to support the more extensive desktop experience.

Easier to preview documents on mobile devices

We have made it easy for you to preview documents that are attached to cards or whiteboards, regardless of how you sign up for Kerika.

Screenshot showing a preview of an attached document on an iPhone
Previewing docs on an iPhone

You could have signed up using a Google ID, a Box ID, or just your email: it doesn’t matter how you signed up, nor how other members of your team signed up.

Previewing documents just became really easy.

A recent update to our mobile App

When you click on a link to a Kerika board or card in an email, that link will now automatically open in the Kerika Mobile App instead of opening in a browser tab.

This makes it a lot easier to respond to emails sent when your team members do chat on boards that concerns you: you can either do a quick reply as email itself, or, if you need more context, click on the link to open the card inside the Kerika app and see all it’s details before deciding upon your reply.

Back up to speed (after Covid-19)

Our development team is based in India, and starting about 4 weeks ago we started getting hit hard by Covid-19.  Eventually everyone in our India team was affected one way or another, either by falling sick themselves or having a spouse or child fall sick.

Thankfully that’s over now.  We are back up to speed.

An update to our Terms of Use

We had always treated our customers data as confidential, and have never shared that with anyone else.  At the suggestion of one of our users, we have updated our Terms of Use to make this a written commitment.

We have added Section VI to our Terms of Use:

“Confidential Information” means information identified by you as confidential at the time of disclosure or that a reasonable person would consider confidential due to its nature and any confidential, proprietary, or privileged information disclosed while creating or modifying the Kerika boards.

Kerika shall preserve the confidentiality of your Confidential Information and treat such Confidential Information with at least the same degree of care that Kerika uses to protect its own Confidential Information, but not less than a reasonable standard of care.

Kerika will use your Confidential Information only to exercise its rights and perform obligations under these Terms. Confidential Information will be disclosed only to those employees of Kerika with a need to know such information in connection with Kerika’s use of the Confidential Information in accordance with these Terms.

Kerika shall not be liable to you for the release of Confidential Information if such information is divulged pursuant to any legal proceeding or otherwise required by law, provided that, to the extent legally permissible, Kerika will notify you promptly of such required disclosure. Kerika agrees to promptly notify you of any unauthorized access to or disclosure of the Confidential Information.”