Good thing history had so many smart people!
I have been tasked with (read: took upon me the task of) making a little Eve Online-related tool for figuring out potential locations based on vague intel. To do this, I downloaded a database of the unchanging information regarding the game, which its developers have been so kind to provide. It’s a huge thing, but at least it makes some semblance of sense.
My case is as follows. I have a list of connections between nodes, and values for each individual node. I want to know, for all nodes, how long the shortest route to every other node is. In other words, I want the smallest amount of connections for every node-pair. And keep in mind I’m talking about node amounts far in the thousands here, so that’s a whole lot of pairs!
Given the application, I’ll probably be calculating this stuff in advance and storing the results for quick and easy access. That doesn’t mean performance isn’t an issue though, I’d rather not have my server run crazy for a couple of days to get the data I need. But since this is a well-known problem in computing (and graph mathematics in general), there’s been plenty of people who’ve thought long and hard about this to figure out an optimal solution.
And that’s the beauty, I can just go to Wikipedia, read up on the different algorithms, pick one that suits my needs, and implement it. Of course I’m leaving out the “actually understand the algorithm” step there, but that’s only needed if your code doesn’t work right away. Which is to say, always.
Stealing smart people’s ideas gets you halfway there at least.