Advertisement
If you have a new account but are having problems posting or verifying your account, please email us on hello@boards.ie for help. Thanks :)
Hello all! Please ensure that you are posting a new thread or question in the appropriate forum. The Feedback forum is overwhelmed with questions that are having to be moved elsewhere. If you need help to verify your account contact hello@boards.ie
Hi all! We have been experiencing an issue on site where threads have been missing the latest postings. The platform host Vanilla are working on this issue. A workaround that has been used by some is to navigate back from 1 to 10+ pages to re-sync the thread and this will then show the latest posts. Thanks, Mike.
Hi there,
There is an issue with role permissions that is being worked on at the moment.
If you are having trouble with access or permissions on regional forums please post here to get access: https://www.boards.ie/discussion/2058365403/you-do-not-have-permission-for-that#latest

Coding Horror

11617182022

Comments

  • Registered Users, Registered Users 2 Posts: 5,574 ✭✭✭Slutmonkey57b


    It is a quote from the Minister of Education talking to the press. So are you saying that she is wrong about the whole thing?

    A politician would never lie.


  • Registered Users, Registered Users 2 Posts: 1,748 ✭✭✭ShatterProof


    A politician would never lie.

    100% of the time


  • Closed Accounts Posts: 22,648 ✭✭✭✭beauf


    The politics of it don't interest me.

    I'm just curious about it from a development point of view, and how they deal with situation.

    Besides which, there are no bugs, just undocumented features.


  • Registered Users, Registered Users 2 Posts: 4,325 ✭✭✭iLikeWaffles


    beauf wrote: »
    I never said she was wrong ; )

    It was a question not a statement!


  • Registered Users, Registered Users 2 Posts: 27,251 ✭✭✭✭GreeBo


    Wombatman wrote: »
    On the contrary this is a very easy case for testing as it is numbers based solution and isn't complicated by the vagaries of user behavior.

    The calculations could have absolutely been done on paper to validate for a sample control set of individual students.

    It's only numbers based if the requirements provide all the input scenarios and all the expected results.

    The problem here is that the system itself is the thing providing expected results so only a code review could find the issue.


  • Registered Users, Registered Users 2 Posts: 3,337 ✭✭✭Wombatman


    Must be riddled with bugs.......
    The third error discovered in this latest review had to do with the incorrect treatment of Junior Certificate results belonging to students who were missing one of the three core subjects of Irish, English, and Maths. The company contracted to carry out this latest review Educational Training Systems corrected this newly discovered mistake during the review process.

    ETS also found a fourth "issue" which "does not exactly match what is described". However the Department was reluctant to call this an error. It said it was an anomaly which had not impacted on students' results.

    https://www.rte.ie/news/education/2020/1003/1169207-leaving-cert-calculated-grades/


  • Closed Accounts Posts: 22,648 ✭✭✭✭beauf


    Its the nature of software development to have bugs. Nothing remarkable about that.


  • Registered Users, Registered Users 2 Posts: 4,325 ✭✭✭iLikeWaffles


    beauf wrote: »
    Its the nature of software development to have bugs. Nothing remarkable about that.

    It's the nature of software developers to find bugs.


  • Registered Users, Registered Users 2 Posts: 4,620 ✭✭✭Treppen


    I heard that they are going to publish the code!

    Does anyone know how the JC results exactly impacted on the LC results. All I could find is this.
    The model was designed to take the Junior Cycle results of a group of students and use that group’s results to inform the calculation of their Leaving Certificate Results. It bears re-stating; the system did not take the results of a single student’s Junior Cycle exams and apply it to that specific student’s Leaving Certificate. Rather, the system looked at performance at an aggregate class level in the Junior Cycle examinations, and applied that in calculating students’ Leaving Certificate Results.
    https://www.gov.ie/en/press-release/bc698-statement-from-the-minister-for-education-norma-foley-td-and-the-department-of-education-and-skills-regarding-leaving-certificate-2020-calculated-grades-process/


  • Advertisement
  • Closed Accounts Posts: 22,648 ✭✭✭✭beauf


    It's the nature of software developers to find bugs.

    I though that was live testers (users) :D


  • Registered Users, Registered Users 2 Posts: 7,086 ✭✭✭The Continental Op


    I've just found an interesting bug in APCs PowerChute Personal Edition software. I thought something was desperately going wrong until I did a reboot and the error went away.

    I should have taken screen shots but according to PowerChute Personal Edition my input (mains) voltage was varying between 230 Volts and roughly 197000000 Volts.

    Oh well what do I expect of free software.

    Wake me up when it's all over.



  • Closed Accounts Posts: 22,648 ✭✭✭✭beauf


    That dept info could be interpreted in a number of ways, one could be it chooses a different calculation (unlikely), the other could it changes some value that the calculation uses.

    Imagine you were in a bad class for JC but did well and got moved up to better classes for LC.


  • Registered Users, Registered Users 2 Posts: 5,574 ✭✭✭Slutmonkey57b


    That doesn't make any sense to normalise results on an aggregate basis. The whole point of individual achievement is its particular to the individual


  • Banned (with Prison Access) Posts: 3,315 ✭✭✭nthclare


    My son's started studying coding, bless him his dad's a horticulturist.
    Although my brother is a coding guy, and it's tough going he says


  • Closed Accounts Posts: 22,648 ✭✭✭✭beauf


    That doesn't make any sense to normalise results on an aggregate basis. The whole point of individual achievement is its particular to the individual

    Seems odd doesn't it.


  • Advertisement
  • Registered Users, Registered Users 2 Posts: 14,714 ✭✭✭✭Earthhorse


    Especially considering the make up of a class can change over time. In fact the end of Junior Cycle I would say is when most transfers take place between schools. But if there’s a correlation maybe it’s right for them to include it in the algorithm? Don’t really know enough about the area to say.


  • Registered Users, Registered Users 2 Posts: 4,620 ✭✭✭Treppen


    That doesn't make any sense to normalise results on an aggregate basis. The whole point of individual achievement is its particular to the individual

    Ya it's all a bit odd. Considering you could have maybe 140 students in some schools, all doing various combinations of 10+ subjects in JC then moving to various 7 subjects in the LC (with dropouts, moves to other schools, exemptions in Irish.. Often those subjects had little connection to JC. E.g. JC science to LC physics or applied maths.

    And then on top of that say that the error only impacted on one LC subject!

    Anyway, code is going to be released apparently.


  • Registered Users, Registered Users 2 Posts: 3,337 ✭✭✭Wombatman


    Awarding lower grades than should have been given only half the problem.
    Almost 8,000 Leaving Cert grades issued this year were higher than they should have been due to coding errors in the calculated grades process, according to new figures.

    In addition to Saturday’s announcement that 6,100 students received lower grades than they should have, the Department of Education confirmed on Sunday evening that about 7,943 grades were higher than they were supposed to be.

    While lower grades will be corrected upwards, higher grades awarded in error will not be corrected.


  • Moderators, Recreation & Hobbies Moderators, Science, Health & Environment Moderators, Technology & Internet Moderators Posts: 92,450 Mod ✭✭✭✭Capt'n Midnight


    https://www.theguardian.com/politics/2020/oct/05/how-excel-may-have-caused-loss-of-16000-covid-tests-in-england
    In this case, the Guardian understands, one lab had sent its daily test report to PHE in the form of a CSV file – the simplest possible database format, just a list of values separated by commas. That report was then loaded into Microsoft Excel, and the new tests at the bottom were added to the main database.


  • Registered Users, Registered Users 2 Posts: 6,236 ✭✭✭Idleater



    I saw a tweet about that yesterday, the "fix" was to start using multiple spreadsheets.


  • Advertisement
  • Posts: 5,917 ✭✭✭ [Deleted User]


    Wombatman wrote: »
    Awarding lower grades than should have been given only half the problem.



    While lower grades will be corrected upwards, higher grades awarded in error will not be corrected.

    Bit harder to do given that those that received them have most likely already started their college courses?


  • Registered Users, Registered Users 2 Posts: 1,029 ✭✭✭John_C


    I found an entertaining bug today. It's a function to take in a duration in seconds and return a text string for display.
    For example getDisplayDuration(123) should return 02m 03s and getDisplayDuration(3723) should return 01h 02m 03s.
    Instead of working out the mathematics, the function converts the duration into a Date object, i.e. what time was it this number of seconds past midnight on 1st January 1970.
    It then reads the hours, minutes and seconds from that object.
    The end result is that (assuming you live in Ireland) the function produces the correct output during winter time but is off by an hour during daylight savings time.

    function getDisplayDuration(duration) {
      if (duration >= 60 * 60) {
        var d = new Date(duration * 1000);
        return (
          addZero(d.getHours()) +
          "h " +
          addZero(d.getMinutes()) +
          "m " +
          addZero(d.getSeconds()) +
          "s"
        );
      } else {
        var d = new Date(duration * 1000);
        return addZero(d.getMinutes()) + "m " + addZero(d.getSeconds()) + "s";
      }
      function addZero(i) {
        if (i < 10) {
          i = "0" + i;
        }
        return i;
      }
    }
    


  • Posts: 0 [Deleted User]


    John_C wrote: »
    I found an entertaining bug today. It's a function to take in a duration in seconds and return a text string for display.
    For example getDisplayDuration(123) should return 02m 03s and getDisplayDuration(3723) should return 01h 02m 03s.
    Instead of working out the mathematics, the function converts the duration into a Date object, i.e. what time was it this number of seconds past midnight on 1st January 1970.
    It then reads the hours, minutes and seconds from that object.
    The end result is that (assuming you live in Ireland) the function produces the correct output during winter time but is off by an hour during daylight savings time.

    Reminds me of this...

    Me04jVB.jpg


  • Registered Users, Registered Users 2 Posts: 6,236 ✭✭✭Idleater


    John_C wrote: »
    The end result is that (assuming you live in Ireland) the function produces the correct output during winter time but is off by an hour during daylight savings time.

    I've seen a publishing schedule done by time of day, but specified by an arbitrary date. Basically "11:30 daily", but specified as "11:30 22 October 1950 ET".

    I don't recall the specifics, but the rigmarole to calculate "today" based on where the user is (say GMT, or more fun, Asia) :mad:


  • Registered Users, Registered Users 2 Posts: 3,337 ✭✭✭Wombatman


    From the kind of developers that brought you 'We fooked up importing the German test results" and "We made a balls of the leaving cert standardisation process"..........

    https://arstechnica.com/tech-policy/2020/10/excel-glitch-may-have-caused-uk-to-underreport-covid-19-cases-by-15841/


  • Registered Users, Registered Users 2 Posts: 2,150 ✭✭✭dazberry


    Idleater wrote: »
    I've seen a publishing schedule done by time of day, but specified by an arbitrary date. Basically "11:30 daily", but specified as "11:30 22 October 1950 ET".

    This reminds me of a place I worked where the empty/null/not supplied date for a customer dob was some arbitrary date in 1966. Caused a problem a few times :D


  • Moderators, Recreation & Hobbies Moderators, Science, Health & Environment Moderators, Technology & Internet Moderators Posts: 92,450 Mod ✭✭✭✭Capt'n Midnight


    dazberry wrote: »
    This reminds me of a place I worked where the empty/null/not supplied date for a customer dob was some arbitrary date in 1966. Caused a problem a few times :D
    In the US a few lifers were released on the 9th of September back in 1999


  • Registered Users, Registered Users 2 Posts: 5,574 ✭✭✭Slutmonkey57b


    Wombatman wrote: »
    From the kind of developers that brought you 'We fooked up importing the German test results" and "We made a balls of the leaving cert standardisation process"..........

    https://arstechnica.com/tech-policy/2020/10/excel-glitch-may-have-caused-uk-to-underreport-covid-19-cases-by-15841/

    Over a million rows in excel. I bet they went off and made dinner waiting for the thing to open.


  • Moderators, Politics Moderators Posts: 40,287 Mod ✭✭✭✭Seth Brundle


    Over a million rows in excel. I bet they went off and made dinner waiting for the thing to open.
    You're assuming that they're using the newer Excel formats availabel in Excel 2007 onwards.
    It wouldn't surprise me to see them using the *.xls format which is limited to 65536 rows.


  • Registered Users, Registered Users 2 Posts: 14,714 ✭✭✭✭Earthhorse


    That's what the issue was according to the article.


  • Advertisement
  • Registered Users Posts: 5 sqlmonkey


    ah yes - the old Excel Max Rows gotcha!


  • Moderators, Politics Moderators Posts: 40,287 Mod ✭✭✭✭Seth Brundle


    sqlmonkey wrote: »
    ah yes - the old Excel Max Rows gotcha!
    If you're familiar with Excel macros then it's a basic check. Surprised it happened but then again, if they were using Excel instead of an actual database (even MS Access) then they deserve all the criticism they get!


  • Registered Users, Registered Users 2 Posts: 6,260 ✭✭✭Buford T Justice


    Access is (was) limited at 50MB


  • Moderators, Politics Moderators Posts: 40,287 Mod ✭✭✭✭Seth Brundle


    Access is (was) limited at 50MB
    I'm fairly sure that the max size for an Access 97 database is 1GB. Access 2000 onwards is 2GB.
    I can recall seeing desktop applications using Access macros which were several hundred megs.
    I'm not saying it's perfect but it's not limited to 50Mb


  • Closed Accounts Posts: 22,648 ✭✭✭✭beauf


    I used to have run a Job that maxed out an access database. I think it was 2GB. Every month had to compact it, which would free up some space which would allow me to run the job. Took two weeks to run, and if it failed, I barely had enough time to rerun it before month end. They wouldn't let me rewrite it or port to SQL. Through lateral thinking I eventually got it to run in 24hrs.

    Usually when they get that big you throw the data into SQL and keep the front end in Access via linked tables. Because there's usually a mountain if VBA connected to it, you don't want to touch.


  • Moderators, Recreation & Hobbies Moderators, Science, Health & Environment Moderators, Technology & Internet Moderators Posts: 92,450 Mod ✭✭✭✭Capt'n Midnight


    beauf wrote: »
    Because there's usually a mountain if VBA connected to it, you don't want to touch.
    *shudders*

    Printout worked on a 386 but not on the 486 that replaced it :confused:

    There was a delay loop in the code. I increased the counter and left notes.


  • Registered Users, Registered Users 2 Posts: 2,150 ✭✭✭dazberry


    *shudders*

    Printout worked on a 386 but not on the 486 that replaced it :confused:

    There was a delay loop in the code. I increased the counter and left notes.

    Reminds me of the Turbo/Borland Pascal CRT unit timing bug.


  • Registered Users, Registered Users 2 Posts: 6,441 ✭✭✭jhegarty


    I'm fairly sure that the max size for an Access 97 database is 1GB. Access 2000 onwards is 2GB.
    I can recall seeing desktop applications using Access macros which were several hundred megs.
    I'm not saying it's perfect but it's not limited to 50Mb

    I seem to remember the free local only version of SQL Server was limited to 50mb. That might be what the poster is thinking of.


  • Posts: 0 [Deleted User]


    beauf wrote: »
    Through lateral thinking I eventually got it to run in 24hrs.

    You can't just leave us hanging. :pac:

    What did you do?


  • Advertisement
  • Closed Accounts Posts: 22,648 ✭✭✭✭beauf


    You can't just leave us hanging. :pac:

    What did you do?

    The simplistic answer is I split the data into to smaller chunks, ran it on multiple PCs concurrently then re-joined it together at the end But I got it down from about 2wks to about 3~4 days doing this. But it was still a PITA. Eventually I lost the use of the extra machines. So I replaced them all with a single overlocked early i3 @4ghz which chewed through it in about 24 hours. Access being single threaded ran much faster on high clock speeds than on our dual CPU Xeons of the day.

    In another place I saw a similar solution. Big bloated Oracle system, ran like a dog. One of the customers got fed up waiting for developers to optimize it. Bought some crazy sever with like 16+ cpu's (a lot at that time), and it ran perfectly on that.


  • Registered Users, Registered Users 2 Posts: 3,337 ✭✭✭Wombatman


    531460.jpg


  • Moderators, Education Moderators, Technology & Internet Moderators Posts: 35,100 Mod ✭✭✭✭AlmightyCushion


    Infinite loop. Rookie mistake.


  • Registered Users, Registered Users 2 Posts: 1,291 ✭✭✭meep


    Infinite loop. Rookie mistake.

    GetTested() will have HCF if it fails.


  • Registered Users, Registered Users 2 Posts: 241 ✭✭fcrossen


    var is never reassigned - use const instead.


  • Registered Users, Registered Users 2 Posts: 4,325 ✭✭✭iLikeWaffles


    fcrossen wrote: »
    var is never reassigned - use const instead.

    What so have a load of dead people getting tested, wearing masks, 6 feet apart and washing hands?! :D


  • Advertisement
  • Moderators, Politics Moderators Posts: 40,287 Mod ✭✭✭✭Seth Brundle


    fcrossen wrote: »
    var is never reassigned - use const instead.
    What so have a load of dead people getting tested, wearing masks, 6 feet apart and washing hands?! :D
    Surely those who don't wear masks, don't keep 6 feet apart or don't wash hands are the const?
    :D


  • Registered Users, Registered Users 2 Posts: 4,325 ✭✭✭iLikeWaffles


    Would not be able to change a const which is true to false!

    var dead = !still_alive; &#55358;&#56614;*♀️


  • Registered Users Posts: 402 ✭✭spaceCreated


    Checks this thread... still don't see any of my code... relax


  • Registered Users, Registered Users 2 Posts: 4,325 ✭✭✭iLikeWaffles


    Checks this thread... still don't see any of my code... relax

    You need to post it first :pac:


  • Moderators, Music Moderators Posts: 2,159 Mod ✭✭✭✭Oink


    Infinite loop. Rookie mistake.


    I got my very first infinite loop in JavaScript last week.
    I let it run for a bit to enjoy the moment.


  • Advertisement
Advertisement