Komodo Edit issue adding Live Folders


I'm trying out Komodo Edit and I noticed one issue right away that I thought I'd share.

If you create a Komodo project file (*.kpf) in a folder with existing folders and files (e.g. /var/www) then Komodo Edit will automatically detect all those folders and files and add them to the project (sweet!). However, if you create the Komodo project file in an empty directory, you will not be able to add a "Live Folder" due to Bug 81507. As a workaround, either create all *.kpf files in folders with existing content or, if creating the *.kpf in an empty folder, create a dummy text file in the desired project folder prior to creating the *.kpf file.

Identity clarification


I don't use Twitter often, but in case you care: https://twitter.com/mr_blue_coat

HTML 5 Multimedia


A lot of HTML 5 buzz surrounds the topic of multimedia: video, audio, images, and animation.

With HTML 5, video can be added to a web page with a single line of code and it's just as easy to add audio.

That said, the more exciting discussion occurs when we talk about images and animation.

Images fall into two categories: raster and vector. Raster is just a fancy name for the image types you're most familiar with: jpeg, png, and gif. For example, your family vacation photos are in raster format. Vector images are more common in icons, logos, and fonts. Vector images can change size without getting fuzzy or lose image quality. Also, vector image file sizes are usually smaller than a raster version of the same image.

While there are thousands of programs that work with raster images, there are far fewer font programs and only a handful of vector image programs, including Adobe Illustrator and Inkscape. Although very professional images can be created in vector format, one major limitation is that they cannot be displayed in Internet Explorer and therefore the majority of web users cannot view them. This has significantly hampered widespread adoption of this image format and has been at the top of the IE wish list...until now. The HTML 5 standard (which IE9 will support) includes two vector-based components: the <canvas> element and SVG. In addition to the benefits of vector graphics, these components also support animation and are therefore expected to be a major alternative to proprietary animation plug-ins such as Adobe Flash and Microsoft Silverlight (is it obvious now why Microsoft has been dragging its heels for so long...?!)

Now that I've gotten you all excited about HTML 5 and the promise of a better tomorrow, I have some bad news: the HTML 5 standard isn't expected to be finalized until 2022.

So what now? Well, even if HTML 5 was magically available today and all browsers were magically using it, we'd still have issues. Namely, IE9 will not be available to Windows XP or older OS versions. This means the majority of web users will still be using IE8 or lower and will still not be able to view vector-based graphics/animation. Hmmm...so do we just give up now? Not quite -- enter: JavaScript.

JavaScript seems an unlikely hero in this story, but it's uniquely suited to harness the only native vector-based support available in IE: VML. VML is the vector render engine for IE and was originally proposed as a standard but rejected and SVG was created in its stead. Although not as feature rich or standardized as SVG, it does provide much of the same functionality. In addition, since Adobe Flash is available on the majority of computers, an alternate approach is to use Flash (or Silverlight) to display vector graphics on non-SVG/canvas compliant browsers.

Here's a current synopsis of all the major JavaScript libraries that deal with vector graphics:

Name: Ample SDK
URL: http://www.amplesdk.com/
Size (minified): 107k (runtime) + 89k (svg) = 196k
Supported Formats: SVG and VML
Disadvantages: relatively large library filesize, no SVG Filter Effects support, SVG support is in development
- http://www.amplesdk.com/examples/

Name: canvg
URL: http://code.google.com/p/canvg/
Size (minified): 66k (core) + 9k (rgb color) = 75k
Supported Formats: SVG and Canvas
Disadvantages: IE users require Flash, no SVG Filter Effects support, no interactivity support, single developer
- http://canvg.googlecode.com/svn/trunk/examples/index.htm

Name: dojox.gfx
URL: http://www.dojotoolkit.org/api/dojox/gfx.html
Size (minified): 88k (dojo 1.5 core) + 85k (dojox.gfx 1.5, 23 files) = 173k
Supported Formats: SVG, VML, Canvas, Silverlight, and experimental support of SVG Web
Disadvantages: I personally find the API and syntax to be confusing, no SVG Filter Effects support (not part of the VML or Canvas specifications)
- http://archive.dojotoolkit.org/nightly/dojotoolkit/dojox/gfx/demos/

Name: ExplorerCanvas (ExCanvas)
URL: http://code.google.com/p/explorercanvas/
Size (minified): 11k
Supported Formats: Canvas and VML
Disadvantages: no SVG support, slow rendering and response time
- http://bodytag.org/excanvas1/
- http://momche.net/projects/canvas/examples/example_clock.html
- http://excanvas.freehostia.com/callout-speech-bubble-excanvas-example.html

Name: jQuery SVG
URL: http://plugins.jquery.com/project/svg
Size (minified): 70k (jQuery 1.4.2 core) + 76k (svg plugin 1.4.3, 6 files) = 146k
Supported Formats: SVG and Canvas
Disadvantages: IE users need IE9 (requires Vista or higher OS), single developer
- http://keith-wood.name/svg.html#examples
- http://keith-wood.name/svgBasics.html

