Simon Willison’s Weblog

Subscribe

Items in Nov, 2010

Filters: Year: 2010 × Month: Nov × Sorted by date


What are the tradeoffs (e.g. development speed, performance, scalability) between using various php frameworks, ruby/rails, or python/django?  Is there any reason to choose one overwhelmingly over another?

At this point, I’d argue that the decision between them comes down to programming language rather than framework—the frameworks have mostly converged on a very similar set of features.

[... 145 words]

What are some things that most hackers used to do themselves but now use other people’s software to do?

Renting co-located servers. These days, most people just use virtual machines for their own personal projects.

[... 41 words]

What is the best software for conference participants?

Our site http://lanyrd.com/ helps you find the Twitter names of speakers and fellow conference attendees, which should make it easier to connect with them.

[... 39 words]

Why is Diaspora built on Ruby on Rails instead of Node.js?

Because Node.js had almost no visibility at all six months ago when Diaspora started. Also, Node.js has only very recently stopped breaking API backwards compatibility on a regular basis. Plus the Ruby library ecosystem is much, much larger than the Node.js ecosystem.

[... 81 words]

How do you successfully outsource a web application project that is a copy of another website?

You may find that the quality of developers you can hire depends on the quality of the project. Copying another website doesn’t sound like a very interesting project.

[... 50 words]

Find conferences to speak at with Lanyrd. We just launched calls for participation on Lanyrd. You can list calls for any conference, browse them by topic, and subscribe to an Atom feed of calls for your area of interest. # 24th November 2010, 2:38 am

Who are the top Python programmers on Twitter?

Our site Lanyrd catalogs conference speakers by their Twitter ID, so you could use it to find people who speak at Python conferences—for example:

[... 52 words]

Is it possible to link to a Twitter user’s page with their user_id instead of their screen name?

You could always build your own URL to do this as part of your own application—something like http://your-twitter-app.example.... which does a Twitter API lookup for that user and then redirects to http://twitter.com/their-twitter.... You can cache the ID-to-screen-name lookups that you’ve made in the past (not forever though, remember people occasionally change their screen names).

[... 98 words]

Does Twitter use a 3rd party software for rate limiting their APIs? If yes, who’s the 3rd party?

I wrote up a technique for doing simple rate limiting using memcached a while ago, which I later found out was somewhat similar to how the Twitter API does it.

[... 56 words]

What UX/UI conferences in the SF Bay area are worth attending?

BayCHI is excellent from what I’ve heard: http://www.baychi.org/

[... 50 words]

What is the best site for event information (Eventful, Happenr, Upcoming)?

It depends entirely on what kind of events you are looking for. PlanCast, Upcoming and Eventful are all good general purpose event listing sites. Songkick is doing a phenomenal job covering concerts and gigs. Our startup, Lanyrd.com, is focusing exclusively on conferences and other professional events.

[... 64 words]

What are the differences between GDC and SXSW? Which one is better for a web entrepreneur?

I haven’t been to GDC, but it’s a game development conference. SxSW interactive is almost entirely web stuff, so it would be a better fit for a web entrepreneur.

[... 51 words]

How do you work with front-end developers?

Build them a virtual machine image using VMware or similar that includes ALL of the server stack that they need, pre-installed—then give them detailed written instructions on how to run it and pull the latest versions of the codebase.

[... 54 words]

Why does Java encourage over-engineering?

I suggest reading “Execution in the Kingdom of Nouns” http://steve-yegge.blogspot.com/...

[... 22 words]

Why is Java perceived as not cool for startups? We seem to be getting a lot of feedback lately that a startup should be using Ruby on Rails, PHP, Python, etc., if they want to be agile and iterate quickly.

You should re-evaluate your beliefs. Dynamic language programmers spend a great deal of time thinking about code quality and maintainability. TDD (and BDD), which I believe was first popularised within the Ruby community) are extremely widespread, and profiling and debugging tools are widely used and constantly improved. A strong test suite provides far more effective protection against bugs than static typing and an IDE.

[... 152 words]

Is Django a good option for crowdsourcing site?

Yes. I’ve built multiple crowdsourcing sites using Django, including http://mps-expenses2.guardian.co... , http://www.wildlifenearyou.com/ and http://lanyrd.com/

[... 43 words]

Can we apply to Y Combinator on a visitors visa? Or is a work visa an absolute must?

I understand it is quite common for out-of-country YC founders to do the initial three month period under a visitors visa, which is OK provided they do not pay themselves a salary while in the USA. You can get a long way on expenses though.

[... 69 words]

gzip support for Amazon Web Services CloudFront. This would have saved me a bunch of work a few weeks ago. CloudFront can now be pointed at your own web server rather than S3, and you can ask it to forward on the Accept-Encoding header and cache multiple content versions based on the result. # 12th November 2010, 5:33 am

Porting Flickr to YUI 3: Lessons in Performance (at YUIConf 2010). Some very interesting tips here. The new Flickr photo pages suffered from what I’ve been calling “Flash of Un-Behavioured Content”, where slow loading JavaScript results in poor behaviour from some UI controls. They started using “Action Queueing”, where a small JS stub ensures a loading indicator is shown for clicks on features that have not yet fully loaded. Also, it turns out some corporate firewalls (Sonicwall in particular) dislike URLs over 1600 characters, and filter out any URL with xxx in it. # 10th November 2010, 6:33 pm

What are some good book discovery and recommendation sites?

I really like http://readernaut.com/—here’s an example profile: http://readernaut.com/nathan/

[... 27 words]

Why would or wouldn’t SXSWi be worth attending in 2011?

Yes, it’s worth attending every year.

[... 139 words]

Building a GeoIP server with ZeroMQ. ZeroMQ makes it trivially easy to write a network service in raw C that makes functionality from a C library (in this case the MaxMind GeoIP library) available to clients written in many different client languages. # 9th November 2010, 9:36 am

What would be the best plan to spend a 4-6 day trip to Egypt?

You’d have to go fast, but I would suggest arriving in Cairo, staying one night there, seeing the Pyramids and the Egyptian Museum, then an overnight train from Cairo to Aswan, a day there, a two day cruise down to Luxor (you can book yourself on to a boat that’s going in that direction in Aswan and save some money, especially since the down stream cruises are shorter), then two days in Luxor to see Karnak, the Valley of the Kings etc, then home. There’s a ton to see in Luxor so you could do the same route but take the train from Aswan to Luxor instead of the cruise—or skip Aswan, which would be a shame because it’s the nicest out of those three places in my opinion. If you go to Aswan, don’t miss Philae temple!

[... 160 words]

Egypt: What is the best restaurant for fish in Dahab?

We’ve tried Al Capone and Ali Baba (both excellent, Ali Baba had slightly more exciting bread), also Friends (not quite as good) and Funny Mummy (good, but not quite up to Ali Baba’s standards—great decor though).

[... 54 words]

Would you recommend using Google Go with web.go, or Node.js for a new web server project which will involve high IO?

If you already know JavaScript, picking up Node.js is pretty easy. It also has a much larger community of web developers around it at the moment than web.go, which means there’s more example code / open source bits and pieces floating around.

[... 69 words]

How come Google Maps provides so many more local Wikipedia entries that GeoNames?

My guess is that GeoNames just uses the latitude/longitude fields from Wikipedia (you can see them in the top right corner of most pages that describe a place), whereas Google actually do some text analysis and attempt to geocode articles themselves, even if they don’t have an exact latitude longitude assigned to them.

[... 72 words]