Demons? Really? Really! But not as you think

23. February, 2010

I just read Linus Torvalds’ post “Demons? Really?” Which is about exorcism in case you don’t want to read his piece. Apparently, there are people who believe that you can drive a demon with prayers from a human body. Which is complete nonsense according to Linus.

Really?

What are we talking about here? What is a demon? I’m not sure what the scientific definition would be but I’m pretty sure that the people discussing the topic don’t know either. They don’t care. For them, the demon is not important but to help the possessed.

From our scientific eye, talking about demons and exorcism is ridiculous. We assume that a demon is probably some kind of sickness and the poor victim would be better off in a hospital or psychiatric care. They are just sick. Just imagine when you are in pain. It affects your mood: You become thin-skinned and easily irritated. So the sickness has a mental component.

Treating the sickness would solve the mental issues. So we’re happy and the missionaries must be stupid. Or so we think.

Question: Have you ever been in this situation? In a village thousands of miles away from anywhere? Without clear water, healthy food, and people with a yearly income in the range of $5 or less? Good luck finding medicine for them or sending them to a doctor. They either have no access to such resources or can’t afford it.

What do you do? Walk away, happy with the fact that you know what would help? Or do you stay and try to help to the best of your abilities?

If you stay, what can you do? You have no medicine, you’re no doctor and you probably have no idea what is really going on. There are people around, probably from the same village who think “I don’t know what he has but I don’t want it! Let’s get rid of him before we all get sick!” These people still have to learn that modern science exists. They couldn’t care less because for them, the biggest issue is how to get enough food to survive another week. National Geographics? FDA? These are all non-issues for these people.

For them, the sick are possessed because that is something they can relate to. It explains the unknown. Demons can be shooed away.

So what do you do? Stick to your scientific knowledge? Or do you start to pray to drive the demon out? Showing compassion, doing what is expected from you, possibly triggering the self-healing effects of a placebo? Doing what you can in such a situation?

Yes, we can mock these people because they probably believe that demons really exist. But maybe they have understood hundreds of years ago that science can only help the rich. People who have (almost) unbound access to good water, food and electricity.

Maybe for them, it’s more important to help than to be right.


Are they out of their mind?

19. February, 2010

I while ago, I downloaded the demo for X-Men Origins: Wolverine. It’s a PS3 game and I like Wolverine, so I was really excited. Whoa, they really spent some time on the levels … lush forests … tree roots, plants … okay, I can’t leave the paths (in games, heroes can’t climb or crawl … see my post on Batman Arkham Asylum *sheesh*).

Anyway. I played a while. Hack’n’slay (you have to chop people to bits with Wolverine’s claws … so he has no brain, either … oh well). Then, there was that helicopter scene. You’re on a rope bridge or an edge or something, I forget. There is this helicopter with the machine guns, making your life (or rather the game character’s life) miserable. So you jump on it, slice the window, pull the pilot out and … chop his head to bits with the main rotor of the ‘copter …

What did you feel in that moment? Please comment below.

I felt: WTF?

In an instant, I found the game revolting. All my impressions about the nice graphics, all the artistic work was washed down with a wave of disgust. To my shame, I continued to play until he end and took out the last boss. Okay, there are special moves and such … but for some reason, I didn’t buy the game and I deleted the demo without hesitation. Later, I saw a game review in TV where they showed a lot of special moves, how to use spikes and your environment to impale your enemies and gore them in various ways. For some reason, they ran it in the afternoon, around 1500.

Frankly, are you out of your mind? I’m not a softy or against so called “killer games” but some time last year, a border was crossed for me. Wolverine. Wet. Bayonetta. Brain-dead games, meant for simple button mashing, asking for the reflexes of a 15-year old but with the graphics of a motion picture.

I’m not sure who pays the money to produce such games. I’m not sure who works on such games. I’m not sure which person at Sony gave their OK for the production or distribution of such games. I don’t care. I don’t care if you think it’s OK. I don’t care if any court think it’s OK.

I’m proud to say that I feel this is WRONG.

Maybe you should read up a bit on how the human brain works. For everyone else, just don’t buy such games. They are a waste of time and money. And while there is no proof that they are bad for your soul, they aren’t any good either. As I said: A waste.


