| |||||||||||
Too many ways of doing the same thing? Posted by admin (Graham Ellis), 14 March 2003 Two quotes (one from an email, the other from the MySQL board relating to its use from PHP.)Quote:
Quote:
The joys of an Open Source language. Open Source languages are written and lovingly maintained by a very large team of enthusiasts, whereas commercial languages are written by a much smaller group who won't be keen to invest a lot of time (which equals money in their case) into providing additional capabilities which overlap something that their product already can do, even if it's not an ideal solution. Whenever a product is designed, there are compromises to be made between having it easy to learn, and easy to use (once you have learnt it. I remember writing a graph drawing package to be used by a sales team to show off some specialist hardware - they loved it as they answered 57 questions to enter all the parameters for a graph, but once the package was given to customers they were rapidly wanting short cuts because they really didn't want to have to answer all the questions all the time. We added a second user interface that provided command line entry, and they loved that mode of operation. Quote:
That's the "downer" of open source, but it's SHORT TERM. Stick with it, and you'll discover that the rich vein of facilities never ceases to amaze you, and that you're not left with "that can't be done" as the answer to your question on all but the very rarest of occasions. I was a user of Perl before I ever got into writing and presenting training courses on it. Quite simply, it was (and still is) a superb tool for Web site work, for "data monging" and for System Administration. In those days, I was presenting Solaris courses and I first used Perl behind the scenes of the website that I put together to help sell their wares. When someone asked me for the first time"do you do Perl courses?" I answered "Would enough people pay for training on a free piece of software". But my answer developed into "I keep telling people there's no call for it" by the fourth or fifth request, which was clearly a nonsense answer. From that tiny seed has grown a complete business that has taken us from Lake Constance to Los Angeles, from Yeovil to York and from Dundee to Dublin to present courses, and we also have our own training centre less that two hours journey to the West of London. Both Perl and PHP are not the easiest of languages to learn. You can do a lot in a few lines, but it's the nature of the beast that at first you'll be very carefully making tiny changes to other people's code, taking advise and worrying that there's more to it than meets the eye. It's also the nature of the beast that once you're over the hump of initial learning, you can build solutions very much more rapidly than you can using other tools. I say that I can write a solution in a morning in Perl or PHP that would take me a week in C; I knew C long before I knew Perl, I taught it, and I wrote major code in it. Finally, it's also the nature of the beast that a week taken to get kick-started, away from your office and with a tutor to take you over the hump proves invaluable to so many people. Posted by smithce (smithce), 6 April 2005 GrahamThis is interesting ! I was considering learning C to ensure that I fully understand the 'basics' of programming as I came straight to Perl. In the back of my mind I always feel that I am not following a 'structured' way of doing things or have not done the 'basics' yet. Do you think it would be beneficial to do a C course now or a waste of time ? If so do you know any good C trainers/courses/books ? Regards Clive Posted by admin (Graham Ellis), 6 April 2005 on 04/06/05 at 08:57:33, smithce wrote:
Difficult to say ... I've sat here for a few minutes thinking "Good idea" then thinking "not such a good idea". Perhaps I ought to explain the pos and cons and then let you see which are the important factors to you. Personally, I find a knowledge of assember languages, lower level languages such as C and Fortran, and programming techniques and methods to be immensely valuable in my work. However - my work is unusual in that I work in and train people about five languages all of which are actually written in C and what's an immense value to me would be, at bext I think, of rather more marginal interest to a more "typical" programmer with a more typical job. Great for you to learn it ... BUT ... I would say that you might do better to study programming design, algorithms and techniques, OR to do some more advanced studies on the OO aspects of Perl and on the use of OO techniques ... rather than to invest possibly heavily into learning C. There are some C subjects - pointers, array limits, character string handling where you would feel as you learn the language "Isn't this arcane" and "gee - is this REALLY how it works", and I don't see that you would gain much more than background. Structures, Unions, malloc anc calloc might cause you similar wonderment. You would certainly be able to look at Perl in a new light, though, and realise just what a huge step forward it is and see how some of the apparently extravagent claims earlier in this thread might actually be close to the truth. So I guess I'm saying "good idea but there may be better ideas". Have a look at some of the more advanced and algorithm books on Perl (I can add links here is you like). Perhaps have a look at alternative modern languages such as Python and PHP; you can learn a huge amount from them ... including not only techniques that map over to Perl but also this that will be useful modern skills in their own right. A broadening of current knowledge and again something I find, personally, very helpful (if at time slightl;y confusing because of subtle differences). Hope this helps - do follow up with your further thoughts! Posted by smithce (smithce), 7 April 2005 GrahamMany thanks for the reply which of course makes perfect sense. I tend to agree with your comments regarding " you might do better to study programming design, algorithms and techniques, OR to do some more advanced studies on the OO aspects of Perl and on the use of OO techniques ... rather than to invest possibly heavily into learning C." I will invest in some more advanced training for Perl but need to bring my skills up to some 'base' level since I tend to use it sporadically. I must admit I have a vested interest in the C question as a future role possibility requires some knowledge of C in a support context. One thing is for sure Perl never ceases to amase me with it's power, versatility and ease of use! Many Thanks Posted by Custard (Custard), 7 April 2005 Even after 11 years, some of us still get caught out in Grahams perl quiz...Everyday is a school-day as they say b This page is a thread posted to the opentalk forum
at www.opentalk.org.uk and
archived here for reference. To jump to the archive index please
follow this link.
|
| ||||||||||
PH: 01144 1225 708225 • FAX: 01144 1225 793803 • EMAIL: info@wellho.net • WEB: http://www.wellho.net • SKYPE: wellho |