Archive for the ‘Tech’ Category

Introducing the dynamIt URL-shortening API

March 5th, 2010 by Kevin Pfefferle

While using the Tweetie 2 Twitter client on my iPhone a couple of weeks ago, I realized the app developer saw fit to include the option of using any URL shortening service I might desire if the shortening service provided an appropriate API.

API stands for Application Programming Interface. An API allows software to interact with other software. Twitter clients use the Twitter API to implement features of Twitter and access tweets, Twitter uses the Bit.ly API to shorten links using the Bit.ly service, and we have made creative use of various APIs on sites like Columbus College of Art and Design (which uses the Google Calendar API to power its deep set of event and news listings).

Since dynamIt already has a URL shortener built into our site, all we needed was a suitable API. I was able to use the existing scripting to generate and store the shortened URL, and only needed to adjust how the shortened URL was returned for suitable API use.

TinyURL has set a precedent for the simplest response possible—just the new shortened URL. Try calling the following action in your browser where [URL] is the URL you would like to shorten:

http://dynamit.us/url/api.dT?url=[URL]

The response will be the resulting shortened dynamit.us URL in plain text. You can optionally include the title of the page whose URL you are shortening as well:

http://dynamit.us/url/api.dT?title=[TITLE]&url=[URL]

While this simple plain text response can be interpreted by most applications, some developers may prefer a Bit.ly / JSON style response that looks something like this:

{ "shortUrl": "http://dynamit.us/222" }

If so, just add the URL variable “json=true” to the API call (with or without the optional [TITLE] variable):

http://dynamit.us/url/api.dT?json=true&url=[URL]

The Tweetie 2 application I use on my iPhone will accept either format. In Tweetie 2, go to Settings > Services > URL Shortening > Custom and enter:

http://dynamit.us/url/api.dT?url=%@

Or if you want to use the Bit.ly / JSON format just for fun:

http://dynamit.us/url/api.dT?json=true&url=%@

Tweetie URL Settings Tweetie URL API

Tweetie recognizes “%@” as where it should include the URL in the API call. Now whenever I am tweeting from my phone and want to include a URL, Tweetie will automatically use the dynamit.us URL shortener to shorten the link for me!

Test Tweet

Are there other places where you might like to use our URL shortener?

5 Reasons to get a new CMS

February 24th, 2010 by Bobby Whitman

Over the past few years we’ve worked with dozens of different content management systems with varying levels of usability and workability. In a current engagement with a client we find ourselves having to learn yet another. Although this new system is actually very usable from a content editor’s point of view, it suffers from many of the following pitfalls.

5. Invalid XHTML

Writing valid XHTML enhances accessibility and sets your site up for forward compatibility. It is also the only way to ensure that your site will render correctly in all of today’s browsers and non-traditional devices. All code your developers write should be valid XHTML, expect nothing less from your CMS.

4. Missing or incorrect DOCTYPE

The DOCTYPE part of a document informs the browser what type of code is following and, as a result, how to render the page on the screen. It is not uncommon that a CMS automatically places a seemingly innocent copyright notice on the top of every page. What they may not realize is that unless the DOCTYPE is the very first thing on the page it does not take effect. This means that you could write perfectly valid XHTML code but because the DOCTYPE has been killed by your CMS, your site will not appear correctly in all browsers.

3. No RSS/XML support

XML/RSS is a great way to provide content. It allows users and other applications to pull in the data and use your content elsewhere, all the while linking back to your site. Today’s web is made up of streams in the form of news, events, status updates, etc. Your CMS should be able to participate in this form of sharing information.

2. No Support

A CMS is designed to only cover about 60 to 70% of updates necessary for maintaining a quality website, and even then no CMS is perfect. You will need help, whether it is design or development support for the site as a whole or dealing with the imperfections of your CMS.

1. Messy URLs

Your choice www.dynamit.us/index.php?action=content.display&id=7478&category=1212 or www.dynamit.us/services/web-development. There are tons of good reasons to want clean URLs: more user-friendly when linking, keyword-rich and good for SEO, indicative of a user’s place within a site architecture. The technology is there to make it happen, but your CMS has to be able to handle it.

Want to see what we’re talking about for yourself? Shoot us a note at info@dynamit.us to schedule a walk-through of our dCMS 5.0.

