The fastest possible way to store and retrieve data of all shapes and sizes is B-trees.
So, you should have a look at http://use-the-index-luke.com/ to learn how SQL databases use B-Trees.
Are you serious? What kind of small company actually designs "...software...which they showed to Microsoft..." and doesn't expect
a) the ideas to be stolen by Microsoft.
b) be bought out by Microsoft.
c) be "corporate cannibalized" by Microsoft.
d) ALL OF THE ABOVE!
This was around the time that Microsoft was being tried and convicted on anti trust grounds in the U.S. and supposedly was reforming into a "kinder gentler" Microsoft that didn't resemble the black widow spider any more.
In most of our lifetimes? Per Wikipedia:
The very large IPv6 address space supports a total of 2^128 (about 3.4×10^38) addresses--or approximately 5×10^28 (roughly 2^95) addresses for each of the roughly 6.5 billion (6.5×10^9) people alive in 2006. In a different perspective, this is 2^52 (about 4.5×10^15) addresses for every observable star in the known universe.
It will take way more than poor management to use up all those numbers in any timescale with meaning to a human life.
That quote from Wikipedia you pulled, is immediately followed by this:
"While these numbers are impressive, it was not the intent of the designers of the IPv6 address space to assure geographical saturation with usable addresses. Rather, the longer addresses allow a better, systematic, hierarchical allocation of addresses and efficient route aggregation."
If we could arbitrarily ignore the network structure and special ranges assigned in IPv4, we have 4.2 billion possible IP numbers (2^32). Do we have 4 billion computers on the Internet? No. Do we have IPv4 shortage? Yes. In fact we had IPv4 shortage even back in the early 90-s when Internet was far from being mainstream yet (which prompted the jump from classful network to CIDR).
Not exactly, the article says also:
The slogan is a reminder of how thinking habits of programmers are influenced by the first language they learn and how hard it is to shake these habits if you do all your programming in a single language.
And i have to admin that this is awfully true.
I started with Basic as a child, took me some years. it was then very easy to switch to pascal (one week) and further to c (another week). After that i thought, well i can learn C++ also in one week. Yep, i read the book in one week. And what i did was a little "C with classes" but i noticed only a year later. year after year i noticed that there is more about C++ then what i thought of. After three years i managed to use STL efficiently, used exceptions properly, managed inhertitance (including multiple & virtual inheritance), did use descrutctores and smart pointer and so on. so i thought it's over, i took me three years to learn C++.
But some years later, i read "Modern C++ Design" and noticed that there is still a lot more
to cut a long story short: the first programming paradigm you learn will influence (limit?) your way of thinging quite a while.
Getting the job done is no excuse for not following the rules. Corollary: Following the rules will not get the job done.