also, will pre-done programs put web-designers out of business?

14 Replies - 3705 Views - Last Post: 16 April 2009 - 06:23 AM

Does using a library like jQuery make one less employable?

Posted 31 March 2009 - 01:13 PM

My first question is about whether I should use a library like jQuery for my events and other stuff in javascript. I guess I sort of feel guilty because it makes things easier, and I should be learning the hard way without jQuery. When coding websites professionally, do designers use jQuery and other libraries? Do they make the page run slower? I feel like I'm taking the easy way out...

My second question is more of a re-assurance issue. I see all the glorified ads about how you can easily make your webpages with these wonderful programs. They're not going to but HTML jockies out of business, right? I just don't want to learn a language that won't be useful and have a demand in the job market. I'm probably just worrying too much and I'm sure the programs aren't as great as they say they are.

Re: Does using a library like jQuery make one less employable?

Posted 31 March 2009 - 02:51 PM

No, apps like Dreamweaver/Frontpage won't put you out of business - if anything, they keep you busy fixing mistakes.

When it comes to Javascript, you'd do well to learn how to work with Javascript, and then get familiar with a framework(or two). Relying on something like jQuery would only make you less employable in a situation where you are not allowed to use jQuery.

I work in a web design shop, and we use jQuery anytime we need javascript - while it does slow down the page, the number of headaches you avoid by getting familiar with a framework(and the ease with which you write the code) more than make up for the slight performance hit.

jQuery will make writing your javascript easier, but you'll still have to write javascript - you'd do well to get good with the basics(like interacting with the DOM and basic Ajax), and then move on to a framework that abstracts that all away for you once you understand what is being abstracted, and why.

Re: Does using a library like jQuery make one less employable?

Posted 01 April 2009 - 01:36 PM

I don't think tools like Dreamweaver, Expression Web, etc could ever replace someone adept at hand coding HTML. HTML authoring can be automated somewhat using these tools. I will use them on occasion to bust out a "good enough" XHTML foundation as quickly as possible, but there is always a point where you simply have to continue on by hand.

To make standards compliant sites using these WYSIWYG development apps, you have to understand how to build pages by hand. To understand the limitations and common issues that arise when trying to build sites that are not just syntactically correct, but also semantically appropriate, you have to have experience building, refining, and manipulating the markup on a granular level.

Tools like Dreamweaver can't easily produce markup with the kind of quality needed for professional production, since in that kind of situation, you or other team members are going to need to be able to traverse the DOM tree and apply styles intuitively and semantically. For obvious reasons, it's difficult to produce an application that will keep code as simple as possible and semantic as possible. In my experience, WYSIWYG apps are very div, span, and class happy, since divs and spans are generic elements that don't invite a lot of compatibility issues in most browsers, and there's zero harm in adding a bazillion redundant classes. More semantic elements like address and definition lists are less reliable. These editors just end up producing code that is structurally correct, while having virtually no semantic meaning.

I have to say, when I started using Javascript I felt much like you. I didn't really feel like I completely understood Javascript, and I was mostly using jQuery by example. I think it's difficult to understand most of jQuery without understanding Javascript and its limitations, and even understanding additional languages that follow a more imperative programming paradigm, like C and PHP.

While it is very helpful to understand problem solving and best-practice by being able to write your own code, it's impossible to ignore the usefulness of jQuery. jQuery, like your IDE, task manager, e-mail client, and every application you use is designed to help you work efficiently, quickly, and with fewer problems. Someone with only a pedestrian knowledge of Javascript can create impressive interfaces with just a few lines of jQuery-enhanced Javascript. jQuery is a sugar that makes your scripts FAR more expressive.

Growing your own code is not always practical, or even responsible. There's no reason to develop your own lengthy animation, Ajax, or interface library unless you can answer a simple question: "Do I have a clear reason to do this?" There are so many other libraries out there, like jQuery, Prototype, DOMAssistant, the list goes on, that there is often little reason to build your own, unless you really are building that highly customized of a solution. I actually have found reasons to build libraries, admittedly simple compared to jQuery.

