[Looking for Charlie's main web site?]

Do you blog? Do you identify yourself on your blog? Please do!

Note: This blog post is from 2006. Some content may be outdated--though not necessarily. Same with links and subsequent comments from myself or others. Corrections are welcome, in the comments. And I may revise the content as necessary.
I'm so surprised by how many blogs I come across where the blogger has not identified themselves in any way: no name, no bio, no email link. I suppose some may do it intentionally, as some form of anonymity (and I do realize why some may not want to list their email), but I honestly think most just had't thought about whether to list their name or anything more.

I'd like to put out a plea to at least consider listing your name, either in your title ("clever name - by blogger name"), or just in some text below it, or in your toolbar. Better still would be a small bio, or a link to a page that has one. (Maybe it would help if blog software offered an "about" pod that made you think of it more readily.) A photo would be nice, too. And for reasons (and with cautions) I propose below, I recommend you also list your email address.

Why bother with name, bio, and/or email? Because it's in your interest!

There are a couple of reasons to consider it, and they help both you and your readers.

First, as for listing at least your name, a good reason is simply to associate yourself with all the value you create by your blog. Why not get credit for your work? Plus, many would really like to know who you are. (And if your blog software puts a tiny "by" under each blog entry, I'll argue that's not enough. I've missed that myself on more than one site.) Again, whether in the title, below it, or in the toolbar, just put it somewhere! :-)

As for a bio, again, even just a couple sentences about yourself (below the title or in the toolbar) can really personalize the blog. Don't assume everyone knows your background, even if they know you by name. Many readers will appreciate knowing more about where you work, where you're from, etc. Such details can also lend perspective to what you write about. (For instance, if you're a fan or a foe of something where that would color all of your posts, it can be helpful for people to realize, "oh, he works for them|on that open source project|with that tool| etc.)." Let people know where you're coming from.) But at least consider offering some background, even a single sentence.

Finally, as for your email address, someone may want to contact you to offer feedback that's not specific to a post. They may want to offer you work (and not want to announce that in a blog comment)--and even then, which post should they enter such a generic note to you in, anyway? Keep in mind that not all readers realize that you get notified of all comments by email, so they may give up trying to contact you.

Heck, they may even have trouble posting a comment, and therefore need *some* way to contact you. I've certainly seen that before.

But isn't it bad to post your email address online?

OK, I realize you may not want to offer your email, as spambots will capture it. But you've probably noticed more and more people listing their addresses as "name (at) domain". The thinking is that people can figure that out, but spambots (at least the dummer ones) will not. I'll grant that they'll eventually catch on. You just need to way how important the benefits are against the pain of more spam. (You do have a spam catching program, I hope? I love the one I use, Cloudmark Desktop. No, it's not free, but there are certainly many of them you can check out.)

Be careful using that (at) trick with Mailto links
If you do decide to use the (at) approach, but you also offer a mailto link, like:

be careful: you need to list the "anti-spammer" address in the mailto (used to launch the email) as well as between the a tags (as shown to the user). Spambots grab all the text on your page, not just what's "visible". This is a pain, because then in the email that's opened the user must notice that you've done this and change it, or the mail will fail to get to you. What I do is explain to the user that by forcing some body text into the mail that's opened. Did you know that was possible?

<a href="mailto:charlie (at) carehart.org?body=please change the spam-fighting email address format I filled in for you, replacing the (at)!">charlie (at) carehart.org</a>

And for those who maybe already knew about it, did you know that you could also use:

<a href="http://tipicalcharlie.blog-city.com/forcing_a_line_break_in_an_html_email_link.htm">force a line break within such content in an HTML email link</a>
(this is from another blog of mine, typicalcharlie.com, which is for generic, non-CF tips)

So please, bloggers, step up and identify yourself. We'll all appreciate it!

Suffering CPU/DB/memory problems in CF? Spiders, monitor pings, and more may be to blame

Note: This blog post is from 2006. Some content may be outdated--though not necessarily. Same with links and subsequent comments from myself or others. Corrections are welcome, in the comments. And I may revise the content as necessary.
If you're trying to get to the bottom of high memory or CPU use or database contention on CFML servers, you may be missing a seemingly innocuous but deadly invader (or many of them, really. Many more than you may ever dream.) If you're focusing only on "what are my long running requests?" or wondering "Why does CF have a memory leak?", you may be looking at the wrong problem.

What if the problem isn't really a "leak" at all, nor "poorly performing code", nor "CF being unable to scale", but instead what if it's really all due thousands or millions of page requests, which (worse) are likely creating (unexpectedly ) thousands or millions of sessions and client variables, each day? They may even be something you're causing (but more likely not). It's a pernicious problem that many never even fathom, or may dismiss too readily.

Curious to hear more? Read on.

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

UGTV: Now offering dozens of video presentations from your favorite presenters

Note: This blog post is from 2006. Some content may be outdated--though not necessarily. Same with links and subsequent comments from myself or others. Corrections are welcome, in the comments. And I may revise the content as necessary.
When I announced yesterday the repository of recorded video presentations I labelled UGTV, I may not have made it clear enough that these are recordings from dozens of your favorite presenters. It's not just my own presentations. Indeed, right now I don't have any posted myself. :-) There are now dozens of presentations, so come take a look.

