rpiboy
Posts: 110
Joined: Mon Mar 20, 2017 8:39 pm

Programming Question

Fri Jul 07, 2017 12:05 am

Hi, what level of mathematics does a person need to start programming?

asandford
Posts: 1997
Joined: Mon Dec 31, 2012 12:54 pm
Location: Waterlooville

Re: Programming Question

Fri Jul 07, 2017 1:42 am

What level of chemistry does a person need to start cooking?

All depends on what you want to acheive.

Heater
Posts: 13344
Joined: Tue Jul 17, 2012 3:02 pm

Re: Programming Question

Fri Jul 07, 2017 2:36 am

rpiboy,
Hi, what level of mathematics does a person need to start programming?
None.

Back in the 1980's a lot of kids, think 10 year olds, got things like C64 or Sinclair Spectrum etc computers for Christmas or their birthday. Their first program may have been:

Code: Select all

10 PRINT "HELLO"
They soon progressed to:

Code: Select all

10 PRINT "HELLO"
20 GOTO 10
Often with a rude message rather than just "HELLO".

I see no maths there.

Today millions of people create all kinds of complex programs in Javascript with no maths skills at all. Beyond high school arithmetic.

Having said that knowing some maths helps. Learning to program can inspire one to investigate some maths as you go.

So, don't worry about the maths. Just roll up your sleeves and do some experiments in programming. It's fun.

alexpowel
Posts: 1
Joined: Mon Jul 10, 2017 3:00 am
Location: United States
Contact: Website Yahoo Messenger

Re: Programming Question

Mon Jul 10, 2017 3:08 am

Basic maths in compulsory. Trigonometry and Calculus is a must. Moreover Matrix will also help.

jahboater
Posts: 4686
Joined: Wed Feb 04, 2015 6:38 pm

Re: Programming Question

Mon Jul 10, 2017 9:06 am

alexpowel wrote:Basic maths in compulsory. Trigonometry and Calculus is a must. Moreover Matrix will also help.
I disagree.
Some very trivial math might be useful, and the mind set needed for mathematical analysis can help with program design.

Trigonometry and Calculus is only of interest if your application specifically needs it - which very few do.

To start simple programming though, no maths at all is required.

User avatar
Burngate
Posts: 6011
Joined: Thu Sep 29, 2011 4:34 pm
Location: Berkshire UK Tralfamadore
Contact: Website

Re: Programming Question

Mon Jul 10, 2017 10:00 am

First define what you mean by mathematics.

When most people say mathematics, they really mean arithmetic - being able to count, add and subtract, multiply and divide. That's probably necessary, if only to work out how many cappuccinos have to be missed to be ably to buy a Pi. Language skills are probably more important, particularly for higher-level languages. Since Basic has been superceded by Python, you don't even need to count lines.

Some years ago I took a series of Open University Maths and Physics courses - I can't remember their titles, but for one the set book was Paul Halmos' Naive Set Theory, another covered Vector Spaces, yet another delved into Particle Physics (before Higgs had discovered his Boson).
None of that helped me with programming - in fact, since it led to me meeting my wife, it probably caused real life to get in the way of playing with computers. Since her death, I've spent more time than I should hanging out here, as a substitute for real life.

jardino
Posts: 129
Joined: Wed Aug 08, 2012 9:03 am
Location: Aberdeenshire, Scotland

Re: Programming Question

Tue Jul 11, 2017 10:10 am

