A New Journey Begins

Here we are again. A dusty blog and something to announce. I won’t even pretend that I’ll be updating more often this time; I now have another daughter on the way, and we both know how that turned out last time. I did want to post about a couple other changes, though.

Click for source

Kindle for webOS

Last year, I was planning on showing you how to build webOS applications using the Enyo framework. After a year and a half of working on the Kindle app for webOS, I was excited to show you how easy it was to build for the platform. I learned a ton about JavaScript and web technologies, and enjoyed working on a new form factor. The TouchPad shipped, and I was wondering what app I would work on next.

Well…then, it got weird.

All webOS devices were canceled or discontinued, and the webOS team was left wondering what the future held for the team and its efforts. After awhile, it was announced that HP would release the platform to the open source community. Many left, others were excited.

After awhile and some reflection, I decided it was my time to leave HP. I began the long, exhausting process of interviewing around different companies around the Bay Area. Then, in February, HP announced a sizable reduction in the webOS team. I was included.

By the grace of God, I was already in the middle of the interview process for a couple of companies, and gladly accepted a position as a Senior UI Engineer at Netflix (no, I can’t get the show you like on instant). I joined the TVUI team, which is responsible for the Netflix apps on the PS3, Wii, TVs, and other CE devices. My team is composed of brilliant people and, in just a couple of months, I have already learned a great deal from them. I’ve loved crafting rich, media-centered UI since I started at HP, and it’s very exciting to work on a form factor that will be evolving rapidly over the next few years.

Click for source

Netflix: get a subscription...or ten!

I value my time at HP highly. I worked with some great people, learned a lot, and contributed to software shipped on millions of desktops, laptops, and tablets. I began there fresh out of college and have grown these past 4 years a great deal, with the influence and support of my colleagues there. I wish them luck as HP shifts along with the markets it serves.

Obviously, I won’t be writing any posts on building apps on the webOS platform; however, if you’re interested, I’d suggest you check out Enyo. It has morphed into a cross-platform JavaScript UI framework, and I’m sure it is still just as easy to use.

My future posts will mostly be about JavaScript. Some will be about gaming. Maybe a few on general software engineering. Sorry, none will discuss the intricate differences between types of cheeses, nor their profound impact on the Renaissance time period (nope, not a single one).

Where I’ve Been

Shortly After my daughter was born, I wrote to let you know that life was crazy and I’d be getting back to posting soon enough. I proceeded to complete my series on WPF 4.0 muti-touch and left you shivering and alone for 9 months.

Now, I have returned with the warm blanket of a new layout, some enthusiasm, and a lot of empty promises new stuff to show you!

Adalae is now 10 months old, gigantic, and starting to crawl. She’s certainly been a large reason for the infrequency of posts. Sorry, but she wins. You lose. Every time. Excuse me while I include an obligatory adorable photo:

Work has changed a lot over the past year, which is another reason/excuse why I haven’t been posting. I’ve typically shared things I’ve learned while working, but the projects I had been working on left me a little short on interesting material that I could really share.

Things finally stabilized, and I am currently working over at Palm on the Kindle app for the newly-announced HP TouchPad. Since I’m no longer working primarily with WPF, you likely won’t see much more of it in upcoming posts. However, I’ll be excited to share, in due time, what I’ve learned about Enyo, the latest version of Palm’s mobile development framework.

So, that’s where I’ve been. I would tell you that I plan on posting here more often, but we both know it would just jinx us for another 9 months. Instead, I’ll just stare awkwardly into the distance with a hopeful look on my face.

Delay of Game

Back when I reflected on last year, I shared that I had a daughter on the way. Taking that and my recent inactivity into account, you may have been able to piece together that yes, indeed, I am now a father. Adalae Claire Eichacker was born on April 21st (I know, its been awhile).

Of course she has completely changed my life and I’m now in the shell shock phase of figuring out what the “new normal” is. To make things harder, my grandma passed away just a couple of weeks later.   After taking three weeks off for paternity and bereavement leave, I came back to work just as a big release was being finished up and a new project was beginning.  Now, the World Cup is going and I’ve started a side project (more on that later).

So suffice it to say, I’ve been a bit busy and this blog is getting LONELY.

Do not fear, however!  This has happened before, and will likely happen again.  I have plenty of posts in my drafts to finish or write, and I’m sure I’ll have plenty more as I figure out how to balance being a father, husband, gamer, and programmer.  Oh, and blogger.  Also, superhero.

Ok, ok.  Scratch that last one.

The New HP TouchSmart PCs

