Chrome Extension: My Tiny Tiny RSS

Last month Google’s spring cleaning announcement, included a rather surprising statement. They announced Google Reader was on the chopping block. Like many, I immediately began a search for alternatives. I finally chose to go with a custom install of Tiny Tiny RSS. It fit nearly all of the criteria that made me love Google Reader. Tiny Tiny RSS is fast, stable and has a very straightforward interface. There’s an Android app that doesn’t sacrifice features. And, best of all, I can host a copy on my own server to guarantee it’s never taken away. All that was missing was an app icon in Chrome for my start page.

I created My Tiny Tiny RSS, a Packaged Chrome App which links to your custom install of Tiny Tiny RSS. On first launch, it asks you for the url of your Tiny Tiny RSS site. Once entered, it is a permanent link to your site. You can install it now, for free, from the Chrome App Store.

Posted in Reviews, Updates, Web Development | Leave a comment

The Problem With Twitter Cards

I never paid much attention to Twitter Cards, the nicely formatted breakouts which accompany tweets. Most contain website details scraped from social sharing metadata. I recently found out that these cards have their own set of metadata that you can customize for Twitter. Twitter recently announced the release of a few new cards, including one for mobile apps. This spurred me to research Twitter Cards and led me to the key problem facing them today: High barrier to entry.

The first part of this problem is obscurity. Even the name, Twitter Cards, is not commonly used. While facebook metadata is widely accepted as the defacto standard of social sharing, that twitter has its own unique metadata is not widely known. Adding photo galleries, product listings, and now apps, with specially formatted presentation in a Twitter feed is a useful feature. Twitter needs to improve in publicizing these benefits.

Implementation of Twitter Cards could not be more straightforward and simple. Following the facebook metadata model, it’s as easy as adding a few extra tags to your web page’s <head> element. Hearing the announcement of the new app cards I thought it would be fun to integrate the Android app of my venerable JAWS Converter into a Twitter Card. Setup was easy however testing yielded no results. This led me to discover twitter’s developer page, which helps you debug the metatags. I also found out why my metadata would not show up as a Twitter Card. This brings us to the second part of the overall problem.

Once you setup your Twitter Card, Twitter must then manually approve it. Had I not read through the documentation and used the debugger, I would never have known about the approval process. The turnaround time for this approval process? According to Twitter: “a few weeks”. Working for a New York agency I know that kind of wait time is not acceptable for most. Regardless of the wait time, the approval process itself is antithetical to social promotion. Contrast the twitter approval process with the free-for-all approach of facebook; you put up your metadata and have custom share messaging instantly. Having to wait “a few weeks” for the privilege of sharing on Twitter is destructive to the platform.

As of posting this article, I am still waiting for approval of JAWS Converter. Developers be forewarned, there is a wait period and a significant one at that. I do think Twitter Cards are a good thing. I plan on taking full advantage of them now that I know I can. However, Twitter needs to do a much better job cultivating their developer platform if they ever want features, such as Twitter Cards, to gain the pervasiveness they deserve.

Update 5/16/2013:
My twitter card was approved! In just under 6 weeks.

Posted in Reviews, Twitter, Web Development | Leave a comment

A DHS Christmas

Keeping Christmas safe for the kids.

Posted in Zeta Comics | Leave a comment

Space Anglers: An Experiment in HTML5 Video Games

Join the Space Anglers tournament and compete for the highest score! Grab as many humans as you can before your energy runs out. Space Anglers is my first production in HTML5 <canvas>. It started out as an exploration of the various <canvas> libraries and eventually morphed into a full video game. The goal was to push the limits of HTML5 and create an arcade style game on par with what is typically done in Adobe Flash.

CreateJS

HTML5 <canvas> is quickly becoming an attractive platform for animation. Thanks to a number of evolving JavaScript libraries, it’s much easier to work with than it had once been. I’ve reviewed the PaperJS library, and experimented with several more, but the CreateJS library has a feature set which is distinctly suited for game development. CreateJS is the umbrella name for a suite of JavaScript libraries. Combined, they handle: <canvas> rendering, motion tweening, sound, and asset preloading. EaselJS, the CreateJS library which handles <canvas>, has very powerful controls for sprite based animation. I found this particularly useful in game development. Easel JS makes it very easy to create and manage sprite sheets, or single image files composed of many animation frames. Load a sprite sheet into EaselJS, define your frame grid and label your keyframes. It’s as simple as that.

To give you an example of EaselJS sprite handling, the following parameters set up the frame sets for the SpaceAnglers “absuctee” character:

“frames":
{
    "width": 44,
    "height": 58,
    "regX": 22,
    "regY": 0,
    "count": 17
}
“animations":
{
    "walk": [0, 9, "walk"],
    "stun": [10, 15, "stun"],
    "splat": [16, 16, "splat"]
},

Controlling the animation is as simple as gotoAndPlay(“walk”). EaselJS can create a mirrored copy of your sprite sheet as well. This eliminates the need for separate right and left movement sprites. Call addFlippedFrames() during initialization to add the mirrored frame sets. Now you can call gotoAndPlay(“walk”) when moving the sprite left or gotoAndPlay(“walk_h”) when moving right. Adding icing to the sprite handling cake, CreateJS also comes with a tool, Zoë, to convert an Adobe Flash swf into a png sprite sheet.

Thoughts on HTML5

There are, of course, drawbacks to HTML5 in its current form. Rendering speed differs with each browser. Being a Chrome user, I was surprised to see some of the best animation performance come from Firefox, especially on less powerful computers. Sound support is extremely inconsistent. SoundJS relies on a Flash fallback for browsers which do not support Google’s web audio api or Mozilla’s audio data api. Browsers on Apple’s iOS platfrom are left crippled in terms of sound.

I label Space Anglers “an experiment” because it was more of a learning experience than a full production. The game comes from a much larger concept, originally meant for flash, distilled down to a mini-game. Space Anglers has proved to me that not only can Flash quality game be created in HTML5, but it can be done with about the same amount of time and effort.

Play the game now at spaceanglers.com and get on the high score board!

Posted in Web Development, Zeta Comics | 1 Comment

JAWS Converter apps released

JAWS Converter has just been released on the Google Play store and the Chrome Web store. Both are free, because sharks deserve to be free. Check out the links below and start measuring your world in terms of sharks!

  • Android App Store
  • Amazon Appstore
  • Chrome Web Store

And for iPhone/iPad users, JAWS Converter has always been installable as a web app.

Posted in Updates, Web Development | Leave a comment