# Numbers vs. words

I've never considered myself a math person. I'm a word person.

Sometimes, when I tell people this, they say, but you're a PROGRAMMER!

It was the perception for most of my youth that programming and math were symbiotic disciplines. This misperception kept me from computers and programming for a long time. It was only the desire to eat that got me looking to the internet for my livelihood. And it was then that I discovered that programming isn't all about numbers.

To a certain extent, programming is like math. There are formulas and rules of logic that must be learned and mastered. But programming is a lot like writing.

Both programming and writing are about solving problems. As any experienced writer knows, especially writers who deal in structured genres, such as news stories or essays, the exercise of writing often involves figuring out what you need to say within the confines of the tools the English language provides to you. There are rules to be followed, and audience expectations to be met.

Programming is like that. The creative side of programming involves finding the most elegant solution to any given problem.

Programming reminds me of writing news stories, and writing inverted pyramid news stories always reminded me of writing poems. So, you see, for me, writing code is no less creative than writing couplets.

But there is that math thing.

The more I get into programming, the more I regret all of the math classes I slept through, and all of the math solutions I assiduously worked to forget as soon as the term was over.

The other day, a book slipped into the newsroom for review called "The Math Explorer: A Journey Though the Beauty if Mathematics."

The book purports to be a breezy, entertaining explanation of mathematics for the lay person.

I'm probably a step or two below "lay" when it comes to math, but I thought I would give it a try.

I'm only a few pages into it, but I found these thoughts interesting:

Mathematics is an intellectual endeavor governed by precise, unchanging rules. It is therefore far more predictable and, in a sense, more comforting, than almost any other discipline. You will either have the correct or incorrect answer to a problem. There is no such thing as a mathematical answer that is "sort of" correct. This state of affairs is somewhat different among the liberal arts where subjective interpretations of a literary work, for example, can cause an answer or a response to be viewed by the all-knowing instructor as being anything from "marvelous" to "partially correct" to "possible" to "absolutely dense."

But that is precisely my problem with math. For most of my life I've had little interest in formulaic answers. How many times can you solve 2+2 and still find it interesting? How many times can you calculate the radius of a circle and still get excited about it. How much depth is there in finding the factorial square root of a subquadrant triangle multiplied by PI? (Ed: Did you just make that bullshit up? Yes? I have no idea what it means, if any thing).

A poem, on the other hand, can be read a thousand times and never be read the same way twice. Words when used to convey emotion and experience are never precise as numbers, no matter how well intentioned the author. And whether you are talking literature, history or politics, there is always something to learn, a new way of viewing any given object, of parsing any given sentiment, of layering on new perceptions or new experiences.

I can understand why, maybe, some people may find that sort of marsh-land existance unsettling. The instability of ideas can be daunting. But, to me at least, human existance is far too complex to reduce to formulas or pat answers. If we want to understand the human race, we need to delve into art and literature and history. We need to find as many pieces of the puzzle as possible, realizing it will never be complete.

Obviously, math is important. All of human scientific advancement and achievement is a credit to the mathematicians who worked out all of these great number crunching miracles. And I now see that I need to pay more attention to math and make up for some lost education, but I don't think I'll buy the idea that math is some how more profound and important than the liberal arts.

## Article tags

• ### 1 - Mark Saleski

Oct 27, 2003 at 10:29 am

it is kinda funny how people assume that programming is directly related to math. it really has more to do with organization skills...maybe in a formal logic sort of way.

i minored in math in college but was never a whiz. on the other hand, i've always enjoyed reading about it. some good math reads:

Fermat's Enigma

Chaos: Make a New Science

and i'm seriously considering:

Everything and More: A Compact History of Infinity

• ### 2 - The Theory

Oct 27, 2003 at 10:51 am

people assume it's all numbers because people assume it's all 10001010001011101000111 and so forth.

• ### 3 - Mark Saleski

Oct 27, 2003 at 11:36 am

yep, it has very little to do with 100010110's and more to do with resourcefulness, the big picture of structures and the ability to fend off a brain hemorage when the latest microsoft 'tool' blows up in your face.

