LinuxQuestions.org
Visit Jeremy's Blog.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Newbie
User Name
Password
Linux - Newbie This Linux forum is for members that are new to Linux.
Just starting out and have a question? If it is not in the man pages or the how-to's this is the place!

Notices


Reply
  Search this Thread
Old 09-02-2004, 12:25 AM   #1
emeskay
LQ Newbie
 
Registered: Sep 2004
Distribution: SuSE 9.1
Posts: 22

Rep: Reputation: 15
MS Windows programmer cant decide on distro.


Hello all,

This is my first post on this forum.

I've been a windows user since 1997, starting with 95 and moving on to NT. I currently dual boot between NT an 95. With amazing foresight :-) I had left a portion of my hard drive unpartitioned for future use and I would now like to install linux on it.

I have no previous experience with any other OS and dont know much about network or server administration, but I've been programming for Windows in C++ (mainly using Win32 API or MFC) for about five years. I also know a little bit about internet protocols, Winsock, some scripting languages and Java. My rough goals wrt Linux are the following:-

0. Learn the basics of how to use Linux commands.
1. Understand the X Windows system (from a programming point of view) before moving on to use a GUI library like GTK.
2. Be able to program for linux (including GUI programs).
3. Get a better conceptual understanding of the inner workings of a modern operating system like Linux (A task that is made difficult in Windows by the obfuscatory nature of that OS). Hopefully some of this understanding will carry over to MS Windows also.
4. Learn a bit of x86 assembly language. Learn something about how the OS interacts with various external devices.

A priority for me is to get a good C++ compiler that is also easy to use - preferably with a reasonably good GUI interface. I have made the assumption that there is no significant difference regarding the different distributions regarding the compiler isssue.

After reading reviews of various distro's, my tentative plan is to get both Mandrake and Slackware. I would start out with installing mandrake, but once I learn how to use some basic Linux commands - move to Slackware.

Any further advice will be gratefully accepted.

System Info:
PC with MSI k7T motherboard with Athlon 866 processor.
128 Mb RAM
ATI rage 128 pro graphics card
Cable internet access via network card and Modem.

Regards.
SKM.
 
Old 09-02-2004, 03:33 AM   #2
Thoreau
Senior Member
 
Registered: May 2003
Location: /var/log/cabin
Distribution: All
Posts: 1,167

Rep: Reputation: 45
Thumbs up

From what you are requesting, the disto with the largest printed documentation at this time is Suse 9.1 Professional. It is also on par with Mandrake 10 Pro in ease of use. Suse is cheaper, and from my experience more tested/stable across the board. Both are excellent to start out with. Mandrake's manual is kind of thin though for what you are looking at learning. I have purchased both of them, among others(gentoo/slackware/debian/etc).

And you can move to slackware or debian or whichever after you get a grasp on some of the basics from the previous listed distro's. There is lots of documentation online in that regard.

Don't worry about the compiler. All recent release distributions ship/have stable compilers. The one's to avoid are older distributions like RedHat 8.0 with broken compiler's. You will have more C++ programming software/compilers than you'll know what the hell to do with. You're safe there. Good luck.
 
Old 09-02-2004, 03:49 AM   #3
redjokerx
Member
 
Registered: Aug 2004
Location: San Diego
Distribution: Slackware
Posts: 303

Rep: Reputation: 31
When I tried out SuSE (for got what version it was, maybe 8 or something) it didn't come with the KDevelop IDE. So make sure the new SuSE has that if you want an IDE, although I just open up a text editor and a console now.
 
Old 09-02-2004, 04:55 AM   #4
mungulish
Member
 
Registered: Aug 2004
Location: Hungary
Distribution: Debian, OpenSUSE
Posts: 33

Rep: Reputation: 15
You should get Suse 9.1 Pro and Slackware. Suse has a lot of development programs, more then you will ever need, greate documentation (i like the helpcenter) and it is easy to use. Use it a little then move to Slackware. If Slackware doesn't have something Suse has just copy the rpm from your Suse DVD (or CD) and do rpm2tgz . It works for me (well not always). For programming i just use vi + gcc .
 
Old 09-02-2004, 05:38 AM   #5
WhiteChedda
Member
 
Registered: Aug 2003
Location: Florida
Distribution: Mandrake 9.1 for now
Posts: 205

Rep: Reputation: 30
Hmm, hard to say really. Most of what you need is going to require you go buy some books, and after that about any installation will do.

For now I would suggest starting with getting to know the commands, in which case any CD based distro should work just fine.
Mardrake Live, Fedora, etc... as well as any HD based distro but the CD is quicker to get running.

