Hey Gang, Let’s Localize the Flex Framework Resource Bundles

November 16th, 2009

When I migrated from C# to Flex/AIR in order to develop YNAB 3, I was met with a few surprises. One of them was that the default Flex Resource Bundles were not localized. Oh sure, they include Japanese, but not FIGS (French, Italian, German, Spanish). This means, from what I’ve been able to find, that if you want to display currencies and dates in the user’s default language, you’re stuck translating them yourself.

When we wrote YNAB Pro in C#, one of the things we got for FREE was default currency and date/time formats. I just told YNAB Pro to display money and time in the appropriate format that Windows defined, and I immediately had a partially localized application.

When I first ran into this, I assumed that surely other people had already solved this problem and posted standard .properties files somewhere, but my Google-Foo has turned up nothing. So now, I want to be that guy. Within the next few weeks, I’d like to have an open source project hosted somewhere (Google Code most likely) that will offer localized versions of the following files for every language:

SharedResources.properties
controls.properties
formatters.properties
validators.properties

How will I do this? Well, first, I’m only going to localize the parts of those files that are related to date/time/numbers/currency. In other words, the standard stuff. Secondly, I’m going to automate it. I’ll write a C# program that loops through the available cultures and spits out the appropriate values for things like decimal separators and currency symbols into the appropriate files.

You’ll be able to log on, grab these partially-localized resource bundles, configure your build process, and you’ll be a lot further along in localizing your program.

So, before I begin, I wanted to ask:

  1. Has someone already done this?
  2. Does anyone see any problems with my plan? Please let me know!
  3. Does anyone else think this sounds like fun and want to do it yourself? If you’re geek like me, the thought of automating the creation of so many useful files sounds like a tremendous amount of fun. Please feel free to run with this and be the hero for Flex/AIR developers everywhere. I’ll gladly trade glory for time. :)
  4. I assume I’ll have to license the files we generate under the MPL (like the Flex SDK) because this counts as a modification to existing framework files, right?

Licensing Flex Data Visualization components on your build machine

November 12th, 2009

aka: Licensing the AdvancedDataGrid and Flex Chart components
aka: Getting rid of the Flex Data Visualization Trial watermark

If you want to set up an automated build machine to build your Flex projects, you’ll get the Flex Data Visualization Watermark on your AdvancedDataGrid and Chart components unless you properly license them. And no, you don’t have to install Flex Builder. (And it’s not license.properties! That was the first thing that came up in my Googling, but that was for Flex 2.)

Just find your flex-config.xml file, which will be in your SDK directory under “frameworks”. On my build machine, that is c:\FlexSDKs\3.3.0\frameworks\flex-config.xml

At the bottom you will want to add these lines:

<licenses>
<license>
<product>flexbuilder3</product>
<serial-number>1377-rest of your serial number here</serial-number>
</license>
</licenses>

I learned it all by reading this helpful post.

Error #2030 End of File when using as3xls to read an xls file

November 2nd, 2009

I was getting this error consistently when reading BIFF8 .xls files in YNAB 3. Turns out that as3xls has a bug in the way it handles BIFF8 content, but luckily a gentleman named Dan Wilson has stepped up and is maintaining a fixed version here.

Thanks Dan! Budgeters around the world will owe you one.

We’re looking for an amazing icon designer

October 23rd, 2009

We actually found a designer whose work we really liked (at first), but he kept disappearing for over a week at a time. About 2-3 weeks after the deadline, we called it off, and here I am again. I’ve got a list of portfolios to browse through this weekend, but I figured I’d ask here in case an amazing icon designer or his/her friend stumbles across this post. :)

I’m looking for someone who could churn out a beautiful application icon for YNAB 3 so that people would be proud to have it sitting in their Mac Dock. We’ve got a couple of other rich icons to design too, but if they can make a beautiful application icon, the others should be no sweat.

Anyone got a recommendation? Feel free to comment here or to email me. My email is taytay _at_ taytay com.

Stop browsing through your workspace – Find and open files quickly in Flex Builder/Eclipse

October 18th, 2009

EDIT: Turns out that I could just hit CTRL-SHIFT-R this whole time, so feel free to ignore the rest of this post. Thanks to Harald, Dusty, and Ryan for pointing that out. ;)

If you use Flex Builder or Eclipse on a regular basis, and you want to be faster at development, I can’t recommend the “GotoFile Eclipse Plugin” enough!
If you know the same of a file you want to open, or even just substring of the file name, this plugin lets you quickly find it without browsing through your Workspace. Just type a few characters, hit return, and you’re off! Our YNAB 3 workspace has hundreds of files, so this is a real time saver.

In my previous life as a .NET developer, I used Whole Tomato’s Visual Studio plugin to give me a similar feature and was excited to find this one! Thanks Muermann!

ToneMatrix – Sweet synthesizer in Flash

October 16th, 2009

Just stumbled across this one:
http://lab.andre-michelle.com/tonematrix

Hard to put it down.

Word-wrap on a Flex field component

September 24th, 2009

Make sure that you set the width of your field explicitly, or there will be no word wrap for you.

Some other guys found another workaround that gets around explicit widths, but it also looks fragile.

Anyway, if this comes up in a google search, I’ll have saved someone else some time. :)

I want to like Microsoft…

September 24th, 2009

But they make it so hard.

Fail.

Help Authoring Tools – why are they so ugly?

September 24th, 2009

Tonight I was looking at various Help Authoring Tools: RoboHelp, Madcap Flare, and others I forget. So far I haven’t been impressed with the look and feel of any of their output. I want attractive help that looks like Adobe’s, or Apple’s, or even Microsoft’s MSDN.

I guess I could spend some time figuring out which one lets me style it the best using CSS. I’m especially surprised that Adobe’s Robohelp doesn’t come with something better out of the box. It’s Adobe for goodness’ sake!

I’m switching from Firefox to Safari

September 20th, 2009

Forever now, Firefox has always eaten up my CPU when idle. At the best of times, on my Windows or Mac machine, Firefox eats up approx 5% of my CPU, and it’s usually more like 10%. That’s the best of times. Often, I’ll wonder why my computer is crawling and look to see that Firefox is eating 20% or so, if not more. It could be a plugin I’m running, but I’ve tried disabling them to no avail. I have GMail open continuously, and after a few hours, Firefox seems to eat more and more CPU and memory. It all points towards a memory leak Javascript, but I’m no expert. Anyway, after a bit of experimenting with Safari, it doesn’t seem to exhibit such behavior. I haven’t done a long-term test, but after watching its CPU stay low, and my webpages load faster, I’m willing to do a long-term experiment. Here’s hoping…