• ### 4 - JR

Oct 27, 2003 at 12:12 pm

"Mathematics is an intellectual endeavor governed by precise, unchanging rules. It is therefore far more predictable and, in a sense, more comforting, than almost any other discipline. You will either have the correct or incorrect answer to a problem."

I think that's from the perspective of working with well-established mathematical techniques and having something or someone to tell you if your answers are correct. Solving algebra problems in a textbook has about as much to do with the discipline of mathematics as making a chart in Excel has to do with programming. Mathematicians working at the cutting edge don't necessarily know if their solutions are correct; theorems and proofs have been debated for years. Mathematics may offer definite answers, but sometimes those answers can be as elusive as any other form of "truth".

Try working your way through a calculus book without ever looking at the answers in the back of the book, then see how "comfortable" you feel. (Now there's a great way to learn self-reliance!)

• ### 5 - cjones

Oct 27, 2003 at 1:38 pm

I am going to have to disagree with this particular blog as well as its comments. The root of all programming is built on the foundation of mathematics. The reality of mathematics gets hidden behind the semantics of higher level languages like VB and scripting languages like ASP as well as PHP. All computer programs are algorithmically based and all programs use discrete mathematics at their core. I am not sure what level of programming you are involved in but at the system or network level, or even the in the design of some the electronic components, equations and calculations are used before the ideas are implemented as algorithms and then syntactically drawn out in the language of choice. Computer Science will always be rooted in mathematics. Don't be fooled by copying pre-existing functions and reading how to books. Eventually you will find yourself in a jam if you don't understand this and you consider yourself a programmer.

• ### 6 - Mark Saleski

Oct 27, 2003 at 1:43 pm

sorry, but i've been writing software since the spring of 1984.

while i can see the mathematical foundations inherent in things like algorithms, etc, there's not a whole lot of mathematics involved in large-scale problem solving...at least not as this software engineer sees it.

and i've done work in many industry areas from cad/cam to aviation to control systems to entertainment software.

• ### 7 - cjones

Oct 27, 2003 at 2:20 pm

Mr Saleski I find that hard to believe that you have had the background in programming you have had and retain that opinion. What do you think a function is, a pattern, an abstraction, octal based addition, hex, binary. What is the entire field of encryption - a form of art? In no way do I want to denigrate your statment but I have to respectfully disagree. Google 'computer science', 'computer engineering' through any university and look at the prerequisites.

• ### 8 - TDavid

Oct 27, 2003 at 2:28 pm

Math is very important the closer you get to the chip ;)

• ### 9 - Mark Saleski

Oct 27, 2003 at 2:30 pm

sigh....undoubtedly, mathematics forms one of the underpinnings for computer science.

but, on a daily basic, there just isn't all that much math involved.

as far as googling cs or ce...big deal...what goes on at the university level doesn't have a lot to do with what goes on in 'the trenches'.

• ### 10 - Howard Owens

Oct 27, 2003 at 2:50 pm

u2 are both obvioiusly much more experienced and learned as programmers than I am, but I find a bit of truth in what you both say.

Clearly, the better your math skills, the better your programming skills. Also, the deeper you can get into programming. At the same time, you can be a complete math idiot and do completely awesome things in just about any of the more modern programming languages.

I'm sure there are many, many very good if not great programmers who are weak on math, just as there are many great writers who can't spell for a damn.

• ### 11 - Mark Saleski

Oct 27, 2003 at 2:55 pm

it certainly depends on what area of software you're in.

also, while skill in math may help in software development...i've seen people who were absolute geniuses in math but could not program their way out of a paper bag.

• ### 12 - duane

Oct 27, 2003 at 4:22 pm

Many of your comments concerning mathematics are misguided. I'm going to steer clear of the programming content of your post for now. I just want to make a couple of points about math.

"How many times can you solve 2+2 and still find it interesting? How many times can you calculate the radius of a circle and still get excited about it?"

