385 - Math or programming

146 views
Skip to first unread message

Ido Ran

unread,
May 23, 2012, 2:59:02 AM5/23/12
to java...@googlegroups.com
Hi,
I am only half way on episode 385 but I did enjoy the discussion about "what should be taught in school" which was derived from the question if everyone should learn to program.
To say that math is the base of everything so you'll better learn math so you can do everything has bad consequences, at least in Israel where I live.
People that do computer   science degree in Israel do much more math learning then anything else especially programming. Someone in the high education system believe that learning math makes you much better person.

I don't have a degree. I manage to get right into work because in Israel we have to serve in the army and today's army rely on computer at least as much, if not even more so, than on tanks and soldiers. I had the opportunity to serve in unit that develop and operate an application for the army so I got my experience and knowledge there.

Today when I interview candidates for work I am amazed of how bad they are at thinking about programming, let alone actually doing it. Most of them don't understand the resone for doing object-oriented programming. Most of them never heard or learn about design patterns. UML, sequence diagram, architecture, database design - most of them never heard of it.
I'm not expecting everyone with CS degree to know each tool that exist and every language there is, but I do think that learn about OO vs. functional programming, as concept and some actual examples is much more important than the ability to know one more concept in math.

Ido.

Casper Bang

unread,
May 23, 2012, 4:39:47 AM5/23/12
to java...@googlegroups.com
My view on this is that while programming != CS, backend/full-stack professionals need to know both more or less. Front-end developers however, can get by on very little CS, having no clue about big-Oh, memory models, instruction sets etc. For all practical purposes, this latter category would include the large class of former VB6 programmers as well as the present day JavaScript class. I reckon most of us start out in this category on a hobby basis.

Academia however, seems to not rate actual programming very high at all. It's busy with formal proofs, exploring theoretical boundaries and trying to capture state-of-the-art in textbooks. Having said that, it's tremendously empowering being able to understand what's going on when i.e. adding an index to a database table (complexity), how an expression is evaluated (language processing), how compression works (information theory) etc.

I do think that as our abstraction levels increases, CS should probably matter less and less. What do I care if Java7 now uses TimSort rather than MergeSort? All I really need to know is the basic trade-offs made within the facilities at my disposal. So I guess I kind of agree, and would recommend material such as "Pragmatic Programmer", "Code Complete" and "Clean Code" before "Linear algebra and its applications" and "Discrete mathematics and its applications".

Fabrizio Giudici

unread,
May 23, 2012, 5:28:47 AM5/23/12
to java...@googlegroups.com, Casper Bang
On Wed, 23 May 2012 10:39:47 +0200, Casper Bang <caspe...@gmail.com>
wrote:

> I do think that as our abstraction levels increases, CS should probably
> matter less and less. What do I care if Java7 now uses TimSort rather
> than
> MergeSort? All I really need to know is the basic trade-offs made within
> the facilities at my disposal. So I guess I kind of agree, and would
> recommend material such as "Pragmatic Programmer", "Code Complete" and
> "Clean Code" before "Linear algebra and its applications" and "Discrete
> mathematics and its applications".

I generally agree. I must say that while at the university I had very high
marks in mathematics, since I went out of the university and started a
career focused on development first, architecture, design, workflow
organization, technology transfer, etc.... I didn't have to do with
anything beyond the four fundamental algebraic operations :-) When I need
to understand something more complex, of course, I'm usually able to cope
with it; for more complex stuff I can ask to other professionals and I
understand them. The important point, to me, is that while it's good to
keep things at the higher possible abstraction point of view, one should
be able to "dive" down to more details when needed and the world from a
lower altitude shouldn't look completely puzzling to him. BTW, this is not
only related to mathematics, but even to certain aspect of CS itself. For
instance, I don't need to know the very details of how HotSpot and
advanced GC work in JDK 6/7 (actually I think that *very* few people
really know these things properly) given that I've learned and I use some
good practices that should keep me out of troubles. When I have some
specific problem, it's important that I'm able to understand e.g. what
Kirk Pepperdine says about it.



--
Fabrizio Giudici - Java Architect, Project Manager
Tidalwave s.a.s. - "We make Java work. Everywhere."
fabrizio...@tidalwave.it
http://tidalwave.it - http://fabriziogiudici.it

Ido Ran

unread,
May 23, 2012, 5:45:48 AM5/23/12
to java...@googlegroups.com
Interesting. I hope we will also see someone who think different.
One thing that is very important in today's world is to be able to understand complex system. We are far away from the days you could actually calculate big O notation of a function because most of the systems today run on virtual machine which itself sometime run on virtual machine which use unknown libraries on unknown number of cores.
To understand complex system I use visualization to try mapping the references and behavior of each node on the graph. Hopefully this will become main stream in education in the future.

Ido

Casper Bang

unread,
May 23, 2012, 7:53:02 AM5/23/12
to java...@googlegroups.com


