2016-02-12 Gridmapper User Interface
Recently, somebody looked at Gridmapper and said āpressing a button works OK, but clicking the icon on the right side places wherever the highlight is, which is always on the right side, since it moves with the mouse.ā
I had never considered this. I guess this is by design because when Iām at the computer I prefer not to use the mouse ā or to use the mouse for just one thing. So, when using Gridmapper, the mouse is for drawing and then you hit the keys to place tiles ā unless youāre on a tablet where this is not feasible. When I started out, I felt that the pointer (the green blob) following the mouse was important for accurate placement. So, if moving the mouse moves the green blob, you canāt move the mouse pointer to the right and click a link to place a tile. The tiles will all end up at the right edge of the map where the mouse pointer left it.
When I use Gridmapper, I basically use it using only the keys. Itās so much faster.
As I was considering how the user interface should work for a touch screen, I noticed an important change: You can touch the screen and draw the floor of your dungeon level, lift your finger and click a link on the right without moving a pointer across the map to the right. As far as the application is concerned, the finger appears out of nowhere to click the link. And suddenly it makes sense to draw on the map using your fingers and clicking the letters and icons on the right.
And when you go back to the computer, itās weird. Suddenly this no longer works. And now Iām wondering whether I should change it. If I make the desktop experience more like the tablet experience, then Iāll be wondering how to accurately place tiles. Add a light grid to the gray background? And how to differentiate between placing the green blob and placing a floor tile ā force users to click the floor icon? Or introduce the concept of long press? This is tricky.
ā#Gridmapper
Comments
(Please contact me if you want to remove your comment.)
ā
Perhaps you could try implementing drag&drop?
ā AlexDaniel 2016-02-13 04:09 UTC
---
I guess I could, but itās hard to implement, and itās hard to use efficiently. Do you ever use drag and drop in your daily life? I sometimes do in Windows and OSX file managers and I *hate* it. Thatās why I think I wonāt be implementing drag and drop.
ā Alex Schroeder 2016-02-13 13:01 UTC
---
Sometimes I drag files from file manager into Emacs. Thatās the only thing that is actually faster to do with drag&drop, I guessā¦
ā AlexDaniel 2016-02-14 06:26 UTC
---
From my G+ on Friday:
*Overengineering*. My favorite buzzword in the office, last week. And it also applies to my private projects. Gridmapper, for example, has a cool feature that absolutely nobody uses. It was interesting to implement, it poses an interesting user interface challenge, it takes a lot of code to handle it all, *and nobody uses it*.
Well, I guess the general problem is that things that are made are not guaranteed to be popular, not even when theyāre free. In that respect, Gridmapper as a whole is typical. Itās cool, itās interesting, it was fun to make but now that it is done, it isnāt really all that useful. A bit like building stuff with Lego. The making of the thing was the important part, not the using of the thing.
So, we have a spectrum of value judgments: valuable, useful, interesting, boring, useless, worthless. Overengineering is what pushes a thing from boring to interesting but doesnāt manage to push it all the way to useful.
Actually, the excising of this feature would again satisfy my sense of code aesthetic. It would be more elegant. Easier to maintain. Easier to explain. So thatās what one usually does in a software project. But if the entire project is interesting but useless ā then what? Excise the whole thing?
Thoughts I have late at night on a Friday when I ought to sleep instead. š
And from a comment I left on Saturday:
I think that the various labels are not necessarily a sequence. I can make something useless into something useful without the process or the end product being interesting, for example. Last night, though, I was mostly interested in the property of things that make me think āthis is overengineeringā (and trying to explain to myself why on earth I was doing something and then not liking it very much) ā and I think āinteresting to do but not good enough to be usefulā is what Iām looking for.
ā Alex Schroeder 2016-02-14 19:11 UTC