It's true that understanding the human race requires one to delve into the liberal arts. Mathematical applications are best put to use in understanding Nature, or the objective reality of our existence. But don't sell that short. Mathematical applications include the beginning and eventual fate of the Universe, the origin of our Solar System, and the origin of life (pardon me, subscribers to the book of Genesis). Sure, that's not everything. Mathematics will not be able to explain love, hatred, compassion, greed, aesthetics, ethics, and many other topics that are important to humans. Just as liberal arts will not be able to explain how babies are made, disease, how to produce enough food to feed Earth's growing population, the computer monitor you're looking at, galaxy formation, electric guitars, evolution, how your brain works, how to send a Javelin rocket into a cave full of terrorists, why the sky is blue, and why we can't live forever. If mathematics did indeed consist of nothing more than plugging numbers into formulas, as you describe it, there would be no need for science at all. We would know everything. We could travel through time, we could live forever, we could ply the Universe. We would be Star-child from Clarke's 2001: A Space Odyssey.

• ### 13 - Eric Olsen

Oct 27, 2003 at 4:24 pm

excellent Howard, thanks, it gives me hope.

Oct 27, 2003 at 8:34 pm

math is not nearly as important to object-oriented programming as it is to functional programming (which, as you might guess, is in essence programming using mathematical functions)
But you don't really need to know much than basic maths to be able to use the majority of (at least the mainstream) programming languages. Maybe more maths is needed for assembly programming, but so far i haven't taken the plunge to try learning it...

• ### 15 - Howard Owens

Oct 27, 2003 at 9:39 pm

In something like Java, there's plenty of math functions already available, so you don't need to build these yourself. You just have to know how they work.

I don't always understand how they work.

On one hand, I've never had any real need for them. On the other, if I understood them better, I'm sure I'd find a need, if you know what I mean.

• ### 16 - rain4life

Sep 14, 2005 at 5:20 am

wassap....i think literature is better if ya want be a solicitor or a food critic..see i make joke..that was sad..but i like the way howard and mark think.......not....................rock on!!!!!!!!!!!!!!!!!!

• ### 17 - ojabeD

Aug 22, 2006 at 3:44 am

The main business in math is to prove theorems not plugging numbers to formula(even monkeys can do it). To tell you guys, proving theorems requires ingenuity. You must be very creative, very logical, and knowledgeable person. Imagine yourself being asked to prove that x^n + y^n = z^n has no non-zero integer solutions for x, y and z when n > 2. This is the Fermat's last theorem which took so many years before being proved. There is similar story when producing a software. You are given a task and use you creativity, knowledge etc... to make it. I'll boldly say that proving theorems is far more difficult that programming. Sometimes in programming, there are already existing code snippets that you can copy from the net or in your old applications. You can also ask help to some mailing lists while in proving theorems, you have to extract ideas from the top of your head. In programming there are also books for monkeys. I mean those books that says step1, step2, step3, etc... without discussing the ideas behind and hola! it makes your work done! I often encountered de morgan's law in my code.

if ( ! ( bool1 && bool2 ) ) = if (!bool1 || !bool2) by de morgan's law. I pity my colleague not figuring out why is this so. I see so many mathematics in my sofware. Even while making a software, it already requires some discipline that can be acquired best by studying math - logic and analysis. A programmer/software engr. ought to know the ideas behind the technology he's using not just use ready made software from other people. Guess what, when you dig deeper into computing, you need a lot of mathematics. Not to mention complexity theory, fuzzy logic, algorithms etc. etc. People who are only on the surface claims that mathematics has no use. They may encounter some problems that can be solved easily or more elegantly when using some mathematics but they don't know it because they don't actually have enough math background at hand and claimed that math has no use! Look at google which you may use everyday, it utilizes much of probability and algorithms which clearly belongs to math discipline. ( If the branches of mathematics is unclear to you, I can send you link ). I'm really disappointed when people tried to discredit the "Queen of all sciences" and the foundation of computing.

• ### 18 - Itransition

Nov 06, 2009 at 6:30 am

Programming resembles poetry, even visually. The great listings of code look like the great poems by Homer.

Poetry is not random writing - a programmer like a poet should follow grammar and the syntax of the programming languages, make the perception of the code clear both to a machine and a human.

Personal attacks are NOT allowed.

by

by

by