I was in the computer business for nearly four decades and never had a need to use mathematics, other than arithmetic.
When I got involved in programming close to the machine level, some facility in converting decimal numbers to and from octal and hexadecimal had to be learned, however.
(In fact, during this period, my daughter, then in high school, once asked me to help her with her maths homework. I was shocked that I couldn't solve a simple quadratic equation. But, then, I hadn't had to do so since I myself left high school. (And it was after Sunday dinner and some red wine!)

Like Burngate, I undertook some Open University Maths and Physics courses after I quit working. Although my maths was rusty in general, I was pretty good at trigonometry, since I been using it in my hobby of computer graphics.

As Burngate said, language skills are more important than maths skills - especially if you get involved in COBOL (unlikely these days), or progress from programming to systems analysis and consultancy.

Alan.
IT Background: Honeywell H2000 ... CA Naked Mini ... Sinclair QL ... WinTel ... Linux ... Raspberry Pi.

drgeoff
Posts: 9813
Joined: Wed Jan 25, 2012 6:39 pm

Re: Programming Question

Tue Jul 11, 2017 3:36 pm

For programming you need to be able to think logically. By 'logic' I don't just mean ones and zeros, AND and OR etc. In an orderly, structured way, no non-sequiturs, no ambiguities. The study of mathematics tends to strengthen such ability.

Heater
Posts: 13344
Joined: Tue Jul 17, 2012 3:02 pm

Re: Programming Question

Thu Jul 13, 2017 6:21 am

drgeoff,
For programming you need to be able to think logically. By 'logic' I don't just mean ones and zeros, AND and OR etc. In an orderly, structured way, no non-sequiturs, no ambiguities. The study of mathematics tends to strengthen such ability.
For doing mathematics you need to be able to think logically. By 'logic' I don't just mean ones and zeros, AND and OR etc. In an orderly, structured way, no non-sequiturs, no ambiguities. The study of programming tends to strengthen such ability.

Sorry, could not resist.

At the end of the day I suggest not worrying about the maths and the logic. Just start tinkering with programming. After all, children start speaking before they know anything about the grammar of the language they are picking up.

Just follow some tutorials, examples etc. Have fun tinkering with programming.

Heater
Posts: 13344
Joined: Tue Jul 17, 2012 3:02 pm

Re: Programming Question

Mon Jul 17, 2017 12:56 pm

Why would one agree with a statement that is demonstrably incorrect?

I'm very sure it's easy to find millions of people who get a lot of useful programming done or program for their own amusement who know nothing of Trigonometry, Calculus and Matrix maths.

You can start by just finding a COBOL programmer :)

Certainly I got a start programming in BASIC with before I'd even heard of calculus and with precious little Trig or Matrix math under my belt.

The neat thing is that anyone who gets into programming will likely eventually run into something they want to do that does require things like trig and matrix maths. Might be a graphics thing they want to do. Or figuring out how to move their robot. What happens then I don't know. I guess some give up on that problem, others will be encouraged to knuckle down and learn what is required.

I only recall ever having to use calculus once in my programming career. Graph theory has been more helpful.

User avatar
bensimmo
Posts: 4175
Joined: Sun Dec 28, 2014 3:02 pm
Location: East Yorkshire

Re: Programming Question

Mon Jul 17, 2017 3:13 pm

Primary school maths probably, since they do programming in primary schools.

The more you know and the more logic you know the more you can program the mathematics you may need and understand it.

jahboater
Posts: 4686
Joined: Wed Feb 04, 2015 6:38 pm

Re: Programming Question

Mon Jul 17, 2017 3:56 pm

Heater wrote:I only recall ever having to use calculus once in my programming career.
I never used calculus or trigonometry at all in mine.
Had to learn it all for A level math and University of course, but never actually used it.

The thought processes for mathematical analysis in general, were considered helpful in software engineering.

User avatar
Burngate
Posts: 6011
Joined: Thu Sep 29, 2011 4:34 pm
Location: Berkshire UK Tralfamadore
Contact: Website

Re: Programming Question

Mon Jul 17, 2017 4:16 pm

Off the top of my head, there are a couple of areas that might be facilitated by knowledge of calculus: PID control in robotics or quadcopters, and power monitoring in AC circuits.
Though in reality, just plugging your own numbers into somebody else's script would do the same job, without knowing how it works.

I'm less sure about matrices.
I'm reminded of the 1920's discussion re: Schroedinger's wave mechanics versus Heisenberg's matrix mechanics.
They both solved the same problems, and came up with the same answers.
No-one now is taught the latter, and no-one is worse off for that.

So it appears that whatever you think you need matrices for, you can probably do with calculus.

ShiftPlusOne
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 5967
Joined: Fri Jul 29, 2011 5:36 pm
Location: The unfashionable end of the western spiral arm of the Galaxy

Re: Programming Question

Mon Jul 17, 2017 4:49 pm

Heater wrote:Why would one agree with a statement that is demonstrably incorrect?
95% certain it's a spambot, given the profile link is to a 'marketing agency' specialising in 'seo'. Keeping an eye on it, since it's probably going to start posting spam links in a few days.

User avatar
PeterO
Posts: 5021
Joined: Sun Jul 22, 2012 4:14 pm

Re: Programming Question

Mon Jul 17, 2017 4:57 pm

Reading this it seems none of you has done any 3D graphics programming where understanding trigonometry and matrix algebra are essential.

PeterO
Discoverer of the PI2 XENON DEATH FLASH!
Interests: C,Python,PIC,Electronics,Ham Radio (G0DZB),1960s British Computers.
"The primary requirement (as we've always seen in your examples) is that the code is readable. " Dougie Lawson