After you get comfortable witht hat, then look into doing a gentoo level 1 or level 2 install. This will give you a little glimpse into the linux OS as you basically
will download and compile your own kernel and and some apps, if you choose level 1, you will also do boot strapping. Of course the downside to this is when you spend hours installing an OS and it flips out on you with something like "DEVFS not found, you really need to have DEVFS installed", and you must start over.

But there is no quicker way for ahuman to lern than to make a mistake, and correct that mistake, so....
 
Old 09-02-2004, 08:30 AM   #6
mhearn
LQ Guru
 
Registered: Nov 2002
Location: Durham, England
Distribution: Fedora Core 4
Posts: 1,565

Rep: Reputation: 57
I'd recommend Fedora. I was very similar to you, been a Windows developer for years, wanted to try Linux and learn to code for it etc. In my case I was a Delphi developer, but the rest is pretty much the same. So, here is some advice:

* Stick to Fedora or SuSE to start with, as these are I think the most polished and easiest distros right now. Fedora focusses on GNOME, SuSE on KDE, so quite a lot of people choose their distro based on their preferred desktop. You can try slackware later if you want, but you'll have a whole ton to learn even when using a very easy to use distro so take it easy.

* If you want to learn about operating systems, how Windows and Linux work internally, assembly language etc you could do worse than take a look at the Wine project. As it bridges the Win32 and Linux worlds, and reimplements Win32 in terms of the equivalent Linux APIs, this could be a good resource (confession: I'm a Wine developer )

* GTK+ with the GTKmm bindings are good. I think you'll prefer them to MFC. Qt is also good from a developer perspective, though I personally prefer the look and feel of GTK apps on my desktop so I tend to write GTK based software.

gtkmm is here http://gtkmm.org/ - the documentation is not complete but the bindings are a very close match to the original API, which you can find at gtk.org, "porting" documentation is a good way to contribute to this project if you want to.

* On Linux the de facto compiler is GCC, which can compile C++ quite nicely. Unlike on Windows, the compiler is not tied to the IDE in use. In fact developer tools are generally far more interoperable than on Windows. No matter what environment you use to code in, you will be compiling C++ using GCC/G++

* IDEs are not a strong point on Linux. Try learning emacs or vim, and you won't regret it - this is what nearly everybody else does. I use emacs even on Windows these days. What you lose in terms of things like integrated help/gui designer, you gain in having an environment honed for over 20 years for the purposes of editing code. It makes all the difference.

* Glade is the GTK UI designer. It generates XML files you load at runtime using libglade (or libglademm). There is a better (newer) Glade-inspired app floating around, written in Python, but I don't remember what it's called. Talk to jdahlin on GIMPnet IRC and he'll tell you where to find it...
 
Old 09-02-2004, 10:59 PM   #7
emeskay
LQ Newbie
 
Registered: Sep 2004
Distribution: SuSE 9.1
Posts: 22

Original Poster
Rep: Reputation: 15
Thank you all for your response. Based on these responses and additional reading it seems that I should go with either SUSE or Fedora rather than Mandrake as their documentation is more comprehensive and they have been around longer to mature. As for Slackware or Gentoo (thanks WhiteChedda), I can thankfully :-) make that decision at a later stage.

Outlining the two options:-
A. SUSE + KDE (+KDevelop)
B. Fedora + GNOME (+Anjuta / variety of tools)

Summary of deciding points:-
1. KDE written using QT, GNOME using GTK
2. So cant fiddle with KDE source without QT and GNOME without GTK.
3. KDevelop makes life easier for QT users.
4. But I can still use either GTK or QT to write apps on either desktop.
5. QT is more C++ oriented / GTK written in C.
6. But gtkmm provides C++ wrapper around GTK.
7. KDevelop is supposedly a more mature IDE than Anjuta.
8. SUSE documentation is better organized, KDE interface is better organized.
9. Fedora may have some Redhat -- Fedora transition issues.

(2) is not an issue at this stage. So based on the above I would go with SUSE even if I decide to use GTK/gtkmm. Moreover I liked the KDE screenshots :-).

In any case, at some point I have to stop thinking and take the plunge. Thanks, Thoreau, for the compiler and documentation tips, and many thanks, mhearn, for your suggestions. I do plan to check out Wine.

By the way I found this article in passing:
GNOME vs KDE >:->
(Some of the language is quite unwashed so beware if you are easily offended)

Regards,
SKM.
 
Old 09-03-2004, 12:15 AM   #8
slackist
Member
 
Registered: Feb 2004
Location: Phuket
Distribution: Slackware 14.2 and Slackware Arm
Posts: 479

Rep: Reputation: 44
That Gnome vs KDE link is hilarious

I always preferred Gnome, but I couldn't put my finger on why until now

mark
 
Old 09-03-2004, 01:39 AM   #9
Electro
LQ Guru
 