For the past year and a half, I’ve been working on software for HP’s TouchSmart all-in-one PCs. I develop and manage the deliverables for some of the tiles found within the TouchSmart software suite.  Allow me to take a moment and give you a TouchSmart commercial, explain my role in its creation, and how you can develop on the platform.

Two New TouchSmarts

HP released (in October – yes, this post is a tad late) two new TouchSmarts to coincide with the release of Windows 7, the 300 and 600 series. The 600 is the more performant and larger of the two, but both retain the same touch technology and form factor.  It sports the Core 2 Duo, while the smaller brother uses a 64-bit AMD processor.  You can pick and choose various components for the 300 and 600 at HP’s shopping site, so be sure to check out the specs there if you’re interested in more details.

The TouchSmarts use optical touch solutions, using two infrared sensors to triangulate the positions of up to two touches. This 2-camera system presents some inaccuracies when two touches are involved, and it certainly created some challenges for my own development. These restrictions are found in all of the multi-touch all-in-ones currently in the market, as they are all based on the same technology, but our mathemagicians perform some voodoo on the data to more accurately approximate the location of the user’s fingers. It is a much more cost-effective solution when compared to capacitive touch screens, such as the iPhone’s, as the cost for that type of screen exponentially increases with surface area.

The TouchSmart software suite has seen quite a few changes itself. In case you are not familiar with the TouchSmart software for the 500 and 800 series (TouchSmart 2.0), it is a collection of touch-based applications displayed in two scrollable rows of “tiles”. These tiles are not interactive in this view, but the user can view information in each tile. To interact with the tile, the user taps on it and enters the full view of the application. You can find a video showing the framework here.

TouchSmart 2.0

TouchSmart 2.0

The big change in TouchSmart 3.0 is interactive tiles. The top row’s tiles have been widened and the user can now interact within each tile. Not only that, but the list of TouchSmart applications has grown beyond 20, and each of the existing applications have seen major enhancements.  A video for the new framework can be viewed here.

TouchSmart 3.0

My Role

The four applications for which I am responsible are:

Canvas
Create collages and tag your photos using multitouch gestures or voice commands. I was the developer on this application, which sprung from a sample application that I wrote to show our vendors how to calculate the touch gestures. You may have seen some of the results of that sample early if you’ve been traveling through Chicago recently, as the application being demoed is using a library I wrote.  Here, you can find a tutorial video (without voice commands but surely some bugs, since the video was shot far before we shipped).

Hulu
Watch videos on Hulu through the touch-friendly interface of Hulu Desktop, residing in the TouchSmart framework. This application was developed by Hulu, but I manage the deliverables for it, provide technical consultation for its integration, as well as ensure it passes through our qualification process.

Twitter
Twitter client for TouchSmart. If you’re into Twitter, you’ll know what’s here (it’s the standard fare for Twitter apps). If you’re not, you don’t care anyway. My responsibilities for this app are similar to my responsibilities for Hulu.

Clock
Clock application for TouchSmart. It’s identical to the TouchSmart 2.0 version, but has been updated to work with 3.0 and ported to Windows 7.

As I mentioned above, there are over 20 applications for the TouchSmart, so what I’ve done barely scratches the surface. The two teams working on the suite worked incredibly hard and have pulled off some amazing stuff. There are apps from photo editing to recipe management. For a full description of all of the applications, you can find them here.

How You Can Get Involved

You are free to create your own TouchSmart tiles if you have an idea for a touch application that would fit well within the TouchSmart framework. It is rather simple – in fact, an existing windows application can be living nicely in TouchSmart within a couple hours of development.

You can find the TouchSmart 3.0 SDK at the TouchSmart Dev Zone, a community based around TouchSmart application development.  Be sure to get involved here, as there are plenty of people willing to aid you in your development, and you can submit your completed application to this site for distribution.

The biggest highlight to this new SDK is that there is now a library for WPF to help you through some of the requirements for TouchSmart applications.  In it, you’ll find a Window class that will define your window with the necessary properties for a tile (no chrome, layout notifications, off-screen launching, etc).  There are also helper classes for common functions (loading localized language files, creating notifications in TouchSmart, sending requests to TouchSmart, etc).  Check the SDK for details and feel free to send any questions my way.

If you aren’t developing using WPF, it includes all of the information you need in order to create an application without the library.

Sound off in the comments any ideas you have for apps, as well as your interest in TouchSmart development.

Year’s End: Changes, Changes…

At the end of 2008, I reflected on the many major events that took place within the shortness of summer. I graduated, got married, moved 1700 miles from home, and started my career at HP. After settling into California life, my wife and I began to explore the area, meet new friends, and let life slow down a little. This year looked to be piece of cake.

