logoalt Hacker News

gorgoilertoday at 10:19 AM2 repliesview on HN

What a ridiculous idea. As hard to read as it is dumb!

For a senior engineer like myself with decades of experience it is trivial to see how to fix this to make it much more readable.

1/ pick a sunny day

2/ at each hour, measure the bearing to the sun

3/ encode as a dict[str, float] e.g.

    {“twelve”:180.00}
4/ sort the hours by dict.get

Voila.

As an added bonus, for some reason this ends up sorting the minutes and seconds too. (“# wtf?!”)

For now, I was only able to fix the hours when I could see the sun (eleven, twelve, and two to eight — I don’t get up very early and I like lunch). Patches form the arctic circle welcome :P

I also need to tilt my head a bit as eleven is at the top instead of twelve. Other than that I would say it’s a considerable improvement on the OP’s rather naïve implementation! Scoff!


Replies

rich_sashatoday at 1:32 PM

You could make either method more secure by hashing the encoded time and displaying that.

Make sure to use a cryprographically-secure hash function and a strong salt.

erutoday at 10:52 AM

Here in Singapore on many sunny days, the bearing is largely the same hour after hour. The sun just changes apparent altitude.

show 2 replies