TheJach.com

Jach's personal blog

(Largely containing a mind-dump to myselves: past, present, and future)
Current favorite quote: "Supposedly smart people are weirdly ignorant of Bayes' Rule." William B Vogt, 2010

What's the problem?

There has to be a psychological term for this. There's the fallacy of imagination, which I thought might be suitable, but that means something quite different. What I want to talk about is this: there is a tendency among certain people to pause time and the laws of physics when talking about what will happen if you change just one thing in a system. I guess it's really a failure to notice complex systems with several causal inputs and several effect outputs, sometimes effects having feedback loops back into the system as inputs.

For a simple example, consider a house of cards. Now remove the bottom layer, but pause gravity so the house doesn't instantly come falling down. What happens? Well, it sits there, you can keep building it up in midair, or if you push just the top part only the top part will fall off, but the house will remain intact...

For another example: College costs a lot of money, and the federal government is deeply involved with the loan business that "makes college affordable." One thing the government does is enforce arbitrary interest rates that are "low" and all but guarantees any student who wants a loan can get one. Now remove all the government's tentacles from the system overnight. And pause the laws of physics. What will happen? Why yes, the liberal nightmare! With only private companies being able to give out student loans at their own discretion, they will do so at huge interest rates, and no one will be able to afford college. Especially not poor performing students.

See Full Post and Comments

Code Licenses Again, or The GPL is Like Communism

My views on code licensing have sort of flip-flopped over the years I've been programming, but for the past few I've still mostly settled on the GPL (or LGPL when warranted) for serious projects. But since I wrote that post, my viewpoint has become more nuanced. I still agree with the general point that the GPL shackles its users with freedom, and that this is sometimes desirable. But sometimes it's not, and a lot of people feel strongly on both sides. Let's look at the Spirit of the GPL, which is really the Spirit of Open and Free Software. (While open source and free software are different, their spirit is the same.)



The Free Software Song expresses the Spirit adequately. But notice the ending: "When we have enough Free Software/At our call, Hackers, at our call/We'll kick out those dirty licenses/Evermore, Hackers, evermore." Sound familiar? If you've ever read much of Marxist and Communist philosophy it should.

See Full Post and Comments

Waves, Particles, Amplitudes

Light is not both a wave and a particle. It is a particle (sort of). Let me give two arguments from intimidation: the first is that one branch of modern physics such as the kind that goes on at the LHC is dubbed particle physics, not wave physics. They talk about fundamental particles such as electrons, photons, and quarks. There are no mentions of waves.

My second argument is from Richard Feynman:

What's he saying here? Two things actually. The first is an experiment that doesn't make sense from a wave interpretation. You launch a bunch of photons at a detector, which works as follows: the photons hit a metal plate and knock off some electrons, which are then attracted to a charged plate nearby, so they go smash into that plate and knock off even more electrons, which are attracted to an oppositely charged plate also nearby, so they go smash into that and knock off even more electrons...and so on until there's enough electrons to signal a beeping circuit. So the experimental question is: if I send a lot of photons ("strong wave intensity"), how many electrons do I smash off the first plate and what is the energy of each individual electron? A wave interpretation would suggest that the number of electrons you smash off remains roughly constant, but as you weaken the wave you weaken the total energy that each electron takes, so the energy per electron goes down, and perhaps at some point when your wave is so weak it won't disturb any electrons. A particle interpretation, on the other hand, reverses that. A single photon smashes off a single electron once in a while, and that electron has some energy E. A bunch of photons smash off a bunch of electrons, and each electron has the same energy E as in the single case. So to recap: waves suggest as you weaken the light, you still get the same bunch of electrons out but at weaker energies. Particles suggest that as you weaken the light (fewer photon particles), you get fewer electrons out each with the same energy. What happens in reality? The particle version happens, not the wave version. Go home, wave theorists! Some other experiments seem to permit both wave and particle interpretations, but apparently not all. Particles win, Newton's conclusion (though not his method) was right.

The second thing Feynman says notes that the mathematics of waves as commonly understood don't really work at higher dimensions. With one photon, yeah, psi(photon_position, time)=psi(pp, t) looks like a wave. psi(pp1, pp2, t) does not, however. How would one visualize psi(pp1, pp2, pp3, pp4, pp5, t)? It only makes sense as a high-dimensional probability distribution, which looks like a wave in the 2D case but doesn't really look like a higher-order wave for higher orders.

See Full Post and Comments

Absence of Evidence is Evidence of Absence

(Edit: A much simpler proof is shown at the very bottom.) A lot of people get this wrong. It is true that absence of proof is not proof of absence; indeed to argue otherwise is almost incoherent. Was the absence of Andrew Wiles' proof taken as proof of absence that such a proof could exist, or absence of the theorem's truth, or what? In formal logic, if Evidence logically implies Proposition, it is not the case that not-Evidence logically implies not-Fact. But if we're talking about evidence about some proposition, the calculus is not governed by formal logic. You're in Probability Theory now, and the absence of evidence is in fact evidence of absence. I can prove it to you.

