South Africa Flag logo

South African Skeptics

December 12, 2019, 15:20:50 PM
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
Go to mobile page.
News: Please read the posting guidelines before posting.
   
   Skeptic Forum Board Index   Help Forum Rules Search GoogleTagged Login Register Chat Blogroll  
Pages: 1 [2] 3 4   Go Down
  Print  
Author Topic:

On programming

 (Read 8708 times)
0 Members and 1 Guest are viewing this topic.
benguela
Full Member
***

Skeptical ability: +3/-0
Offline Offline

Posts: 223


An infinitesimal subset of the observable universe


benguela
WWW
« Reply #15 on: May 31, 2011, 19:48:06 PM »

I see there are javascript demo comps these days. Smiley Not very impressive though, but I guess it is js.

Check this out, 1k demos still going strong (turn up your volume, requires sound)


Tracie by TBC



« Last Edit: May 31, 2011, 20:05:10 PM by benguela » Logged
Lurkie
Full Member
***

Skeptical ability: +3/-0
Offline Offline

Posts: 132


« Reply #16 on: May 31, 2011, 21:47:09 PM »

so, ummm.... How many programmers are on this forum???  Undecided

Anyone for COBOL?  Wink

Like Mandarb, I'm not at the level of assembler ( way too lazy ) and I never got my head around C or C++, but I have made my living programming in BASIC ( post-COBOL LOL! ), contract programming and selling shareware, way back when. Now just hobby projects for me and friends.

Hooray for COBOL and FORTRAN! Wasn't COBOL designed for business/finance related problems?

Interestingly (at least, for me) there is lots and lots and lots of fresh and legacy scientific code out there that is still written in FORTRAN - even the FORTRAN-4 column dependent kind.

I had a bit of a nightmare some years ago trying to use "Digital" FORTRAN that promised to allow me to make nice, Windows user interfaces. Big disaster! Had to write endless code just to create the usual "Hello world" app. I gave that up as a joke and then tried Visual Basic for the interface passing parameters to a FORTRAN DLL to do the number crunching. Yuk yuk yuk.

After a few months of hair-pulling my S/O introduced me to Delphi. I first tried the parameter passing thing but bashed my head against the row vs column dominant problem, so switched into Delphi completely. Delphi has been great and allows me to paddle in the shallow and deep-end of the pool. But I miss "Numerical recipes"...
Logged
st0nes
Hero Member
*****

Skeptical ability: +10/-1
Offline Offline

Posts: 942



mark.widdicombe1
WWW
« Reply #17 on: June 01, 2011, 07:11:50 AM »

so, ummm.... How many programmers are on this forum???  Undecided
I used to be (database applications), but now I run a gym.
Logged
BoogieMonster
NP complete
Hero Member
*****

Skeptical ability: +19/-1
Offline Offline

Posts: 3128



« Reply #18 on: June 01, 2011, 10:28:06 AM »

Quote from: Mefiante
One of the most horrendous bits of OOP I’ve ever seen was actually done by a computer science graduate. ..... you have to wonder how on earth the offender managed to graduate.

Welcome to the headache that is developer hiring. A degree don't make a programmer, no ma'am. The world over industry is left disillusioned by what is churned out by universities. Somehow I always get the feeling that varsity professors have NO IDEA what industry wants and needs. The cynic in me thinks they don't care, they're teaching SCIENCE damnit! Not craft!

