C Programming - a niche once again?
Posted by admin (Graham Ellis), 8 May 200515 years ago, I was programming applications in C, teaching the language, and teaching subjects like Open GL - a C language library. That was well before the "Well House Consultants" days.
These days, at Well House Consultants I speciliase in niche Open Source programming languages such as Perl, Python, Tcl/Tk and PHP and I thought my more mainstream days of C classes were over. But the pendulum has swung full circle.
** Although it's underlying nearly all modern computing, programming in C itself has become something of a niche as only a small number of practitioners of the language produce the tools (other languages) that so many of us use.
** C, through such discributions as gcc and Linux, is Open Source.
With even more experience in C that any of the other subjects that we teach, there's a logical move full circle back to C courses - watch this space for further details, or register your interest at http://www.wellho.net/net/lookc.html
Posted by Chris_Isaac (Chris Isaac), 11 May 2005Hi Graham
I know this is quite an open question, but could you give us an idea of the differences involved between learing/using a language like C as compared with say Perl or PHP, with particular regard to web applications. Perhaps any benifits/drawbacks.
I believe Perl was written in C is that right?
Also, do most ISPs support scripts written in C?
Posted by admin (Graham Ellis), 11 May 2005on 05/11/05 at 07:40:46, Chris Isaac wrote:
I usually say that it takes a week to write an application in C that would take just a day to develop in Perl. And yet Perl is, indeed, written in C. The reason for the difference is that Perl provides you with a lot of very much higher level facilities such as the automatic conversion of types and extensions of lists (autovivification) whereas if you write a C program yourself, you've got to implement whatever part of those facilities you need yourself.
Only a small proportion of ISPs will provide you with a realistic set of tools to run your own C code on their servers, and the code will have to be compiled and loaded for the particular operating system / version involved - it will NOT have the portability enjoyed by a Perl, PHP or Python script.
Benefit of using C? As a web language there are very few - if you've got a very compute intensive application to run on the web, and/or you're someone like ebay or Google where making something run 20% faster will save you buying racks more computers, it may have its place. But usually better to use the tools already written in C such as ... yes, Perl or PHP, with MySQL too - again, C based. You can always integrate your own C routines into these languages if you need to and have the support available on your server.
Posted by Jack_Hughes (Jack_Hughes), 24 May 2005It's interesting that you feel you've gone full circle. So do I. I last did C programming 7 years ago. I've been doing an open source apache log filter recently & thought that C would be the best choice. It has been wonderful. Like meeting an old friend after many years seperation.
Posted by admin (Graham Ellis), 25 May 2005Hi, Jack ... and welcome to the board.
Yes - I was writing a few samples the other day and it was unexpectedly fun. Like meeting an old friend. Perhaps I should descibe C as an enduring language.
Posted by Jack_Hughes (Jack_Hughes), 25 May 2005It is interesting how languages 'feel' different. C, even when I was learning it, felt special. It is a very small language but extremely powerful. If you can't do it in C, you can't do it. C++ never felt special. it has too many features bolted on for the design to be cogent or follow an overarching design. The only language ever to come close to C was python. With a few exceptions python always felt really well designed, everything in it proper place. except the len() function...I never understood why I couldn't ask the string itself how long it was.
PH: 01144 1225 708225 • FAX: 01144 1225 899360 • EMAIL: email@example.com • WEB: http://www.wellho.net • SKYPE: wellho