Go Back   Science Forums > Physical Sciences Forums > Computer Science and Technology
Reply
 
LinkBack Thread Tools
Old 06-23-2006   #1 (permalink)
CHADS's Avatar
Thinking


Location:
Liverpool , England
 
CHADS is on a distinguished road
 



Not Ranked  0 score     
choice with language Help!

Hi all .....
I want to learn to programme , i know very little but am fascinated at what my brother has shown me about the subject ...
The problem is i dont know what language to learn. C++ seems very popular and the new c# but what about just plain c ... i like the idea of the origional C for sentimental reasons but would learning c leave me behind with c++ and C# programmers ... i know very little at the moment but im determined to learn .. any suggestions?
Reply With Quote
Old 06-23-2006   #2 (permalink)
Mercedes Benzene's Avatar
Student

Moderator
Editor

Location:
Montgomery County, Maryland
Latest blog entry:
 
Mercedes Benzene has a reputation beyond reputeMercedes Benzene has a reputation beyond reputeMercedes Benzene has a reputation beyond reputeMercedes Benzene has a reputation beyond reputeMercedes Benzene has a reputation beyond reputeMercedes Benzene has a reputation beyond reputeMercedes Benzene has a reputation beyond reputeMercedes Benzene has a reputation beyond repute
Send a message via AIM to Mercedes Benzene
 



Not Ranked  0 score     
Re: choice with language Help!

I suggest C++. After you learn the C++ basics, I would go onto Java, just because it's more versatile (in some ways).
If you really want to start simple, try Visual Basic...
I learned C++ through school, but there are soo many excellent books on programming that can help you learn.

Also, it may be more helpful if you told us what you wanted to be able to do with your programming. This would help identify the most appropriate language.

Cheers!


----------------
My Hypo-blog.

"No power in the 'verse can stop me."

Moderator -- Chemistry, Biology, Watercooler, Competitions, Architecture.
Join our Facebook group
Reply With Quote
Old 06-23-2006   #3 (permalink)
CHADS's Avatar
Thinking


Location:
Liverpool , England
 
CHADS is on a distinguished road
 



Not Ranked  0 score     
Re: choice with language Help!

Most definatly Game building but i would like the Versitility to create new programmes that come about and be able to keep up with new developments in a wide range of industries .... even firewalls and anti viral software........ But certainly want to keep things versitile .

I understand the basic constructs in c and c++ and understand how the programme can evolve but i havnt a clue what end products they can achieve.. Its all quite new to me and exciting like a new bike , where can it take me .
Reply With Quote
Old 06-23-2006   #4 (permalink)
Mercedes Benzene's Avatar
Student

Moderator
Editor

Location:
Montgomery County, Maryland
Latest blog entry:
 
Mercedes Benzene has a reputation beyond reputeMercedes Benzene has a reputation beyond reputeMercedes Benzene has a reputation beyond reputeMercedes Benzene has a reputation beyond reputeMercedes Benzene has a reputation beyond reputeMercedes Benzene has a reputation beyond reputeMercedes Benzene has a reputation beyond reputeMercedes Benzene has a reputation beyond repute
Send a message via AIM to Mercedes Benzene
 



Not Ranked  0 score     
Re: choice with language Help!

I would aim for JAVA eventually.
Start with C++.

Good luck!


----------------
My Hypo-blog.

"No power in the 'verse can stop me."

Moderator -- Chemistry, Biology, Watercooler, Competitions, Architecture.
Join our Facebook group
Reply With Quote
Old 06-24-2006   #5 (permalink)
CHADS's Avatar
Thinking


Location:
Liverpool , England
 
CHADS is on a distinguished road
 



Not Ranked  0 score     
Re: choice with language Help!

Cheers M B .....

Ive managed to download a C/C++ compiler and tutorials that go with it and a java tutorial all free of the net .....Nice!!!
Hopefully i will well be on the road with what i have . il try and find a good java compiler next ...... thanks for the advice.
Reply With Quote
Old 06-24-2006   #6 (permalink)
InfiniteNow's Avatar
Suspended


Location:
Austin, TX
 