Registered: Jan 2002
Posts: 6,042

Rep: Reputation: Disabled
It does not matter what Linux distribution you start with because the documentation is the same for as many other distributions. If you find a documentation for Redhat and you are using Mandrake, several of the commands and file paths will be the same. Also you do not have pay for Linux, though paying them helps the distribution put together more packages and test them for the next version. I would not say that SUSE, Fedora, and many others are mature because they use the same software as other distributions.
 
Old 09-03-2004, 02:45 AM   #10
amosf
Senior Member
 
Registered: Jun 2004
Location: Australia
Distribution: Mandriva/Slack - KDE
Posts: 1,672

Rep: Reputation: 46
You've been misinformed. Mandrake is the way to go. The rest are crap
 
Old 09-03-2004, 02:53 AM   #11
realjustin
Member
 
Registered: Aug 2004
Location: /dev/null
Distribution: Slack 10, Debian
Posts: 99

Rep: Reputation: 15
Ack, I could say the same and suggest Slackware 10

Seriously though, the advice throughout this thread is great. I'd go with Suse 9.1. And later, when you feel more comfortable with Linux, go with Slackware. You won't regret it.
 
Old 09-04-2004, 05:37 AM   #12
mhearn
LQ Guru
 
Registered: Nov 2002
Location: Durham, England
Distribution: Fedora Core 4
Posts: 1,565

Rep: Reputation: 57
Hmm, KDE interface is better organized?!

Most people I know would say the reverse is true ... they've been trying to clean up that damn control centre ever since I first started using Linux. Well, each to their own

BTW there are no redhat -> fedora transition issues that I'm aware of. Fedora works great for me.
 
Old 09-05-2004, 04:26 AM   #13
redjokerx
Member
 
Registered: Aug 2004
Location: San Diego
Distribution: Slackware
Posts: 303

Rep: Reputation: 31
I like KDE cuz of the snappy windows. It's very tweakble too which I like. My window buttons are close, then a few spacer, then sticky, minimize, maximize. Other than that, I like GNOME's look and simplicity.
 
Old 09-05-2004, 10:18 AM   #14
kersten78
Member
 
Registered: Nov 2003
Location: Minneapolis, MN
Distribution: Slackware, Debian, Gentoo, openSuSE
Posts: 358

Rep: Reputation: 33
This is a great thread. Especially the KDE vs GNOME article. Great find emeskay. I just (yesterday) started using GNOME seriously. In the past, I had run it occasionally for about 10 minutes at a time before switching back to KDE or enlightenment. For some reason (possibly that I'm using a laptop now) the simplicity of GNOME has totally captivated me. I will be using it exclusively on my laptop--that is until I find a way to add a different session type in the blasted KDM in version 3.2. (I just compiled and installed Fluxbox 9.10.) It was never any trouble in the older version of KDE, just simply go to the login manager and type in the command in the appropriate box for the new window manager you installed. Anyway, great thread, and good luck emeskay.
-Kris

Last edited by kersten78; 09-05-2004 at 10:20 AM.
 
Old 09-05-2004, 10:47 AM   #15
Proud
Senior Member
 
Registered: Dec 2002
Location: England
Distribution: Used to use Mandrake/Mandriva
Posts: 2,794

Rep: Reputation: 116Reputation: 116
Hey, just wanted to add my opinion. I'm a Comp. Sci student but first installed Mandrake a few years before my degree started. I've used every release since 9.0 and have alternated between buying the PowerPacks and just downloading the isos. Mandrake is definately a breeze to install and use, and lets me get on with learing whichever thing's on my mind on any given day, eg linux configuration&kernel recompiling, Apache+PHP server, whatever. The PowerPacks have been worth it to show support and for the non-free drivers and apps, but the downloaded versions definately arent a hassle to set up either. All the goodness of RedHat's RPMs, dependancy resolving of Suse/Slackware, no problems at all.

Only now am I starting to consider a source-based distro like Slack, now I've got nothing left to mess with/break in Mandrake (and now I have broadband of course)

Mandrake is definately a great newbie and everyday easy to use linux distro, for any task.
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Programmer to Programmer ( Long Story Of A GUI ) mdoubledragon Programming 1 10-13-2005 05:41 PM
I can't decide which Distro Rick069 Linux - Distributions 18 09-24-2005 11:46 AM
Yes, I'm new. Help me decide! zombie_geek Linux - Newbie 12 02-03-2004 10:40 PM
new linux user can decide between windows 2000 and linus fusioncom Linux - Networking 1 12-04-2001 10:53 AM
Exp. Windows/Linux-Script Programmer - Need Linux Programming Mentor! ruttiger Linux - Newbie 2 10-28-2001 11:00 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Newbie

All times are GMT -5. The time now is 10:00 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration