[Looking for Charlie's main web site?]

ColdFusion Lockdown/Security guides: there are several, and some you may have missed

While helping people with various problems in my CF server troubleshooting services, I often have the chance to help people identify security vulnerabilities, especially in their configuration of CF and/or their web server, and sometimes related to their code.

I was wanting to point out to someone the various ColdFusion security resources, and while I have a category on them in my CF411 site, I thought this was a list worth pulling out into its own blog entry and expanding a bit.

You may be surprised to find that there are more to CF security guidelines than just the venerable server "lockdown guide" (for those administering and configuring CF, the OS, and the web server, among other things).

Did you know that there have been "developer security guidelines" as well, focused instead on coding? This latter guide has gone through three iterations, including just recently, as I'll discuss along with the lockdown guides, below.

[....Continue Reading....]

Struggling with using the XML features of CFML? Here's where to learn more

Are you struggling with using the XML features in CFML? Or do you help people who are?

It's not something most people use often, and there is far more to the feature set than meets the eye. If you don't use the right resources to help you, you could waste time trying to piece together a solution using only scant examples you may find.

In this entry, I'll point to several resources you should consider to help get you quickly up to speed in using--and appreciating--the power of the XML features in CFML.

Even if you don't need them today, you (or someone you know) may need them some day, so keep this in mind. (Or if you find this page doing a google search some years down the road, drop a note to let me know if it helped then!)

Background

[....Continue Reading....]

Ultimate list of CF debugging output template alternatives

Following on the heels of my "Ultimate Var Scope Resource list" last week, here now I present what I think is the ultimate list of CF debugging output template alternatives.

Yes, you CAN modify the debugging output. Some have even done it for you

Many may not realize that the CF debugging output (optionally displayed at the bottom of the page, as enabled in the CF Admin) is actually created by a CFML template that can be modified ([cf]\wwwroot\WEB-INF\debug\classic.cfm).

Fortunately, several people have offered various resources that explain how to work with this file and offer packaged alternatives with specific features to resolve particular problems (where people wish the debugging output did more, or could be seen differently than at the bottom of the page).

Just drop and reload

You can just drop any of these files into the debug file directory to add to or replace the default file. If it's a new file you then need to select it as an alternative in the CF Admin Debugging Output page which offers a choice for "Select Debugging Output Format", which points to the classic.cfm by default.

Of course, since it's CFML source code, all the options mentioned here are free and open source.

The alternatives, discussed and downloadable

The alternatives include:

  • "Another hack job", from Ray Camden, adding total query time, improved number formatting for individual query times, and highlighting queries that a given duration
  • ColdFire, open source from Nathan Mische et al, a Firefox/Firebug extension to aid in viewing CFML debugging output by way of a new alternative debugging output template, coldfire.cfm
  • ColdFusion Debug Templates, "in case you want to try something different than the default template", from Josh Knutson
  • Debug2FusionReactor, from Intergral, for showing CF debugging output in FR Marker tab
  • Improved Classic CF debugging template, from Aaron Longnion. Changes list of templates executed to show in order executed, rather than by order of duration. Also adds cfqueryparam variable values for queries shown.
  • StarFish, from Ray Camden, a profiling tool built on the CF debugger. Stores debugging output in server scope, and adds an Admin customization interface to view reports based on gathered information.
  • Stiletto, from John Mason, for logging CF debugging output to a file (inspired by a blog entry by Bilal Soylu
  • Zoid, from Ray Camden. Changes the table of templates executed from a summary for each (even if called multiple times) to in individual display of each, in order.
  • Note as well that another alternative to showing debugging output at the bottom of the page is a built-in option in CF. Note the available "dockable" option in the choice for "Select Debugging Output Format". While the aforementioned classic.cfm is the default, the dockable.cfm instead shows the debugging output as dockable/movable/floatable pane instead.

Also listed on my CF411 site

Note as well that I have just created a section in my CF411 site, called "CFML Debugging Output Template Alternatives/Mods". If anyone offers me additions or corrections as a comment below, I'll be sure to update the list in the CF411 page as well.

Finally, as I mention at the bottom of the list on that page, note that I have yet another section (following that one) on the site, called CFML Debugging Tools, which lists still other kinds of CFML debugging tools.

The Ultimate Var Scope Resource list? Understanding/resolving problems with the var scope in CFML

If you or anyone you know ever wants to get up to speed on the "var scope problem" in CF, you may be challenged by the fact that there are many discussions of the topic, spread across many blogs. I've accumulated here a starting list of several of the key ones I know of. I certainly may have missed some, so I welcome suggestions of more.

I think it's helpful to have all the resources in one place. Indeed, ultimately I'll move this to my "resource lists" page where I keep similar "compendia".

I created the list of VAR scope resources today after helping a client with a problem which seemed related to this classic problem: the need to remember to var scope your variables in CFCs. It's often the cause of subtle bugs. Like many, they still hadn't heard about the problem (or had seen mention of it but didn't really understand it).

So if you're in that place, or know someone who may be, here are resources to help get started on understanding the topic and related issues. As always, the CF community has rallied the troops on the matter, and several folks have blogged in various detail or on various related aspects.

About the resources

[....Continue Reading....]

ColdFusion 8 migration resources (from 6, 7, or even earlier)

Someone asked me about migrating from CF 6 to 8, lamenting that he couldn't find any migration resources. Sadly, there are no official Adobe resources for upgrading to CF8, but I will mention a guide to upgrading to CF 7 from CF 6 (or even 5) that Macromedia offered, which many may have missed. I'll also point out a couple other things and blog entries of others that do focus more on moving to CF 8 specifically (and perhaps others will comment with still more.)

Who's only now moving to CF 8, you ask?

Some may ask, "why would someone be moving to CF 8 now, which CF9 on the horizon?". Well, a lot of shops don't upgrade immediately, so the question didn't surprise me. So some may only now be moving to 8, and they may not be interested in moving to CF9 for a while. Heck, some (like him) are running only on CF 6, or earlier! Let's just be glad when they people do finally migrate. :-)

And who knows, there may be some who move to CF 9 from 6 or 7, and this info may help them down the road, too.

So, as Casey Kasem used to say, "on with the countdown". :-)

60 page "Migrating Applications to ColdFusion MX 7"

I first pointed out to him that there *was* in fact available in the past an official Macromedia CF document (in the CF7 docs):

Migrating Applications to ColdFusion MX 7 (PDF)

At 60 pages, this is quite a good resource to consider. It "describes migration and known compatibility issues between ColdFusion Server 5 and later versions, including ColdFusion MX 6.1 and ColdFusion MX 7."

Sadly, it was not updated for CF 8, but really, the bigger differences in things were between 6 (being the first release after the rewrite of CF on java) and higher. Of course, those moving from 5 (when CF was written in C++) to higher face far more differences. Again, the guide even covers that. So even those skipping 7 to go to 8 should at least look at the guide.

Never heard of the guide? I'm not surprised. I'll take that up at the end of this entry.

Jim Priest Sought CF8 Migration Stories

Now, he did ask about migration to CF8 specifically.

There was at least one blog entry, from Jim Priest, that sought such CF 8 migration stories.

In the comments, someone commented about "CF8 performance on our CFC-driven apps" after the upgrade to 8. As many now know, that was likely due to a bug in the JVM, rather than CF. CF 8 came running on on JVM 1.6.0_04. Early in the CF8 lifetime, people suggested dropping back to JVM 1.5, but by late 2008 Sun had fixed the problem in 1.6.0_10, and that became the recommendation. Many blogged about it, including Sean Corfield and Ryan Stille who also walks you through making the upgrade.

Someone also commented (in Jim's CF8 Migration Stories entry) about losing their CFIDE directory after the upgrade. I don't know if this is the exact problem, but there was a similar issue documented in the CF 7 timeframe: "CFIDE and cfdocs folders removed after migrating from ColdFusion MX 6.1 to ColdFusion MX 7".

Jim's entry has comments closed for now, so I can only offer these thoughts here. I just asked him by email if he may reopen it to let people post observations like these, to help people who may yet find it and the older comments. We shall see.

Josh Adams offers still more resources

I just found also that Josh Adams (of Adobe) also blogged about Migrating from ColdFusion 5 or older to ColdFusion 8. He shares some other interesting resources, though not that CF7 migration guide. I'll drop him a note and I suspect he'll get that added ASAP. :-)

Steven Erat's discussion of migration from 4.5 to 7

Again, while not specifically about moving to CF 8, Steven Erat did blog some resources to help someone making the move from 4.5 to 7, in his entry, Migrating applications across a six year gap in ColdFusion server implementation. That offers a link to the Migration Guide above but also release notes for each release between 4.5 and 7.02, which is a nice touch.

Don't forget to apply hotfixes

Besides looking at the release notes for each release (something I also highly recommend), I'll also remind folks to also always check for updates, hotfixes, and cumulative hotfixes for any release you may install. What you download (even today from Adobe) may not be the absolute latest version of whatever release you get.

I'll do a blog entry about that with more details in the future. (I did discuss it in my CFMythbusters talk, and the PDF there has some good pointers to get you started on this topic, among others.)

No surprise if you never noticed that CF7 Migration Guide

Sadly, you won't find that CF7 Migration Guide I mentioned on the CF7 livedocs page, since it's a PDF (never made as an HTML file, which the livedocs are). Instead, it's listed on a different CF7 documentation page, that can itself be easily missed. (It is linked to from the CF product and support pages.)

And again the Migration Guide wasn't updated for CF8, so of course it's not mentioned on either the CF8 equivalent of that page or the CF8 livedocs page. Still, since the "changes" from 7 to 8 weren't substantial (new features, not many--if any--breaking changes), the guide helps those moving from CF 5 or 6 to 8, too.

Some won't want to miss the substantial Getting Started Guide

Finally, while we're mentioning CF7 docs that people may have missed, check out also "Getting Started Building ColdFusion MX Applications". That is/was at least listed in the CF7 livedocs (and the other doc link), above. Still, it seems many missed it. It's over 150 pages of great introduction to CF application development (and yes, it shows use of CFCs not just tired old CFQUERY/CFOUTPUT development). Sadly, it too was not upgraded for CF 8 (or 9). It was a great resource for those getting started with CF. I still recommend it all the time.

What other CF 8 Migration resources exist?

So that's my "quick" answer to the person asking for CF8 migration resources. Anyone have more? Whether moving to 8 from 7, or 6, or earlier? :-) Comment here. Readers will be grateful.

I'll prime the pump with a couple more, where people described challenges they faces:

Hope that's helpful. And since I give a nod to Casey Kasem at the opening, I suppose some will think I should mimic his successor, Ryan Seacrest, in closing here. This is "Arehart, out". :-)

Several useful web dev topics, "Better Explained"

I happened upon a site today with many quick, to the point, highly graphical articles introducing web app development topics that may interest some of my readers. Wanted to pass them along:

A few focus on Javascript and/or site building:

Still others aren't specific to web development, but can be valuable to all kinds of developers, and it was one of these that led me to the site in the first place:

The site is Better Explained, whose tag line is "Explanations for everyone". The author does a pretty good job of that. Some of the topics are a little too one-sided (the discussion of HTTP compression does only show setting it up in Apache, not IIS), and of course there's no mention of CF anywhere. :-) But we can't expect that from everyone. There are lots of positive comments and linkbacks on on many of the entries, so he'd done a good job in the eyes of most.

Indeed, if you may be hearing the siren call of Ruby on Rails, they have an article on that: Starting Ruby on Rails: What I Wish I Knew. There's also an intro to MVC, but again it's from a Rails perspective: Intermediate Rails: Understanding Models, Views and Controllers.

If there's something you'd like to see the author address on the site, he has a post for that, too: What do you want Better Explained?.

Categorizing the 30-some CF frameworks: how did I do?

Some may know that among my CF411.com site's list of 700+ tools/resources for CFers in 125 categories, I have long listed the 30+ CF frameworks. (Yes, there really are that many.)

But until now, I just listed them all together, without any subcategory. Today I took a shot to categorize them and saw 3 categories:

  • CFML Application Frameworks/Methodologies
  • CFML Injection Frameworks/Methodologies
  • CFML ORM Frameworks/Methodologies

How did I do? Are these good categories? Most of them fit in the first category (about 25) are in the first category. I didn't want to break them down into which were MVC, etc. Should I bother?

Two are in the injection frameworks category (ColdSpring and Lightwire). How's that for a category name? And there are four in the ORM category.

Are things in the right place? Any needed additions/subtractions? As with all the categories in the CF411 list, I welcome suggestions, corrections, etc.

And if you didn't know there were 30-some CF frameworks, check out the list:

CFML Frameworks/Methodologies

One last request: before you comment, please check the other comments and see if I may have already changed/corrected something.

Learning resource for beginning web developers

If you know anyone needing to learn the fundamentals of web application development--not CFML, but things like HTML, CSS, Javascript, and so on--here's an interesting resource: Beginner Developer Center, Tier 1

Yes, it's a MS resource: don't let that keep you away

Now, some will see this is from Microsoft and flinch, but don't let that scare you away. It's a set of introductory resources that could help any beginning web developer, and while the first 2 and last 2 of the 14 sections are MS-specific, the rest are not.

And besides the web-oriented topics above (HTML, CSS, Javascript, and more), there are also sections introducing basic programming concepts like problem solving, processing and storing data, even introducing OO (again, with no reference to C# or anything .NET), and more.

For each of the 14 topics, there is both an article-level discussion and either an audio or video version.

Yes, it's in a resource center about VWD. Don't let that scare you away, either

I'll note that beyond being "from MS", it's also indeed specifically part of a resource center for their Visual Web Developer IDE. Again, most of the content offered in this beginner resource is not really specific to that editor or to .NET.

And frankly, I wouldn't hold it against a CF developer to consider using the editor. Hey, it's free, and consider also that sometimes you may have to do some editing on a server with nothing but Notepad available. Perhaps you're not a fan of Eclipse, don't have an available license for DW/HS, and you want more than just Notepad. (Yes, I do also know about the many other available free (and some commercial) editor alternatives. I list them in my CF411 site category of Editors/IDEs.)

(And if you're ever stuck in a situation where you're unwilling or not allowed to install any new editor on your server, just last week I wrote about a tip for using Notepad if you ever find that you can't use the Goto Line feature.)

Anyway, the point is I'm not making a pitch here for VWD nor any statement against CFE. Let's not go there. :-) Indeed, to any who may want to take the chance to comment here in scorn or to deride the VWD editor or MS, or to point out some other editor alternative, let's not go there, either.

The point of this entry is the free learning resources for beginning web developers that I found on the MS site. I hope it may help some people.

Got problems with SQL Server tempdb? Here are some resources

I was working with a client the other day where it turned out they had a HUGE SQL Server tempdb. I shared with them some pretty substantial and informative MS resources. In case this may ever happen to my readers, I wanted to pass them along:

You may want to check out several other equally useful TechNet articles on SQL Server (like the first one above, but available on a wide range of issues).

Hope that's helpful to someone.

Have there been any updates to the CF Report Builder feature? Yes, in fact

I wanted to share here some info I shared on a mailing list. Someone asserted that "there's been little to no attention given by Adobe towards fixing bugs in the Report Builder feature". Well, no doubt many have long ago dismissed it if they used it when it first came out in CF7 and hit some snags.

But to be clear, there have been many improvements made to it in each release/point release and CHFs since then (whether bug fixes, minor improvements, or even some modest ones).

For those interested, just search for "report" in the following documents (to find references to cfreport and report builder):

I do realize that many may think there's still plenty more to be updated, but at least it shows it's not really been "little to no attention". :-)

Not picking a fight with anyone. I really think most just haven't noticed, so thought this may be helpful.

Announcing CF411.com: your place to find the 411 on things related to CF

Next time you have (or see someone ask) a question about finding some resource or tool related to CF, first check out CF411.com. :-) It's a list of more than 700 tools and resources in over 100 categories. You might find not just one but many alternatives. I hope this will help folks who might otherwise ask or answer questions on mailing lists, forums, and blog comments where such requests frequently appear.

So what's in it?

It's not a FAQ. Rather, some will recognize this as my long-existing list of tools and resources, which this weekend I decided to rechristen it as CF411. The domain name above simple redirects to that part of my site, now also called: CF411.

Far more than just tools, it also has dozens of categories of resources: CF job resources, self-help resources, professional assistance resources, tutorial sites, conferences, hosting alternatives, certification prep resources, other sites listing CF resources, and much more.

And the tools list has several dozen categories, both those written in CFML (like caching, debugging, file uploading, and code generating tools, as well as CMSs, all the frameworks, and all the CFML engines, to name just a few), and just as many tools not written in CFML but useful for us (including database tools, editors, http debugging, log analysis, load testing, monitoring, and source code tools, to name a few), whether free or commercial.

Like my UGTV, I offer CF411 as a contribution to the community, to save people spending a lot of time looking/asking around for stuff. I hope it becomes another one-stop shop for people to find what they need (well, I use the term "shop" loosely. As always, it's all free).

What's in a name?

I hope the new name will just be easier for people to remember/think of the next time they see a question asked that they know is (or think may be) answered on my list, telling folks: "You should check out CF411."

I was torn about bothering with a new domain name. I didn't need to bother with my UGTV site: you can google that phrase and my site comes up first (even with Microsoft having launched their own UGTV), but I just figured it might be easier for people to reference in conversation, and some might naturally look for a domain name.

As always, I welcome contributions if you think of something (a category or a tool/resource) that I've not listed.

I'll begin blogging again soon to highlight more of the many categories.

Resources for getting into cloud computing

Interested in getting into cloud computing? Check out this blog entry with a compendium of links to other resources on the topic:

http://highscalability.com/useful-cloud-computing-blogs

By cloud computing, most think of Amazon EC2 and S3, but there really are more options, as shown in one resource listed on that entry.

I should note I didn't create that list. Someone else did. I don't generally do an entry just pointing to that of another (we often see way too many dupes in the CF blogosphere that way), but in this case it's a non-CF blog and therefore many readers here may not see it otherwise.

Also, some will know that I do like to do such resource lists myself, whether as blog entries of that sort, or as resources lists offered on my site, so I really appreciate this blogger's efforts here.

Hope that may help someone interested in the topic of cloud computing. (And yes, if someone would ask if this might be a good topic for the Online ColdFusion Meetup, it would be, and we've had a few sessions on the topic. You can find them either by doing a search for "amazon" on the UGTV site (which has more than just Meetup recordings, of course) or by scanning the list of all previous CF meetup recordings.

Beware: you could be missing news of some CF technotes

I thought some others might be concerned about something odd I just noticed, regarding the "recent CF technote" feed I just blogged about. I'm noticing that several of these "recent" technotes (even a couple months old) don't show up on the pages that purport to list all the CF technotes! Yikes. That means that if you're not following the feed, you may not otherwise have any way to know that there are new tech notes.

And sadly, the feed lists only the 10 latest, so there may be others you could have missed out on if you've not been getting the feed. What's up with that?

Perhaps the HTML page is just out of synch with the feed but then I'd wonder where the feed is getting its source information? and why isn't the technote page updated immediately with that same info?

Here are a couple of examples that show up (as of today at least) on the recent CF technote feed list but do not show up on the page listing technotes (more on this below):

I couldn't find any HTML page that listed those (and links to them) on any of the following expected pages.

Not on the Hot Fixes page

Curiously, all three offered a link back to the CF 8 Hotfixes page, but they're not technically hotfixes. Anyway, to my point, they're not listed on the hot fixes page.

(I'll say, for those worried most about hot fixes, that all the technotes I saw listed in the "recent feed" that really were hotfixes are indeed listed on the hotfixes page, so it seems that's kept udpated.)

Not on the Tech Notes page(s)

But the above are indeed technotes, and could be important to some, yet they are not listed on the pages that purport to list CF technotes: the CF Support page and the CF Technote Index page have no mention of these. (Indeed, that 2nd technote index page seems quite old, mentioning nothing of CF8 on it.) These are where I'd expect they should be listed, so it seems that these pages are not being kept updated.

And it's not like the technotes above from the recent feeds are really that new. The one on the ServerMonitorUI.swf, for example, is from May. It should be listed on the technotes page by now, shouldn't it?

Or if it's that these pages aren't meant to be the one all-encompassing list of all CF technotes, then what is?

Not found via searching

Just to make sure I wasn't missing some other meta-list of CF technotes, I used the Adobe site search, and even Google and Yahoo, to search for pages referring to the page titles above. I couldn't find any pages that had these listed. I could only find the individual pages themselves (in other words, short of the feed, I'd only find them by searching for them directly).

The problem restated: any solution?

So again my point is: the recent feeds page has technotes that are not offered in any list anywhere else on the Adobe site. Shouldn't a feed supplement a page that otherwise has the info? Does it make sense that if you don't follow the feed, you have no other way of knowing that the page exists (short of lucking out on finding it via a search on the topic)? Some of us would like very much to be able to always find and review a list of all known tech notes. The pages referred to above would seem by most to be expected to do that, but clearly they don't.

And given that the feed only shows 10 entries, the problem gets worse as new entries are added to the feed. What about those who have only just learned of it? How are they to know of items that are just old enough to no longer be listed on the feed?

Maybe someone needs to set up a page that saves the feed data. (There are other pages that show what's coming from the feed, but when the feed changes, they do too.) I'm talking about something that captures the feed output and keeps old entries while adding any that are new. But should we have to do that?

Any way to get the feed to list more than 10?

Finally, in the meantime, since the "recent feed" stops at listing 10 items, does anyone know a way to get it to list more? That would help us to find more that we might otherwise have missed (and would certainly aid in a tool to capture as many as we can).

I tried adding "?entries=20", as a guess, but to no avail.

Get your fill/feeds of Adobe ColdFusion Technotes, Hotfixes, Security Bulletins, and articles

Ever wish you could be notified when there's a new CF technote, hotfix, security bulletin, or DevCenter CF article? You can be, whether via your favorite RSS reader or by email (more below). There are feeds for each of the following:

Don't have an RSS feed reader? Get them by email

If you don't have an RSS feed reader, or you simply prefer to receive such things by email, you can. Check out the various RSS-to-Email tools (all free) which I list in my category, "RSS to Email Tools", in my list of over 100 tools and resources for CFers.

Adobe Feeds for Other Products

If you're interested, you can find many other feeds across all Adobe products at http://www.adobe.com/support/rss/.

Beware of older CF feeds

One last FYI: you may find reference on the web to the following old technote URLs, which do still work but have not been updated since CF 7, such as http://weblogs.macromedia.com/product_feeds/archives/coldfusion/index.rdf and this "ColdFusion news" feed.

Tools and Resources for CFers, Part 8: CFML Documentation/Help Tools and Resources

Today's first category from my Tools and Resources to Consider for CF developers is from the Resources section, and it's "CFML Documentation/Help Tools and Resources".

CFML Documentation/Help Tools and Resources

While the Adobe docs are the best source for CFML documentation, there are online versions of that both from Adobe and others, providing access to the docs in various ways. Please note, though, that while most of the other resources show only the CFML reference, the actual Adobe docs contain more than just the CFML Reference, including a Developer's Guide, Installation Guide, Administration Guide, and more. See the Livedocs for more on those.

About this series

This entry is part of an ongoing series, sharing each of the 100+ categories and the tools and resources I (and others) have identified. They're designed to answer the questions we hear, like , "does anyone know of tools or resources to help with ...?"

I've decided to start offering each category here as a blog entry, to give the list more exposure and to make sure I'm not missing anything. For now I'm offering each day one list from the resources and then another from the tools categories. To see the list of all categories, see Part 1 of this series. I may in the future offer an RSS feed of any updates made to the list.

I hope people will get great value out of the lists, here or on the tools and resources page. Please try to remember to point the list out to people you see asking for these kind of tools and resources. Thanks.

Additions/Corrections

The tools/resources list is a perpetual work in progress. I definitely welcome additions or corrections to it. If you have any to offer, you can leave them here as a comment on this blog entry and I'll move them to the list on my site.

BTW, before you offer an update here, please do check the category on the real list. I won't be coming back here to update these blog entries to sync them if I add new items to the real list.

Next up later today will be CFML Caching Tools.

Tools and Resources for CFers, Part 6: CFML Conferences

The following conferences have some, if not an entire, focus on ColdFusion and CFML.
  • Adobe Max, organized by Adobe (location varies)
  • cf.objective(), organized by Jared Rypka-Hauer, et al (Minneapolis-St. Paul, MN, USA)
  • CFDevCon, organized by Russ Michaels (London, England)
  • CFUnited, organized by Michael Smith et al (Washington, DC, USA)
  • Scotch on the Rocks, organized by Andy Allan, et al (Edinburgh, Scotland)
  • Spring
    , organized by Dave Hannum, et al (Athens, OH, USA)
  • WebDU, organized by Geoff Bowers, et al (Sydney, Australia)
  • WebManiacs, organized by Steve Drucker et al (Washington, DC, USA)
  • See also Teratech's list of Upcoming CFML conferences

About this series

This entry is part of an ongoing series, sharing each of the 100+ categories and the tools and resources I (and others) have identified. They're designed to answer the questions we hear, like , "does anyone know of tools or resources to help with ...?"

I've decided to start offering each category here as a blog entry, to give the list more exposure and to make sure I'm not missing anything. For now I'm offering each day one list from the resources and then another from the tools categories. To see the list of all categories, see Part 1 of this series. I may in the future offer an RSS feed of any updates made to the list.

I hope people will get great value out of the lists, here or on the tools and resources page.

Additions/Corrections

The tools/resources list is a perpetual work in progress. I definitely welcome additions or corrections to it. If you have any to offer, you can leave them here as a comment on this blog entry and I'll move them to the list on my site.

BTW, before you offer an update here, please do check the category on the real list. I won't be coming back here to update these blog entries to sync them if I add new items to the real list.

Next up later today will be CFMAIL Replacements/Enhancements.

Tools and Resources for CFers, Part 4: CFML Certification Preparation Resources

As some may know, I keep a list of over 700 tools and resources of interest to CFers, broken into more than 100 categories. I've decided to start offering each category here as a blog entry. To see the list of all categories, see Part 1 of this series.

Today I'll jump from the tools section of the list back to the resources section. This entry is about CFML Certification Preparation Resources.

I'd like to ask that we don't use this blog entry as a place to reopen up the old debate about the value of certification. I'm just point out resources, not judging the value of certs (or the resources). Please fight the urge... (I'm betting someone with a short attention span will have skipped this text and will do it anyway.)

CFML Certification Preparation Resources

The tools mentioned here are still only oriented toward CF 7, so if you're looking for CF8-specific information, the best bet is the CFML documentation.

Additions/Corrections

This tools/resources list is a perpetual work in progress. I definitely welcome additions or corrections to it. If you have any to offer, you can leave them here as a comment on this blog entry and I'll move them to the list on my site.

BTW, before you offer an update here, please do check the category on the real list. I won't be coming back here to update these blog entries to sync them if I add new items to the real list.

About this series

This entry is part of an ongoing series, sharing each of the 100+ categories and the tools and resources I (and others) have identified. They're designed to answer the questions we hear, like , "does anyone know of tools or resources to help with ...?"

Someone may ask why I'm blogging each of these categories, when they're available online anyway. It's just that, through aggregation and feeds, blogs present a way to reach a wider (and new) audience who may not otherwise come across the list of tools and resources. This also widens the pool of eyes for possible updates to the list. I want it to be as accurate and up to date as possible. I may in the future offer an RSS feed of any updates made to the list.

Otherwise, I hope people will get great value out of the lists, here or on the tools and resources page.

Tools and Resources for CFers, Part 2: CFML Blog Aggregators (and bloggers)

As some may know, I keep a list of over 700 tools and resources of interest to CFers, broken into more than 100 categories. I've decided to start offering each category here as a blog entry. Again, to see the list of all categories, see Part 1 of this series.

Tools and Resources for CFers, Part 2: CFML Blog Aggregators (and bloggers)

There are literally hundreds of CFML blogs. Some are popular and known by most, while some less popular ones may well offer some hidden gem. Rather than try to list them all here, and indeed rather than you having to read them all, the following aggregators focus on CF-oriented blogs.

Some blogs are in all the aggregators, but it's worth keeping an eye on more than one. I provide as well a link to the list of all CFML blogs that each aggregator follows. This way, you can find out all the folks who blog about CF.

You can always find the latest version of the list above at the official site, in the category CFML Blog Aggregators (and bloggers)

Again, if you're looking for a list of all CF bloggers, note that there is no one list, but again each of the aggregators above offers a list of the blogs that they aggregate, and I've offered the links to those lists above.

Additions/Corrections

This is a perpetual work in progress. I definitely welcome additions or corrections to this list. If you have any to offer, you can leave them here as a comment on this blog entry and I'll move them to the list on the site.

BTW, before you offer an update here, please do check the category on the real list. I won't be coming back here to update these blog entries to sync them if I add new items to the real list.

About this series

This entry is part of an ongoing series, sharing each of the 100+ categories and the tools and resources I (and others) have identified. They're designed to answer the questions we hear, like , "does anyone know of tools or resources to help with ...?"

Someone may ask why I'm blogging each of these categories, when they're available online anyway. It's just that, through aggregation and feeds, blogs present a way to reach a wider (and new) audience who may not otherwise come across the list of tools and resources. This also widens the pool of eyes for possible updates to the list. I want it to be as accurate and up to date as possible. I may in the future offer an RSS feed of any updates made to the list.

Otherwise, I hope people will get great value out of the lists, here or on the tools and resources page.

Tools and Resources for CFers, Part 1: Now over 100 categories

As some may know, I keep a list of tools and resources of interest to CFers, to help you answer the questions, "what tools/resources exist to help with ...?" I started it several years ago but update it constantly, and it now has over 700 tools and resources in over 100 categories. I've decided to start offering each category as a blog entry. Below, first, are the 100+categories, to give you a heads up of what's coming.

The Categories

I've split the list into Resources and Tools. Sometimes it's not clear how best to categories some subjects, such as CFML Frameworks, CFML Engine Alternatives, Monitoring Tools/Services, Testing Tools/Services, Time Tracking/Invoicing Tools/Services, and Web Site Design Repositories, to name a few.

Again, I'll be offering here a blog entry on each of the lists as part of this series.

I definitely want to hear of any possible editions or changes. Otherwise, I hope people will get great value out of the lists.

PS Of course, don't miss Brian Rinaldi's excellent list of open source CFML products and projects. I don't limit mine to just things written in CFML (nor indeed just open source), and of course I show more than just tools but also resources. For those interested, I discuss the differences, and indeed how I link to his list often from within mine, in a section of my list. They complement, rather than compete with, each other.

How can I process Excel files in CFML? Let me count the ways

Most of us have seen over the years many requests and many ways to process (read or create) Excel (.xls) and other spreadsheet files. In fact, there have been so many different ways (some simple, some powerful; some new and some quite old) that I fear some may do a quick Google search and try the first thing they find. Sadly, what works for some may not work for all.

One place to list all the approaches

I don't recall ever seeing any single listing of all the possible ways to do CFML to Excel integration, so I decided to create one. I've created a new section in my Tools to Consider for CFML developers on the topic of "Excel File Processing Tools".

You'll see I've gathered a range of articles and tools from over the years showing how to do CF-Excel integration (both directions) any of several of the following ways (the links go to the section within my tools list on this topic):

  • You can easily create them using HTML tables and CSV generation (as well as read them using CSV)
  • You can create them with the more powerful XML-based approach
  • You can create and read them using Java-based APIs like POI, JExcel, and jXLS
  • You can create and read them using COM and now in CF8, .NET
  • You can read them using ODBC and JDBC drivers
  • Let's not forget also that you can create them using the Report Builder in CF7 and 8, which can output as Excel
  • And finally there's the old Excel Web Query feature for populating a spreadsheet from a CFML request

In the listing, I offer dozens of links to articles, blog entries, downloadable tools, any relevant CF docs, and more, all broken down by the approaches listed above.

Different Strokes for Different Folks

So you see, there are not only different solutions but different needs (create a spreadsheet CFML, read one into CFML, or populate one within Excel from a CFML request). It seems helpful to gather a single resource to organize them all and help people decide.

I need your feedback

So let me know what you think of all this. Did I leave out any other important approaches? I'm not claiming to "know it all". This is just a result of some research I did this morning (and/or recollection from past experiences). I'm sure I could have missed something. Certainly I know I'm not listing *all* possible references on each of the subjects. I just wanted to give folks something to start with, but I'm certainly open to adding any useful references or tools that I left out. Please leave a comment below.

Update: Indeed, already, in response to a comment, I've tried to make more clear the fact that I'm not just talking here about creating spreadsheets from CFML but was referring to reading them as well. That's why I chose "processing" in the title, and I referred several times to "reading them", but to make it stand out, I've bolded all the references to reading them.

More important, because it seems he had missed the 2 links to the lists where I offer more details, I've also changed the words in the list above to link into the discussion of the topic in the tools list. Hope that helps avoid people missing the real point of the listing. I was torn about just offering the listing itself as a blog entry and went with this approach instead of a summary that points to the details. I know some don't like really long blog entries. Also, listing them in the bigger tools list seemed helpful, but I may split it out into its own file. We'll see.

Not just about Excel or even Office

BTW, one may argue that I could have a generic section on processing all sorts of file types (or even just all kinds of MS Office) file types, but there are so many requests for Excel file processing specifically, and so many approaches/tools to suit those needs, that I just figured I'd start out with this and consider other filetypes later (and may rename the section then). It's also certainly true that most of the techniques/tools shown here can be used with any spreadsheet tool that reads xls files or processes CSV/HTML table files in a similar way (like OpenOffice).

Update

Again, note that since creating this blog entry, I may have updated the section on this in my CF411 tools list, "Excel File Processing Tools". Be sure to check that out to see if there are still more new options.

More Entries

BlogCFC was created by Raymond Camden. This blog is running version 5.005.

Managed Hosting Services provided by
Managed Dedicated Hosting