InfiniteNow has a reputation beyond reputeInfiniteNow has a reputation beyond reputeInfiniteNow has a reputation beyond reputeInfiniteNow has a reputation beyond reputeInfiniteNow has a reputation beyond reputeInfiniteNow has a reputation beyond reputeInfiniteNow has a reputation beyond reputeInfiniteNow has a reputation beyond reputeInfiniteNow has a reputation beyond reputeInfiniteNow has a reputation beyond reputeInfiniteNow has a reputation beyond repute
 



Not Ranked  0 score     
Re: choice with language Help!

Nah... if you want a really strong program, one that is robust, accessible, can perform tasks like HAL on crack...I'd say go with Quick Basic. Whoa... what will they think of next?

No wait, what about DOS? That's the way to go...
Reply With Quote
Old 06-24-2006   #7 (permalink)
KickAssClown's Avatar
A Person


Location:
Here and now
 
KickAssClown is a name known to allKickAssClown is a name known to allKickAssClown is a name known to allKickAssClown is a name known to allKickAssClown is a name known to all
Send a message via MSN to KickAssClown Send a message via Yahoo to KickAssClown
 



Not Ranked  0 score     
Re: choice with language Help!

Java is good for somethings, but so far it has proved inferior for game apps. One of the major issues with it is that it's a resource intensive language. It also doesn't allow for (to my knowledge) low level Memory management. Though it does have the advantage of being able to cross platforms. Some other, less known, languages i would suggest looking to are : J & Ruby.

Though I like C++ and C#, The main problem with them is that they are mainly controlled by Microsoft, and the IDEs that have been coming out of MS lately have been rather... below par for the steep price of the software suite.


----------------
There are no truths in science, only the falsifiable hypotheses and explanations of the people who test them.

Hyper Physics
Hyper Math
Wikipedia
Reply With Quote
Old 06-24-2006   #8 (permalink)
Pyrotex's Avatar
Slaying Bad Memes

Moderator
Editor

Location:
Houston, Texas
Latest blog entry:
 
Pyrotex has a reputation beyond reputePyrotex has a reputation beyond reputePyrotex has a reputation beyond reputePyrotex has a reputation beyond reputePyrotex has a reputation beyond reputePyrotex has a reputation beyond reputePyrotex has a reputation beyond reputePyrotex has a reputation beyond reputePyrotex has a reputation beyond reputePyrotex has a reputation beyond reputePyrotex has a reputation beyond repute
Send a message via MSN to Pyrotex
 



Not Ranked  0 score     
Re: choice with language Help!

All these languages have strengths and weaknesses.
C is as close to machine language as you can get nowadays. It gives detailed control over your applications. But at a cost of time. In other words, what you can accomplish in 1 line of Perl or Java will take you 10 lines of C. C can therefore be very tedious to debug. Once debugged, a properly designed C app will be faster than the same app in almost any other language.

C++ and C# are attempts to insert Object-Oriented discipline on C. "OO" has become a religion in some programming circles. It does enable a good programmer to create more orderly and less chaotic code. Debugging is easier. I recommend OO (which is also built into Java), which essentially forces you to be organized and think through your design. However, it is NOT a panacea for all applications. And it won't turn a bad programmer into a good one.

Java is a pure OO language. It has a lot of graphics built in, and direct support from browsers, unlike C and C++ so you can easily do Graphic User Interfaces (GUI). Java was designed to be "safe" so there is no way for a Java applet to access your PC's memory directly. You can build your app as a native stand-alone application to overcome this, then you lose the support of a browser. Java requires learning a LOT about the language structure.

Perl is the all-around choice of your gunslinger programmers who want an application that works well and can be built quickly. Perl is the Swiss Army Knife of languages--it has a lot of powerful built-ins. Text processing especially. Direct database power and system level calls. God programs in Perl. However, it lacks the speed of a compiled language and you have to import a library if you want to build a GUI. Messy. Perl also demands a LOT of self-discipline or you can wind up with a tangled mass of junk you cannot debug.

Visual Basic (Microsoft) is an ugly, obscene, overly-wordy and utterly tacky language. It has its uses. Doing VB macros in Excel is powerful though not easy. I teach VB for Excel at NASA. But as a general purpose language, it will make your fingers bleed. And it wastes paper. People who say it is "self documenting" are NOT programmers.

