Simon Willison’s Weblog

Subscribe

January 2012

Jan. 14, 2012

Play Framework, Django or Rails? Which one do you recommend for  Social Networking Web applications.

Both Rails and Django have been used for a large number of high profile social networking web applications. Off the top of my head, Django is used by Instagram and Pinterest, Rails is used by Posterous and Ravelry. I don’t know what the largest sites built using Play are at the moment.

[... 149 words]

Why doesn’t Google Chrome use the Google Search Engine spellchecker?

Because the Google search spellchecker runs in their data centers, while the Chrome spellchecker runs on your local machine. Sending everything you type in to your browser to Google’s servers just to check spelling would be an unnecessary privacy violation, especially since local spell checking does a good-enough job.

[... 65 words]

If you were to build homeaway or vrbo from scratch, which software would you use?

HomeAway and VRBO are user-submitted content marketplaces, not traditional content management systems—using a CMS such as Drupal or Joomla would in my opinion be a mistake, as you’ll find yourself spending most of your time writing custom code. The benefits of a CMS will mostly be irrelevant for this application, and you’ll spend a bunch of time coding around their limitations and disabling default functionality that doesn’t fit your purposes.

[... 139 words]

What are optimal workflows for deploying one’s web application?

The absolute first step is to automate your deployments. It’s absolutely crucial that deploying the site is a single command. I’ve found Fabric (an automation tool written in Python) works extremely well for this—Capistrano is a popular alternative that uses Ruby instead.

[... 360 words]

What is the difference between XHTML 1.0 strict and transitional?

Not a lot. XHTML transitional lets you use a few presentational attributes and elements that aren’t available in XHTML strict. Here’s a more detailed overview from back in 2005: http://24ways.org/2005/transitio...

[... 59 words]

Jan. 15, 2012

How can I download a web server’s directory and all subdirectories with one command?

Use wget (you can install it with apt-get install wget)

[... 90 words]

Jan. 16, 2012

What are some more glamourous careers a computer programmer can pivot into?

I don’t really know how you would define “glamorous”—personally I prefer a career that’s rewarding, exciting and helps make a difference. On that basis, I’d suggest looking in to data journalism. Computer Programming is most rewarding when you combine it with another discipline. Personally I think using programming to help journalists discover and explain deep truths hidden within large data sets is a fascinating way to make use of those skills.

[... 106 words]

Events (leisure): How do you find out about Conferences happening in various places in the world?

Our site http://lanyrd.com/ is a crowd-sourced directory of conferences and other professional events across a large range of topics from all around the world. We have particularly good coverage of technology and social media events (perhaps unsurprisingly, since that’s where the early adopters are) but we’re continuing to grow in to other areas.

[... 208 words]

What role will Social Media play in 2012 conferences? For example what platforms will attendees be using to communicate and network?

I’m a co-founder of http://lanyrd.com/—which could be described as a social media platform for events.

[... 200 words]

Are there any disadvantages to using domain hacks for your product website?

If you ever get written up
In the mainstream press you can almost guarantee that they will screw up the URL they publish (by sticking a .com on the end or fixing a deliberate misspelling). Sadly this still seems to be the case after 20 years of the Web!

[... 74 words]

Jan. 17, 2012

How is JSON different then a JavaScript (programming language) object?

JSON is a carefully selected subset of JavaScript. A JSON object can only consist of dictionaries, strings, numbers (in JavaScript floating point and integers are treated as the same thing), lists, booleans and null. The spec on JSON.org is a good guide: http://json.org/

[... 119 words]

Jan. 18, 2012

Which web frameworks should I focus on to make myself the most well rounded and to be able to solve the most problems as a web application developer/architect?

Being an expert web developer isn’t about which framework you know, it’s about the fundamentals. It’s important that you know how the tools you are using work, so you can fix things when they break—Joel Spolsky’s law of leaky abstractions is a great essay about this: http://www.joelonsoftware.com/ar...

[... 260 words]

Jan. 20, 2012

As a first timer, what are the best tips while flying business class to get the most value?

Wear something really scruffy, so that when you get up to go to the bathroom the stewards can sniffily tell you “I think you’re in the wrong cabin, Sir”—and you can say “No, actually I’m sitting just over there”.

[... 97 words]

What are the pros and cons of open sourcing my website’s code?

