Top all-time · #12021
Nick Lothian
Personal blog · nicklothian.com/blogprogrammingai
Nick Lothian writes NickLothian.com, a personal blog at nicklothian.com about programming and ai. Since 2008, 6 different Hacker News readers have linked it 25 times, most often “Solandra = Solr + Cassandra”. It is still writing: the last post was on 2026-04-19, and you can follow it by feed.
Welcome to the website of Nick Lothian
Most-linked posts?
- Solandra = Solr + Cassandra2 people · 4 mentions · first linked 2009-10-28
- Using Flash to shim a webcam to HTML Canvas 2 people · 3 mentions · first linked 2009-12-16
- Augmented Reality Virtual Keyboard using HTML 52 people · 2 mentions · first linked 2009-11-19
- Why Question Answering Is Hard2 people · 2 mentions · first linked 2014-09-26
What Hacker News says?
- nl · 2018-04-20
I wrote the original version of Solandra (which is/was Solr on Cassandra) on top of Jake's Lucene on Cassandra[1]. I can confirm it wasn't fast! (And to be fair that wasn't the point - back then there were no distributed versions of Solr available so the idea of this was to solve the reliability/failover issue). I wouldn't use it on a production system now days. [1] http://nicklothian.com/blog/2009/10/27/solr-cassan…
Comment linking /blog/2009/10/27/solr-cassandra-solandra/
on “Apple open-sources FoundationDB” - nl · 2010-11-24
Submitted A pragmatic approach to Google AppEngine as a story · 68 points
HN discussion - nl · 2022-09-23
I've gone months without rebooting my MBP, and weeks without restarting Firefox. I don't remember the last time software crashed and I lost work. 15 years ago I'd reboot nightly because things were more stable. 20 years ago I debugged an issue in the JVM where it was deleting any file it touched ( http://nicklothian.com/blog/2003/08/13/a-java-bug-worthy-of-... ). 25 years ago it was normal for a computer to crash mu…
Comment linking /blog/2003/08/13/a-java-bug-worthy-of-your-vote/
on “Ask HN: Why is Microsoft Teams still so bad?” - nl · 2014-09-26
Submitted Why Question Answering Is Hard as a story · 54 points
HN discussion - nl · 2012-01-22
I've suggested that statuary licensing for video streaming[1] would be something that all tech companies could agree to support, and that Hollywood would hate. I think it fits well with the "0.99c/view" model proposed here. [1] http://nicklothian.com/blog/2012/01/18/why-the-tech-industry...
Comment linking /blog/2012/01/18/why-the-tech-industry-cant-go-on-the-offensive-against-ip-laws/
on “My idea to "Kill Hollywood"” - nl · 2014-12-23
Submitted Interesting papers from NIPS 2014 as a story · 22 points
HN discussion - nl · 2014-08-31
Also great is being able to read JVM bytecode. Even minor changes can be pretty interesting. Back in the day I wrote [1] about simple Java string concatenation. I still get people quoting it now, even though I'm sure it is completely outdated by newer compilers. It gets even more interesting when you see what x64 (or whatever!) assembly is generated by the JVM. [1] http://nicklothian.com/blog/2005/06/09/on-java-stri…
Comment linking /blog/2005/06/09/on-java-string-concatenation/
on “Say hello to x64 Assembly, part 1” - nl · 2009-10-28
Submitted Solandra = Solr + Cassandra as a story · 20 points
HN discussion - nl · 2011-02-26
Your site will scale well - as in it will give exactly the same performance for the millionth user as for the first user. That doesn't mean you will have a fast site, though. On GAE the datastore is pretty slow (it's a lot better now, but it used to be terrible), so a common pattern it to use a read-though cache to improve performance. I wrote a thing that touched on this a couple of months back: http://nicklothian.…
Comment linking /blog/2010/11/23/a-pragmatic-approach-to-google-appengine/
on “The Unofficial Guide to Migrating Off of Google App Engine” Submitted Augmented Reality Virtual Keyboard using HTML 5 as a story · 16 points
HN discussion- nl · 2016-07-09
It was 7 years ago. Jake did Lucene on Cassandra, but I actually did the Solr part, initially at least[1]. I never did much with it though, and Jake deserves the credit for making it a real thing people might use. I'm pleased with the name though. [1] http://nicklothian.com/blog/2009/10/27/solr-cassandra-soland...
Comment linking /blog/2009/10/27/solr-cassandra-solandra/
on “Elassandra: Elasticsearch implemented on top of Cassandra” Submitted The (s|S)emantic (w|W)eb as a story · 8 points
HN discussion- nl · 2010-09-16
I wrote a flash->HTML shim for webcams. Works ok on Firefox, Webkit has a memory leak. Details: http://nicklothian.com/blog/2009/12/15/using-flash-to-shim-a...
Comment linking /blog/2009/12/15/using-flash-to-shim-a-webcam-to-canvas/
on “HTML5 video chat implemented in Webkit GTK” Submitted Using Flash to shim a webcam to HTML Canvas as a story · 4 points
HN discussion- nl · 2011-03-30
There is actually a (minor) difference. Amazon really is streaming the MP3s, while if you play one from Dropbox it downloads and plays and plays (technically it could be played while downloading, but this is actually uncommon). There are slight technical differences - in streaming MP3s there is metadata embedded inside the files - see, for eg the second part of http://nicklothian.com/blog/2009/03/18/random-mp3-metad…
Comment linking /blog/2009/03/18/random-mp3-metadata-code/
on “Amazon on Cloud Player: we don't need no stinkin' licenses” Submitted Google Search API is back as a story · 4 points
HN discussion- nl · 2010-12-14
Detection is pretty useful though. Combine this with something like http://nicklothian.com/blog/2009/12/15/using-flash-to-shim-a... and you might be able to do facetracking in Javascript
Comment linking /blog/2009/12/15/using-flash-to-shim-a-webcam-to-canvas/
on “Face Detection jQuery Plugin” Submitted Why question answering is hard. (2014)) as a story · 3 points
HN discussion- nl · 2012-03-20
Back in 2009 I did some work on augmented reality in the browser[1]. Back then there was no WebRTC, so I had to shim Flash to Canvas to get webcam images, and I implemented image tracking using a simple color tracking algorithm. If this really is doing image tracking in JS (as tomp noted the explanation isn't clear) then I'm very impressed. The previous state of the art was some great face-detection code I'd seen, b…
Comment linking /blog/2009/11/18/augmented-reality-virtual-keyboard-using-html-5-video/
on “Javascript motion tracking” - nl · 2012-01-18
Submitted Why the tech industry can’t “go on the offensive” against IP laws as a story · 2 points
HN discussion - nl · 2012-08-27
StringBuilders are verbose, but they do make a measurable difference in your code. The problem with no using them is that then you need to be sure your code is never called by something else that runs it in a loop. A fair while ago (JDK 1.5 had just been released, so I was still looking at StringBuffer) I did some analysis on the bytecode generated by concatenation. There is a pretty significant difference: http://n…
Comment linking /blog/2005/06/09/on-java-string-concatenation/
on “Java memes which refuse to die” Submitted Experimental SOLR and Cassandra as a story · 2 points
HN discussion- nl · 2011-06-29
The right ad, for the right product, at the right time adds huge value to me as a user. If I'm looking to buy a specific product, have finished researching it and now know what I want then I don't really care if I get the product via an ad, via an unpaid link, or via walking to the shop. It comes down to price, availability, and service and if I'm delivered that via an ad I'm happy. It's called perfect advertising[1…
Comment linking /blog/2010/08/25/perfect-advertising/
on “Breaking news: advertsing company wants your personal information” - nl · 2009-11-19
The demo is using a recorded video in the left view, with JS processing on the right. When he (I) was developing it, I used VLC to stream the webcam to the page. If you view-source, I've got a link to the documentation on how I did that: "To use this with a webcam instead of a saved video you'll need to stream your webcam via the same domain this is running from. http://nicklothian.com/blog/2009/11/17/using-a-webcam…
Comment linking /blog/2009/11/17/using-a-webcam-with-html-5-via-vlc/
on “Augmented Reality Virtual Keyboard using HTML 5” - nl · 2009-11-09
It's not as simple as he makes out. I had a look at the + operator and compiler optimizations back in 2005. Basically, depending on exactly how you setup your strings javac is able to do some optimization. Note that this is a compile time optimization, so compiling with Eclipse (for example) will probably give different result. Anyway, some details are at http://nicklothian.com/blog/2005/06/09/on-java-string-concat.…
Comment linking /blog/2005/06/09/on-java-string-concatenation/
on “Java String Concatenation and Performance”