Archived entries for Engineering

Slides: Professional Frontend Engineering

Update: Audio for this presentation is now available (mp3) from the conference’s site.

This year, my third presenting at @media in London (2006, 2007), Patrick offered me the morning plenary slot. I used the time to talk about a topic of great interest to me: Professional Frontend Engineering.

Over the last three or four years the role of Frontend Engineering has become more important, more respected, more challenging, and more in-demand than ever before, and so I wanted to put a stake in the ground clarifying what we do, how we do it, and why it’s so important to raise it to a professional level. I had four goals:

  • Put a stake in the ground.
  • Reiterate our values.
  • Advocate the discipline.
  • Nurture a healthy Web.

The goals were threaded throughout the four sections of the talk:

  • Historical Perspective
  • Our Beliefs & Principles
  • Knowledge Areas & Best Practices
  • Why It All Matters

The talk is embedded below (or download: keynote, pdf, quicktime).

I think this topic is critical to the advancement of the Internet. I’ll be writing more about this in these pages in the coming weeks and months, but for now enjoy the slides. And please share your thoughts and feedback in the comments.

Slides: High Performance Web Sites

The organizers of last month’s Kings of Code conference in Amsterdam asked me to talk about High Performance Web Sites. I discussed related material at last year’s @media conference, so for this new talk I was sure to use a bunch of new, updated, and expanded information. Luckily, the good people on Yahoo! Exceptional Performance team have been hard at work discovering new performance best practices.

The talk embedded below (or download: keynote, pdf, quicktime) covers several well-known optimization practices then quickly moves to review more recent findings and advancements. It concludes with a survey of tools for optimization and links for more information.

Enjoy, and please leave a comment with any thoughts you have.

London and Amsterdam

Update: Slides for these talks have been posted: Professional Frontend Engineering in London and High Performance Web Sites in Amsterdam.

Next week Tuesday I’ll be presenting an updated “High Performance Web Sites” talk at the inaugural Kings of Code conference in Amsterdam. From there I’m headed to the second half of London Web Week and will be giving a talk called “Professional Frontend Engineering” in the Friday plenary slot at the outstanding @media conference.

Kings of Code logo

The Kings of Code conference is shaping up to be a great event. I’m excited to hear what fellow speakers John Resig, Peter-Paul Koch (PPK), Folke Lemaitre, Nate Abele, Mark Birbeck, and host Robert Gaal have to share with us.

@media conference logo

The @media conference is equally impressive. It’s consistently been one of my very favorite events for the last few years. The speakers are insightful and generous, the attendees are smart and engaged, and Patrick and the rest of the organizers put on a warm, welcoming, and action-packed event with lots of time for networking, hallway conversations, and a wee bit of pub-based debauchery. Spread over two days it promises to saturate us all with inspiration and insight.

Please email me, leave a comment below, or shoot me a note of Twitter (follow me) if you’re going to be in the area and want to catch up. If you let me know in advance that our paths will cross I’ll be sure to bring you a little gift.

Now if somebody could please do something about the #$%#@$# exchange rate…

Five Taipei Events

I arrived in Taiwan a few hours ago and am settling into my hotel room in Taipei trying to figure out what time my body thinks it is. But regardless of my body’s ability to keep up with me I have a busy few days ahead.

Tomorrow afternoon I’m presenting an internal Tech Talk to designers and engineers at the Yahoo! Taiwan office, hosted by my friend and colleague Aaron Wu. I love the chance to talk to designers and engineers in the same room, and so I’m very much looking forward to the opportunity.

Taiwan magazine iTHome article

On Saturday I’m offering the keynote at the Open Source Developers’ Conference here in Taipei. My talk is titled “An Insider’s Tour of the YUI Library.” I’ve been experimenting with video clips in my talks lately, and so even though I’m the only member of the YUI team on this trip, I’ll have the video and voices of many from the team with me on stage. I’ve done something similar once before, and it went well then so I’m hoping it goes well again.

Here is some local press coverage of the conference. It’s a trip to see my face surrounded by words I can’t read. If anybody can translate for me, please send me a note or leave a comment (click the images for higher-res copies).

University talks in Taipei

The third event is an interview for that same publication scheduled by Yahoo!’s local “tech PR” team. I’m not used to giving in-person interviews, let alone via translator, so it should be a fun and unique (and flattering) experience. They sent over a few of the questions in advance to set expectations and I gotta say the questions are thought provoking and interesting. (Though I am a little worried about how to translate some of the more fuzzy terminology.)

The fun continues on Monday and Tuesday with my fourth and fifth even is as many days: I have the distinct privilege of address engineering and CS students from both National Taiwan University and the National Chiao Tung University. Each two hour session is part presentation, part on-stage interview with professors, and part question-and-answer. My message is that Frontend Engineering is a first-rate engineering discipline, that industry is hungry for more skills practitioners in the field, and that it’s quite likely the most interesting and stimulating role to play in web and internet development.

I’m exceptionally humbled to be able to speak at such esteemed institutions. I will do my best to live up to the honor. Taiwan: Thank you!

Liveblogging Google App Engine release at Campfire One at Google

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.

More small pieces fit together more ways

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.”)



San Francisco, California | Creative Commons By-2.5 License | Contact

RSS Feed. This blog is proudly powered by Wordpress and uses Modern Clix, a theme by Rodrigo Galindez.