A few weeks ago our team got an email from one of our sales guys asking if we’d heard of Kimono. He'd come across an article about the technology in one of his news feeds. I had a few spare minutes, so I decided to take a look at it and give some feedback.
The title of the article claimed that thanks to Kimono, I'd be able to create apps without ever writing a line of code! Assuming the worst, I decided to go straight to the source. Kimonolabs.com here I come!
The page was about as marketing-y as it gets. Big, colorful images with simple phrases next to them in sans-serif type. I moved on to the content, which was just short sentences trying to describe what the application does. Here’s where I came up against another personal red-flag. None of the sentences actually said anything about the application.
After reading them, all I knew was that Kimono had something to do with generating APIs. It felt like they were just spewing buzzwords at me. That’s insulting to the developer who could understand what the application actually does, and also disingenuous to the tech-illiterate who are just trying to help out their company.
What Does Kimono Really Do?
So I dug a little deeper into Kimono, looking at what it actually does as an application. Kimono is really a bookmarklet tool that allows you to set up pattern recognition on a website of your choosing and then scrape that data consistently so that you can access it whenever you want. Basically, scraping the data takes a news page (for example) and extracts all the of the information and puts it into a format that we can handle easily when programming.
For example, using their application you could go to CNN’s website and point and click to set up a scraping pattern that gets you all the article titles and authors. Kimono generates that into an API. Then whenever you want to get the article titles and authors off of CNN, you hit the API url, it scrapes the website’s content and returns it to you, all neatly packaged up for you to use in your website. If you like, you can have Kimono generate an app to view the output from your APIs.
Despite the buzz around automatically building apps, what you end up getting is a very generic newsfeed app, something that doesn’t provide much value and a developer could write in less than an hour.
Why We Still Need Developers
Let's examine the biggest problem of all: “Build an app without writing a line of code." As a developer, nothing gives me the heebie jeebies as much as that sentiment right there, and not because I'm afraid Kimono will put me out of a job. I understand that developers are expensive and slow (well…slower than you want us to be), and any way to shortcut that process is incredibly tempting. Here are the main reasons you want real, live developers writing your code:
- Code written by a developer is almost always better written and better performing than automated code.
- A developer can take your myriad of requests and adjust the code to handle them. Automated code, not so much. You still end up needing a developer for anything specific or custom.
- This last reason is kind of tied in with the other two, but code needs a human face. People can handle complexities that programs can’t. People can see the whole picture and build the application with the next 3 steps in mind. People can talk with you to work through problems.
Okay...It's Not All Bad
In all, while I have to admit that the tool has some cool features (the way you designate data and it recognizes patterns is actually pretty slick), it’s a very niche tool that I’m not sure would be worth licensing. It does work, and if you wanted another newsfeed this would be a simple way to create one. It's just not the magic, all-inclusive app building tool it claims to be.
My biggest worry of the product itself is that it seems like the pattern recognition might be dependent on the HTML structure or CSS properties. For the laymen, that means when a website gets a redesign, it has the potential of breaking the API you’ve been using.
Overall, Kimono is a cool tool, with very limited uses.