The point is if you can code your way to getting the correct result for an assignment you get a passing mark and move on, no matter how horrendous your code is (as a tutor I once got rapped over the knuckles for being "too hard" on the student's projects).

In fact it's the craft that is sought after, a varsity that achieves it will have awesome post-degree hiring rates at higher salaries, guaranteed.
Logged
st0nes
Hero Member
*****

Skeptical ability: +10/-1
Offline Offline

Posts: 942



mark.widdicombe1
WWW
« Reply #19 on: June 01, 2011, 10:53:49 AM »

Quote from: Mefiante
One of the most horrendous bits of OOP I’ve ever seen was actually done by a computer science graduate. ..... you have to wonder how on earth the offender managed to graduate.

Welcome to the headache that is developer hiring. A degree don't make a programmer, no ma'am. The world over industry is left disillusioned by what is churned out by universities. Somehow I always get the feeling that varsity professors have NO IDEA what industry wants and needs. The cynic in me thinks they don't care, they're teaching SCIENCE damnit! Not craft!

The point is if you can code your way to getting the correct result for an assignment you get a passing mark and move on, no matter how horrendous your code is (as a tutor I once got rapped over the knuckles for being "too hard" on the student's projects).

In fact it's the craft that is sought after, a varsity that achieves it will have awesome post-degree hiring rates at higher salaries, guaranteed.
Quite. I have an arts degree (English & Philosophy) and a Master Mariner's certificate.  When I wanted to go into IT I went to Van Zyl & Pritchard (are they still going?) and did a COBOL course.  I've never used COBOL in anger; my first job was Informix 4gl, since then I've used Progress, Python
and Oracle too.  A six month course that concentrates on the practical aspects of programming trumps a CS degree unless you want to go and work in Intel's R&D department or something similar.  Businesses want to send their customers invoices, they don't want to 'model the real world'.
Logged
Mefiante
Defollyant Iconoclast
Hero Member
*****

Skeptical ability: +61/-9
Offline Offline

Posts: 3757


In solidarity with rwenzori: Κοπρος φανεται


WWW
« Reply #20 on: June 01, 2011, 12:24:35 PM »

My bugbear with this, though, is that it seems reasonable to suppose that someone who has delved into highly abstract notions such as Turing machines, Kleene’s theorem, the Halting Problem, P- and NP problems, non-computable functions, and so on, would also have the savvy to apply a similar kind of high-level abstract analysis to practical programming constructs in order to streamline algorithm designs.  The situation is somewhat akin to an electronics engineer designing a control circuit for a manufacturing process using thermionic valves instead of semiconductor components.  He can readily be expected to know better.

But clearly that’s asking too much in some cases.

It’s probably true that the universities or academic institutions are partly to blame for not sufficiently emphasising such practical aspects.  I think that the greater part of the problem actually lies with the individual students who do only the bare essentials required to pass.  It should be within a university’s head-of-department’s powers to tell a student to study something else if the student is not suitable for the course.  Unfortunately, education has been turned into a consumer product for which the student (usually) pays, and this disallows the exercise of such powers.  The university’s staff can rationalise it away by saying that the student is wasting his or her money.  But it gets worse when industry experiences a shortage of specific skills because such slipshod individuals will still find favour based purely on their qualifications.  It’s a pervasive problem, especially here in SA.

'Luthon64
Logged
BoogieMonster
NP complete
Hero Member
*****

Skeptical ability: +19/-1
Offline Offline

Posts: 3128



« Reply #21 on: June 01, 2011, 14:18:54 PM »

The situation is somewhat akin to an electronics engineer designing a control circuit for a manufacturing process using thermionic valves instead of semiconductor components.  He can readily be expected to know better.

For me it's more like having the engineer draw up a schematic of the circuit and not requiring him to build it at all. Then not telling him the process of manufacture, or explaining the steps to get the circuit to production, production streamlining, component cost analysis, etc... I have a feeling engineering depts are way better at this, witnessed by the fact that a lot of awesome developers I know actually came from the engineering sciences (usually electronic).

In the past I may have felt averse to calling software engineering .. "engineering", but I lost that conception a long time ago... There are processes, procedures, guidelines, safeguards, ancient lessons lost in tomes, things that exist outside of "coding" and even programming theory... that don't get instilled in Computer Science courses. Or maybe get presented (back in the day we had some highly theoretical lectures on methodologies), but not demonstrated as a practical implementation or required for completion.

There's also a general feeling I get that computer "people" tend to think they are the hottest shit since JC himself, and take it upon themselves to "revolutionize" something that is perfectly stable and well engineered, with their own half-assed hack that throws away a lot of established wisdom. Then going "IT'S REVOLUTIONARY! EVANGELISE!", when in reality, it's the same, just a bit different.

I'm always in awe of the computing pioneers, who foresaw and prototyped things that a lot of average software people today think is "new", but is in fact old hat.
Logged
benguela
Full Member
***

Skeptical ability: +3/-0
Offline Offline

Posts: 223


An infinitesimal subset of the observable universe


benguela
WWW
« Reply #22 on: June 01, 2011, 16:30:49 PM »

It should be within a university’s head-of-department’s powers to tell a student to study something else if the student is not suitable for the course. 

I give a programming course to bridge the gap between graduates and business needs. Students are required to write 4 programs in 4 days. They're relatively easy, program 1 for example is write an algorithm to calculate the standard deviation of a set of numbers from a file. They must write their own algorithm and not say a call to something in the standard library like in java.util.Math.

I fail between 30% to 80% of the class every time. Worse are the programmers already employed and earning a shitload of money, are failing. Interestingly one employer has attempted to apply pressure on me to be more lenient. You would think business would be happy with an opportunity to dodge a bullet.

My results suggest that universities are pushing people through with no aptitude for programming.

Logged
Mefiante
Defollyant Iconoclast
Hero Member
*****

Skeptical ability: +61/-9
Offline Offline

Posts: 3757


In solidarity with rwenzori: Κοπρος φανεται


WWW
« Reply #23 on: June 01, 2011, 17:07:06 PM »

Er sorry, but that’s scary.  All of it.  Do you give your students a mathematical formula that they then need to implement as an algorithm?  Or do you take them through a theoretical example which they then essentially have to mimic in slightly altered form?

'Luthon64
Logged
benguela
Full Member
***

Skeptical ability: +3/-0
Offline Offline

Posts: 223


An infinitesimal subset of the observable universe


benguela
WWW
« Reply #24 on: June 01, 2011, 17:42:09 PM »

I give them the mathematical formula that they have to implement as an algorithm along with an example taking them through the steps in the standard deviation formula. They can't do it and yet they are "programmers"!

They complained to management because the course is not about the algorithms, it's supposed to be about how they plan their work, gives estimates to management, how to do designs, best practises like automated unit testing, report on progress and so on. The students can't even do the algorithm so they lose the ability to focus on the course content. The minimum requirement is they must submit a working program then I can evaluate all the other parts they must submit.

I stood my ground and told management that if they can't write simple programs I will not pass them.





Logged
Lurkie
Full Member
***

Skeptical ability: +3/-0
Offline Offline

Posts: 132


« Reply #25 on: June 01, 2011, 17:48:09 PM »

A few years ago I was chatting to a student who had just been hired by CSIR. This chap had done a BSc degree at Wits and his main subject was industrial maths (I *think* that's what it was called). So I asked him what language he used to solve the industrial maths related problems. In utter amazement he looked at me and said: "English".
Logged
Mefiante
Defollyant Iconoclast
Hero Member
*****

Skeptical ability: +61/-9
Offline Offline

Posts: 3757


In solidarity with rwenzori: Κοπρος φανεται


WWW
« Reply #26 on: June 01, 2011, 18:35:12 PM »

Gah, one can but hope that anecdotes like these are the exception rather than the rule.

benguela, do you prepare your own course materials or do you use a curriculum compiled by an institute/authority you work for?  The reason I ask is because within the scope of four programming assignments, one could come up with less highbrow but similarly instructive tasks than implementing a standard deviation calculation.  It is a law of the universe that 98% of people’s eyes will glaze over when they see something like σ2 = (Σxi2)/N – (Σxi/N)2.

'Luthon64
Logged
rwenzori
Sniper
Sr. Member
****

Skeptical ability: +7/-1
Offline Offline

Posts: 403


Merda accidit.


« Reply #27 on: June 01, 2011, 18:58:29 PM »

It is a law of the universe that 98% of people’s eyes will glaze over when they see something like σ2 = (Σxi2)/N – (Σxi/N)2.

'Luthon64

Count me in the 98%, you horrid superior beings.  Wink
Logged
benguela
Full Member
***

Skeptical ability: +3/-0
Offline Offline

Posts: 223


An infinitesimal subset of the observable universe


benguela
WWW
« Reply #28 on: June 01, 2011, 19:04:03 PM »

The course is from Carnegie Mellon University so I can't change it.

What I do is run through the exercise using excel to demonstrate the formula. I type numbers into a column then the students watch me entering the formula into an excel field. I do not know how to make it simpler than that.

In another assignment they have to write their own linked list, i.e. they can't use java.util.LinkedList. I go into detail what a linked list is and show how it's different from an array because you can insert in the middle without having to shuffle everything along. This has been even worse than the standard deviation. This assignment seems to be particularly difficult. The programs do get "harder" Smiley



Logged
Mefiante
Defollyant Iconoclast
Hero Member
*****

Skeptical ability: +61/-9
Offline Offline

Posts: 3757


In solidarity with rwenzori: Κοπρος φανεται


WWW
« Reply #29 on: June 01, 2011, 19:53:21 PM »

Count me in the 98%, you horrid superior beings.  Wink
’T weren’t no criticism.  Just an observation, Sahib.  Hosses fo’ cosses an’ all dat. Cheesy



The course is from Carnegie Mellon University so I can't change it.
Bugger… Wink

In another assignment they have to write their own linked list…
Actually, this one’s probably more useful.  Hmm, the only way I can think of to create a linked list using Java is if each node is itself an instance of the same object class that references the node after it (and the node before if it’s doubly-linked).  Being strictly OO, Java doesn’t recognise pointers, which is how I’d do this normally.  Then again, everything in Java except operators is a class — and thank Sun Microsystems/the JRE for garbage collection.

'Luthon64
Logged
Pages: 1 [2] 3 4   Go Up
  Print  


 
Jump to:  

Powered by SMF 1.1.11 | SMF © 2006-2009, Simple Machines LLC
Page created in 0.78 seconds with 24 sceptic queries.
Google visited last this page May 12, 2019, 11:20:32 AM
Privacy Policy