It’s time to Upgrade [Why you NEED to install the latest version of your browser]

February 1st, 2010 by Nick Seguin

It’s time to upgrade, folks.

We’re not talking about signing up for Facebook or downloading the latest version of Tweetdeck for your iPhone. We’re not talking about pushing all of your data to the cloud (the city of Los Angeles only did for 30,000+ employees) or replacing your networked tower computer with an iPad.

When we say upgrade, we’re talking about moving into the current decade with the latest and greatest version of your browser.

You know how some people say eyes are the window to the soul? Well your browser is the window to the internet [read: world].

We [dynamIt] and our industry brethren who work days (and nights) to create and deliver efficient, usable, beautiful work to our clients and their clients politely ask [demand] that you upgrade. Now.

Your browser - be it Internet Explorer, Firefox, Opera, Safari or Chrome (current usage statistics) - is a tool. Its job is to interpret the code and design that we create and express them to you. In contemporary web, the expression of images and text is coupled with functionality and usability. When you mouse over something, it may move or change color. When you click, things happen. In progressive web applications you may see things happening without the entire page refreshing. Movement, images, video, data collection and distribution - all through cool and attractive interfaces. The capabilities of contemporary web truly are amazing. We [the people who think about and make things for the interwebz] very much want to continue delivering these tools and experiences to you.

However, WE NEED YOUR HELP. You see, the older versions of your browsers weren’t built to help us deliver the experiences we are capable of and that you expect. And, when we can finagle our code to make things work, it greatly increases development time (I’m talking hours and hours and hours to ensure compatibility across all of the different versions and types).

The biggest perp is Internet Explorer 6. Honestly, Microsoft will discontinue support for IE6 (commonly run in corporate and educational environments) in July. It was an Internet Explorer security hole that led to the most recent Google attacks. Google is no longer supporting IE 6 for some of it’s most important applications and websites. We all know and respect Google. Please, follow their lead.

So, please, help us out!

  • Beg your IT department to upgrade the browsers on your network.
  • Plead with your schools to give you the tools you need to experience and consume information the way it’s intended.
  • Insist that your spouse concede to learning a slightly new position for the refresh and home buttons when you jump versions.
  • And, contribute to the cause yourself. Fire up your laptop or desktop and (generally) click ‘Help’ in your top menu. Look for updates and download them.

The internet is a great place to interact with information and accomplish both professional and personal tasks. As more tools move to web, we’ll continue to to be sure they are working properly and are easily accessed. All you need to do is be sure you’re ready and able to put them to good use!

Tell us - what’s the reason you (or your company) haven’t upgraded yet?

Augmented Reality

November 30th, 2009 by Matt Dopkiss

As anyone who has played baseball with me can confirm, I’m no Babe Ruth. Although my fielding skills are passable, I’m never going to show up in the cleanup slot in the batting order. In fact, I’m probably not going to even show up on the roster. I prefer contact sports.

That said, I’m pointing to the fences on this one. Augmented reality is going to change things for the better. It’s a new buzzword and it’s still shiny enough for me to justify a blog post about it. People have been throwing around the term for awhile, but we’re finally seeing a few applications emerge that justify the excitement.

So, what is it?

The term “augmented reality” doesn’t describe any one piece of technology. Instead, it’s about exchanging information directly with your immediate surroundings. The idea has been around for awhile: overlay the real world with data. You use a mobile tool (like the iPhone) to access the data in the surrounding geographic region. Think of it like adding the internet to your surroundings.

It’s easier to explain by example. Let’s imagine that you’re dropping over to your local Starbucks for a pick-me-up. You’re standing in line and you pull out your iPhone to check in. Since it’s a long line, you check in to one of your augmented reality apps and you notice a coupon on the floor. You use your app to pick up the coupon and, bam! — it’s a virtual Starbucks card loaded with enough for a free brew.

Uh… cool.

As digital marketers, this gets us excited. It encourages people to tie their digital engagement to a real-world interaction (or vice versa). You build additional loyalty and create another reason for people to visit you. If you’re smart, you make sure it encourages behavior that is profitable for your business.

But here’s the important part: the scenario I outlined above is not the end-all of this medium. My example is basic and, if you boil it down, is just another form of distributing a digital coupon. It’s cool and kind of fun, but there’s still a lot of power to be tapped.

