|Which programming language to utilize|
Crossing from designer to coder/programmer Ė where to begin
I hope that his is an appropriate post for this section, and I appreciate the input.
I have been a designer for over eight years and consider myself very good at what I do. I have a pet project that has recently shown much promise, and I need to develop some pretty advanced server-side processes to accomplish a number of different tasks. I have colleagues to go to for this, but I feel itís about time I learned to help myself (especially for my own projects).
My question is, which language (CGI, Perl, ASP, PHP) is most universal, ideal, flexible, etc..? I plan to devote a lot of time and effort learning these and would like to know where to start. Remember, I make web sites look pretty, not function Ė go easy on me.
A short answer - CGI ia not a language at all (you may write CGI things in C++ too, for example.) Perl (nearly ideal for CGI) works on Unix servers, and ASP (as far as I know - did not use ASP personally) - on servers with Windows. Perl is much more powerful than PHP, but they say PHP is pretty easy.
In any case, it depends on the task first of all IMHO.
justgowithit the first thing you'll realize when "crossing over" is that you can now merge function and form into one "idea" rather than staying on one side of the fence or the other. This has always been my problem with designers AND programmers, they are like dealing with Mac and PC people. :D
Moby's advice is agreeable, I'd only add that perl is almost always inherently on every Linux system, most other scripting languages require installation or configuration, or a windows system. This shouldn't hamper your decision either, there are plenty of servers with all those in place.
C/Java are compiled languages, meaning you write the programming and compile it into an executable. C programmers will disagree (otherwise they wouldn't be C programmers) but I found programming in C or other compiled languages much more difficult than perl. Perl is a lot easier to understand, and you can do a lot by learning very little.
PHP is the same way, and those who work in PHP find it better than perl. I just don't see the major advantages to php, but you can do almost anything in php that you can do in perl.
My 2 cents.
Pick a language that you can use in the largest number of situations. I like perl and python. But I just had to pick what I could find information on and learn on my own. I chose perl primarily because I found the most free modules that would complete tasks I would take years to figure out myself. I am now finding the same to be true with python but not as extensively as perl.
Python and Perl.
These two scripting languages both have usefulness on your desktop, in the server, automating administration, etc....
The same cannot be said for php, asp, cold fusion, etc...
If your primary concern is CGI, look for a solid 'Application Framework', there are a variety for perl, Zope in particular for python, Zend for php.
Application Frameworks take a whole lot of work off your hands, for tasks that everyone has to do already.
In conclusion, a language that will do you good outside of just CGI will prove the most beneficial.....However, you will probably find more examples of easy to understand php than any of the other languages mentioned. There are just so many people building web apps with php these days. And releasing thier code for you to examine.
One other thing to consider is whether the language is inline. Inline code appears "inside" a webpage. If you use a web page editor (e.g., Dreamweaver) you'll proably want to use an inline language.
I think the main reason that many people (myself included) have switched from Perl to PHP for most of their web development is that PHP is built from the ground up as an inline language.
<sidenote>You'll probably find that the tricky part is learning web programming, and that learning programming languages comes much more easily after the first one.</sidenote>
You guys are great! I sincerely appreciate the feedback.
It looks like PHP is a good place for me to start.
Now all I have to do it figure out how to become somewhat proficient as soon as possible. Iíve looked at community colleges in my area, but I am worried that courses will be too slow for my learning curve. I have been building sites since 98í and I donít want to waste time learning web basics.
Any suggestions on where to start to get up and running as quickly as possible? Where did you all learn different languages?
Thanks again for the input!
Google for Perl or PHP tutorials and spend the money on good hosting services. :-)
|I am worried that courses will be too slow for my learning curve. |
I was entirely self taught (mostly on O'Reilly books) for a decade or so, until I started going to continuing ed courses this spring on the company's dime.
Yes, sometimes they do go slow but it doesn't sting too bad. If the project assignments are too easy, just go beyond the requirements. If the professor knows his stuff, the answers to a few key questions might be worth the time and money.
Then again, if I were paying out of pocket, I'd probably just buy the book. I like PHP's O'Reilly books well enough. Their Perl books are indispensable.
Thanks again guys.
There is this large building located near me... that I believe is called a "library". Iíve also found a few great online resources without too much trouble.
Specifically, anyone in my situation would be interested in the archive of free tutorials at Hotscripts (I hope the plug does not violate TOS).
Now off to get started.