[Sussex] Linux IDE's

Steve Dobson steve at dobson.org
Thu Apr 14 18:39:58 UTC 2005


Matthew

On Thu, Apr 14, 2005 at 04:45:13PM +0100, Geoffrey J. Teale wrote:
> Matthew Macdonald-Wallace <matthew at truthisfreedom.org.uk> writes:
> > I'm starting to learn C++ and wondered if anyone had suggestions for
> > IDE's that play nicely.
> >
> > I realise that to do it the proper way I should probably use EMACS or
> > VI, but I'm finding it difficult enough learning programming to have
> > time to learn a new advanced editor, so I'm really looking for a GUI.
> 
> OK.. I _could_ recommend some IDE's.  
> 
> Here's some advice though.  
> 
> 1. Don't learn a language in an IDE
> =================================== 
> 
> The IDE will colour your understanding horribly.  Moreover you'll find
> that (just as with vi or emacs) you'll spend a lot of time learning
> how to use the tool (or work around it's problems) and won't really
> learn the language.

I was going to say out of this because my views on IDEs have been
questioned else where, but as Geoff supports my views I will add my
own thoughts in support of his.

An IDE hides what it is doing underneath the covers.  Learning how 
the compiler, assembler, linker work is an important part of learning
C++ or any other language like it.  If you don't learn the command
lines you can't understand how to write make(1) files.

There are no short cuts in learning how to program.  A lesson skipped
in a lesson missed.
 
> Emacs and VI won't colour you in this way, but (emacs at least) will
> give you a lot of the power of an IDE without the bad aspects.  Even
> so, I would take your own advice 
 
I would suggest emacs before vi.  It is probably the easiest to get 
started with, but you _should_ plan on adding both to your toolkit.
 
> 2. Don't learn C++ unless you have to.
> ======================================
> 
> If you're just trying to learn to program then I'd recommend an easier
> language, python or even C# (Mono is pretty good and Ed Dumbhill's
> book is great).  C++ is great, and powerful, but it is also vast and
> flexible enough to get lost in for several lifetimes.
 
Pick the language best suited for the application you're trying to 
develop.  Some programming languages are better suited to some tasks
than others.  So pick the one that is going to make your life easier.
 
> 3. If you need to learn C++ then join the ACCU
> ==============================================
> If you need to learn C++ I'd advise you to join the ACCU.  We have a
> mentoring scheme that allows developers of all levels to develop their
> skills with support and advice from old pros.  
> 
> http://www.accu.org
 
I'm not a member, but I should check them out.
 
> 4. Be careful where you learn from
> ==================================
> Be warned many, many C++ books will teach you a style of C++ that
> archaic and frowned upon by serious, "High Church"  C++ developers.  

This is very true.  Stroustrup's "C++ Programming Language" is the
bible, but it is more a reference guide when you know what you're doing
than a starter guide.  I learnt C++ so long ago that I wouldn't even
attempt to recommend a book to teach the subject.

Steve

-- 
Computers are not intelligent.  They only think they are.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : http://mailman.lug.org.uk/pipermail/sussex/attachments/20050414/c25bc829/attachment.pgp 


More information about the Sussex mailing list