All posts by user

Amazon burped a little on the weekend

We use a number of Amazon Web Services, including one called Simple Queue Service which Kerika uses to handle communications between our main project database server and a separate server that handles the Search function.

  • As with all search engines, Kerika’s Solr engine does a full indexing of the database only once: when the database is rebuilt for any reason (which happens very rarely), and after that it does incremental indexing which means that it only looks at changes made to individual boards, cards, and canvases.
  • Using a queue helps us manage the load of traffic going to the search engine server: in the unlikely event that a lot of people make a lot of updates to their Kerika boards at the same time, Solr won’t get overwhelmed with a sudden burst of new indexing.
  • There are lots of ways to implement queues in software — in fact, studying queuing theory is a standard course in all computer science programs — and at this point most apps, like Kerika, prefer not re-invent that particular wheel: instead, it is more cost-effective to use some standard queuing facility that’s available as part of the underlying platform.

AWS works very well in our opinion — it has very high reliability across most of its services — but like all software, it isn’t entirely infallible.

Over the weekend we observed a small handful of errors in our services logs where it looked like SQS had a temporary problem.

We cross-checked this time period with other activity on Kerika, and determined that about 7 Kerika boards may have been affected: not in terms of any data loss or corruption on the board itself, but in terms of some changes not being updated in the search index.

Now, 7 boards is a tiny portion of the entire Kerika project database, which numbers in the hundreds of thousands of boards, but we are glad to have spotted the potential for trouble and have re-indexed the data on these particular boards.

If we did our job well, no one will notice.

From Projects to Boards: a clarification

We used to refer to “Projects” and “Boards” somewhat interchangeably on our website, our blog and in the Kerika app itself.

There was no special reason for this: in our mind, a Project was clearly a Board, and vice-versa, and it never occurred to us that this might prove a source of confusion to anyone.

Well, we were wrong about that.

In the real world, people are very cautious about “starting a new project”, because this might involve getting formal administrative approval, budget allocation, staff changes, etc.

In other words, in the real world a “project” is a big deal.

But, in Kerika, starting a new Task Board, Scrum Board or Whiteboard is not a big deal — and that is very much by design.

Unlike so many other collaboration tools that make it difficult for you to create as many boards as you like, Kerika was always designed to make it very easy for you to redesign your work as needed: start new boards, move cards or canvases from one board to another (using Cut, Copy and Paste), and to move ideas and content from one context to another.

Many of our competitors don’t offer this kind of flexibility: either the software makes it hard, or their billing model actively discourages you from creating multiple boards.

That will never be the case with Kerika: we will always support flexibility in how you organize and manage your boards.

Still, our interchangeable use of “projects” and “boards” was definitely causing some confusion, which we have fixed with our latest release by using the term “Board” consistently and avoiding use of the term “Project”.

So, if you were a Project Leader previously, you are now a Board Admin on that board. Your rights and privileges remain the same, it’s just your title that changed.

Board Admin
Board Admin

When you start a new board, what used to be called “New Project” is now labeled “New Board” to make it clear what you are doing:

New Board dialog
New Board dialog

We hope this makes for better usability: let us know what you think.

Vimeo makes for better embedding (than YouTube)

We post our tutorial videos on both YouTube and Vimeo, and get far more traffic on YouTube than we do on Vimeo.

But, as we go through a review/refresh of our website, we are switching over to Vimeo for embedding these tutorials, because Vimeo provides a cleaner look that seems to be less intrusive within our own design.

Here’s the same video, embedded from YouTube (on top) and Vimeo (on bottom):

The YouTube video has a weird grey shadow on the top part of the thumbnail, like it was deliberately trying to provide a retro, cathode-ray-tube (CRT) look.

(We are not fans of CRTs; don’t own vinyl any more…)

The same video on Vimeo has a cleaner framing:

 

How you can tell if your Project Team has changed

If you are the only Project Leader on a Task Board, Scrum Board or Whiteboard, you will know when someone joins a board — after all, you would have approved their invitation in the first place.

But, if there are several Project Leaders for a board, it might be one of the others who added somebody to your board, and they might not have discussed this with you…