The Core is Geolocation

At the core of augmented reality is the ability to identify your user’s location to some degree of precision. That’s the new, exciting variable. I can identify that you are in a particular location when accessing a database. Because of this location ability, I can deliver specific content to you (be it a prize, a piece of relevant information, or simple kudos). So how can we use this to our advantage?

Gaming

For example, let’s tie it to gaming. We’ve all played the game “Capture the Flag”. Foursquare, a rising star in social applications, taps in to this idea. The application allows people to tie their presence in a particular location to a status elevation in that place. For example, if Nick checks in at dynamIt ten times, he becomes the mayor of dynamIt. If I check in eleven, I can unseat him as mayor. It’s fun because it introduces a gaming aspect that overlays the real world. Nick and I can tie a simple game to our day-to-day interactions.

At present, it’s just kind of silly and without any “real” reward or depth. It’s just kind of fun to beat up on Nick.

So where’s it going?

Possibilities

First of all, let’s just talk about it like it’s a game. It’s easier that way.

Imagine a world where I can do more than just unseat Nick as the mayor of our offices. Imagine that I can leave a trap for him at his desk, and, when he arrives, he can get stung by it. Maybe the phone emits a fart sound, that’d go over well where I work. Maybe Nick and Steve then gang up on me to retaliate. We could tie a “points” system into the whole thing, turning the real world into some screwed up version of GoldenEye.

It could go further into the “capture the flag” idea. We might want to storm the offices of our buddies at Shift Global, conquer their tower, and grab their company item (the Soul of Rock and Roll). Once we get it back to our location (by overwhelming their numbers and scurrying home), we could post their item in our online Trophy Case (which we could then embed on our web site). They’d immediately start sobbing and plot their revenge. Awesome.

That’s just the beginning. This “game” engine will be much, much richer than just these basic ideas. It can facilitate real-world transactions (like the redemption of coupons for goods / services) and other digital consequences. It can add context to a location (imagine a labyrinth or a virtual tour). And in the future, it can interact with real-world items and technologies to offer you a richer real-life experience.

APIs to Lead Us

Application Programmer Interfaces (APIs) are going to fuel this field in a big way. Once the technologies get a little bit more mature, they’ll adopt a model or two like the ones I’ve described above and allow us nerds to get our grubby little hands on the ideas. Like the iPhone, like twitter, the real responsibility of the companies selling augmented reality is to open it up to the world. After that, we’ll see ideas that blow this pitiful blog post out of the water.

So let’s brainstorm: where do we see this going? Do you have some good ideas for some killer augmented reality applications?

Documents, files, and tomorrow’s web browser

August 20th, 2009 by Bobby Whitman

Uploading a file in the browser is something that most of us take for granted. Whether its attaching a file in a web-based e-mail program or updating your Facebook profile pic, it’s something we do nearly every day.

Technically speaking, there is a bit more to it than that, but luckily for us web developers it just sort of happens, you pop an <input type=”file” /> tag into your HTML and the file magically appears on your web server in a spot that’s not too difficult to find.

The problem is that the traditional browser upload is very limiting. What if I want to attach 20 pictures to the same e-mail? Or, how about getting a progress bar for those larger uploads? If the upload fails how do I know what went wrong?

Well, recently we’ve been seeing a solution, use Flash. The FileReference object in ActionScript can do all of these things. And, yeah, it’ll work just fine, but wouldn’t it be convenient if browsers could just handle these things naturally?

Short answer: yes. And the W3C thinks so too as they are in the process of compiling a File API. From the looks of things accessing file information before anything has been transferred to the server will become trivial.

However, if you read a bit deeper into things, you’ll see this provides for a much deeper browser integration with your computer’s file system. The ability for the browser to read (and perhaps write) file data directly to/from the end-user’s machine is in the works here.

With such features we will greatly advance the strength and possibilities of web applications. Things like Google Gears, as cool as they are, won’t be necessary because the browser will handle it on its own.

the internet

June 24th, 2009 by Nick Seguin

yes, we made the internet. yes the internet is "remaking" us… to a degree… but the core understanding by those who "make internet" must still be adaptive to the human condition, consumption habits and expectations, no matter their status.

Internet from Jordan Clarke on Vimeo.