Re: Automation needed
"Rod"'s situation seems to be similar. An engineer taken on as a technician. Sadly, all too common. "Wotyer complaining about, it's "computers" you said you want to work in "computers"".
3710 publicly visible posts • joined 4 Mar 2009
I've still got several generations of cable TV box going back to my first Yorkshire Cable "Scientific Atlanta 8600" set-top box + remotes piling up in my loft. Yorkshire Cable, TeleWest, NTL, Virgin. It's feels "wrong" to chuck them away, but there's nothing I can use them for.
"So back when I wor a lad, and computers were fun, the advice was to do physics/maths/engineering not CS cos you could pick up that programming stuff yourself anyway."
I wish wish wish wish my Careers Advice Tutor (or anybody really) had known that and told me that in the mid-1980s. I and my friends had been "doing computing" for half a decade, to us writing programs and plugging in hardware and talking to it and getting different computers to talk to each other was "doing computing", so naturally upon going to university I applied for "Computing" courses. Only to get there and for three years wonder "when are we going to do some, yknow, *actual* computing?" When what I didn't realise was that "computing" is "driving a car" not "automotive engineering". And certainly the careers advice staff were completely out of their depth. With six years of designing and building computer hardware and software, and three summer jobs doing same, my careers advice was "go into local government admin".
I don't yet do PHP writing often enough to prod me to do something about it, but the write, upload, test, cycle does get a bit annoying, especially when I forget the upload bit and wonder why my edit hasn't made any changes. Plain HTML is so much simpler, edit, refresh, edit, refresh, don't need no steeking online access. ;)
The recipient is specified in both of them. "jim".
Ok:
hey_do_thing(jim, 6); // call function to tell jim to do something with parameter '6'
hey_to_thing(jim,6); // send message to jim to do something sending '6'
The mention of delegating responsiblity to the other end - well, that's *exactly* what passing the thing on to jim is doing *anyway*. Otherwise it would never make the function call in the first place. "How does the caller know the internals of the callee?" Wall, again, that's exactly why it is just passing it over to jim, the caller neither knows nor cares what jim's internal structure is. "Buffering data..." Again, exactly what just passing out of the caller to somebody else that knows what it is doing.
As I said originally, everything people attempt to explain OO programming to be just end describing what I'd say: well, that's just.... /normal/... programming, doesn't everybody do it that way *anyway*? You want to send to a printer, *you* don't send to the printer, you just pass the data to a printer buffer, and the printer "thing" that knows about printers does the actual talk-to-printer stuff. You want to sent to a serial port? Again, you just putbuf(serout, byte); and the thing that knows about serial interfaces does the serial interface stuff. You want to send a message to another computer on a network? net_tx(dest, data, length). You want to write to a file? write(file, data, length).
It all appears to be strawman arguments. You're starting from assuming the *caller* is fidding with printer I/O hardware, or networking hardware, etc., and advocating the caller should just pass that work on to somebody else, BUT WITHOUT FIRST TELLING ME THAT'S THE STRAWMAN YOU'RE STARTING FROM, so of course I have no idea what on earth you're waffling on about. The strawman does not exist, and what you're prosletising is already normal standard practice, of course you don't try to do the thing-specific stuff, you call (or message) a thing-understander that understands the thing and does the thing-frobbing itself.
This may sound confused and rambling, but that's because everything about "OO - the great new thing" seems to make no sense in the first place. It's not the "great new thing", it's the normal.
The idea of SENDING A MESSAGE instead of CALLING A FUNCTION
This is one of my blind spots whenever people attempt to explain OO programming. Every time I try and work out what makes it different from non-OO programming it just comes across as buzzword bingo.
What's the difference between
hey_jim_do_this(6); // call function, passing "6" to it
and
hey_jim_do_this(6); // send a message, passing the message "6" to it
?
The tantrum behavoir only occurs due to the asshat morons who designed the equipment. It is smash the equipment, or find the person who designed it and apply a clue-by-four. Unforetunately, there are far too many systems in existance where their deficiences have zero impact on the people who let them loose, so they have no feedback to change their behavoir.
I had a tablet computer that failed due to the percussive disciplining I gave it due to it refusing to to as it was told. If the user interface does not respond to human interaction Before. Doing. Anything. Else then it is a clear case of software fraud. If there is no response that is explicit instruction that you haven't pressed it properly. So you press again, and if there is no response it is even clearing INSTRUCTION to press EVEN HARDER to get the damn thing to work. If it STILL does not respond it is SCREAMING at you to HAMMER THE ****** THING AS HARD AS POSSIBLE.
Sheesh., H.T.F. does this FUNDAMENTAL part of interface interaction keep get not being taought to beginners before they even get anywhere near any development, having been known about for centuries?
If there is no tactile feedback an interface it must Must MUST *MUST* abandon ******EVERYTHING****** and respond ******NOW****** to tell the user they have in fact actully pressed something. Not 'oh wait, I'm busy', not 'let me just flush this cache', not 'push it into a queue and something will check it later', ****NOW****. Otherwise the system is *explicity* *INSTRUCTING* the user that they *HAVEN'T* pressed something and that they *MUST* try again. If the light switch doesn't move under your finger, it is an explict instruction to try again properly. If the door handle doesn't move, it is an explict instruction to try again. If the wheely chair doesn't move when pushed, it is an explicit instruction to try again. IF THE FUCKING TOUCH SCREEN DOES NOT RESPOND TO TOUCHES IT IS AN EXPLICIT INSTRUCTION TO KEEP HAMMERING AT THE FUCKING THING UNTIL IS FUCKING DOES RESPOND, OR SMASHES INTO PIECES, WHICHEVER COMES FIRST.
It's especially annoying when directed to use a coloured button when the coloured buttons are on a mucky keypad, such as a phone. "Press the red button". Which one's that? The mucky puke coloured one, or the mucky puke coloured one. Just *****y say "left" or "right" dammit!!!!
Hold on, doesn't everybody glance around in a new building to check where the emergency exits are? There was a fire drill in a building I'd only been in four days, and I went straight onto automatic and trotted out down the stairs to the evac point. I was later told off for bringing my cup of tea with me - but I'd been walking from the kitchen back to my office with it when the alarm went off. So, naturally, I didn't continue into the office just to put my tea down before leaving the building.
From that linked story, it's not the using a toaster to make cheese-on-toast that's unsafe, it's the turning on a cooker THEN LEAVING THE ROOM!!!!!!!!!!!!!!!!!!
I had a lodger who did exactly that. Put bread under the grill to make toast, then, I have no idea how, simply walked out of the kitchen and into his bedroom.
Right on time, in today's emails:
"We have seen your CV and think this would be an ideal position: .... you will take calls from clients and assign the problem to the right team to fix."
Sorry, but did you not even actually *read* my CV? I do the "go out and do the fix" bit not the "take the calls and pass them on" bit.
You're lucky that public transport was more time efficient than driving. Most of the jobs I've had, when I've had the car away for repairs or tests and taken the bus it's often taken four or five times longer. One job 45 minutes away would have turned into the absolute earliest bus available getting me into work at 1pm.
Sparks have it drilled into them (ha!) that all cable runs must be horizontal and vertical between outlets so they are known to be in known defined zones, and all defined zones are defined to have cables in them whether they do or not. Unfortunately, too many decorators are oblivious to this and assume power arrives at an outlet through the air.
I had one job where the kitchen fitters had removed all the old units - so they could clearly see the rising main and consumer unit - and then in the process of fitting the new units drilled straight through all six cables directly above the consumer unit.
ARGH!!!
This really gets my goat, people using completely incorrect, misleading, or damaging terminology. The one that particularly annoy(s|ed) me was programs or instructors instructing users to "hit" the keyboard.
" Hit SPACE to continue "
# It's telling me to hit the SPACE key
* Go on then
# Are you sure?
* Yes, go one
# err....
SMASH!
# but (sob) you (sob) told me to!
When I was teaching and such software appeared, I would hunt it down and extinguishing it from all disks, write random data to the sectors, and then again just to make sure. How *DARE* you instruct my users to destroy our equipment. I'll come around and smash up your computer shall I?
We've been insulating homes for decades. We're now getting to scraping the bottom of the barrel with pointless and engineeringly inpossible targets, and the last scraps of mindless hold-outs. My Dad did his house in 1985, I did my house in 1995, when I was a local councillor we did the entire council stock in 2005. IT'S DONE.
"Subsidies"? You mean, perfectly normal cost-of-production is a cost of production, and is subtracted from revenue from sales to result in profit.
Shock horror! The cost of the bread I bought to make the sandwich I sold is deducted from the money I make from selling it to calculate my profits.