When you’re right, there is no middle ground

15. January, 2010

Yesterday, I attended a talk by Tom Schindl (he’s the guy behind UFaceKit and Qooxdoo, QxWT, etc.) And he’s working on e4.

During our little conversation after the talk, he stressed the fact many people aren’t willing to pay for bugfixes in Eclipse. He’d be willing to work on many of them but someone has to pay the bills. I nodded like everyone else. And we talked about Eugene Ostroukhov and his complaint ““Participate in community!” they said…“. And I immediately saw a parallel in my own history. I had a similar, painful experience with Ed Merks a while ago. That was about EMF and how badly it sucks. And that he didn’t listen to me.

I was mad because I was right and he just didn’t get it.

Yesterday, on the train home, I understood.

I’d like to introduce two new categories of programmers. Both are passionate and enthusiastic about software. The difference is that one group is pragmatic and the other idealistic.

Ed and Tom are pragmatics. They think: “Great feature, I like it, how much will it cost?” If it’s too expensive, they don’t get upset. They think about it, mull it around, consider their options. If there just is no viable way to do it, they can accept that. These people get money to write software.

I’m an idealistic programmer. I get money to stop writing software. That is, I get money to stop writing the software in my head and to start writing the software someone else wants. Not getting what I envision drives me up the wall.

Things can get pretty ugly when those two kinds meet. Because both are egoistic and both are right. It would make sense to make all the changes to EMF that I want. For me and probably a few others. It would cause quite a few problems for Ed, though (mostly because he’d get a lot of complaints by those people who are happy right now).

I’m asking for changes because I have problems. I’m not complaining about petty things. I need to bend EMF and SWT more than the API allows. To solve my problems, I just can’t accept the status quo. The API has to move. But my solution would cause problems for many other people.

Right now, I’m writing software which doesn’t have a lot of customers, so a stable, reliable API is not one of my goals. I can change my API at a whim and no one bothers. Eclipse has millions of customers and every change to any API will cause a tremendous amount of pain around the globe. Say 0.1% have a problem now? That would be at least 1’000 people complaining. One happy, 1’000 after your head. At least. How big is the pressure on Ed to make me happy?

So how to win? I think Linux has the best solution that you can get today. Linux has several release streams that strive in parallel. It’s not a bunch of forks, it’s a bunch of branches. People can hand in stuff that really isn’t ready for prime time. It can be incomplete. It can break other APIs. It can be an experiment. It can evolve. In Linux, there is the next tree.

In Eclipse, evolution is hard. You have to get new features and patches past people you don’t know, who have more experience in evolving APIs, little time and little incentive to hurt themselves. API in Eclipse is hard to evolve because IBM pays many of the core developers. If someone wants some obscure API and the Lotus Notes team will have a problem with that, who will win? The bug report (even with a patch) or your next pay check? There are only a few big commercial products on Linux. Eclipse, OTOH, was created to form the basis for commercial products (hence the EPL). Products that have life cycles between five and ten years. Ten years ago, we had Linux 2.2, KDE 1.0 and SuSE 6.3.

For IBM and SAP, the one year release cycle of Eclipse is way too fast. They have to spend a lot of money on developers just to keep up with all the changes going on in Eclipse and this is for things that can’t be sold to customer (i.e. which don’t earn any money).

So I agree with Bjorn Freeman-Benson that Eclipse needs a set of public git repositories and a low-barrier entry to these repositories (which means one-click install for the build system, no IP checking). It should be a playground, a place where ideas can grow. Not all of them will make it into the mainstream but at least, people can solve their problems without hurting too many others.

At the same time, I’m afraid what will happen when this comes true. But then, I’m an idealistic programmer. I believe that time will tell who was right and that we shouldn’t bother too much upfront.


The future of cinema

11. January, 2010

Everyone wants to predict the future and everyone knows that there’s a 100% chance to get it wrong. Here is my go.

Avatar is probably the movie which will be remembered as the one to turn 3D at the movies mainstream. To shoot the flic, Cameron used a new, ground-breaking technology: The virtual camera.

