In This Issue...

Add Two Key Factors to Streamline Your Search
Engine Marketing Efforts! Factor #1 - Web CEO software package
including 12 powerful tools to make your SEM process fast, rational, and
effective.
Factor #2 - Professional SEM Training
Course teaching you successful SEO and SEM techniques to develop
your own winning promotion strategy. Download Web CEO and get access to SEM Training and
Certification


Introduction
Galavanting
around the globe to conferences, I've missed a couple of significant
releases at SitePoint in recent weeks. This is especially embarrassing
because I worked on both of these projects personally. So, if you please,
pardon the following bout of shameless self-promotion.
First up, we have well and
truly launched SitePoint's series of video tutorials. This
project has been my baby since early this year, and after so many hours
spent locked away in a quiet room recording them, it's exciting to finally
put them out there for all to see!
At this stage,
we have three full videos available to view for free, so you can get a
good idea of what to expect from the series. The freebies are An Introduction to
AJAX, Photoshop
Starburst Effect, and Set Up Ruby on
Rails for Windows. To further sweeten the deal, if you buy any two
videos for $7.95, we'll give you a third one for nothing!
Secondly, SitePoint has produced a comprehensive report called The State Of Web Development
2006/2007, based on the web developer survey we ran earlier in the
year. As promised, we released the full results of the survey (along with
detailed graphs) for free to everyone who responded to the report, but
upon seeing the raw data, we knew we couldn't stop there.
The report, which I should warn you is aimed at corporate-level
analysts and decision makers (and is priced accordingly), offers a
complete analysis of the raw data from experts within SitePoint and
Ektron, the collaborators on the original survey.
If you're interested in the results of the survey but not the full-blown
report, you can just download the free preview of
the report, which contains numerous graphs produced from the survey
data.


The Browser Wars: Not Taking Sides
The past week has seen the releases of both Internet Explorer 7 and Firefox 2. The browser
wars are back on, and for the first time in a while, it's our duty as
responsible developers not to take sides.
In response to the IE 7
release announcement on SitePoint, I was surprised at the proportion of
comments
vowing to "stick with Firefox", some even suggesting they
wouldn't bother installing the IE 7 update at all!
Thanks to its versatile extension system, Firefox is likely to remain
the primary browser on most web developers' systems, I'll certainly grant
you that. But these latest releases are in no way justification for us to
treat Internet Explorer as a second-class citizen in the work that we do!
If anything, we should be looking to embrace any browser that prioritizes
support for web standards by basing our work on those standards.
And in that respect, Internet Explorer 7 is most certainly a very
respectable stride in the right direction. I just don't understand how
people can claim that IE 7 has "horrible CSS support."
Microsoft has done an excellent job of fixing the most significant
shortcomings in IE 6's CSS support with this release, and based on
recent progress of these two browsers' CSS support, I find myself
beginning to doubt Mozilla's ability to maintain its lead over Microsoft
in this area. And heck, if I was only going to use the browser with the
best CSS support today, I'd be hitching my wagon to Opera.
In terms of the work it's doing today to support standards,
Microsoft is right up there. Microsoft has plenty of ground to make up,
and it remains to be seen whether these current efforts will be sustained,
but if we consider which browser vendor is doing the work that will most
benefit everyday web developers (as opposed to the more esoteric features
appearing in Firefox 2), Microsoft is arguably doing the best work in
browser development right now!
Internet Explorer 7 is a landmark release, in that it will allow us in a
year's time to look back and wonder (as we wonder today at the limitations
that Netscape 4 used to impose on us) how we ever got by without
things like PNG transparency,
min/max-height/width, and
:hover on all elements (not just hyperlinks).
Don't get me wrong: Firefox 2 is an impressive update, completing
Mozilla's hat trick of three major Firefox releases in as many years. Some
of the exciting technologies buried under its hood (particularly in the
JavaScript engine) hint at an exciting future in which they are more
widely supported. With this release, Firefox has truly solidified its
position on the desktops of developers everywhere.
But for the first time in years I believe it is our responsibility as
developers to let our users make up their own minds about which browser
they prefer. By building standards-based sites that will ensure the
browser makers' continued interest in improving standards support, we can
step back and let the browser wars be fought not on the basis of which
browser renders sites most correctly (they should all render them just
fine), but rather on the basis of which browser can offer the best user
experience for its particular user base.


