December 14th, 2006
Well, looks like I still have the urge to doodle even years after I stopped carrying around my sketch book. Though I’d upload it since I’m likely to lose the image sooner or later.
The point of the drawing was to test the Pressure Pen option in Photoshop’s brushes panel. I’ve started from a blank image and not from a pen drawing.

Posted in XHTML | No Comments »
November 23rd, 2006
The main PHP Class file of The Music Tank stopped loading altogether yesterday. After scanning lines after lines of code trying to guess what what generating an error I still hadn’t found the problem until late last night. What made it nebulous was that instead of having a message from PHP saying a known error like ” ‘)’ expected on line 64 “, I was triggering an Internal Server Error on Apache when loading the website and outputting multi-linguistic garbage when I tried to load the class directly from the browser (instead of nothing at all because I don’t print data right from the class).
I have to admit I could have been a bit keener on the issue just by looking a the garbage the file was making. It turns out that my code editor, TextWrangler, had changed the encoding type of the file from UTF-8 to the Macintosh charset when I inserted the © character straight in the document without using it’s HTML counterpart ©.
This change of charset and/or the use of special characters in the source code stopped the PHP parser. I can’t explain why as I don’t have much access to the configuration files to my server’s PHP version nor do I know how PHP reads the .php files, but I think it was due to the use of multiple charsets. For instance the main class was using the Mac charset while the subclasses it was importing used UTF-8 encoding.
The frustrating part is really how this whole deal was created out of laziness. Apple offers a wide selection of special characters by doing a [alt + most keys] combination. I thought I’d save some time by using their copyright sign instead of putting my experience with HTML to use and stick with ©.
At least, this episode forced me into cleaning the quote quite a lot by splitting my pages into modules which reflect the content’s architecture. The Tank should show a light performance boost now. Very light though, hehehe.
Posted in PHP, The Music Tank, Web Design | No Comments »
November 16th, 2006
I am currently working on a Flash animation that must deal with simultaneous management of dynamically created, autonomous MovieClips and the management of data obtained from various XML feeds from the Internet. It’s basically a RSS Aggregator in which RSS items are represented by a graphical symbol. All must be generated using ActionScript, meaning the actual .swf file only consists of a call to the constructor of my main class.
Having learned how to program mainly with Java and VB.Net, the approach I wanted to take was to have two threads running in my flash movie : one that fetches and treats the XML data, the second that handles events, collisions and movements of the MovieClips. However, to put it bluntly, there is no such thing as multi-treading in Flash 9.
The approach I chose to solve this problem was to generate calls to key function of my main class using the setInterval function. Of course, on a much larger scale, one would probably notice a lag when using an interval technique compared to real simultaneous treading. However, with the usual Flash applications this kind of performance goes rather unnoticed.
Here’s an example similar to what I am doing:
class Feed {
public function Feed():Void {
setInterval(this.refreshFeedData, 500);
setInterval(this.moveFeedMovieClips, 500);
}
public function refreshFeedData():Void {
// load the xml
}
public function moveFeedMovieClips():Void {
// run through my MovieClip objects
}
}
By keeping a frequent and similar interval (in this example 0.5 seconds), you can mimic the threading effect. Note that you can lose the reference to the class using “this.” in the function being called by setInterval . I have yet to understand and explain this problem, but you can go around it by supplying a reference to the current class in the call :
setInterval(this.moveFeedMovieClips, 500, this);
Posted in Flash | No Comments »
November 16th, 2006
I think the worst part of the whole host transfer deal was the relatively old age of my last MySQL backup. I always keep updated versions of my PHP files close by, may it only be because I am always working on something new, so at least all the programming logic has migrated successfully.
However, all the tables and database structure I had built stayed with Abnormis. Hopefully my old server will come back online so I can get some of the content back, but I am really just interested in how I had built my tables. I don’t even remember most lengths and data types of the columns. Even my PHP source code can’t give me much hints at the moment.
At least this morning I was able to reconnect the user table. This means future posters and tankers can already join the Tank… and do nothing afterward. Hopefully I’ll have the news working by early afternoon.
The moral of the story is that a backup, when you are developing, is always too old.
And damn do I need to fix the transparent issues with IE 6 as soon as possible.
Posted in Blog, The Music Tank | No Comments »
November 15th, 2006
I have just switched my hosting plan from Abnormis’s to MediaTemple’s. Four days of downtime (therefore breaking the 99-plus % guaranteed uptime period) was too long for my hard-earned dollars.
I intend to describe how great Media Temple’s service is in another post, how it’s the best shared-hosting package I could experience, and how happy I am with the transfer in another post. Right now, I mainly want to warn that lost content will be popping back as I regain access to more recent backups from the old server.
These delayed recoveries will have an impact on both this blog and The Music Tank.
Posted in Blog, The Music Tank | No Comments »
August 28th, 2006
There’s a video online of an appearance of the people doing most of the voices on The Simpsons: inside the actors. It’s very cool.
Posted in Blog | No Comments »
August 25th, 2006
Jeff Croft, not afraid of being lynched by the new wave of accessibility-aware Web 2.0 designers, has posted a new article asking if accessibilty has been taken too far.
While I’m guessing his opinion may have been toned down on the way from his head to his hands, I do believe he has a point. To paraphrase and sum his opinion: “Accessibilty is cool and all because it’s bad to ignore people with dissabilities, but you can’t expect a company to spend all their web design budget for 0.5% of their customers. Therefore, some site aren’t 100% accessible on purpose.”
And it’s true. In real life, my employer gives me, say, 4 days to finish a website. It’s good enough if I can be satisfied with the sementics of things in that period of time. Odds are I won’t have any time left to make seperate style sheets with high-contrast colors, one with big text, etc.
All can agree that it’s a good thing that there’s a not more awareness around the accessibility of online content at the moment. However, just like in any trend, it’s all too easy to laugh at those who don’t follow it, making up reasons for those not following it revolving around their stupidity and insolence and start running circles your little trendy group.
Posted in CSS, Web Design, XHTML | No Comments »
August 23rd, 2006
If you’ve played along with CSS a bit, you know (like I do) how to use CSS selectors in most everyday cases.
But I have never even thought about how they interact on each other much more than that. Which CSS rule wins if you start combining regular class calls, mixed with ID and html tag selectors?
Well, CSS: Specificity Wars explains it all using Star Wars metaphors! I couldn’t be happier.
There’s even a visual chart that you can print. Awesome.
Posted in CSS | No Comments »
August 17th, 2006
There are plenty of css optimizers out there, but BloggingPro were kind enough to make a comparative chart of 5 different ones.
Posted in CSS | No Comments »
August 14th, 2006
Here are a the few links that caught my attention this morning:
Posted in Web Design | No Comments »