Beefy Boxes and Bandwidth Generously Provided by pair Networks
Clear questions and runnable code
get the best and fastest answer
 
PerlMonks  

Re^2: What do you call yourself?

by BrowserUk (Patriarch)
on Jun 04, 2004 at 21:58 UTC ( [id://361229]=note: print w/replies, xml ) Need Help??


in reply to Re: What do you call yourself?
in thread What do you call yourself?

I did a mech. eng apprenticeship (3 actually but that's another story) and can, or at least could, call myself a mechanical engineer.

When I see the terms "engineer" or "engineering" in conjunction with "software", "information", etc. I have but one question.

Show me your standards (and please don't offer ISO 9000/9001/90002) and your metrics.

When it becomes possible to write a blueprint for two components, give those blueprints to four separate shops anywhere in the world and know that when you receive them back that any pairing will assemble together. Then you are engineering.

Prior to that, you are simply crafting.

I'm a coder.


Examine what is said, not who speaks.
"Efficiency is intelligent laziness." -David Dunham
"Think for yourself!" - Abigail

Replies are listed 'Best First'.
Re^3: What do you call yourself?
by DrHyde (Prior) on Jun 05, 2004 at 12:17 UTC
    Those are at least more sensible criticisms than any whining about not being a member of the right club or having the right bit of paper!

    Trouble is, in the real world you *can't* guarantee that components would fit together when they arrive from your subcontractors. You can't even guarantee that from your own production lines. This is why you test a sample of components as they arrive, and test the end product once you've combined those components with others.

    As for standards - there's no universally accepted standards yet. Seperate organisations have their own standards - at least, the competent ones do - and there is some movement towards universal standards. This is similar to the situation a couple of centuries ago in mechanical and civil engineering. Just look, for example, at the myriad incompatible ways of doing something as simple as making a screw. I don't think you could seriously claim that the pioneers of commercial steam power, or those building canals or cotton mills weren't engineers!

      In the real world you *can't* guarantee that components would fit together when they arrive from your subcontractors....

      You can. That's why tolorences exist.

      If they do not, then they do not comply with the blueprints and the part supplied would be rejected. The supplier would be sacked and go out of business. It is the responsibility of the supplier to ensure that what he supplies meets the blueprint and and therefore fulfills the contract. Remember, we are talking about 4 parts here.

      Sure, if the contract is for 100s or 1000s, then you might perform sample testing to ensure that the supplier is maintaining his quality. Those tests would be performed by testing against the blueprints, not by trying to assemble the parts together.

      The difference is in the standards that allow that blueprint to be definitive and the standards that allow parts produced to be tested directly against that blueprint rather than through trial assembly. That is why you can purchase a 10 mm nut and a 10 mm bolt from anywhere and pretty much guarentee that the will screw together. Or a disk drive from IBM, or Seagate or Toshiba and know that it will fit and work in your PC.

      Your point about people like Thomas Telford and I.K. Brunell is interesting. We do consider them great engineers. They were. But they were the exceptions that proved the rule. What they did was vastly different from what the average programmer does. To really compare, you would have to know the names and the working pratices of the thousands of nameless foundrymen, steel workers and riveters that built the ships, bridges and canals that they designed. If you tried to take The Clifton Suspension Bridge apart and then reassemble it swapping various apparently identical parts as you did so, it wouldn't fit back together. Each part may be essentially identical, but each is fettled to fit it's unique place in the whole. That fettling is craftsmanship, not engineering.

      There are even a few cars that are still made this way. Morgan still manufacture their vehicles this way, but their production rates are something like 10 or 12 a week. For all thier models. The downside of these wonderful cars is that even if you have the money in the bank, you will have to wait years to buy a new one. It also means that if you have a fender-bender, you have to go back to the factory and have them make new panels to fit your vehicle. You cannot buy them off the shelf. Each supposedly identical vehicle is completely unique. Imagine if Ford, GM or Toyota still worked that way.

      I realise that the analogy breaks down quite rapidly. The production phase for software is entirely different than that for mechanical parts and assemblies. And then there is the 'use' stage. I've seen people do some bizaar, biwildering and sometimes amazing things with a spreadsheet. The equivalent would like taking a Ford Taunus and driving it across a wilderness. (Hmm. They call that rallying:) But even then, although the guys that would adapt the vehicle to it's new role, uninvisaged by it's designers, would be engineers, you would rarely find them manufacturing a 10,5 mm nut and bolt.

      I'd suggest that the current state of software production methods is still at roughly the same stage as mechanical or civil engineering was when those greats were alive and working. To my way of thinking, that makes people like Knuth, Tim Berners-Lee, Linus Torval and Larry Wall in the same place and league as those great engineers. But it leaves the rest of us pretty much in the same place as the myriad nameless craftsmen that built their designs. For the most part, that makes us honarable, professional (small p) men & women trying our best to do good work and be a part of something great, but not engineers in the modern sense of the word.


      Examine what is said, not who speaks.
      "Efficiency is intelligent laziness." -David Dunham
      "Think for yourself!" - Abigail
        ++ To you---someone else who knows who IKB was! Did you know that his father was a good friend of Charles Babbage and was the person who recommended Joseph Clement? These last two have always been on my list of 'greats'. As to what I call myself, well when I bother I just say programmer, it is what I do, and more to the point, what I want to do. As for software engineers, perhaps when programming stops being an art, then we can have engineers.

        --hsm

        "Never try to teach a pig to sing...it wastes your time and it annoys the pig."

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://361229]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others exploiting the Monastery: (4)
As of 2024-03-29 10:28 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found