Hacker News new | ask | show | jobs
by jasonkester 1707 days ago
I mentioned it because I was doing online mapping in 1999, when things were as you describe. In my spare time, I built the obvious thing that occurred to everybody, and came up with a draggable map with momentum. (In the browser, just like gmaps)

Google maps was still years away. And tile server tech wasn’t quite there to ship it yet. But it was the obvious thing to build, and not in any way a mystery as to how you’d do it.

1 comments

It's not obvious. It's just smart. And decades of momentum based apis have caused you to think of something you'd probably never actually seen in a ui at the time as non-novel.

Inventions are often that way -- think of the mousetrap. People knew springs pinched the crap out of you when released. But nobody had made a device to kill mice, yet untilthat was invented.

I don't know what the cognitive bias for thinking that because you thought of an idea it must be obvious is, but it exists. I say that as a patent inventor.

The "what" is obvious, it's similar to the way you'd use a real map (and not only): by folding or rolling it and sliding the region or tile you want to see with your hands until it comes into your view. So the concept of sliding something into view is obvious. On a computer you have to use the input methods available, keyboard or mouse to achieve the same with relatively few obvious options.

The technical "how" of the implementation is not really obvious, you could implement the same result in many possible ways, some better than others.

I'm speaking of the inertial scrolling tween that causes the coast to stop pre-Google Maps era, and makes the interface feel like handling an actual physical object, not the sliding of things into a viewport. Viewports and tiling had been done long before that time period.

That physics combination with drag and drop interaction was not obvious in the time period we are discussing. The closest thing I can remember to that sort of thing were side scrolling games that accelerated with the character centered on the screen according to the game's physics, and possibly paddle-based game physics dating to the Atari era.

Slowly increasing scroll was present in some interfaces. But not tweened stop.

My main point is that clever people often dismiss what they find trivial to be obvious to others, and while that's often the case once many examples have been observed, it isn't prior to the exposure to many examples.

> That physics combination with drag and drop interaction was not obvious in the time

Copying natural laws in our work is something that was obvious for humans for millennia. We've been imagining space ships 100 years before going to space but simulating inertia for an object "sliding" on a screen was "not obvious at the time"?

Of course it was! How to do it (well) may not have been obvious but the idea of doing it was there for anyone using a computer. The parallel with the real world was always obvious because this is directly analogous to how physical objects behave and you'd do naturally in the physical world. The world around you provides the "observed example", not other computer implementations.

I personally thought since decades ago about this kind of inertia while scrolling through lists or dragging things. I thought of transparency, skeuomorphism, writing on touchscreens, etc. long before they were implemented because computers could handle them. And I can assure you I wasn't the only one.

"Same thing that you've been doing for ages in real life but now on a computer".

P.S. I'm thinking of a holographic/VR 3D interface right now that replicates interactions with physical objects either by manipulating it with my body parts, with electronic input devices, or with a BCI. I hope I live long enough to read an internet discussion where someone claims this was just not obvious back in the dark ages of the early 2020s...

An invention is the embodiment of an idea. It's not enough to think of a humanoid robot. You have to think of and implement the idea.

Your interface is just a fantasy. You haven't taken any steps towards making it a reality. There's no demonstrable prototype. There's no documented research into it's principles that you have uniquely contributed directly to.

That's the difference. You haven't undergone any inventive steps, because you haven't created anything. You have a vague idea that such a thing may be possible, but haven't undergone the rigor of understanding and implementing a basic example of what you have conceptualized.

This isn't to be confused with comercializing the idea, figuring out how to market and produce it to meet demand, package it, and deliver it. That's a wholly different process, parts of which itself may require further inventions.

For several comments you made the point that the idea of inertial scrolling (dragging something and letting it "slide") was not obvious:

> I'm speaking of the inertial scrolling [...] That physics combination with drag and drop interaction was not obvious

Now you pivoted to the point that the implementation is what makes it not obvious:

> You have to think of and implement the idea.

Despite the tone of disapproval you just landed in agreement with what I said in the very first comment:

> The "what" is obvious [...] The technical "how" of the implementation is not really obvious

Will it be a novel invention to implement the inertial scrolling of a map using an exceptionally overly-complicated and completely impractical method that nobody has used before? No. Will the idea of inertial scrolling be obvious despite my completely non-obvious implementation? Very much so.

It is obvious because that is how you move a big physical map. You pull it towards or away from yourself to view specific area, just like with a mouse. That's how it was done since first maps. It's just obvious to move a big piece of paper on the table that way.
It's not that - it's the inertial glide to a stop that makes it feel like a big piece of paper that was innovative at the time. See my other comment.