I've also since updated the look and feel, to add searching and paging, in addition to the sorting it already offered.

I also want to reiterate that I welcome (and encourage) folks to add more links to other recorded video presentations. Indeed, I hope that CFUG managers will keep this in mind as the place to post notices when they record a new presentation. The form is very simple, asking only for the title and URL for a new presentation to post.

Visit the repository at UGTV.

FusionDebug Part 4 - Tips and Traps

Note: This blog post is from 2006. Some content may be outdated--though not necessarily. Same with links and subsequent comments from myself or others. Corrections are welcome, in the comments. And I may revise the content as necessary.
While the first 3 entries in my FusionDebug series of posts have been making the case for using the tool, the fact is that like any tool there are tips and traps that you'll do well to note. In this entry, I share several of these from my experience. First I'll share a few tips on using the tool, then a few on setup of the tool.

Tips and traps on Using the Tool

Favor "Step Over" versus "Step Into", when on tags/functions that don't open files

As you are at a breakpoint about to step to a new line of code, I'll recommend that you use "step over" in favor of "step into". The latter should be used only on tags like CFINCLUDE, CFINVOKE, CFC method calls, and other tags/statements that would open a new file. It allows you to follow the flow of control into that new file (opening it, and stopping at the first line of code within that file.)

Why would I recommend you do not use it on other tags and statements? Well, recall that CFML is built on Java underneath. I've found that sometimes "step into" will cause the Eclipse debugger to take a longer time while stepping through the underlying Java of a given tag or statement. Also, some CFML tags are built in CFML.

FusionDebug doesn't show you the underlying lines being stepped over in such Java or CFML files (it's configured not to by default), but the execution will take longer than if you had used "Step Over". I've found the problem happen with tags like CFDIRECTORY and CFDUMP as well as createobject() and findnocase(). When it happens, things will just seem to be hung, but be patient.

I'm stepping, but nothing happening

Related to the above, if you are doing stepping and things seem hung, for whatever reason, with nothing seeming to happen, watch for the term "Stepping" in the Stack Trace pane (at top right). That just means that it's working, and taking some time to do whatever you've asked. Simply be patient. Control should come back.

"I don't see the 'current instruction pointer' moving while stepping"

This is quite a gotcha, which threw off myself and the FusionDebug guys. In one circumstance, as I hit the "step over" and "step into" buttons, nothing seemed to be happening. The "current instruction pointer" wasn't changing. I thought it wasn't stepping at all.

I looked at the "stack trace" pane, and rather than show "stepping", it did indeed show that the execution was proceeding from one line to the next as I'd hit the buttons.

