Stories
Slash Boxes
Comments

SoylentNews is people

posted by cmn32480 on Saturday November 07 2015, @11:02AM   Printer-friendly
from the but-it-makes-me-look-cool dept.

The Atlantic is running an article on the friction between the computing world and Professional Engineer societies. This discussion has been going on for a long time, and is meaningful to me personally - I quit a 10-year career as server administrator with 'engineer' in my job title when I graduated with a Mechanical Engineering degree, and have since earned my Professional Engineer license. In a world where most software comes with a disclaimer of liability due to defects, where would an ethical, civic-minded programmer even practice Professional Engineering? Angry Birds probably doesn't have any responsibility to the public safety, so there's little need there; on the other hand, Google's self-driving car program is a good candidate.

I'd love to welcome the programming profession into the circle of licensed Engineers, provided that the industry manages to agree on standards of quality and accountability. I don't see the methods (such as Agile) used by programmers as a significant obstacle, either; the programming motto of "move fast and break things" (which the article wrongly decries) is echoed in the motto "fail early, fail often" that is held by many Mech Eng R&D shops. I just fear that the halting problem will be solved before any such standards become widely accepted and implemented in the industry.


Original Submission

 
This discussion has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 2, Interesting) by Anonymous Coward on Saturday November 07 2015, @11:19AM

    by Anonymous Coward on Saturday November 07 2015, @11:19AM (#259908)

    Unfortunately the debate is ultimately about preservation of own career, the benefits to the public are only excuses. The sorry state of the IT industry is not caused by programmers, nor obviously by engineers, but the higher ups anyway.

    • (Score: -1, Troll) by Anonymous Coward on Saturday November 07 2015, @12:05PM

      by Anonymous Coward on Saturday November 07 2015, @12:05PM (#259923)

      Exactly. This nonsense over "engineer" is no different than any other bit of "intellectual property" bullshit with people trying to claim ownership over information or in this case a mere word.

      • (Score: 2, Insightful) by Anonymous Coward on Saturday November 07 2015, @03:52PM

        by Anonymous Coward on Saturday November 07 2015, @03:52PM (#260001)

        Trademarks are actually useful: they are designed to reduce confusion in the marketplace.

        If real engineers do not push back on this, the term will become generic.

      • (Score: 2) by NullPtr on Sunday November 08 2015, @10:01AM

        by NullPtr (3786) on Sunday November 08 2015, @10:01AM (#260280) Journal

        Yeah, there must be professional managers out there now that aren't even aware that in the IT industry all you need to do to become a manager is to put on a suit and start talking shit.

  • (Score: 2, Informative) by Anonymous Coward on Saturday November 07 2015, @11:27AM

    by Anonymous Coward on Saturday November 07 2015, @11:27AM (#259911)

    Two things stopping it: companies who are used to no liability clauses, and lack of regulations providing quality standards and liability protections for the parties involved.

  • (Score: 4, Funny) by The Mighty Buzzard on Saturday November 07 2015, @11:35AM

    by The Mighty Buzzard (18) Subscriber Badge <themightybuzzard@proton.me> on Saturday November 07 2015, @11:35AM (#259912) Homepage Journal

    Don't look at me, I call myself a code monkey in that context.

    --
    My rights don't end where your fear begins.
    • (Score: 3, Funny) by Anonymous Coward on Saturday November 07 2015, @12:26PM

      by Anonymous Coward on Saturday November 07 2015, @12:26PM (#259932)

      Don't you think it's time you promoted yourself to Simian Engineer?

    • (Score: 5, Interesting) by c0lo on Saturday November 07 2015, @12:45PM

      by c0lo (156) Subscriber Badge on Saturday November 07 2015, @12:45PM (#259939) Journal
      Why? Who says all engineers, no matter the field, needs a licence?
      Maybe some would need to get over it and revert to an older sense [etymonline.com] of engineer/engineering?

      from Late Latin ingeniare (see engine); general sense of "inventor, designer" is recorded from early 15c.; civil sense, in reference to public works, is recorded from c. 1600 but not the common meaning of the word until 19c (hence lingering distinction as civil engineer). Meaning "locomotive driver" is first attested 1832, American English. A "maker of engines" in ancient Greece was a mekhanopoios.

      You know? Just like with the hacker word: it no longer means "unorthodox but clever solution to a problem", it reverted to something closer to "cut with rough or heavy blows"... get over it, language devolves.

      --
      https://www.youtube.com/watch?v=aoFiw2jMy-0 https://soylentnews.org/~MichaelDavidCrawford
      • (Score: 1, Insightful) by Anonymous Coward on Saturday November 07 2015, @02:11PM

        by Anonymous Coward on Saturday November 07 2015, @02:11PM (#259955)

        The observation that language evolves is accurate, but it does not follow from that that we must accept every change to the language without a fight. For instance, I refuse to use the word "hacker" in confusing and ultimately harmful ways, and I will tell others who do so my thoughts on the matter. If language can evolve, and it can, then it can also evolve in positive ways. It's possible for people to stop using a word in certain contexts, so if we find companies trying to spread propaganda (for instance, using "piracy" to refer to copyright infringement), we can fight back by not using it that way and telling others to do the same.

        This is just a response to the final part of your comment, and not about the debate about the word "engineer".

        • (Score: 0) by Anonymous Coward on Saturday November 07 2015, @03:15PM

          by Anonymous Coward on Saturday November 07 2015, @03:15PM (#259979)

          (for instance, using "piracy" to refer to copyright infringement), we can fight back by not using it that way

          I don't think there's a lot of people left who get upset when they're called pirates. [youtube.com]

          Yar har, fiddle dee dee, being a pirate is all right to be...

          • (Score: 0) by Anonymous Coward on Saturday November 07 2015, @04:20PM

            by Anonymous Coward on Saturday November 07 2015, @04:20PM (#260006)

            Then they are being foolish. [gnu.org] I've even seen some refer to it as "theft". What they don't realize is that they are helping spread propaganda.

            It's also not about being upset, but about rejecting uses of words that cause confusion and spread emotional propaganda.

      • (Score: 5, Insightful) by mcgrew on Saturday November 07 2015, @07:11PM

        by mcgrew (701) <publish@mcgrewbooks.com> on Saturday November 07 2015, @07:11PM (#260067) Homepage Journal

        I programmed for over thirty years and never considered myself an engineer. The difference between programmer and engineer is illustrated by something I wrote back in 2002:

                “Hey, you got a new car! Pretty nice! I see you're sticking with the same manufacturer.”
                “Well, I liked the old one. I've always been happy with Microcar's autos.”
                “Your old one was only two years old, if you liked it why did you buy a new one?”
                “The manufacturer said I should upgrade. Besides, this new model has a cassette instead of an eight track. Wish it would play the other four tracks though...”
                “Why didn't you just buy a new radio?”
                “The manufacturer welds them in, and wires them so the car won't start if you take it out. Besides, the radio wasn't the only reason to upgrade.”
                “What else?”
                “Ralph Nader says the old one crashes too often, but you know that nut. I've only had that old one one crash six times, and I was never in the hospital too long. But Microcar says this model is much more stable and hardly ever crashes. It's supposed to be more secure, too.”
                “Why did it keep crashing?”
                “Dunno, something about the spark plugs interacting with the steering system, I'm no mechanic. My mechanic tried to explain it to me but these mechanical things are just too complicated. He says if I'd defrag my pistons more often it wouldn't crash, you get much more stability with a fresh tuneup. But I just said ‘the hell with it’ and traded it in.
                “In fact, I'm taking it in to the shop right now.”
                “But it's a band new car, it needs a tuneup?”
                “No, there's a ‘feature’ that keeps the door lock from working if you drive it more than six miles. I'm going to get the patch kit.”
                “I thought you weren't mechanical?”
                “Well, they say this one's an easy fix and I can't afford another repair bill.”
                “Won't they fix it under warrantee?”
                “What warrantee? This is a car! The EULA says they bear no responsibility for anything. I just hope I don't get in trouble with the law applying this patch.”
                “Huh?”
                “Yeah, they weld the hood shut, and under the DMCA, opening the hood of your car is a felony if it's welded shut. You can go to prison if you get caught, even if they are tacky little welds that come apart by themselves.”
                “Boy, cars sure are weird. I'm glad my computer isn't like that, I'd never get any work done!”

        --
        mcgrewbooks.com mcgrew.info nooze.org
  • (Score: 4, Informative) by Marneus68 on Saturday November 07 2015, @11:42AM

    by Marneus68 (3572) on Saturday November 07 2015, @11:42AM (#259915) Homepage

    I graduated from a French Engineering school with a master's degree in Software Architecture. As far as my country (and most of Europe) is concerned I am an Engineer. I happen to be a programmer too, but programming is only fraction of what I've learned in my time in . Project management, software architecture, team management, quality control and insurance were other parts of what I was taught. I do think I've earned my title, not only though my curriculum, but through my professional experience.
    Stop telling me what to do or what to say about me and my job. Thanks Mr Internet stranger man.

    • (Score: 2) by c0lo on Saturday November 07 2015, @12:28PM

      by c0lo (156) Subscriber Badge on Saturday November 07 2015, @12:28PM (#259935) Journal

      I graduated from a French Engineering school with a master's degree in Software Architecture... Project management, software architecture, team management, quality control and insurance were other parts of what I was taught.

      See? This is why Faecebook/Instagram/Twitter/etc are USian: an European engineer would never bother thinking at such things as something worth to be created.
      Minitel [wikipedia.org] on the other side - I raise my hat to that one.

      --
      https://www.youtube.com/watch?v=aoFiw2jMy-0 https://soylentnews.org/~MichaelDavidCrawford
      • (Score: 2) by Grishnakh on Saturday November 07 2015, @03:27PM

        by Grishnakh (2831) on Saturday November 07 2015, @03:27PM (#259985)

        The people behind companies like Facebook have made billions of dollars, so there's obviously something wrong with the European mindset there. The Americans have figured out that you can make tons of money by creating new and silly ways for people to waste their time online, and since so many people actually like and use these services, there's obviously something to them. It's not like all these people have jumped on Twitter and Facebook because they were forced to or coerced into it.

        • (Score: 5, Insightful) by maxwell demon on Saturday November 07 2015, @04:02PM

          by maxwell demon (1608) on Saturday November 07 2015, @04:02PM (#260003) Journal

          The people behind companies like Facebook have made billions of dollars, so there's obviously something wrong with the European mindset there.

          Only if you think that making billions of dollars is the ultimate goal to strive for.

          Just as food for thought: The Mafia also makes billions of dollars.

          --
          The Tao of math: The numbers you can count are not the real numbers.
          • (Score: 2, Insightful) by Grishnakh on Saturday November 07 2015, @05:48PM

            by Grishnakh (2831) on Saturday November 07 2015, @05:48PM (#260033)

            Making billions of dollars shows what people, as a group, value most. The Mafia makes lots of money because there's a huge demand for things which some smaller group of people have deemed "bad", namely alcoholic beverages.

            By saying that making billions of dollars isn't a very good goal to strive for, you're implicitly saying that things the majority value are junk, and by extension that you know better than the majority of people about what is and isn't valuable.

            • (Score: 2) by maxwell demon on Monday November 09 2015, @07:32PM

              by maxwell demon (1608) on Monday November 09 2015, @07:32PM (#260878) Journal

              If you think the Mafia makes its money through alcoholic beverages, you're utterly outdated.

              Also that people give money for something does not always mean they value it. It may just mean it's the alternative that sucks least. For example paying ransom money usually sucks less than what happens if you don't pay.

              --
              The Tao of math: The numbers you can count are not the real numbers.
              • (Score: 2) by Grishnakh on Monday November 09 2015, @11:45PM

                by Grishnakh (2831) on Monday November 09 2015, @11:45PM (#260979)

                Obviously, Prohibition v1.0 ended some time ago, but Prohibition v2.0 is still going. The Mafia makes money largely by selling stuff to people that they want to buy, but the government has deemed "bad": prostitution, drugs, gambling, etc. Of course, they also make money with protection rackets. However there, given how horrible our regular police forces are, I think maybe shutting down the police in some localities and letting the Mafia handle it isn't a bad idea.

        • (Score: 0, Troll) by Anonymous Coward on Saturday November 07 2015, @04:44PM

          by Anonymous Coward on Saturday November 07 2015, @04:44PM (#260012)

          >coerced into it

          Oh really? I think most of fagbooks users are coerced into it through social manipulation. In the US, employers, potential friends, mates, etc all use fbook to 'vet' you. If you don't have a profile, many people consider that a red flag.

          • (Score: 1, Flamebait) by BasilBrush on Saturday November 07 2015, @05:38PM

            by BasilBrush (3994) on Saturday November 07 2015, @05:38PM (#260031)

            When I rarely come across someone who's not on Facebook, I tend to think they are either technophobes or anti-social. These days It's rather like not having a telephone. You miss out on a lot of what's happening in your larger real world social circles.

            Lots of people here and on slashdot pour scorn on Facebook. But it's because they spend too much time on their computers at home, and don't have enough real-world social contacts to make it worth-while.

            --
            Hurrah! Quoting works now!
            • (Score: 4, Insightful) by hemocyanin on Saturday November 07 2015, @11:42PM

              by hemocyanin (186) on Saturday November 07 2015, @11:42PM (#260148) Journal

              Why not add a few other categories:

              • privacy-literate
              • marketing-avoidant
              • generally-smart
              • (Score: 2) by BasilBrush on Sunday November 08 2015, @03:09PM

                by BasilBrush (3994) on Sunday November 08 2015, @03:09PM (#260364)

                "privacy-literate" means choosing what information you share and what you don't. It doesn't mean cutting yourself off from useful services.

                a "marketing-avoidant" person would know that ad-blocking works just as well on FB as anywhere else.

                "generally-smart" - It seems not.

                --
                Hurrah! Quoting works now!
                • (Score: 2) by urza9814 on Tuesday November 10 2015, @07:01PM

                  by urza9814 (3954) on Tuesday November 10 2015, @07:01PM (#261386) Journal

                  I discovered last weekend that Facebook was banning sharing of any discussion -- including news articles -- about a new competing social network. After that, I deleted the app, and am planning to block their domain entirely from my home network shortly.

                  So add 'people who oppose abusive business practices' to that list...

                  • (Score: 2) by BasilBrush on Tuesday November 10 2015, @08:11PM

                    by BasilBrush (3994) on Tuesday November 10 2015, @08:11PM (#261411)

                    An anonymous "new competing social network" apparently. Or were you scared that mentioning it's name it wasn't allowed on Soylent news either.

                    I wish I had a pound for every time someone claimed something was banned from Facebook. It's a daily clickbait tactic.

                    --
                    Hurrah! Quoting works now!
                    • (Score: 2) by urza9814 on Thursday November 12 2015, @03:25PM

                      by urza9814 (3954) on Thursday November 12 2015, @03:25PM (#262172) Journal

                      No, I just didn't remember the three random letters that are its name....but here, I went and looked up one of the news articles about it. Note that this article itself has also been banned from being posted to Facebook:
                      https://www.rt.com/usa/321101-tsu-facebook-block-competition/ [rt.com]

                      • (Score: 2) by BasilBrush on Friday November 13 2015, @02:20AM

                        by BasilBrush (3994) on Friday November 13 2015, @02:20AM (#262463)

                        Thanks, I hadn't heard of Tsu. But from the article you post, it seems pretty obvious that Tsu has incentivised users to create spammy posts on Facebook to bring users to their Tsu page for the users 45% share of advert revenue. I'd be amongst those complaining if any of these had got through to me. Is it a social network at all, or just a "make money working from home" type scam.

                        Facebook's explanation is obviously right. They don't have anything to fear from Tsu as an obscure social network; they don't ban any of the social networks that are actually competitors - Twitter, Instagram etc.

                        --
                        Hurrah! Quoting works now!
                        • (Score: 2) by urza9814 on Tuesday November 17 2015, @04:26PM

                          by urza9814 (3954) on Tuesday November 17 2015, @04:26PM (#264417) Journal

                          Yeah...I don't really care if they block Tsu.com because they think it's spam. But when they start claiming that any news articles reporting on that ban are also spam, things start getting pretty dystopic. That's clearly more about controlling user behavior than protecting them from spam.

            • (Score: 3, Insightful) by c0lo on Sunday November 08 2015, @05:58AM

              by c0lo (156) Subscriber Badge on Sunday November 08 2015, @05:58AM (#260249) Journal

              what's happening in your larger real world social circles

              Missing real world if not using FB???? WTF?!?

              --
              https://www.youtube.com/watch?v=aoFiw2jMy-0 https://soylentnews.org/~MichaelDavidCrawford
              • (Score: 2) by BasilBrush on Sunday November 08 2015, @03:07PM

                by BasilBrush (3994) on Sunday November 08 2015, @03:07PM (#260363)

                See. you don't even understand what FaceBook is about. Here on SoylentNews, you talk to pseudonymous people you don't know in real life. On Facebook you talk to people you know by name, in real life. And you hear about local events from real life that you attend in real life.

                --
                Hurrah! Quoting works now!
                • (Score: 2) by c0lo on Sunday November 08 2015, @06:22PM

                  by c0lo (156) Subscriber Badge on Sunday November 08 2015, @06:22PM (#260424) Journal

                  Here on SoylentNews, you talk to pseudonymous people you don't know in real life.

                  Even more, I even don't intend to know them in real life. 'Cause what it be good for? With most of them, there are large distances separating us, I'm not going to be part of their real-world life by any meaningful amount.

                  On Facebook you talk to people you know by name, in real life. And you hear about local events from real life that you attend in real life.

                  Oh, is this the definition of "talking" and "hearing" now? No longer mediated by mouth/ears?
                  What happened to a face to face over a pint of beer?

                  --
                  https://www.youtube.com/watch?v=aoFiw2jMy-0 https://soylentnews.org/~MichaelDavidCrawford
                  • (Score: 2) by BasilBrush on Sunday November 08 2015, @11:38PM

                    by BasilBrush (3994) on Sunday November 08 2015, @11:38PM (#260565)

                    What happened to a face to face over a pint of beer?

                    What part of "And you hear about local events from real life that you attend in real life." did you not understand? You have to arrange it somehow. In what way is emailing, phoning round (or even walking round) to each of your friends individually better than arranging it via Facebook?

                    That's why I said I tend to assume people not on Facebook are technophobes or anti-social. It's the best tool available for organising and communicating one to many amongst real-life friends. That you don't understand this just makes me make the same assumption about you.

                    --
                    Hurrah! Quoting works now!
                    • (Score: 2) by c0lo on Monday November 09 2015, @12:34AM

                      by c0lo (156) Subscriber Badge on Monday November 09 2015, @12:34AM (#260588) Journal

                      In what way is emailing, phoning round (or even walking round) to each of your friends individually better than arranging it via Facebook?

                      You mean, apart from the ads?
                      Little others but us get to know about the context/content of the interaction (translation: higher degree of privacy).
                      Besides, phoning lets other info be transferred in the process (intonation, moments of silence, etc) something that is lost via text, no matter how many emoticons you are decorating your text with.

                      "Well, allow me to retort": in what way is FB better than emailing or phoning to accept the loss of privacy in exchange for it?

                      That's why I said I tend to assume people not on Facebook are technophobes or anti-social.

                      Yeah, and I tend to think as hipsters about the early-and-no-so-early adopters of new technologies even when the older ones satisfy perfectly their needs.

                      --
                      https://www.youtube.com/watch?v=aoFiw2jMy-0 https://soylentnews.org/~MichaelDavidCrawford
                      • (Score: 3, Informative) by BasilBrush on Monday November 09 2015, @01:18PM

                        by BasilBrush (3994) on Monday November 09 2015, @01:18PM (#260747)

                        You mean, apart from the ads?

                        Ad blocking works just as well on FB as any other site.

                        Little others but us get to know about the context/content of the interaction (translation: higher degree of privacy).

                        If Zuckerberg wants to turn up at the pub he's welcome.

                        Facebook is a SOCIAL network. You talk about the same kinds of things you'd talk about at the pub, where you may be overheard also. If you want a super-secret communication tool, then that's something else. Note that the telephone isn't secret either, and email is far less secret than any of these things, being potentially transmitted in plain text between any number of random points on the internet.

                        "Well, allow me to retort": in what way is FB better than emailing or phoning

                        FB maintains the distribution you intended for a thread. Email gets randomly replied to sender only, replied to all or forwarded. Phoning is a one to one medium, rather than one to many. FB also has a specific events tool that allows for invitations, lists of the invites, who's accepted/declined, etc.

                        Basically FB is a specific tool for the purpose of maintaining a real life social network. It has lots of things that enable that, that these other generic communications tools don't.

                        And if you think FB is about hipsters, you're REALLY out of touch. Most adults are on it in my experience. At least in my country and the US. Other countries may vary.

                        You seem to be making assumptions about something you know nothing about. And if you're not on FB how would you know?

                        --
                        Hurrah! Quoting works now!
    • (Score: 1) by Francis on Saturday November 07 2015, @02:34PM

      by Francis (5544) on Saturday November 07 2015, @02:34PM (#259963)

      You're as much of an engineer as most engineers. Maybe not most, but high rise buildings and warehouses usually have "engineers." They aren't actual engineers, I doubt that any of them actually have a degree in engineering and the requisite background to do any actual engineering work. But, for whatever reason, the people who work on the mechanical systems in a building are often times called engineers. But, they're no more engineers than an auto mechanic is.

      Depending upon the firm they work for, some of those building engineers are barely qualified to change the toilet paper tubes in the restrooms.

      • (Score: 3, Insightful) by Geotti on Saturday November 07 2015, @06:50PM

        by Geotti (1146) on Saturday November 07 2015, @06:50PM (#260050) Journal

        Maybe we should adapt the term "software mechanic" sounds right to me in many cases.

  • (Score: 4, Insightful) by Bill Evans on Saturday November 07 2015, @11:50AM

    by Bill Evans (1094) on Saturday November 07 2015, @11:50AM (#259916) Homepage

    Perhaps slightly off topic, but there are characteristics in common between good engineers and good programmers. One of my favorites is a certain pessimism, what I like to call an engineering mentality: the propensity to think continually of a product, no matter how finished it seems: "There's something wrong with this. Why won't it work?"

    And then dig and find the answer.

  • (Score: 4, Insightful) by scruffybeard on Saturday November 07 2015, @11:52AM

    by scruffybeard (533) on Saturday November 07 2015, @11:52AM (#259917)

    Here is more fuel for the fire:
    Kirk vs. Picard
    .NET vs Java
    Pi vs. Tau
    Discuss among yourselves.

    • (Score: 1, Funny) by Anonymous Coward on Saturday November 07 2015, @12:14PM

      by Anonymous Coward on Saturday November 07 2015, @12:14PM (#259926)

      Kirk vs. Picard
      Janeway ftw!

      .NET vs Java
      Delphi ftw!

      Pi vs. Tau
      fuck greek, 💩 ftw!

    • (Score: 0) by Anonymous Coward on Saturday November 07 2015, @12:27PM

      by Anonymous Coward on Saturday November 07 2015, @12:27PM (#259934)

      π > τ

    • (Score: 2, Insightful) by McD on Saturday November 07 2015, @03:14PM

      by McD (540) Subscriber Badge on Saturday November 07 2015, @03:14PM (#259978)

      You forgot "vi vs emacs", you insensitive clod!

      • (Score: 0) by Anonymous Coward on Saturday November 07 2015, @03:19PM

        by Anonymous Coward on Saturday November 07 2015, @03:19PM (#259983)


        i
        i think you're forgetthing the best editor of them all!
        .
        w protip: it's ed
        56
        q

        • (Score: 1) by khallow on Saturday November 07 2015, @03:51PM

          by khallow (3766) Subscriber Badge on Saturday November 07 2015, @03:51PM (#259999) Journal
          M-x mock-dude-with-bronze^Wstone-club-brandished^Wembedded-in-arm^Wforehead
          M-x dump-verbiage-emacs-is-best
          • (Score: 0) by Anonymous Coward on Saturday November 07 2015, @04:24PM

            by Anonymous Coward on Saturday November 07 2015, @04:24PM (#260008)

            ?

      • (Score: 2) by Bill Evans on Sunday November 08 2015, @01:31AM

        by Bill Evans (1094) on Sunday November 08 2015, @01:31AM (#260189) Homepage

        elvis lives. Just sayin'.

      • (Score: 1) by marius on Sunday November 08 2015, @04:20PM

        by marius (3330) on Sunday November 08 2015, @04:20PM (#260382)

        I second that. vi vs emacs > .NET vs Java.

    • (Score: 0) by Anonymous Coward on Monday November 16 2015, @03:26PM

      by Anonymous Coward on Monday November 16 2015, @03:26PM (#263968)

      Kirk vs. Picard

      Han Solo

      .NET vs Java

      Perl

      Pi vs. Tau

      All things are actually just ones and zeros. The Universe is binary. Something either is or isn't. All sets are arbitrary. Any division of the all to numbers greater or less than 1 only serves to create confusion as to the actual nature of the Universe.

  • (Score: 2, Insightful) by Anonymous Coward on Saturday November 07 2015, @12:08PM

    by Anonymous Coward on Saturday November 07 2015, @12:08PM (#259924)

    I've never bothered to call myself a "software engineer." But I think I'll start doing so now, just like I go out of my way to support piracy of content produced by the most obnoxious "intellectual property" cartels.

  • (Score: 5, Informative) by q.kontinuum on Saturday November 07 2015, @12:19PM

    by q.kontinuum (532) on Saturday November 07 2015, @12:19PM (#259930) Journal

    SW engineering [reference.com] is about mathematical models, architecture, complexity-considerations, modularization, in some cases mathematical proof of correctness. It is about best- and worst-case estimations etc. These things can be learned and done even without knowing a single actual programming language.

    Programming is about knowing the ins and outs of a programming language, implementing the algorithms, following best practices about freeing memory, implementing unit-tests, sometimes knowledge of the compiler internals for optimizations etc.

    Both skills are valuable, and there certainly is some overlap (a programmer who needs to implement a binary tree for a new platform or language needs to have an understanding of the data-structure, tree rotation etc.; for SW architecture it is valuable to have some base knowledge about the strengths and weaknesses of the different frameworks. In some cases the programmer might know if multiplication runs on a certain CPU in O(1) or O(n), thus affecting the complexity-estimations of the SW engineer.)

    I don't see how someone performing a task clearly matching the dictionary-definition of "engineering" can categorically not be allowed carry the job title "Engineer". Not every SW is properly engineered, but it is IMO definitely possible to engineer SW.

    --
    Registered IRC nick on chat.soylentnews.org: qkontinuum
    • (Score: 3, Informative) by CirclesInSand on Saturday November 07 2015, @03:49PM

      by CirclesInSand (2899) on Saturday November 07 2015, @03:49PM (#259998)

      I disagree with the "sometimes proof of correctness". Even though it is uncommon, I'd say that only those few software developers who use proof of correctness can be called engineers.

      The standard of engineering is that an engineer knows his design will work before implementing it. Anyone who has to compile a program and run unit tests to see if it works isn't a software engineer. It would be like building a bridge, having someone drive over, and seeing if it crashes. No person who did that should call himself an engineer. The "hope and pray" method isn't good enough.

      Software development is still a new field relative to fields with engineers, such as centuries old mechanical engineering or chemical engineering. It is too young for the majority to have the standards that engineers in other fields have to meet, everyone is still just trying to figure out what works. When formal verification becomes common, then there will really be justification for the title "software engineer". Until then, "developer" is really the only title that is deserved.

      • (Score: 3, Insightful) by TheLink on Saturday November 07 2015, @06:00PM

        by TheLink (332) on Saturday November 07 2015, @06:00PM (#260038) Journal

        It would be like building a bridge, having someone drive over, and seeing if it crashes. No person who did that should call himself an engineer. The "hope and pray" method isn't good enough.

        It probably would be done that way if building and testing a bridge is as cheap as building and testing software. In fact nowadays many things are actually done that way using simulation and models... Some even use "evolutionary design": https://en.wikipedia.org/wiki/Evolved_antenna [wikipedia.org]
        Which is like crashing stuff a LOT and picking what worked best and doing it over and over again. So how different is that really?

        Which comes to this: lots of people don't understand the real differences between Civil Engineering and Software "engineering" and thus why things are the way they are and why stuff fails. Many try to manage software projects the way Civil Engineering projects are managed using the assumptions that are only valid for Civil Engineering, or completely misunderstand what is what.

        Civil Engineering:
        Design Phase costs about 10% of Build Phase.
        Build Phase involves tons of construction workers and heavy machinery and a fair bit of time. Increasing the speed of the Build Phase involves adding more workers and machinery, which can sometimes cut the build time by weeks or months.
        The blueprints and plastic models are way cheaper to make than the Real Thing.
        It's easier to convince Management to spend a bit extra to get the design better (not saying they won't be unhappy or that nobody will be sacked), because the budget only allows for one big Build.

        Making Software:
        Design Phase costs more than 1000 times the Build Phase.
        Build Phase involves the programmer typing "make all" (or selecting "rebuild solution") and going to read Soylent News or fetch a coffee or do some sword fighting ( https://xkcd.com/303/ [xkcd.com] ). Increasing the speed of the Build Phase involves adding more GHz, cores, SSDs or computers, which can sometimes cut the build time by seconds, minutes or hours.
        The blueprints and "plastic models" cost as much to make as the Real Thing.
        Management often sells the blueprints/plastic models as v1.0 because they compile and "kinda run" and the budget only allows for one big Design... and the customers often buy it :).
        There's no Gravity- you can do lots of weird stuff and it won't obviously fall over. And just because it looks complex doesn't always mean it is the wrong way of doing things. Sometimes a large multinational company's business processes are really that weird and complex- salary, leave, approvals, taxes and laws (of different states and countries), unicode, RTL+East Asian language handling, time zones (including DST), etc. it's just they and others don't realize it's that weird and complex till experienced people start giving them edge scenarios and asking them questions on what should happen in those scenarios. And even if you're experienced you may not capture all the edge cases or you might wrongly assume the customer would "obviously" prefer an edge scenario to be handled some way and thus not ask them (you have to assume otherwise there would be too many questions, many of which they would answer wrongly anyway ;) )...

        So it should be no surprise that those plastic models regularly fail. Complaining that the plastic models fail and saying that's because "software engineering" is not engineering isn't going to improve things. Too many people stupidly/ignorantly think the Software Design Phase is like the Civil Engineering Build Phase and assuming that it is just as easy to speed things up a lot by simply adding more people and resources. Yes you might be able to speed things up by adding people BUT it's not as easy and you need to add the right people (and perhaps remove some people...).

        As for "proof of correctness" and formal verification. In theory these are great. In practice in most real-world cases they wouldn't help that much because there's still the huge problem of capturing and describing the requirements accurately. You could have something that works 100% as per the specifications and design but the specifications were wrong in the first place and there's no formal verification for that.

        And from what I see in many cases that's where the big problems are - the customer doesn't actually know what they want till you build something the way they insisted, despite your suggestions/recommendations and then they go, "Uh, the end users don't like it. How about we try 'changing things a bit'" and you go "but that means you want something that's more like a bridge instead of a tower". Or they go "That's exactly what we asked for, but after some tests we're going to stick to using Excel instead". Whereas the code deviating from the spec is often not too difficult to fix if your coders aren't complete idiots (e.g. they did understand the spec and wrote to the spec, they just made the equivalent of "typos").

        Secondly say you really used "formal verification" stuff. Your formal verification "coder" could still make the equivalent of typos or bigger bugs while converting the human specification into the "formal verification" specification. So you still will have bugs despite it saying "100% correct". After all in most cases the "compiled" code works 100% exactly as what the coder wrote in the source code. Except it's wrong :). So how much would you really gain from formal verification in practice?

        Can you give me "formal proof" or statistics showing that the average real world coder will make fewer mistakes when converting a complex real world spec into the formal verification specification? Or is the improvement in quality actually due to "selection bias" where only the higher quality talent does that formal verification sort of thing, and those higher end bunch would make about as few mistakes anyway even if they wrote it in Python instead of using formal verification methods.

        If you really want to prove that formal verification really works, try outsourcing the conversion of a few complex human specs to formal verification specifications and resulting programs to the cheapest bidder and the average cost bidder. Then compare the results with outsourcing of the conversion of those same human specs to programs written in Java or C# or some higher level programming language. Compare the time and $$$ taken to produce 95% and 100% conformance to the human specs as per your interpretation. If you get significantly better results with formal verification methods then I will believe formal verification really works. Otherwise it could be as I said - it just appears to work because you are using higher skilled people :).

        But be aware I have no related certifications in such stuff, nor much real world experience in such stuff either. I think I made some good and valid points though ;).

      • (Score: 2) by Absolutely.Geek on Sunday November 08 2015, @08:44AM

        by Absolutely.Geek (5328) on Sunday November 08 2015, @08:44AM (#260264)

        As a software engineer in the industrial sense; my code runs factories and it works reliably for years on end. I work with mechanical; electrial; chemical and process engineers every working day.

        The standard of engineering is that an engineer knows his design will work before implementing it.

        On the good jobs this is totally true; however on most jobs there is always the engineering triangle at work. GOOD - CHEAP - FAST pick any two. There are so many instances of management asking me to fix mechanical flaws in software (it is possible about 30% of the time) because they have rushed the job and not given the engineers time to actually fully test / model the job. Or the engineer in question is just shit and the design is bad. Plenty of electrical problems occur; which just get fixed and the drawing are changed (assuming there is budget) to match reality.

        I am by no means perfect but I have seen some funky shit in my time.

        --
        Don't trust the police or the government - Shihad: My mind's sedate.
      • (Score: 0) by Anonymous Coward on Sunday November 08 2015, @04:13PM

        by Anonymous Coward on Sunday November 08 2015, @04:13PM (#260379)

        Anyone who has to compile a program and run unit tests to see if it works isn't a software engineer. It would be like building a bridge, having someone drive over, and seeing if it crashes. No person who did that should call himself an engineer. The "hope and pray" method isn't good enough.

        How is the process of writing your code, hitting compile and then running unit tests any different from the process of designing your bridge in your engineering software and running a simulation to see if the bridge will hold up under various stresses? In both situations, we try to prevent problems before they crop up when it is too late.

        The main difference is that a bridge has very few moving parts, and all parts obey just a few well defined laws of physics, so the stresses and behavior of a bridge (or other physical constructions e.g. cars, planes, power plants) can be estimated rather accurately with numerical simulation as long as you have enough computing power. (either by hand or ironically by using convenient computer software packages)

        Software is different. It needs to obey all sorts of rules defined by humans, and humans are fallible. These rules may not make sense for historic reasons and may not even be internally consistent. And the guys who design/write the software are just supposed to somehow anticipate all these edge cases and handle them properly. Reasoning about all the possible states and execution flows becomes extremely difficult because the complexity rises exponentially with every feature added.

        In software we try to make our compilers smart enough to yell at us when our code does not make sense. Unfortunately compile-time checks cannot find run-time problems, so we also try to use other means of ensuring that our software works as expected. Unit tests and other tests are just one example of that. Assertions, Exceptions and logging are other ways to prevent errors or to handle them gracefully when they happen, to revert back to a proper state or at least prevent damage. Functional languages and domain specific languages are another attempt to formalize the development of correct software, but these are still rather experimental and academic, and can prove difficult to use for general purpose tasks. Proving the correctness of systems with software and hardware is theoretically plausible but practically impossible for all but the most trivial problems.

        Civil engineers made mistakes in the past resulting in bridges or buildings collapsing. I reckon they still make mistakes, but the effects are usually not disastrous, because that sector has reached a certain maturity.

        If people want to hold software engineers to the same standard as civil engineering, expecting all software systems to be correct, not just the most critical ones, then be prepared to pay the huge costs that implies. No sane individual or organization will ever pay that cost unless they are absolutely sure that they need to (e.g. medical, avionics, critical infrastructure etc.) and even then, such a formal approach severely limits the feature-set of such systems.

      • (Score: 0) by Anonymous Coward on Monday November 09 2015, @03:31PM

        by Anonymous Coward on Monday November 09 2015, @03:31PM (#260792)

        Yet, engineering mostly relies on convenient physical approximations instead of mathematical proofs.

    • (Score: 2) by gnuman on Sunday November 08 2015, @01:30AM

      by gnuman (5013) on Sunday November 08 2015, @01:30AM (#260188)

      That's "Computer Science". There are materials sciences too in physics, and those have nothing to do with engineering. Engineers use the tools that scientists create to build things - that's probably the best definition.

      In some cases the programmer might know if multiplication runs on a certain CPU in O(1) or O(n)

      I have a hunch that you are no software engineer!!

      I don't see how someone performing a task clearly matching the dictionary-definition of "engineering" can categorically not be allowed carry the job title "Engineer"

      In many jurisdictions, "engineer" is a title defined in law, not in dictionary. Kind of similar to Doctor.

  • (Score: 2, Informative) by Anonymous Coward on Saturday November 07 2015, @02:26PM

    by Anonymous Coward on Saturday November 07 2015, @02:26PM (#259960)
    I found out Dennis Ritchie [wikipedia.org], on his income-tax return, listed his occupation as ``programmer''. [Unfortunately, I can no longer find a reference for that tidbit.]
    • (Score: 1, Informative) by Anonymous Coward on Saturday November 07 2015, @04:52PM

      by Anonymous Coward on Saturday November 07 2015, @04:52PM (#260016)

      It was actually Ken Thompson [bell-labs.co] who said this in the introduction to Reflections on Reflecting Trust [cmu.edu], the famous 'compiler attack' paper.

      I am a programmer. On my 1040 form, that is what I put down as my occupation. As a programmer, I write programs. I would like to present to you the cutest program I ever wrote.

      • (Score: 0) by Anonymous Coward on Saturday November 07 2015, @04:54PM

        by Anonymous Coward on Saturday November 07 2015, @04:54PM (#260017)

        s/Reflecting/Trusting/

        I need to learn how to read!

  • (Score: 3, Insightful) by srobert on Saturday November 07 2015, @02:27PM

    by srobert (4803) on Saturday November 07 2015, @02:27PM (#259961)

    ... than just almost anybody else on this forum. I served an apprenticeship in the International Union of Operating Engineers where I was a stationary engineer, i.e. a jack of all trades boiler operator, plumber, electrician, HVAC technician, welder, etc. I had certifications for most of this. After a four year apprenticeship, I served about 12 years as a journeyman. While I was a journeyman stationary engineer, I returned to college and got a BS in mechanical engineering. Subsequently, I worked as a civil engineer and have held a PE in Civil Engineering. I'm not a programmer so I have no idea how appropriate it is for programmers to call themselves engineers. Neither do you.

    • (Score: 1, Insightful) by Anonymous Coward on Saturday November 07 2015, @07:04PM

      by Anonymous Coward on Saturday November 07 2015, @07:04PM (#260059)

      What is your point. Personal gloating, an admission of ignorance, then accusing other people of ignorance. Are you sure you got your degree from an accredited institution? I'd expect any worthwhile school to teach analysis and applying critical thinking to rhetoric, yet your post has neither.

    • (Score: 0) by Anonymous Coward on Saturday November 07 2015, @08:28PM

      by Anonymous Coward on Saturday November 07 2015, @08:28PM (#260099)

      Well, I'm a Ph.-fucking-D. physicist, and you "engineers" are a bunch of poser calculator monkeys.

    • (Score: 2, Informative) by Anonymous Coward on Saturday November 07 2015, @08:32PM

      by Anonymous Coward on Saturday November 07 2015, @08:32PM (#260103)

      >Neither do you.

      Ah... no, I do.

      I was a professional engineer who switched to software development. I know what real engineering is and I know what kind of crap is produced by most programmers. There is no comparison, no matter what most programmers seem to think.

      Software development is not engineering in today's world. Software development, by analogy, is about where civil engineering was when they built the pyramids. It was amazing what they could do with brute force, but it pales compared to what real engineers can do today.

  • (Score: 3, Interesting) by VLM on Saturday November 07 2015, @02:38PM

    by VLM (445) on Saturday November 07 2015, @02:38PM (#259966)

    You're an hourly laborer, but we've decided to salary you to get 50 hours a week of work for 40 hours of pay, so the least prestigious job title the state dept o labor will tolerate salary work is "engineer" So now you are an engineer. That was my exact experience about 25 years ago.

    Ironically I have enough EE and control theory to now be a genuine engineer, and I work with spectrum analyzers and signal gens and all that kind of crap, so I really am an engineer. I'd do the PE test and make it official but on the job "real" engineers don't use the math they test unless you work in a weird corner of the field.

  • (Score: 0) by Anonymous Coward on Saturday November 07 2015, @03:07PM

    by Anonymous Coward on Saturday November 07 2015, @03:07PM (#259974)

    It's in the job title in all the ads on any job board.

    Practice takes theory into account, and then turns and says "Now fuck off" when it gets in the way of getting stuff done.

  • (Score: 5, Insightful) by BK on Saturday November 07 2015, @03:33PM

    by BK (4868) on Saturday November 07 2015, @03:33PM (#259989)

    Hey guys who passed math in high school, don't call yourself engineers. Every five-year-old knows the real engineers are the guys that the drive train. Just because you wish you had a cool job is no excuse for giving guys with a real job a bad name.

    --
    ...but you HAVE heard of me.
    • (Score: 0) by Anonymous Coward on Saturday November 07 2015, @06:40PM

      by Anonymous Coward on Saturday November 07 2015, @06:40PM (#260045)

      What if I am allowed to blow the train whistle?, but still don't get to invite comely passengers to check out the kaboose?

    • (Score: 0) by Anonymous Coward on Monday November 09 2015, @02:00AM

      by Anonymous Coward on Monday November 09 2015, @02:00AM (#260614)

      How about splitting into two groups?

      a. If you work on simulations of physical systems then you are a software engineer. You build tools that are used by other engineers as part of a larger design process. In due time this might have a professional certification.

      b. If you work on business logic and just about everything else, you are a programmer.

      I run a small engineering consultancy, we make custom engineering/analysis software tools. I've tried to use good programmers several times, but they require much too much direction to be cost effective. Now I hire engineers that also happen to be able to program. If my company was larger I'd probably keep one good programmer around to help solve all the niggling interface issues that require specialist knowledge of computers, operating systems, compilers, etc.

  • (Score: 2) by zugedneb on Saturday November 07 2015, @06:41PM

    by zugedneb (4556) on Saturday November 07 2015, @06:41PM (#260046)

    A classical engineer, when he comes up with an idea, can easily do a sanity check on himself by: making simulation, reading up on the materials he will use, using various methods to test his mathematical model and than maybe constructing a more accurate mathematical model...

    A programmer can not do a sanity check on the idea, for the following reasons:
    * mathematics of programming, discrete structures and complexity theory are seriously difficult
    ** thus, most programmers don't know math their field is embedded in...

    * programmers probably use the linguistic part of the brain to come up with ideas, so you have this situation:
    BRAIN: bro, here is the solution
    YOU: brain, is the solution you came up with correct?
    BRAIN: HELL YEAH!!11!! (while using the exact same circuit to evaluate, that came up with the solution)

    * programmers have no safety net against mental issues...
    Classical engineers have the luxury of simulations and measuring instruments, so certain mental problems never arise...
    Programmers have not this luxury, so things get ugly.
    You know _exactly_ what I mean...

    So, no, programmers are not engineers.

    --
    old saying: "a troll is a window into the soul of humanity" + also: https://en.wikipedia.org/wiki/Operation_Ajax
    • (Score: 0) by Anonymous Coward on Saturday November 07 2015, @07:06PM

      by Anonymous Coward on Saturday November 07 2015, @07:06PM (#260063)

      It's called a unit test.

      • (Score: 0) by Anonymous Coward on Saturday November 07 2015, @08:38PM

        by Anonymous Coward on Saturday November 07 2015, @08:38PM (#260108)

        You didn't understand anything the previous poster wrote.

        Unit test is not a sanity check, it's a test of the product. A sanity check confirms the design, not the product. It verifies the intended result _before_ you shell out lots of time and money on building anything. Engineers still do testing _after_ the design is implemented.

  • (Score: 2) by Geotti on Saturday November 07 2015, @06:59PM

    by Geotti (1146) on Saturday November 07 2015, @06:59PM (#260055) Journal

    "the industry manages to agree on standards of quality and accountability"
    They often loose their job or pay a huge fine, if they don't deliver the right blueprint for the code mo^Hechanics to implement.

  • (Score: 0) by Anonymous Coward on Saturday November 07 2015, @08:30PM

    by Anonymous Coward on Saturday November 07 2015, @08:30PM (#260102)

    Physicians stop calling yourselves "doctors",

    and chiropractors stop calling yourself either,

    and statisticians stop calling yourselves mathematicians