Wednesday, November 12, 2008

A web service that would help so many web developers

Yesterday, someone wrote an Japanese email to our church using the form on the church homepage. But, we couldn't read anything, because of encoding problems – all characters were like complex traditional chinese kanji you would only use in names.

I was surprised with this, as I had tested the system in various browsers on my mac with no problems at all. (Yes I should have tested it on Windows, but you know…) I even have IEv6 running on Wine - the problem is, it doesn't have support for Japanese characters (or maybe it just needs a Japanese font). Therefore I didn't test it with that.
The person who wrote the email, was apparently using IE 6 on Windows – I already told you the result.

Wouldn't it be nice, if there was a web service or a browser that would show your web page rendered in all major browsers and you could test the functionality in all browsers? I haven't found such service yet. It would save so much work.

Please someone, make this for all web developers including me.

Friday, October 10, 2008

DBS 1.1.1

I've found a bug in DBS so I fixed it.

Download:

DBSBeta1.1.1.zip

Changelog:

  • Fixed a bug where DBSI->match returned errors.

Sunday, October 5, 2008

DBS Beta 1.1

I've updated DBS to Beta 1.1. Main change is the ability to define DBS by xml.

Download:

DBSBeta1.1.zip

Changelog:

  • Added ability to define by XML
  • Changed DBSIFileUpload to hide the variables of the upload settings file and made them to constants
  • Added DBS_ALLOW_FREE_EVAL_USE for security in DBSTFromString

Wednesday, October 1, 2008

The Monty Hall problem

Something really amazing:

Imagine that you are a contestant on the classic television game show Let’s Make a Deal. Behind one of three doors is a brand-new automobile. Behind the other two are goats. You choose door number one. Host Monty Hall, who knows what is behind all three doors, shows you that a goat is behind number two, then inquires: Would you like to keep the door you chose or switch? Our folk numeracy—our natural tendency to think anecdotally and to focus on small-number runs—tells us that it is 50–50, so it doesn’t matter, right?
How Randomness Rules Our World and Why We Cannot See It: Scientific American

Amazingly, the answer is: Switch, because you will win 2/3

But why is this so?
If you choose the correct door first, the other door will be a wrong door. If you choose a wrong door first, the other door has to be correct, because the host can't show you the correct door, just one with a goat behind. Because of that, the probability that you will win is the same as the one that you will choose a wrong door first. And that is 2/3.
If you do this with 10 doors and the host shows you that eight of the nine left are wrong doors, the probability that you will win if you switch is 9/10. Really amazing.

Here you can try it out by yourself:


Saturday, September 27, 2008

DBS Beta 1.0

DBS is something like a "Database Content Management System" or like the Browse menu under phpMyAdmin. It's a little extensible PHP framework to help you create easy to use admin pages for your homepage very easily. You get a nice UI based on jQuery and AJAX. Watch my screencast for more details. It's free and licensed under GNU GPL.

System Requirements

  • PHP 5 or up
  • MySQL 4 or up
  • CGI (for uploads)

Download

DBSBeta1.0.zip

Screencast



or watch full size (1280x800): http://www.screencast.com/t/unOG68Ap

Sunday, September 21, 2008

Inversion 1.2

I've updated Inversion to version 1.2.

Download

Inversion1.2.dmg

Download source

Inversion1.2source.zip (Xcode Project)

System requirements:

  • Mac OS 10.5 Leopard (Universal)
  • 1.8 MB of free disk space

Changes

  • Added help
  • Added new menu items
  • Changed "Shapes" to "Objects"
  • Now licensed under GNU GPL

Monday, September 8, 2008

Inversion

Inversion Icon

I had to make an app that solves the problem of Apollonius about half a year ago, so I'm publishing it here in case someone needs it.

Now for those of you who don't know what the problem of Apollonius is: It's about geometry, or more precisely Euclidean plain geometry. The task is to construct all circles (or lines) that are tangent to ("touch") three circles (or a point / line).

Now this may sound easy, but try to do this with three points, which is the most easy one (as much as I remember). You'll soon find out it isn't that easy. But if you use something called "inversion" (not the app), it's very easy. Inversion is sometimes also called "mirroring in a circle" (at least in German), which explains the concept very well (google for it if you want).

This is my first app (other than web apps), so don't expect too much of it. But still it's fun to play around. It's free and I'll give you the source code if you want (I'm not good at choosing copyleft licenses, so I'd appreciate advise).

Download:

Inversion1.1.dmg

How to use:

Add shapes with the plus button on the bottom left of the window. You can change the properties of the shapes using the inspector. If you have 3 shapes, the solution of the problem of Apollonius will be drawn in red.

System requirements:

  • Mac OS 10.5 Leopard (Universal)
  • 1 MB of free disk space

Screenshot: