HN user

calroc

109 karma
Posts5
Comments56
View on HN

The "problem" that basic income is trying to solve is the massive increase in productive capacity due to automation, of which the increase of unemployment is a symptom. It's not so much that supply would meet demand (and so prevent prices going up), as that basic income allows demand to keep up with supply even as automation makes more with less labor.

I have to disagree: There certainly are people who can keep (very) large systems in their minds and refine and extend them, but they are very rare and most of the people who might call themselves "Software Architects" are not.

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.

"... From there it is only a small step to measuring "programmer productivity" in terms of "number of lines of code produced per month". This is a very costly measuring unit because it encourages the writing of insipid code, but today I am less interested in how foolish a unit it is from even a pure business point of view. My point today is that, if we wish to count lines of code, we should not regard them as "lines produced" but as "lines spent": the current conventional wisdom is so foolish as to book that count on the wrong side of the ledger."

~Dijkstra

https://www.cs.utexas.edu/~EWD/transcriptions/EWD10xx/EWD103...

That's pretty amazing!

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.)

Startcraps 12 years ago

Your friend could have gotten the same benefits while working on something that also was of greater (presumable) benefit to others than "Cat Snaps".

(I speak as one who has tremendous respect for the good that cat pictures have done for the world.)

The point of spiking trees isn't to hurt people, in fact the tree-huggers tell the loggers that the trees have been spiked so that they won't attempt to cut the trees. The point of the tactic is to prevent damage to the forest, not to actually hurt anyone.

    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.

I've been saying for years now that Star Trek forms the best commonly-known model for what future "economics" will be like. It's really awesome to read a well-thought-out treatment of that idea.

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.)

I took a bit of umbrage at the idea that humans surviving longer than, say, the dinosaurs did is "over hyped and misunderstood". That comment was my attempt at an unhyped and easily understood definition of "sustainability".

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.)

"KNOW HOW THE DOUGHNUTS ARE MADE"

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.

Where Lisp Fits 12 years ago

Except this: "Yes! Lisp is the superior language! The only reason it doesn't dominate all others is that most programmers are too stupid to see how wonderful Lisp is!" ...is exactly right. Not even hyperbole. Exactly right.

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.)

My dad was a salesman, and a really good one. He absolutely maintained that it was both counter-productive and morally wrong to sell people things that they didn't actually need or want.

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.

Python Idioms [pdf] 12 years ago

Yeah, I realized after posting it. (See edit.) The original code was using non-string objects. I basically come up with this to get the same behavior as str.join(). ;-)

Python Idioms [pdf] 12 years ago

I couldn't resist. Moar funky-cool Python:

    >>> 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...)
Python Idioms [pdf] 12 years ago

This is a great, if somewhat basic list. My $0.02: Python is a tool for thinking clearly. That you can run your "thoughts" as written is a very nice bonus, of course.

There are some really interesting things that Python allows:

    >>> d = {}
    >>> d[23], d[14], d['hmm'] = 'abc'
    >>> d
    {'hmm': 'c', 14: 'b', 23: 'a'}
Python Idioms [pdf] 12 years ago

In this form you perform the lookup twice: once to test 'x' in d and then again to actually get the value d['x']. Try clauses in Python are very inexpensive if they pass (don't raise an exception), so often the try..except version would be preferable.

In any event don't optimize prematurely and use a profiler rather than guessing if performance is an issue. ;-)