• Visitors can check out the Forum FAQ by clicking this link. You have to register before you can post: click the REGISTER link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below. View our Forum Privacy Policy.
  • Want to receive the latest contracting news and advice straight to your inbox? Sign up to the ContractorUK newsletter here. Every sign up will also be entered into a draw to WIN £100 Amazon vouchers!

Course in Software Engineering

Collapse
X
  •  
  • Filter
  • Time
  • Show
Clear All
new posts

    #61
    It was the great egg race that made me want to study engineering, sad that that kind of program is not on now.

    Comment


      #62
      Originally posted by SpontaneousOrder View Post
      No... that's not how it works at all. That's what people who don't understand TDD do, before they then exclaim to the world that TDD doesn't work.

      The fact that you say "thats the whole point of it" tell me right away that you don't have a clue. That's what unit tests that we've been writing for ages are for. TDD doesn't mean "you write unit tests for your code".
      TTD does not give you better code, it just tells you your code you write works in the way you write it.

      Comment


        #63
        Originally posted by SpontaneousOrder View Post
        No... that's not how it works at all. That's what people who don't understand TDD do, before they then exclaim to the world that TDD doesn't work.

        The fact that you say "thats the whole point of it" tell me right away that you don't have a clue. That's what unit tests that we've been writing for ages are for. TDD doesn't mean "you write unit tests for your code".
        Deming is the godfather of quality in Engineering and so much of what he writes only underlines the futility of TDD.

        You have admitted that Software had a long way to go to reaching an Engineering status yet dismiss what he says.

        You see the contradiction in your statements?

        Deming should be considered one of the greatest Engineers of our time, possibly above Ford, below the Wright brothers for sure. But because he worked for the Japanese he never gets a mention.

        Comment


          #64
          Originally posted by SpontaneousOrder View Post

          TDD is considered the defacto standard for professional developers now, in most programming domains, by pretty much anyone considered 'expert' in the subject.

          10 years ago, probably less than 1% of developers did TDD.

          I would expect that today less than 1% of software related degree course teach TDD.

          That's a seismic shift if the approach to 'good' design process at a low level, and the same shift has occurred significantly at higher levels too.
          I don't think this is true, many of the programmers I come across rarely use TDD or don't use it 100% (or anywhere near that). I want to like TDD I really do, but I just don't think it's that necessary. I use the TDD tools occasionally as a test harness, though I often just write a test harness depending on what I'm doing. If I'm designing a complex bit of code I will just make a note of the steps as comments.

          If I had to recommend TDD to a developer, I really could not convincingly say why they should take the effort. It's the same reason I stopped using full on ORM (EF etc) I could not explain adequately to a developer why they should use it.

          Oh and software development is not engineering.

          Comment


            #65
            I always laugh when I see TDD as I can't believe people are still talking about Top Down Design.

            TDD (i.e. Test Driven Development) is just another example of taking a good principle and distorting it beyond all common sense. Yes having unit tests is a good thing for some cases, but it isn't necessary or useful for everything.

            And yes, software engineering is engineering.
            Will work inside IR35. Or for food.

            Comment


              #66
              ....

              Originally posted by VectraMan View Post
              I always laugh when I see TDD as I can't believe people are still talking about Top Down Design.

              TDD (i.e. Test Driven Development) is just another example of taking a good principle and distorting it beyond all common sense. Yes having unit tests is a good thing for some cases, but it isn't necessary or useful for everything.

              And yes, software engineering is engineering.
              As the BCS is a licensed member institution of the Engineering Council, I guess software engineering is widely enough accepted as engineering for it to be true I still prefer software development though.

              Amazing how such a discipline would allow people to develop and test their own work though. Akin to marking your own spellings in primary school or selecting your own questions for your degree examinations. It's about time there was SOX for Software, really.

              Comment


                #67
                Originally posted by VectraMan View Post
                And yes, software engineering is engineering.
                Is it though, really is it?

                Comment


                  #68
                  Test Driven Development

                  Just to clear up some confusion, TDD is a specific technique used by some developers whereby they start a piece of work by writing a bunch of tests. These tests are supposed to define the contract that the soon-to-be-written code will offer. These are not unit tests- they are more like automated functional tests. The tests all fail at first , because there is no code at the start. As the implementation progresses, the tests start to pass. Code is complete when all tests pass. That is TDD- starting the implementation with defining the set of tests that must pass for the agreed requirements to have been implemented.

                  This is much different to the common practice of writing bunches of unit tests as you write code- which as Minestrone points out - merely validates your implementation is working - it doesn't validate that you implemented the right thing. It is much lower level.

                  Comment


                    #69
                    Originally posted by woohoo View Post
                    Is it though, really is it?
                    Yes.
                    Will work inside IR35. Or for food.

                    Comment


                      #70
                      Originally posted by VectraMan View Post
                      I always laugh when I see TDD as I can't believe people are still talking about Top Down Design.

                      TDD (i.e. Test Driven Development) is just another example of taking a good principle and distorting it beyond all common sense. Yes having unit tests is a good thing for some cases, but it isn't necessary or useful for everything.

                      And yes, software engineering is engineering.
                      tdd is NOT about testing! Sheesh.

                      Comment

                      Working...
                      X