thesystemis

Joined 17 years ago

Karma
344
Submissions
69
Member since
Jul 26
developer of openframeworks (openframeworks.cc) and artist (daily code sketches: http://instagram.com/zach.lieberman)

twitter.com/zachlieberman

View on Hacker News

Recent submissions

Comment · 9 years ago
last year I made a resolution to do daily code sketches for fun:

https://www.instagram.com/zach.lieberman/

I have learned a great deal from the act of daily coding and treating code like a creative medium without any pressure on what I make or why. I found myself tackling hard challenges so I wouldn't get bored and learning a variety of new tricks to help make the sketching easier. I wrote about the process here:

https://medium.com/@zachlieberman/daily-sketches-2016-28586d...

I think daily activities are the best for growing -- short, concentrated, and limited in scope and can fit with the rest of your life.

Comment · 9 years ago
thanks!
Comment · 9 years ago
I just saw this thread... I wrote this article (and made the sketches here: https://www.instagram.com/zach.lieberman/) -- happy to answer any questions!

also if it's helpful to anyone, I do open office hours once per week and I am happy to talk to anyone about sketching, creative code or anything else:

https://medium.com/@zachlieberman/open-office-hours-124e1b79...

Comment · 9 years ago
Comment · 9 years ago
sorry! this is a bug based on how many events the mouse is firing and I've open an issue for it -- I will take a look at the app with a gaming mouse and work on a fix.
Comment · 9 years ago
thanks -- do you know what graphics card that is? also you can try enabling "Override software rendering list" in chrome://flags/ -- I don't have a great handle on what gpus are blacklisted, but I know there are some that are.

putting this in the address bar can give you a lot of info as well "chrome://gpu"

Comment · 9 years ago
I'm not on the data arts team (I collaborated with them on this) but I'll ping them to answer.

This was a passion project, they approached me with a set of data -- satellite images, and we discussed different ways of visualizing them, etc.

Comment · 9 years ago
fixed! thanks!
Comment · 9 years ago
thanks! I am using a metric from the dollar gesture recognizer

http://depts.washington.edu/madlab/proj/dollar/index.html

which gives a value for how close to polylines are (it normalizes them and does some distance calculations)

the way the vp tree works is you provide a set of data and a metric for distance (in my case, the data was the polylines and the metric was from dollar) and it computes the structure. As long as the metric observes some basic principles (I think it's called triangle inequality) the spatial division will work and you can do a fast search for nearest neighbors.

Comment · 9 years ago
Comment · 9 years ago
no it's a really good question! I think this just has to do with the line detection algorithm and it tending to find more curves than sharp angle lines -- this is what the matches look like when you draw a Z:

http://imgur.com/a/YErmM

they are not as good as when you draw a curve and I think it's just trimming based on general poor matches. I've found if I round the Z or make the angle less extreme I can get better results.

Comment · 9 years ago
the matching is based on the input (lines from the line detection) and we do some tricks to try to get better matches if the results aren't great. One trick is for matches that aren't super great, we start to trim the line slight from the start so if the first pass is a bad match, we try 95% of the line (ie, the last 95%) then trim is some more, etc.

another thing to note is that the app progressively loads data in the background so you get better results after the first minute or so once all the data is loaded -- the app launches with only 20% of the overall data.

Comment · 9 years ago
there's actually no backend! the matching is done client side.

here's a technical write up:

https://developers.google.com/web/showcase/2016/land-lines

the trick for making it fast is vantage point trees (https://en.wikipedia.org/wiki/Vantage-point_tree) which help with nearest neighbor searching through extremely large data sets.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton