While i did get it working as a proof of concept, there was a really off-putting bug in the image decode routines which meant that any displayed room graphics were a jumbled mess.
Recently though i decided to do a bit of intensive debugging to try and solve the problem. To sum it up, after:
I managed to fix the decode routines. Now instead of a jumbled mess like this:
You get something more like this:
Which safe to say is much nicer to look at. It’s also as far as i am willing to go with this SCUMM implementation.
With a lot of work put into it, i’m sure it could run Day of the Tentacle or Sam N Max Hit the Road. But there would not be much sense in doing that, except for that 5 seconds of awe after seeing it running in a web browser.
As previously, you can download the hiscumm code for reference here.
In my quest to learn the Ruby on Rails (a web development framework), i re-writ a PHP-based project management app (ActiveCollab) in it. In fact, i wrote about all of this a few months ago.
Now i’ve had my ups and downs with RailsCollab. The biggest down being that there is little interest in it, especially compared to alternate solutions such as ProjectPier. Which is unfortunate.
In any case, a little problem i noticed recently was that RailsCollab still wasn’t really finished. There were still numerous bugs and missing features which made it feel more of a hack than a real product.
So i set aside some of my spare time to fix it. After a few days, i managed to get it stable enough so that it worked properly in the latest version of Rails. I also got the mail notification working, which i felt was a very important feature of ActiveCollab.
But there was still a lingering problem: Apart from the OpenID support, RailsCollab didn’t really offer anything more than ActiveCollab or ProjectPier offered.
So i thought for a while: What feature could i implement that wasn’t present in either solutions?
And then it hit me: an API! Though not just any API, no. Rather, the BaseCamp API .
For those of you that don’t know, BaseCamp was the inspiration behind ActiveCollab (and thus, RailsCollab). From an API standpoint, it pretty much has the same features, which was great for me as it mapped quite nicely to the BaseCamp API. There were only a few features missing, such as the Message Categories, but those didn’t take too long to implement.
So i pretty much ended up with a nice and shiny implementation of the Basecamp API (minus two minor functions which i have yet to implement). Which meant that i could use all of those fancy third party Basecamp tools widgets with RailsCollab as well.
However there was a snag. While RailsCollab worked fine in development mode, it failed to work properly in production mode due to some problem with controller helpers – which as you can imagine was highly frustrating.
Ruby on Rails might be a great web development framework for getting things up and running quickly, but when you start having such simple problems that cannot easily be debugged, and to top it all off it’s inherently slow, then it starts to look more like the web development framework from hell.
Rants aside, i somewhat hope the lure of the Basecamp API implementation will generate more interest in RailsCollab. Though even if it doesn’t, i will still have the satisfaction of knowing i put some effort into polishing it off and turning it into a real product.
For a while now i have been thinking “Wouldn’t it be cool if someone made an online Internet IDE?” After all, it seems that just about every other app you’d find on your typical desktop PC has an equivalent online version.
Well it seems that someone has actually made an online IDE called Heroku. Specifically, it is a hosted Ruby on Rails development environment.
Basically this means that instead of installing Ruby on Rails and all of its dependancies on your computer to make your next killer Rails app, you can just save all of that hassle and do everything in a web browser.
Features are listed here. In all it looks to be a very interesting web app, perhaps more suited to a mobile worker or maybe a small development team looking for a no-fuss solution for collaboration.
Now if only i had an account so i could try it out….
In my Rotating OpenLaszlo with Webkit post, i showed how it was possible to rotate OpenLaszlo elements using a recent build of Webkit, the HTML engine used in Safari.
These “visual filters and transitions” cover anything from simple Photoshop effects (including blur which i used in my Flash only Flex-style dialog blur in OpenLaszlo) to more complex transformations. More interestingly, like WebKit you can rotate elements!
An example which rotates by 270 degrees is as follows. Make sure you are viewing this page in Internet Explorer 5 or later, else this won’t work!
Click here
Unfortunately there are rather strange limitations with Internet Explorer’s rotation support.
You can only rotate in increments of 90 degrees, as opposed to Webkit which allows you to rotate by any angle. I guess they figured back in Web 1.0 that nobody wanted to rotate their elements using arbitrary angles.
Another thing is that elements you want to rotate need to have absolute positioning. Although this isn’t really a problem with OpenLaszlo as all the div’s it produces use absolute positioning.
Another perhaps more worrying problem is that with a 270 degree rotation one would expect an element to appear above the initial position. Although this could be worked around by altering the positioning in the CSS accordingly.
I guess that coupled with the apparent lack of support for changing the center of rotation and bugs with form controls limits the full effectiveness of this rotation support.