On Wednesday, May 23, 2012 11:45:48 AM UTC+2, Ido Ran wrote:
Interesting. I hope we will also see someone who think different.
One thing that is very important in today's world is to be able to understand complex system. We are far away from the days you could actually calculate big O notation of a function because most of the systems today run on virtual machine which itself sometime run on virtual machine which use unknown libraries on unknown number of cores.

The point of big O is to express growth though, it doesn't factor in constants (which your virtual machine's represent).
 
To understand complex system I use visualization to try mapping the references and behavior of each node on the graph. Hopefully this will become main stream in education in the future.

For a long time, I've wanted to write a personal wiki system based on mindmap, but borrowing ideas from hypermedia systems and graph theory. It pains me that in this day and age, we're still for the most part confined within exclusive hierarchies (file-systems have looked the same the last 30-40 years). Something else always comes up though. ;)

Ido Ran

unread,
May 23, 2012, 8:38:12 AM5/23/12
to java...@googlegroups.com
I agree with Casper.
Taking the file system as an example is great, even though it actually does support graph structure of strong/hard link we, the technical people, fail to find a way to present the graph side to the general public. We expect people to learn about file system hierarchy.

Another very important thing that high education does not provide to student is the ability to search for your answer. I don't expect someone to know everything but I do expect him/her to know how search for it.

Ido

Casper Bang

unread,
May 23, 2012, 10:13:34 AM5/23/12
to java...@googlegroups.com
 ...even though it actually does support graph structure of strong/hard link...

Yep, even NTFS supports this. What's holding us back, are those pesky legacy FileOpen/FileSave UI dialogs. I am not an iOS guy, but if Apple ever chose to push the state-of-art forward in this aspect, I'd probably have to change platform.

On Wednesday, May 23, 2012 2:38:12 PM UTC+2, Ido Ran wrote:
Another very important thing that high education does not provide to student is the ability to search for your answer. I don't expect someone to know everything but I do expect him/her to know how search for it.