However, it's very important that you understand Javascript. Take it up as a hobby. Read books written by professionals, read things that influential programmers like John Resig, Robert Nyman, and Douglas Crockford have written, and just grow your own. You may never actually develop your own Javascript library, much less deploy one, but knowing how will aid you tremendously in making the most out of all-in-wonder Javascript libraries.

Re: Does using a library like jQuery make one less employable?

Posted 01 April 2009 - 01:45 PM

My apologies, I actually didn't answer your question!

Many professional programmers are using libraries like jQuery. While it used to be "spot the big names that are using that library!", today it's more along the lines of spotting one that isn't. It's very noble to aspire to start out with a blank .js file for every site you develop, from and employer's perspective, it only appears to be an ego-induced waste of your very valuable time.

Re: Does using a library like jQuery make one less employable?

Posted 01 April 2009 - 03:26 PM

Hand-coded HTML has GG'd. Dreamweaver is pretty much the major player in web design. Concerning markup issues, if you have a web design team going, they'll all be using Dreamweaver together, and Dreamweaver works very nicely with itself. I remember I used to be the same way when Dreamweaver was first starting to be big: "This generates messy code! How could anyone use it?" I was horribly wrong. With the advent of XHTML and the widespread usage of CSS, Dreamweaver is the way to go.

Re: Does using a library like jQuery make one less employable?

Posted 01 April 2009 - 03:54 PM

TheBeege, on 1 Apr, 2009 - 02:26 PM, said:

Hand-coded HTML has GG'd. Dreamweaver is pretty much the major player in web design. Concerning markup issues, if you have a web design team going, they'll all be using Dreamweaver together, and Dreamweaver works very nicely with itself. I remember I used to be the same way when Dreamweaver was first starting to be big: "This generates messy code! How could anyone use it?" I was horribly wrong. With the advent of XHTML and the widespread usage of CSS, Dreamweaver is the way to go.

Unfortunately, I know nothing about Javascript, so... yeah.

That depends a lot on context. Dreamweaver has this reputation for being the best-in-class, industry-standard tool, and is generally the primary IDE (if you want to call it that) used in web design courses in high schools and colleges.

Its reputation earns it more purchases than it really warrants. Software engineers who have their company's marketing department ask them to build a website, having no prior web development experiment themselves, are going to assume that Dreamweaver is the way to go. For someone in that kind of position, Dreamweaver builds a passable website, however it's easy to run yourself into a wall using Dreamweaver if you're not careful. A copy of Dreamweaver and a decent book will quickly get you something usable without a lot of talk about semantic XHTML, separation of markup, style, and behavior, and so forth.

Studios that focus entirely on web development are not likely to be using Dreamweaver. Modern text editors far outpace the efficiency of Dreamweaver if you know what you're doing with them. Personally, I like TextMate for Mac OS X. Using tab completions, TextMate takes a lot of the tedium out of authoring your markup so you can get to styling or scripting. ActiveState Komodo Edit (free) for Windows also has what it calls Abbreviations, which are identical to TextMate's tab completions, although it lacks TextMate's out-of-the-box library of completions.

Dreamweaver tries to bundle the markup, styles, and behavior into one package, and that's where things usually go foul. The CSS Dreamweaver writes basically invalidates the entire reason we use external CSS style sheets in the first place.

Re: Does using a library like jQuery make one less employable?

Posted 01 April 2009 - 08:15 PM

I think any libraries that make things easier should be encouraged to be using. Especially in a time crunch project. It's like using QT as opposed to swing in Java... It will cut down your development time by an absolute TON...

Re: Does using a library like jQuery make one less employable?

Posted 01 April 2009 - 08:58 PM

My answer is sweet and simple. Like others said, it is good to know how to use a few of the toolkits / libraries thatpeople have made as you may eventually have to use one, but it is also important to know the language well enough not to rely on the libraries to function. So you will want to learn the language regardless, but it shouldn't be too much of a problem with employment unless you can't program without the library