It turned out to be a problem related to my having opened the file using the file system, rather than via an Eclipse "Project". The docs explain how to open files "properly". Forewarned is forearmed.

Be careful holding breakpoints within CFLOCK or CFTRANSACTION tags for too long

You may not think of or notice this, but if you hold a breakpoint or do stepping within tags like CFLOCK or CFTRANSACTION, you could have a negative impact on other users in your environment.

In the case of CFLOCK, you could keep someone else (who's trying to obtain that lock) from being able to get that lock.

In the case of CFTRANSACTION, you could keep someone (even outside of ColdFusion) from being able to read or update the database you are updating within the CFTRANSACTION. The degree of impact will be influenced by the ISOLATION attribute you use (or its default) in the CFTRANSACTION.

If a runtime error occurs, FD will also seem to stop

Something to keep in mind is that if you find FusionDebug just seem to stop debugging, the problem may be that you've hit a runtime (or even compile time) error in the code, which will cause CF to send an error screen to the browser but will not send anything to the debugging stream that FusionDebug is watching. As such, FusionDebug will just lose its connection to the running program.

If debugging just stops, CFMX admin's "request timeout" may be killing the page

It's easy to forget that when you're in the midst of a debugging session, you're causing the page to take likely several seconds (perhaps even minutes) to run to completion. Recall as well that CFMX has an admin setting called "Timeout Requests after x seconds" which if enabled will cause ColdFusion to detect and halt a page if it takes longer than that time to execute.

Naturally, if it is enabled and you debug a page for longer than that duration, ColdFusion will intercept the request and send an error to the browser. In that regard, this is similar to the previous issue.

Something to noticed, however, is that this "timeout requests" setting is not enabled by default in CFMX 6.1, while it is enabled by default in CFMX 7. As such, this problem of timeouts will more likely happen in CFMX 7, though again either can be configured to support it. Just be aware.

You could also override this timeout setting in a given page by using the CFSETTING tag with its RequestTimeout attribute. (You can of course also affect an an entire application by placing that in the application.cfm.)

If breakpoints fail to fire as expected

If you have any other sort of problems with breakpoints firing, note that the FusionDebug folks have written a tech support article on the topic.

Tips and Traps on Setup

Beware of the impact of debugging on shared servers

Though you certainly can turn on debugging against a central shared server (such as test, staging, or even production), you should be aware of the potential impact.

As has been discussed before, when any user requests a page that's being debugged and their execution would hit a breakpoint, the page will appear to them to be hung until the debugging developer steps through the code to completion.

Beware of the impact of the JVM config changes

As discussed in the FusionDebug User Guide, in the section on setting up tool, one of the changes you make in the jvm.config file is to remove the UseParallelGC option. That change in the garbage collection process could have an impact on the running of the server.

This is one more reason to think twice about running the tool on production.

Understanding the "ports"

When you configure that jvm.config entry, another modification is to name the port that you want the JVM debugging feature to broadcast on. Of course, you want to point to a free port when you name that (you can use "telnet servername portnumber" at the command line to determine if a port is free).

But another point to note is that this port is NOT something you then use when you request pages, nor should it be specified as the value of your web server. Instead, this port number is then used when setting up the FusionDebug interface within Eclipse. All this is well explained in the User Guide.

Using FusionReactor? (Intergral's CF monitor tool)

If you are using FusionReactor, which is Intergral's CF monitoring tool, be sure to disable its "crash protection" feature, while doing debugging. The two features are not compatible.

Summary

Those are a few gotchas. I hope they help you. If you hit others, again, I recommend you check out the FusionDebug web site. They have the docs, faqs, articles, Captivate videos, and more. Most important, they offer free support at [email protected].

I've just been in the "CF Hot Seat" on the ColdFusion Weekly Podcast. Come listen.

Note: This blog post is from 2006. Some content may be outdated--though not necessarily. Same with links and subsequent comments from myself or others. Corrections are welcome, in the comments. And I may revise the content as necessary.
Here's fun news. This week I was the guest in the "CF Hot Seat" on the ColdFusion Weekly Podcast. It was a real treat, especially being the show's 25th ("anniversary") episode. As another treat, those who haven't listened to the show from the beginning will learn during the interview just who was the very first voice heard on the very first episode of the podcast. (If you can't wait, give a listen to the first show.)

In the interview, the focus is FusionDebug (yes, my topic of choice in recent weeks). It's a 30 minute interview, as we had planned. Matt and Pete were great, and I really enjoyed the opportunity. I certainly look forward to it again, and was tickled to hear them mention on the show (after the interview) that they'd be open to having me back in a couple of possible ways.

The interview takes place from about minute 26, though I recommend you listen to the entire podcast. I'm a huge fan of all the CF-focused podcasts, as I mentioned them on the show--and again, Mark Kruger, where's the "muse"?! :-) Anyway, I hope folks are listening to the various CF-based podcasts. I'll share some more thoughts about them and about listening to podcasts in general in a future note.