Heater
Posts: 13344
Joined: Tue Jul 17, 2012 3:02 pm

Re: Programming Question

Mon Jul 17, 2017 5:19 pm

ShiftPlusOne,

Damn, I fall for it every time. Must remember to check the posters post count.

BMS Doug
Posts: 3824
Joined: Thu Mar 27, 2014 2:42 pm
Location: London, UK

Re: Programming Question

Thu Jul 27, 2017 7:36 am

Heater wrote: Why would one agree with a statement that is demonstrably incorrect?
To be contrary for the sake of exaggeration? I'd been tempted to add that n-dimensional geometry was essential, but thought that would be a step to far.
ShiftPlusOne wrote:
Mon Jul 17, 2017 4:49 pm
95% certain it's a spambot, given the profile link is to a 'marketing agency' specialising in 'seo'. Keeping an eye on it, since it's probably going to start posting spam links in a few days.
or spambot, thats also possible.
PeterO wrote:
Mon Jul 17, 2017 4:57 pm
Reading this it seems none of you has done any 3D graphics programming where understanding trigonometry and matrix algebra are essential.

PeterO
All sorts of maths could be useful in specific situations but the OP wanted to know what was needed to start programming.
rpiboy wrote: Hi, what level of mathematics does a person need to start programming?
None, you can start programming with no mathematical experience.
Doug.
Building Management Systems Engineer.

W. H. Heydt
Posts: 10890
Joined: Fri Mar 09, 2012 7:36 pm
Location: Vallejo, CA (US)

Re: Programming Question

Sat Jul 29, 2017 4:02 am

Heater wrote:
Mon Jul 17, 2017 12:56 pm
I'm very sure it's easy to find millions of people who get a lot of useful programming done or program for their own amusement who know nothing of Trigonometry, Calculus and Matrix maths.

You can start by just finding a COBOL programmer :)
Well THIS retired COBOL programmer learned Trig, Differential and intergral Calculus, and some matrix math. Not that I ever used any of it in programming and it has nearly all rotted away over the last 50 years, but I did learn those types of math. (I'll grant you that most COBOL programmers don't even know that the language has data types for floataing point, though.)

neilakos
Posts: 15
Joined: Fri Sep 09, 2016 1:45 pm

Re: Programming Question

Wed Aug 09, 2017 2:23 pm

Nothing truer than no maths required. I think of programming like learning a language.

Good thing, as I am quite bad at math

Heater
Posts: 13344
Joined: Tue Jul 17, 2012 3:02 pm

Re: Programming Question

Wed Aug 09, 2017 4:23 pm

rpiboy,
what level of mathematics does a person need to start programming?
I have been puzzling over this question and come to a conclusion:


The very asking of the question itself demonstrates enough mathematical skill on the part of the for the questioner for them to start programming.

How so?

The use of "what level" indicates the questioner has some notion of quantity. Of sequence. An ordering of things. Of comparison. Of one thing being more or less than another thing. A number line if you like. Arguably a foundation of mathematics.

The use of "...does a person need to start..." indicates the questioner has some notion of predicate logic. If X then Y kind of thing. This is the basis of mathematical proofs.

Put another way the question could expressed in a programming language, C for example:

Code: Select all

if (myLevelOfMathematics >= requiredLevelOfMathematics)
{
    printf("Yay, I know enough to start programming\n");
    startProgramming();
}
else
{
    printf("Boo, I'm too dumb to start programming\n");
    exit(1);
}
The very ability to ask the question shows enough maths skill to start programming.

User avatar
r3d4
Posts: 967
Joined: Sat Jul 30, 2011 8:21 am
Location: ./

Re: Programming Question

Fri Aug 11, 2017 10:41 am

rpiboy wrote:
Fri Jul 07, 2017 12:05 am
Hi, what level of mathematics does a person need to start programming?
As long as you know the length of a peace of string you are good to go :D

drgeoff
Posts: 9813
Joined: Wed Jan 25, 2012 6:39 pm

Re: Programming Question

Fri Aug 11, 2017 11:40 am

@r3d4
Piece be unto you.

User avatar
r3d4
Posts: 967
Joined: Sat Jul 30, 2011 8:21 am
Location: ./

Re: Programming Question

Fri Aug 11, 2017 12:29 pm

drgeoff wrote:
Fri Aug 11, 2017 11:40 am
@r3d4
Piece be unto you.
I think hes taking the piece :oops:

Return to “Off topic discussion”