Name: MooTools ART
URL: http://github.com/kamicane/art
Size (minified): 65k (MooTools 1.2.4 core) + 19k (ART 0.87, 7 files) = 84k
Supported Formats: SVG, Canvas and VML
Disadvantages: experimental, limited documentation
- http://clientcide.com/temp/art/Tests/
- http://jsfiddle.net/oskar/guuCx/60/

Name: Processing.js
URL: http://processingjs.org/
Size (minified): 247k
Supported Formats: Canvas
Disadvantages: IE users need IE9 (requires Vista or higher OS), large filesize
- http://processingjs.org/exhibition

Name: Raphaël (RaphaelJS)
URL: http://raphaeljs.com/
Size (minified): 61k (Raphaël 1.5 core) | 31k (gRaphaël 0.4.1)
Supported Formats: SVG and VML
Disadvantages: single developer, no Silverlight support, no matrix transformation support
- http://raphaeljs.com/
- http://g.raphaeljs.com/

Name: SVG Web
URL: http://code.google.com/p/svgweb/
Size (minified): 120k (svg.js) + 44k (svg.swf) + 5k (svg.htc) = 169k
Supported Formats: SVG
Disadvantages: IE users require Flash, experimental, large filesize
- http://codinginparadise.org/projects/svgweb/samples/demo.html

As you can see, the playing field is still very much in flux for a dominant player to bridge the gap between the IE limitation of today and the critical mass of future browsers that support HTML 5.

Folding@Home on Ubuntu 10.04


Folding@Home (a.k.a. FAH or F@H) is one of the coolest distributed computing projects available. It intelligently maximizes the output of your computer for beneficial medical research (like cancer and Alzheimer's disease). If you're a new Ubuntu Linux user like me and want to participate in this great cause, here are a few steps to get up and running:

1. Download the finstall script for FAH to your home directory (right-click link and choose 'Save Link As...')

2. If you have a 64-bit machine, open the finstall script with a text editor and change the following lines:

On line 750, change Fclient_linuxB=FAH6.02-Linux.tgz to be Fclient_linuxB=FAH6.29-Linux.tgz

On line 754, change Fclient_linuxA_SMP=FAH6.02-Linux.tgz to be Fclient_linuxA_SMP=FAH6.29-Linux.tgz

3. Open a command prompt and change the script to be executable: sudo chmod +x finstall

4. Determine if your computer meets the SMP requirements.

5. Run the appropriate command prompt for your computer:

SMP computer command: ./finstall smp
Non-SMP computer command: ./finstall

6. The script will begin installing Folding@Home. When prompted, compare the MD5 hash to verify the downloaded client is correct and valid.

7. When prompted, I recommend you install the 3rd party utilities from Dick Howell.

8. When prompted for a username, think of something original and verify it hasn't been taken.

9. When prompted for a team number use 45104 (Ubuntu Folding Team!)

10. When prompted for a passkey, use this form to request one be emailed to you (Note: 'Donorname' is the username you selected in step 8). By using a passkey, you can more accurately track your participation points.

11. I used the default settings for the remainder of the install prompts (just keep hitting 'Enter' on your keyboard at each prompt to accept the default setting).

12. Once it finishes installing, copy the folding shell script to your services directory: sudo cp ~/foldingathome/folding /etc/init.d

13. Convert the shell script to a service to run automatically at startup: sudo update-rc.d folding defaults (note: to later remove the service so it doesn't run automatically at startup you can run this command: sudo update-rc.d -f folding remove)

14. Verify the service works: service folding start (note: you can stop Folding@Home at any time by running this command: service folding stop)

15. Within a minute, your CPU usage should max out at 100% and you can view the status by running: ~/foldingathome/folding status

16. You can view your data processing by navigating to your CPU folder (e.g. cd ~/foldingathome/CPU1) and running: ./qd

17. Depending on your hardware, you can also double-click the fpd executable file in the foldingathome folder to see a GUI display of your processing data.

18. After a few days of processing, you should start seeing your accumulated points. Note: you will likely need to run your computer non-stop for 3-6 days to accumulate a single work unit (WU) before your username appears in the Folding@Home stats.

Happy folding!

Areca Backup and AES-256 encryption


Areca Backup is a cool open source backup software application that runs on Windows and Linux. I did find one issue that I finally found a fix for but it wasn't obvious so I thought I'd post it here.

When you first run Areca Backup, click on the "Log" tab. You may see these entries highlighted in orange:

WARNING - AES256_HASH (AES 256 - Password) encryption configuration is not supported by your system (Illegal key size or default parameters). It will be removed from the available encryption configurations.

WARNING - AES256_RAW (AES 256 - Original) encryption configuration is not supported by your system (Illegal key size or default parameters). It will be removed from the available encryption configurations.

If you see those warnings, do the following (your file paths may be slightly different depending on your installation and OS):

1. Close Areca Backup
2. Rename "C:\Program Files\Java\jre6\lib\security\local_policy.jar" to "local_policy.jar.bak"
3. Copy "C:\Program Files\Areca\lib\local_policy.jar" into "C:\Program Files\Java\jre6\lib\security\"
4. Start Areca Backup

You should now be able to use AES-256 encryption with Areca Backup.