We then decided that, given that the economy was driving down housing cost, we would look into purchasing our first home.  We quickly learned all that we needed to know about real estate to complete a purchase, as well as just how much more expensive California is, when compared to Kansas.

After moving into our new home, we decided to make it our own by doing some renovations.  Suddenly, our nearest hardware store became a fun place for inspiration and supplies, and we were completely in over our heads in terms of the scope of our projects, some of which still have yet to be completed.

We also decided to throw in a new dog, a golden retriever named Ecco.  He’s turned out to be quite the handful, granting him the nickname “Marley Dog.”  We’re starting to get a handle on him, but I’m still missing a few pairs of socks, and our carpet is quite the worse for wear.

Finally, we decided that a new home, renovations, and a dog weren’t enough and are now expecting our first child – a girl.  We’re preparing our home for a rugrat, and I’m going to have to look into getting a shotgun so that I can practice my shooting before she brings any boys home.

No, things are not slowing down in the least.  Given that a child is on the way, things are likely just ramping up.

Professionally, this year has been just as hectic.  I’ve now been an HP employee for 1.5 years, and have a few shipped products under my belt (more on those in another post).  Being that they coincided with the release of Windows 7, many late nights were involved to ensure that everything made the Windows 7 RTM date.  Of course, this was all done far before Windows 7 hit the shelves in October, and I’ve since been occupied with patches (more late nights for that), as well as some pretty cool new things.  I’m very thankful for a job in this climate and even more thankful that I find mine interesting.

In 2008, I started a blog as a means to slowly build up content for a website primarily focused on presenting employers a place to learn about me.  You might be familiar with this blog, considering that you are reading it right now.  I’ve come to a few realizations in the year that I’ve been writing:

  1. Much to my surprise, I’ve been able to interest some people with some of the information I’ve put out here.
  2. I had forgotten how much I enjoy writing and expressing my thoughts.

Due to these realizations, I’ll be focusing my content to better help those that stumble upon this blog, as well as begin to expand on the topics I write about.  Don’t worry – I’ll stay focused on the two things I know best: software development and video games; however, I’d like to move into a few new aspects of both.  I’ll also try to better encourage my readers to participate in a discussion, rather than digest and move on.

In light of both of those statements, do any of you have topics you’d like me to delve into?  Come on, you quiet bunch, start talking!  I only make you log in to make sure my comments aren’t filled with Viagra commercials.

I hope all of you have had a good year, and wish you a good one to come.  I hope that my writing has been helpful or interesting to you in some way, and appreciate your support!

In addition to topic suggestions, feel free to add the musings of your past year.  I’d love to hear how everyone else is doing.

Dairy Queen Deal

Dairy Queens got a new value menu, and they’re pimping it by having a contest. Since I’m all for free things and ice cream, I’ll do it!

What deal would I make with Dairy Queen to check out their Sweet Deals?

Well, I would show Dairy Queen just how sweet I can be.
Dairy Queen! I will take you out on a date. It would consist of taking you to yourself, getting a Sweet Deal (because I am sweet and also cheap), arguing with you about getting free Blizzards, and complete the night with an awkward hand shake, never to call you again.

What can I say? I’m a hopeless romantic.

DON’T TELL MY WIFE.

Update:

WIN

WIN

TouchSmart Community Site Launches

The site is geared mostly towards developers and includes the TouchSmart Software Developer Guidelines.  They’re currently having a contest for the best touch applications.  Runner-ups will receive a 22″ TouchSmart PC and their applications will be shown at CES 2009.  The grand prize winner will receive a 25″ TouchSmart PC and will get the chance to go to CES 2009 themselves to show off their work.

http://www.touchsmartcommunity.com

Check it out.

Why, hello there. I didn’t hear you come in.

Probably because this is the internet.

Welcome to my blog!  Name’s Andrew Eichacker.  I’m 22 years old as of this writing (born in December 1985) and originally from Wichita, KS.  In the summer of 2008, I graduated from Wichita State University with a BS in Computer Science, got married, then moved to Silicon Valley to start as a Software Design Engineer at HP in Cupertino, CA. I’m currently working on the TouchSmart PC‘s touch applications.

I plan to use this blog as a means to share a few things:

  1. what I learn in the realm of Software Engineering
  2. my views and ideas regarding things I’m interested in
  3. any personal experiences or thoughts I feel compelled to share
  4. whatever strange things I find around the internet

I hope that you’re able to gain something from this blog. If not, no worries. There’s plenty of space on the internet for another worthless blog.

🙂