Category Archives: Technology

Posts related to technology in general.

3 shades of grey are plenty

Some techies in Seattle may like up to 50 shades of grey, but at Kerika we try to stick with just three:

Kerika Grey
Kerika Grey

This is easier said than done: there’s a lot of grey in the Kerika user interface, and as we add new features or tweak old ones, it’s easy to slip and introduce new shades of grey.

So, periodically, we need to take digital color meter and examine the Kerika UI in detail, pixel-by-pixel, to look for stray shades of grey.

Limiting the palette of grey to just 3 shades is an example of how constraints can help designers.

Simplifying the use of Tags with Scrum Boards

Kerika’s Scrum Boards look a lot like regular Task Boards (which you can use for Kanban-style) work; the main difference is that each Scrum Board can share a backlog with other Scrum Board.

(And switching between a Task Board and a Scrum Board takes just one mouse click!)

We were doing some fairly complicated bookkeeping when people added tags to their Scrum Boards, and we decided it was getting messy both for the system and probably the users as well.

So, we are simplifying tags for Scrum Boards:

  • Every Scrum Board is connected to a shared Backlog. (And, if there was no backlog to connect to, Kerika will automatically start a new backlog for you.)
  • Cards on the Backlog may use a certain taxonomy for their tags, while each Scrum Board could add to this taxonomy, e.g. by adding a new tag that makes sense for a particular Scrum cycle (Sprint).
  • Now, whenever you add a new tag to a Scrum Board, this will automatically get added to the Backlog’s taxonomy as well, and to all the Scrum Boards that share that Backlog.

The effect of all this is to ensure consistency of your tags taxonomy across all Scrum Boards that share the same Backlog: this will make it easier to pull cards from that Backlog into any Scrum Board and know that you will automatically get all the right tags set up for you by the system.

Yes, there is a “Kerika Blue”

We try to be consistent in our use of colors and shades throughout the application, although it is easy to slip up from version to version, particularly since we do so many releases a year.

One recent diversion we corrected was in the use of the color blue: we have a specific shade we call Kerika Blue (#0099CC) which is used to indicate the concept of “new”:

Kerika Blue
Kerika Blue

Kerika Blue is  more muted than the regular blue that you might find elsewhere: we generally try to keep our color scheme muted, so that the decoration of the Kerika app doesn’t compete with your data — after all, your data are far more important to you than anything we do in terms of decorating your screen 😉

Security within a Virtual Private Network

All of Kerika’s servers, which run on Amazon Web Services (AWS), operate within a Virtual Private Network (VPN), so they can be configured to only listen on local ports, e.g. ports like 10.0.0.1, etc.

This means that they cannot be accessed directly from the Internet: instead, all connections are routed through an Elastic Load Balancer (ELB), which is a special kind of AWS server that handles connections from all users.

The ELB is very secure: it implements SSL 2.0, and when vulnerabilities like Heartbleed and POODLE are discovered, it is relatively easy for us, with Amazon’s help, to quickly ensure that the the ELBs are patched.  Patching the ELBs quickly gives us breathing room to patch all the other servers involved, particularly if vulnerabilities are found at the platform level itself.

But, running a VPN isn’t enough: while it blocks people outside the Kerika server environment from directly accessing our database, there is still — at least a theoretical possibility — that an attacker can find his way inside the VPN, and then try to connect to our database server on a local port.

To avoid this scenario, we use SSL within the VPN as well, so that the connections from the load balancers to the database servers are also authenticated and encrypted.

Bug, fixed: Exporting from a Kerika+Box board now shows user names correctly

We found a weird bug related to the export feature for Task Boards and Scrum Boards that affected users of Kerika+Box, and it has to do with the way Box keeps track of user names that’s different from the way Google keeps track of user names.

Both Box and Google ask for your first name and last name when you sign up, but their content APIs — the programming interfaces that Kerika uses — differ in the way they provide these names to Kerika.

Google gives us the first name and last name separately, e.g. it would tell us a user’s first name is “Arun” and his last name is “Kumar”.

Box, however, gives us both names together, as “Arun Kumar”, and this presents a problem because we can’t always figure out what the last name is.

And, by the way, given the wide range of cultures represented by our users, it’s far from easy to guess which part of a name is the “last name”.

For example, consider Latin American name like “Maria Beatrice Fernandez Rosario”.  Here, the last name is probably “Fernandez Rosario”, but we can’t be sure.

The bug showed up when people did exports, by appending “null” to the name — basically this meant Kerika didn’t know what the last name of the user was, and simply tagged it as “null” (which is computer-speak for “I have no idea”).

We have fixed this.

Bug, fixed: a scenario where you could have ended up with duplicate tags

We found a scenario where your Scrum Board could end up with duplicate tags. Let’s say you had a Shared Backlog which had some tags, and you also had a Scrum Board Template that had some similar tags.

If you created a new Scrum Board using that Backlog and that Template, you could have ended up with some duplicate tags, which is not at all helpful.

We have fixed this.

Windows tablet experience improved

As with Android tablets, we have been doing a bunch of testing and bug fixing related to using Kerika on Windows tablets and touch devices generally (i.e. the many combinationss of touch and keyboard that make up the Windows computer ecosystem)

And, as with iPads and Android tablets, you don’t need to install a special app in order to run Kerika: you can just use the Internet Explorer browser (or any other browser you have installed) to access Kerika, and use your finger to move stuff around just as you would with a mouse.

There were some problems with the touch interface that we have fixed; the overall experience should be a lot better than it was before!

Dealing with new top-level domains

The growing number of new top-level domains (in addition to the old familiar .com, .org, etc.) that are available is finally starting to have an impact upon us…

While we haven’t seen a lot of use of these new domains yet, a few useful websites are starting to pop-up, e.g. using the .guide top-level domain, and this has required us to abandon an old feature of Kerika that is not going to work any more.

We used to have some validation code that checked that people were entering URLs correctly, e.g when they wanted to add a Web link to a card or to a canvas.

This validation is pretty much impossible to do in the old form, because of the rapid proliferation of new top-level domains, so we are dropping that validation feature which was kind of nice to have…