I’m afraid if you’re expecting to open source your code as a magic bullet to get others to work on improving it for free you are likely to be disappointed.

[... 250 words]

Is there a simple way to create a form that asks people to upload a picture and an answer to a question, and then gives me access to that info?

You could build this very easily using http://wufoo.com/—an online form building tool (with a superb interface).

[... 55 words]

Web Performance: What is the best way to measure page load times on different locations of the world?

Google Analytics has a built-in “Site Speed” report with a geographical map that can help with this (under Standard Reporting > CONTENT > Site Speed > Map Overlay).

[... 52 words]

What is the difference between a web server and a web framework?

A “web framework” offers a set of APIs for writing your own custom code in such a way that it can be called via the Web. Usually a framework will deal with common details such as HTTP header parsing, URL routing and so forth.

[... 272 words]

What are examples of consumer web products which had little or no initial traction, but which persisted in their direction and eventually found success?

AirBnb famously just kept going.

[... 35 words]

Jan. 22, 2012

What (web) development platform has a low learning curve in terms of development, deployment, scalability, performance, and portability?

Sadly, none if them. Each of the things you list is almost a discipline in its own right, and there aren’t really any shortcuts—you just have to get stuck in and learn about them as and when they become a problem.

[... 67 words]

What are good ways to design a web application? Do you, for example, begin with a wire-frame of the front-end and work your way back to the database schema? The reverse? Figure out both ends and work towards the center?

I start with a working prototype, which I find I can often knock together in a couple of hours using Django. Having a functional (albeit buggy, ugly and insecure) prototype makes it much easier for me to start to reason about the larger application. There’s not much point in coming up with a comprehensive architecture plan only to find out you’re building the wrong thing!

[... 111 words]

Where can I find great Java/Scala developers in London?

There are quite a few Scala events in London—here are the ones we know about at the moment: http://lanyrd.com/topics/scala/i...

[... 83 words]

Do Python programmers have a tendency to write their own software instead of contributing? Why?

I think you’ll find that PROGRAMMERS have a tendency to develop their own thing rather than contributing to an existing project. It’s even got its own TLA: NIH (Not Invented Here).

[... 94 words]

Does version 1 of a startup always take much longer than expected?

Usually.

[... 112 words]

Does Facebook’s iPhone app use a proprietary web rendering engine instead of UIWebView?

I did my first bit of iPhone development recently (building the first version of the Lanyrd iPhone app) and there was one thing that came as a huge surprise: the principle reason that people think native apps are “snappier” or “more responsive” than native ones has nothing to do with the rendering performance of a webview vs a native view (especially on the iPhone 4S which is extremely fast).

[... 274 words]

Do people still write and compile programs from the command line, instead of an IDE? Why or why not?

Being an expert with command line tools gives you super powers.

[... 94 words]

Jan. 23, 2012

Is there a conference for food culture?

There are a bunch of food blogging conferences which might be a good fit. There’s a good list of them here: http://www.namelymarly.com/2012/...—we have a (currently less comprehensive) list on Lanyrd here: http://lanyrd.com/topics/food-bl...

[... 49 words]

Jan. 26, 2012

What do you miss out on if not staying in the official hotel for PyCon (or other tech conferences)?

Not a lot really, provided you’re within walking distance of the venue. The official conference hotel for an event like PyCon will likely have a hallway track that continues until the early hours (people hanging out and hacking on things in the hotel lobby) but staying in a different place won’t prevent you from joining in with that.

[... 204 words]

Why is the Zen of Python obfuscated in the “this” module?

I imagine the reason is very simple: Because it’s fun!

[... 27 words]

Jan. 29, 2012

Which angels or VCs like to invest in fitness companies?

The easiest way to answer this question is to take a look at existing fitness companies and find out who their investors are. CrunchBase and AngelList are invaluable for this, but many companies also list their investors on their own sites.

[... 57 words]

Do Twitter API limits rest at the top of the hour or is it floating?

I’m pretty sure they are calculated from the time of the first hit you make to the API—resetting on the hour would likely encourage API users to run large batches of queries at 1 second past the hour, resulting in huge and unwanted traffic spikes.

[... 68 words]

2012 » January

MTWTFSS
      1
2345678
9101112131415
16171819202122
23242526272829
3031