Should Devs know how maths works?
-
CDP1802 wrote:
Are you in any way related to our intern?
No, are you? I assure you that in my situation knowing binary math is not very important and has never, ever, been needed.
-- ** You don't hire a handyman to build a house, you hire a carpenter. ** Jack of all trades and master of none.
-
They should also know how a computer works, and how the VM or runtime they are targeting works.
cheers, Chris Maunder The Code Project | Co-founder Microsoft C++ MVP
-
What will be the next question, then? Perhaps you could ask some fishermen if they regard knowledge about fish and steering a boat as important. Or ask your reverend wether or not anything written in the Bible is important to him :) Seriously, I was almost moved to tears when our intern (Mr. Framework himself) looked at a hex dump and saw no connection at all to that '1 and 0 stuff'.
"I just exchanged opinions with my boss. I went in with mine and came out with his." - me, 2011 ---
I am endeavoring, Madam, to construct a mnemonic memory circuit using stone knives and bearskins - Mr. Spock 1935 and me 2011Not everyone is like you. What you think should be important may not be important to me or the next guy. I do very well for myself in my profession (on all levels). To slight me because I don't get off on 0's and 1's is lame. Instead of talking smack about your intern and crying about it, why don't you take the time to show this person the connection between the 1's and 0's and why they are important.
-- ** You don't hire a handyman to build a house, you hire a carpenter. ** Jack of all trades and master of none.
-
Nemanja Trifunovic wrote:
What Every Computer Scientist Should Know About Floating-Point Arithmetic
:omg: I am SO glad I'm not a Computer Scientist... My knowledge of this is totally binary - I only know a 'bit'. ;) Danny
-
Slacker007 wrote:
knowing binary math
There are 10 kinds of people: those who know binary maths, and those who don't. OK OK, exptected.
Rage wrote:
those who don't.
That's me. I have a two story house, a cabin in the mountains, two cars, and a bitchin' retirement plan and I did it all without knowing binary math. Who would of thunk it? :)
-- ** You don't hire a handyman to build a house, you hire a carpenter. ** Jack of all trades and master of none.
-
Although "knowing" how a computer does stuff (math, calculations, etc..) is nice, unless you need to know this stuff it doesn't really mean anything to the average developer/programmer. I learned a lot of this in College but have forgotten most of it over the years because I have never needed it...at all. I think "knowing" this stuff is on a personal level...do you care to know it. My thoughts on the subject. :)
-- ** You don't hire a handyman to build a house, you hire a carpenter. ** Jack of all trades and master of none.
Slacker007 wrote:
I learned a lot of this in College but have forgotten most of it over the years because I have never needed it...at all.
Betcha you learned subnetting, too. I've yet to walk into a place having to know any of that...and if, by chance, I ever do have to design a network, I'll use a calculator. Certainly won't try to do it in my head.
Never give aversion therapy to a masochist. The results are unpredictable. My Mu[sic] My Films My Windows Programs, etc.
-
They should also know how a computer works, and how the VM or runtime they are targeting works.
cheers, Chris Maunder The Code Project | Co-founder Microsoft C++ MVP
Chris Maunder wrote:
They should also know how a computer works, and how the VM or runtime they are targeting works.
Amen to that... Danny
-
Slacker007 wrote:
I learned a lot of this in College but have forgotten most of it over the years because I have never needed it...at all.
Betcha you learned subnetting, too. I've yet to walk into a place having to know any of that...and if, by chance, I ever do have to design a network, I'll use a calculator. Certainly won't try to do it in my head.
Never give aversion therapy to a masochist. The results are unpredictable. My Mu[sic] My Films My Windows Programs, etc.
:thumbsup:
-- ** You don't hire a handyman to build a house, you hire a carpenter. ** Jack of all trades and master of none.
-
Hi Guys, I am doing a bit of research and was just wondering... How many programmers know how a computer does math? We take it for granted that those beige boxes (or white, shiny ones in my case :o) know that 2 + 2 = 4, but how many devs know how they work it out? How many care? Should we know? If you know, how did you find out, and when / under what circumstances etc. I learned Boolean Logic in the nineties while working with 68k assembler, and it was a real eye opener. What are the teams thoughts? Danny
Danny Martin wrote:
We take it for granted that those beige boxes (or white, shiny ones in my case :O ) know that 2 + 2 = 4
Trouble is that they don't. They might know that 010 + 010 = 100, but not the 2 + 2 = 4.
I wanna be a eunuchs developer! Pass me a bread knife!
-
Hi Guys, I am doing a bit of research and was just wondering... How many programmers know how a computer does math? We take it for granted that those beige boxes (or white, shiny ones in my case :o) know that 2 + 2 = 4, but how many devs know how they work it out? How many care? Should we know? If you know, how did you find out, and when / under what circumstances etc. I learned Boolean Logic in the nineties while working with 68k assembler, and it was a real eye opener. What are the teams thoughts? Danny
For my part, it was the first thing I learned when I started program, but I have not had to use my knowledge of binary or hex since 2001. I doubt I could pick it up quite so easily now, and as it stands, I'm not particularly worried. I don't plan on writing any code at THAT level anytime soon. But, BUT it would be nice to know I could.
Smokie, this is not 'Nam. This is bowling. There are rules. www.geticeberg.com http://melpadden.wordpress.com
-
Hi Guys, I am doing a bit of research and was just wondering... How many programmers know how a computer does math? We take it for granted that those beige boxes (or white, shiny ones in my case :o) know that 2 + 2 = 4, but how many devs know how they work it out? How many care? Should we know? If you know, how did you find out, and when / under what circumstances etc. I learned Boolean Logic in the nineties while working with 68k assembler, and it was a real eye opener. What are the teams thoughts? Danny
Hi, I have a book called ["Elements of Programming"] and when I was reading your post and question I thought about the back cover of this book were Martin Newell (Adobe Fellow) wrote this: "As a mechanical, structural, or electrical engineer how far they would get without a heavy reliance on a firm mathematical foundation, and they will tell you, 'not far'. Yet so-called software engineers often practice their art with little or no idea of the mathematical underpinnings of what they are doing. And then we wonder why software is notorious for being delivered late and full of bugs, while other engineers routinely deliver finished bridges, automobiles, electrical appliances, etc,, on time and with minor defects" I think we should care and should know about how we can use math algorithms correct and efficient to write better and more reliable software, or at least give it a try
With friendly greetings,:) Eric Goedhart
-
Danny Martin wrote:
We take it for granted that those beige boxes (or white, shiny ones in my case :O ) know that 2 + 2 = 4
Trouble is that they don't. They might know that 010 + 010 = 100, but not the 2 + 2 = 4.
I wanna be a eunuchs developer! Pass me a bread knife!
Mark Wallace wrote:
They might know that 010 + 010 = 100, but not the 2 + 2 = 4.
Not strictly true... '010' is as abstract as '2' if you're going to be picky - but I get your point. ;P
-
Hi, I have a book called ["Elements of Programming"] and when I was reading your post and question I thought about the back cover of this book were Martin Newell (Adobe Fellow) wrote this: "As a mechanical, structural, or electrical engineer how far they would get without a heavy reliance on a firm mathematical foundation, and they will tell you, 'not far'. Yet so-called software engineers often practice their art with little or no idea of the mathematical underpinnings of what they are doing. And then we wonder why software is notorious for being delivered late and full of bugs, while other engineers routinely deliver finished bridges, automobiles, electrical appliances, etc,, on time and with minor defects" I think we should care and should know about how we can use math algorithms correct and efficient to write better and more reliable software, or at least give it a try
With friendly greetings,:) Eric Goedhart
Nice quote. Thanks for posting it... Danny
-
Hi, I have a book called ["Elements of Programming"] and when I was reading your post and question I thought about the back cover of this book were Martin Newell (Adobe Fellow) wrote this: "As a mechanical, structural, or electrical engineer how far they would get without a heavy reliance on a firm mathematical foundation, and they will tell you, 'not far'. Yet so-called software engineers often practice their art with little or no idea of the mathematical underpinnings of what they are doing. And then we wonder why software is notorious for being delivered late and full of bugs, while other engineers routinely deliver finished bridges, automobiles, electrical appliances, etc,, on time and with minor defects" I think we should care and should know about how we can use math algorithms correct and efficient to write better and more reliable software, or at least give it a try
With friendly greetings,:) Eric Goedhart
-
Not everyone is like you. What you think should be important may not be important to me or the next guy. I do very well for myself in my profession (on all levels). To slight me because I don't get off on 0's and 1's is lame. Instead of talking smack about your intern and crying about it, why don't you take the time to show this person the connection between the 1's and 0's and why they are important.
-- ** You don't hire a handyman to build a house, you hire a carpenter. ** Jack of all trades and master of none.
No reason to get angry and nice to hear that you are doing fine. And how could I overlook that people working on binary algorithmic calculating machines only need to know about those fundamentals when they are interested in it? Let's see if we can also find somebody who gets by perfectly without needing to know about the algorithmic part.
"I just exchanged opinions with my boss. I went in with mine and came out with his." - me, 2011 ---
I am endeavoring, Madam, to construct a mnemonic memory circuit using stone knives and bearskins - Mr. Spock 1935 and me 2011 -
No reason to get angry and nice to hear that you are doing fine. And how could I overlook that people working on binary algorithmic calculating machines only need to know about those fundamentals when they are interested in it? Let's see if we can also find somebody who gets by perfectly without needing to know about the algorithmic part.
"I just exchanged opinions with my boss. I went in with mine and came out with his." - me, 2011 ---
I am endeavoring, Madam, to construct a mnemonic memory circuit using stone knives and bearskins - Mr. Spock 1935 and me 2011Are we debating algorithms or binary math? Are we debating logic or 0's or 1's? I can't tell anymore. ...I'm not angry. However, you sound like we all "need" to know this stuff because "you" know it and I am just saying that is plain silly.
-- ** You don't hire a handyman to build a house, you hire a carpenter. ** Jack of all trades and master of none.
-
Danny Martin wrote:
nineties while working with 68k assembler
Whippersnapper! Early 80s, z80 & 6502. Ah, the days of knowing 1's and 2's complement, and hexadecimal... Iain.
I am one of "those foreigners coming over here and stealing our jobs". Yay me!
I love the smell of a hex dump in the morning.
"Life can only be understood backwards, but it must be lived forward." Kierkegaard, Søren
-
Hi Guys, I am doing a bit of research and was just wondering... How many programmers know how a computer does math? We take it for granted that those beige boxes (or white, shiny ones in my case :o) know that 2 + 2 = 4, but how many devs know how they work it out? How many care? Should we know? If you know, how did you find out, and when / under what circumstances etc. I learned Boolean Logic in the nineties while working with 68k assembler, and it was a real eye opener. What are the teams thoughts? Danny
I personally see both sides of the fence here. Ultimately, it depends on what you want to know. As the world of computer science grows larger and larger, it is important for people to specialize. I personally don't know how the NT file system writes out chunks of a file or how a monitor is transmitted the information I'm seeing on this screen, but it doesn't hinder my ability to develop an application (at least until I run across a problem requiring such knowledge). The great thing about computer science is this. We can stand upon the backs of giants to achieve something even greater. I don't have to know everything about everything. I just have to know what is relevant to my task at hand. Now, it doesn't prevent my own curiosity from taking me into uncharted waters. In the end, the few courses that I touched on in college about that were among my favorite. I find it interesting, but in no way force that we should all know.
modified on Wednesday, June 1, 2011 10:20 AM
-
No reason to get angry and nice to hear that you are doing fine. And how could I overlook that people working on binary algorithmic calculating machines only need to know about those fundamentals when they are interested in it? Let's see if we can also find somebody who gets by perfectly without needing to know about the algorithmic part.
"I just exchanged opinions with my boss. I went in with mine and came out with his." - me, 2011 ---
I am endeavoring, Madam, to construct a mnemonic memory circuit using stone knives and bearskins - Mr. Spock 1935 and me 2011What I'm saying here, and is being echoed by others, is that you don't need to know that a computer uses AND / XOR to do addition in order to write a function which adds two numbers. I believe there are many devs out there that don't know, don't need to know and quite frankly could care less. You don't need to know how to write a for next loop in assembler in order to write one in another, higher level language, but if you 'do' know how it works at the machine level I think it gives you a greater insight into how those higher level languages do their thing. it certainly helped me to understand what was going on under the hood. Danny
-
What I'm saying here, and is being echoed by others, is that you don't need to know that a computer uses AND / XOR to do addition in order to write a function which adds two numbers. I believe there are many devs out there that don't know, don't need to know and quite frankly could care less. You don't need to know how to write a for next loop in assembler in order to write one in another, higher level language, but if you 'do' know how it works at the machine level I think it gives you a greater insight into how those higher level languages do their thing. it certainly helped me to understand what was going on under the hood. Danny
Danny Martin wrote:
You don't need to know how to write a for next loop in assembler in order to write one in another, higher level language, but if you 'do' know how it works at the machine level I think it gives you a greater insight into how those higher level languages do their thing. it certainly helped me to understand what was going on under the hood.
Well said. :thumbsup:
-- ** You don't hire a handyman to build a house, you hire a carpenter. ** Jack of all trades and master of none.