109 karma · joined July 18, 2013
It might be said that the definition of "size" for a computer system is exactly the degree to which it requires "architecture" to make it.
Under that interpretation one way to try to become a "Software Architect" is to study large systems and how they succeed or fail at their intended purposes.
~Dijkstra
https://www.cs.utexas.edu/~EWD/transcriptions/EWD10xx/EWD103...
I sometimes use imagery of a toilet flushing and the thought going down, several flushes if necessary (imaginary water is free!) Also, imagining white noise (visual and auditory) washing out the thought, increasing in power until it wipes away the thought like waves on a beach erasing patterns traced in the sand and then fading out, seems to work well. (I suspect using (imaginary) noise might have some actual biophysical basis for why it works, but that's just speculation.)
(I speak as one who has tremendous respect for the good that cat pictures have done for the world.)
No new features, no improvements, nothing -- just the same language, for a decade.
Am I alone in being excited by this? I am figuratively drooling over such stability.Some points in no particular order:
* In the limit of nanotechnology and fusion power we can produce anything (physical.) This forces us to confront our essential challenge which is the development of good character. All forms of government are attempts to manage human wickedness. Corollary: it very nearly doesn't matter what form of government obtains if the people in that government are virtuous.
* Permaculture (modelling agricultural systems on natural ecologies) is a non-technological mode of abundance.
* Communism: The Smurfs.
* It seems to me that the "natural" economic system varies with personal "distance". Broadly: immediate family/friends -> communistic; (Are the Amish commies? No.) neighbors -> barter / reciprocal gift-giving; strangers -> capitalism.
* If there is something to that last point then as the Internet shrinks personal distance we should expect a general trend from impersonal capitalistic forms to more personal "altruistic" forms (Gittip, etc...)
* As technology advances we are forced to become unwilling to "solve problems with bullets". If you are willing (for any reason) to commit violence you will perforce be kept from the really potent weapons. Already so-called "psych-ops" have become the cutting edge (no pun intended) of warfare: eliminate the enemy's desire to fight. It is only a matter of time before hippy-dippy shit becomes the obvious counter to hostilities by the intrinsic logic of warfare itself. ("Men Who Stare at Goats" is a documentary.)
Burning VC money is practically criminal when you think of the "opportunity cost" of what might have been achieved with it.
The saddest was overhearing a (retired) doctor I worked for attempting to mortgage his house.
Three hundred mega-years (what I meant) is a somewhat arbitrary milestone. (I think long-term but 10^15 years is a bit much for even me. But see Stapledon's "Star Maker"...)
(BTW, your thinking seems unusually clear on these matters.)
In my recent experience working for startups in the SF Bay Area I saw this pattern repeatedly, and it shocked me. Otherwise intelligent and competent people are, in effect, setting their money on fire and wasting lots of time and energy playing at having a real company.
For some reason people think they can start and run a "web startup" without the most basic understanding of what they're attempting to do (technically.) At one point I said to a developer co-worker, "These folks have only ever seen the Internet from the outside." He agreed.
It seems to me that part of the issue stems from the invisible nature of the machinery we build. If it were cars, or houses, I don't think folks would be quite so ready to blindly charge into business.
But part of it is just weird.
I'm actually looking for work right now but, because I no longer wish to work as a carpenter on the Winchester Mystery House (look it up) I'm having a hard time finding a job I can feel good about. More pay doesn't tempt me, nor the prospect of warm fuzzy social interaction with co-workers. I want to work with people who know what they're doing.
I was a fool until I understood LISP. The arrogance is warranted. One is a fool at least until getting LISP, this is not an assumption but a statement of fact.
(I actually got mad once I got LISP because I understood the awful waste that exists in the form of non-LISP languages.)
Aw, heck, code speaks louder than words:
https://github.com/PhoenixBureau/PigeonComputer/blob/master/...
On the other hand, if you have a product you believe in, that is high-quality, and that improves the lives of the customers who could really use it, he felt it was morally wrong NOT to sell it to them.
YMMV.
>>> from string import ascii_letters
>>> ors = ['|'] * (len(ascii_letters) * 2 - 1)
>>> ors[::2] = ascii_letters
>>> ''.join(ors)
'a|b|c|d|e|f|g|h|i|j|k|l|m|n|o|p|q|r|s|t|u|v|w|x|y|z|A|B|C|D|E|F|G|H|I|J|K|L|M|N|O|P|Q|R|S|T|U|V|W|X|Y|Z'
(Obviously, in this example '|'.join(ascii_letters) would suffice, but if the objects weren't strings...)There are some really interesting things that Python allows:
>>> d = {}
>>> d[23], d[14], d['hmm'] = 'abc'
>>> d
{'hmm': 'c', 14: 'b', 23: 'a'}In any event don't optimize prematurely and use a profiler rather than guessing if performance is an issue. ;-)