My Math Forum  

Go Back   My Math Forum > Science Forums > Computer Science

Computer Science Computer Science Forum

Thanks Tree7Thanks
LinkBack Thread Tools Display Modes
August 11th, 2016, 06:19 PM   #21
Joined: Aug 2016
From: San Diego

Posts: 7
Thanks: 2

Python is a great language to learn tbh because its one of the easiest programs to learn/read for newcomers, extremely flexible, and it takes less time to write a program.

If you want a language that is a bit more challenging to learn but still pretty high level (as opposed to C and FORTRAN which are low-level languages that are much closer to the hardware, and thus more difficult for a newcomer) is Java. Java is pretty close to C++ in terms of syntax, and once you got a good bead on Java, diving into C++ will be less painful for you.

But I honestly would recommend that you learn multiple languages since Python and Java complement each other quite well, but just dip your toe in the pool by learning Python for now.

Here's an awesome site that will teach you the fundamentals of programming; play around with it a bit; it's pretty useful.

Last edited by Arclight; August 11th, 2016 at 06:24 PM.
Arclight is offline  
August 12th, 2016, 03:53 AM   #22
Senior Member
Joined: Apr 2014
From: Glasgow

Posts: 2,157
Thanks: 731

Math Focus: Physics, mathematical modelling, numerical and computational solutions
When first learning a programming language, you want something with
1. simple and common syntax
2. quick and accurate error reportage
3. an exposure to functions/methods that deal with memory management
4. simple data types

The reason for this is that the main aim of teaching computer programming is to communicate to your pupils about how the syntax written in a computer program translates to machine actions as clearly as possible. Only once those concepts are firmly understood should someone start experimenting with the convenient languages for specific purposes.

In my experience, scripting languages (Perl, Python, Lisp, Ruby, etc) are horrible as starting languages because there are considerable behind-the-scenes window dressing. For example, Python does not use basic data types (like integers, floats, strings, etc.) and instead uses an object that imitates the behaviour of those data types. It also has its own assumed white-space management, garbage collection and pointer semantics. It is also not declarative.

This leaves procedural languages, but you want to pick something that is at least relevant to modern programming. BASIC is not a bad option, but it often includes some outdated syntax, like the "LET" operator for assignment. Assembly languages are interesting, but are probably too low-level for students.

That leaves C and FORTRAN. I would maybe suggest C++ or C# rather than C so you can transition easily to object-orientated programming. For FORTRAN I wouldn't touch object-orientated programming with a barge pole (seriously... don't go there).
Benit13 is offline  
August 16th, 2016, 12:30 AM   #23
Joined: Jan 2016
From: United States

Posts: 61
Thanks: 7

Originally Posted by Denis View Post
I've been exposed to Basic, COBOL, Fortran and a couple others (YEARS ago!);
as far as I'm concerned, everybody should start with Basic:
quite easy, thus removing most "newcomer jitters"...

Btw, also suffered through Machine language...forgot everything!!
In my highschool the programming 1 class taught us QBasic. While I don't remember much about QBasic I can say it was straight forward and fun. Definitely don't regret it.

Also to answer this threads question, while I don't know anything about Fortran or what you're going to learn it for, a lot of concepts carry over between programming languages. The one that takes the most work to learn is usually the first you learn since you're not just learning the syntax but also the core concepts of programming and computer science. Once you move on to learn another programming language it's a lot less about learning concepts and a lot more of just remembering the languages syntax and subtleties. If you're going to be doing a lot of programming throughout your life make sure that you either learn a language which uses object oriented programming, or implement it in a language that doesn't naturally support it. If that's not the case and you just need to learn Fortran for a specific class or situation, then learning Fortran or some similar language first would be fine.

I'd also recommend to obtain a good textbook, or coursera course on whatever language you end up choosing. It can be tempting to use a lot of the youtube tutorial series to learn, but they usually just give the illusion of knowing, since they don't necessarily get into the specifics and small things of the language. (I speak from experience here >.<) good luck

Edit: Oh... and also many universities use either java or python as their programming language for introductory courses (atleast here in the states). They are both pretty beginner friendly, although that doesn't mean you can't start with a different one. Whichever you end up choosing just make sure you properly memorize the syntax. You have no idea how many people in my school try to initialize an integer variable in java as: string double x = 4; In their final exam...

Last edited by GumDrop; August 16th, 2016 at 12:35 AM.
GumDrop is offline  

  My Math Forum > Science Forums > Computer Science

language, learn, programing

Thread Tools
Display Modes

Similar Threads
Thread Thread Starter Forum Replies Last Post
Basic programing - truncate a number Melody2 Computer Science 6 October 27th, 2013 07:35 PM
embedded programing pros and cons fredfmah Computer Science 4 November 27th, 2012 11:38 PM
Linear Programing zoidberg Linear Algebra 0 December 11th, 2010 10:24 PM
Linear Programing problem dha1973 Economics 0 December 9th, 2009 09:28 PM
Linear programing word problem JudaStar Linear Algebra 2 February 20th, 2009 12:34 PM

Copyright © 2019 My Math Forum. All rights reserved.