Looking Back

  • Comments posted to this topic are about the item Looking Back

  • In my day it was all fields round here etc etc ...

    I definitely would not want to go back to learning techniques from paper magazines that circulate that's for sure.

    While we do often have too trust the magic you do find that unless your careful getting someone else's project and trying to edit it still just doesn't work. That's where the real understanding is needed, to make stuff that reliably translates from system to system.

  • 'The one thing I do wish was in all languages is a standard way of handling data types and comparing them.'

    I wish the standard was to look like Algol 60, but can't imagine I'll get may backers for that.
    (R looks a bit like Algol though.)

  • Wait till you have to add === into the mix 😉

  • Well, I don't have 40 years... but I certainly agree with many of these points. Particularly those about documentation (or more accurately, the total lack of it) and error handling.

    I appreciate how a lot of developers don't like writing or updating documentation, I have to admit that I am one of these because documentation takes me longer to do than other steps in the development process because I can never quite get it good enough, in my view, first time and therefore have to keep tinkering with it which wastes time. On the other hand, I fully understand the value and importance of good documentation and the lack of it in many projects wastes a considerable amount of time (money) and often introduces bugs through unintended consequences. My particular ire is reserved for developers whose response to "where is the documentation?" is "read the source code" or those who are under the ridiculous impression that videos of a developer droning on about functions and point and clicking to demonstrate their use is in any way documentation - it's rarely even useful training.

    As for error handling: religious wars and arguments about the use of the comic sans typeface are right up there with error handling compared to exception handling. While my preference is that expected errors should be handled cleanly and neatly and everything else is, well, an exception, it really doesn't matter as long as it's documented well enough. This ties right in back to the point about the (lack of) documentation.

  • As Tony Hoare said :
    "...The view that documentation is something that is added to a program after it has been commissioned seems to be wrong in principle and counterproductive in practice. Instead,documentation must be regarded as an integral part of the process of design and coding. ..."

  • paul s-306273 - Friday, July 21, 2017 4:54 AM

    As Tony Hoare said :
    "...The view that documentation is something that is added to a program after it has been commissioned seems to be wrong in principle and counterproductive in practice. Instead,documentation must be regarded as an integral part of the process of design and coding. ..."

    Exactly 🙂

  • Lots of interesting points in the article. Case sensitive variable names are one of my pet hates.  I've never seen a persuasive case that there is any advantage to being able to have distinct variables UserName, username, and Username ; but it introduces lots of potential errors and confusion.

  • archie flockhart - Friday, July 21, 2017 5:28 AM

    Lots of interesting points in the article. Case sensitive variable names are one of my pet hates.  I've never seen a persuasive case that there is any advantage to being able to have distinct variables UserName, username, and Username ; but it introduces lots of potential errors and confusion.

    Case sensitivity does more good than harm
    Consider a string type vs a String type in C# for example
    Case is an indication of scope (if you choose it to be), and case sensitive variable names improve code readability
    Compiler has less work to do if case sensitivity is enforced

  • funbi - Friday, July 21, 2017 5:43 AM

    archie flockhart - Friday, July 21, 2017 5:28 AM

    Lots of interesting points in the article. Case sensitive variable names are one of my pet hates.  I've never seen a persuasive case that there is any advantage to being able to have distinct variables UserName, username, and Username ; but it introduces lots of potential errors and confusion.

    Case sensitivity does more good than harm
    Consider a string type vs a String type in C# for example
    Case is an indication of scope (if you choose it to be), and case sensitive variable names improve code readability
    Compiler has less work to do if case sensitivity is enforced

    Nothing stops you from using upper and lower case for readability , even if the language treats both of them the same.

  • funbi - Friday, July 21, 2017 4:32 AM

    Wait till you have to add === into the mix 😉

    Have you been using that nasty JavaScript? And there is also !==

    The lack of any standards in programming languages is an irritation; having to switch between C and Python ( can catch myself out. Whilst I try and make my code legible by layout, meaningful identifiers and sometimes extra brackets for clarity I often find myself debugging others "horrible" code!

  • I agree with the original article writer on many issues, mainly because I've got 35 years of computer use under my belt. (That explains my waist line!)

    1. DEC documentation and systems were awesome. I was able to do things in DCL and the DEC programming languages that still amaze me. Our clusters never went down except for rare maintenance.  I barely have time to code, write test and document now days.
    2. The explosion of languages while fun, is sucky and non-productive to a certain degree. SQL hasn't changed too much.
    3. The amount of different language you need to deal with for some web stacks is insane. HTML and JavaScript still are poor substitutes for real application frameworks.
    4.  The CLI rules. GUIs are nice, but I'd rather write ETL programs in pure code  instead of dealing with SSIS and stupid quirks and XML
    5. Side thought: We really need a good secure system programming language to replace C/C++
    6. I'd like to limit the number of systems and languages in my hobby, (radio),  when I retire, but it's almost as bad as the commercial software world.  
  • funbi - Friday, July 21, 2017 4:32 AM

    Wait till you have to add === into the mix 😉

    And there's always := and =>

    😛

  • Regarding the observation that the pace or quality of documentation often doesn't keep up with the pace of software development, one factor is that documentation is often left up to someone who is not really a system analyst or technical writer by profession. It's just someone from the business or maybe QA who gets assigned the task because there is noone else to do it. It's a one-time event; probably the first and last time they'll ever write up a requirements document or system documentation.

    "Do not seek to follow in the footsteps of the wise. Instead, seek what they sought." - Matsuo Basho

  • From the article:


    One of the things I do lament is the declining quality of documentation.

    Not only documentation but I also lament the serious decline in the quality of code (never enough time to do it right but always enough time to patch it... again, and again, and again), the lack of intuitive interfaces, the ever increasing number of clicks (especially in MS Office products) that it takes to get to the same lame menus as before, the deprecation/discontinuation of features because some out of touch committee made the decision to do so, the release of partial features such as what they originally did with ROW_NUMBER() etc, the current sorry condition of PIVOT and SPLIT_STRING() (for example) and FORMAT, extremely short-sighted implementations such as DATETIME2, DATE, and TIME (doesn't meet the ANSI standard of @EndDate-@StartDate=Duration, like DATETIME always has), the lack of response by the same out of touch committee that has not seen the benefit of providing a Tally-Table-Like-Function for more than a decade now, and the ridiculous notions that things like SSMS and BOL should be treated like separate products.

    And then there are certain forums that used to work beautifully that get updated and functionality and quality died on the vine and some committee made the conscious decision to not support things like Internet Explorer but also didn't make things work for other browsers like they used to. 😉

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.

    Change is inevitable... Change for the better is not.


    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)

Viewing 15 posts - 1 through 15 (of 78 total)

You must be logged in to reply to this topic. Login to reply