I have to point out that sadly, during my interview, there's a very unfortunate problem of a "hiccuping" sound that lasts for about 20 seconds on an interval of about every minute for a few minutes, a couple times during the show. I'm working with the guys to see if we can correct that, and I've even pulled in the able assistance of Bruce Williams, host of the "Building the Pod" show about Adobe Audition. He's not had any solution yet. If anyone else is open to the challenge, here's a small clip, and you can hear the problem after 10 seconds. I'd welcome any thoughts.

Of course, I also welcome feedback on the interview itself.

UGTV is on the air. Watch CF presentations from your home/office or CFUG.

Note: This blog post is from 2006. Some content may be outdated--though not necessarily. Same with links and subsequent comments from myself or others. Corrections are welcome, in the comments. And I may revise the content as necessary.
If you've missed past CF presentations at CFUGs and online meetings, did you know they may have been recorded? Well here's good news: I've now created a repository to hold links to all such recorded presentations, across any and all CFUGs (and I'm open to talks beyond CF). Come see them (and add any new ones) at a site I've named "UGTV". :-) It's available simply as http://carehart.org/ugtv/.

If you missed my note Friday on "Is your CFUG taking advantage of the free access to Breeze for Adobe user groups", I talked about how Adobe UG managers can use a free Beeze (a.k.a Adobe Connect) account for bringing in remote presenters, allowing remote attendees, and creating such recordings.

The UGTV site also points out existing lists of recorded presentations that focus on specific "venues". I hope that this site can be a repository of any and all venues--even personally recorded ones as some may start to create. Think of is as UGTube! (I actually found that the domain name is available, but decided not to use it for fear of tradename infringement.)

The site is a work-in-progress. For now, it's functional, allowing you to both list, sort, and add presentations (yes, anyone can add presentations. Please do!)

I'll evolve the site further, for sure to improve its interface and functionality.

For now, please spread the word both for those who want to watch (from home/office or in a group at a CFUG) and those who might be able to add new presentation.

And let me know what you think, below. I welcome your comments (though again, if commenting on the interface, note the comments on the page where I list plans I already have).

Ever wanted to learn more about SysInternals tools? Two day sale on book, $10

Note: This blog post is from 2006. Some content may be outdated--though not necessarily. Same with links and subsequent comments from myself or others. Corrections are welcome, in the comments. And I may revise the content as necessary.
Ever wanted to learn more about SysInternals tools? There's a two day sale from Syngress on the book, Winternals, for just $10. It covers their FileMon, Regmon, Process Explorer, ERD commander, disk and other troubleshooting tools. The best used price at the moment on Amazon is $21+, so seems a great deal. Just bought mine.

http://www.syngress.com/catalog/?pid=3820

Sale ends tomorrow (Sep 30).

FusionDebug - Great news: discounted pricing and community edition announced today

