Inside Out Outside In

Market Value of Flex Programmers

 This blog recently received a targeted spam comment.  While I normally would just delete the comment, the contents may be of use to Flex programmers looking for work.  Here's the quandary.  The company in question is looking for Flex programmers, 10 of them to be exact.  The company pays between $15 and $20 U.S.D. an hour (about $41K a year) and is based in China.   That's below the U.S. median income.

So basically it's an outsourcing company targeting potential employment candidates through a channel primarily read by the U.S. market willing to pay outsourcing pay rates.

I've decided to not approve the comment.  If you really need the work, contact me via email and I'll forward you the details.

FarCry Webtop: AJAX URL Caching

IE has this annoying habit of caching AJAX requests unless you make the URL unique on each request. The 4.x FarCry admin webtop uses the DataRequest.js (v 1.4) library for AJAX calls which has the caching problem. The fix is in easy one, just open up the library (Farcry\core\admin\includes\lib\DataRequestor.js) and insert the following two lines at line 164 in the getURL function;

var tsTimeStamp= new Date().getTime();
self.addArg(_GET,"tsTimeStamp",tsTimeStamp);

USPTO Invalidates all 44 of Blackboard's Patent Claims

While this is still a non-final action, e-Literate is reporting that the USPTO has invalidated all 44 of Blackboard's patent claims for their LMS patent granted back in 2006 Since the original patent grant, Blackboard has been swinging the hammer pretty hard for claims that I considered were certainly in the "Duh!" factor of obviousness not to mention prior art.  Let's hope that any appeals by Blackboard fail.

Flash Player Installer Gripe

I wish that the Flash Player Installer would detect the type of player that is currently installed when it needs to be upgraded (as in trying out the new Photoshop Express), that it would be able to detect that the debug player was installed and upgrade to the latest debug player rather than the latest standard player.   Even the "Alternates" link doesn't provide a direct link to the latest debug player. 

How about some intelligence on the website since I've so graciously provided a cookie to record that I'm logged in, maybe track a little deeper and remember that I'm a developer  and adjust the install links accordingly.

I'm not even sure the current debug player is concurrent with version  9,0,115,0 of the standard player.  Sorry, I've only got one system to play with and I'm not going to tweak it just to play with a new website.  It's a pain in the arse having to switch player versions in and out when you need to go back into your development environment.  having a different player in different browsers really isn't a nice solution either.

Here's an idea Adobe, consider how Microsoft installs .NET, they don't get rid of the old version, they just add the new version files.  It would be extremely nice from a client perspective to be able to choose an older and/or debug version of the player as needed through a configuration panel, or give developers a player switcher app that lets you switch player versions/types in and out (browser restart expected) without having to uninstall and reinstall each time.

BlueDragon: Kudo's to NewAtlanta

I'm looking forward to the summer release of BlueDragon J2EE edition under GPL.  Currently I use the standard version of BlueDragon for one main reason, it's free.  I would have liked to use the enterprise version, but I just couldn't justify it when I'm only using it for this blog which is purely a labor of love and the site really doesn't generate any revenue, more of a money pit really, and the less I pour down the hole the better. 

When I was looking around for a place to host my blog, I looked at some the ColdFusion hosting partners.  Since I tinker quite a bit and didn't want to deal with any restrictions, a virtual server seemed the best solution.  The only problem with most virtual servers offered by hosting partners is that you have to put your own software on it, or pay a fairly hefty fee for ColdFusion.   In my configuration I'm paying the premium for windows hosting vs a linux virtual server. I'm comfortable with a fee range in the area of $60, or more precisely, I don't have to justify it budget wise.    Not having to pay for BlueDragon let me beef up some of the virtual server options.

While I did work for Allaire and Macromedia ages ago, any feeling of being a traitor has been diminished during the changing of the guard from Allaire to Macromedia to Adobe.   Being able to throw BlueDragon in as part of the solution enlarges the target customer base by bringing into the fold those customers who would balk at the $1299 price of a standard edition of ColdFusion, regardless of any other benefits that ColdFusion might have to offer.


Small opportunities are often the beginning of great enterprises.
Demosthenes (384 BC - 322 BC)

 

Commentary: Adobe, Apple, and the iPhone

