MY EXPERIENCE:
- GUI
- Graphics
- C++
- Communications
- Distributed Database
Inkspin1 is a startup based in
Estonia founded by people who had been with Skype since near its
beginning. They are partners with Skype in writing a Skype client
intended to run on televisions, to allow "grandma" to use Skype
without needing to figure out the whole computer thing.
Most televisions run Linux (I didn't know that!), so our job was
to write a generic demonstration client that would be easy to tweak to
TV manufacturor hardware and branding requirements.
When I came on board the development group was 4 people in China
working on the GUI and the "guru" in Estonia who was handling the
connection through the Skype API. They had been working on the GUI for
over 6 months, and it was going nowhere. It didn't take more than a
few days to see the problem was they had no overall design - every
application and every screen used GTK and Clutter API calls for their
graphics. Not only was writing and adjusting
every applicaton a major job, but when the time came to customize for
manufacturers the process would be just as slow and error-prone as
making the demo was.
After a month I went to Estonia to meet with the directors, and
convinced them that this would not work, that we had to start over. I
promised that by the end of 2 months we would not only have the new
system in place and be back where we were, but that the scheduled
release of the demo version would not have to be delayed, that in 3
months' time the GUI would be essentially done. In the 2 days I had
left in Estonia I got the basics of the design done and demonstrated
the main application running.
They agreed to the change. One of our programmers was fired, a
second second quit, and we picked up one new junior who was very good.
And... we got the code finished on time. Using our new widget set
applications were not only much shorter and simpler to write, but they
were easily adaptable to any style changes requested by our designer
or clients. Widgets ranged from basic geometrical shapes up to more
complicated ones like a virtual keyboard for entering data, or a badge
for representing a Skype contact.
Besides writing the widgets, the most interesting thing about this
project was learning how Skype ran its distributed database. Event
handling is very different when a request needs to be sent out to the
cloud, and there is no guarantee of how many replies you will get, how
long it will take them to come in, and when they are finished.
Inkspin1 ran into cash flow problems and shut down development for
some time, including closing their China development group. But, they
have recovered and their product was announced in early 2013. I spoke
with the CEO, and they are still using the GUI that we wrote.
Back to resume
Back to home page