I prefer a hybrid approach. The last app I delivered to NASA used JAVA stand-alones for the GUI, server-side PERL and mySQL, and a few C subroutines to do some high-speed data transfer and calculations. I often did a "rough-draft" of an algorithm in Perl to make sure it worked, and then had someone translate it into C or C++.


----------------
Hypography Forums Moderator
-- - - - - -
What concerns me is not the way things are, but rather the way people think things are.
Epictetus, Greek Philosopher
The map is NOT the territory.
Korzybski, Polish-American Philosopher

Last edited by Pyrotex; 06-24-2006 at 09:17 PM..
Reply With Quote
Old 06-26-2006   #9 (permalink)
Buffy's Avatar
Resident Slayer

Administrator

Location:
Sunnydale, CA
 
Buffy has a reputation beyond reputeBuffy has a reputation beyond reputeBuffy has a reputation beyond reputeBuffy has a reputation beyond reputeBuffy has a reputation beyond reputeBuffy has a reputation beyond reputeBuffy has a reputation beyond reputeBuffy has a reputation beyond reputeBuffy has a reputation beyond reputeBuffy has a reputation beyond reputeBuffy has a reputation beyond repute
 



Not Ranked  0 score     
Cool Re: choice with language Help!



C++ is indeed "OO on C". It was followed very quickly by Objective-C which came out of Steve Jobs' NeXT adventure, but it is a complete niche player.

Java was an attempt at a "new" OO Language, but its really about 90% C++, and its mainly missing multiple-inheritance, which drives us OO nuts up the wall.

People always have a *very* hard time distinguishing the language from the library support around it. The main thing that really distinguishes Java is that it has standardized its UI and communications libraries as part of the standard and made them at least somewhat platform independent. The "cross-platform" UI is based on an amalgamation of several X-Server (Unix) widget libraries, and as a result, its really sucky on Windows and Mac. Don't be fooled: its pretty worthless if you want a "native" look and feel.

This mistaken tying of the language to the environment is the *only* basis for saying that "Microsoft owns C++". In fact, in the last several releases of Visual Studio, C++ has been a poor stepchild, much to the chagrin of most of Microsoft's development groups. They added a completely new library to replace MFC (CLR) a few years ago and finally added C++ support for it in VS2005, and while its highly "proprietary" its really no moreso than MFC has been for the last 15 years (yes, its that old).

C++ has numerous "standard" interfaces, but as with Java, they tend to be Unix like. Those of us who do this for a living know that if you actually want your users to want your product, you have Windows and Mac code lines that hopefully have the UI somewhat abstracted, but...good luck with that.

Java's "performance" issues are a red herring. Many systems compile it completely and App Servers from IBM, Weblogic, Oracle, etc. have more than adequate performance for very high transaction rate applications. If you were to use it for games, I'd strongly suggest you do get a Java compiler (oodles of them to choose from from Sun, Borland, Oracle, IBM, etc.).

C# is Microsoft's proprietary version of Java. As such, it uses their proprietary CLR library, and "Java applications" are not portable into it except for close similarity of language syntax. Don't bother with C# unless you're dealing with legacy apps now that use it: with full support for CLR in C++, some of us are betting that C# might die an ugly if delayed death.