CNN has an interesting article about why there isn't Flash on the iPhone. The article lightly touches on the "Relationship": between Apple and Adobe. Unfortunately, the article makes a huge generalization stating that ;

"Several years ago, Adobe dropped support for Apple's Macintosh computers and then introduced other software products that were only compatible with Microsoft"

To be more precise, Adobe dropped support for Premier, which I assume is the product the author is referring to, not on all their products.   As far as which products run on which platform, Adobe has a huge catalog and you can't expect every package to be available on all platforms.

 What ever happened to the "BFF" between the two companies. IMHO, Photoshop was a major driver in the success of the Macintosh.  In 1989, Apple sold off their stake in Adobe and things just seemed to go downhill from there. I remember feeling a bit betrayed as a Mac fanatic when Adobe released a Windows version of Photoshop in 1992, losing a really cool badge of superiority in regards to the Macintosh platform.  

Steve seems to be holding out for a player specifically designed for the iPhone, something in between Flash Lite and the full desktop player .

I'd be initially satisfied with Flash Lite to start with. Silverlight is coming on strong and though I doubt Silverlight will be ported to the iPhone, I'd hate to see Flash lose any market share as Silverlight gains traction on other mobile platforms..

The iPhone is a great product, so is Flash. Steve, get off your proprietary high horse and sit down with Shantanu and  Kevin and hash out the deal to drive both products.

[Update 3/6/2008]
Here's a great post on the subject from Ryan Stewart

RegEx: Harvesting Email From Body Text

A quick snippet for harvesting emails from a text string;

<cfset searchTxt= "John.Doe@somecompany.com is an email and so is SaraJane@foo.net but foo@bar. is not">
<cfset reMailMatch = "([\._a-zA-Z0-9-]+@[_a-zA-Z0-9-]+\.[\._a-zA-Z0-9-]+)">

<cfset oPattern = createObject("java","java.util.regex.Pattern")> 

<cfset pattern = oPattern.compile(reMailMatch)>

<cfset oMatcher = pattern.matcher(searchTxt)>
<cfset emailList = "">
<cfloop condition="oMatcher.find()">
<cfset emailList = ListAppend(emailList,oMatcher.group())>
</cfloop>

<cfoutput>#emailList#</cfoutput>

CFCHART: Passing Additional Value in URL Other Than the 3 Standard Values

CFCHART documentation states that  $ITEMLABEL$, $VALUE$, and $SERIESLABEL$ can be passed in the url attribute.  Did you know you can also use $(colIndex), which will pass the (zero based ) column index of the item clicked. 



<cfchart 
      tipStyle
="mousedown"  title="Fruit"
       url
="pie.cfm?fruit_name=$ITEMLABEL$&COLINDEX=$(colIndex)"

      font
="arial"
      fontsize
=14
      fontBold
="yes"
      foregroundcolor
="##660066"
      show3D
="yes"
      chartheight
="400"
      chartwidth
="500"
      
>
      
      
<cfchartseries type="pie">
            
<cfchartdata item="Apple 1" value="25">
            
<cfchartdata item="Apple 2" value="25">
            
<cfchartdata item="Orange 1" value="25">
            
<cfchartdata item="Orange 2" value="25">
      
</cfchartseries>
      
                  
                  
</cfchart>

Flex 3 Builder Upgrades: Where's the Price Break if You Already Have Charting?

I'm a little disappointed that Adobe lumped the Flex Builder 2 Upgrade to Flex Builder 3 Professional with both the Flex Builder 2 and Flex Builder 2 with Charting.     Considering we purchased the Flex Builder with Charting in September of last year, having to pay the $299.00 to get charting in Flex 3 as opposed to the decently priced $99 upgrade is going to be a hard sell to management. 

Checking for HTML injection in all your comment fields.

When checking for html injection in your blog comments, unless you're moderating your comments, remember to check all the fields, not just the body and strip the html.  I was reading some old blog entries of some friends (cough* Kevin's, sorry bub!) and noticed quite a bit of spam in the comment titles.  The spammer had used a link the comment title.  Unfortunately, the link doesn't have a rel="nofollow" attribute either, so the blog is just contributing to the spammers ranking. 

More Entries