« Validation - Client or Server-side? | Main | The Cult of the NDA »

October 1, 2003

CFFORM - An Informal Poll

Yesterday I wrote about server-side validation and error handling versus client-side validation using JavaScript. I got some awesome comments, many of which contained some pretty valuable insight. Now on to a related topic: CFFORM.

From what I've been able to gather, you either love CFFORM or hate it. If you love it, you love it because it saves you time, and because you might not know JavaScript very well and would rather build applications and make money than take the time to learn a new language. If you hate it, you probably know JavaScript pretty well, and prefer your own way doing validation. What are your thoughts on CFFORM? If you like it, what do you like about it? If you don't like it, is it the implementation or the concept? In other words, if it were completely re-factored, would you consider using it, or will you always prefer to use your own code?

Posted by cantrell at October 1, 2003 12:16 PM

Comments

As I said commenting on previous post, we've effectively built our own library of form creation tags. CFFORM always seemed badly implemented, whether it's down to non-XHTML markup or clumsy JS.

Not bothered keeping up with whatever changes have come with MX, but we're a lot happier with our own tags. Maybe forms are too variable to make a CFFORM that'll please the majority?

Posted by: Gyrus at October 1, 2003 1:13 PM

I'm in the 'hate cf-form' camp.

It'd have to be a considerable refactor to ever make it in my should use too list. For that matter, the _required server validation is also not in my list.

Posted by: Calvin at October 1, 2003 1:17 PM

Place me in the hate CFFORM camp. It's fairly limited for most complex applications, so therefore, we use other "forms" of validation. However, like Calvin, a considerable refactoring would make me look at it again.

Thanks for asking!

Posted by: Michael Hazard at October 1, 2003 1:40 PM

Sounds like it's 3-0 on the side of "hate-it", or at least don't use it, so far.

I guess I'll make it 3-0-1. I don't ate it, but don't love it either. It seems to be a good thing for new JavaScript programmers, but isn't extensible enough that it can cover all the "custom" stuff that experienced programmeres use.

Posted by: Book Review at October 1, 2003 1:51 PM

I played with it once a few years ago and never bother to look at it again, unless there is a good reason to use it now that I'm not awared of.

Posted by: Vui Lo at October 1, 2003 2:01 PM

I love it, now that I can pass a regex for validation.

Posted by: Ben Forta at October 1, 2003 2:25 PM

I definitely don't hate it, but I agree with the others, it needs some upgrades. I still think Macromedia should buy Dan Switzer's qForms. Mixing the power of qForms and ease of cfForm would rock the house.

Posted by: Steve Nelson at October 1, 2003 2:26 PM

No discussion of CFFORM would be complete without touching on the hideous Java applets that drive cfgrid, cfselect, cfslider, cftextinput, and cftree. Why these notoriously flakey widgets are still in CF is beyond me, legacy apps notwithstanding. Replace them with Flash controls that _actually work_ as soon as possible!

Posted by: David K at October 1, 2003 3:10 PM

I don't hate CFFORM, but never use it. JavaScript form validation is easy. Often enough forms have complex input validation needs. For example, selecting a State may only be required if they selected "United States" from a drop-down. We use a library of form validation functions for most of the work.

Often we generate our forms on the fly from a description stored in WDDX. In that case, both the client-side JavaScript and server-side validation is also generated as needed. No fuss creating both manually - yuck!

Posted by: Dennis Spaag at October 1, 2003 3:37 PM

I have recently started using CFForm and while I wouldn't say that I love it but it works for my purposes. It makes what I am doing a bit faster. I do think there is a lot of potential for CFForm if it were more robust.

I'm one of those novice web developers who does not know javascript. I am currently focused on learning ColdFusion.

I can still use Jaro von Flocken's Check Form Dreamweaver server behavior with CFForm so my bases are covered in terms of validating form fields.

I will say that from a user experience perspective that I prefer well executed server side validation. Emphasis on well executed and designed.

Posted by: Ray at October 1, 2003 4:41 PM

I'll second the suggestion of Macromedia buying qForms. Once I found that I never looked back!

Posted by: Jim at October 1, 2003 4:48 PM

I'm in the "hate-it-till-the-end-of-the-earth" camp. I would go as far as reccomending a newbie NOT use CFFORM, but rather learn JavaScript.

2 reasons, 1) a developer should never consider learning a new scripting language as a waste of time or money. If you only know CF and HTML, YOU are limiting yourself.. and 2) the JS that CF writes is limited, clumbsy and sophmoric. JS can do so much more than CFFORM is able to re-create.

Now, that said, I would take a look at CFFORM if it were re-vampted. But the re-vamp would need to go in the direction of FLASH. With all it's wonderfull client side features, FLASH forms would really get my attention.

Posted by: Matt at October 1, 2003 6:16 PM

I'd like to see a really easy way (i.e. don't make me learn too much Flash) of creating Flash forms and plugging them into CF pages. How about something like cfchart but with forms instead of graphs? Yeah I could really use a product like that, but I'd need to be able to set up arbitrary validation rules, and perhaps include my own widgets if necessary.

If the product wasn't fully flexible then eventually most developers would outgrow it like cfforms and third-parties would build superior solutions also like cfforms.

Maybe it would fire a lot of events to a cfc, or server side AS and there may or may not be methods in there.

There is the argument that people always want different things and you can't satisfy everybody. I mostly disagree with this, on the grounds that consistent form behaviour and interface is a very important part of usability. Well, qForms is a good example that this argument isn't true. Our product also I think (almost everything people ask for are already built-in), although it's a less well known product. You can design in flexibility.

Posted by: Matthew Walker at October 1, 2003 9:31 PM

David K's comments about the Java applets is right on the money, IMHO.

Also, why not integrate Royale into CF, or at least give us some way of generating SWFs beyond the basic charts and graphs? MM has done a great job of leveraging Generator technology in Dreamweaver, why not put it back on the server?

Posted by: Mike K at October 1, 2003 10:43 PM

Great suggestion Matthew, I second that request.

Posted by: Peter Tilbrook at October 1, 2003 10:55 PM

I dont hate CFFORM, it does its job ok, but personally if you are serious about validation on the client side i wouldnt recomend anyone to use it (sorry to all those who love it).

For those of you who havent used qForm yet then try it out. Its simple to implement and gives great results, and for the more serious developer there is loads you can do with it, i think Vui Lo comments yesterday showed this best. Though if MM went over it again i would definately take another look at it. One thing that would be nice was if the validation was in a seperate .js file for tweaking that just had to be included with the page. Though this would take away the ease of use (cf could still generate its own if the file wasnt found) i think it would give us, the developers a bit more to play with.

One question i must ask is, has anyone used CFSLIDER yet?

Posted by: Andy Jarrett at October 2, 2003 6:38 AM

I'm in the hate-club because of the many problems with the version of JVM/ java-applets. my 2 cents.

Posted by: Patrick Whittingham at October 2, 2003 8:37 AM

On my last project, I had 2 graphic designers that had to code HTML form pages (usually "registration/sign up" screens of some sort). Because of the way things were dictated at my company, writing the form code fell into their pile of responsibility. Both designers knew HTML pretty well, but were lacking in JavaScript.

It was much easier to teach them a handful of CF tags that work in a similar fashion to the HTML they already knew, than teach them how to use JavaScript. 90% of the forms were basic enough so they could do the work -- on occasion, we'd need a modification to the form that required some more hand coding, which I'd step in and take care of.

In situations like that, CFform was helpful and a time saver (usually). For my own coding, I usually write my own validation.

.02

-nolan

Posted by: Nolan at October 2, 2003 1:20 PM

I've worked on two huge projects, one using cfform, one using form and their own validations. The cfform framework is nice, and didn't feel quite as kludgy to me.

That said -- cfform.js is very poorly implemented. On the cfform project we ended up modifying that file. Without being able to do that, we would never have used it. With mods it was amazing, and felt much cleaner.

Posted by: Marc Wallace at October 2, 2003 8:55 PM

Re Nolan's comments, I really don't think graphic designers should be allowed to design or build forms. It's just not professional.

Posted by: Matthew Walker at October 3, 2003 1:07 AM

Javascript is a terrible way to validate forms. Sure, it can be done, but it's a real pain in the butt. Whenever at all possible, we pass the form fields through a validation template before performing whatever action is needed to be done . Makes for easier debugging as well. Of course, on the projects I've worked on, cfform weren't used, although in one ongoing project which other programmers were invovlved and we were under a time crunch, cfform ended up being used in a few spots. Once there, it's there forever . . . if I had been in charge and we had plenty of time, this would have been better thought out.

Posted by: Lola at October 3, 2003 1:53 PM

Hmm, I wonder how many developers were turned off by older incarnations of CFFORM to never return. I can't say what I think of the MX implementation, because I abandoned CFFORM in CF4.5.

Besides the the bad Javascript and weak validation/low flexibility, it had glaring bugs related to the CFHTTPHEAD insert of the JS in complex apps. A rewrite was needed, and even when not using that custom library, custom JS and server side validation are usually simple enough and don'tmake me feel as dirty.

Posted by: Doug Gibson at October 3, 2003 4:16 PM

er, CFHTMLHEAD. sorry.

Posted by: Doug Gibson at October 3, 2003 4:16 PM

I vote no.

I can't remember a single form project, of any complexity, where I could use CFFORM effectively. If CFFORM is implemented at the beginning of development, and you want to do anything even remotely tricky with the form-- be it validation or navigation-- you will be yanking it out later. Trust me.

On a side-note, is the cab file extraction for CFFORM still alerting the user's norton antivirus that the page is trying to load a virus? Yet another drawback.

One more observation: The form I'm typing into now does not use CFFORM, but a set of custom JS functions. I think we have the page author's answer on this question!

Posted by: Joe Zizzo at October 9, 2003 5:16 PM

If the product wasn't fully flexible then eventually most developers would outgrow it like cfforms and third-parties would build superior solutions also like cfforms.

Posted by: Buy.com at December 10, 2003 6:58 PM

Hello!

Dear Partners in His Service

Greetings in the wonderful Name of Jesus Christ!

We hope in the name of Jesus that you had a very
blessed Gospel work Children ministry, which is added
a
great happiness in your life to walk with Jesus in
Him. However, we lift all of them up in our prayer who
is in difficult time of life walking with Jesus. May
God free them of this hard time as they are looking
forward to spend their lives freely in Jesus I also
life & family, and whole staff as we are in hard
situation of financially support to pray the salaries
to our staff and fulfilling the all needs of our
ministry for Gospel work, Medical work, social
welfare, like Sewing & Knitting Center, adult
education project, and also Sunday school center as we
say this child evangelism. We in Jesus trust that God
would meet us with our needs if you pray for us being
our Christian friends in His command. Brother! Very
truly in Jesus we love you as you minister for Him. We
certainly love you whole heartedly, including your
beloved family. Brother! Kindly keep in touch with us
for the work of God. We are so happy you are engaged
in such a wonderful work of the lord. I am waiting for
your reply. May God bless you very much as you
minister for Him?

Thanks & Regards

Younger Brother in Christ!

PERVAIZ KHOKHAR
Chairman
The Preaching Society & social Welfare Services
Mohallah Rasool Pura Street No 7
Jhumra City 37700
Faisalabad, PAKISTAN
Phone 92-41-527541
Fax 92-41-527541
E.Mail:pssws@yahoo.com
E.Mail:pervaiz_khokhar2002@yahoo.co.in
www.christian-worldwideweb.com/the_preaching_society/


MY VISION IN PAKISTAN

I can't wait sharing with you my vision and strategies
for God's Kingdom. I am starting a ministry which I
want you to be part of. The name is being proposed to
be.

'TOGETHER IN CHRIST MINISTRIES'
This will be an indigenous, self-supporting ministry
with the goal of making Christ known and His love and
grace felt by those who are lost in sin, the victims
of circumstance (wars and Aids) and those affected by
the Pakistan and other parts of the World through the
Unity in diversity in the body of Christ world wide.
The philosophy behind these ministries is to promote
self-help projects to carry out Missions as we help
ourselves, those around us and those who are helpless
in the world
Hence the Ministry will address the need to reach the
undetached, touch the untouched and bless the
unblessed through the gospel of Christ and what we
have in our lands.
Despite the fact of poverty in our nation, we have the
potentials, naturally (geographically) physically
(health and strength), mentally (knowledge and
skills), spiritually (gift and anointing) and enough
manpower (ministers and Christians) which is lying
redundant within Pakistan in specific which could only
be sensitized, motivated and activated both morally
and economically to bring about a positive change
spiritually and economically in this nation.
So "Together in Christ" will work to meet these
challenges by:-
(a) Preaching the gospel of Love through organizing
crusades, personal evangelism and helping young
evangelists financially to do mission.
(b) Giving financial support to help those victims of
circumstance (Aids and wars) to meet their essential
basic needs of education materials, food, shelters and
medical care, also to help them start small scale
self-help projects. Promoting women initiatives and
potentials in their different capacities and gifting
by helping them to set family projects like
Education, Health, Medical, Gospel work in order to
help themselves financially and promote their
ministries.
(d) Sensitising the mother on family planning, balance
diets and proper care for their malnourished children
also helping them to raise small scale project
especially on School building and Orphan house to help
them economically.
(e) Supporting Pastors and those called to full-time
Ministries by training them at our Bible College and
giving them education Projects to help them
economically.
(f) Support orphans by educating them, providing for
them scholastic materials, unit forms and setting for
them self-support projects Education, Health, Medical,
Gospel work etc to make them self - Support.
(g) Helping widows to raise their own income to
support themselves and the orphans setting for them
small scale self-help Projects like Sewing & Knitting
Center for Poor Christian Community Girls, etc.
(h) Providing counseling to Aids Victims through the
word, power and love of God to give them hope and to
provide them with education materials, food, clothes
and medical cares
(I) Setting a pharmacy we call it (Medical Dispensary
) which will be the base for the Ministry and
Strengthening my all ministries activities projects
which will be as a demonstration plot to train others
on self-supports projects.

Thanks again. Please pray with me.

In Jesus Name

Rev. Pervaiz khokhar

Posted by: pervaiz khokhar at April 12, 2004 9:58 AM

Posted by: mark at April 23, 2004 5:30 AM




Remember Me?

(you may use HTML tags for style)