Review of 2014

Filed under:

2014 was a great year for the blog despite my apparent inability to
write past late August. As a light reintroduction to the sport of
blogging, I figured it would be useful to highlight some of the most
popular, overlooked and (I think) cool posts from last year in addition
to some stats I find interesting.

Most Popular Posts of 2014

Though technically posted in 2013, my Introduction to KAREL Programming was by far the most popular post on the blog.
It seems there are a lot of people interested in learning KAREL! I have
a few ideas as to why:

The TP language is very limited.

The FANUC ecosystem is very closed and difficult to extend.

FANUC makes it difficult to get manuals and learn their software.

People are attempting new and ambitious projects with robots every day.
Unfortunately the TP sandbox is very limiting. Luckily FANUC provides a
lower-level language with a little more control in KAREL, but it’s not
widely publicized or documented. My guide serves as a good “Hello,
World” introduction, but you really need the API documentation to be
productive.

Writing TP Programs by Hand - Pros and Cons
was my second most popular post. Again, we see robot programmers trying
to learn how to be more effective while working on their robots. I
always code my FANUC projects by hand. It definitely helps increase my
productivity and the quality of my code. The TP editor is great for
making small changes, but it’s a nightmare when dealing with large
products.

There’s definitely a missing link in the process though. Here’s how I
typically go about programming a robot:

An IDE or vim script that could automatically do step 5 would be great.
In fact, inspired by the Go Programming Language’s go fmt utility,
I wrote a utility that will validate and reformat TP code, removing line
numbers, wrapping long comments, etc. It needs a bit more work to be
able to compare changes between a local and remote file, merging only
the necessary changes in the correct locations, but it’s getting there.
Interested? Shoot me an email.

Introducing
KUNIT
was my third-most popular post of 2014. KUnit is a simple unit test
framework for KAREL. To be completely honest, I have not really used
KUnit beyond testing KUnit, but I would love to hear if others have used
it. I was happy to receive a pull request from a Mechanical
Engineering professor computer scientist and researcher at the
Technical University of Delft in the Netherlands who is very active in
the ROS project. I’ve been keeping my eye on ROS
for a while now, and I definitely want to dive in a bit more in 2015.

I wrote my first programming language in 2014: TP+. Here’s the
introductory post. I used it
successfully on a fairly large project, but it suffers from a number of
issues. I plan to re-write TP+ from scratch in 2015 and probably release
it as open source.

Most Overlooked Posts

I think my post on Simulating TP Programs in the Browser with tp.js is probably the coolest one of the year.
I wrote a fairly complete TP parser and runtime in JavaScript. You can
see some code executing right in your browser if you click over there.
I’d love to spend some more time on this and possibly release it as open
source this year.

Technically written in 2013, but I think this post is worth a read:
Intelligent Part-Presence.
Part-presence checking is so important in material handling
applications that I believe it deserves some discussion. In fact, my
opinions and techniques have changed significantly since that post was
written. This post called Keep It Running
is a little closer to how I program my part-presence macros these days.

If my site statistics are truly telling, it would seem that I’m the only
FANUC robot programmer in the world that uses vim! I created a vim syntax
highlighting file for FANUC TP
a while back, and I love it. Here’s a screen shot:

Interesting Metrics

I am a total metrics/statistics geek. If you are too, you might find
some of these interesting.

My traffic has steadily grown despite my break from blogging towards the
end of this year. Much of the site’s traffic is from Google, so it makes
sense that I would continue to receive traffic (and even increase) as
Google determines the site is worthwhile.

Less than 50% of my traffic comes from the United States! The industrial
robotics field is definitely global with many of the site’s visitors
coming from Canada, Germany, Brazil, India, France, Italy, the
Netherlands and Spain.

Google seems to think that two thirds of my visitors stay for 10 seconds
or less. Maybe I need to redesign the site? I take solace in the fact
that of the remaining visitors, many stay for three to ten minutes and some for
up to twenty!

80% of my traffic comes from Windows PCs, with Android and iOS bringing
up the number two and three spots. Macs only represent 5% of my traffic,
and the majority of that is probably myself. I really shouldn’t waste my
time developing utilities for Mac and Linux just yet.

Wrap-Up

2014 was a great year for the site and for me professionally. I worked
with many great companies on many very interesting projects. 2015 is
already booking up, and I’m excited about some of these new projects.

I plan to publish more both on this blog and open source on GitHub. I’m
also working on more developer tools similar to BackupTool and TP+ to
come out later this year.