we're on a message from god

I Reckon THIS Must be the Place


 This HTML Is Simple - a PHP blog-like application that is small, efficient and fast or something.


THIS code should be considered a curiosity. If it was in the state it is in now ten years ago I think it would have caught on. It does about 90% of what many popular Blog/CMS applications do in 1/10th the size — and with no globals, no classes and no Javascript.

It is near truly customizable with data arrays (sometimes as INI files) controlling most important features.

It has true web templates — in a few hundred lines of code — and not a "template engine" of any kind.

It has an almost complete separation of code and data — no inline PHP or print statements or SQL strings strewn throughout the code for example.

I call the architecture "compartmentalized" in that one can say, "all the SQL is here," and "all the commenting code is here," and "all the validation code is here," etc.

I think all that has great merit.

But, it's too late. The Internet ain't for small APIs but for massive distributed Javascript that can take months to debug and is fixed by "magic".


I'm a dinosaur. I'm old school. Oh... well. At least I had fun writing it.

  1. The code does use eval which may be considered a weakness, but I can even reduce that too.
  2. Oh, the code has had it's share of bugs, of course, and there is one known in the last release and probably a few others unknown. But I think it overall is architecturally sound.


Going Native

This is an example of how to increase performance in an extremely simple way.

We use here INI encoded files which are read and turned into arrays (via parse_ini_file()), and that in itself is simple. The extremely simple way to increase performance is to use var_export() to save that array to a file and then use that file directly. For a system with just one or two small INI files any increase in performance will be unmeasurable, but this idea is very valuable indeed if there are large amounts of data/files and large amounts of requests.

Performance basically doubles immediately. It would take the same time to read the files (they will be about the same size), but a PHP array is parsed natively by PHP as code, while the INI file has to be converted to a PHP array.

there is more

Release Notes

Notes for release 1.4.1b:

With this release the code is architecturally complete. That is, the core design, the foundation, is complete and works well. A few more aspects are configurable and more flexible. The code has become smaller, clearer, cleaner, more concise. Some confusing algorithms have been strengthened and are now fully documented.