Simon Willison’s Weblog

Subscribe

41 items tagged “adrian-holovaty”

2024

State-of-the-art music scanning by Soundslice. It's been a while since I checked in on Soundslice, Adrian Holovaty's beautiful web application focused on music education.

The latest feature is spectacular. The Soundslice music editor - already one of the most impressive web applications I've ever experienced - can now import notation directly from scans or photos of sheet music.

The attention to detail is immaculate. The custom machine learning model can handle a wide variety of notation details, and the system asks the user to verify or correct details that it couldn't perfectly determine using a neatly designed flow.

Free accounts can scan two single page documents a month, and paid plans get a much higher allowance. I tried it out just now on a low resolution image I found on Wikipedia and it did a fantastic job, even allowing me to listen to a simulated piano rendition of the music once it had finished processing.

It's worth spending some time with the release notes for the feature to appreciate how much work they've out into improving it since the initial release.

If you're new to Soundslice, here's an example of their core player interface which syncs the display of music notation to an accompanying video.

Adrian wrote up some detailed notes on the machine learning behind the feature when they first launched it in beta back in November 2022.

OMR [Optical Music Recognition] is an inherently hard problem, significantly more difficult than text OCR. For one, music symbols have complex spatial relationships, and mistakes have a tendency to cascade. A single misdetected key signature might result in multiple incorrect note pitches. And there’s a wide diversity of symbols, each with its own behavior and semantics — meaning the problems and subproblems aren’t just hard, there are many of them.

# 20th June 2024, 4:37 am / adrian-holovaty, music, machine-learning, ai, ocr

2022

Let websites framebust out of native apps (via) Adrian Holovaty makes a compelling case that it is Not OK that we allow native mobile apps to embed our websites in their own browsers, including the ability for them to modify and intercept those pages (it turned out today that Instagram injects extra JavaScript into pages loaded within the Instagram in-app browser). He compares this to frame-busting on the regular web, and proposes that the X-Frame-Options: DENY header which browsers support to prevent a page from being framed should be upgraded to apply to native embedded browsers as well.

I’m not convinced that reusing X-Frame-Options: DENY would be the best approach—I think it would break too many existing legitimate uses—but a similar option (or a similar header) specifically for native apps which causes pages to load in the native OS browser instead sounds like a fantastic idea to me.

# 10th August 2022, 10:29 pm / browsers, privacy, security, adrian-holovaty

Twenty years of my blog

Visit Twenty years of my blog

I started this blog on June 12th 2002—twenty years ago today! To celebrate two decades of blogging, I decided to pull together some highlights and dive down a self-indulgent nostalgia hole.

[... 4,455 words]

2010

What is the history of the Django web framework? Why has it been described as “developed in a newsroom”?

I was there!

[... 674 words]

2009

Data Is Journalism: MSNBC.com Acquires Everyblock. Congratulations Adrian, Wilson and the team! Brady Forrest reports the acquisition within the larger context of the rise of data-driven journalism.

# 18th August 2009, 12:10 pm / adrian-holovaty, wilson-miner, everyblock, msnbc, brady-forrest, data-journalism

Django tip: Caching and two-phased template rendering. Neat trick for expensive pages which can be mostly cached with the exception of the “logged in as” bit—run them through the template system twice, caching the intermediary generated template.

# 19th May 2009, 1:34 am / django, template, python, caching, performance, adrian-holovaty

The Django Book: Version 2.0 (via) Adrian’s working on a new edition of the Django Book updated to cover version 1.0. As with the first edition, it will be available free online in addition to a published Apress paperback. The first three chapters are now available.

# 9th January 2009, 2:54 pm / adrian-holovaty, django, book, python, apress

2008

Django tickets with keyword “djangocon”. Adrian and Jacob ran an “I want a pony” session during their closing keynote at DjangoCon—I’ve filed the feature requests as tickets tagged with the “djangocon” keyword.

# 8th September 2008, 3:02 am / djangocon, djangocon08, iwantapony, django, python, adrian-holovaty, jacob-kaplan-moss, tickets

Cyberstar. Adrian made the front cover of the Chicago Tribune magazine!

# 18th August 2008, 11:56 pm / adrian-holovaty, django, everyblock

themaneater.com Launch. The Maneater’s online edition is where Adrian cut his web development teeth, so it’s great to see them up and running on Django. Important to note that KeepAlive can completely murder Apache/Django performance.

# 10th February 2008, 8:10 am / apache, django, keepalive, themaneater, adrian-holovaty

Introducing EveryBlock. EveryBlock launched! Adrian Holovaty, Wilson Miner, Paul Smith and Daniel X. O’Neil’s startup which answers the question, “What’s happening in my neighborhood?” Cities covered by the launch are Chicago, New York and San Francisco.

# 23rd January 2008, 9:56 pm / everyblock, django, adrian-holovaty, wilson-miner, paul-smith, daniel-x-oneil, san-francisco, chicago, new-york

Chatting with Adrian Holovaty. Fabio Akita interviews Adrian about Django and related topics.

# 1st January 2008, 11:44 am / django, adrian-holovaty, python, fabioakita

2007

“The Definitive Guide to Django” is now shipping from Amazon. The book looks absolutely fantastic (bias disclosure: I contributed the newforms chapter)—huge congratulations to Adrian and Jacob.

# 11th December 2007, 9:12 pm / django, django-book, books, apress, amazon, adrian-holovaty, jacob-kaplan-moss