I agree. That also a bit of a cultural issue though, as you will find i.e. north american schooling focusing more on memorization and multiple choice than actual problem solving (as I am used to in Scandinavia with mostly oral tests). One classic example that still makes me laugh/cry, is at Tech-Ed 2004, a teacher asks Anders Hejlsberg (chief architect of C#) how to make Visual Studio loose code completion, so that he would be more able to test the skills of his students. Whereto Anders politely answers that he'd much rather students employ all the tools available and that teachers just make the problems harder. I believe it's somewhere within this old recording: http://v.youku.com/v_show/id_XMTc0OTAyOTU2.html

Cédric Beust ♔

unread,
May 23, 2012, 11:21:33 AM5/23/12
to java...@googlegroups.com
On Wed, May 23, 2012 at 7:13 AM, Casper Bang <caspe...@gmail.com> wrote:
One classic example that still makes me laugh/cry, is at Tech-Ed 2004, a teacher asks Anders Hejlsberg (chief architect of C#) how to make Visual Studio loose code completion, so that he would be more able to test the skills of his students. Whereto Anders politely answers that he'd much rather students employ all the tools available and that teachers just make the problems harder. I believe it's somewhere within this old recording: http://v.youku.com/v_show/id_XMTc0OTAyOTU2.html

Very good example and great response from Hejlsberg.

I'm always surprised by the number of people who just don't understand this point, starting with all the people saying things like "If your language needs an IDE to be used correctly, it has already failed". The point of IDE's (and tools in general) is not to be used as a substitute for thinking but to make sure that humans can focus on things that computers can't do while letting the computer take care of tasks that they can do without the intervention of humans.

-- 
Cédric

Ido Ran

unread,
May 23, 2012, 11:28:48 AM5/23/12
to java...@googlegroups.com
I agree. I saw the problem from the perspective of the teacher in that I ask a candidate for job how the build process of C# works. I expect him to explain about csc, msbuild, msil, assembly and such but I was very supposed when he reply "you press F7".
Tools are need to be used and student must also understand the underlying process the tool automate. 

I encourage new programmers NOT to use tools like Resharper until they are comfortable with the language. Today one of the new programmers accidentally create new ctor without realizing it. 

Ido



ב-23 במאי 2012, בשעה 18:21, Cédric Beust ♔ <ced...@beust.com> כתב/ה:

--
You received this message because you are subscribed to the Google Groups "Java Posse" group.
To post to this group, send email to java...@googlegroups.com.
To unsubscribe from this group, send email to javaposse+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/javaposse?hl=en.

Jon Kiparsky

unread,
May 23, 2012, 12:26:43 PM5/23/12
to java...@googlegroups.com
"The point of IDE's (and tools in general) is not to be used as a substitute for thinking but to make sure that humans can focus on things that computers can't do while letting the computer take care of tasks that they can do without the intervention of humans."

Trouble is, if you spend a little while with beginners, for example on dreamincode.net, you'll see that the ide ends up substituting for the student's brain rather more often than we'd like.
I regularly see people posting code that they simply do not understand, and when you ask them about it it turns out they were just banging on the ide until the red went away. This is not a way to learn anything, and the frustration these kids express shows this very clearly.

I agree that an experienced programer should have any tool they can use, but giving an ide to a student makes as much sense (to me) as giving a calculator to a student who's learning arithmetic.
"just make the problems harder" misses the point completely- send two kids to project euler, and you'll quickly find out which one understands basic arithmetic, and which one just knows which buttons to press.

Mark Fortner

unread,
May 23, 2012, 12:39:11 PM5/23/12
to java...@googlegroups.com
I think there's a spectrum of career opportunities here, and whether or not you need math depends on where you fit in that spectrum.  As others have said, at one end you have web developers, whose primary focus is creating pages.  They can make do with JavaScript, HTML, etc.  And mid-tier developers need to know their stack (JEE, Grails, Rails, whatever), and basic OO concepts, design patterns, etc.  

Math comes into play when your job involves writing an application or an algorithm that requires some data analysis.  This could be a financial application or a scientific application. This kind of work typically falls under the rubric of Computer Science.

I believe Carnegie Mellon actually differentiates between Software Engineering, and Computer Science and has curricula that are tailored to each discipline.  But I don't think, as a whole, most universities have done a good job of creating suitable curricula for today's job market.

Mark

clay

unread,
May 23, 2012, 5:06:49 PM5/23/12
to java...@googlegroups.com
To summarize some viewpoints:

Tor - Advocates benefits of a broad education.
Dick - Advocates importance of applied math. Also advocates individual choice of education.
Ido Ran (Thread OP) - Advocates more emphasis on applied skills rather than broad academic skills.

Question for Java Posse: What academic subjects or classes were most valuable, interesting, and which do you wish you could take?

@Tor, if you advocate broad education, why haven't you recently taken classes to broaden your education?

@Dick, if math is great, why haven't you been taking math classes? With your deep interest in Scala and Haskell, I would hope you've taken university level classes in Algebraic Structures, Topology, Real Analysis, and Category Theory. If you haven't taken these classes, why not?

@Ido Ran, sure the typical programmer job doesn't demand math or history or science. Most normal jobs are like that. However, I'd argue that it's common to find quality programmers who do perfectly well without formal knowledge of the skills you mention such as design patterns or database design. Also, UML is an antique.

This issue is infinitely broad, but there are two policy strategies that I'd advocate with fairly high confidence in the general subject of education and workplace credentialism:

- K-12 education should be governed more by parents and local communities rather than by the state or national governments. Giving families and communities meaningful say and involvement is beneficial over having things run by completely remote politicians.
- Reduce legal licensing barriers to work in fields like cutting hair and cosmetology. Many of these have little value and just serve to protect the special interests of workers already in the field and block new workers and competition.

Ido Ran

unread,
May 23, 2012, 5:16:51 PM5/23/12
to java...@googlegroups.com
Hi, thank you for the to-the-point summary.

I'm all for expand your horizon by learning new stuff. I never said I think people should learn only the small bits they need for their job, be it programming, hair cutting or farming.

My first point was that high education (college and univ.) in Israel emphasize the math to much. They also lack teaching of theoretical things like principles of OO, design methods and work methods.

I have a relative in the age of 11 years old who want to learn to program. He already finish all the extra things school offer him. I can't find good way to direct him to start learn to program.
If you can help me figure this out I can at least make sure when he gets to college he will already have good skills so learning math will make him that better of a programmer.

Thank you,
Ido

--
You received this message because you are subscribed to the Google Groups "Java Posse" group.
To view this discussion on the web visit https://groups.google.com/d/msg/javaposse/-/NKCFco9z_ZUJ.

Fabrizio Giudici

unread,
May 23, 2012, 6:06:48 PM5/23/12
to java...@googlegroups.com, Ido Ran
On Wed, 23 May 2012 23:16:51 +0200, Ido Ran <ido...@gmail.com> wrote:

> My first point was that high education (college and univ.) in
> Israel emphasize the math to much. They also lack teaching
> of theoretical things like principles of OO, design methods and work
> methods.

This point makes me smile. I could write the very same statement replacing
"Israel" with "Italy". In the end, it seems we think it's a matter of our
countries (and the public debate in our countries often emphasizes that
"in other places" things are different), but it seems a general trend. In
the end, it seems that universities are always a bit off the real world. I
still believe this happens in my countries more than elsewhere, anyway.

Ricky Clarkson

unread,
May 23, 2012, 6:56:40 PM5/23/12
to java...@googlegroups.com, Ido Ran

My experience in a UK university was that the lecturers taught whatever they were good at unless they were useless in which case something was chosen for them and they had to learn it to teach it.

Most of them came from a maths department that got closed down but they had no computer science background.  Instead of teaching some mathematical areas of computer science they often just picked a programming language, started teaching it, and learned it in that order.

I later worked alongside them as a lecturer and researcher for some years and couldn't get any sensible words out of them when I suggested that we should be teaching some form of lambda (closure, anonymous function) if not lambda calculus itself.  CS in the UK will probably remain a code monkey training course, and not a very good one at that.

On the engineering side, no VCS was covered or even available, unit testing was unheard of and the computers were set up against the programmer; you could not run anything that listened on a port and it was hard to get at cmd.  Linux was later added but without Java or sufficient personal space to add it to your home directory.

Laptops were forbidden because laptop users would disconnect network cables and the computer science students wouldn't know what to do despite having a module in which among other items they would learn to attach the plastic connectors to network cables.

I can also speak a little for Argentina, it seems that the universities here do a mixture between genuine projects with real clients and pointless rote memorisation.  One of my coworkers had a test recently in which he needed to be able to recall the byte/bit structure of 22 network protocols..

--
You received this message because you are subscribed to the Google Groups "Java Posse" group.
To post to this group, send email to java...@googlegroups.com.
To unsubscribe from this group, send email to javaposse+unsubscribe@googlegroups.com.

Kevin Wright

unread,
May 23, 2012, 7:46:20 PM5/23/12
to java...@googlegroups.com
On 23 May 2012 22:06, clay <clayt...@gmail.com> wrote:
To summarize some viewpoints:

Tor - Advocates benefits of a broad education.
Dick - Advocates importance of applied math. Also advocates individual choice of education.
Ido Ran (Thread OP) - Advocates more emphasis on applied skills rather than broad academic skills.

Question for Java Posse: What academic subjects or classes were most valuable, interesting, and which do you wish you could take?

@Tor, if you advocate broad education, why haven't you recently taken classes to broaden your education?

@Dick, if math is great, why haven't you been taking math classes? With your deep interest in Scala and Haskell, I would hope you've taken university level classes in Algebraic Structures, Topology, Real Analysis, and Category Theory. If you haven't taken these classes, why not?

I'm worried about the implication here; that courses are everything, that learning is an activity constrained to schools and Universities.

I share Dick's opinion as to the importance of maths, yet my own University experience was in the study of Microelectronic Engineering.  Maths aplenty, but very much in the direction of calculus and complex numbers rather than data structures and category theory.  I had to learn such things myself, through books, papers, and (more recently) online videos.

I still am learning, and doubt I'll ever stop.  Even though none of it could be classed as a course, and I don't have a single certificate to show for my efforts.

A willingness to self-teach and to continually try to improve yourself is so much more valuable in a developer than any formal qualification.  If I'd drawn a line under learning when I entered full-time employment then I would still be clueless about more recent developments such as Huet's Zipper, and that would be a shame.  And I would be a less-capable developer.

 
@Ido Ran, sure the typical programmer job doesn't demand math or history or science. Most normal jobs are like that. However, I'd argue that it's common to find quality programmers who do perfectly well without formal knowledge of the skills you mention such as design patterns or database design. Also, UML is an antique.

This issue is infinitely broad, but there are two policy strategies that I'd advocate with fairly high confidence in the general subject of education and workplace credentialism:

- K-12 education should be governed more by parents and local communities rather than by the state or national governments. Giving families and communities meaningful say and involvement is beneficial over having things run by completely remote politicians.

Interesting theory, but it runs the risk of families pushing harder for skills more focussed towards immediate employability rather than long-term potential (heavily-lobbied governments seem to do much the same, but want it cheaper).  This is a thorny problem, but I believe the situation would be best improved by giving more control back to *teachers* and by ensuring that sufficient funds and other resources are made available to allow them to do their job effectively.

 
- Reduce legal licensing barriers to work in fields like cutting hair and cosmetology. Many of these have little value and just serve to protect the special interests of workers already in the field and block new workers and competition.

In the UK at least, we seem to have an excess of hairdressers and beauty spas and nail polishers.  Perhaps we'd be better off by offering encouragement for more people to enter engineering fields?

Ricky Clarkson

unread,
May 23, 2012, 8:16:23 PM5/23/12
to java...@googlegroups.com
In the UK at least, we seem to have an excess of hairdressers and beauty spas and nail polishers.  Perhaps we'd be better off by offering encouragement for more people to enter engineering fields?

Many years ago this was a thriving, happy planet - people, cities, shops, a normal world. Except that on the high streets of these cities there were slightly more shoe shops than one might have thought necessary. And slowly, insidiously, the number of the shoe shops were increasing. It's a well-known economic phenomenon but tragic to see it in operation, for the more shoe shops there were, the more shoes they had to make and the worse and more unwearable they became. And the worse they were to wear, the more people had to buy to keep themselves shod, and the more the shops proliferated, until the whole economy of the place passed what I believe is termed the Shoe Event Horizon, and it became no longer economically possible to build anything other than shoe shops. Result - collapse, ruin and famine. Most of the population died out. Those few who had the right kind of genetic instability mutated into birds who cursed their feet, cursed the ground and vowed that no one should walk on it again.

Kevin Wright

unread,
May 23, 2012, 8:31:14 PM5/23/12
to java...@googlegroups.com

Ahh, yes. The inimitable Douglas Adams :)

Sorely missed...

On May 24, 2012 1:16 AM, "Ricky Clarkson" <ricky.c...@gmail.com> wrote:
In the UK at least, we seem to have an excess of hairdressers and beauty spas and nail polishers.  Perhaps we'd be better off by offering encouragement for more people to enter engineering fields?

Many years ago this was a thriving, happy planet - people, cities, shops, a normal world. Except that on the high streets of these cities there were slightly more shoe shops than one might have thought necessary. And slowly, insidiously, the number of the shoe shops were increasing. It's a well-known economic phenomenon but tragic to see it in operation, for the more shoe shops there were, the more shoes they had to make and the worse and more unwearable they became. And the worse they were to wear, the more people had to buy to keep themselves shod, and the more the shops proliferated, until the whole economy of the place passed what I believe is termed the Shoe Event Horizon, and it became no longer economically possible to build anything other than shoe shops. Result - collapse, ruin and famine. Most of the population died out. Those few who had the right kind of genetic instability mutated into birds who cursed their feet, cursed the ground and vowed that no one should walk on it again.

--
You received this message because you are subscribed to the Google Groups "Java Posse" group.
To post to this group, send email to java...@googlegroups.com.
To unsubscribe from this group, send email to javaposse+...@googlegroups.com.

clay

unread,
May 23, 2012, 9:22:28 PM5/23/12
to java...@googlegroups.com
The math you describe is EE type math which includes stuff like signals & systems, frequency analysis, and fourier transforms. In software, this type of math is the basis for lossy compression and many data analysis techniques. This stuff is great, but Dick's specific interest in Scala and advanced programming abstractions is more related to pure math topics like algebraic structures (abstract algebra), category theory, etc. They are really completely different areas of math.

On your advocacy of self study, fair enough. Let me rephrase my question to Dick: Dick, have you taken classes in algebraic structures and category theory or have you done some kind of equivalently rigorous self study of those topics?

If there is an excess of hair dresser workers, reducing unnecessary employment barriers would be less important, but it would still be a good idea. There may be an excess of lawyers and finance professionals and real estate agents; but this doesn't warrant legal barriers to people entering the field of their choosing.

Fabrizio Giudici

unread,
May 24, 2012, 2:08:56 AM5/24/12
to java...@googlegroups.com, Kevin Wright
On Thu, 24 May 2012 01:46:20 +0200, Kevin Wright
<kev.lee...@gmail.com> wrote:


> it cheaper). This is a thorny problem, but I believe the situation would
> be best improved by giving more control back to *teachers* and by

In my experience, putting everything in control of teachers would be a
disaster - but this is influenced by the fact that until a few years ago
teachers weren't evaluated at all and some formal evaluation has just been
started and will need some years to warm up. Probably the best approach is
distributing the responsibility between teachers and families.

>> In the UK at least, we seem to have an excess of hairdressers and beauty
> spas and nail polishers. Perhaps we'd be better off by offering
> encouragement for more people to enter engineering fields?

In Italy we have lack of engineers and other sci/tech skills, too many
graduated in humanistic disciplines (most of low quality, that just want
to be employed by the state as school teachers), and lack of
undergraduates technicians. It's hard to say who should be in charge for a
better planning. Clearly young people out of the school aren't able to
pick a reasonable choice, but even experts failed planning - I recall that
when I was going to get my degree "experts" were saying "oh, no, we're
going to have too many engineers!".

Fabrizio Giudici

unread,
May 24, 2012, 2:08:55 AM5/24/12
to java...@googlegroups.com, Kevin Wright
On Thu, 24 May 2012 02:31:14 +0200, Kevin Wright
<kev.lee...@gmail.com> wrote:

> Ahh, yes. The inimitable Douglas Adams :)

I was caught until "collapse, ruin and famine" :-)

Kevin Wright

unread,
May 24, 2012, 4:05:11 AM5/24/12
to Fabrizio Giudici, java...@googlegroups.com
On 24 May 2012 07:08, Fabrizio Giudici <Fabrizio...@tidalwave.it> wrote:
On Thu, 24 May 2012 01:46:20 +0200, Kevin Wright <kev.lee...@gmail.com> wrote:


it cheaper).  This is a thorny problem, but I believe the situation would
be best improved by giving more control back to *teachers* and by

In my experience, putting everything in control of teachers would be a disaster - but this is influenced by the fact that until a few years ago teachers weren't evaluated at all and some formal evaluation has just been started and will need some years to warm up. Probably the best approach is distributing the responsibility between teachers and families.

It's guaranteed that your mileage will vary in different countries here, but my gut instinct is that if you make teaching more attractive as a profession then you'll attract better people.  Any one of us familiar with the differences between talent in big corp and startups will surely testify to the fact that excessive bureaucracy is actively harmful.

Systematically ripping away the job satisfaction of teaching with even more red tape is really not the solution - it's a job that many do because they believe in it, and not simply for financial renumeration.  Having said that, salaries are also so low that they've become a hygiene factor and are driving people away from the profession.

Given the way I've seen some parents behave with (lack of) respect to teachers, it also wouldn't hurt if we were to teach those families as well; pushy and belligerent parents are yet another hygiene factor.

Like I said... It's thorny :)

 

In the UK at least, we seem to have an excess of hairdressers and beauty
spas and nail polishers.  Perhaps we'd be better off by offering
encouragement for more people to enter engineering fields?

In Italy we have lack of engineers and other sci/tech skills, too many graduated in humanistic disciplines (most of low quality, that just want to be employed by the state as school teachers), and lack of undergraduates technicians. It's hard to say who should be in charge for a better planning. Clearly young people out of the school aren't able to pick a reasonable choice, but even experts failed planning - I recall that when I was going to get my degree "experts" were saying "oh, no, we're going to have too many engineers!".

Myopia like that, they should have concentrated on encouraging more opticians!  It sounds like even the humanities are doing badly; surely history counts as a humanity and yet these self-appointed experts seem to be going out of their way to avoid scientists and engineers.  I don't imagine it would be so terrible to produce another or Galileo Galilei, or Leonado da Vinci, or Enrico Fermi, or... (actually, Fermi could be taken as a warning against shunning the sciences here, given that he had to naturalise in the US to do his stuff)


Casper Bang

unread,
May 24, 2012, 5:00:56 AM5/24/12
to java...@googlegroups.com, Fabrizio Giudici
(actually, Fermi could be taken as a warning against shunning the sciences here, given that he had to naturalise in the US to do his stuff)

It's a motivation and talents game isn't it? Einstein was not considered very bright in school, Tesla was expected to become a priest and Edison received little formal education at all. You can cultivate and stimulate, but I don't believe a curious mind can be either formed nor suppressed. Having said that, I'd still make sure my offspring is exposed to Mythbusters and StarTrek before BigBrother and TopModel.

Russel Winder

unread,
May 24, 2012, 6:31:27 AM5/24/12
to java...@googlegroups.com
On Wed, 2012-05-23 at 19:56 -0300, Ricky Clarkson wrote:
> My experience in a UK university was that the lecturers taught whatever
> they were good at unless they were useless in which case something was
> chosen for them and they had to learn it to teach it.

Sort of.

> Most of them came from a maths department that got closed down but they had
> no computer science background. Instead of teaching some mathematical
> areas of computer science they often just picked a programming language,
> started teaching it, and learned it in that order.

Now I wonder if we are in distinct parallel universes.

> I later worked alongside them as a lecturer and researcher for some years
> and couldn't get any sensible words out of them when I suggested that we
> should be teaching some form of lambda (closure, anonymous function) if not
> lambda calculus itself. CS in the UK will probably remain a code monkey
> training course, and not a very good one at that.

I have no idea which UK university you were working in, but this
experience bears almost no relationship to mine of the ones I used to
work in and was associated with by being external examiner.

> On the engineering side, no VCS was covered or even available, unit testing
> was unheard of and the computers were set up against the programmer; you
> could not run anything that listened on a port and it was hard to get at
> cmd. Linux was later added but without Java or sufficient personal space
> to add it to your home directory.

I know that using RCS hardly counts as a VCS but we had the students
using it in the mid to late 1980s. Then moved to CVS as soon as we
could, then Subversion. I have no direct university experience in the
last few years but all the folks I know still surviving in the system
(*) report Git and Mercurial in very wide use.

> Laptops were forbidden because laptop users would disconnect network cables
> and the computer science students wouldn't know what to do despite having a
> module in which among other items they would learn to attach the plastic
> connectors to network cables.

Now I really worry. Which university is it of which you talk...

--
Russel.
=============================================================================
Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel...@ekiga.net
41 Buckmaster Road m: +44 7770 465 077 xmpp: rus...@winder.org.uk
London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder
signature.asc

Ricky Clarkson

unread,
May 24, 2012, 6:35:45 AM5/24/12
to java...@googlegroups.com

Salford, but I've gathered that this is not actually atypical.

clay

unread,
May 24, 2012, 11:55:33 AM5/24/12
to java...@googlegroups.com
Well, I'm definitely not advocating reducing teacher job satisfaction. I disagree that salary is the major issue.

I've been heavily involved in problem schools with very high turnover and I've listened extensively to these teachers vent their frustrations. None of them mentioned salary. All of them mentioned frustration with obnoxious students and how little power they had over their own classrooms and how much pressure there was from management to raise math/reading test scores and reduce disciplinary statistics.

In the nicer neighborhoods, the schools get much higher test scores, student behavior problems are much less severe, the teachers seem happy to be there, there is very low teacher turnover, there are far more people who want to get jobs teaching there than there are available teaching positions, and I don't see much evidence that salary is a major problem.

Now, we have completely left the original topic of programmer education.

Ricky Clarkson

unread,
May 24, 2012, 12:19:30 PM5/24/12
to java...@googlegroups.com