Re: Does using a library like jQuery make one less employable?

I think Dreamweaver's bundling of everything works pretty well. Hell, you can still hand-code in Dreamweaver, too. It gives you the output in a panel right below if you choose to do so.

How does Dreamweaver invalidate the use of external CSS? It still supports external CSS, and you can easily flip through the pages in your site to see the product on each one. It even supports different CSS generation styles for readability purposes.

Re: Does using a library like jQuery make one less employable?

Posted 02 April 2009 - 01:34 PM

Thanks for all the replies guys (and for featuring this PsychoCoder)! I was wondering why anyone would use the DOM's pitiful element selection methods, when they could have all the flexibility of jQuery's advanced selectors. That seems to make a lot of sense: learn the easy way but learn the hard way as well so you'll be prepared for anything. I guess that's what being employable is all about, being prepared.

I won't worry about not finding a web-development job now, especially since it's also mentioned on this topic/list!

Re: Does using a library like jQuery make one less employable?

I think Dreamweaver's bundling of everything works pretty well. Hell, you can still hand-code in Dreamweaver, too. It gives you the output in a panel right below if you choose to do so.

How does Dreamweaver invalidate the use of external CSS? It still supports external CSS, and you can easily flip through the pages in your site to see the product on each one. It even supports different CSS generation styles for readability purposes.

It doesn't invalidate it per se, it just creates a new class every time you apply styles to an element. I guess what I'm trying to say is that Dreamweaver uses classes more like ids -- it throws many, many classes with terrible names in there by default. Obviously the interface offers options and it is possible to work effectively with CSS through Dreamweaver, but my point in my previous post was that it's actually less efficient to do so than to use a good text editor. My personal favorite is CSSEdit for Mac OS X. The code sense and auto-completion is superb, and Dreamweaver really can't touch it.

Again, Dreamweaver is great for someone who doesn't really care to have a lean and efficient CSS file. It does get the job done, it just does a poor one as far as a professional styler would be concerned.

Re: Does using a library like jQuery make one less employable?

Posted 05 April 2009 - 11:37 AM

crazyjugglerdrummer, on 31 Mar, 2009 - 08:13 PM, said:

My first question is about whether I should use a library like jQuery for my events and other stuff in javascript. I guess I sort of feel guilty because it makes things easier, and I should be learning the hard way without jQuery. When coding websites professionally, do designers use jQuery and other libraries? Do they make the page run slower? I feel like I'm taking the easy way out...

It all depends on what you're trying to do.

The substantial majority of the time, you're going to be best off using the frameworks or libraries which will allow you to get things up and running as quickly and efficiently (in terms of developer time - developers are expensive, CPU/disk/memory are cheap) as possible. There are cases where you need to start from scratch and do it all the hard way, whether because of licensing restrictions or runtime performance needs or whatever, but those only come up a tiny minority of the time.

crazyjugglerdrummer, on 31 Mar, 2009 - 08:13 PM, said:

My second question is more of a re-assurance issue. I see all the glorified ads about how you can easily make your webpages with these wonderful programs. They're not going to but HTML jockies out of business, right? I just don't want to learn a language that won't be useful and have a demand in the job market. I'm probably just worrying too much and I'm sure the programs aren't as great as they say they are.

HTML jockies don't have much to worry about. Yes, those programs will allow any monkey with a keyboard to make their own site - but the site will look awful. If you have decent design skills, then those same programs will allow you to make a gorgeous site in half the time needed by the aforementioned monkey. That's hardly a recipe for putting you out of business.

Re: Does using a library like jQuery make one less employable?

Posted 16 April 2009 - 06:23 AM

Like anything, the more you understand "how" things work under the hood, the better off you are. We can get by in many cases with an AJAX web control, but if we don't understand how it works, how would we ever doing anything extraordinary with the javascript behind the scenes?

In math I learned operations on matrices with a pencil, when implementing them into a directx application, it made so much sense, and thus gave me the advantage.