A virtual camera is like a real camera but it allows the director to look at the final render of the scene while the actors perform in front of the green screen. It’s a cave to carry around. The next step will be goggles.

And after that: Goggles for viewers of the movie. Avatar showed a limitation of 3D: You can’t look around. As soon as you focus on something different than the virtual camera, you get a headache. So the next generation of cinemas won’t get a pre-rendered movie but the 3D scene data. The big screen will go. Everyone in the room will wear goggles which allow to see anything. Wonder what’s inside the waste basket in the lab? You might get a peek.

From that, it’ll be a small step from one-source movies to mass-edited movies. Producers will spread the raw scene data to movie centers and fans will get a chance to fix bloopers or even rewrite certain scenes. Eventually, everyone on the floor might see the same movie but in a very personal way.

Probably won’t take long for teenagers to figure out a way to hack the cloth transparency. Virtual character don’t sue.


“Good” Game

7. January, 2010

Reading “The Problem of Good, in a Platform Game” got me thinking.

I doubt some of the assumptions on that page and I’d like to present my own here. It should be possible to model them into a simple agent for a game as well.

First, let’s assume that resources are finite and somewhat scarce. Changing your alignment (good/bad) need resources, so you won’t do it on a whim. I’d even say that there is a hysteresis, so you stay in your current alignment longer than in a perfect (linear) world.

So the question is: What changes you alignment?

My theory is that several forces influence your alignment (not necessarily in this order):

– Peer pressure
– Personal experience
– Prediction of the future
– Food/rest

Some comments on these forces:

1. If everyone around you is good, it’s hard to become evil, partly because they will fight this tendency, partly because you simply have no role model. We are all mimics. It’s hard to come up with something new on your own (again scarce resources: You don’t have all the time of the world nor can you change as often as you like).

You might argue that some people are born evil. I’d like to have proof of this, please.

2. Whenever you get into a situation X, you will rake your memory for similar situations to give you a guideline how to respond (again scarce resources). So if your experience tells you to be good in situation X (because that worked in the past), you will be good. Notice that only the outcome of the situation for *you* counts. So if you like to whine about being capitalized, the outcome of being abused is “good” for you – no need to get your lazy bum up and change.

3. If the situation is new, you have to come up with a plan. Again, you can’t think for years, there is some pressure on you. So the plan is never perfect and you will know that. So depending on your confidence of your plan, you will change your alignment or stay on safe (known) ground.

4. Most people are only civilized as long as they are fed and well rested. Just imagine to deprive someone from sleep for a day. They will get irritated much faster than a well rested person.

Model:

0 is neutal, > 0 is good, < 0 is selfish

1. is fairly easy to model: Just sum the influence of the people around you. Maybe multiply that with a factor depending on the psychological distance the people currently have to you. That is, your role models will feel pretty close even if they are on the other side of the globe while your neighbor could be on the other side of the moon, you couldn’t care less.

2. For every game situation, you need to calculate the net result. Use several standard games (prisoner dilemma and a couple more) and store the factors and the result in a memory per agent. When the next situation comes up, compare the setting with the memory and have the agent change its alignment according to the expected outcome of the game. When this is done, the agent is ready to play the game. Update the memory afterwards.

If the result is off the scale, change the alignment accordingly.

3. For every new game, have the agent play a few rounds against itself. Use the result as the alignment for the game. If the outcome is vastly different from what the agent expected, multiply this "unsureness" factor to the alignment change (if we’re more insecure, we are more susceptible for influence).

4. Give the agent a head and a stomach. Let them rest, eat (and work late and starve). 0 means "normal", 0 means rested/well fed. Scale this accordingly (maybe this is even logarithmic: If you are very hungry, you’ll even eat another agent) and add to the current alignment.

To map the linear alignment to the “good/selfish” alignment, use a hysteresis curve. The final result should show some “resistance” to change the current alignment and a preference to return to the current state (so if you’re currently selfish, being treated nice won’t count as much as being treated badly).


When to micromanage

11. December, 2009

When it comes to work, there are two extremes: There are those people who are enthusiastic and, once started, can hardly be stopped and there are the ones which think “Monday, 9:00am, and the weeks still isn’t over”.

