nate koechley's blog

http://nate.koechley.com

You're browsing the “Design” category.

Liveblogging on Twitter at http://twitter.com/natekoechley

everything in this article is my paraphrasing of speakers’ presentations. not my own words.

(Video coming soon.)

  1. We run web applications. We’re only focused on this narrow goal.
  2. We handle the entire lifecycle of an app.
  3. Apps are run on Google infrastructure.

“It’s hard, but it’s worth it for us.”

“For the first time you can use the same infra we use…Auth, GOS, BigTable”

The Stack

  1. Scalable serving infra
  2. python runtime
  3. SDK
  4. Web based admin console
  5. DataStore

Demo: App from scratch in 8 minutes.

More details

  1. Scalable Serving Infrastructure: fault tolerant (redundant). Fluid: don’t need to schedule needs up front… more servers come online dynamically.
  2. Python Runtime and Libraries. All tools are generic, so new languages can be dropped in later. Python used in same python available otherwise. Goal: you can use any language eventually. We don’t want to limit you.
  3. SDK: Environment to develop apps locally. Avail for Linux, Mac, Windows today. (But can probably work anywhere.)
  4. Admin Console: web-based admin console. (Looks like google finance meets google analytics.) Tools for request logs. Data explorer. Usage/quote numbers. App-version balancing. Can hook up domain (don’t need to run at *.appspot.com).
  5. Scalable Datastore. Schemaless object store. Not a clustered sql thing. Instead based on BigTable. (Whitepapers online.) Horizontally scalable. Reacts to hotspots. BigTable instead of SQL is a big change, and may take some time to get used to. But we think you’ll come to like it. Schemaless means you can add a new datatype or entity whenever - no need to update your schema.

Now we’re looking at a Datastore Model Class.

GQL Query example

SELECT *
FROM Story
WHERE title = 'App Engine Launch'
AND author = :current_user
AND rating >= 10
ORDER BY rating, created DESC

Other Notes

Mail Sending API

no setup needed.

Make HTTP Requests

Authenticate with Google Accounts

Frameworks

The whole Django framework.

Guido van Rossum: Creator of Python and member of Google App Engine team

My passion is making life easier for developers. With python i’ve done that for decades. Now i’ve joined GAE team. Excited by potential. (and that python was first picked)

First time that GOogle has let third-party people run software on their infra. That’s fundamentally a big deal.

8:13 PM “We’re offing 100% of the python lang.”

8:14 PM - we don’t offer threads, but you won’t been it because of our scalable arch.

GAE uses a quota system so nobody monopolizes the infra.

me: if it’s so scalable, why do they need the quotes?

What’s Next?

  • large upload/download support
  • purchase additional capacity
  • other language support
  • offline processing.

In early February Todd Sampson wrote that The API is the Product. I think he’s right on. Behind the exciting buzz of sites and services that make getting bits of info online easy are some very cool APIs that let anybody and everybody create entirely new ways to input or output that same data. (The apparently trend to smaller pieces of data is interesting too, and part of the ease.)

Here are a few of those sites: FireEagle for location data (a single geocode), TripIt for travel data, Delicious for links data (a single URL+ tags), ThingFo for experience data (in 30 chars), Twitter for vitality data (140 chars).

These APIs make possible an undeniable wave of creative hacks within the small orbit of any of the services even individually. This growth testify to the mass variety of niche needs and personal priorities. It seems the ocean of data is really a petri dish.

When these hacks cross-pollenate — when the ins and outs of the data sets start sharing and talking with each other — things get even more interesting.

Those that dismiss mashups as simply “things on a map,” “widgets on a blog,” or “applications on facebook” don’t see the full power. I don’t claim to either, but important coolness seems inevitable when data becomes small and abundant while APIs become prolific and potent. More small pieces fit together more ways.

(Perhaps this is a small part of why Douglas Crockford says that “Mashups are the most interesting innovation in software development in decades.”)

I’m happy to announce that I’ll be giving two presentations at the Web Design World conference in Chicago in May. My first session, the plenary on Tuesday, defines and discusses Professional Frontend Engineering. The second explores way to enhance web sites with the YUI Library. (Full descriptions of both talks below.)

Speaking at Web Design World, Chicago, May 5-7 2008

You can save up to $300 on registration when you register online (or via 800-280-6218) and use my special promo code SPKOE. Plus, using that code is worth a couple drinks on me after the sessions!

Here are longer descriptions of the two sessions. I’m still creating both of them, so please feel free to leave a comment below with feedback or requests for stuff you’d like to hear about.

Professional Frontend Engineering

“In 2001, most web developers simply pushed pixels. The Web was pieced together by print designers and back-end engineers - almost no one was deeply focused on the front-end. Today, in 2008, as front-end engineers we author complex and efficient software and bend reluctant browsers to our will. And we are broadly recognized and respected as a first-order engineering specialization.