Note: This blog post is from 2006. Some content may be outdated--though not necessarily. Same with links and subsequent comments from myself or others. Corrections are welcome, in the comments. And I may revise the content as necessary.
Here's great news for FusionDebug fans--and those who've complained about the price. Check news of discounted pricing (starting at $239) and even a new community (non-commercial) edition at $99! Awesome news. The guys from Intergral are great at listening to customers! :-)

See the details at: http://www.fusion-reactor.com/fusiondebug/buy.html

Note that (according to the footnotes on the page) that the special pricing and community edition offer end on Oct 31. Get it while it's hot!

And to learn more about FusionDebug, see my previous entries on FusionDebug.

Is your CFUG taking advantage of the free access to Connect for Adobe user groups?

Note: This blog post is from 2006. Some content may be outdated--though not necessarily. Same with links and subsequent comments from myself or others. Corrections are welcome, in the comments. And I may revise the content as necessary.
One of the benefits of being an Adobe User Group (CFUGs and others) is that the managers have access to a free Acrobat Connect account that can used to have remote speakers and/or attendees, and to record your presentations (so others local or remote can watch what you've had presented).

Many CFUGs don't seem to be taking advantage of the feature, so I wanted to point it out. Your manager may not know about it, or may have forgotten, or just may not be seeing the benefit. I share this to help you inform and encourage them. (This account is only for use with user group related activities.)

Let me expand on each of the reasons to consider using it.

Gives you access to remote presenters

The most obvious to some is that it permits a group to have a presenter who's not local. Many CFUGs have a hard time getting presenters from within their ranks. Some do get remote presenters to come live, such as if they're in town (which is always nice), but at least a Connect-based presentation is better than having none. It can also inform you of techniques from specialists holding expertise just not available within your group.

Such Connect-based presentations have been very successful. Not always perfect (audio, video, and bandwidth problems can play up), but successful far more often than not judging from those who try it once and then do it again.

Permits you to welcome attendees who might not normally come

Yet another benefit, whether you have a remote presenter or not, is that it can also be used to let others in your group (or even outside your group) see the presentation without being there. Yes, this is a two-edged sword, in that you don't want to cannibalize your local attendance by people saying, "I'll just stay home". We all know that being there is very important, so one wouldn't want to always substitute "watching" for showing up.

Still, there are some who for family reasons, or due to other commitments, can't make some or even all the meetings. This is a nice way to connect them to your group (and promote whatever other services your group may offer).

Naturally, this also opens the door to folks who aren't even local to your group to join in. There are ways you could limit who can participate, but the general thinking among most groups is that you should just let anyone in.

I'll talk about recording and watching recorded presentations in a moment. But this idea of having lots of online attendees brings up a point worth noting.

Sidebar: Challenges of a large number of online attendees

You may wonder, "should I worry at all about how many online attendees join in?" Yes, you might want to be aware of a couple of points. First, the Connect account that is shared is designated to have no more than (I think) 150 total participants at once, across all groups that may share it at once.

Second, when you have lots of online attendees, they tend to engage in chat, which may be a challenge for your presenter to keep up with. I do believe that the person running the Connect meeting can turn off the chat. I'm pretty sure it can be switched on at the end of the meeting (or when desired during the meeting), to open the floor to questions. Such online chat is a two-edged sword, as it can give detract focus from your local attendees. Like any tool, all must use it responsibly.

Recording your presentations, whether a local or remote speaker

Another really nice benefit of using the Connect account (even if you have no remote attendees) is that you can use Connect to record your presentation--even if you have only a local presenter. That's not something that many have yet thought of.

These recordings can then be made available for anyone to watch. They are saved on a server at Adobe (part of the account that's offered). Once recorded, you can share the URL of that recording with others in your group (such as those who missed the meeting, or want to see the presentation again), as well as those outside your group. There's no cost to watch the presentations, nor does is there any limit for the group on how many people can watch the recording. As far as I know, there's also no time-limit for how long the recorded presentations remain available at Adobe.

Speaking of these recorded meetings, I've long been meaning to create a repository for such, and writing this post finally motivated me to do it. It's now available at http://www.carehart.org/ugtv/. I may break it out into its own domain eventually, if it takes off (ugtv.com and .org are already taken). I'll also share the link with Ray to add to his nifty CF portal, where he links to such CF resources.

As far as the issues above about having too large a number of online attendees, or a concern over cannibalizing local attendance, note that you can choose in a meeting to not allow any remote attendees, and only offer the recording. That's your own call.

Showing previously recorded presentations at your meeting

One final benefit of these recorded Connect presentations is that you can use them as alternatives to live speakers. I mean, think about it, if you're viewing a presenter via Connect, it's not much different to just view such a presentation, recorded previously.

I know some may lament, "well if we can just watch the recording, couldn't we do that on our own?" I'll say, sure, you could, but would you? Do you? I know I have a really hard time getting around to watching all the available recordings that already exist. Just like we could also read a book or article or blog entry and perhaps hear all that a given speaker would say on any topic.

Yet still we go to the CFUG, both because we might not otherwise get around to reading up on the subject, and because we may never even think to in the first place. And of course, there's also the networking and camaraderie that comes from actually being at the meeting.

Those who know me know that I'm a huge fan of CFUGs, both learning from them and contributing to them. I've spoken to several dozen of them, many several times, over the past 7 years. I was also manager of the Atlanta CFUG in 2006-7 (and previously managed the Southern Maryland CFUG in 2002-2003). I offer this as one more way for the community to share and strengthen itself. I hope it proves helpful to many.

PS: The Virtual Online CFUGs

While we're on the subject of Connect-based presentations, note as well that there is a long-standing "virtual" meeting, called the ColdFusion Meetup, now run by myself and Ra Camden. It meets about monthly, and he often posts recordings of past presentations on the site. Ray had also previously started a new "Jedi Virtual User Group", with one meeting described here (if he has a link to all of them I'll change to that).

Getting access to the free Connect (aka, Breeze) account

If you're a user group manager, or want to encourage your manager to take advantage of these benefits of having remote speakers, attendees, or recorded meetings, the user group manager should contact the adobe user group program coordinators. All user group managers should know how to reach those folks. I'm just reminding you to do it. :-)

