I am a software test engineer in Austin, Texas. I am experienced in JUnit, XMLUnit, CPPUnit, and Borland's SilkTest, in addition to being experienced in shell scripting. My main interests are the application of theory to business problems, and therefore I have always enjoyed playing with concepts like genetic algorithms, when I don't happen to be working with systems which implement them on a day to day basis. My (largely political) blog is: http://blogkinnetic.blogspot.com. See bio there as well. :-)
EOM
A $1000 computer with the equivalent knowledge of the whole human race won't happen because it is physically impossible.
There are 10^11 neurons or so in the brain. There are 10^10 (say) people in the world (more like 0.5 X 10^10 but anyway).
So loosely there is an order of 10^20 neurons in humans on earth total. Avogadro's number has approx. 6 * 10^23 atoms in 12 grams of carbon, so, basically, you'd have to have 1 neuron simulation per atom to fit the entire human intelligence on say, your hand held mobile device, or close to a 1 : 1 simulated neuron to atom ratio. Transistors are cool but they ain't that cool boys and girls. Won't happen.
Now, you could fit a 10^10 neuron simulation in a 10 meter square server room 1 meter deep, that might be possible. So replicate this set-up 10 billion times and then you'd get the population of the human race on a computer. Slightly more than $1,000 tho. :-)
That is a BrainF*k program. It reads a char (","), then if value is greater than 0 (i.e. not null since ANSI 0 is 48, so more precisely, if the input is not null, rather than greater than 0), then in that case it enters the square brackets. It outputs the entered char ("."). It does not decrement the value in that cell ("-"), it does not add to it ("+"), it does not move the pointer to another cell (">" or "<"). It just sits there and outputs, forever (".") since so long as the value in that cell is not null it will not get out of the square brackets (the "while" loop) and since it never decrements the values ("-") it will always be not null. This is the same as saying "while(true) putchar(c)". This program will not terminate.
Seems to me, go thru a program source code, and look at all loops and see if the pointer controlling the loops ever decrements the cell it is pointing to. If it does, program terminates. If it doesn't program does not terminate. If cell pointer is at overflows its capacity program blows up. There. I just solved the requirements of the "get a coder" posting. That will be 300 euros please (because the dollar sucks). :-)
More seriously, I think in terms of the requirements, it is not a matter of running f(x). It is a matter of analyzing f(x). Maybe you can't do this for all x, but surely it seems like you can for all f. Meaning, you can't test an infinite number of inputs to a given input program. But you can go thru the source code, like the above example, and determine how it will handle the input x. Feeding x into the f above will give you an infinite loop. You don't know that if all you do is feed x to f. But if you look at f first and you look at x (in this case, to know x is not null), then you can predict f(x) will infinite loop, without ever having to run it.
In other words the requirements are not asking for a debugger. They are asking for an oracle, i.e., an "intelligence" in the program smart enough to look at f, look at x, and figure ok f never stops, f does stop, or f blows up. The oracle won't run f(x). The oracle will merely analyze f(x). And she does this by simply looking for while type loops, and figuring out the affect x will have on the pointers controlling them. Will x cause the cell pointed to by the pointer to get decremented to the point of stopping an infinite loop or not? If so, f(x) halts, if not, it doesn't. Gosh, this doesn't sound so impossible (again, viewing the requirements as really asking for an oracle, not a debugger). Maybe I'm missing something here, and would welcome comments.
This is a sad day for American capitalism. If SCO's System V got copy/pasted into Linux, and Novell and others can just get away with that, then this is just really a sad day for free enterprise.
An old principle here perhaps: evolution does not mean making an organism more complex or "better" necessarily, only "more adapted", so sometimes more complex organisms can become less complex organisms, such as cave fish losing their ability to see. Similarly, perhaps with memes. Better adapted memes mean just that, better adapted, even if they are completely insane from one way of looking at things. So if the meme of say plastic wishbones mentioned in this article is adapted for some crazy reason, it will find a niche. This is the dark side of evolution. Sometimes organisms lose features and complexity for the sake of adaptation, and perhaps there is a memetic corollary here to, sometimes in the free market the most adapated memes are some of the most insane or revolting, from an aesthetic standpoint. Which just proves the "selfish gene/meme" paradigm - if they can get copied, they will, and they don't care about whatever pain or suffering or cultural decline that may occur as a result.
Paraphrasing Rand, I think I would tell my younger self: Do not recognize anyone's right to one minute of your life, nor to any part of your energy, nor to any creation of yours, no matter how large their number nor how great their need.
Personally, I think I spent too much time in a futile effort to please parents and relatives and so forth. Later in life, I find that is not only a futile effort, it can also make one completely miserable, since one is not being one's truest self, but is acting as one perceives others want them to act or be. Reading Rand, I find that mistake is a common but grave mistake, underlying societal decay in much of history, namely, the mistake of living for others instead of oneself. So yeah, that would basically be it. If I could reach back a decade, and tell a copy of myself in a Everett-Wheeler parallel universe one thing, that would be it, the above paraphrase from 'The Fountainhead'. :-)
This article is grotesquely misleading. It misuses the word "virtual". Virtual reality meaning a simulation hasn't a thing to do with virtual particles in quantum field theory. In this case, the strength of the strong nuclear force field in a given point affects the probability amplitude of finding a gluon at that given point, which, in turn, will affect the mass of the area surrounding that point. In the case of the 3 quark proton, the strong nuclear force field has a high strength in the vicinity of the three quarks, therefore, the probability of finding gluons here is higher than outside the 3-quark bounded configuration. Since energy is equivalent to mass, that means the 3-quark bounded configuration will get a higher mass value than the surrounding vacuum, because of the higher prevalence of the strong nuclear force-field carrying gluons within it. This is ordinary, well understood, quantum chromodynamics, similar to quantum electrodynamics. There is nothing "virtual" about it in the sense of "less than real". A particle may be said to be "virtual" if is is transient (acts over a short distance or timespan). However its effects are as real as it gets. At the end of day, quantum field theory comes to down calculating probability amplitudes, in this case, the probability of finding gluons in the 3-quark configuration. There isn't anything "virtual" or "magical" or "hocus pocus" about it. And if somebody thinks there is, they shouldn't be writing for a science magazine.
I have to respectfully disagree here, having done a bit of unit testing myself (JUnit, XMLUnit, CPPUnit). I think the better way to approach unit testing is have a resource on your team dedicated to unit tests, that way, one does not have to write unit tests for code oneself has written. I think I sense that is the big gripe, that writing unit tests on top of the deliverable takes time and is "boring". I worked at a place where I was on the development team, but my sole task, or primary task at any rate, was writing CPPUnit unit tests. I actually enjoyed it alot personally, found lots of bugs that never would have been found otherwise, and the QA department "felt better" knowing the deliverable had been unit tested before being delivered to QA. So, having done unit testing myself, sure I am "biased" but I think it makes for more stable deliverables to QA and therefore speeds up the whole QA cycle as a result. But probably ideally I would agree that having a different person write unit tests than the person who wrote the code being tested is good, in terms of not adding more work to an already over-worked developer.
What is art/creativity after all, other than the EMI's basic modus operendi:
1) Chop-up
2) Re-assemble
For example, a unicorn, takes a horn from say, a picture of a longhorn, and sticks that onto a picture of a horse in the mind's eye, and voila, there is a unicorn. Getting bits of information from disparate places and re-assembling them in ways which are harmonious in some sense underlies all art, be it music, or painting, or whatever.
Truth is, in my own opinion anyway, there is no "soul". There is only a complex neural net which can do the above algorithm pretty darn well, or at least, can do it well in the case of artists. Get over it, I say. The earth isn't the center of the universe either. Too bad.
Love this. Determining how these "hidden metric spaces" arise in neural networks during the course of evolution could have great impact on the understanding of the brain. Dan Dennett talks of consciousness as a "meme machine" made up of lots of little unconscious "robots" or neurons. Perhaps this is not the entire story though. Perhaps the neurons have evolved to maximize efficiency in communication by means of some hidden metric space. I wonder if associations of "synchronicity" could come into play here. Say neuron A wants to get a signal to Location L following some Input I. Neuron A doesn't know Location L but knows that Neuron B always fires when something happens in L. So it sends the signal over to Neuron B, which, sure enough, passes it along to L, therefore, Neuron A is able to get the signal following a certain input over to L without knowing exactly the topological connections to L. Of course words like "know" and "want" are used metaphorically, obviously this arises dynamically via blind trial and error. So Dennett's robots take on a new layer of interest: perhaps by being able to form associations between temporally or spatially related events, they can construct signal patterns via a "hidden metric space" for better efficiency. Figuring out how this additional efficiency comes about by figuring out how these hidden connections evolve could make artificial neural nets more efficient. Right now, I think neural nets are largely "brute force" - add more neurons for better results. But perhaps hidden metric spaces could help us get better results from the same neuron number. Anyway. Way cool.
Reminds me of that James Woods film, "Videodrome", an existential musing on reality, specifically, television being more "real" than real life. While dated, one could update the "Videodrome" movie concept for the internet age. Obviously, Justin.tv did nothing wrong, in terms of the fact one cannot edit live video. It does bring up questions about the need for sensationalism, that somehow there is a collective need for it, almost like an archtype.
I don't even know where to begin with this. Typing is a way to program, but not the only way. One can get on ebay or the like and find these old engineering sheets of paper where people at IBM would hand write FORTRAN code, then take the paper over to the department that would make punch cards out of the programming sheets. No typing involved. It is like saying to fly you need to know how to handle jet engines, rather than the principles of lift, keeping the nose level, etc. Whether the plane uses a jet engine or not is incidental to good piloting skills. Similarly, whether one uses a keyboard to create a program or the IBM engineering sheets to handwrite out a program is incidental to good programming skills. Typing hasn't a thing to do with programming.
Being gay myself, I concur with the sentiments expressed in this article generally. Though I must say that I have read enough H.P. Lovecraft to give me pause about wanting to work in New England! Too many eldritch secrets there! (OK, just had to go there.) :-)
Java will never, ever replace c++. Because there will always be a need for stuff that "really compiles" rather than "compiles with respect to the JVM" for both performance, and reliability issues.
In my personal opinion, Java is a fad for children. However, that may be a bit harsh. Perhaps Java too has its place. But just as sport cars, loved by teenagers, won't ever replace the need for a reliable sedan in one's more mature years, similarly, there will always be grownup applications that need the speed and reliability of c/c++, even if they are not as "easy to program" (read: rely on plug-in libs) or are not as "flashy" in terms of the ui. Just as I personally no longer fancy swing sets, I really haven't a need for SWING either. :-)
(Oh, one other thing I almost forgot: Java doesn't have pointers. No programming language without pointers should be taken seriously by people who have reached age 21. It's kind of like having a car without a combustion engine. It's just nonsense.)
Wow. So this post is seriously suggesting we make Joe the Plumber Treasury Secretary? Man I'm in the wrong business. Maybe if I had gone into plunging toilets instead of testing software I could be an economic guru too.
Yes and no. I agree that data analysis in excel is great and can be very useful. But intuition also sometimes isn't bad, and for the same reason. Excel or similar applications figure out "patterns" in data where there doesn't seem to be any off hand. Our brains can too, but on a sub-conscious level, so what we call "intuition" is really just the same pattern-extraction going on in a sub-conscious level of processing. So I agree that data analysis is key. But our brains can also do it to a certain extent too - not as an exact, mistake-free thing, to be sure, and therefore excel tools and so forth are still necessary. But, since the same computational principles apply in what we call "intuition" we cannot disregard intuition completely either.
The worst bug ever is the arithmetic mistake made by a programmer of a FORTRAN program which crashed a probe to Venus. Millions of dollars down the drain just like that, and just a simple programming error.
That is the worst movie trailer I have ever seen. Everyone in this forum is stupider from having seen it. I award you no points, and may God have mercy on your soul.
I wonder if the nameless horror which killed the Miskatonic University Unix admin is the same one which killed the Mad Arab Adbul Alhazred in Damasacus in 738 AD, after he had completed that expose of blasphemous evil not to be mentioned,
al-Azif.
It would be interesting if Obama were elected President, and Tory Leader David Cameron beat the current PM Gordon Brown. Both Cameron and Obama are young, charismatic, in touch with the "zeitgiest" of the day, etc., and I think share some similarities in policy points of view. Both, for instance, put the environment high on the priority list. I think an Obama - Cameron dynamic would be fascinating to watch, perhaps one which would rank with the Thatcher - Reagan dynamic that ended the Cold War. I think the principle underlying both individuals or their rise in prominence is "change". Both their nations have economic struggles and both promise "change". I think Cameron and McCain could work together fine, don't get me wrong, it's just from a generational kind of perspective that makes me think Cameron and Obama are on the same "wave length". Obama met Cameron during his European tour and I think the meeting went well. Certainly would be interesting to see them win their respective elections.
Skimming the article, it is sounding a little bit like "intelligent design", when it talks of "programming" humans.
In a sense, natural selection programs all organisms by allowing only the fit variations in a given generation to survive, promulgating the "fit genes" forward, but "design" or "program" are terms in this context to be used metaphorically. Natural Selection is itself an alogirthm:
Variation + Selection + Inheritance = Evolution of new forms of life. So in this sense it is a "program" but only as a metaphor.
I have neither the time nor the patience to argue with an intelligent design advocate, anymore than I would spend time arguing with a flat earth advocate.
I wonder if the "upper brain" segment, so pronounced in mammals could be associated with the "meme machine" of Susan Blackmore, et al. In other words, I wonder if whereas genetic evolutionary pressures were responsible for the lower and mid sections of the brain, it would be interesting to explore if "memetic" evolutionary pressures were largely involved in the development of the upper brain. A related point I find interesting is inherited hard-wired behavior. I read somewhere that infants might have a 'facial recognition template' that enables them to recognize the female humanoid face, e.g. the mother, and this template is 'pre-progammed' into their brain, without having to be learned. If so, this would represent I think an example of a meme. The female humanoid face could be a meme in some sense, which is hard-wired into the "upper brain" segment of the infant. Just as the mid and lower sections of the brain are focused on the promulgation of the "Selfish gene", perhaps the sole purpose for the existence of the upper brain is the promulgation of the "selfish meme", i.e. the upper brain is the "meme machine", and consciousness (and ourselves in the sense of 'self' for that matter) is sort of an accidental by-product of the meme machine - it is better for the meme for there to be 'itentionality' about its replication, 'intentionality' is found in consciousness, ergo, we have consciousness. Anyway cool article, and I like the intro video explaining embryonic brain development in the humanoid.
BTW, how is (1925 - 1942) the "silent" generation? Alan Ginsberg, my favorite poet, who wrote 'Howl', one of the greatest epic poems ever, was born in 1926. In fact most of the beats probably fall into that category. They can hardly be called "silent".
Hey to whomever down voted this comment: down voting it doesn't make "who" right when it should be "whom". Down vote this all you want, it does not change the Queen's english darling.
OK, it's not "who you work for" it's "WHOM you work for". Pet peeve of mine, people saying "who" when they mean "whom" - if the "who" is the object of the action "work for" then it is "whom", like "To whom are you speaking?" NOT "Who are you speaking to?" Irks me no end.
Prof. Hawking is probably one of three thinkers that have had the greatest influence on me, the other two being Prof. Richard Dawkins and Charles Darwin.
And for what it is worth, personally, I agree with his 2005 solution to the black hole information paradox, in non-technical terms, that universes (euclidean metrics) with no black hole solutions essentially cancel out those with black hole solutions in the quantum gravity path integral, so from the point of view of the path integral, there effectively are "no black holes", and therefore no information paradox. Cute I know, but if somebody has a better answer I'd like to hear it! (I like it because for example in string theory I have read there are dualities involved by virtue of which one can grab information back out of black holes, which may well be true, but Hawking's solution does not depend on string theory being true, which I like because it is more conservative, i.e., it is in the world of ordinary quantum gravity and not in the world of string theory which for my money the jury is still out on.)
Anyway, my personal best wishes to Prof. Hawking!!
Cool quote: "3 great forces rule the world - stupidity, fear, and greed."
Now, stupidity (ignorance) is an evil thing, in terms of it is a cause of evil.
Greed, on the other hand, following Mr. Gecko, I would say, is good. "It captures the essence of the evolutionary spirit", and all that.
Fear, can be good or evil, depending on context. Fear of investing in a dot-com with no real revenue is a good thing. Failing to see underlying fudamentals and selling off in a state of panic is a bad thing. Basically fear in terms of preservation of one's assets (or "ass", lol!) is good. Fear based on that other great force, stupidity, is bad.
One could generalize this to say: fear based on the evil force (stupidity) is itself evil, fear based on the good force (greed) is itself good.
I am not a financial analyst but I think my general "two cents" would just be: look at fundamentals - profitability, sector, all those things. If those are good, buy, or at least hold, depending on situation. If they are not, sell. Simple as that. Don't sell from stupid fear. Sell only if rational greed requires it, and then reposition into something safer, like say money markets. :-)