Building on the shoulders of Giants, Jonathan Snook [@media 2008 notes]

Kıyıda....

Image by SuLeS via Flickr

It’s a talk mostly about API, Mashups, Frameworks etc.

He wrote a really nice Twitter client – Snitter in Adobe AIR.

He’s also behind MyMileMarker, RoR

DjangoPlugables.com, a framework to manage plugins that tie into Django

Overheard.it, tracking what people say on twitter, and every-time some says “overheard”

Developers like to reinvent the wheel, it’s not necessarily a bad thing, it’s how we learn.

A nice matrix of LightBox scripts, lots of different ways. People like to reinvent this thing.

Designers on the other hand, like to reuse. We have things like design trends because designers like to take what they see. We wouldn’t get the whole “Web 2.0”, if designers wouldn’t use the same things from project to project. They know what works and they build on top of it.

Developers need to think more like designers.

Tools

Frameworks:

  • Ruby on Rails
  • Django
  • CakePHP
  • CodeIgniter
  • ZendFramework
  • Etc.

But the point is that you can take any of these frameworks and build applications really good and fast on top of it.

JavaScript:

  • JQuery
  • Prototype
  • ExtJS
  • Mootools
  • YUI
  • Dojo

CSS:

  • Meyer Reset
  • YUI CSS Grids
  • Blueprint (it’s not only a grid, but also base typography)
  • 960.gs

Platforms:

  • Adobe AIR/Flash/Flex
  • Microsoft WPF/Silverlight
  • Java/JavaFX

Language of Markups:

  • REST,XML-RPC,SOAP

Flash?!

It’s not one technology vs. Other stuff. We can mash.

So we can do in flash:

  • Built-in Socket support
  • Flash/JavaScript bridge (we can do cross-domain calls)
  • Binary transfer format
  • Charting, IMAP and other
  • SoundManager / sIFR / File Upload

Types of Data

How can we look a the data, to help us mash up even better.

Location:

  • Maps (Google, Yahoo, Microsoft)
  • Crime Database (Everyblock)
  • Real Estate (Trulia)
  • GPS
  • FireEagle
  • BrightKite (tying into FireEagle, it’s possible to push and pull data around)

Time:

(Everything has a timestamp on it)

Relationships:

  • Social networks (flickr, twitter, jaiku, youtube, digg)
  • LinkedIn

Downfalls:

“Dynamic APIs” . The problem is that Twitter API is not static, it’s changing. Even though they have cool stuff, they’re disabling functionality because their servers are full. This can break your application, and this is really frustrating for developers.

Service Availability. You have to consider that things will go down.

You become middleman, so if you build a FlickR application and it goes down, people will blame you and not Flickr.

Well-tested, so if you use a reliable wide used stuff you know that you won’t have to worry about implementation detail.

Speed up development, you can build up applications very quickly and easily.

Solve problems outside of original solution, original solutions don’t necessarily tailor to the different people. One example of this is Accessibility.

It’s about IDEAS! It’s about solving problems that fit your business needs and your personal itches.

Ideas:

Get them out fast

Iterate fast and often

See what works

How fast?

Push out ideas in hours, instead of days, weeks, or months.

DjangoPlugables – it took about 3 days to build a site and put it out there. It’s just a matter of build the idea, put it out there, and then see what people want.

You can DO IT!


2 thoughts on “Building on the shoulders of Giants, Jonathan Snook [@media 2008 notes]

  1. The ‘Ideas – iterate fast and often’ report hints of the XP (Extreme Programming) method of programming.

Comments are closed.