What is evidence? Evidence is some event, fact, or observation E that, when coupled with saying something about some other proposition X, leads to the following equation: $$Evidence\ about\ X = \frac{P(E|X,C)}{P(E|\sim X,C)}$$. C is any background context. So the equation says evidence about X is the probability of such evidence happening given some X is true, divided by the same probability but assuming X is false. As an example, if E is "raining", and X is "there are storm clouds in the sky", it's obvious that the ratio will be greater than 1--the odds of it raining given no storm clouds.

Bayes' Theorem says this: $$P(A|B,C) = P(A|C)*\frac{P(B|A,C)}{P(B|C)}$$. Look familiar? Let A be X, and B be E. Now if we want to compare two hypotheses, X and ~X, we can write as a ratio: $$\frac{P(X|E,C)}{P(\sim X|E,C)} = \frac{P(X|C)*\frac{P(E|X,C)}{P(E|C)}}{P(\sim X|C)*\frac{P(E|\sim X,C)}{P(E|C)}} = \frac{P(X|C)*P(E|X,C)}{P(\sim X|C)*P(E|\sim X, C)}$$. Now this is very familiar.

See Full Post and Comments

Looking past preconceptions

"The single most important kind of intelligence is the ability to see past your own strongly-held preconceptions and your tribe's conventional wisdom and engage reality as it actually is and facts as they actually are." --esr

If this is true, I would say the second-most important kind of intelligence is the same as the first-most, with this difference: "...the ability to see past your ... preconceptions .. and consider reality differently to how you consider it now." We all know that rape is bad, right? What if rape was good? Are you intelligent enough to have a conversation about this, without becoming emotional or using emotion-packed arguments? I am. And at the end of whatever speculation, deduction, or arm-chair philosophizing I participate in, I still think that rape is bad. But I'm willing to seriously consider the alternative. In fact I have, more that once. Is it a form of mental masturbation? Just as much as devil's advocacy is. But it's a nice and easy way to characterize uncivilized peoples (such as those Muslims protesting free speech) as not only wrong, but stupid. They're also ugly too. They can't mentally consider that what they believe is false, and they'll pay the price.

In fact I have considered this before, and this "type of intelligence" is really just part of the aspect of smartness otherwise known as intellectualism, something that is very much lacking in modern middle eastern and east asian cultures. ESR is wrong in characterizing a type of intellectualism as the most important aspect of smartness (and my generalization of "supposing" contradictory realities being second-most important is wrong, too). Intellectualism, while in my opinion very important for human progress, is nevertheless inferior to raw amounts of synthesis, analysis, and memory that combined get a ton of shit done. Intellectualism can easily be at odds with productivity (it certainly is with me, and I have met others who struggle with getting shit done because they want to learn something new but not necessarily in a deep way), and if productivity doesn't factor into your equation for the importance of some aspect of smartness, I have no idea what you're trying to do.

See Full Post and Comments

Fixing a trivial Clojure Error...

I had this happen to me this morning:


$ lein repl
REPL started; server listening on localhost port 18383
IllegalArgumentException Don't know how to create ISeq from: java.lang.Character clojure.lang.RT.seqFrom (RT.java:494)
clojure.core=> (pst)
IllegalArgumentException Don't know how to create ISeq from: java.lang.Character
clojure.lang.RT.seqFrom (RT.java:494)
clojure.lang.RT.seq (RT.java:475)
clojure.core/seq (core.clj:133)
clojure.core/concat/fn--3804 (core.clj:662)
clojure.lang.LazySeq.sval (LazySeq.java:42)
clojure.lang.LazySeq.seq (LazySeq.java:60)
clojure.lang.Cons.next (Cons.java:39)
clojure.lang.RT.boundedLength (RT.java:1633)
clojure.core/apply (core.clj:603)
clojure.core/load-libs (core.clj:5302)
clojure.core/apply (core.clj:603)
clojure.core/require (core.clj:5381)
nil
clojure.core=>


What the hell, right? Turns out the problem was in my project.clj file! I had defined my main namespace like this: :main "com.ns.core"
But Leinigen wants it defined like this: :main com.ns.core
That is, without the quotes. Silly me! Also silly REPL for a horrible error message. I'm only blogging about this because pasting that error along with "lein repl" into Google didn't give me the solution, so hopefully this helps someone else.

See Full Post and Comments

Winning is fun

I took a bet recently, it was: "The U.S. unemployment rate will be below 8.0% for September 2012" I bet 0.10 bitcoins in favor of the statement, others bet more against, and so I ended up winning 1.078 bitcoins when the result was known, which is a 978% profit.

Why did I bet the way I did? Because I realize it's pretty much the last real month to put out something in favor of the President, and the existence of Shadow Stats is evidence that the number can be more-or-less whatever those in power want it to be, and those in power are happy with Obama. It was fun to win. So I wasn't very surprised when the results came back.

Was I overconfident? Probably. I'll know better when other bets come around for which I have similar degrees of evidence, and then I can learn just how strong the evidence is.

See Full Post and Comments