Game programming: yes, go with C++. Good perf, strong UI libs in existence (in fact, I'd say go with the game programming tools rather than trying to build your own physics and rendering engines!).

General programming: C++ again, but if you want to start simple, VB will do, but it will teach you some very nasty programming habits (if statements with out "end ifs" sacrelige! (I know you can quibble with this one Q: don't bother!))

Web programming: Java Server Pages. Yes, some folks like PHP, and the installed base makes it more useful for "home" use, but if you want a job, you have to have JSP/J2EE/AppServer knowledge. Avoid ASP.Net unless you're really gonna stay in MS-land. It totally bit the big one until 2.0, and even that is idiocyncratic as all heck. Its a programmer's full employment act though!

Hacking: Okay, I'll second the motion on Perl, but I still think you need to have a seriously bent mind to think its "easy to use". It reminds me of APL. Scripting is the main use. Its got some weird applications, but don't bother to learn it until you *need* it.

AI: Lisp. Lisp. Lisp. Franz if you can afford it, GNU CommonLISP if you can't. But Lisp.

Language maven,
Buffy


----------------
"If you do not agree with anything I say, I'll not only retract it, but deny under oath that I ever said it!"
__________________________________________________ ______________-- Tom Lehrer

"No Robbie, not Europe!"


Forum Administrator
Hypography Science Forums - Science for Boys and Girls! Its not for nothing that we hang out here.

Last edited by Buffy; 06-26-2006 at 01:32 AM..
Reply With Quote
Old 06-26-2006   #10 (permalink)
Pyrotex's Avatar
Slaying Bad Memes

Moderator
Editor

Location:
Houston, Texas
Latest blog entry:
 
Pyrotex has a reputation beyond reputePyrotex has a reputation beyond reputePyrotex has a reputation beyond reputePyrotex has a reputation beyond reputePyrotex has a reputation beyond reputePyrotex has a reputation beyond reputePyrotex has a reputation beyond reputePyrotex has a reputation beyond reputePyrotex has a reputation beyond reputePyrotex has a reputation beyond reputePyrotex has a reputation beyond repute
Send a message via MSN to Pyrotex
 



Not Ranked  0 score     
Re: choice with language Help!

Quote:
Originally Posted by Buffy
...Hacking: Okay, I'll second the motion on Perl, but I still think you need to have a seriously bent mind to think its "easy to use"....Scripting is the main use. ...
I second most everything you said, with some caveats on AI. LISP is traditional for AI mostly because nobody has developed a better language for it. AI is still an "orphan" field in computer research, alas. [Any code that ends with 2 pages of right parens should raise some issues.] A much better language is well deserved there, but we shall have to wait.

IMHO, Perl can be as "easy" as you make it. In my lab, I strictly impose a set of rules on my programmers that prevents any resemblance to APL. A number of quirky code techniques are forbidden, and we have no real need of them anyway. The use of Regular Expressions IS required in my lab, and they can be arcane and esoteric. My commenting standards help a fair bit, though I still run into programmers who would rather be fired than comment their code. I fire them.

I once brought in a piece of assembly language code (TI-960) that I wrote in 1975. I showed it to my programmers. They were astounded that they could read and understand what it was doing with only a short (10 minute) briefing from me on the syntax. The key was standardization, intentional clarity, and structured comments. This works for any language.

I designed a website entirely in Perl and mySQL that produces dynamic HTML. It contains an embedded, full-functional, timecard system. About 10,000 lines of Perl in 40 modules. Bug free and easy to modify when necessary. Took 5 months to design/code/debug/document/deliver.


----------------
Hypography Forums Moderator
-- - - - - -
What concerns me is not the way things are, but rather the way people think things are.
Epictetus, Greek Philosopher
The map is NOT the territory.
Korzybski, Polish-American Philosopher
Reply With Quote
Reply

Bookmarks


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools


Similar Threads
Thread Thread Starter Forum Replies Last Post
Multiple Choice polls InfiniteNow Suggestions and Wish List 14 08-02-2006 02:13 PM
Choice goes both ways? IrishEyes Philosophy Forums 31 12-11-2005 09:48 AM
Autoroute and Software like that_whats the best choice? kazbadan Watercooler 1 08-23-2005 04:33 PM
Make your choice, that is about worlds' product. Ps2Huang Books, movies, games 6 05-04-2005 05:14 PM
language system?! Tim_Lou Philosophy Forums 96 01-13-2005 04:16 PM

» Advertisement
» Current Poll
Who's the sexiest man alive? Johnny Depp or Robert Pattinson?
Johnny Depp - 30.00%
3 Votes
Robert Pattinson - 0%
0 Votes
Someone else (please specify) - 40.00%
4 Votes
I'm too macho to think a guy is sexy - 30.00%
3 Votes
Total Votes: 10
You may not vote on this poll.


All times are GMT -8. The time now is 09:11 PM.

Hypography?

Hypography [n.]: A combination of "hyperlink" and "bibliography" - ie, a list of links to electronic documents. Comparable to discography and bibliography, but not cartography.

We have been online since May 2000, and aim to be the best place to find and share science-related content of all kinds.

Share the love!

Please add more science to your life. Use our RSS feeds on your blog, your portal, or your favorite feedreader!


Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.3.2
Copyright © 2000-2009 Hypography
Part of the Hypography - Science for Everyone Network