In the meantime, come take a look at my UGTV listing of previously recorded user group presentations, and add any that I'm missing.

Do you wish Breeze was less expensive? You got your wish: Adobe Connect. But look closely.

Note: This blog post is from 2006. Some content may be outdated--though not necessarily. Same with links and subsequent comments from myself or others. Corrections are welcome, in the comments. And I may revise the content as necessary.
Folks who have longed to use Breeze but couldn't afford it got great news today, in its rebranding today as Adobe Connect. Now starting at $39/month or $395/year, it makes breeze much more affordable.

Note that I say starting at because there are going to be two editions, with the full-featured version being called Adobe Connect Professional. Many will miss that in the early hours of this announcement, I fear.

Note as well that it's not released today, but will be in November, "as a free trial version through the end of the calendar year. The commercial release of Acrobat Connect, initially available in English, is expected to be available in early 2007," according to the press release.

The base version is limited to just one meeting room, and to a maximum of 15 participants, which is still fine for many needs. Further, it will NOT include audio (which means you have to use the phone and a conference call for audio), and it will not include the ability to record meetings (important for some), among other things.

Adobe outlines all the differences in a comparison of the two editions.

Still, the base edition does include screen sharing, chat, and more. And even for 15 people it compares very favorably to other solutions in that space, such as GotoMeeting, which I've long favored because of its more reasonable price. Breeze, or I mean, Adobe Connect, will give that a serious run for its money.

More Entries

Copyright ©2024 Charlie Arehart
Carehart Logo
BlogCFC was created by Raymond Camden. This blog is running version 5.005.
(Want to validate the html in this page?)

Managed Hosting Services provided by
Managed Dedicated Hosting