Re: The school I went to had loads of Bastards...
Whereas these days, they give engineering degrees away to people who think "bastard files" are something kept in the Child Support Agency offices .....
397 posts • joined 27 Nov 2014
The problem with users is, they don't read error messages. Or if they are reading them, they are not paying any mind to them. Also, they somehow expect you to know exactly what is going on, even when you are on the other end of a phone line in a different room.
On several occasions I have asked a user to read an error message to me down the phone, read it back to them verbatim, and then they understood it.
Them: It says Username or Password Incorrect.
Me: Username or password incorrect? That means you've typed either your username or password incorrectly.
Them: Alright, I'll try again ..... Oh, it worked that time!
Me: All sorted then?
Them: Yes, thanks.
Them: It says Load Paper in Tray 1.
Me: Load Paper in Tray 1. That means it wants you to load some paper into tray 1. Is there any paper in tray 1? That's the top one, with a big figure "1" on it. Pull it gently towards you.
Them: I'll go and check (retreating footsteps, pause, approaching footsteps) No, there's no paper!
Me: Ah. OK. Try putting some paper in it.
Them: OK ..... (retreating footsteps, pause, approaching footsteps) The message went away as soon as I closed it, and it's printing!
Me: All sorted then?
Them: Yes! I fixed it all by myself!
Me: At least you know how to deal with Load Pa ..... (dial tone)
Then there are all the weird faults where the error message has disappeared before the user gets a chance to read it; but when you go and stand right next to them hoping to reproduce the error, everything mysteriously Just Works First Time. And that only seems to convince the users that "computers daren't misbehave when she's around".
I once got a telling-off for spending all afternoon writing a program to automate a task that I could have done by hand in half an hour (and which would need to be done rather more than eight times in total).
People were still using that program when I left that company, though.
I've made confirmation requesters with nice, helpful messages like "Selected start time is after finish time! Machine will not run at all. Press OK if this is really what you want, or Cancel to leave things as they were".
(I've probably also left the odd button lying around that does nothing but print "WIBBLE" or "BLAH", because that is just something I do as one of my program development stages.)
In a loosely typed language (like JS, PHP, etc...) how does the computer know if the programmer wants to concatenate of sum two values?Easy ..... If you use an addition operator between the operands, it should try to add their numeric manifestations; but if you use a concatenation operator, it should try to concatenate their string manifestations.
That still need not be a problem, though:
But strings and numbers are not necessarily incompatible types. You can always convert a number to a string in order to concatenate it with another string, and you can sometimes convert a string to a number -- depending what characters it contains -- in order to add it to a number. There is no reason, besides mean-spiritedness on the part of the programming language designer, for any modern programming language not to do type conversion automatically if it would not cause an error.
The real problem is the misuse of a single operator to perform two distinct operations.
It's not perfectly reasonable because an interpreted language should be smart enough to be able to convert a string that looks sufficiently like a number to a number and then add it to a number; or convert a number to a string and then concatenate it with a string. Perl manages all this just fine (see examples above).
And why do you suppose someone would prefix the year (which, coming from a Unix timestamp, has had 1900 subtracted from it) with "19" -- which was bound to break come the year 2000 -- as opposed to the obvious and future-proof method of just adding 1900 to it? Might this possibly have had anything to do with the relative difficulty of adding numbers versus concatenating strings?
Not as well as some languages, it doesn't:
$ perl -e 'print 2 + 2;print "\n";' # prints 4
$ php -r 'print 2 + 2;print "\n";' # prints 4
$ perl -e 'print 2 + "2";print "\n";' # prints 4
$ php -r 'print 2 + "2";print "\n";' # prints 4
$ perl -e 'print "2" + 2;print "\n";' # prints 4
$ php -r 'print "2" + 2;print "\n";' # prints 4
$ perl -e 'print "2" + "2";print "\n";' # prints 4
$ php -r 'print "2" + "2";print "\n";' # prints 4
Actually, the metre is British -- the French could not agree on a reproducible definition, and had to ask us for help. We let everyone think it was a French invention, in exchange for the right to claim a French invention as our own -- a favour not called in until 1959, with the advent of the Mini, which everyone thought was the first front-wheel-drive car.
My experience of working in an actual UK engineering firm is as follows:
Technician: Somebody who knows at least as much as an engineer, works twice as hard as an engineer and gets paid half as much as an engineer.
Engineering Manager: Somebody who supposedly has an engineering degree despite not knowing a Phillips from a Posidriv, works less than half as hard as an engineer and gets paid more than twice as much as an engineer.
Back In The Day, copyright was invented as a way to encourage the creation of material to enrich the Public Domain. Authors were given temporary exclusive control over their work in return for a promise eventually to share it with everyone after the expiry of the exclusive period.
Changes in the meantime have affected the practical difficulty of becoming a publisher.
Is it really too much to suppose that there might actually be another way of rewarding people for sharing their works, besides through a temporary monopoly, that might be more appropriate to today's world?
The IT angle is that if you were around at the beginning of the UK home computer revolution in the early 1980s, the humble audio cassette most probably was the medium you would have had to use for data storage.
Hmmmm ..... I suppose that makes me officially Old.
That's because men's clothing (N.B., actual men's clothing, as opposed to fashionable women's clothing designed to look a little bit like men's clothing from a distance, whilst still leaving no doubt up-close that the wearer is in fact a woman) tends to offer superior thermal insulation to women's clothing. At least, this is so if we limit our consideration to the subset of what is acceptable to wear in the office Monday to Thursday; a T-shirt, shorts and hiking sandals are cooler than a blouse with a jacket or cardigan, skirt, thick tights and boots, but a woman would be unlikely to dress in that way in the sort of temperatures in which a man would dress in that way.
Every year, on the second day in a row over about 25 degrees, there is a story in the national newspapers about school boys wearing skirts to survive in the heat .....
Someone really needs to let the word out that the human body burns up calories faster in lower ambient temperatures -- just turn down the thermostat, and begin losing weight effortlessly while your body adjusts to the cold!
The post has been deleted now, but the "/me does something" usage dates all the way back to IRC; if I typed it, and my nick was set to "JulieM", it would display on other users' screens as "JulieM does something". And I remember using IRC in the early 1990s, from a PC running a Telnet client accessing a Unix system.
IRC lost popularity in the late 1990s / early 2000s to a bunch of deliberately-incompatible, proprietary messaging applications. But Slack is actually using IRC underneath .....
Please say I am not the only person for whom mention of the name "Veritas" calls to mind old caravan gas lights -- fetching a new mantle from the shop right on the other side of the camp site, only to bust it at the last minute; and listening to the rain bouncing off the roof as the picture on the mono TV got smaller and smaller as the battery became spent.
Whenever I'm configuring Apache with PHP, I always set it to interpret everything, irrespective of file extension, as PHP. Not just because I like extensionless filenames (although I do, very much); but because it then removes any worry about files containing passwords.
As for cgi-bin folders, I have these outside the document root and accessed via an alias. And they're the first thing I test. This ensures that
in the event that even although I have messed up the configuration somehow, the Source Code will not be displayed to too many people for too long.
Voting machines cannot work in practice. This is not a limitation of present-day technology that will be overcome by inventing the right thing; rather, it is a limitation of the universe. There is nothing that anyone could invent, nor any detail of implementation that could be mandated, that would make voting machines as secure or robust as pencil and paper and manual counting. The traditional method is also Universally Comprehensible. Which is vitally important because if you don't understand how the voting system works, how in the hell can you be sure it's fair?
It's bad enough that anybody even tried. It's much worse that they consider democracy subordinate to their right to keep secrets (though hardly surprising that they were allowed to, given the corruption in the USA). Not that publishing the exploded views, wiring diagrams and software listings actually helps anyone, though; only a minority of the population can understand them, and in any case there is no way to be certain that the machines used in an election are exactly in accordance with the published specification.
All research into electronic voting needs to be discontinued; and the use of manually-counted ballot papers -- and the reasons for doing so: universal comprehensibility and robustness against tampering -- needs to be mandated in nations' written constitutions alongside the voting system used.
Maybe it's a user-interface problem?
The people who have such difficulties with passwords tend to be the same people who don't mind having bunches of keys and combination locks protecting stuff that doesn't really need it. So instead of a password, why not have physical Yale and Chubb locks that take actual keys, and a numeric keypad?
Way, way back in the heady days of dial-up modems and Windows 98, "Some Bloke Who No Longer Exists" knocked together a custom 404 page that included, among the reasons why the page might not be available, "The customer might not have paid their website hosting bill", just to teach a particularly recalcitrant customer a lesson. It worked, alright. They paid up within a matter of minutes.
You probably would not get away with a stunt like that nowadays; broadcasting the fact that somebody owes you money is almost certainly a breach of the GDPR.
Anyway, the moral of the story is: If you want to play Silly Buggers, don't take on an opponent who is a black belt in that sport.
Ely m. The first, tiniest inkling you get that something, somewhere, has gone terribly wrong.
Wembley n. The hideous moment of confirmation that the disaster presaged in the ely (q.v.) has actually struck.
Godalming n. Wonderful rush of relief on discovering that the ely (q.v.) and the wembley (q.v.) were in fact false alarms.
Beer, for everyone else who needs one right now because they have gone from Cambridgeshire, to Middlesex and then out to Surrey at least once today.
"Universal" mains sockets will never be allowed in the UK because they do not meet BS1363, for at least two reasons:
1: Over-current protection. In the UK, every plug has its own fuse, and a 32A circuit breaker supplies an unlimited number of sockets. Also, there is an extra connection looped back from the last socket back to the breaker, which effectively doubles the cross-sectional area of the cable. In the event of a fault, the appliance flex only has to withstand the excess current for long enough to blow the 3A or 13A fuse in the plug. If a non-UK plug was used without an additional fuse, the appliance flex would be in an endurance race with the 32A breaker.
2: Safety shutters. In the UK, the extra-long Earth pin operates a mechanism to release a spring-loaded safety shutter which normally covers the live and neutral pin apertures to prevent the insertion of foreign objects.
2.5: Earthing. Schuko and French sockets are designed so an earthed plug can be inserted into a non-earthed socket. The French system uses a pin protruding from the socket plate; the Schuko system uses edge bar contacts. The "universal" sockets just leave the earth unconnected with such plugs. Nice if you're using a hand-held, metal-cased appliance .....
2.75: Cable entry angle. In the UK, the flexible cable enters the plug at 90 degrees to the axis of the pins. Pulling the flex will not pull the plug from the socket.
Not really. It's mathematically impossible to build a voting machine that is more secure than pencil and paper Nothing anyone could invent will make it possible because the limitation is one of the universe, not one of technology. You can't blame anyone for failing. Continuing to try to do something once you know it's impossible, on the other hand .....
It's unlikely to be anything more complicated than money.
Some people just have self-destructive tendencies. Having more money enables people to behave more self-destructively. Whether it's lighter fuel, strong cheap cider and skateboards, or cocaine, champagne and aeroplanes, it's the same fundamental instinct underneath it. Just for higher stakes.
It's not a waste. It would have been insanely useful during design and testing. It could potentially be used for some niche application IRL, and their major customers were specialists. I can see why it made sense as a feature, at least in some circumstances.
Obviously, like all sharp-edged tools, it also has the potential to be dangerous if misused. It's effectively a Multiface for the PC .....
I've finally had a quick muck about with it, and it's certainly got some promise.
The output is for sure not identical to the original source, but it does successfully recompile to produce a bitwise-identical binary -- which is the really crucial bit.
On the bad side, RetDec eats RAM. Don't even think about running it on a box with only eight gigs, if you're interested in decompiling anything more complex than MS-DOS executables that will fit in 256kB. (Which is still not to disparage any such efforts. There almost certainly is at least one factory somewhere in the world, whose production line is dependent upon an ancient 8088 machine still running some long-since-abandoned software to talk to a custom hardware interface .....)
And with that, I'm off to order a bigger motherboard and some RAM .....
Biting the hand that feeds IT © 1998–2019