Avactis Shopping Cart. Get a FREE Copy Today
and
Save $199.00! Easy & Powerful Storefront Customization.- 50% Lifetime Discounts for Web
Developers
- Fully Functional Online Store Solution
- Simple
Integration with Existing Web Site
- No Programming Skills
Required
Click
Here to Get a FREE Copy of Avactis Shopping Cart!


The State of ColdFusion
In issue
145 of the Tech Times, I offered some advice on which web technologies
beginners should invest time in learning. Ben Forta, the Senior Technical
Evangelist at Adobe, felt
I misrepresented ColdFusion when I described it as "relatively
stagnant." Having done some homework, I've now changed my thinking a
little.
First, here's Forta's objection:
You are correct about the gentle learning curve, but can you clarify
"relatively stagnant"? Just to be clear, the Webster definition
of stagnant is "not advancing or developing". ColdFusion was
first released in 1995, ColdFusion MX 7 was released in 2005, 7.0.1 later
that same year, and 7.0.2 in June of 2006. In addition, the ColdFusion
team is hard at work on the 8th major version of ColdFusion (currently
codenamed "Scorpio"), to be released in 2007. Obviously, we are
both advancing and developing ColdFusion, and so the term
"stagnant" is utterly inappropriate. As such, I must request
that you update and correct your statement.
Forta goes
on to point out that ColdFusion sits atop a Java foundation, and as
such benefits from the full power and flexibility of that platform. My
thinking here is that to take advantage of the Java platform beyond what
ColdFusion exposes directly, you need to learn Java, which makes it a moot
point in a discussion of what a beginner should learn first.
Getting back to Forta's main point, there is, of course, no arguing with
semantics. If the measure of health for a server-side platform is the
frequency of releases, then ColdFusion has life in it yet. But even when
considering this meaningless metric, compared to the release schedules of
competing platforms like Ruby on Rails, PHP, or the dazzling array of Java
web application frameworks, ColdFusion comes off looking, well,
"relatively stagnant."
How else can we measure the health of a platform? Well, one way is to
look at book sales (something we do at lot at SitePoint). O'Reilly showed
the
results of the past three years of book sales at OSCON 2006.
ColdFusion didn't even make the graph, but when
asked, Tim O'Reilly replied:
"ColdFusion would be showing as a flatline at the bottom if we were to
graph it." Of course, a platform might not need books if it were
especially well-documented, and perhaps that's the case with ColdFusion.
Or perhaps it's just that ColdFusion isn't evolving rapidly enough for
people to need new books written about it.
Perhaps the way to measure a platform's health is to look at the job
market surrounding it. I've seen a
smattering of reports that the ColdFusion job market has perked up
recently, so let's take a look. When measured against Ruby jobs,
ColdFusion looks like a solid enough choice for now.
Note that the numbers for "ColdFusion" and for "Cold
Fusion" are roughly equal, so you can effectively double the
ColdFusion numbers if you don't mind working for a company that can't
spell.
When you throw in other more established platforms like PHP and ASP.NET,
it's clear that ColdFusion isn't the best choice if you're playing the
numbers for a new career.
Even if you double up the ColdFusion line on this graph, it's still only
about 2/3 the size of the PHP job market, while ASP.NET and Java (not shown
because it overwhelms the others) are even better choices.
But no, I wasn't talking about any of these forms of stangnancy. Rather,
my description of ColdFusion was based on an impression that the
platform's development had slowed to the point that it was unable to
respond to the changing needs of real-world web developers in the same way
as its aforementioned competitors. Even in major releases like ColdFusion
MX 7, changes to the platform seemed to consist mainly of tacked-on
features of interest to a small minority of developers (e.g. integrated
reporting) or tie-ins with Macromedia's (now Adobe's) other properties
(e.g. Flex).
Based on Forta's message, however, I thought it best to revisit that
premise. I perused a number of ColdFusion blogs, read a ColdFusion
developer journal, and spoke with some active members of the ColdFusion
community. And I have to say, on some points I was pleasantly surprised.
One trend I observed on ColdFusion-related blogs recently was a spate of
ColdFusion 8 wishlists. Dave Carabetta published a
particularly comprehensive one. These lists give a pretty good feel for
where ColdFusion's power users hope the platform is headed. Certain items
are worrisome:
Eleven years in and ColdFusion doesn't have anything built-in to it to
really work with images on any sort of useful level.
ColdFusion needs a professional IDE. I have been working with Flex 2
lately, and it's downright appalling to see the level of professional
polish on the Flex Builder IDE versus the CFEclipse IDE.
Something that's not on these lists that I expected to see,
however, is a more powerful application framework. This seems to be one
area where the ColdFusion community has really taken charge: Fusebox,
Model-Glue, Reactor, ColdSpring, Unity, and many other projects exist as
the foundation for different approaches to building ColdFusion
applications.
Next I sat down with the Summer 2006
edition of Fusion Authority, a
free copy of which serendipitously landed on my desk a few weeks ago.
First, let me say that this is a top notch publication, with just the
right mixture of big names and enthusiastic upstarts writing timely and
practical articles.
Refreshing my knowledge of ColdFusion code through the pages of the
journal, I gained a renewed appreciation for the "hide the hard
stuff" approach that's exemplified by the platform. If you're the
kind of person who just wants to get the job done without getting drawn
into the technical details, ColdFusion may be uniquely suited to your
style.
An article by Kay Smoljak, who I met at Web Directions South last month,
attracted my attention, however. In "An Honest Look at Integrated
Reporting", she describes the problems she had making real-world use
of one of the flagship new features in ColdFusion MX 7. The severity of
the bugs she describes are frankly shocking, and although it sounds like
Adobe has been responsive to her bug reports, correcting many of the
issues in the recent 7.0.2 release, one has to wonder a) how Adobe could
release a flagship new feature that was so fundamentally flawed, and b)
how nobody but Kay Smoljak seems to have noticed.
In my mind, this signals a disconnect between the core development of
ColdFusion and the real-world needs of its user base. The reason there
wasn't public outcry as a result of the bugs in the integrated reporting
features of ColdFusion MX 7 is because few people bothered to use the
feature. When Macromedia/Adobe spends its time building integrated
reporting that nobody uses instead of fundamentally useful features like
dynamic image generation, there is something very wrong.
The good news is that Adobe has announced that ColdFusion
8 will have dynamic image generation built in. Nevertheless, I
had to ask Kay Smoljak what she thought of all this.
I was actually a ColdFusion developer long before I was anything else,
and really my impression of ColdFusion as a whole is pretty positive. [...]
Don't get me wrong - ColdFusion integrated reporting is a steaming pile of
turds. But I'm still a fan of the platform. Perhaps they don't give the
right impression to the wider community of developers, but there is a lot
of stuff happening. [...]
I have some ideas about the type of developer that is attracted to
ColdFusion, which I think contributes to the "stagnant
impression" - they tend to be "get the job done and move on to
the next target" type people rather than coding enthusiasts - they're
just not vocal like Ruby On Rails, PHP and .NET fanatics.
...which is all pretty reasonable, as far as it goes.
The question I keep coming back to is this: what exactly are you paying
for when you choose to develop for ColdFusion? Lest we forget, Adobe's
ColdFusion server costs a pretty penny to license, and that's money that
your employer won't be putting into server hardware, developer tools, or,
ultimately, your pocket. Just what is it that you're getting in return? It
isn't quicker bug fixes, it isn't a larger job market, it's not a richer
feature set, and it's not rock-solid reliability. It might be timely
support, but other platforms offer that too, and without the up-front
costs.
In the end, the only solid reason I know of for choosing ColdFusion
today is if you simply prefer its way of doing things. But, when we
compare ColdFusion to competing platforms, I do honestly believe that the
core development of ColdFusion has been stagnant for some time. It may be
that this is all about to change with the release of ColdFusion 8 next
year and, thanks to Adobe Labs, we
should be able to tell long before this new version hits the streets. But
based on where the platform is today, I must stand firm in my
recommendation that newcomers to web development look elsewhere, at least
for now.


Well, that's enough bridges burned for one issue. :)
See you in two weeks, when I won't talk down your favourite platform for
web development... well probably not, anyway.
Kevin Yank techtimes@sitepoint.com Editor, The SitePoint
Tech Times


Help Your Friends Out
People you care about can benefit from the wealth of information on
new
and maturing technologies available on the Internet. Help them learn
how to do it by forwarding them this issue of the SitePoint Tech
Times!
|