Doing Local Right
“Doing Local Right” was the title of my talk at this year’s @media Europe. Patrick had asked me if I could put together a case study, and I jumped at the chance to share some of the work of my former colleagues at the Lawrence Journal-World newspaper in Lawrence, Kansas. I had the privilege of working at the newspaper for a year in late 2003-2004.
I started the talk by introducing two semi-related problems. The first is that the local search offerings from the big Internet companies are pretty poor—it’s difficult to tell how comprehensive or accurate their business listings are, and they lack any sense of the flavour that real local knowledge can provide.
Meanwhile, the newspaper industry is stuck in a self-declared state of crisis, with classified advertising decimated by free online listings and the bulk of their stories (taken from the same wire services as every other paper) quickly becoming a commodity.
Newspapers and local websites are a perfect match. Newspapers have the reporters, the relationships and the resources to provide better coverage of their local areas than anyone else could even dream of. That’s exactly what the team at the Lawrence Journal-World have spent the past five years doing.
I only had 25 minutes for the talk, so I concentrated on www.lawrence.com, www.ljworld.com and www.ljworld.com/marketplace. Lawrence.com is my favourite of the three: it’s the local entertainment site that every city in the world needs, but very few actually have. I covered the following features:
- A comprehensive events calendar (with editorially selected "best bets")
- Blogs by local residents
- Movie listings for local cinemas (with links to the reviews by both newspaper staff and members of the public)
- Detailed event coverage, including additional dates, weather forecasts for outdoor events in the next few days and an SMS/e-mail reminder service
- Gig listings that incorporate MP3 downloads (“if you go, you might hear”) from the 1,000+ MP3s of local bands hosted by the site
- Drink specials, which also appear on relevant event and venue pages
- The local band and music database, browseable by band, musician, genre and more
- The local restaurant listings, including kitchen hours (and hence the infamous restaurants open right now)
- The downloads page, which combines data from all over the site to present MP3s for download that are by bands which are playing gigs in the next week (“see ’em live at the Bottleneck”)
The point I was trying to make (one which I’ve seen Adrian Holovaty make many times) is that if you take good care of your data you can slice and dice it in dozens of unexpected ways.
Next up was LJWorld.com, which the team re-launched last month. The new site continues the trend of user comments on pretty much everything, and I demonstrated the funky new multimedia page which again illustrates the value of rich data models. The election results coverage and “Minors in possession” special report also got a mention.
The final site I talked about was Marketplace, the brand new business directory listing over 4,000 local companies. It can provide a map of all the chiropractors in town, along with their opening hours and contact details. Individual business listings can include events, photos, coupons, even video ads. Business owners can claim their listings and add more information to them; one restaurant uploaded photos of their entire menu.
I concluded with a few points on how you can go around building sites like this, including the “wouldn’t it be cool if...” development process and the importance of cheap labour (interns!) to reliably populating your database. I also threw in a plug for Django; the automatic admin interface was developed especially to support the fast pace of development at the Journal-World.
I finished up with a plug for the blogs of some of the current team, all well worth a look.
- Jeff Croft (congrats on the new gig!)
- James Bennett
- Jacob Kaplan-Moss
- Matt Croydon
- Nathan Borror
- Christian Metts
Full download (PDF) available from slideshare.
More recent articles
- ChatGPT should include inline tips - 30th May 2023
- Lawyer cites fake cases invented by ChatGPT, judge is not amused - 27th May 2023
- llm, ttok and strip-tags - CLI tools for working with ChatGPT and other LLMs - 18th May 2023
- Delimiters won't save you from prompt injection - 11th May 2023
- Weeknotes: sqlite-utils 3.31, download-esm, Python in a sandbox - 10th May 2023
- Leaked Google document: "We Have No Moat, And Neither Does OpenAI" - 4th May 2023
- Midjourney 5.1 - 4th May 2023
- Prompt injection explained, with video, slides, and a transcript - 2nd May 2023
- download-esm: a tool for downloading ECMAScript modules - 2nd May 2023
- Let's be bear or bunny - 1st May 2023