So, Kerika makes sure you know whenever the project team on any board has changed in any way:

  • If someone has joined,
  • If someone’s role has changed,
  • If someone has left.

(After all, someone could have left the team on their own, without telling you!)

Whenever there is a change in the project team, the Board Settings button on the top-right of the board will appear in orange.

Board Settings is highlighted
Board Settings is highlighted

Click on the Board Settings button, and you will see the Team tab is highlighted: this is Kerika’s way of drawing your attention to this particular tab within the Board Settings display.

Team tab is highlighted
Team tab is highlighted

When you go over to the Team tab, you will see that the new person’s name is highlighted in orange, for a few seconds. It’s a discrete yet very effective notification from Kerika, drawing your attention to the presence of someone new on the team.

Changed roles are highlighted
Changed roles are highlighted

The same kind of notification is used when someone’s role on the team is changed, e.g. from Team Member to Visitor.

Kerika also tries to let you know when someone has left the team, by highlighting the Project Settings button in orange, and the Team tab within the Project Settings in orange as well.

Smart notifications, from Kerika — the only work management system that’s designed specially for distributed Lean and Agile teams :-)

Attaching content to the board itself, not just to cards

We have added a new feature that should prove handy for a lot of folks: you can now add content — files from your laptop, images from your mobile or tablet, Web links from your Intranet or the Internet, or canvases — to a Task Board or Scrum Board itself.

If this sounds like something that was always there, maybe we need to say that differently: you used to have the ability to add content to a card, now you can add it to the board itself.

There are many situations we have encountered where we want to share content or a canvas with a team, but there wasn’t any obvious place to still it — no single card on the board that seemed like the right place to attach that content.

And that’s because the content we wanted to add was applicable across the entire board, not just relevant to a single card.

This was getting frustrating, so we decided to scratch our itch: a new button on the top-right area of your Kerika app will let you add files, Web links and canvases to the board itself:

Board Attachments
Board Attachments

This should make some of you as happy as it has made us!

Using animation to help users understand canvases can be attached to cards

We have been cautiously adding animation to the Kerika app — as noted previously — where we think it helps people understand the results of their actions, and why a visual context just changed as a result of something they did.

One such place is when you add a canvas to a card: we added a “blow-up” animation effect to help users understand that they are opening up a new canvas.

To complement this, we added a “collapse” animation when you navigate up from a canvas to the card that contains it, whether you do that by clicking on your browser’s Back button or by using the Kerika breadcrumbs that appear just above the canvas:

Using breadcrumbs to navigate
Using breadcrumbs to navigate

This collapsing animation effect helps reinforce the idea that the canvas you just left was attached to a particular card, and now you are back up a level and viewing all the attachments on that card, including the canvas you were just viewing.

Adding a Google Map to your Kerika canvas

Did you know that you can embed a Google Map in your Kerika Whiteboards? It’s easy: just copy the Google Map’s URL:

Adding a Google Map to Canvas
Adding a Google Map to Canvas

And paste it into the dialog box that appears when you click on the “Add Web Content” button on your canvas toolbar:

Add Web Content
Add Web Content

Kerika automatically figures out the URL refers to a Google Map, and shows you an embedded map on your canvas:

Example of embedded Google Map
Example of embedded Google Map

You can do the same thing with card attachments, for your Task Boards and Scrum Boards: Kerika shows a small thumbnail of the map in the list of attachments on your card:

Example of attached Google Map
Example of attached Google Map

 

UI tweak: removing the “Add member” button from card details

As part of our work on combining tags and colors, we have been cleaning up parts of the Kerika user interface that had minor inconsistencies.

One such inconsistency — in our view — was that you were able to add people to a project team from within the card details dialog itself:

Adding people to a team
Adding people to a team

This button has been there in Kerika for a very long time, but it doesn’t really make sense to have this capability within the card details dialog: it just isn’t the best place to decide to add someone to a project team.

Instead, in our new layout the Project Settings dialog consolidates all the board management in one place, including adding people to a team, changing someone’s role within a team, and removing someone from a team: