Embrace JavaScript and SQL

I have always been puzzled by many web developer's reticence to learn and fully take advantage of JavaScript and SQL in their applications. I know many people are comfortable with these languages and use them frequently, but I often run into people that say something like this: "I HATE JavaScript and I avoid it at all costs", or this: "I never really learned SQL, and anytime I need to do anything complex I ask my SQL guru friend."


I agree with you on the ORM aspect. It is important to know SQL if you work with a relational database as a backend to your application. There are just some things that are much more effective when done right in SQL; reporting being a huge one.

I disagree somewhat on the javascript angle. I believe that the libraries like prototype and jquery just make javascript a usable tool. I don't feel like I'm flying blind just because I use a javascript library to get stuff done.

When it comes to Javascript libraries I mostly agree with you. They make things much more usable. I can do things in jQuery that I could NEVER do on my own, even with years of Javascript experience. That said, I think that having a basic understanding of the underlying technology allow you to leverage the given frameworks in a much more powerful way.

Couldn't agree more. I applaud your javascript knowledge, and wish that I had more of my own, but I've always found it difficult to grok for some reason.

Well, I am glad that you are finding jQuery useful. It really is an awesome library.
@Jake: I know I'm biased since I'm on the jQuery team but I must say that well-known JS frameworks are fairly solid so you can trust the results you're seeing. I still recommended that you learn JS for the same reasons you outlined but a library like jQuery is far from a "crutch". It's actually a very important tool that helps abstract a TON of complexities of the JS language,

As I'm reading through my books on JS, I'm astounded at how much jQuery helps to eliminate some of the common pitfalls, especially cross-browser issues, that new developers would normally experience. I honestly can see why people have shied away from JS in it's pure form. To build good, cross-browser JS takes a LOT of experience and I'm not sure how much time most developers have to grok that.

The other thing to remember is that we, as server-side developers, tend to be spoiled in many cases. We "typically" work on one target OS with a specific application server. When dealing with JS, you're dealing with several target browsers with their own nuances. That can be a rude awakening for the developer who is used to simply outputting some data into a nicely rendered page built by a designer. :)

I agree with most of your points, but I still kind of see jQuery as a crutch, IF someone is using it to avoid learning JS. I'll compare it to calculators in school. Sure, calculators can help remove a lot of the tedium in Math, and the SHOULD be used in most cases. However, you should still learn the fundamentals of Math, which can often be bypassed with today's powerful calculators.

I am not in anyway disparaging jQuery and it's cousins. I'm just saying that I think developers do themselves (and maybe their clients) a disservice when they skip learning the fundamentals of JS and go straight for the frameworks. Do I think they need to become JS gurus? No, but at least learn the basics.
Are there actually jobs out there for people who somehow know ColdFusion but do not know JavaScript or some SQL flavor? I'm not trying to be a smart butt. I just don't remember running across any that don't expect at least a mid-level of competence with JavaScript and T-SQl or PL/SQL. If someone don't have a good grasp of those, they're going to be hurting if they ever loose the job they have now that let's them get away with not having those skills.
No, I think you're right Allen. Most web developer jobs ask for SQL/JS skills. But sadly, there's often a difference between what a candidate says their skill level is and their true skill level. In the interview they'll say "Oh yeah, I've got lots of experience with JS." But then on the job they are spending a lot of time reading books because all of a sudden their skills are rusty.

And like I said in my post, I have heard two very prominent people in the ColdFusion world (both of which have prestigious positions at companies where I assume they make lots of money), but they both have admitted that they don't know JS or SQL very well. I am not going to name names, because I don't want to embarass them, but like I said when I read that it truly surprised me, considering their reputation in the CF community.