Tag Archives: api

Announcing RealTime WebCampLjubljana

It’s been two months after last WebCamp and it’s time for another party. Following the idea of BarCamps with story line, we’ve decided to organize RealTime Social WebCamp Ljubljana.

This time we’ve decided to focus on a single emerging technology space: Real-Time Social Web. If you’re not up-to date with the latest buzzwords, it’s about next generation RSS protocols like HubSubPubBub, RSSCloud, XMPP (that powers GTalk), Synaptic Web, Twitter API and a bunch of other technologies and ways of thinking about the Web and Mobile space.

Intended audience are developers and people who are close to them (e.g. interface designers, product managers, etc.) and will need to innovate in this space in the next 6 months.

We’re doing it a bit more limited this time, just 50 spaces. I’m interested in seeing how a smaller and more focused group changes the dynamics of such gathering.

The rules for the tickets are the same as the last time. Send description of your talk early and you get a ticket, or hope that you can click fast enough for the left-over tickets later. I believe that extra effort should be awarded.

The official language this time is Slovenian since we’ve figured out that locals that are not native speakers understand our geek talk enough that it shouldn’t be a problem and we can understand them as they lecture in their own language.

As always: all the details are at http://www.webcamp.si

Posting to Koornk using Python

While building something nice on Koornk (Slovenian Twitter like service), I stopped for a few months to learn how to do Authenticated POST requests using Python. I found urllib2 way too complicated, but soon I stumbled across great Yahoo Developer page – Make Yahoo! Web Service REST calls with Python that also lists alternative approach using httplib2 which then works beautifully.

Koornk blurry t-shirt
Image by Gandalfar via Flickr

Here’s the snippet of code used:

import urllib
import httplib2
http = httplib2.Http()

url = ‘http://www.koornk.com/api/update/’
username = ‘USERNAME’
password = ‘PASSWORD’

http.add_credentials(username, password)

params = urllib.urlencode({‘status’: ‘ hey, im testing koornk api – httplib2 python request’})

response, content = http.request(url, ‘POST’, params,
headers={‘Content-type’: ‘application/x-www-form-urlencoded’})

import simplejson
from pprint import pprint
s = simplejson.loads(content)
pprint(s)

Reblog this post [with Zemanta]

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!