On 9/5/21 4:35 AM, The Natural Philosopher wrote:
> On 04/09/2021 18:47, Stéphane CARPENTIER wrote:
>> Le 04-09-2021, SixOverFive <
hae274c.net> a écrit :
>>>
>>> SOMETIMES though, you can CHEAT. Change the properties of
>>> your symlink so even root can't edit/change/replace it.
>>> The installer may bitch, but SO WHAT.
>>
>> Cheating on your installer can't be a good advice. If you don't like
>> what it does, use another installer, install everything manually,
>> whatever. But cheating is the better way to have an unstable system
>> without being able to understand why at some point.
>>
>> You do what you want on your computer: I don't care, it's your computer.
>> But pretending others should do the same is just plair wrong.
>>
> You are really simply echoing te dichotomy between a personal computer,
> which does what *I* want, and a corporate system, which has to do what
> your *employer* wants, subject to maintainability and reliability and
> security constraints.
This dichotomy is understood - you can go more wild west
on computers you own. The other side of this are CEOs,
division mangers, pointy-haired bosses, with NO CLUE how any
box/OS does/should/must work. Whatever the All Important
Project of the day (which often they trash-can next week)
they want it to work NOW NOW NOW and don't care HOW.
The "Art Of Computing" means nothing to them - only $$$
and shutting up the inconvenienced staff.
So, do you completely reinstall everything from scratch,
maybe re-write the accounting system too, or do you MAKE IT
WORK for them ? Many of the abovementioned rude little hacks
are not especially "dangerous" and maybe they'll buy you
the time to straighten things out a little better next week,
find exactly WHICH line in WHICH of 505 config files is
causing the big issue.
> I would suggest that they are neither te same case, nor indicate the
> same solutions.
>
> One may do a 5 minute hack to prove a principle and get some code
> working, but *if* it is going to be replicated or maintained by others
> it behoves one to rework it into whatever is expected by e.g. other
> engineers, installation scripts and the like.
>
> On the other hand, if it is *not*, so what? Typically embedded systems
> that are neither subject to maintenance or upgrade can so whatever they
> like.
>
> Faced with lack of space in a 2K EPROM, I replaced all instances of
> POP AX
> POP BX
> POP CX
> POP DX
> RET
>
> with
> JMP STDEXIT
>
>
> STDEXIT:
> POP AX
> POP BX
> POP CX
> POP DX
> RET
>
> and gained the 64 bytes of PROM space I needed to include an extended BIOS.
So long as there aren't multiple threads going on you CAN
just clean up in one spot. If the eeprom was 2k this was
probably WAY before multithreading. The single-location
thing might also be vulnerable to some race conditions.
I'd worry if there were interrupt routines happening too.
> I am sure those who are imbued with 'never use a goto' would be
> horrified. But it worked, the customer got his extended bios without
> having to change his bios and I got paid. And really, as we used to say,
> in the end its all 'bits, in silicon.
"GOTO" can be GREAT. They're not "elegant" and can indeed
lead to SERIOUS spaghetti code, but sometimes they're the
best, most economical, easiest to write solution. Unwrapping
multi-nested whiles/fors/do loops in the 'elegant' fashion
can actually get rather un-elegant.
,
I always liked Pascal because it COULD be "elegant", and far
more self-documenting than the crap 'C' some hotshots would
write that was mostly punctuation characters that actually DID
stuff but nobody - not even the author a month from then -
could figure out HOW. Just did a little utility pgm with a
GUI front-end for somebody last month and used Lazarus/FP
because it's quick and easy and has the Pascal virtues, so
Pascal is hardly some decades-past thing for me. But, some
Pascals DO have a GOTO <label> in there, just in case :-)
Remember a thing called a Psion Organizer ? I think they came
out in the mid/late 80s. Looked like a thick pocket calculator
and had a 2 or 4 line LCD text screen. Various plug-in
cartridges could be had, including non-volatile memory.
Had a ROM BASIC in them that could cover most anything including
serial communications.
Someone wanted me to write a pgm for them that handled
fairly static traveled routes - like a mail carrier
might do. Each stop was a little block and you had to
fill in some questions. The "elegant" way THEN was to
make very good use of GOTOs. I wrote the thing "ladder
style" and you could push a function key to jump back
a question, or the previous block or the next block.
All GOTOs. In THAT case the GOTOs and structure made
the whole pgm far easier to understand and quite compact.
The route particulars were on a plug-in and, when there
were any changes, staff would update the list and hand
out new cartridges. Far more "sneaker-net" back then.
I did rig it so you could sync over serial, but mostly
they found it simpler to just swap cartridges.
I recently found out that at least some workers were
still using the system almost 15 years later ... I'd
have never expected that. They had the devices, the pgm
worked, so why spend more $$$ ?