Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

At my core, I'm a structural, Computer Science sort of programmer (in college I was required to do a lot of programming using C, C++ and even COBOL(!)) and I'm finding more and more conflict with the core fundamentals I developed in my CS degree as opposed to the modern web development world that I'm currently immersed in. One of those conflicts I'm having is the place of libraries/frameworks in web development.

I've been discovering and experimenting with several libraries/frameworks for some web application development I've been doing. Some that I've used and/or experimented with include jQuery, jQueryUi, TinyMCE, CodeIgniter, Struts, Spring and GWT. I have a slight fear of using these libraries/frameworks too extensively because of the rapidly changing nature of web technology. It seems about every other minute there's some new library/framework available to use in web development, whether it's a new framework or enhancement to an existing technology. This really rubs against the academic world I was in as we generally spent an entire semester learning the language/concept with the expectation we would later use that knowledge effectively in the workplace. My fear is that a lack of good understanding of a library/framework will lead to me to a dead end path where I will have more problems than the one that I set out to solve initially.

Sorry for rambling, but I'm wondering if anyone else has experienced such a fear? I'm also wondering what could be some general guidelines for implementing libraries/frameworks into a web application. i.e. Should there be a limit of how many libraries/frameworks are used when developing a web application? Should a developer spend a week (or 2 or 3...) really getting to know the library/framework before attempting to implement it into their web application?

Ultimately looking for answers in the context of libraries/frameworks which (loosely) includes anything that is implemented in a web application outside of the core technology (Java, JSP, PHP, HTML, CSS and JavaScript are core technologies that I personally use).

share|improve this question
2  
I think that instead of "plugin", you should use the word "library" or "framework". –  Matt Fenwick Mar 8 '12 at 18:45
    
@MattFenwick - good point. Probably one of those would have been a better way to say it. Using "plugin" was what first came to mind as I'm "plugging" these various components into my web applications. –  Zack Macomber Mar 8 '12 at 18:55
1  
@MattFenwick - thought some more on your comment and updated my post to reflect your good suggestion - thanks. –  Zack Macomber Mar 8 '12 at 19:29
add comment

1 Answer

up vote 3 down vote accepted

It depends a lot on the nature of the project. Often I've used less-than-ideal plugins when dealing with time pressure. For example, a new product promo site had to be launched two weeks from the day I was given it. The requirement for an interactive product gallery meant I had to use a plugin that had some limitations and I didn't have time to do modifications.

If I had a longer project timeline I would have done it differently, either improving the plugin or building something better. The push to get it done now can be annoying when you want to do everything right. But, you have to learn to live with the chaos to some degree, especially in web development.

I've found it best to have some "go to" techniques and plugins that allow me to work with tight schedules. One of them is to use a grid based CSS to help handle placement of various elements. I also have my own C#, Javascript and PHP libraries/plugins that I'll use when I can as well as some components written by others that I've used successfully in the past. Occasionally, I'll have to bring in something new and I'll have to trust what I can find out about it via Google and Stackoverflow.

share|improve this answer
    
+1 - good thoughts, especially "It depends a lot on the nature of the project". When given more time, it's much easier to get to know a plugin and implement it successfully than just throwing it in there based upon what can be found out on Google and SOF - thanks. –  Zack Macomber Mar 8 '12 at 19:20
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.