Django Book Update. It’s done! Went to the printer on Friday, due in bookstores in the second week of December (just in time for Christmas). Congrats to Adrian and Jacob.

# 14th November 2007, 12:59 am / django-book, django, python, adrian-holovaty, jacob-kaplan-moss

Knight Foundation grant. Adrian’s leaving the Washington Post to found EveryBlock, a startup focusing on local news and information in the style of chicagocrime.org.

# 24th May 2007, 4:27 pm / everyblock, adrian-holovaty, chicagocrime, startup, washington-post

Web Focus Leads Newspapers to Hire Programmers for Editorial Staff. It’s great to see this trend taking off. A newsroom is an excellent place to work as a programmer.

# 8th March 2007, 12:27 am / newspapers, programmers, jobs, adrian-holovaty, jacob-kaplan-moss

2006

The programmer as journalist. An interview with Adrian Holovaty.

# 6th June 2006, 10:51 am / adrian-holovaty

How I’m using Amazon S3 to serve media files. Adrian’s saving server overhead on ChicagoCrime by serving media from S3.

# 7th April 2006, 6:51 pm / adrian-holovaty, s3, amazon, chicagocrime, aws

2005

Exciting developments with Django

The amount of activity surrounding the Django web framework since its not-quite release a few weeks ago is amazing. Adrian, Jacob and Wilson have been working over-time, with 395 check-ins to source control since the 13th of July. They’ve added WSGI support, a development web server, unit-tests, a ton of documentation, SQLite support, database introspection and dozens of other feature tweaks and bug fixes. Check out the project Timeline for an idea of just how frenetic things have been.

[... 271 words]

Adrian is leaving the Journal-World. This opens an excellent Python job opportunity in Kansas.

# 3rd August 2005, 2:50 pm / adrian-holovaty

Introducing Django

You may know that I spent a year working in Kansas for a local newspaper—the Lawrence Journal-World. I’m delighted to announce that a decent chunk of the software I worked on there is now available as open-source, in the form of the Django web framework.

[... 614 words]

Why Greasemonkey is good for publishers (via) Free usability tips and bug fixing—your users know more than you do.

# 13th April 2005, 4:09 pm / greasemonkey, adrian-holovaty

Again, a newspaper PDF experiment is fatally flawed. Adrian nails the reason PDF editions will always play second fiddle to the real web.

# 2nd March 2005, 11:25 am / adrian-holovaty

2004

’Game’: Fun with databases. Adrian discusses our latest site launch.

# 12th June 2004, 12:14 am / adrian-holovaty

2003

Installing psycopg on Red Hat 9

Adrian Holovaty and I spent some time today figuring out how to get the psycopg Postgres module to install on Red Hat 9. It took a while, but eventually we tweaked the spec file and used it to compile our own RPM. I’ve posted our modified spec file to the psycopg mailing list. More for my own record than anything else, the arcane incantations needed to create the RPM went roughly as follows:

[... 151 words]

Lawrence web meetup

My colleague Adrian is putting together a meetup for web designers and developers in the Lawrence, Kansas area on Monday evening. The venue is yet to be decided but we’re looking to book somewhere for dinner with an atmosphere that’s conducive to lively conversation. Likely attendants so far include Adrian Holovaty, Travis Beckham, Anitra Pavka, Dan Cox (designer for ljworld.com, lawrence.com and kusports.com) and myself. If you’re a web developer/designer in the area and this sounds like your kind of thing drop Adrian a line for more information. It should be a lot of fun.

[... 121 words]

I’m in Kansas

If you’ve been wondering why the site has been so quiet for the past few days, here’s the reason: I’ve moved to the States! To cut a long story short, I’m here in sunny Lawrence for a couple of weeks preparing for a year long industrial placement at the Lawrence Journal-World, which should start for real in October (depending on my Visa application). To call this an exciting opportunity would be an understatement. The team I’m working with have won a ton of awards, and have a fearsome reputation within the industry. I’m joining Adrian Holovaty (recently interviewed on zlog) as a web developer working on KUSports, LJWorld and the excellent Lawrence.com. The company itself is remarkably forward thinking, especially in its approach to the web (no need to support Netscape 4)—there’s a good overview of what makes the Journal World special here, which includes a video interview with my boss, Rob Curley.

[... 206 words]

Signing comments on blogs

Adrian Holovaty has implemented reserved comment names in his blog, a feature that prevents anyone apart from him from using the names “Adrian”, “Adrian H.” or “Adrian Holovaty” when posting a comment. François Nonnenmacher suggests extending the idea to allow people to “confirm” their authorship of comments on any blog using a TrackBack sent to their site that in turn causes them to be sent an alert email, which they can then use to confirm their comment. I like his idea of authentication based on URLs (email addresses are no good; they should not be publically displayed for fear of spam harvesters) but I think I’ve come up with an alternative authentication scheme that removes the need for the user to manually confirm authorship. This is pretty complicated, so bare with me.

[... 762 words]

BBC News Feeds

Adrian Holovaty has the scoop on the BBC’s new RSS feeds, one for every news index page of their site. Adrian has also written a bookmarklet to find the feed for any section of the BBC site.

Better DHTML navigation

Adrian Holovaty demonstrates how standards compliant code and effectively written javascript can decimate the size of a clunky navigation interface, and make it more usable and accessible to boot: Web standards improve 2theadvocate.com navigation.