PHP Debugging is Better Than ColdFusion

Previously I talked about why debugging in ColdFusion can be difficult. ASP.Net has full debugging facilities, including breakpoints, variable watching, stepping, etc. (when using Visual Studio).

I decided to research the debugging scene in PHP. It appears that there are lots of options for debugging in PHP, and all of the above mentioned debugging features are available if you use the right tools. There is a debugger called DBG that offers break points, stepping, variable watching, on the fly variable substitution, and other features. PHPEclipse has some debugging features. And Zend's own IDE offers debugging.

As I said before, debugging is a huge weakness for ColdFusion, and I sincerely hope Adobe and/or the community comes up with a solution for this, sooner more than later.

Related Blog Entries

Comments
GROAN! thanx for the bad news/wake up call. I was afraid this might be the case.

a quote today from Aral Balkan (FlashAnt) seems to apply here too:
"Possibly the rarest commodity in our field currently is developer time (it definitely isnt development tools or competing technologies, which were flooded in)"

I don't want to spend ugly amounts of time bug fixing or maintaining products. Quality debugging tools really help.

Adobe, are you listening?
# Posted By barry.b | 3/28/06 4:12 PM
I totally agree. While I agree that Flex looks cool, I'd prefer they add a solid debugging API to CF before all this Flex integration. Just my 2 cents. :)
# Posted By yacoubean | 3/28/06 7:21 PM
Excellent post... we need this to be drummed from the valleys and the mountain tops. The two biggest needs in ColdFusion are meaningful IDE and debugging. (The IDE is where you would do the debugging from of course.) This is something that was left out of CF6+ that used to be there. Debugging was in CFStudio, but the Adobe lawsuit killed that. It is time for Adobe to drop some money back into the product NOW and give us our IDE back... (like investing in CFEclipse NOW...) and let us have debugging.

What would be even neater is for the company to build an new concept of a unit test that integrated with debugging! Imagine unit testing that stored the results in a database. Imagine those tests being able to plug into a system that watched the internal values of code!

The time has not come, it has passed to give the CF community back a targeted IDE that isn't just better than other CF options. It's time to realize we need something that competes with VS and Zend!
# Posted By John Farrar | 3/29/06 7:51 AM
Actually, the lack of a debugger in CFMX was nothing to do with any lawsuit. It was the result of when polling lots of CF customers to figure out what needed to be ported to CFMX, almost no one categorized the debugger as important. The debugger in CF Studio was very rarely used, and recreating it in CFMX and DW would have been a massive undertaking, so it was dropped. Should it be added back (perhaps exposed via Eclipse this time)? Maybe, that's something we are discusing, but no committments yet.

--- Ben
# Posted By Ben Forta | 3/29/06 10:56 AM
Yes... but since the CFStudio required you to map every path you were debugging to it was also true that most users were overly frustrated with the use of debugger. So I can see your point Ben. Yet the survey should not have eliminated this feature. (Of course CF is so much easier to code than other platforms were... and in CF5 the error messages were also better than they were in CFMX. Often the messages are still vague compared to CF5.)

Now granted... they have started to add some stuff to DW for debugging. But that only lets you see the top level. If you have structure it doesn't do the job. Again... debugging was rarely used because in CFStudio you had to configure it. In VB6, for instance, it just ran!

P.S. Did some looking and noted there are some super awsome features in other application debuggers! Even PHPEclipse has that built in. They also commonly are adding a "Docs" feature also.

This should be a CF 7.1 feature and it should be put out ASAP. This would be the start of showing that Adobe is interested in Developing CF and not just Supporting it! (Of course, don't forget that it will take an IDE to interact with it.)
# Posted By John Farrar | 3/29/06 11:21 AM
Mike Kelp's comment on Yacoubean's preious blog entry ("ColdFusion Debugging Can Be Painful") makes a valid point about IDE lock in. It doesn't bother me (or my boss who pays for the thing) but I certainly see his point (we all know everything Microsoft does is an attempt to lock systems into their platform - the plight of Resharper for VS2005 is a case in point).

CF is, to my eyes, different to this. It's been championed by the same people who promote real choice (eg: Sean Corfield espousing the virtues of using Apple and replacing every Microsoft product with something else).

CFEclipse, as an IDE, is also different. It's free. It's been made with dedication by Rob Rohan, helped by people like Spike and encourages input from everyone. I consider it part of the "open source view of the world".

"It is time for Adobe to drop some money back into the product NOW and give us our IDE back... (like investing in CFEclipse NOW...)"

Be careful. Using VS (and the plight of Borland as an alternative) as a role model may not give "real choice". IMHO, there's two arguments here: debugging hooks in the runtime AND Adobe making (or abetting) a quality IDE for rapid CF development.

Does Adobe really *need* to create an IDE for CF? And if they did and claimed it as their own sellable product, what would people think if they got just as greedy as Microsoft and tried the same tactics (IDE/runtime lock-in)?

Or just be "sugar daddy" to a chosen (free) one to get them up to speed?

or would they be better off just providing the hooks so *any* IDE can access the debugging features and let the market sort themselves out who that is?

IBM really stirred the hornets nest champoining the Eclipse project. Seeing Microsoft giving away full copies of VS2005 at WebDU shows just how much their product is worth...

one last point: I would accept nothing less than the features as in VS2005. Think of it as a benchmark. Otherwise it would be half-arsed and a waste of time.
# Posted By barry.b | 3/29/06 4:57 PM
Ben-I'm very glad to hear you guys are discussing adding debugging back go CF.

John-good point. If debugging was difficult before, there wouldn't be a lot of people asking for it in MX

barry-I think an API for debugging would be best, but even if Adobe only adds it to dreamweaver, and leaves CFEclipse and the others in the cold, I'd still be happy. I'd just fire up dreamweaver to debug when I needed it. :) It's better than nothing.
# Posted By yacoubean | 3/29/06 6:24 PM
I just had a thought: what if New Atlanta provided debugging hooks into blue dragon and supported the cfeclipse guys to get it all going...

...and Adobe with CF didn't?
# Posted By barry.b | 4/29/06 10:28 AM
yeah, I thought of that the other day. Of New Atalanta were to do that, I'd be very compelled to use BD.
# Posted By yacoubean | 4/29/06 10:33 AM
BlogCFC was created by Raymond Camden. This blog is running version 5.9. Contact Blog Owner