[thelist] updating skillset (long rambling request for advice, vague or specific)

David Kaufman david at gigawatt.com
Fri Sep 22 17:00:29 CDT 2006

Joel D Canfield <joel at spinhead.com> wrote:
> so, I'm being thrust into self-employment again in a few weeks...

Hmm, normally I'd say congratulations are in order!  But by your choice 
of words I guess self-employment isn't such a welcome state of affairs 
for ya.  So... my condolences :-)

> ...what skills
> should an experienced but tunnel-visioned developer brush up on to be
> viable as a one-man shop in the freelance world these days? (I'm
> specifically looking for job skills;

At the risk of being buzz-wordy, one word: AJAX.  It's usually not "the 
job" (few client hire purely JavaScript programmers, tho perhaps they 
should) but is more and more often these days either one requirement for 
the job, or at least mentioned as a would-be-nice/plus/bonus bullet 
point on the job req's.   Regardless of your backend web app flavor of 
choice, be that Perl, PHP, Python, Ruby {would you like Rails with 
that?], JSP, CFM, .Net/C#, or what-have-you -- even (horrors!) static 
HTML... the one thing that everyone wants is Web 2.0-style web pages 
that actually employ good use of, to dispense with the contrived 
Acronymic technologies: dynamic loading of remote data without those 
obsolete page-loads and advanced DHTML visual effects.

Though AJAX itself (loading remote data and updating a page using 
javascript and not a page load) and the more "fluffy" visual effects 
often associated with it are of course entirely different things, 
nontechnical people lump the two strongly together, probably because 
they complement each other.  When you load some new bit of data 
dynamically, popping that into the page using javascript is nice, but 
adding a highlight color, fade-in, slide-in or scroll-in effect is not 
only attractive it's good UI design to provide visual feedback to the 
user that something "just happened".

I'm getting a lot of clients asking for it, and a lot of resistance from 
other programmers who prefer to think of themselves as SQL and backend 
PHP/Perl/CF/JSP gear-heads.  Doing AJAX the way these clients want it 
done requires a combination of back-end coding skills, graphic design 
sense and high-end DOM/JS chops that is hard to come by, whether in one 
freelancer or in a whole team!

> ... I know what I need to know [for
> now] about how to run a business and how to keep my life in balance;
> mostly 'cause Best Beloved helps me with both.)
> Thanks muchly for any words at all.

<rant> How 'bout these?  Asynchronous Javascript And XML.  Must be the 
most contrived acronym yet!  Javascript is almost always abbreviated as 
JS, not J.  So it Should really be:


and XML itself is of course another acronym and you can't really have an 
acronym *of* acronyms, can you?  So you have to interpolate there:


and while we're at it, might as well take the opportunity now to correct 
that unfortunate mistake of history in which someone (surely an deeply 
underpaid clerical assistant) made that typo in the acronym XML in which 
the first letter was supposed to stand for Extensible, (ostensibly *not* 
for X-tense-ible) giving us:


And hey, what's with that "and"? And isn't an important word -- that's 
just making our acronymical adventure needlessly long.  Lets cut the 
cruft shall we?


And, I just remembered, Javascript isn't even called Javascript anymore 
because Netscape (just before gasping their last breath) wouldn't open 
it up as a standard, forcing the developer community to re-acronymilate 
that as ECMAScript, remember?


But, you know what?  Come to think of it, I hardly do any Web-2.0 work 
at that still uses (what we used to call) Javascript programming.  You 
know, huge blocks of global variables, global functions, procedural code 
and browser hacks.  With Prototype and Scriptaculous, all of our new 
AECMASEML development looks a helluva lot more like Ruby or Haskell or 
some other purely functional language than JS always did in days gone 
by.  In fact, we don't even name functions anymore!  They're all 
anonymous inline-literals in squirrelly brackets, or re-used code 
closure objects stuffed into in an object attribute somewheres as scalar 
variable data of type "code".  Just about the only thing left of 
"Javascript" that we rely on *these* days is that one actual (and 
relatively late-arriving) XMLHttpRequest object that Javascript gave us 
...the one that made AJAX, and with it our exit from Javascript 
Programming, and in fact, the whole Web 2.0 revolution, possible in the 
first place!  So I'd certainly rather my acronyms pay homage to that 
thing, than the word "Javascript" (which has such a 1990's aura around 
it).  So, credit where credit's due:

A-XMLHttpRequest-EML ?

No, then we're back in recursive acronym land.  XMLHttpRequest, 
presumably stands for Extensible Markup Language HypertText Transport 
Protocol Request, right?  I'll really buck the system here and argue 
that the word "HypertText", though StudlyCapped, is still just one word, 
and therefore does not deserve an allotment of two letters in our 
already busy acronym.  Aside from the fact that, should the world 
embraces my argument then that means updating all those existing URL's 
(um, counts on fingers, then toes.. about a kajillion) scattered across 
every nook and cranny of the planet, inanely misspelled 

So far I'm up to AEMLHTPREML.

I still have to work in the concept Discreet Visual Effects And 
Transitions To Augment Usability in there somewhere, since that IMO 
simply cannot be ignored in any serious discussion -- or acronym -- of 
What We Used To Call AJAX.  but I think we may be onto something here! 
All I need to do now is to write an AWP (A White Paper).

Good luck in the contract web dev world, Joel!


More information about the thelist mailing list