I am an windows developer with over 15 years experience. I have just started looking at the latest version of Ubuntu Linux. Could someone point me at a good beginners guide to Ubuntu (preferably from a developers prospective) which is aimed at a Windows user? I have found several using google, but unfortunately I know so little on this subject I can't tell a good guide from a bad one. I have version 10.04 LTS.
The Linux world is much more fragmented than the Windows world; for developing GUI programs, there's several GUI toolkits to choose from (GTK and QT are the two most popular; there's also FLTK, TK, and even old Motif is still kicking around).
Systems programming is thankfully MUCH better, buy a copy of Advanced Programming in the UNIX® Environment, Second Edition and you'll have enough to write great systems tools on dozens of platforms.
If you're in the middle-layers somewhere, a higher level than systems programming, you'll typically be working with other libraries and toolkits: Apache, PostgreSQL, Hadoop, libevent, Tomcat, Ruby on Rails, Django, expat, GnuTLS, OpenSSL, Perl, Python, Ruby, Erlang, etc. Figuring out which of the options you've got to work with may be daunting, but most projects have reasonable documentation.
Most tools have manpages: skim man man
, and then: man 1 intro
, man 2 intro
, man 3 intro
, man 4 intro
, man 5 intro
, man 7 intro
, man 8 intro
. (Feel free to look at man 6 intro
if you want, but manual section 6 is for games.) 1
is for user-commands, 2
for system calls, 3
for library calls, 4
for device files, 5
for configuration files, 7
for "frameworks" (socket(7)
and ip(7)
for socket and IP details), 8
for system administration commands.
Maybe asking for specific advice would lead to more concrete answers -- the simple truth is there's no simple single programming guide on Linux systems.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With