Posts

Apple vs. Adobe

So Apple releases a new "Terms and Conditions" prohibiting Flash developers from using Adobe's tool for cross-compilation of Flash code to native Objective-C and I wonder: Why such hatred? In my eyes Adobe was one of the very few companies publishing their software for Macs when the Mac had a close-to-zero market-share, it made the Mac user synonymous to the Photoshop or AI user and put simply it supported the Mac during the dark ages of Windomination. Now that the Macs are cool and have a (still comparatively small) market share, why does Apple turn their back to a company that invested millions in making their software work for their platform? When you are a platform maker what you really want is people to write software for you, and people who make tools that create software to make them available to your platform. You are the creator of an ecosystem and you want software to populate it. I understand that running Flash directly on the iPhone, as a Safari plugin let...

ToolBox III - Public Beta Trial

It's been a couple of months now, that I have been designing the next version of ToolBox and last night I managed to finally get a beta version out on my web-site. It's been hard work trying to refactor code (clean it up/modernize it along the way), then build new functionality and incorporate a few libraries and technologies I've been playing with these past few years (for example a new image manipulation engine, a new TileGrid component). This beta has the potential of becoming a release soon, I had to draw a line on new features and stop there, otherwise I wouldn't be able to release it soon enough. The new version has many changes underneath, but in terms of user interface it allows you to fully customize a ToolBox. For the first time users can choose to display text below an icon and also create a secondary text comment for each icon and display that on the ToolBox. What is more, the primary icon text that is displayed is now decoupled from the hint, which can be...

Pascal features you can fall in love with

I am a bit sentimental I admit it. For years and years and years I've been writing and teaching Pascal, Pascal OOP and Delphi (not since 1999 though). Ever since the early days I had a certain fondness ofn the Pascal enumerated types and the Ord() function. The Ord function returns a cardinal number (integer) for any given ordinal type. Ordinal Types are cardinal numbers like byte, integer, shortint etc., chars (!) and enumerated types. So Ord(0) = 0, and Ord('@') = 64 as 64 is the ASCII code of the '@' char in the order of the ASCII characters. Nice. In the same category as Ord(), are the functions Pred(), Succ() and procedures Inc() and Dec(), which increase and decrease ordinal numbers. Things like Inc ('A', 32) is a valid thing in Pascal, and increases the ordinal value of 'A' by 32, making it an 'a'. Thus making the nicest of capitalisation routines that you can find in any computer language: if (c in ['A'..'Z']) then // ...

GetDIBits vs. Scanline vs. Pixels[] in Delphi Bitmaps

I've been always wanting to sit down one day and solve this problem; test the speed of manipulating pixels on a Bitmap using the three options: - the convenient but understandably slow Pixels[], - the "interesting" Scanline property and - the Windows API GetDIBits and SetDIBits. I have been traditionally using Pixels for quick work and the Get/SetDIBits for low-level pixel manipulation such as the filters used in ToolBox . Never really used the Scanline property in anger, I was always thinking, DIBits "had" to be quicker. Little I knew... I have been experimenting with two tools that I've written and never released to the public domain. The first is the BMPCreator which I wrote in order to create 256-level grayscale bitmaps, the other is the IconCreator which uses a grayscale bitmap and applies color maps to it, giving you the ability to create different colored versions of the same icon (like in my database visualization tool VirtualTreeNavigator ). Yesterd...

And you thought Chrome was the best...

Wowdi! Didn't expect that. "The Register" reported the news about Opera 10.5 beta and I immediatelly went to download the latest version. Using my own "benchtests", i.e. the little JS/HTML5Canvas expirements I wrote during the last few months ( Mandelbrot and 3D Dissolve JS ), I compiled the following list: Browser Mandelbrot (ms) (*) Dissolve (fps) (**) Chrome 4.0 1248 48.1 Firefox 3.6 1277 51.3 Opera 10.5beta 369 72.3 Safari 4.0 2551 49.2 (*) Lower times (in milliseconds) are better (**) Higher FPS rate is better There you go then, Opera annihilates the competition with a beta! That will make some Google and FF engineers scratch their heads a little bit. Firefox 3.6 came with a lot of improvements closing the gap to Chrome. Opera now comes and from being the slowest browser in JS now becomes the fastest with a difference! More than 3x the speed of Chrome in Mandelbrot? That is absolutely amazing. Very well done guys, you are obviously doing the right thing...

iPad - The future has arrived

Just been watching the video at http://www.apple.com/ipad/ . I've been grinning, I've been laughing, I've been drooling. This is EXACTLY what I was expecting for 3 years now. Ever since I bought my first-gen iPod touch, I've been thinking about this device with the same interface but just a bigger screen. I have even bothered to get into Photoshop and mock up an ideal iPod touch (screenshot to follow). For 3 years the rumours were everywhere, now this is reality. But two more months of wait? What am I supposed to do now? I think I'll just download the SDK and pretend that I own one using the emulator... Well done Apple, you've got everything right! Even the price!

3D Dissolve is coming back...

The moment I laid my hands on HTML 5 and the canvas element , I knew exactly what I would attempt next. These Christmas days I managed to getaway to a small village in Northamptonshire with the family (now we are three...) and had some time to convert that tiny 3D engine that I had written back in March 1996 in Turbo Pascal 7. That was 14 years ago! Here's the file header :-) LOL: { Obj3d v1.0 written by K.Symeonidis } { (c)1996 by CyLog Software } { } { March.1996 } { } { This is my first attempt for a fast } { 3D Graphics engine } With Obj3D I wrote a couple of demos in TP7, then converted it (v1.50) to Delphi and with it I wrote a few more demos for windows this time. In 1997 we wrote with Ioannis Tsoukalidis the "3D Dissolve" screen saver which proved to be quite popular on the baby-internet. Dissolve managed to get a couple of updates since the...