Micro-managing the former will make them quit (or as Joel Spolsky put it: “Doesn’t micromanagement turn smart people into robots?“). Not micro-managing the latter will result in no work being done.

Which explains nicely why it’s a pleasure/pain to work with some craftsman: Some of them love their job, they delight in producing a perfect result which will make the customer happy. And the other ones can’t be bothered.


Why You Should Be Rabid About Your Tools

19. November, 2009

Rands writes:

The lesson: the correct tool is exponentially more productive.[…]As an engineer, there is a short list of tools that you must be rabid about. Rabid. Foaming at the mouth crazy.

Wise words. If your tools don’t make you exponentially more productive, you must change them. Every engineer can write an application using Notepad. But if you care about quality, timeliness or sanity, then find the right tool and use it.


Wanna Make The World a Better Place?

15. September, 2009

If you’re in the world improvement business, you’ve probably already heard about “microcredits” – money lent to people that banks rather wouldn’t call “customers”. Because they are poor. Most often, they are poor because they can’t get credit. That doesn’t allow them to buy something like a cow or a mule or some basic tools to start a business. We’re not talking about a lot of money, some of these people just need a few dollars. $100 can make a lot of difference.

Kiva is working on changing this. Take $115 from your Paypal account and help four projects ($25 each and $15 for Kiva itself) to make the world a better place.

“Die Welt ist freundlich, warum wir eigentlich nicht?” — Herbert Grönemeyer, “Lied 1 – Stück vom Himmel”

“The earth is friendly, why aren’t we” — Herbert Grönemeyer, from the song “Song 1 – Piece of Heaven”


10 Ways to be a Better Thinker

20. August, 2009

There is an article on CNN about ten ways to be more happy with your brain.


An Interstellar Transport System

3. August, 2009

Mankind has been dreaming about an interstellar transport system for a long time (some were nightmares). There are a lot of ideas around which use exotic matter, worm holes, etc. A few years ago, a colleague proposed something much more simple. It works like this:

Take a body in our own solar system and drill a hole to the center. Earth is a bit too hot but the Moon would work. Mars would be better but that’s too far away for a first prototype. In the center, build a chamber which can be isolated completely from the outside. That would need a lot of technology but it should be possible to create a room where an object would not be influenced by any external forces or any information exchange (photons).

Next, you create a similar chamber in a second place. This can be anywhere in the universe. Distance doesn’t matter. Only that you have two places that you can “seal” from the rest of the universe.

Now the trick: You put an object in chamber 1 and measure whether it is still there. You do the same in chamber 2. There are ways to measure with slightly different probabilities for whether you’ll find an object or not. This is a quantum effect. In chamber 1, you’ll use an effect with a slightly higher probability that it will return “nothing here”, in chamber 2, you’ll use a method with a slight lean towards “object is here”.

In normal physics, this is ridiculous but not at a quantum level. At a quantum level, as soon as you completely isolate an object from the outside and make sure that no information whatsoever can be exchanged with the surrounding chamber, it doesn’t matter anymore in which chamber the object really is. You have created a really huge qubit, a system where nobody can say anymore at which place the object currently is.

In that very moment, as soon as no one can tell, the universe will stop caring and by using the clever measurement technique, you constantly nudge the object to “jump” to chamber 2. After a long but finite number of measurements, it will be gone from chamber 1. And if no other alien race came up with the same idea, it must now be in chamber 2 because that’s the only other place in the universe where it could be.

If you wonder why we had to drill to the center of a moon or planet: That’s the only place in our solar system where no gravitational forces pull at an object (gravity would also count as “information exchange”). You could try a Lagrangian point but there, you’d have a hard to time to shield the object from all the radiation in space — the mass of the moon would do that for you. Next, you’ll need to cool the chamber to absolute zero to prevent heat photon exchange and you’ll need a large blob of water to shield the chamber against neutrinos.

As far as I can tell, the only hole in the theory is microgravity: Will it be possible to shield the object from the tiny gravitational forces that still exist even at the core of a big object in free fall? If the answer to this is yes, then we might have an interstellar transporter which is even pretty efficient. Transport will take some time (until the way of measurement has driven the probability up or down enough) but the change of location itself will be instantaneous.

Quantum physics is cool 🙂