Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is C good for any projects beyond the command-line and learning?

Tags:

c

This is not meant to be inflammatory or anything like that, but I am in the midst of learning C, and (think) I have a good handle on most of the basics. I've done all of the various book exercises: primes generators, Fibonacci generators, string manipulation, yadda yadda, but none of this is cool.

What is the "bridge" between command line programs and something -cool-? I've heard of various games being written in C, but how?

Forgive my exasperation, but it feels like I've been learning lots but can still only do relatively little. Thanks for any insight on what to do with C.

Relevant information: OS X leopard, PHP and web development experience (which is so great because projects are immediately in a context where you recognize how they can be powerful)

like image 627
Alex Mcp Avatar asked Nov 11 '09 02:11

Alex Mcp


1 Answers

C is the concrete and the steel of modern tech

There was a time when almost everything was written in C, or in something much worse.

These days, many of the advanced languages and systems are actually implemented in C or C++, and then those things implement more systems. It is standing on the shoulders of giants, as the expression goes. Almost every OS kernel, browser, and heavy-duty-web-server is written in C/C++.

So sure, you don't see the steel in the high rise, you see the beautiful interior furnishings and the sleek glass windows. You don't want a steel or concrete desk, and if you did, it would be too expensive to build for you.

Back to your GUI question: your first C graphics program should probably use the original X Window System directly. Don't spend too much time there, but then move on to one of the more advanced Widget toolkits such as GTK+ or (the C++) Qt. Be sure to investigate your OS X system, as it has one of the most advanced of them all.

I try love to write things in Ruby these days, but I happen to know there are over 100,000 200,000 lines of C code implementing that cool Ruby language system. :-)

like image 191
DigitalRoss Avatar answered Oct 12 '22 12:10

DigitalRoss