Salary might not be a big problem but if I can earn 4 or 5 times as much as a programmer what I can as a teacher it's hard to take that kind of drop even if I would enjoy teaching more than programming (I don't).  That means you'll rarely get people from the upper half of the programming population going into teaching, which keeps teaching quality low.

--
You received this message because you are subscribed to the Google Groups "Java Posse" group.
To view this discussion on the web visit https://groups.google.com/d/msg/javaposse/-/eYSiBylqCi4J.

Robert Casto

unread,
May 24, 2012, 12:23:43 PM5/24/12
to java...@googlegroups.com
My district just laid off 140 teachers due to the lack of passing a levy. So while the people teaching love the job, society doesn't respect it enough to give a living wage and stability is starting to erode due to a tough economy. We had a lot of teachers leave to other districts, some are retiring early, and others were given the pink slip. How do you attract anyone to something like that?
--
Robert Casto
www.robertcasto.com
www.sellerstoolbox.com

clay

unread,
May 24, 2012, 3:10:58 PM5/24/12
to java...@googlegroups.com
You are being silly. I don't know your personal situation, but programmers typically do not make four or five times that of a teacher:


And that's just base salary.

Teachers get much better than average health and retirement benefits, more education reimbursement, special loan forgiveness programs to erase student debt. And on top of that, there's the biggest: full retirement pensions for long time teachers. Real pensions, as in a full monthly stipends that pay out through decades of retirement. Those are unheard of in the private sector.

Teachers get full summers off, 3-4 weeks of for Christmas, a week for spring break, tons of other paid holidays that are unheard of in the private sector, plus a generous allotment of sick/personal days on top of all of that.

And, if teachers choose, there are plenty of opportunities for extra paid work at attractive hourly rates if they want to give up some summer vacation time or work an extra hour after the traditional school day or run an extracurriculur club.

Secondly, I know of special charter schools in NJ where they *do* pay regular K-12 classroom teachers superstar salaries of $150,000/year on top of the extended vacations and other perks. And, hey, if there's evidence of causation from those types of teachers to a miracle turn around in student performance, it may completely justify the cost. But studies I've read suggest very little effect of teacher pay on academic outcomes.

Ricky Clarkson

unread,
May 24, 2012, 3:17:46 PM5/24/12
to java...@googlegroups.com

My wife is a teacher and I am a programmer.

All countries are not equal.  I'm not in the US, I'm in Argentina and I'm not making the numbers up.  I wish I were.

That said, even in the UK I would have felt unable to start a family on a high school teacher's salary.

--
You received this message because you are subscribed to the Google Groups "Java Posse" group.
To view this discussion on the web visit https://groups.google.com/d/msg/javaposse/-/lLl96GKX_IgJ.

Jon Kiparsky

unread,
May 24, 2012, 3:26:06 PM5/24/12
to java...@googlegroups.com
No offense, clayton, but you've never met a teacher, have you? Those  easy hours? That's just the time in the actual classroom.  When do you grade tests and homework, work on lesson plans,  talk to parents about discipline issues, and so forth?

And.as for those cushy retirement plans, maybe you don't get newspapers where you are, but those are getting clawed back all over the country. Started happening about a decade ago. I dont know what this all has to do with java, but this "teachers have out easy" business is what's silly. I wish it were so, and it ought to be so, but it ain't.

Robert Casto

unread,
May 24, 2012, 3:37:36 PM5/24/12
to java...@googlegroups.com
More than that, I think of the environment in which they have to work. They have little control and lots of frustration and headaches. I get a quiet office all to myself and occasional phone calls. I don't have to talk to people on the phone if I don't want to. And I don't even have to shave if I don't want. :)

I don't hold the 9 months work against them per year. Their day is typically longer than 8 hours and they get pulled into lots of other things that make the day longer or take them from their families. They also have to get training each summer and they typically have to start work weeks before students come and stop weeks after the students are done. Teachers do it for the love of students, not for the love of money. Perhaps we should expect more of the students? I teach my kids to respect them and never fear them and to always ask questions.

On Thu, May 24, 2012 at 3:26 PM, Jon Kiparsky <jon.ki...@gmail.com> wrote:
No offense, clayton, but you've never met a teacher, have you? Those  easy hours? That's just the time in the actual classroom.  When do you grade tests and homework, work on lesson plans,  talk to parents about discipline issues, and so forth?

And.as for those cushy retirement plans, maybe you don't get newspapers where you are, but those are getting clawed back all over the country. Started happening about a decade ago. I dont know what this all has to do with java, but this "teachers have out easy" business is what's silly. I wish it were so, and it ought to be so, but it ain't.

--
You received this message because you are subscribed to the Google Groups "Java Posse" group.
To post to this group, send email to java...@googlegroups.com.
To unsubscribe from this group, send email to javaposse+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/javaposse?hl=en.

Kevin Wright

unread,
May 24, 2012, 3:41:23 PM5/24/12
to java...@googlegroups.com
On 24 May 2012 20:37, Robert Casto <casto....@gmail.com> wrote:
More than that, I think of the environment in which they have to work. They have little control and lots of frustration and headaches. I get a quiet office all to myself and occasional phone calls. I don't have to talk to people on the phone if I don't want to. And I don't even have to shave if I don't want. :)

