Just my comments on your list - sorry for no indenting, but quoting on
the HTML version of the list is a pain.

Some example topics I intend to cover include (in no particular order):

INTRODUCTION AND WELCOME

I definitely think this should come first.  ;^)

ABOUT/HISTORY OF COLDFUSION

You didn't mention how long of a presentation this is (but it's
obviously pretty long).  Also I think that your audience is going to be
hard - as you've described it you'll have both amateurs and pros -
difficult to balance.

In any case I would discuss, at least a bit, the history of the history
of CF.  For the early years the generational model works well, I think:
1st generation websites (billboard and business cards), second
generation (more content but static, beginning to be seen as valuable),
third generation (doing real work, dynamic seen as necessary for
business) and so forth.

Also, if it's appropriate for the audience I think that a basic
understanding of HTTP is essential to understanding this.  Just the
cursory coverage: how the browser talks to the server, what a request
is, what the limits are (statelessness for example) and, especially, a
firm description of "what happens where".

One of the most common questions asked by newbies is "how can ColdFusion
change a _javascript_ variable?" - I think this questions is a direct
result of not understanding HTTP.

APPLICATION ARCHITECTURE

I'd place this late in your plan - get the foundational elements out
first.  Also make sure to define very clearly the differences between
Application.cfm, the Application scope and the CFApplication tag - too
many people end up thinking that they're tied completely together (that
you can ONLY place a CFAPPLICATION tag in Application.cfm).

DATABASE BASICS

I might consider moving the DB stuff up front.  I think that many people
may find database stuff a bit easier to swallow at first.  Also by doing
this you can stay on CF as the topic for the rest of the time and not
break away from it.

COMPLEX DATATYPES

Deep, deep topic - don't forget access methods tho'!  Both dot notation
and indexed notation - it's another thing that a lot of newbie's miss
and they pay for it later.

I've found that diagrams help a lot - especially if they're dynamic.
Constructing visualizations of Array, structs, queries, etc out of
post-it notes (which allow you to "copy" and "move" data visually)
really helps describe the concepts behind pointers and such.

TO "#" OR NOT TO "#"

Good point to make.

RECOMMENDED READING

As you're doing this (and this is a personal bias) don't forget the
supporting tools and philosophies - especially usability (which should
also be useful to your non-CF programmers as well).

USING PERSISTENT VARIABLES

Not to toot my own horn, but I've got a large guide to a lot of CF
variable stuff that you may find useful here (long URL):

http://www.depressedpress.com/DepressedPress/Content/ColdFusion/Guides/V
ariables/Index.cfm

I've tried to collect all of the things I think are important to know in
that.  It's not perfect, but I'm proud of it.

THE FUTURE OF COLDFUSION

Is bright!

PROGRAMMING METHODOLOGIES

Great topic - I'm assuming you're talking about things like Fusebox and
such.  Don't forget (if appropriate) the more basic concepts: procedural
vrs OO and such.

COLDFUSION VS ASP, ASP.NET, PHP, ETC

I'd keep this low key and unbiased (if possible).  I always start
discussions on this topic with a general "They're all mature, usable,
versatile options and, in general, you can meet pretty much any need
with pretty much any of the tools"

I definitely wouldn't use the word "versus" in the presentation.  ;^)

Other things you might mention/cover:

How dependent web applications are on browser support/cross (browser)
platform issues.

The concept of "open source" as it pertains to CF (perhaps during your
discussion of the Exchange) which may include talking briefly about Blue
Dragon.

One of my favorite topics: CF Myths.  Especially if you have other
programmers there you'll have to face a lot of incorrect information.
Things like "CF isn't scalable", "CF is too slow for production work",
"CF is just a CMS/Interface Tool/Prototyping Tool/Whatever and not a
'real' programming language.

That's about it for now... sounds like you've got your work cut out for
you!  Good luck!

Jim Davis


[Todays Threads] [This Message] [Subscription] [Fast Unsubscribe] [User Settings]

Reply via email to