Using free scripts to develop websites
It’s all about “keeping up with the Jones’s” on the Internet. If Jones’s website has draggable, flashing, flying boxes, Smith feels his site also has to have them. For me, as a developer, this is good because it keeps up the demand for website development and redevelopment. This helps to keep me employed. However, it also poses a challenge – how do I put all the features seen on the Internet into the website I am developing? If I am an intermediate developer, where do I get the technical knowledge to develop all the new widgets myself? And even if I am such an advanced developer that I can do everything, is it the most efficient use of my time to re-invent every new feature that a web developer on some other site created?
Fortunately for web developers, there are several scripts available on-line. Some of them are free, and some have licensing fees. Some scripts with licensing fees also have free versions to try, so that one may verify that they work before paying for them.
Is it really free?
In the Open Source community, there are several different types of licenses. Most of them are intended to allow further development, so they generally come with the ability to modify the code. Usually, one who uses such scripts is required to keep the credit comments in the code. If it is a client-side script, this means that savvy developers viewing your website will be able to find out from where you got your code. Some free scripts also require or request a link back to the script provider. It is important to note that not all Open Source scripts are free of charge, but they generally come with conditions that allow the developer to have the source code and fix it.
In short, there are often conditions, but it should not be a problem for the web developer to comply with them, making these scripts essentially free.
Why should people develop free scripts?
In the Open Source community, many developers originally create something that they want or need for their own software or website. As good citizens of the Open Source community, they reciprocate for the software and scripts that they have received by making their own scripts available.
Another motivation for someone to develop a free script is the “giving away for free” business model. One possible gain is obtained by selling premium services for a fee. Another is by offering customization for a fee. Still another is that, by publishing a free script, the developer proves his/her expertise and generates professional recognition. This can improve the chances of securing future projects and development jobs.
Advantages of free scripts
· Enable using expert knowledge for maintaining advanced features
As we said, the boss will want his/her website to have all the features of the other guy’s website, and it is not practical to develop all the advanced features from scratch.
· Save time over writing the script from scratch
Why spend more time when you can do the job in less time?
· They’re free
Even the scripts which have a licensing fee are usually much cheaper than the cost of the extra development time.
· Come with source code, so they can be modified
Open Source scripts, as opposed to commercially sold packages and libraries, come with the sources fully readable and modifiable. If there’s a bug, the developer on site can fix it. If customization is needed, it can be done.
Disadvantages
· No guarantee
The licenses on free scripts generally say that the scripts comes “as is” with no guarantees. If the scripts do not work or do not behave as expected, you’re out of luck. To use them, you need to either be able to fix the problems yourself, or to have someone on hand who is competent enough.
· No customer support
No one is being paid to give technical support for these scripts. However, many of these scripts have sites with forums where users can assist each other to find solutions for problematic issues.
· Open Source license requirements when reselling
As we said, many of the scripts come with licensing requirements, such as making the source code available when redistributing it. This can be an issue when one wants to make packaged, closed-source software.
· Must debug others’ code
It’s always easier to debug one’s own code than somebody else’s. Some useful scripts may have thousands of lines of code and be built with complicated structures. These scripts are developed for free, and no one paid the author to make them easy to read and maintain. If there’s a bug, it’s up to you to fix it. If you need customization, you must delve into the code and fix it yourself. This is not for the faint-hearted programmer.
Foundation scripts
There are some foundation scripts which create the basic graphic effects, but another layer is needed for practical use. One such library is http://script.aculo.us. It has all sorts of JavaScript-based graphic and drag-and-drop effects. On a site I recently developed, I downloaded one wrapper library for iGoogle-style boxes and another library for CSS Popups, both requiring script.aculo.us as a foundation. There are several other foundation libraries out there, such as Yahoo’s API and others.
How to find free scripts
· Knowing from experience
Let’s face it. Even with the Internet, there’s no substitute for knowing where to find things. From my experience, search engines usually do not point me to the best scripts. Often, those who are savvy in their script writing are not as expert in placing them highly ranked on search engines. The best way to find good scripts is either from one’s own experience or knowing someone who knows.
· Forums
The next best way is peer-to-peer forums. Some are even dedicated to finding scripts.
· Search engines
Nevertheless, one can still find many good scripts by searching on Google or another search engine – at your own risk. Especially if one is not familiar with a particular script, it is up to the user-developer to test it and make sure it works. Once I had to download about 20 scripts I found in search engines until I finally found one which I got to work like I wanted.
Conclusion
Here we have seen another aspect of 21st century programming – taking available scripts and making them work on one’s own website. Today’s demands no longer make writing all graphic aspect of programming feasible or worthwhile to completely program from scratch. There are then two options – buying pre-written, closed-source enhancement or taking downloading free, Open Source scripts. It may be a matter of personal preference, but when I park my car, I usually look for free parking.
The next article should be on tips and tricks in making one’s website multilingual.
Regarding your recommendation, I wrote here: http://israelwebdev.wordpress.com/2009/06/16/scriptaculous-image-hover-effect/ about how jQuery seems to be winning the battle of Javascript frameworks, specifically in the number of available scripts online. Of course, if you’re already using Scriptaculous or another framework and it’s good for you – keep it up. But my recommendation for developers new to the game is jQuery.
Reply