• Warning - Serious 'sudo' Flaw Compromises Security

    From c186282@c186282@nnada.net to comp.os.linux.misc on Fri Oct 10 01:30:27 2025
    From Newsgroup: comp.os.linux.misc

    https://www.bleepingcomputer.com/news/security/cisa-warns-of-critical-linux-sudo-flaw-exploited-in-attacks/

    Hackers are actively exploiting a critical vulnerability
    (CVE-2025-32463) in the sudo package that enables the
    execution of commands with root-level privileges on Linux
    operating systems.

    The U.S. Cybersecurity and Infrastructure Security Agency
    (CISA) has added this vulnerability to its Known
    Exploited Vulnerabilities (KEV) catalog, describing it
    as rCLan inclusion of functionality from untrusted control
    sphere.rCY

    CISA has given federal agencies until October 20 to apply
    the official mitigations or discontinue the use of sudo.

    A local attacker can exploit this flaw to escalate privileges
    by using the -R (--chroot) option, even if they are not included
    in the sudoers list, a configuration file that specifies which
    users or groups are authorized to execute commands with
    elevated permissions.

    . . .

    Though it probably won't be used much against "home"
    systems, anybody in the biz realm should take notice.

    Me, I just un-installed 'sudo'. I've always seen it
    as a kind of stupid work-around to proper security
    anyway. Open a terminal and 'su' instead.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Andy Burns@usenet@andyburns.uk to comp.os.linux.misc on Fri Oct 10 08:20:53 2025
    From Newsgroup: comp.os.linux.misc

    c186282 wrote:

    Hackers are actively exploiting a critical vulnerability
    (CVE-2025-32463) in the sudo package

    I hate to say it, but *if* you're using systemd, it makes sense to only
    have one mechanism to launch privileged processes, and use run0 instead
    of sudo. I don't know if it's ready for prime time yet?




    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Marc Haber@mh+usenetspam1118@zugschl.us to comp.os.linux.misc on Fri Oct 10 09:29:00 2025
    From Newsgroup: comp.os.linux.misc

    c186282 <c186282@nnada.net> wrote: >https://www.bleepingcomputer.com/news/security/cisa-warns-of-critical-linux-sudo-flaw-exploited-in-attacks/

    Hackers are actively exploiting a critical vulnerability
    (CVE-2025-32463) in the sudo package that enables the
    execution of commands with root-level privileges on Linux
    operating systems.

    This is three months old news, fixed in all major Linux distributions
    in early July. Kindly stop making this kind of nonsense noise.
    -- ---------------------------------------------------------------------------- Marc Haber | " Questions are the | Mailadresse im Header Rhein-Neckar, DE | Beginning of Wisdom " |
    Nordisch by Nature | Lt. Worf, TNG "Rightful Heir" | Fon: *49 6224 1600402
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From c186282@c186282@nnada.net to comp.os.linux.misc on Fri Oct 10 03:34:37 2025
    From Newsgroup: comp.os.linux.misc

    On 10/10/25 03:29, Marc Haber wrote:
    c186282 <c186282@nnada.net> wrote:
    https://www.bleepingcomputer.com/news/security/cisa-warns-of-critical-linux-sudo-flaw-exploited-in-attacks/

    Hackers are actively exploiting a critical vulnerability
    (CVE-2025-32463) in the sudo package that enables the
    execution of commands with root-level privileges on Linux
    operating systems.

    This is three months old news, fixed in all major Linux distributions
    in early July. Kindly stop making this kind of nonsense noise.


    Never heard of a sure-enough fix ... just that
    they 'knew about' the problem.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Richard Kettlewell@invalid@invalid.invalid to comp.os.linux.misc on Fri Oct 10 11:03:26 2025
    From Newsgroup: comp.os.linux.misc

    Andy Burns <usenet@andyburns.uk> writes:
    c186282 wrote:
    Hackers are actively exploiting a critical vulnerability
    (CVE-2025-32463) in the sudo package

    I hate to say it, but *if* you're using systemd, it makes sense to
    only have one mechanism to launch privileged processes, and use run0
    instead of sudo. I don't know if it's ready for prime time yet?

    I keep sudo restricted to privileged users (i.e. me), making its
    vulnerability firehose largely irrelevant.

    richard@tsais:~$ ls -l /usr/bin/sudo
    -rws--x--- 1 root sudo 232416 Jun 25 13:48 /usr/bin/sudo
    --
    https://www.greenend.org.uk/rjk/
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From The Natural Philosopher@tnp@invalid.invalid to comp.os.linux.misc on Fri Oct 10 11:42:26 2025
    From Newsgroup: comp.os.linux.misc

    On 10/10/2025 11:03, Richard Kettlewell wrote:
    I keep sudo restricted to privileged users (i.e. me), making its vulnerability firehose largely irrelevant.

    richard@tsais:~$ ls -l /usr/bin/sudo
    -rws--x--- 1 root sudo 232416 Jun 25 13:48 /usr/bin/sudo

    Neat, if somewhat paranoid.
    --
    Microsoft : the best reason to go to Linux that ever existed.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Marc Haber@mh+usenetspam1118@zugschl.us to comp.os.linux.misc on Fri Oct 10 13:06:46 2025
    From Newsgroup: comp.os.linux.misc

    c186282 <c186282@nnada.net> wrote:
    On 10/10/25 03:29, Marc Haber wrote:
    c186282 <c186282@nnada.net> wrote:
    https://www.bleepingcomputer.com/news/security/cisa-warns-of-critical-linux-sudo-flaw-exploited-in-attacks/

    Hackers are actively exploiting a critical vulnerability
    (CVE-2025-32463) in the sudo package that enables the
    execution of commands with root-level privileges on Linux
    operating systems.

    This is three months old news, fixed in all major Linux distributions
    in early July. Kindly stop making this kind of nonsense noise.


    Never heard of a sure-enough fix ... just that
    they 'knew about' the problem.

    If you don't know zilch about what you're talking about you should
    shut the fuck up instead of embarrassing yourself. But being anonymous
    at least doesn't fire back on your real-life reputation so you can
    happily be an ass.

    Greetings
    Marc, maintaining sudo in Debian and having spent a day or so bringing
    the fix to Debian in my spare time three months ago
    -- ---------------------------------------------------------------------------- Marc Haber | " Questions are the | Mailadresse im Header Rhein-Neckar, DE | Beginning of Wisdom " |
    Nordisch by Nature | Lt. Worf, TNG "Rightful Heir" | Fon: *49 6224 1600402
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Carlos E.R.@robin_listas@es.invalid to comp.os.linux.misc on Fri Oct 10 21:42:18 2025
    From Newsgroup: comp.os.linux.misc

    On 2025-10-10 09:29, Marc Haber wrote:
    c186282 <c186282@nnada.net> wrote:
    https://www.bleepingcomputer.com/news/security/cisa-warns-of-critical-linux-sudo-flaw-exploited-in-attacks/

    September 30, 2025


    Hackers are actively exploiting a critical vulnerability
    ( ) in the sudo package that enables the
    execution of commands with root-level privileges on Linux
    operating systems.

    This is three months old news, fixed in all major Linux distributions
    in early July. Kindly stop making this kind of nonsense noise.


    True.

    *Security update for sudo*

    Announcement ID: SUSE-SU-2025:02177-1
    Release Date: 2025-06-30T17:53:19Z
    Rating: important
    References:

    bsc#1245274 bsc#1245275

    Cross-References:

    CVE-2025-32462 CVE-2025-32463
    **************

    ...

    Description:

    This update for sudo fixes the following issues:

    CVE-2025-32462: Fixed a possible local privilege escalation via the --host option (bsc#1245274).
    CVE-2025-32463: Fixed a possible local privilege Escalation via chroot option (bsc#1245275).
    --
    Cheers, Carlos.
    ESEfc-Efc+, EUEfc-Efc|;
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Marc Haber@mh+usenetspam1118@zugschl.us to comp.os.linux.misc on Fri Oct 10 23:02:57 2025
    From Newsgroup: comp.os.linux.misc

    "Carlos E.R." <robin_listas@es.invalid> wrote:
    On 2025-10-10 09:29, Marc Haber wrote:
    c186282 <c186282@nnada.net> wrote:
    https://www.bleepingcomputer.com/news/security/cisa-warns-of-critical-linux-sudo-flaw-exploited-in-attacks/

    September 30, 2025


    Hackers are actively exploiting a critical vulnerability
    ( ) in the sudo package that enables the
    execution of commands with root-level privileges on Linux
    operating systems.

    This is three months old news, fixed in all major Linux distributions
    in early July. Kindly stop making this kind of nonsense noise.


    True.

    Thanks for verifying.

    This was a coordinated, embargoed security release that went by the
    book. Security Teams and Package Maintainers (yes, including me) knew
    a few days in advance, were able to allocate some (of their spare)
    time, prepare and test fixed packages that could be released within
    minutes of the release of the upstream security advisory and the fixed
    upstream version.

    Greetings
    Marc
    -- ---------------------------------------------------------------------------- Marc Haber | " Questions are the | Mailadresse im Header Rhein-Neckar, DE | Beginning of Wisdom " |
    Nordisch by Nature | Lt. Worf, TNG "Rightful Heir" | Fon: *49 6224 1600402
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From c186282@c186282@nnada.net to comp.os.linux.misc on Sat Oct 11 02:15:12 2025
    From Newsgroup: comp.os.linux.misc

    On 10/10/25 06:03, Richard Kettlewell wrote:
    Andy Burns <usenet@andyburns.uk> writes:
    c186282 wrote:
    Hackers are actively exploiting a critical vulnerability
    (CVE-2025-32463) in the sudo package

    I hate to say it, but *if* you're using systemd, it makes sense to
    only have one mechanism to launch privileged processes, and use run0
    instead of sudo. I don't know if it's ready for prime time yet?

    I keep sudo restricted to privileged users (i.e. me), making its vulnerability firehose largely irrelevant.

    Good policy.

    More restrictions CAN be inconvenient sometimes, but
    can save yer ass even more often. I'd rather type
    a few more letters than be wide open.

    "Home" systems, seem of lower priority to Vlad's
    little hacks - for NOW. But ......

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From c186282@c186282@nnada.net to comp.os.linux.misc on Sat Oct 11 02:15:59 2025
    From Newsgroup: comp.os.linux.misc

    On 10/10/25 06:42, The Natural Philosopher wrote:
    On 10/10/2025 11:03, Richard Kettlewell wrote:
    I keep sudo restricted to privileged users (i.e. me), making its
    vulnerability firehose largely irrelevant.

    richard@tsais:~$ ls -l /usr/bin/sudo
    -rws--x--- 1 root sudo 232416 Jun 25 13:48 /usr/bin/sudo

    Neat, if somewhat paranoid.

    These days, 'cold' wars getting hotter, BE paranoid.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From c186282@c186282@nnada.net to comp.os.linux.misc on Sat Oct 11 02:17:35 2025
    From Newsgroup: comp.os.linux.misc

    On 10/10/25 07:06, Marc Haber wrote:
    c186282 <c186282@nnada.net> wrote:
    On 10/10/25 03:29, Marc Haber wrote:
    c186282 <c186282@nnada.net> wrote:
    https://www.bleepingcomputer.com/news/security/cisa-warns-of-critical-linux-sudo-flaw-exploited-in-attacks/

    Hackers are actively exploiting a critical vulnerability
    (CVE-2025-32463) in the sudo package that enables the
    execution of commands with root-level privileges on Linux
    operating systems.

    This is three months old news, fixed in all major Linux distributions
    in early July. Kindly stop making this kind of nonsense noise.


    Never heard of a sure-enough fix ... just that
    they 'knew about' the problem.

    If you don't know zilch about what you're talking about you should
    shut the fuck up
    No, asshole ....

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From c186282@c186282@nnada.net to comp.os.linux.misc on Sat Oct 11 02:42:58 2025
    From Newsgroup: comp.os.linux.misc

    On 10/10/25 15:42, Carlos E.R. wrote:
    On 2025-10-10 09:29, Marc Haber wrote:
    c186282 <c186282@nnada.net> wrote:
    https://www.bleepingcomputer.com/news/security/cisa-warns-of-
    critical-linux-sudo-flaw-exploited-in-attacks/

    September 30, 2025


    Hackers are actively exploiting a critical vulnerability
    (-a-a-a ) in the sudo package that enables the
    execution of commands with root-level privileges on Linux
    operating systems.

    This is three months old news, fixed in all major Linux distributions
    in early July. Kindly stop making this kind of nonsense noise.


    True.

    Note that a lot of people update like NEVER ...

    Linux is invulnerable, right ?

    They SHOULD know.

    Happy to be of service.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From The Natural Philosopher@tnp@invalid.invalid to comp.os.linux.misc on Sat Oct 11 11:09:28 2025
    From Newsgroup: comp.os.linux.misc

    On 11/10/2025 07:15, c186282 wrote:
    On 10/10/25 06:42, The Natural Philosopher wrote:
    On 10/10/2025 11:03, Richard Kettlewell wrote:
    I keep sudo restricted to privileged users (i.e. me), making its
    vulnerability firehose largely irrelevant.

    richard@tsais:~$ ls -l /usr/bin/sudo
    -rws--x--- 1 root sudo 232416 Jun 25 13:48 /usr/bin/sudo

    Neat, if somewhat paranoid.

    -a These days, 'cold' wars getting hotter, BE paranoid.

    I can see absolutely no reason at all, even in my deepest depths of
    depression and paranoia, why on earth the State, or any other State
    could have the slightest interest in me.

    I can sleep soundly at night knowing that no one could possibly be out
    to get me. I am by design, supremely unimportant.
    --
    "Strange as it seems, no amount of learning can cure stupidity, and
    higher education positively fortifies it."

    - Stephen Vizinczey


    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Richard Kettlewell@invalid@invalid.invalid to comp.os.linux.misc on Sat Oct 11 11:57:18 2025
    From Newsgroup: comp.os.linux.misc

    The Natural Philosopher <tnp@invalid.invalid> writes:
    On 11/10/2025 07:15, c186282 wrote:
    On 10/10/25 06:42, The Natural Philosopher wrote:
    On 10/10/2025 11:03, Richard Kettlewell wrote:
    I keep sudo restricted to privileged users (i.e. me), making its
    vulnerability firehose largely irrelevant.

    richard@tsais:~$ ls -l /usr/bin/sudo
    -rws--x--- 1 root sudo 232416 Jun 25 13:48 /usr/bin/sudo

    Neat, if somewhat paranoid.

    Perhaps.

    -a These days, 'cold' wars getting hotter, BE paranoid.

    I can see absolutely no reason at all, even in my deepest depths of depression and paranoia, why on earth the State, or any other State
    could have the slightest interest in me.

    I can sleep soundly at night knowing that no one could possibly be out
    to get me. I am by design, supremely unimportant.

    YourCOre a target of propaganda from a number of states, like everyone
    else. But platform security has at best only tangential relevance to
    that.

    As for wars: the historical Cold War would have been quite different
    with todayrCOs level of computer networking. The USSR would certainly have exploited it in much the same ways that Russia and China do today.
    Whether the West would have been any more successful at countering it I hesitate to guess.
    --
    https://www.greenend.org.uk/rjk/
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From apapmurray@apap.murray@mail.com to comp.os.linux.misc on Sat Oct 11 14:26:44 2025
    From Newsgroup: comp.os.linux.misc

    On 10/10/2025 06:30, c186282 wrote:
    -a Me, I just un-installed 'sudo'. I've always seen it
    -a as a kind of stupid work-around to proper security
    -a anyway. Open a terminal and 'su' instead.

    I use sudo out of habit, never really thought about it. I suppose I
    could keep an authenticated session alive and set TMOUT to a reasonable
    value. Or maybe try run0 for the first time ever since I use systemd.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From rbowman@bowman@montana.com to comp.os.linux.misc on Sat Oct 11 18:48:40 2025
    From Newsgroup: comp.os.linux.misc

    On Sat, 11 Oct 2025 02:42:58 -0400, c186282 wrote:

    Note that a lot of people update like NEVER ...

    Thanks for the reminder. I hadn't updated the Fedora box in a few days.
    Yep, another new kernel and some Python stuff. Python seems to get a lot
    of patches.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From c186282@c186282@nnada.net to comp.os.linux.misc on Sat Oct 11 21:30:59 2025
    From Newsgroup: comp.os.linux.misc

    On 10/11/25 06:09, The Natural Philosopher wrote:
    On 11/10/2025 07:15, c186282 wrote:
    On 10/10/25 06:42, The Natural Philosopher wrote:
    On 10/10/2025 11:03, Richard Kettlewell wrote:
    I keep sudo restricted to privileged users (i.e. me), making its
    vulnerability firehose largely irrelevant.

    richard@tsais:~$ ls -l /usr/bin/sudo
    -rws--x--- 1 root sudo 232416 Jun 25 13:48 /usr/bin/sudo

    Neat, if somewhat paranoid.

    -a-a These days, 'cold' wars getting hotter, BE paranoid.

    I can see absolutely no reason at all, even in my deepest depths of depression and paranoia, why on earth the State, or any other State
    could have the slightest interest in me.

    Just what those old Jews said ........
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From c186282@c186282@nnada.net to comp.os.linux.misc on Sat Oct 11 22:15:14 2025
    From Newsgroup: comp.os.linux.misc

    On 10/11/25 14:48, rbowman wrote:
    On Sat, 11 Oct 2025 02:42:58 -0400, c186282 wrote:

    Note that a lot of people update like NEVER ...

    Thanks for the reminder. I hadn't updated the Fedora box in a few days.
    Yep, another new kernel and some Python stuff. Python seems to get a lot
    of patches.

    Lots of things seem to get frequent patches - and FireFox
    seems to update the entire thing like weekly now.

    But there does seem to be a fair segment who got sold on
    the idea that Linux was invulnerable. They install a distro
    and then NEVER update it.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From The Natural Philosopher@tnp@invalid.invalid to comp.os.linux.misc on Sun Oct 12 12:53:31 2025
    From Newsgroup: comp.os.linux.misc

    On 11/10/2025 11:57, Richard Kettlewell wrote:
    YourCOre a target of propaganda from a number of states, like everyone
    else. But platform security has at best only tangential relevance to
    that.

    The best defence against that is knowing that it is the case. And making
    due allowance

    As for wars: the historical Cold War would have been quite different
    with todayrCOs level of computer networking. The USSR would certainly have exploited it in much the same ways that Russia and China do today.
    Whether the West would have been any more successful at countering it I hesitate to guess.

    It's a very imponderable question. I think the level of [mis]information
    flow today has meant that people are gradually realising just how much
    lies and propaganda there always has been, it's just difficult to hide
    it any more.

    The comforting world where we all believed in a common dream has
    vanished. Its now competing nightmares of ever increasing intensity.

    People are having their faith stripped from them in a brutal fashion.

    The cold war was 'fought' the way it was because those were the weapons
    there were.
    Russia was always the source of massive lies, and the more radical Left
    of today is based on many of them. It's just that the means of
    propagation was different.
    --
    rCLThe fundamental cause of the trouble in the modern world today is that
    the stupid are cocksure while the intelligent are full of doubt."

    - Bertrand Russell


    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From The Natural Philosopher@tnp@invalid.invalid to comp.os.linux.misc on Sun Oct 12 12:56:38 2025
    From Newsgroup: comp.os.linux.misc

    On 12/10/2025 02:30, c186282 wrote:
    On 10/11/25 06:09, The Natural Philosopher wrote:
    On 11/10/2025 07:15, c186282 wrote:
    On 10/10/25 06:42, The Natural Philosopher wrote:
    On 10/10/2025 11:03, Richard Kettlewell wrote:
    I keep sudo restricted to privileged users (i.e. me), making its
    vulnerability firehose largely irrelevant.

    richard@tsais:~$ ls -l /usr/bin/sudo
    -rws--x--- 1 root sudo 232416 Jun 25 13:48 /usr/bin/sudo

    Neat, if somewhat paranoid.

    -a-a These days, 'cold' wars getting hotter, BE paranoid.

    I can see absolutely no reason at all, even in my deepest depths of
    depression and paranoia, why on earth the State, or any other State
    could have the slightest interest in me.

    -a Just what those old Jews said ........

    Well yes... I am aware of the generation of anti-white hatred and
    especially anti-semitism today.

    And that being an educated white heterosexual male is probably the worst abomination possible in some peoples eyes.

    But it's not [yet] government policy.
    --
    Renewable energy: Expensive solutions that don't work to a problem that doesn't exist instituted by self legalising protection rackets that
    don't protect, masquerading as public servants who don't serve the public.


    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From rbowman@bowman@montana.com to comp.os.linux.misc on Sun Oct 12 17:50:40 2025
    From Newsgroup: comp.os.linux.misc

    On Sun, 12 Oct 2025 12:53:31 +0100, The Natural Philosopher wrote:

    It's a very imponderable question. I think the level of [mis]information
    flow today has meant that people are gradually realising just how much
    lies and propaganda there always has been, it's just difficult to hide
    it any more.

    One of my earliest memories is radio broadcasts during the Korean war, er, police action. I have no idea why it stuck in my mind since I certainly
    didn't comprehend the situation. Anyway, every day they would announce how many MiG-15s had been shot down over MiG Alley. It probably totaled to
    more MiGs than were in the conflict but it served the purpose of showing
    the vast superiority of the F-86 over the barely airworthy MiG.

    https://www.smithsonianmag.com/air-space-magazine/the-jet-that-shocked- the-west-180947758/

    Of course I only figured it out in retrospect. Cheers to Attlee for giving
    the Rolls-Royce engines to the Soviets. They were more advanced than the
    BMW engines used in the MiG-9. However the Messerschmitt 262 design found
    its way into the MiG-15 and F-86 DNA.

    I was older and more cynical when a lone gunman killed Kennedy and
    Loathsome B Johnson lied us into the Vietnam fiasco to say nothing of the immigration reform and civil rights that got us to where we are.



    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Carlos E.R.@robin_listas@es.invalid to comp.os.linux.misc on Sun Oct 12 23:08:26 2025
    From Newsgroup: comp.os.linux.misc

    On 2025-10-12 04:15, c186282 wrote:
    On 10/11/25 14:48, rbowman wrote:
    On Sat, 11 Oct 2025 02:42:58 -0400, c186282 wrote:

    -a-a-a Note that a lot of people update like NEVER ...

    Thanks for the reminder. I hadn't updated the Fedora box in a few days.
    Yep, another new kernel and some Python stuff. Python seems to get a lot
    of patches.

    -a Lots of things seem to get frequent patches - and FireFox
    -a seems to update the entire thing like weekly now.

    -a But there does seem to be a fair segment who got sold on
    -a the idea that Linux was invulnerable. They install a distro
    -a and then NEVER update it.

    There are people that know what they are doing and never update a
    machine, even servers accessible from internet, unless there is an issue
    that directly affects them.

    For example, the description of this issue says "A local attacker can
    exploit this flaw to escalate privileges". Well, clearly this is a non
    issue for a machine with no local users. Or a machine with trusted local users.
    --
    Cheers, Carlos.
    ESEfc-Efc+, EUEfc-Efc|;
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From c186282@c186282@nnada.net to comp.os.linux.misc on Mon Oct 13 03:07:58 2025
    From Newsgroup: comp.os.linux.misc

    On 10/11/25 09:26, apapmurray wrote:
    On 10/10/2025 06:30, c186282 wrote:
    -a-a Me, I just un-installed 'sudo'. I've always seen it
    -a-a as a kind of stupid work-around to proper security
    -a-a anyway. Open a terminal and 'su' instead.

    I use sudo out of habit, never really thought about it. I suppose I
    could keep an authenticated session alive and set TMOUT to a reasonable value. Or maybe try run0 for the first time ever since I use systemd.

    Sudo basically trashes the user-sep concept
    in Linux. Really you should NOT install it.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From The Natural Philosopher@tnp@invalid.invalid to comp.os.linux.misc on Mon Oct 13 10:42:50 2025
    From Newsgroup: comp.os.linux.misc

    On 13/10/2025 08:07, c186282 wrote:
    On 10/11/25 09:26, apapmurray wrote:
    On 10/10/2025 06:30, c186282 wrote:
    -a-a Me, I just un-installed 'sudo'. I've always seen it
    -a-a as a kind of stupid work-around to proper security
    -a-a anyway. Open a terminal and 'su' instead.

    I use sudo out of habit, never really thought about it. I suppose I
    could keep an authenticated session alive and set TMOUT to a
    reasonable value. Or maybe try run0 for the first time ever since I
    use systemd.

    -a Sudo basically trashes the user-sep concept
    -a in Linux. Really you should NOT install it.


    I've never had any problem trashing a concept dreamed up by a computer scientist.
    To achieve a pragmatic result.

    Including code littered with 'go to jail, move directly to jail, do not collect -u200'

    What else is try throw and catch?

    The IP stack doesn't obey idealised rules either.

    I remember in my hardware days being asked to test a board, about 6" x
    10" with about 60 gold plated contacts on one edge that contained two
    741 op-amps 7 resistors and three capacitors, simply because the 'bock
    digram' showed two analogue signals being added together and subtracted
    from a third...and the monkey who turned the block diagram into board
    level specifications simply copied it

    In theory, there is no difference between theory and practice.
    In practice, there is.
    -- Yogi Berra
    --
    Climate Change: Socialism wearing a lab coat.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Pancho@Pancho.Jones@protonmail.com to comp.os.linux.misc on Mon Oct 13 12:47:15 2025
    From Newsgroup: comp.os.linux.misc

    On 10/13/25 10:42, The Natural Philosopher wrote:
    On 13/10/2025 08:07, c186282 wrote:
    On 10/11/25 09:26, apapmurray wrote:
    On 10/10/2025 06:30, c186282 wrote:
    -a-a Me, I just un-installed 'sudo'. I've always seen it
    -a-a as a kind of stupid work-around to proper security
    -a-a anyway. Open a terminal and 'su' instead.

    I use sudo out of habit, never really thought about it. I suppose I
    could keep an authenticated session alive and set TMOUT to a
    reasonable value. Or maybe try run0 for the first time ever since I
    use systemd.

    -a-a Sudo basically trashes the user-sep concept
    -a-a in Linux. Really you should NOT install it.


    I've never had any problem trashing a concept dreamed up by a computer scientist.
    To achieve a pragmatic result.

    Including code littered with 'go to jail, move directly to jail, do not collect -u200'

    What else is try throw and catch?


    FWIW in C an error handling style pattern using GOTOs, like throw/catch,
    was deemed OK. It was only unstructured use of GOTOs that was frowned
    upon, i.e. using GOTOs rather than functions.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From The Natural Philosopher@tnp@invalid.invalid to comp.os.linux.misc on Mon Oct 13 16:34:31 2025
    From Newsgroup: comp.os.linux.misc

    On 13/10/2025 12:47, Pancho wrote:
    On 10/13/25 10:42, The Natural Philosopher wrote:
    On 13/10/2025 08:07, c186282 wrote:
    On 10/11/25 09:26, apapmurray wrote:
    On 10/10/2025 06:30, c186282 wrote:
    -a-a Me, I just un-installed 'sudo'. I've always seen it
    -a-a as a kind of stupid work-around to proper security
    -a-a anyway. Open a terminal and 'su' instead.

    I use sudo out of habit, never really thought about it. I suppose I
    could keep an authenticated session alive and set TMOUT to a
    reasonable value. Or maybe try run0 for the first time ever since I
    use systemd.

    -a-a Sudo basically trashes the user-sep concept
    -a-a in Linux. Really you should NOT install it.


    I've never had any problem trashing a concept dreamed up by a computer
    scientist.
    To achieve a pragmatic result.

    Including code littered with 'go to jail, move directly to jail, do
    not collect -u200'

    What else is try throw and catch?


    FWIW in C an error handling style pattern using GOTOs, like throw/catch,
    was deemed OK. It was only unstructured use of GOTOs that was frowned
    upon, i.e. using GOTOs rather than functions.

    Plenty of code divas will go to any lengths to avoid the dreaded goto.

    Despite the fact than in Intel style assembler an if then else is
    basically achieved using a conditional branch and a goto...

    CMP A,B; if (A = B)
    BE S2: ; then goto S2
    S1: ; execute else...
    JMP S3; ENDIF
    S2: ; execute IF TRUE
    S3: ENDIF

    etc etc.
    --
    "I guess a rattlesnake ain't risponsible fer bein' a rattlesnake, but ah
    puts mah heel on um jess the same if'n I catches him around mah chillun".


    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Charlie Gibbs@cgibbs@kltpzyxm.invalid to comp.os.linux.misc on Mon Oct 13 17:41:32 2025
    From Newsgroup: comp.os.linux.misc

    On 2025-10-13, The Natural Philosopher <tnp@invalid.invalid> wrote:

    On 13/10/2025 12:47, Pancho wrote:

    FWIW in C an error handling style pattern using GOTOs, like throw/catch,
    was deemed OK. It was only unstructured use of GOTOs that was frowned
    upon, i.e. using GOTOs rather than functions.

    Plenty of code divas will go to any lengths to avoid the dreaded goto.

    Despite the fact than in Intel style assembler an if then else is
    basically achieved using a conditional branch and a goto...

    CMP A,B; if (A = B)
    BE S2: ; then goto S2
    S1: ; execute else...
    JMP S3; ENDIF
    S2: ; execute IF TRUE
    S3: ENDIF

    etc etc.

    It's funny how CS weenies loudly decry the undisciplined use
    of GOTOs, while the undisciplined use of function calls is OK.
    It's still spaghetti code - but since a function call is just
    a GOTO paired with a COME FROM, you're running double strands.

    The other way to spot CS weenies is their gratuitous use of
    recursion.
    --
    /~\ Charlie Gibbs | Growth for the sake of
    \ / <cgibbs@kltpzyxm.invalid> | growth is the ideology
    X I'm really at ac.dekanfrus | of the cancer cell.
    / \ if you read it the right way. | -- Edward Abbey
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From The Natural Philosopher@tnp@invalid.invalid to comp.os.linux.misc on Mon Oct 13 19:07:50 2025
    From Newsgroup: comp.os.linux.misc

    On 13/10/2025 18:41, Charlie Gibbs wrote:
    On 2025-10-13, The Natural Philosopher <tnp@invalid.invalid> wrote:

    On 13/10/2025 12:47, Pancho wrote:

    FWIW in C an error handling style pattern using GOTOs, like throw/catch, >>> was deemed OK. It was only unstructured use of GOTOs that was frowned
    upon, i.e. using GOTOs rather than functions.

    Plenty of code divas will go to any lengths to avoid the dreaded goto.

    Despite the fact than in Intel style assembler an if then else is
    basically achieved using a conditional branch and a goto...

    CMP A,B; if (A = B)
    BE S2: ; then goto S2
    S1: ; execute else...
    JMP S3; ENDIF
    S2: ; execute IF TRUE
    S3: ENDIF

    etc etc.

    It's funny how CS weenies loudly decry the undisciplined use
    of GOTOs, while the undisciplined use of function calls is OK.
    It's still spaghetti code - but since a function call is just
    a GOTO paired with a COME FROM, you're running double strands.

    The other way to spot CS weenies is their gratuitous use of
    recursion.

    Possibly. It can be elegant. Or not.
    I used it in a maze building program very successfully.
    --
    For every complex problem there is an answer that is clear, simple, and
    wrong.

    H.L.Mencken

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Charlie Gibbs@cgibbs@kltpzyxm.invalid to comp.os.linux.misc on Mon Oct 13 18:22:42 2025
    From Newsgroup: comp.os.linux.misc

    On 2025-10-13, The Natural Philosopher <tnp@invalid.invalid> wrote:

    On 13/10/2025 18:41, Charlie Gibbs wrote:

    The other way to spot CS weenies is their gratuitous use of
    recursion.

    Possibly. It can be elegant. Or not.
    I used it in a maze building program very successfully.

    That's why I included the word "gratuitous" above.

    I once wrote an assembler for the Univac 90/30 (sort of
    like the IBM 360). To test the macro processor I wrote
    a recursive Towers of Hanoi macro. It generated no code,
    just a bunch of MNOTEs telling you where to move the disks.
    The program listing itself was the solution.
    --
    /~\ Charlie Gibbs | Growth for the sake of
    \ / <cgibbs@kltpzyxm.invalid> | growth is the ideology
    X I'm really at ac.dekanfrus | of the cancer cell.
    / \ if you read it the right way. | -- Edward Abbey
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From John Ames@commodorejohn@gmail.com to comp.os.linux.misc on Mon Oct 13 11:45:36 2025
    From Newsgroup: comp.os.linux.misc

    On Mon, 13 Oct 2025 19:07:50 +0100
    The Natural Philosopher <tnp@invalid.invalid> wrote:

    The other way to spot CS weenies is their gratuitous use of
    recursion.

    Possibly. It can be elegant. Or not.
    I used it in a maze building program very successfully.

    It definitely has its uses, but CS courses almost never seem to focus
    on the *useful* applications because it's much easier to demonstrate
    the concept with trivial examples like Fibonacci calculation, which is
    dead easy to write but *atrocious* in terms of performance scaling :/

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Nuno Silva@nunojsilva@invalid.invalid to comp.os.linux.misc on Mon Oct 13 23:26:44 2025
    From Newsgroup: comp.os.linux.misc

    On 2025-10-13, John Ames wrote:

    On Mon, 13 Oct 2025 19:07:50 +0100
    The Natural Philosopher <tnp@invalid.invalid> wrote:

    The other way to spot CS weenies is their gratuitous use of
    recursion.

    Possibly. It can be elegant. Or not.
    I used it in a maze building program very successfully.

    It definitely has its uses, but CS courses almost never seem to focus
    on the *useful* applications because it's much easier to demonstrate
    the concept with trivial examples like Fibonacci calculation, which is
    dead easy to write but *atrocious* in terms of performance scaling :/

    That may be one of the several examples used because the point there
    might be to teach the *concept* of recursion.

    At least in the introduction course I went through, the lecturer
    actually stressed that. The course taught e.g. functional programming, recursion and imperative programming. And IIRC the lectures did involve precisely examples of something that could be nicely solved with
    recursion and something which couldn't.

    On this, I really suspect the prevalence of Fibonnaci is because it's
    somewhat well known as a function, and also easy to explain, so that's
    one less thing you have to focus on.

    Also, it's a good function to use to teach memoization.
    --
    Nuno Silva
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Nuno Silva@nunojsilva@invalid.invalid to comp.os.linux.misc on Mon Oct 13 23:48:55 2025
    From Newsgroup: comp.os.linux.misc

    On 2025-10-13, Charlie Gibbs wrote:

    It's funny how CS weenies loudly decry the undisciplined use
    of GOTOs, while the undisciplined use of function calls is OK.
    It's still spaghetti code - but since a function call is just
    a GOTO paired with a COME FROM, you're running double strands.

    The other way to spot CS weenies is their gratuitous use of
    recursion.

    I think the concern about GOTO as opposed to e.g. a function call where supported is that the function call makes it clear where it is called
    and to where it returns, while GOTO does not come with that structure.

    This can have an impact in understanding the program, but perhaps more importantly makes it harder to analyze the program. And that's, broadly speaking, what computer science is about.

    Also, I thought spaghetti code referred mostly to code which lacks
    structure and organization?
    --
    Nuno Silva
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Pancho@Pancho.Jones@protonmail.com to comp.os.linux.misc on Tue Oct 14 00:13:34 2025
    From Newsgroup: comp.os.linux.misc

    On 10/13/25 23:26, Nuno Silva wrote:
    On 2025-10-13, John Ames wrote:

    On Mon, 13 Oct 2025 19:07:50 +0100
    The Natural Philosopher <tnp@invalid.invalid> wrote:

    The other way to spot CS weenies is their gratuitous use of
    recursion.

    Possibly. It can be elegant. Or not.
    I used it in a maze building program very successfully.

    It definitely has its uses, but CS courses almost never seem to focus
    on the *useful* applications because it's much easier to demonstrate
    the concept with trivial examples like Fibonacci calculation, which is
    dead easy to write but *atrocious* in terms of performance scaling :/

    That may be one of the several examples used because the point there
    might be to teach the *concept* of recursion.

    At least in the introduction course I went through, the lecturer
    actually stressed that. The course taught e.g. functional programming, recursion and imperative programming. And IIRC the lectures did involve precisely examples of something that could be nicely solved with
    recursion and something which couldn't.

    On this, I really suspect the prevalence of Fibonnaci is because it's somewhat well known as a function, and also easy to explain, so that's
    one less thing you have to focus on.

    Also, it's a good function to use to teach memoization.


    Fib is a nice question to ask at an interview, because there are a lot
    of answers.

    From a practical developer view point, memoization is my favourite
    because it is a simple, no brain solution, that is good for many problems.

    Mathematically, Fib has a closed form solution, it's a recurrence
    relation. That is my second favourite.

    From a CS view point it is a double recursion and hence you can't use a
    tail recursion optimisation, which is worth noting. Although you can get
    round the double recursion by returning a tuple. Using a tuple even a
    non optimised recursive routine will be fast, given you only have a few
    values before the numbers get too big.

    An iterative version is OK performance wise, but harder to write and understand.

    I didn't formally learn the pattern of memoziation until late in my
    career, which seems strange as it is simple. Earlier, I suspect I
    effectively did the same thing with ad hoc caches, but it is always
    neater if a formal named pattern is used.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From rbowman@bowman@montana.com to comp.os.linux.misc on Tue Oct 14 00:13:24 2025
    From Newsgroup: comp.os.linux.misc

    On Mon, 13 Oct 2025 11:45:36 -0700, John Ames wrote:

    On Mon, 13 Oct 2025 19:07:50 +0100 The Natural Philosopher <tnp@invalid.invalid> wrote:

    The other way to spot CS weenies is their gratuitous use of
    recursion.

    Possibly. It can be elegant. Or not.
    I used it in a maze building program very successfully.

    It definitely has its uses, but CS courses almost never seem to focus on
    the *useful* applications because it's much easier to demonstrate the
    concept with trivial examples like Fibonacci calculation, which is dead
    easy to write but *atrocious* in terms of performance scaling :/

    We used ONC-RPC with XDR for about 20 years with no problems. Then we encountered a site that managed to create a lot of linked objects.
    Encoding and decoding is done recursively. Client apps started crashing mysteriously until we figured out they were blowing out their stack space
    on Windows. 'editbin /STACK:12000000 WINNT/foo.exe' to the rescue.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From rbowman@bowman@montana.com to comp.os.linux.misc on Tue Oct 14 00:30:01 2025
    From Newsgroup: comp.os.linux.misc

    On Mon, 13 Oct 2025 23:48:55 +0100, Nuno Silva wrote:

    I think the concern about GOTO as opposed to e.g. a function call where supported is that the function call makes it clear where it is called
    and to where it returns, while GOTO does not come with that structure.

    It's nowhere near as much fun as siglongjmp() :).

    Other than the bad old days of FORTRAN my goto use is local to the
    function, something like:

    if (test_failed) {
    goto exit;
    }

    It allows the function to have one entrance and one exit without the convoluted and deeply nested conditionals that might be needed otherwise.
    I think TNP pointed out in assembler all you have is JMP and its friends.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From c186282@c186282@nnada.net to comp.os.linux.misc on Tue Oct 14 01:19:10 2025
    From Newsgroup: comp.os.linux.misc

    On 10/13/25 20:30, rbowman wrote:
    On Mon, 13 Oct 2025 23:48:55 +0100, Nuno Silva wrote:

    I think the concern about GOTO as opposed to e.g. a function call where
    supported is that the function call makes it clear where it is called
    and to where it returns, while GOTO does not come with that structure.

    It's nowhere near as much fun as siglongjmp() :).

    Other than the bad old days of FORTRAN my goto use is local to the
    function, something like:

    if (test_failed) {
    goto exit;
    }

    It allows the function to have one entrance and one exit without the convoluted and deeply nested conditionals that might be needed otherwise.
    I think TNP pointed out in assembler all you have is JMP and its friends.

    Goto DOES have good uses. Yea, 'structuring' can
    sometimes do it, but oft in a messy fashion if
    you need to jump out of the middle of something.

    Did an app for a handheld device long back which
    used goto to good advantage ... made it super easy
    to jump back and forth in the data-entry 'ladder'.
    Input for each entry prompt was a few-line little
    'module'. With goto you could repeat, or go back,
    very easily.

    The problem with goto is that it became severely
    over-used, created 'spaghetti code' almost impossible
    to figure out.


    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From c186282@c186282@nnada.net to comp.os.linux.misc on Tue Oct 14 01:44:08 2025
    From Newsgroup: comp.os.linux.misc

    On 10/13/25 14:22, Charlie Gibbs wrote:
    On 2025-10-13, The Natural Philosopher <tnp@invalid.invalid> wrote:

    On 13/10/2025 18:41, Charlie Gibbs wrote:

    The other way to spot CS weenies is their gratuitous use of
    recursion.

    Possibly. It can be elegant. Or not.
    I used it in a maze building program very successfully.

    That's why I included the word "gratuitous" above.

    I once wrote an assembler for the Univac 90/30 (sort of
    like the IBM 360). To test the macro processor I wrote
    a recursive Towers of Hanoi macro. It generated no code,
    just a bunch of MNOTEs telling you where to move the disks.
    The program listing itself was the solution.

    Recursion is FUN - if you have the stack/mem
    to spare. Once wrote an n-field sort routine
    that relied on recursion. Nice, small, satisfying.

    But yea, it CAN become stupid. Often a straight-on
    approach is quicker and simpler.

    CS isn't "practical programming" - not at all.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From rbowman@bowman@montana.com to comp.os.linux.misc on Tue Oct 14 06:36:00 2025
    From Newsgroup: comp.os.linux.misc

    On Tue, 14 Oct 2025 01:44:08 -0400, c186282 wrote:

    On 10/13/25 14:22, Charlie Gibbs wrote:
    On 2025-10-13, The Natural Philosopher <tnp@invalid.invalid> wrote:

    On 13/10/2025 18:41, Charlie Gibbs wrote:

    The other way to spot CS weenies is their gratuitous use of
    recursion.

    Possibly. It can be elegant. Or not.
    I used it in a maze building program very successfully.

    That's why I included the word "gratuitous" above.

    I once wrote an assembler for the Univac 90/30 (sort of like the IBM
    360). To test the macro processor I wrote a recursive Towers of Hanoi
    macro. It generated no code,
    just a bunch of MNOTEs telling you where to move the disks.
    The program listing itself was the solution.

    Recursion is FUN - if you have the stack/mem to spare. Once wrote an
    n-field sort routine that relied on recursion. Nice, small,
    satisfying.

    But yea, it CAN become stupid. Often a straight-on approach is
    quicker and simpler.

    CS isn't "practical programming" - not at all.

    It's the same as any other relationship between science and engineering.
    You don't want a physicist designing a bridge although the basis of civil engineering is physics. There are universities that offer BS and MSE
    programs in software engineering. I don't know how much they differ from
    the computer science programs. The local university offers CS and I'm not overly impressed but technology isn't really their forte.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Pancho@Pancho.Jones@protonmail.com to comp.os.linux.misc on Tue Oct 14 08:21:48 2025
    From Newsgroup: comp.os.linux.misc

    On 10/14/25 01:30, rbowman wrote:
    On Mon, 13 Oct 2025 23:48:55 +0100, Nuno Silva wrote:

    I think the concern about GOTO as opposed to e.g. a function call where
    supported is that the function call makes it clear where it is called
    and to where it returns, while GOTO does not come with that structure.

    It's nowhere near as much fun as siglongjmp() :).

    Other than the bad old days of FORTRAN my goto use is local to the
    function, something like:

    if (test_failed) {
    goto exit;
    }

    It allows the function to have one entrance and one exit without the convoluted and deeply nested conditionals that might be needed otherwise.
    I think TNP pointed out in assembler all you have is JMP and its friends.

    By the time I came to look at an assembler (6502), it had jump
    subroutine JSR. I can't remember about pushing parameters on the stack.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From The Natural Philosopher@tnp@invalid.invalid to comp.os.linux.misc on Tue Oct 14 10:18:33 2025
    From Newsgroup: comp.os.linux.misc

    On 13/10/2025 19:45, John Ames wrote:
    On Mon, 13 Oct 2025 19:07:50 +0100
    The Natural Philosopher <tnp@invalid.invalid> wrote:

    The other way to spot CS weenies is their gratuitous use of
    recursion.

    Possibly. It can be elegant. Or not.
    I used it in a maze building program very successfully.

    It definitely has its uses, but CS courses almost never seem to focus
    on the *useful* applications because it's much easier to demonstrate
    the concept with trivial examples like Fibonacci calculation, which is
    dead easy to write but *atrocious* in terms of performance scaling :/

    CS is about the general use of algorithms it seems to me and
    mathematical analysis of them.

    It MIGHT be handy for someone who designs CPUs, or writes compilers, but that's it

    TBH the often sneered at cargo cult method of writing code is often the
    best,. Find someone else's design, copy it blindly and bugger with it
    till it meets the spec.

    As someone remarked to me 'the reason a bricklayer is so crap is because
    if he were any good he wouldn't be laying bricks'...

    Hordes of slightly less than random monkeys can in fact produce
    reasonable results,
    --
    If I had all the money I've spent on drink...
    ..I'd spend it on drink.

    Sir Henry (at Rawlinson's End)

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From The Natural Philosopher@tnp@invalid.invalid to comp.os.linux.misc on Tue Oct 14 10:21:19 2025
    From Newsgroup: comp.os.linux.misc

    On 13/10/2025 23:48, Nuno Silva wrote:
    I think the concern about GOTO as opposed to e.g. a function call where supported is that the function call makes it clear where it is called
    and to where it returns, while GOTO does not come with that structure.

    This can have an impact in understanding the program, but perhaps more importantly makes it harder to analyze the program. And that's, broadly speaking, what computer science is about.

    No. That is what software engineering is all about.

    Computer science is all about theory, elegance and obfuscation.
    --
    rCLA leader is best When people barely know he exists. Of a good leader,
    who talks little,When his work is done, his aim fulfilled,They will say,
    rCLWe did this ourselves.rCY

    rCo Lao Tzu, Tao Te Ching

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From The Natural Philosopher@tnp@invalid.invalid to comp.os.linux.misc on Tue Oct 14 10:29:05 2025
    From Newsgroup: comp.os.linux.misc

    On 14/10/2025 01:30, rbowman wrote:
    On Mon, 13 Oct 2025 23:48:55 +0100, Nuno Silva wrote:

    I think the concern about GOTO as opposed to e.g. a function call where
    supported is that the function call makes it clear where it is called
    and to where it returns, while GOTO does not come with that structure.

    It's nowhere near as much fun as siglongjmp() :).

    Other than the bad old days of FORTRAN my goto use is local to the
    function, something like:

    if (test_failed) {
    goto exit;
    }

    It allows the function to have one entrance and one exit without the convoluted and deeply nested conditionals that might be needed otherwise.
    I think TNP pointed out in assembler all you have is JMP and its friends.

    It can get worse than that and still be better.

    I think I mentioned before my attempts to squeeze new assembler code to
    handle 80Mbyte drives into a DOS that had a 32MByte limit unless you
    used bigger sectors than 512Bytes.

    I noted that nearly every subroutine ended with

    POP AX
    POP BX
    RET

    and could have those bytes replaced with
    JMP STDEXIT

    ...

    STDEXIT:
    POP AX
    POP BX
    RET

    Likewise, a Telex comms program that I wrote had layers of subroutines
    going from the handling of complete messages bodies down to receiving a
    single character on the Telex hardware...To return upwards through all
    the layers to handle fatal errors was simply for more complex than a setjmp()/longjmp() pair to handle all the details of shutting down a
    failed session...
    --
    Of what good are dead warriors? rCa Warriors are those who desire battle
    more than peace. Those who seek battle despite peace. Those who thump
    their spears on the ground and talk of honor. Those who leap high the
    battle dance and dream of glory rCa The good of dead warriors, Mother, is
    that they are dead.
    Sheri S Tepper: The Awakeners.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From The Natural Philosopher@tnp@invalid.invalid to comp.os.linux.misc on Tue Oct 14 10:31:38 2025
    From Newsgroup: comp.os.linux.misc

    On 14/10/2025 06:19, c186282 wrote:
    On 10/13/25 20:30, rbowman wrote:
    On Mon, 13 Oct 2025 23:48:55 +0100, Nuno Silva wrote:

    I think the concern about GOTO as opposed to e.g. a function call where
    supported is that the function call makes it clear where it is called
    and to where it returns, while GOTO does not come with that structure.

    It's nowhere near as much fun as siglongjmp() :).

    Other than the bad old days of FORTRAN my goto use is local to the
    function, something like:

    if (test_failed) {
    -a-a-a-a goto exit;
    }

    It allows the function to have one entrance and one exit without the
    convoluted and deeply nested conditionals that might be needed otherwise.
    I think TNP pointed out in assembler all you have is JMP and its friends.

    -a Goto DOES have good uses. Yea, 'structuring' can
    -a sometimes do it, but oft in a messy fashion if
    -a you need to jump out of the middle of something.

    -a Did an app for a handheld device long back which
    -a used goto to good advantage ... made it super easy
    -a to jump back and forth in the data-entry 'ladder'.
    -a Input for each entry prompt was a few-line little
    -a 'module'. With goto you could repeat, or go back,
    -a very easily.

    -a The problem with goto is that it became severely
    -a over-used, created 'spaghetti code' almost impossible
    -a to figure out.


    Exactly. It wasn't the GOTO at fault, it was the failure of people to
    write clean workmanlike well structured and commented code.
    Personally I like a function to do one clear and simple thing. The
    moment a code fragment can be pushed into a function I do it.

    And these days 'inline' removes the performance penalty anyway.
    --
    rCLProgress is precisely that which rules and regulations did not foresee,rCY

    rCo Ludwig von Mises

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Pancho@Pancho.Jones@protonmail.com to comp.os.linux.misc on Tue Oct 14 10:31:39 2025
    From Newsgroup: comp.os.linux.misc

    On 10/14/25 10:18, The Natural Philosopher wrote:

    Hordes of slightly less than random monkeys can in fact produce
    reasonable results,


    That depends, a lot of huge government projects suggest they can't. It
    seemed to me that projects need a few good programmers to influence what
    is done, and how it is done. This is especially true where something new
    is being developed. A new type of program, not just a variation on
    something done previously.

    It's why I respected your Gridwatch site, the code might be shit, I
    don't know, it doesn't matter, it was a good idea. It is that idea that counts. A lot of programmers don't have ideas.


    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From The Natural Philosopher@tnp@invalid.invalid to comp.os.linux.misc on Tue Oct 14 10:34:25 2025
    From Newsgroup: comp.os.linux.misc

    On 14/10/2025 08:21, Pancho wrote:
    On 10/14/25 01:30, rbowman wrote:
    On Mon, 13 Oct 2025 23:48:55 +0100, Nuno Silva wrote:

    I think the concern about GOTO as opposed to e.g. a function call where
    supported is that the function call makes it clear where it is called
    and to where it returns, while GOTO does not come with that structure.

    It's nowhere near as much fun as siglongjmp() :).

    Other than the bad old days of FORTRAN my goto use is local to the
    function, something like:

    if (test_failed) {
    -a-a-a-a goto exit;
    }

    It allows the function to have one entrance and one exit without the
    convoluted and deeply nested conditionals that might be needed otherwise.
    I think TNP pointed out in assembler all you have is JMP and its friends.

    By the time I came to look at an assembler (6502), it had jump
    subroutine JSR. I can't remember about pushing parameters on the stack.

    JSR is the same as CALL in INTEL, IIRC.

    I.e an automatic pushing of the program counter into the stack and than
    a jump

    Explicitly pushing other registers into the stack was a manual
    operation. That you might do before or at the start of the subroutine, depending.
    --
    "And if the blind lead the blind, both shall fall into the ditch".

    Gospel of St. Mathew 15:14


    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From The Natural Philosopher@tnp@invalid.invalid to comp.os.linux.misc on Tue Oct 14 10:40:46 2025
    From Newsgroup: comp.os.linux.misc

    On 14/10/2025 07:36, rbowman wrote:
    It's the same as any other relationship between science and engineering.
    You don't want a physicist designing a bridge although the basis of civil engineering is physics. There are universities that offer BS and MSE
    programs in software engineering. I don't know how much they differ from
    the computer science programs. The local university offers CS and I'm not overly impressed but technology isn't really their forte.

    I once browsed my local university frequented bookshop for books on
    computer stuff.
    CDS bough things like Knutshg 'fundamental algorithms;' An impenetrable
    and pointless exercise in mathematical analysis.
    Software engineers or information technologists bought books with
    chapters like
    'planning and management of complex project design' , purpose and implementation of documentation standards' and 'use of test routines'
    'uses and abuses of object orientated philosophy' and so on.

    In other words, what you actually need to write software...in a real world
    --
    rCLIt is hard to imagine a more stupid decision or more dangerous way of making decisions than by putting those decisions in the hands of people
    who pay no price for being wrong.rCY

    Thomas Sowell

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From The Natural Philosopher@tnp@invalid.invalid to comp.os.linux.misc on Tue Oct 14 11:08:58 2025
    From Newsgroup: comp.os.linux.misc

    On 14/10/2025 10:31, Pancho wrote:
    On 10/14/25 10:18, The Natural Philosopher wrote:

    Hordes of slightly less than random monkeys can in fact produce
    reasonable results,


    That depends, a lot of huge government projects suggest they can't. It seemed to me that projects need a few good programmers to influence what
    is done, and how it is done. This is especially true where something new
    is being developed. A new type of program, not just a variation on
    something done previously.

    Big [government] projects are shit because the people who write the
    specs are third rate computer scientists.

    Not experienced software engineers.

    Proper software houses like IBM or Oracle have teams of analysts who
    look at the problem in depth and write a lot of specs long before any
    hairy assed coder gets his hands on it. cheaper software houses bid on
    it and get the contract but have no real idea how to manage it.



    It's why I respected your Gridwatch site, the code might be shit, I
    don't know, it doesn't matter, it was a good idea. It is that idea that counts. A lot of programmers don't have ideas.


    A lot of it is shit, but it serves its purpose. The point is it doesn't
    have to be good.

    These days I'd write less in php and more in javascript and or C.
    --
    "Socialist governments traditionally do make a financial mess. They
    always run out of other people's money. It's quite a characteristic of them"

    Margaret Thatcher

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Nuno Silva@nunojsilva@invalid.invalid to comp.os.linux.misc on Tue Oct 14 11:42:41 2025
    From Newsgroup: comp.os.linux.misc

    On 2025-10-14, The Natural Philosopher wrote:

    On 13/10/2025 23:48, Nuno Silva wrote:
    I think the concern about GOTO as opposed to e.g. a function call where
    supported is that the function call makes it clear where it is called
    and to where it returns, while GOTO does not come with that structure.

    This can have an impact in understanding the program, but perhaps more
    importantly makes it harder to analyze the program. And that's, broadly
    speaking, what computer science is about.

    No. That is what software engineering is all about.

    I don't recall such analysis being in software engineering? Isn't it
    more of a realm of architecture, program design, design patterns, design documentation, and other relevant engineering documentation?

    Computer science is all about theory, elegance and obfuscation.

    But said theory includes analysis, say, complexity analysis. And this
    can be more easily done(*) if the program is adequately structured into functions and isn't a spaghetti mess.

    (*) (That said, this in no way means such analysis is always possible or feasible, merely that it is made easier where possible.)
    --
    Nuno Silva
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From The Natural Philosopher@tnp@invalid.invalid to comp.os.linux.misc on Tue Oct 14 13:02:24 2025
    From Newsgroup: comp.os.linux.misc

    On 14/10/2025 11:42, Nuno Silva wrote:
    On 2025-10-14, The Natural Philosopher wrote:

    On 13/10/2025 23:48, Nuno Silva wrote:
    I think the concern about GOTO as opposed to e.g. a function call where
    supported is that the function call makes it clear where it is called
    and to where it returns, while GOTO does not come with that structure.

    This can have an impact in understanding the program, but perhaps more
    importantly makes it harder to analyze the program. And that's, broadly
    speaking, what computer science is about.

    No. That is what software engineering is all about.

    I don't recall such analysis being in software engineering? Isn't it
    more of a realm of architecture, program design, design patterns, design documentation, and other relevant engineering documentation?

    Program design is where it comes in. The 'make it easy to understand for others and for a future you' leads naturally on yo 'dont spaghetti this
    code unless you also draw a flow chart'

    And once you do draw a flow chart it probably is enough to make you
    realise how to make the code much easier to understand by removing the spaghetti and concentrating on the little meatballs.


    Computer science is all about theory, elegance and obfuscation.

    But said theory includes analysis, say, complexity analysis. And this
    can be more easily done(*) if the program is adequately structured into functions and isn't a spaghetti mess.

    Doesn't mandate it though.

    (*) (That said, this in no way means such analysis is always possible or feasible, merely that it is made easier where possible.)

    --
    rCLPuritanism: The haunting fear that someone, somewhere, may be happy.rCY

    H.L. Mencken, A Mencken Chrestomathy

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Charlie Gibbs@cgibbs@kltpzyxm.invalid to comp.os.linux.misc on Tue Oct 14 17:20:31 2025
    From Newsgroup: comp.os.linux.misc

    On 2025-10-14, The Natural Philosopher <tnp@invalid.invalid> wrote:

    TBH the often sneered at cargo cult method of writing code is often the best,. Find someone else's design, copy it blindly and bugger with it
    till it meets the spec.

    Perhaps, but beware - if you take this as an excuse to not understand
    how it works, you'll be screwed when it breaks.
    --
    /~\ Charlie Gibbs | Growth for the sake of
    \ / <cgibbs@kltpzyxm.invalid> | growth is the ideology
    X I'm really at ac.dekanfrus | of the cancer cell.
    / \ if you read it the right way. | -- Edward Abbey
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From rbowman@bowman@montana.com to comp.os.linux.misc on Tue Oct 14 18:31:31 2025
    From Newsgroup: comp.os.linux.misc

    On Tue, 14 Oct 2025 10:18:33 +0100, The Natural Philosopher wrote:

    On 13/10/2025 19:45, John Ames wrote:
    On Mon, 13 Oct 2025 19:07:50 +0100 The Natural Philosopher
    <tnp@invalid.invalid> wrote:

    The other way to spot CS weenies is their gratuitous use of
    recursion.

    Possibly. It can be elegant. Or not.
    I used it in a maze building program very successfully.

    It definitely has its uses, but CS courses almost never seem to focus
    on the *useful* applications because it's much easier to demonstrate
    the concept with trivial examples like Fibonacci calculation, which is
    dead easy to write but *atrocious* in terms of performance scaling :/

    CS is about the general use of algorithms it seems to me and
    mathematical analysis of them.

    It MIGHT be handy for someone who designs CPUs, or writes compilers, but that's it

    You know you're talking to a CS grad when they mention Big O. That's not
    to say analysis of algorithms isn't important but for many uses that's
    been sorted years ago.

    I'm not convinced it isn't going to blow up but optimization of AI might
    be a useful skill. Even with that we had the fundamentals down back in the '80s but didn't have the hardware to implement more than toy demos.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From rbowman@bowman@montana.com to comp.os.linux.misc on Tue Oct 14 18:50:01 2025
    From Newsgroup: comp.os.linux.misc

    On Tue, 14 Oct 2025 10:31:39 +0100, Pancho wrote:

    On 10/14/25 10:18, The Natural Philosopher wrote:

    Hordes of slightly less than random monkeys can in fact produce
    reasonable results,


    That depends, a lot of huge government projects suggest they can't. It
    seemed to me that projects need a few good programmers to influence what
    is done, and how it is done. This is especially true where something new
    is being developed. A new type of program, not just a variation on
    something done previously.

    https://en.wikipedia.org/wiki/The_Mythical_Man-Month

    The specifics are 50 years out of date but it should be required reading
    for every programmer and project manager. 'Hire more monkeys!' isn't a
    viable strategy.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From rbowman@bowman@montana.com to comp.os.linux.misc on Tue Oct 14 19:02:32 2025
    From Newsgroup: comp.os.linux.misc

    On Tue, 14 Oct 2025 11:08:58 +0100, The Natural Philosopher wrote:

    Proper software houses like IBM or Oracle have teams of analysts who
    look at the problem in depth and write a lot of specs long before any
    hairy assed coder gets his hands on it. cheaper software houses bid on
    it and get the contract but have no real idea how to manage it.

    I worked on one Department of Defense (War) project. There were over a
    year of endless meetings to develop specification document. When it was finally finished the hairy assed coders were to implement it. It didn't
    matter if implementation discovered the beautiful document was bullshit.
    By that time there was so much ego involvement it would be implemented as designed regardless.

    A few high profile projects come to mind. Why do you think the F-35 has
    had endless software problems?

    I also have experience in bidding against companies like Lockheed Martin.
    Of course they won the bid and then had the brass bound balls to approach
    us to subcontract with them as primary since they didn't have a clue.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From rbowman@bowman@montana.com to comp.os.linux.misc on Tue Oct 14 19:08:00 2025
    From Newsgroup: comp.os.linux.misc

    On Tue, 14 Oct 2025 13:02:24 +0100, The Natural Philosopher wrote:

    And once you do draw a flow chart it probably is enough to make you
    realise how to make the code much easier to understand by removing the spaghetti and concentrating on the little meatballs.

    If you listen to the computer science experts you will draw a UML diagram nobody understands.

    https://en.wikipedia.org/wiki/Unified_Modeling_Language
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Nuno Silva@nunojsilva@invalid.invalid to comp.os.linux.misc on Tue Oct 14 23:20:29 2025
    From Newsgroup: comp.os.linux.misc

    On 2025-10-14, rbowman wrote:

    On Tue, 14 Oct 2025 13:02:24 +0100, The Natural Philosopher wrote:

    And once you do draw a flow chart it probably is enough to make you
    realise how to make the code much easier to understand by removing the
    spaghetti and concentrating on the little meatballs.

    If you listen to the computer science experts you will draw a UML diagram nobody understands.

    https://en.wikipedia.org/wiki/Unified_Modeling_Language

    I'm confident UML is from software engineering, not computer science :-P
    --
    Nuno Silva
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Nuno Silva@nunojsilva@invalid.invalid to comp.os.linux.misc on Tue Oct 14 23:27:05 2025
    From Newsgroup: comp.os.linux.misc

    On 2025-10-14, rbowman wrote:

    On Tue, 14 Oct 2025 10:18:33 +0100, The Natural Philosopher wrote:

    On 13/10/2025 19:45, John Ames wrote:
    On Mon, 13 Oct 2025 19:07:50 +0100 The Natural Philosopher
    <tnp@invalid.invalid> wrote:

    The other way to spot CS weenies is their gratuitous use of
    recursion.

    Possibly. It can be elegant. Or not.
    I used it in a maze building program very successfully.

    It definitely has its uses, but CS courses almost never seem to focus
    on the *useful* applications because it's much easier to demonstrate
    the concept with trivial examples like Fibonacci calculation, which is
    dead easy to write but *atrocious* in terms of performance scaling :/

    CS is about the general use of algorithms it seems to me and
    mathematical analysis of them.

    It MIGHT be handy for someone who designs CPUs, or writes compilers, but
    that's it

    You know you're talking to a CS grad when they mention Big O. That's not
    to say analysis of algorithms isn't important but for many uses that's
    been sorted years ago.

    I'm not convinced it isn't going to blow up but optimization of AI might
    be a useful skill. Even with that we had the fundamentals down back in the '80s but didn't have the hardware to implement more than toy demos.

    You really ought to have at least an idea of what complexity is and how
    it may work if you're programming. Or at least it's probably preferrable
    to have some understanding of it than not?

    Learning Big O and friends (for "Big O" is just one of the possible
    bounds in computational complexity) doesn't mean that when writing code
    you end up analyzing every single function for its complexity, it means
    you get some skills to at least part of the time pick a more appropriate solution and, if its complexity goes beyond what is desired, or if you
    want to know its scalability, you can use these tools.

    Worst case you're dealing with a program that is too complex and you
    recall something about this from university lectures and you know what
    to look up.

    (It also doesn't mean you have to read through e.g. CLRS.)
    --
    Nuno Silva
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to comp.os.linux.misc on Tue Oct 14 22:37:09 2025
    From Newsgroup: comp.os.linux.misc

    On Mon, 13 Oct 2025 10:42:50 +0100, The Natural Philosopher wrote:

    What else is try throw and catch?

    Maybe this will help:

    class MyException1(Exception) :
    pass
    #end MyException1

    class MyException2(Exception) :
    pass
    #end MyException2

    def func1() :
    raise MyException1
    #end func1

    def func2() :
    raise MyException2
    #end func2

    def func3() :
    class MyException1(Exception) :
    pass
    #end MyException1

    try :
    func1()
    except MyException1 :
    # will never get here
    print("caught MyException1 in func3")
    #end try
    #end func3

    def func4() :
    try :
    func2()
    except MyException2 :
    print("caught MyException2 in func4")
    #end try
    #end func4

    for f in (func1, func2, func3, func4) :
    try :
    print("* call %s" % f.__name__)
    f()
    except MyException1 :
    print("caught MyException1 at top level")
    except MyException2 :
    print("caught MyException2 at top level")
    #end try
    #end for

    Output:

    * call func1
    caught MyException1 at top level
    * call func2
    caught MyException2 at top level
    * call func3
    caught MyException1 at top level
    * call func4
    caught MyException2 in func4

    Feel free to try and shoehorn that into your rCLgotorCY model.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to comp.os.linux.misc on Tue Oct 14 22:58:48 2025
    From Newsgroup: comp.os.linux.misc

    On Mon, 13 Oct 2025 17:41:32 GMT, Charlie Gibbs wrote:

    It's funny how CS weenies loudly decry the undisciplined use of
    GOTOs, while the undisciplined use of function calls is OK.

    Note that functions as first-class objects are very useful for
    data-driven programming. Which in turn is a great way to reduce the
    amount of code you have to write.

    Less code raA less chance for bugs to get in, and less work to write and maintain. Win-win.

    The other way to spot CS weenies is their gratuitous use of
    recursion.

    How about a recursive generator:

    def permute(seq) :
    "yields successive permutations of the elements of seq."
    if len(seq) == 0 :
    yield ()
    else :
    for i in range(0, len(seq)) :
    for rest in permute(seq[:i] + seq[i + 1:]) :
    yield (seq[i],) + rest
    #end for
    #end for
    #end if
    #end permute

    Example use:

    >>> for e in permute(["red", "green", "blue"]) :
    ... print(e)
    ...
    ('red', 'green', 'blue')
    ('red', 'blue', 'green')
    ('green', 'red', 'blue')
    ('green', 'blue', 'red')
    ('blue', 'red', 'green')
    ('blue', 'green', 'red')
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to comp.os.linux.misc on Tue Oct 14 23:02:20 2025
    From Newsgroup: comp.os.linux.misc

    On Tue, 14 Oct 2025 10:40:46 +0100, The Natural Philosopher wrote:

    I once browsed my local university frequented bookshop for books on
    computer stuff.
    CDS bough things like Knutshg 'fundamental algorithms;' An impenetrable
    and pointless exercise in mathematical analysis.

    I have a copy of rCLSorting and SearchingrCY on my shelf. That was the only volume of his magnum opus I felt worth buying.

    Software engineers or information technologists bought books with
    chapters like
    'planning and management of complex project design' , purpose and implementation of documentation standards' and 'use of test routines'
    'uses and abuses of object orientated philosophy' and so on.

    In other words, what you actually need to write software...in a real
    world

    Anybody who buys a book with rCLphilosophyrCY in the title ... probably shouldnrCOt be allowed to manage a software project.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to comp.os.linux.misc on Tue Oct 14 23:04:43 2025
    From Newsgroup: comp.os.linux.misc

    On Mon, 13 Oct 2025 11:45:36 -0700, John Ames wrote:

    On Mon, 13 Oct 2025 19:07:50 +0100 The Natural Philosopher <tnp@invalid.invalid> wrote:

    The other way to spot CS weenies is their gratuitous use of
    recursion.

    Possibly. It can be elegant. Or not.
    I used it in a maze building program very successfully.

    It definitely has its uses, but CS courses almost never seem to focus on
    the *useful* applications because it's much easier to demonstrate the
    concept with trivial examples like Fibonacci calculation, which is dead
    easy to write but *atrocious* in terms of performance scaling :/

    My first exposure to recursion was not Fibonacci, but AckermannrCOs
    function.

    Feel free to try to come up with a non-recursive implementation of
    that. ;)
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to comp.os.linux.misc on Tue Oct 14 23:09:20 2025
    From Newsgroup: comp.os.linux.misc

    On Mon, 13 Oct 2025 17:41:32 GMT, Charlie Gibbs wrote:

    The other way to spot CS weenies is their gratuitous use of recursion.

    HererCOs a new one for you: rCLprimitive recursiverCY.

    IrCOve been doing some clever things with geometry nodes in Blender lately. ItrCOs a dataflow programming language, but itrCOs not fully Turing- equivalent. What it is, is primitive recursive.

    Here <https://www.youtube.com/watch?v=duQgFBdmamk> is but one relatively simple example of what they can do.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to comp.os.linux.misc on Tue Oct 14 23:11:13 2025
    From Newsgroup: comp.os.linux.misc

    On Tue, 14 Oct 2025 11:08:58 +0100, The Natural Philosopher wrote:

    Proper software houses like IBM or Oracle have teams of analysts who
    look at the problem in depth and write a lot of specs long before any
    hairy assed coder gets his hands on it.

    Those are the sorts of mega-projects that invariably go way over schedule
    and budget.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Charlie Gibbs@cgibbs@kltpzyxm.invalid to comp.os.linux.misc on Tue Oct 14 23:31:44 2025
    From Newsgroup: comp.os.linux.misc

    On 2025-10-14, Lawrence DrCOOliveiro <ldo@nz.invalid> wrote:

    Anybody who buys a book with rCLphilosophyrCY in the title ... probably shouldnrCOt be allowed to manage a software project.

    Ironically, an elective course on logic that I
    took in university was labeled "Philosophy 302".
    That's where I learned about things like De Morgan's
    theorem, which comes in quite handy for programming.
    --
    /~\ Charlie Gibbs | Growth for the sake of
    \ / <cgibbs@kltpzyxm.invalid> | growth is the ideology
    X I'm really at ac.dekanfrus | of the cancer cell.
    / \ if you read it the right way. | -- Edward Abbey
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From c186282@c186282@nnada.net to comp.os.linux.misc on Tue Oct 14 19:34:20 2025
    From Newsgroup: comp.os.linux.misc

    On 10/14/25 02:36, rbowman wrote:
    On Tue, 14 Oct 2025 01:44:08 -0400, c186282 wrote:

    On 10/13/25 14:22, Charlie Gibbs wrote:
    On 2025-10-13, The Natural Philosopher <tnp@invalid.invalid> wrote:

    On 13/10/2025 18:41, Charlie Gibbs wrote:

    The other way to spot CS weenies is their gratuitous use of
    recursion.

    Possibly. It can be elegant. Or not.
    I used it in a maze building program very successfully.

    That's why I included the word "gratuitous" above.

    I once wrote an assembler for the Univac 90/30 (sort of like the IBM
    360). To test the macro processor I wrote a recursive Towers of Hanoi
    macro. It generated no code,
    just a bunch of MNOTEs telling you where to move the disks.
    The program listing itself was the solution.

    Recursion is FUN - if you have the stack/mem to spare. Once wrote an
    n-field sort routine that relied on recursion. Nice, small,
    satisfying.

    But yea, it CAN become stupid. Often a straight-on approach is
    quicker and simpler.

    CS isn't "practical programming" - not at all.

    It's the same as any other relationship between science and engineering.
    You don't want a physicist designing a bridge although the basis of civil engineering is physics. There are universities that offer BS and MSE
    programs in software engineering. I don't know how much they differ from
    the computer science programs. The local university offers CS and I'm not overly impressed but technology isn't really their forte.

    I suppose there's nothing wrong with CS ... but
    on the flip, how much good or good stuff comes
    it either ?

    CS is just a branch of theoretical math. I'd like
    some figures on how many CS people can write a
    good old "Hello World".

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From vallor@vallor@vallor.earth to comp.os.linux.misc on Tue Oct 14 23:41:31 2025
    From Newsgroup: comp.os.linux.misc

    At Mon, 13 Oct 2025 03:07:58 -0400, c186282 <c186282@nnada.net> wrote:

    On 10/11/25 09:26, apapmurray wrote:
    On 10/10/2025 06:30, c186282 wrote:
    -a-a Me, I just un-installed 'sudo'. I've always seen it
    -a-a as a kind of stupid work-around to proper security
    -a-a anyway. Open a terminal and 'su' instead.

    I use sudo out of habit, never really thought about it. I suppose I
    could keep an authenticated session alive and set TMOUT to a
    reasonable value. Or maybe try run0 for the first time ever since I
    use systemd.

    Sudo basically trashes the user-sep concept
    in Linux. Really you should NOT install it.

    Okay, I'll bite: What solution do you have to manage multiple
    users who need "root" privileges, without giving everybody
    the root password?

    The only other one I can think of is using multiple ssh
    public keys, and setting environment variables (and potentially
    a command list) based on the user's key. That can be done, but
    has the disadvantage that everybody is running around with
    a root shell, rather than running "sudo admin command".

    (Ignoring "sudo -i", which is helpful in some cases.)
    --
    -v System76 Thelio Mega v1.1 x86_64 NVIDIA RTX 3090Ti 24G
    OS: Linux 6.17.2 D: Mint 22.2 DE: Xfce 4.18
    NVIDIA: 580.95.05 Mem: 258G
    "Back Up My Hard Drive? I Can't Find The Reverse Switch!"
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From c186282@c186282@nnada.net to comp.os.linux.misc on Tue Oct 14 20:57:41 2025
    From Newsgroup: comp.os.linux.misc

    On 10/14/25 03:21, Pancho wrote:
    On 10/14/25 01:30, rbowman wrote:
    On Mon, 13 Oct 2025 23:48:55 +0100, Nuno Silva wrote:

    I think the concern about GOTO as opposed to e.g. a function call where
    supported is that the function call makes it clear where it is called
    and to where it returns, while GOTO does not come with that structure.

    It's nowhere near as much fun as siglongjmp() :).

    Other than the bad old days of FORTRAN my goto use is local to the
    function, something like:

    if (test_failed) {
    -a-a-a-a goto exit;
    }

    It allows the function to have one entrance and one exit without the
    convoluted and deeply nested conditionals that might be needed otherwise.
    I think TNP pointed out in assembler all you have is JMP and its friends.

    By the time I came to look at an assembler (6502), it had jump
    subroutine JSR. I can't remember about pushing parameters on the stack.

    https://www.nesdev.org/wiki/6502_cycle_times

    JSR uses six cycles while JMP uses three, in
    odd cases five.

    A big seller for those old units was video games
    and the CPUs were pretty marginal - so saving any
    cycles would usually be a priority.

    According to :

    http://www.6502.org/users/obelisk/6502/instructions.html

    TSX Transfer stack pointer to X N,Z
    TXS Transfer X to stack pointer
    PHA Push accumulator on stack
    PHP Push processor status on stack
    PLA Pull accumulator from stack N,Z
    PLP Pull processor status from stack All

    You could load the accumulator, push its value on
    the (tiny) stack, and then get it back inside
    the sub. Normally you'd also want to push all
    the registers on the stack too, and retrieve
    them on return from the sub. Again, lots of
    cycles. Kind of forget recursion too, the stack
    was both small and of fixed size. You could
    make your own FakeStack in RAM as a global
    and manage it yourself. Not as fast though.

    So, generally, where-ever practical, try to
    use JMP.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to comp.os.linux.misc on Wed Oct 15 01:25:04 2025
    From Newsgroup: comp.os.linux.misc

    On Tue, 14 Oct 2025 23:31:44 GMT, Charlie Gibbs wrote:

    On 2025-10-14, Lawrence DrCOOliveiro <ldo@nz.invalid> wrote:

    Anybody who buys a book with rCLphilosophyrCY in the title ... probably
    shouldnrCOt be allowed to manage a software project.

    Ironically, an elective course on logic that I took in university was
    labeled "Philosophy 302".
    That's where I learned about things like De Morgan's theorem, which
    comes in quite handy for programming.

    I didnrCOt think philosphers believed in logic ... ;)

    I found an explanation of De MorganrCOs Theorem in a book on computing hardware, I think it was. Hard to believe you can find people who write software, who donrCOt understand it. I remember on the Python group some
    years ago getting into an argument with someone who didnrCOt seem to appreciate that the opposite of

    a = b re? a = c

    was not

    a rea b re? a rea c

    but

    a rea b reo a rea c
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From c186282@c186282@nnada.net to comp.os.linux.misc on Tue Oct 14 21:29:47 2025
    From Newsgroup: comp.os.linux.misc

    On 10/14/25 05:18, The Natural Philosopher wrote:
    On 13/10/2025 19:45, John Ames wrote:
    On Mon, 13 Oct 2025 19:07:50 +0100
    The Natural Philosopher <tnp@invalid.invalid> wrote:

    The other way to spot CS weenies is their gratuitous use of
    recursion.

    Possibly. It can be elegant. Or not.
    I used it in a maze building program very successfully.

    It definitely has its uses, but CS courses almost never seem to focus
    on the *useful* applications because it's much easier to demonstrate
    the concept with trivial examples like Fibonacci calculation, which is
    dead easy to write but *atrocious* in terms of performance scaling :/

    CS is about the general use of algorithms it seems to me and
    mathematical analysis of them.

    It MIGHT be handy for someone who designs CPUs, or writes compilers, but that's it

    Turing's theoretical work was valuable, but that
    was WAY back at the beginning. Today CS is mostly
    just a cool-sounding degree one step above ancient
    Sumerian basket-weaving :-)


    TBH the often sneered at cargo cult method of writing code is often the best,. Find someone else's design, copy it blindly-a and bugger with it
    till it meets the spec.

    Today that IS the fastest way. SO many good little
    examples, oft with cryptic syntax/params, that can
    be tweaked a bit to fit the particular need. Not
    going to try and learn everything about TCP stacks
    and sockets in Python - just find/cut/paste/tweak.
    Gotta have the brains to tweak properly however ...
    nine lines of example might need to be fleshed out
    into 50+ lines to be very useful.

    As someone remarked to me 'the reason a bricklayer is so crap is because
    if he were any good he wouldn't be laying bricks'...

    Crap ? The building has to not fall down AND
    look good. Doing the bricks properly is a big
    part of that ! Don't cuss the tradesmen with
    a roof over your head.

    There are many flavors of "intelligence" - and
    they are not limited to math and programming.
    The collective multi-faceted sensibility yields
    superior results quickly.

    Hordes of slightly less than random monkeys can in fact produce
    reasonable results,

    IF you've got 100 million years for yer brick
    shithouse to take shape :-)

    Hmmm ... you could cultivate a huge termite mound
    and then hollow it out ...


    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From c186282@c186282@nnada.net to comp.os.linux.misc on Tue Oct 14 21:46:32 2025
    From Newsgroup: comp.os.linux.misc

    On 10/14/25 15:02, rbowman wrote:
    On Tue, 14 Oct 2025 11:08:58 +0100, The Natural Philosopher wrote:

    Proper software houses like IBM or Oracle have teams of analysts who
    look at the problem in depth and write a lot of specs long before any
    hairy assed coder gets his hands on it. cheaper software houses bid on
    it and get the contract but have no real idea how to manage it.

    I worked on one Department of Defense (War) project. There were over a
    year of endless meetings to develop specification document. When it was finally finished the hairy assed coders were to implement it. It didn't matter if implementation discovered the beautiful document was bullshit.
    By that time there was so much ego involvement it would be implemented as designed regardless.

    A few high profile projects come to mind. Why do you think the F-35 has
    had endless software problems?

    I also have experience in bidding against companies like Lockheed Martin.
    Of course they won the bid and then had the brass bound balls to approach
    us to subcontract with them as primary since they didn't have a clue.

    Well ... govt projects are meant to employ as many
    govt workers as possible for as long as possible :-)

    Look into Ada ... not only hyper-anal unto itself
    but, as mentioned, every tiny thing involved
    committees of people writing micro-fine specs
    and goals that might not be achievable with
    that preferred/required language.

    Wonder what the suicide/insanity rate is amongst
    govt Ada programmers ?

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From c186282@c186282@nnada.net to comp.os.linux.misc on Tue Oct 14 22:57:29 2025
    From Newsgroup: comp.os.linux.misc

    On 10/14/25 21:25, Lawrence DrCOOliveiro wrote:
    On Tue, 14 Oct 2025 23:31:44 GMT, Charlie Gibbs wrote:

    On 2025-10-14, Lawrence DrCOOliveiro <ldo@nz.invalid> wrote:

    Anybody who buys a book with rCLphilosophyrCY in the title ... probably
    shouldnrCOt be allowed to manage a software project.

    Ironically, an elective course on logic that I took in university was
    labeled "Philosophy 302".
    That's where I learned about things like De Morgan's theorem, which
    comes in quite handy for programming.

    I didnrCOt think philosphers believed in logic ... ;)

    I found an explanation of De MorganrCOs Theorem in a book on computing hardware, I think it was. Hard to believe you can find people who write software, who donrCOt understand it. I remember on the Python group some years ago getting into an argument with someone who didnrCOt seem to appreciate that the opposite of

    a = b re? a = c

    was not

    a rea b re? a rea c

    but

    a rea b reo a rea c

    Never even heard of DeMorgan ... but I've fooled
    around enough with ands/ors/nands/xors to know
    what you're talking about. Wrote nice little,
    not 'encryption' but 'obfuscator', app for use
    in the company. The goals were to mush things
    up enough so nobody there would even try to
    decode it BUT if you did understand the process
    you COULD (in a bit) decode it even if you
    lost the password. Not everything needs to
    be spook-proof.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From c186282@c186282@nnada.net to comp.os.linux.misc on Wed Oct 15 00:15:49 2025
    From Newsgroup: comp.os.linux.misc

    On 10/14/25 19:41, vallor wrote:
    At Mon, 13 Oct 2025 03:07:58 -0400, c186282 <c186282@nnada.net> wrote:

    On 10/11/25 09:26, apapmurray wrote:
    On 10/10/2025 06:30, c186282 wrote:
    -a-a Me, I just un-installed 'sudo'. I've always seen it
    -a-a as a kind of stupid work-around to proper security
    -a-a anyway. Open a terminal and 'su' instead.

    I use sudo out of habit, never really thought about it. I suppose I
    could keep an authenticated session alive and set TMOUT to a
    reasonable value. Or maybe try run0 for the first time ever since I
    use systemd.

    Sudo basically trashes the user-sep concept
    in Linux. Really you should NOT install it.

    Okay, I'll bite: What solution do you have to manage multiple
    users who need "root" privileges, without giving everybody
    the root password?

    If they "need" it then you give them the root PW.

    If they don't "need" it then tuff titty.


    The only other one I can think of is using multiple ssh
    public keys, and setting environment variables (and potentially
    a command list) based on the user's key. That can be done, but
    has the disadvantage that everybody is running around with
    a root shell, rather than running "sudo admin command".

    (Ignoring "sudo -i", which is helpful in some cases.)


    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From vallor@vallor@vallor.earth to comp.os.linux.misc on Wed Oct 15 04:32:42 2025
    From Newsgroup: comp.os.linux.misc

    At Wed, 15 Oct 2025 00:15:49 -0400, c186282 <c186282@nnada.net> wrote:

    On 10/14/25 19:41, vallor wrote:
    At Mon, 13 Oct 2025 03:07:58 -0400, c186282 <c186282@nnada.net>
    wrote:

    On 10/11/25 09:26, apapmurray wrote:
    On 10/10/2025 06:30, c186282 wrote:
    -a-a Me, I just un-installed 'sudo'. I've always seen it
    -a-a as a kind of stupid work-around to proper security
    -a-a anyway. Open a terminal and 'su' instead.

    I use sudo out of habit, never really thought about it. I suppose
    I could keep an authenticated session alive and set TMOUT to a
    reasonable value. Or maybe try run0 for the first time ever since
    I use systemd.

    Sudo basically trashes the user-sep concept
    in Linux. Really you should NOT install it.

    Okay, I'll bite: What solution do you have to manage multiple
    users who need "root" privileges, without giving everybody
    the root password?

    If they "need" it then you give them the root PW.

    If they don't "need" it then tuff titty.

    I think you're making this up as you go along...

    But, I'll bite again: why have a root password? Debian-based
    systems come without one by default.

    And if a root-enabled user leaves the company, there you are,
    changing the root password on hundreds of hosts.

    (I have 34 years experience with large installation systems administration...it's not a trivial problem, and deserves
    some thought.)



    The only other one I can think of is using multiple ssh
    public keys, and setting environment variables (and potentially
    a command list) based on the user's key. That can be done, but
    has the disadvantage that everybody is running around with
    a root shell, rather than running "sudo admin command".

    (Ignoring "sudo -i", which is helpful in some cases.)

    --
    -v System76 Thelio Mega v1.1 x86_64 NVIDIA RTX 3090Ti 24G
    OS: Linux 6.17.2 D: Mint 22.2 DE: Xfce 4.18
    NVIDIA: 580.95.05 Mem: 258G
    "Ideas are not responsible for their followers!"
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From rbowman@bowman@montana.com to comp.os.linux.misc on Wed Oct 15 04:40:46 2025
    From Newsgroup: comp.os.linux.misc

    On Tue, 14 Oct 2025 23:27:05 +0100, Nuno Silva wrote:

    Worst case you're dealing with a program that is too complex and you
    recall something about this from university lectures and you know what
    to look up.

    When I learned FORTRAN IV in '65 it wasn't considered 'computer science'
    but a technique like using a slide rule. I think Dartmouth was the first university to consider it more than the bastard child of the math
    department.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From rbowman@bowman@montana.com to comp.os.linux.misc on Wed Oct 15 04:46:15 2025
    From Newsgroup: comp.os.linux.misc

    On Tue, 14 Oct 2025 21:46:32 -0400, c186282 wrote:

    Look into Ada ... not only hyper-anal unto itself but, as mentioned,
    every tiny thing involved committees of people writing micro-fine
    specs and goals that might not be achievable with that
    preferred/required language.

    No thanks. My memories of Ada are from the '80s. Pre-LinkIn etc the Sunday Boston Globe was the go-to for technical job offerings. There were ads for
    Ada programmers with three years of experience. At the time there wasn't a working Ada compiler. Some things never change.

    There were also the ads with a long list of qualifications and a
    ridiculously low starting salary from companies that were angling for a
    H-1B allotment. As I said...

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From rbowman@bowman@montana.com to comp.os.linux.misc on Wed Oct 15 05:10:44 2025
    From Newsgroup: comp.os.linux.misc

    On Tue, 14 Oct 2025 23:02:20 -0000 (UTC), Lawrence DrCOOliveiro wrote:

    Anybody who buys a book with rCLphilosophyrCY in the title ... probably shouldnrCOt be allowed to manage a software project.

    You can tell a book by it's cover. If it has a dragon, it's okay.

    https://en.wikipedia.org/wiki/Compilers:_Principles,_Techniques,_and_Tools

    That doesn't always work. The wizard book was interesting in a warped sort
    of fashion but being introduced to programming with Scheme might engender mental illness in later life.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From rbowman@bowman@montana.com to comp.os.linux.misc on Wed Oct 15 05:04:12 2025
    From Newsgroup: comp.os.linux.misc

    On Tue, 14 Oct 2025 23:41:31 +0000, vallor wrote:

    Okay, I'll bite: What solution do you have to manage multiple users who
    need "root" privileges, without giving everybody the root password?

    I don't know if it preceded sudo but we had a hack called gosu. Everyone compiled it using their own credentials but then became root to run chmod 4755. Super secure but it didn't matter. The root password for all AIX and Linux boxes was a certain star in the Wolf system.

    I was confused with my first Linux install that didn't really have a root password. Prior to that I can't remember the distro, maybe SUSE, but when
    you were running as root the wallpaper changed to a red background with
    black cartoon bombs with burning fuses. Someone had a sense of humor.

    There were occasional mishaps. One guy on an AIX box ran out of room and deleted AIX's equivalent of /usr/bin. I forget what the directory was
    called but it didn't *sound* that important.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From rbowman@bowman@montana.com to comp.os.linux.misc on Wed Oct 15 05:23:21 2025
    From Newsgroup: comp.os.linux.misc

    On Tue, 14 Oct 2025 23:31:44 GMT, Charlie Gibbs wrote:

    On 2025-10-14, Lawrence DrCOOliveiro <ldo@nz.invalid> wrote:

    Anybody who buys a book with rCLphilosophyrCY in the title ... probably
    shouldnrCOt be allowed to manage a software project.

    Ironically, an elective course on logic that I took in university was
    labeled "Philosophy 302".
    That's where I learned about things like De Morgan's theorem, which
    comes in quite handy for programming.

    Wirth's 'Digital Circuit Design for Computer Science Students' uses it to simplify gates. It's all logic after all. I started my career designing industrial controls with ice cube relays, electromechanical timers, push buttons, and limit switches. Same thing.

    Funny thing is I was never very good at formal logic derivations.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From rbowman@bowman@montana.com to comp.os.linux.misc on Wed Oct 15 05:27:10 2025
    From Newsgroup: comp.os.linux.misc

    On Wed, 15 Oct 2025 01:25:04 -0000 (UTC), Lawrence DrCOOliveiro wrote:

    On Tue, 14 Oct 2025 23:31:44 GMT, Charlie Gibbs wrote:

    On 2025-10-14, Lawrence DrCOOliveiro <ldo@nz.invalid> wrote:

    Anybody who buys a book with rCLphilosophyrCY in the title ... probably
    shouldnrCOt be allowed to manage a software project.

    Ironically, an elective course on logic that I took in university was
    labeled "Philosophy 302".
    That's where I learned about things like De Morgan's theorem, which
    comes in quite handy for programming.

    I didnrCOt think philosphers believed in logic ... ;)

    I found an explanation of De MorganrCOs Theorem in a book on computing hardware, I think it was. Hard to believe you can find people who write software, who donrCOt understand it. I remember on the Python group some years ago getting into an argument with someone who didnrCOt seem to appreciate that the opposite of

    a = b re? a = c

    was not

    a rea b re? a rea c

    but

    a rea b reo a rea c

    As I said, I always sucked at formal logic. For me logic is verbal, not mathematical and I can never remember what all the weird little symbols
    mean.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Charlie Gibbs@cgibbs@kltpzyxm.invalid to comp.os.linux.misc on Wed Oct 15 05:36:24 2025
    From Newsgroup: comp.os.linux.misc

    On 2025-10-15, c186282 <c186282@nnada.net> wrote:

    On 10/14/25 05:18, The Natural Philosopher wrote:

    TBH the often sneered at cargo cult method of writing code is often the
    best,. Find someone else's design, copy it blindly-a and bugger with it
    till it meets the spec.

    Today that IS the fastest way. SO many good little
    examples, oft with cryptic syntax/params, that can
    be tweaked a bit to fit the particular need. Not
    going to try and learn everything about TCP stacks
    and sockets in Python - just find/cut/paste/tweak.
    Gotta have the brains to tweak properly however ...
    nine lines of example might need to be fleshed out
    into 50+ lines to be very useful.

    My personal C library contains functions to do my favourite
    socket operations (e.g. create a socket and establish a
    TCP/IP connection, with flags specifying whether it's
    blocking or not). Takes a lot of the work out of it.
    --
    /~\ Charlie Gibbs | Growth for the sake of
    \ / <cgibbs@kltpzyxm.invalid> | growth is the ideology
    X I'm really at ac.dekanfrus | of the cancer cell.
    / \ if you read it the right way. | -- Edward Abbey
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Charlie Gibbs@cgibbs@kltpzyxm.invalid to comp.os.linux.misc on Wed Oct 15 05:36:25 2025
    From Newsgroup: comp.os.linux.misc

    On 2025-10-15, Lawrence DrCOOliveiro <ldo@nz.invalid> wrote:

    On Tue, 14 Oct 2025 23:31:44 GMT, Charlie Gibbs wrote:

    On 2025-10-14, Lawrence DrCOOliveiro <ldo@nz.invalid> wrote:

    Anybody who buys a book with rCLphilosophyrCY in the title ... probably
    shouldnrCOt be allowed to manage a software project.

    Ironically, an elective course on logic that I took in university was
    labeled "Philosophy 302".
    That's where I learned about things like De Morgan's theorem, which
    comes in quite handy for programming.

    I didnrCOt think philosphers believed in logic ... ;)

    I found an explanation of De MorganrCOs Theorem in a book on computing hardware, I think it was. Hard to believe you can find people who write software, who donrCOt understand it. I remember on the Python group some years ago getting into an argument with someone who didnrCOt seem to appreciate that the opposite of

    a = b re? a = c

    was not

    a rea b re? a rea c

    but

    a rea b reo a rea c

    Did you rub his nose in a counter-example? That's _so_ much fun. :-)
    --
    /~\ Charlie Gibbs | Growth for the sake of
    \ / <cgibbs@kltpzyxm.invalid> | growth is the ideology
    X I'm really at ac.dekanfrus | of the cancer cell.
    / \ if you read it the right way. | -- Edward Abbey
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Charlie Gibbs@cgibbs@kltpzyxm.invalid to comp.os.linux.misc on Wed Oct 15 05:36:25 2025
    From Newsgroup: comp.os.linux.misc

    On 2025-10-15, rbowman <bowman@montana.com> wrote:

    On Tue, 14 Oct 2025 21:46:32 -0400, c186282 wrote:

    Look into Ada ... not only hyper-anal unto itself but, as mentioned,
    every tiny thing involved committees of people writing micro-fine
    specs and goals that might not be achievable with that
    preferred/required language.

    No thanks. My memories of Ada are from the '80s. Pre-LinkIn etc the Sunday Boston Globe was the go-to for technical job offerings. There were ads for Ada programmers with three years of experience. At the time there wasn't a working Ada compiler. Some things never change.

    Sort of like the ads in 1996 for Windows 95 programmers with three years
    of experience. :-)
    --
    /~\ Charlie Gibbs | Growth for the sake of
    \ / <cgibbs@kltpzyxm.invalid> | growth is the ideology
    X I'm really at ac.dekanfrus | of the cancer cell.
    / \ if you read it the right way. | -- Edward Abbey
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Charlie Gibbs@cgibbs@kltpzyxm.invalid to comp.os.linux.misc on Wed Oct 15 05:36:27 2025
    From Newsgroup: comp.os.linux.misc

    On 2025-10-15, rbowman <bowman@montana.com> wrote:

    On Tue, 14 Oct 2025 23:27:05 +0100, Nuno Silva wrote:

    Worst case you're dealing with a program that is too complex and you
    recall something about this from university lectures and you know what
    to look up.

    When I learned FORTRAN IV in '65 it wasn't considered 'computer science'
    but a technique like using a slide rule. I think Dartmouth was the first university to consider it more than the bastard child of the math department.

    Yep, when I was at UBC (1968-1971), computer science was a
    division of the math department. It became a department of
    its own shortly after I left.
    --
    /~\ Charlie Gibbs | Growth for the sake of
    \ / <cgibbs@kltpzyxm.invalid> | growth is the ideology
    X I'm really at ac.dekanfrus | of the cancer cell.
    / \ if you read it the right way. | -- Edward Abbey
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From rbowman@bowman@montana.com to comp.os.linux.misc on Wed Oct 15 05:42:04 2025
    From Newsgroup: comp.os.linux.misc

    On Tue, 14 Oct 2025 21:29:47 -0400, c186282 wrote:

    Today that IS the fastest way. SO many good little examples, oft with
    cryptic syntax/params, that can be tweaked a bit to fit the
    particular need. Not going to try and learn everything about TCP
    stacks and sockets in Python - just find/cut/paste/tweak. Gotta have
    the brains to tweak properly however ...
    nine lines of example might need to be fleshed out into 50+ lines to
    be very useful.

    Most of the interfaces I written were done with sockets in C, mostly TCP
    with some UDP. It transfers to Python nicely. Of course I include a C file with all the gethostbyname() and sock structure boiler plate to get a
    socket handle. Python hides most of that twiddling.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From rbowman@bowman@montana.com to comp.os.linux.misc on Wed Oct 15 05:53:48 2025
    From Newsgroup: comp.os.linux.misc

    On Tue, 14 Oct 2025 23:20:29 +0100, Nuno Silva wrote:

    On 2025-10-14, rbowman wrote:

    On Tue, 14 Oct 2025 13:02:24 +0100, The Natural Philosopher wrote:

    And once you do draw a flow chart it probably is enough to make you
    realise how to make the code much easier to understand by removing the
    spaghetti and concentrating on the little meatballs.

    If you listen to the computer science experts you will draw a UML
    diagram nobody understands.

    https://en.wikipedia.org/wiki/Unified_Modeling_Language

    I'm confident UML is from software engineering, not computer science :-P

    Rumbaugh's Ph.D is in computer science. It only takes one bad apple. Booch
    and Jacobson both have backgrounds in electrical engineering.

    I think OMT is all on Rumbaugh and that was upstream of UML. I think I
    have 'Object-Oriented Modeling and Design' around here someplace. All I remember is it wasn't a page turner.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From c186282@c186282@nnada.net to comp.os.linux.misc on Wed Oct 15 03:41:41 2025
    From Newsgroup: comp.os.linux.misc

    On 10/15/25 01:36, Charlie Gibbs wrote:
    On 2025-10-15, c186282 <c186282@nnada.net> wrote:

    On 10/14/25 05:18, The Natural Philosopher wrote:

    TBH the often sneered at cargo cult method of writing code is often the
    best,. Find someone else's design, copy it blindly-a and bugger with it
    till it meets the spec.

    Today that IS the fastest way. SO many good little
    examples, oft with cryptic syntax/params, that can
    be tweaked a bit to fit the particular need. Not
    going to try and learn everything about TCP stacks
    and sockets in Python - just find/cut/paste/tweak.
    Gotta have the brains to tweak properly however ...
    nine lines of example might need to be fleshed out
    into 50+ lines to be very useful.

    My personal C library contains functions to do my favourite
    socket operations (e.g. create a socket and establish a
    TCP/IP connection, with flags specifying whether it's
    blocking or not). Takes a lot of the work out of it.

    I have similar stuff - 'C' and Python. Beats
    re-inventing the wheel every time.

    The net has the code snippets to solve any
    problem (if you can find them) - so take full
    advantage. Somebody out there probably thought
    up a way to do it better than you, so ...

    Like any tech, coding builds on itself, better
    and smarter each iteration.

    Well, maybe until now ... "AI" will do most of
    the coding from now on and the humans will need
    to know less and less about the nuts and bolts.
    It all soon becomes "magic".

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From The Natural Philosopher@tnp@invalid.invalid to comp.os.linux.misc on Wed Oct 15 12:08:49 2025
    From Newsgroup: comp.os.linux.misc

    On 14/10/2025 18:20, Charlie Gibbs wrote:
    On 2025-10-14, The Natural Philosopher <tnp@invalid.invalid> wrote:

    TBH the often sneered at cargo cult method of writing code is often the
    best,. Find someone else's design, copy it blindly and bugger with it
    till it meets the spec.

    Perhaps, but beware - if you take this as an excuse to not understand
    how it works, you'll be screwed when it breaks.

    When it breaks the conditions under which it breaks are given back to
    the designer and a new test added. The designer then fiddles till it
    passes *all* the new tests.

    Only if that fails does a competent person get employed to fix it.
    Competent people are rare on any payroll.

    I'm not saying it should be this way: Just that it is.
    --
    Karl Marx said religion is the opium of the people.
    But Marxism is the crack cocaine.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From The Natural Philosopher@tnp@invalid.invalid to comp.os.linux.misc on Wed Oct 15 12:13:05 2025
    From Newsgroup: comp.os.linux.misc

    On 14/10/2025 19:50, rbowman wrote:
    On Tue, 14 Oct 2025 10:31:39 +0100, Pancho wrote:

    On 10/14/25 10:18, The Natural Philosopher wrote:

    Hordes of slightly less than random monkeys can in fact produce
    reasonable results,


    That depends, a lot of huge government projects suggest they can't. It
    seemed to me that projects need a few good programmers to influence what
    is done, and how it is done. This is especially true where something new
    is being developed. A new type of program, not just a variation on
    something done previously.

    https://en.wikipedia.org/wiki/The_Mythical_Man-Month

    The specifics are 50 years out of date but it should be required reading
    for every programmer and project manager. 'Hire more monkeys!' isn't a
    viable strategy.
    I was on a project that had been specified by a compsci. We had nearly
    50 people coding. No one knew what was going on. I remember saying to
    the only other guy who seemed to be an experienced programmer 'You and I
    could write this in 6 months if we threw away this stupid specification
    and started again'

    He agreed.
    --
    rCLPolitics is the art of looking for trouble, finding it everywhere, diagnosing it incorrectly and applying the wrong remedies.rCY
    rCo Groucho Marx

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From The Natural Philosopher@tnp@invalid.invalid to comp.os.linux.misc on Wed Oct 15 12:13:54 2025
    From Newsgroup: comp.os.linux.misc

    On 14/10/2025 20:02, rbowman wrote:
    I also have experience in bidding against companies like Lockheed Martin.
    Of course they won the bid and then had the brass bound balls to approach
    us to subcontract with them as primary since they didn't have a clue.

    Less brass balls than a great deal of business sense...
    --
    rCLThe ultimate result of shielding men from the effects of folly is to
    fill the world with fools.rCY

    Herbert Spencer

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From The Natural Philosopher@tnp@invalid.invalid to comp.os.linux.misc on Wed Oct 15 12:16:21 2025
    From Newsgroup: comp.os.linux.misc

    On 14/10/2025 23:20, Nuno Silva wrote:
    On 2025-10-14, rbowman wrote:

    On Tue, 14 Oct 2025 13:02:24 +0100, The Natural Philosopher wrote:

    And once you do draw a flow chart it probably is enough to make you
    realise how to make the code much easier to understand by removing the
    spaghetti and concentrating on the little meatballs.

    If you listen to the computer science experts you will draw a UML diagram
    nobody understands.

    https://en.wikipedia.org/wiki/Unified_Modeling_Language

    I'm confident UML is from software engineering, not computer science :-P

    Judging by the use of BigWordsrao it is firmly CompSci.
    --
    rCLThe ultimate result of shielding men from the effects of folly is to
    fill the world with fools.rCY

    Herbert Spencer

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From The Natural Philosopher@tnp@invalid.invalid to comp.os.linux.misc on Wed Oct 15 12:18:22 2025
    From Newsgroup: comp.os.linux.misc

    On 15/10/2025 06:27, rbowman wrote:
    As I said, I always sucked at formal logic. For me logic is verbal, not mathematical and I can never remember what all the weird little symbols
    mean.
    They actually *mean* something?
    --
    rCLThe urge to save humanity is almost always only a false face for the
    urge to rule it.rCY
    rCo H. L. Mencken

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From The Natural Philosopher@tnp@invalid.invalid to comp.os.linux.misc on Wed Oct 15 12:24:27 2025
    From Newsgroup: comp.os.linux.misc

    On 15/10/2025 00:34, c186282 wrote:
    I suppose there's nothing wrong with CS ... but
    -a on the flip, how much good or good stuff comes
    -a it either ?

    -a CS is just a branch of theoretical math. I'd like
    -a some figures on how many CS people can write a
    -a good old "Hello World".

    None. Formal programming languages don't contain IO.

    My engineering course contained an interesting, but almost completely
    useless course in quantum states with respect to how semiconductors
    work. Sometimes it was handy when things broke.

    Yet a friend in the year below me went on to designing NAND flash in California...all about quantum level stuff

    ..whilst another gave up engineering moved to philosophy and became a successful company director 'The metaphysics of business is...interesting',

    You never know when some random fact from University may prove useful...
    --
    rCLThe urge to save humanity is almost always only a false face for the
    urge to rule it.rCY
    rCo H. L. Mencken

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From The Natural Philosopher@tnp@invalid.invalid to comp.os.linux.misc on Wed Oct 15 12:26:49 2025
    From Newsgroup: comp.os.linux.misc

    On 15/10/2025 00:41, vallor wrote:
    Okay, I'll bite: What solution do you have to manage multiple
    users who need "root" privileges, without giving everybody
    the root password?

    Most people here are single user admins.

    Even those managing large online servers rarely have more than a couple
    of 'users'...

    That is dome at a different level in the web applications
    --
    rCLwhen things get difficult you just have to lierCY

    rCo Jean Claud J|+ncker

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From The Natural Philosopher@tnp@invalid.invalid to comp.os.linux.misc on Wed Oct 15 12:29:00 2025
    From Newsgroup: comp.os.linux.misc

    On 15/10/2025 05:15, c186282 wrote:
    On 10/14/25 19:41, vallor wrote:
    At Mon, 13 Oct 2025 03:07:58 -0400, c186282 <c186282@nnada.net> wrote:

    On 10/11/25 09:26, apapmurray wrote:
    On 10/10/2025 06:30, c186282 wrote:
    -a-a-a Me, I just un-installed 'sudo'. I've always seen it
    -a-a-a as a kind of stupid work-around to proper security
    -a-a-a anyway. Open a terminal and 'su' instead.

    I use sudo out of habit, never really thought about it. I suppose I
    could keep an authenticated session alive and set TMOUT to a
    reasonable value. Or maybe try run0 for the first time ever since I
    use systemd.

    -a-a-a Sudo basically trashes the user-sep concept
    -a-a-a in Linux. Really you should NOT install it.

    Okay, I'll bite:-a What solution do you have to manage multiple
    users who need "root" privileges, without giving everybody
    the root password?

    -a If they "need" it then you give them the root PW.

    -a If they don't "need" it then tuff titty.


    No. In genuine multi-user environments sudo IS useful to allow certain
    people to do certain things that ordinary users cannot. Without giving
    them the
    cd /
    rm -r *

    power
    --
    To ban Christmas, simply give turkeys the vote.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From The Natural Philosopher@tnp@invalid.invalid to comp.os.linux.misc on Wed Oct 15 12:30:29 2025
    From Newsgroup: comp.os.linux.misc

    On 15/10/2025 06:04, rbowman wrote:
    On Tue, 14 Oct 2025 23:41:31 +0000, vallor wrote:

    Okay, I'll bite: What solution do you have to manage multiple users who
    need "root" privileges, without giving everybody the root password?

    I don't know if it preceded sudo but we had a hack called gosu. Everyone compiled it using their own credentials but then became root to run chmod 4755. Super secure but it didn't matter. The root password for all AIX and Linux boxes was a certain star in the Wolf system.

    I was confused with my first Linux install that didn't really have a root password. Prior to that I can't remember the distro, maybe SUSE, but when
    you were running as root the wallpaper changed to a red background with
    black cartoon bombs with burning fuses. Someone had a sense of humor.

    There were occasional mishaps. One guy on an AIX box ran out of room and deleted AIX's equivalent of /usr/bin. I forget what the directory was
    called but it didn't *sound* that important.
    I crashed a development server once with 50+ users on it using root
    privileges
    --
    To ban Christmas, simply give turkeys the vote.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From The Natural Philosopher@tnp@invalid.invalid to comp.os.linux.misc on Wed Oct 15 12:33:15 2025
    From Newsgroup: comp.os.linux.misc

    On 15/10/2025 06:36, Charlie Gibbs wrote:
    On 2025-10-15, c186282 <c186282@nnada.net> wrote:

    On 10/14/25 05:18, The Natural Philosopher wrote:

    TBH the often sneered at cargo cult method of writing code is often the
    best,. Find someone else's design, copy it blindly-a and bugger with it
    till it meets the spec.

    Today that IS the fastest way. SO many good little
    examples, oft with cryptic syntax/params, that can
    be tweaked a bit to fit the particular need. Not
    going to try and learn everything about TCP stacks
    and sockets in Python - just find/cut/paste/tweak.
    Gotta have the brains to tweak properly however ...
    nine lines of example might need to be fleshed out
    into 50+ lines to be very useful.

    My personal C library contains functions to do my favourite
    socket operations (e.g. create a socket and establish a
    TCP/IP connection, with flags specifying whether it's
    blocking or not). Takes a lot of the work out of it.

    I'm working with the LWIP stack on picos at the moment

    WAY simpler than 'sockets'

    As is CURL...
    --
    rCLThose who can make you believe absurdities, can make you commit atrocities.rCY

    rCo Voltaire, Questions sur les Miracles |a M. Claparede, Professeur de Th|-ologie |a Gen|?ve, par un Proposant: Ou Extrait de Diverses Lettres de
    M. de Voltaire

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Nuno Silva@nunojsilva@invalid.invalid to comp.os.linux.misc on Wed Oct 15 15:21:50 2025
    From Newsgroup: comp.os.linux.misc

    On 2025-10-15, The Natural Philosopher wrote:

    On 14/10/2025 23:20, Nuno Silva wrote:
    On 2025-10-14, rbowman wrote:

    On Tue, 14 Oct 2025 13:02:24 +0100, The Natural Philosopher wrote:

    And once you do draw a flow chart it probably is enough to make you
    realise how to make the code much easier to understand by removing the >>>> spaghetti and concentrating on the little meatballs.

    If you listen to the computer science experts you will draw a UML diagram >>> nobody understands.

    https://en.wikipedia.org/wiki/Unified_Modeling_Language

    I'm confident UML is from software engineering, not computer science :-P

    Judging by the use of BigWordsrao it is firmly CompSci.

    That is really not how it works. Or maybe your definition of "computer
    science" is quite broader?
    --
    Nuno Silva
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From John Ames@commodorejohn@gmail.com to comp.os.linux.misc on Wed Oct 15 08:39:26 2025
    From Newsgroup: comp.os.linux.misc

    On Tue, 14 Oct 2025 23:04:43 -0000 (UTC)
    Lawrence DrCOOliveiro <ldo@nz.invalid> wrote:
    It definitely has its uses, but CS courses almost never seem to
    focus on the *useful* applications because it's much easier to
    demonstrate the concept with trivial examples like Fibonacci
    calculation, which is dead easy to write but *atrocious* in terms
    of performance scaling :/

    My first exposure to recursion was not Fibonacci, but AckermannrCOs function.

    Feel free to try to come up with a non-recursive implementation of
    that. ;)
    That's definitely a better example, though for classroom purposes it'd
    probably be best to find something with both *A.* practical application
    in a real-world context (Ackermann *does* have uses, but they're pretty
    deep in mathematics) and *B.* a real case to be made for a recursive
    solution beyond simple novelty value.
    --- Synchronet 3.21a-Linux NewsLink 1.2