programming on linux

Gerard Snitselaar snits at snitselaar.org
Wed Jan 25 20:25:50 MST 2006


Are there certain things you would like to accomplish (in addition
to the Network Manager itch) or are you just looking to program
on a linux system in general? When I think of Windows vs *nix
programming, the difference I think of isn't so much the tools,
or languages it is the whole mindset/philosophy behind them. For
that I would recommend something like 'The Art of Unix Programming'
by Eric Raymond, or 'Linux and the Unix Philosophy' by Mike Gancarz.
There are others along these lines as well.

There has been plenty of good advice here on languages already.
You can find tools for just about any language for Linux. With
FC4 and yum in addition to the regulars like c, c++, perl, python,
and ruby you also get oddities like Ada 95(gcc-gnat). I believe there
is a fortran tool in the gcc set as well. Java of course is available.
With yum you can grab Prolog and Lisp (pl and clisp packages). You can
also play with the functional language Standard ML, but you have to
download that from the ML website.

For programming there are some IDEs available such as eclipse, which I
have yet to play with, but I think the most common tool is the text
editor. Both vi and emacs have their adherents and are probably the most
common. If you want to watch a flame war erupt just get an emacs vs vi
thread going on a mailing list. There are others as well. vi is present
on all Unix systems I believe, while emacs will not always be on
a UNIX system, but most likely is on a Linux system. I use both at work
at times, but much more proficient with emacs because my mentor has been
using emacs since back when he was working on Multics at MIT.

Shell scripts are still very common so that could always be something to
learn, if only to understand what they are doing. Perl has become more
popular for writing scripts and manipulating text. Python and Ruby get
usage in this arena as well.

There is plenty of Unix/Linux code in C that you can look at so it never
hurts to know C. Plus, if you ever want to get involved in kernel
internals it is a must.

There are good books available that discuss programming for Unix/Linux,
but probably the best way to learn is to look at code. 

Some books that might be of interest:

* Advanced Programming in the UNIX Environment, 2nd Edition, 
  by Stevens & Rago
* Advanced UNIX Programming, 2nd Edition, by Marc Rochkind

I haven't read either of them yet, but two books that discuss
programming for Linux are:

* Linux Application Development  by Johnson and Troan
* Linux Programming by Example   by Arnold Robbins

Good luck with your coming adventure. If you have questions definitely
ask on the mailing list or the devel list and you are sure to get
answers.



On Mon, 2006-01-23 at 13:00 -0800, Josh Coffman wrote:
> Greetings from you local village idiot...
> 
>   I'm a windows programmer. I'd like to at least have
> a clue how to program on linux also. Maybe Java. Maybe
> Python or Perl. Anyone care to make recomendations
> that one could fit into an already busy life. I could
> probably best start by doing some reading and then a
> Hellow World type example.
> 
>   I've also got this itch to fix Network Manager to
> run in KDE as well as Gnome, but I'm not ready for that.
> 
> Shin zen ni rei
> -j
> Registered Linux user number 403109
>   http://counter.li.org/
>   
> 
> 
> __________________________________________________
> Do You Yahoo!?
> Tired of spam?  Yahoo! Mail has the best spam protection around 
> http://mail.yahoo.com 
> ---------------------------------------------------
> PLUG-discuss mailing list - PLUG-discuss at lists.plug.phoenix.az.us
> To subscribe, unsubscribe, or to change  you mail settings:
> http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
Url : http://lists.plug.phoenix.az.us/pipermail/plug-discuss/attachments/20060125/c77cbf96/attachment.pgp


More information about the PLUG-discuss mailing list