In this talk, I will define the characteristics and important practices of our discipline. I’ll discuss the key challenges we still face. And I’ll offer 13 tactical tips from the front lines that you can put into practice today.”

Enhancing Web Sites with the Yahoo! User Interface (YUI) Library

“YUI is chock full of more than 40 utilities, widgets and tools that make web development and browser-wrangling less painful for small personal sites and heavy-duty industry-leading applications alike. This all-new talk covers what’s new in 2008 (lots), what’s coming next (some very cool stuff), and some practical tips from the trenches. If you’re a seasoned YUI pro, you’ll learn about hidden features and optimization tips. If you’ve never heard of YUI, you’ll learn how to get started. And if you use a different library, you’ll learn about YUI’s library-agnostic tools for things like compression, profiling and unit testing. It’s gonna be fun.”

Meet Up?

I’m looking forward to meeting designers and developers from all around Chicagoland. Please drop me a comment or email if you’re gonna be at the show — or even just in the area — and want to catch up for a drink or dinner. (I’m also planning on being in Madison, Wisconsin — my hometown — the weekend before the conference. So give me a shout if you’re in that neck of the woods.

The Details

See you there!

I’ve heard about various services that charge a flat rate to chop Photoshop (etc) files into clean (X)HTML and CSS, generally for a flat fee and quick turnaround. The topic came up today when a freelancing application developer buddy asked me about this type of service.

So this morning I asked my twitter followers (follow me!) which services they knew of. Here’s what came back (in a matter of minutes - gotta love twitter!):

Then @jasonw22 pointed out that Jonathan Snook (a hero of mine) has a list of about 20 such services, and just this week posted a review of his experience auditioning the psd2html service.

If you’ve used any of these services, I’d love to hear about your experiences in the comments below (and of other services you may know of or recommend).

I’ll report back on my friend’s experience.

(I must mention, in closing, that I’m skeptical of such services. I’ve spent the last several years of my career promoting the professionalism of frontend engineering, and so I have a twang of fear that these services are a step in the wrong direction. Then again, perhaps services such as these — if, in fact, the quality is there — prove that some aspects of “professional grade” web development are now par for the course. Jury’s still out.)

Friend and Yahoo! Developer Network (YDN) Director Matt McAlister has a good post today on Creating leverage at the data layer.

Matt cites Tim Berners-Lee from a recent interview saying that the future of the web is one where we and our agents “can access all the data” via a “much more seamless and much more powerful” interface and experience made possible “because [of] integration.”

That’s different than how it’s been. Documents are a subset of Data. The Web has been a lake of Documents. It is becoming an ocean of Data.

We’ve surfed the lake of documents with a web browser. But a web browser is not always the right tool for the ocean of data. One of many examples is that many people consumer Twitter via a desktop client like twitterific or twhirl. In fact only 45% of recent messages (of people I follow) were posted via the web interface. It’s not a stretch to conclude that a majority of twitter users have determined that there is a better way to interact with twitter’s data than with a web browser. (If not the stats, then certainly the trend.)

I see that as evidence that A) some new interfaces are required for some new types of data; and that B) the web has interesting data to consume outside of a browser.

In the same vein, Matt writes that “Social networks are a good user interface for distributed data, much like web browsers became a good interface for distributed documents.” He’s right: social networks are a great way to consume the so-called vitality stream.

Moving on he writes that the markets and technologies supporting this new world “are still in very early stages.” His notion that “there’s lots of room for someone to create an open advertising marketplace for information, a marketplace where access to data can be obtained in exchange for ad inventory, for example” is important.

There’s more good stuff in his post, but I gotta get back to my other work. I didn’t even mean to write this much about it — so i’ll stop now and let you head over there if you want - but I’ve got a bit more that I’m mulling that I’ll try follow up with.

It’s just been confirmed and announced that I’ll be speaking in Taiwan at the Open Source Developers’ Conference on the 12th and 13th of April 2008, on the campus of the School Of Continuing Education, Chinese Culture University in Taipei. My talk will offer an insider’s tour of the YUI Library:

The YUI Library is an open-source, a la carte JavaScript library for building richly interactive Web apps using techniques such as DOM scripting, DHTML, and AJAX. This library, free for the world to use, is the exact same code that is used globally and at massive scale on scores of Yahoo! sites. In this session, Yahoo!’s Nate Koechley will talk (and answer questions) about the design and technical philosophies behind YUI. You’ll learn what the library can do for you, where it’s heading, why and how Yahoo! decided to open-source it, and how you can use it to provide an outstanding user experience for your visitors.

OSDC.TW 2008 時間

在經過最後確認之後,我們已經正式公佈 OSDC.TW 2008 的時間跟地點:

時間:2008/4/12-13 地點:中國文化大學推廣教育部博愛校區 - 大新館