I dare say that some people on this list work in cube farms, all this talk of offices is surely teasing!

 
I don't hold the 9 months work against them per year. Their day is typically longer than 8 hours and they get pulled into lots of other things that make the day longer or take them from their families. They also have to get training each summer and they typically have to start work weeks before students come and stop weeks after the students are done. Teachers do it for the love of students, not for the love of money. Perhaps we should expect more of the students? I teach my kids to respect them and never fear them and to always ask questions.

Again, many of us also probably work > 8 hours/day :)

Robert Casto

unread,
May 24, 2012, 3:52:48 PM5/24/12
to java...@googlegroups.com
I am self employed and work 12 hours a day, sometimes till 2 am. Does that help?

--
You received this message because you are subscribed to the Google Groups "Java Posse" group.
To post to this group, send email to java...@googlegroups.com.
To unsubscribe from this group, send email to javaposse+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/javaposse?hl=en.

Kevin Wright

unread,
May 24, 2012, 4:23:01 PM5/24/12
to java...@googlegroups.com

If you're earning by the hour, then I can think of at least one person it helps :)

phil swenson

unread,
May 25, 2012, 1:17:56 PM5/25/12
to java...@googlegroups.com
most teachers
1) teach the same stuff year after year, use same lesson
plans/homework, slightly alter tests. might be challenging for year
1/2
2) make students grade homework/tests

discipline - yep - it's a challenge
> --
> You received this message because you are subscribed to the Google Groups
> "Java Posse" group.

Fabrizio Giudici

unread,
May 29, 2012, 3:21:34 PM5/29/12
to java...@googlegroups.com, Casper Bang
On Thu, 24 May 2012 11:00:56 +0200, Casper Bang <caspe...@gmail.com>
wrote:
Fermi is a special case, since he married a jewish woman and in Italy in
the '30s there was the infamous "racial manifesto".

Dick Wall

unread,
May 30, 2012, 4:47:46 PM5/30/12
to java...@googlegroups.com


On Wednesday, May 23, 2012 2:06:49 PM UTC-7, clay wrote:
To summarize some viewpoints:

Tor - Advocates benefits of a broad education.
Dick - Advocates importance of applied math. Also advocates individual choice of education.
Ido Ran (Thread OP) - Advocates more emphasis on applied skills rather than broad academic skills.

Question for Java Posse: What academic subjects or classes were most valuable, interesting, and which do you wish you could take?

@Tor, if you advocate broad education, why haven't you recently taken classes to broaden your education?

@Dick, if math is great, why haven't you been taking math classes? With your deep interest in Scala and Haskell, I would hope you've taken university level classes in Algebraic Structures, Topology, Real Analysis, and Category Theory. If you haven't taken these classes, why not?

 
I have, and you can add game theory to that list as well as matrix manipulation, linear algorithms plus all the stuff I learned in university (which by definition is "university level" and not much has changed on the math basics). Why would you think I would say this if I hadn't done these? The problem is that I have forgotten a lot of it in the intervening years of imperative programming, and that is what I am now dusting off. With the exception of game theory (which I did online recently), I don't have as much time as I would like to go back and formally review all of this material as I still have to make a living, but it's all there and just needs dusting off a bit.

To return the question Clay, what was the last math or other adult education course you have done?
 

@Ido Ran, sure the typical programmer job doesn't demand math or history or science. Most normal jobs are like that. However, I'd argue that it's common to find quality programmers who do perfectly well without formal knowledge of the skills you mention such as design patterns or database design. Also, UML is an antique.

This issue is infinitely broad, but there are two policy strategies that I'd advocate with fairly high confidence in the general subject of education and workplace credentialism:

- K-12 education should be governed more by parents and local communities rather than by the state or national governments. Giving families and communities meaningful say and involvement is beneficial over having things run by completely remote politicians.

clay

unread,
May 31, 2012, 10:32:43 AM5/31/12
to java...@googlegroups.com
For me, the last pure math class I took was Number theory which is the prereq to the math heavy cryptography class. I also recently took Signals + Systems (frequency analysis, FFT, etc) which is EE math rather than pure math.

That's not a ton of math in the past, but I'm actively taking classes. As someone who has spent most of my life focusing on practical money earning programming work, I'm now putting far more energy into academics and theoretical learning, which provides me long term value.

When I have the time for another math class, I'm dying to take more pure math. I think abstract algebra (my university calls this Algebraic Structures) is important to understanding the more abstract programming concepts, although I can't be sure until I actually learn the material. However, I've been taking mostly science/engineering classes towards a degree and bigger picture career goals rather than math classes which are more fun in the short term.

Dick, vector/matrix theory is important, and that is university level math, but it's entry level university math. For a programming guru, Scala expert, and a math advocate, I would think more pure math is important to your career specialization.
Reply all
Reply to author
Forward
0 new messages