|
CodeWraith wrote: we will always trade one complication for another.
I totally agree. In a distributed computing, real time, sharded data world though, the old "a -> b -> c" workflow pattern really seems not just archaic but untenable, IMO.
|
|
|
|
|
As if every algorithm lends itself to parallel processing as, let's say, raytracing. Ask Henry Ford what to do when you have a strictly linear task at hand.
I have lived with several Zen masters - all of them were cats.
His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.
|
|
|
|
|
CodeWraith wrote: Ask Henry Ford what to do when you have a strictly linear task at hand.
You create a hundred work threads, each one does one small operation and passes the work on to the next worker, maximizing each worker's effort and minimizing the time it's waiting to do work. In other words, an assembly line.
|
|
|
|
|
And that Marc, is the CORRECT ANSWER.
With response to those who try to turn this into a discrimination argument.
NO, ok... just NO.
There's nothing discriminating about what's been said. I know for a fact, that I'm no good at fixing car engines, even if I do know the basics of how they work, and I'll call myself out for that, does that mean I'm discriminating myself? or other folks who don't know how to fix a car engine?
Not at all... What I'm doing is telling the truth, and that's the problem with a huge chunk of society these days, they CAN'T HANDLE THE TRUTH.
A large chunk of folks out there have been brought up to believe their something special (I think the other term I've heard is 'snowflakes'), when their not, and it's simply because parents and peers have praised them for all the wrong reasons.
Can anyone be a programmer? Yes absolutely they can, but will everyone succeed? no they won't ant that's where the difference is.
Many of the entrants come into the industry, because they've been conditioned from being little to believe their I.T geniuses, simply because they can run rings around their parents when it comes to tablets, phones, microwaves and anything else electrical.
The fact of the matter however is this, what there doing is just using the device, their not geniuses, their not the next generation of S**t hot start-up developer, and it's certainly not going to fall into their lap for them, which is what many think.
Their brought up believing that they have these awesome I.T super powers, and as a result they walk out of initial education with this belief that anything and everything coding, software dev, I.T is easily withing their grasp without having to work for it.
Then when they get into a position they cry fowl because they have to start at the bottom, or because it's too hard, this was NOT WHAT they signed up for.
What we need to do is to stop over inflating ego's, we need to train future developer correctly, and we need to make it clear, that programming (Like any other job on the planet) is not the job for everyone.
We need to encourage them to try, of that I have no argument, but we also need to stop stringing them along, and when we get to the point where it's obvious they reached sink or swim point, we need to help them make the tough decisions.
Ok, rant's over now anyway
This is a subject that Iv'e been getting quite vocal about recently, beacuse far to many people are trying to twist it into something it's not.
Simply: We have bad programmers because we've trained them and encouraged them to be that way, all of us who are still here, and who understand this industry need to be doing better, and that starts by telling the truth, even if the truth is "Politically UnCorrect", or hurts people to hear it.
|
|
|
|
|
Marc Clifton wrote: You could start with real life. Whatever the language is, everything should be asynchronous, event driven, and visual. Nope. There are many applications that require none of the three, and it would be detrimental to impose those constraints. Real life computer problems include those where the workflow IS monolithic and linear.
|
|
|
|
|
BryanFazekas wrote: There are many applications that require none of the three, and it would be detrimental to impose those constraints.
Such as? It's a serious question. I've been writing software for 30+ years and I can't think of a scenario where an agent-based data driven environment wouldn't have been better.
|
|
|
|
|
Marc Clifton wrote: Such as? Finance. There's a tremendous amount of nightly processing performed in connection with money transfers. Among the reasons for not doing direct transfers is fraud detection and prevention.
Driver license, vehicle registration & title. The datasets are vast, as it's so difficult to retire records due to the intricate inter-connections.
I don't see any simple answers in computing. Pick a paradigm -- someone can find a real-world counter-example where that paradigm isn't the answer. IMO we're better off having a variety of tools, and letting the problem influence the tools chosen to develop the solution.
|
|
|
|
|
It would be a smoking hot language in Jamaica and Colorado
|
|
|
|
|
sounds a bit like you want to bring back Visual Basic.
Every day, thousands of innocent plants are killed by vegetarians.
Help end the violence EAT BACON
|
|
|
|
|
BillWoodruff wrote: Perhaps we need a "dumbed-down" version of C#, call it "CBlunt" ?
No generics, or lambdas, or all that other fancy stuff we love religiously
Microsoft have already done it, they called it .net 1.1
|
|
|
|
|
I imagine M Blunt would be more popular.
|
|
|
|
|
All this pattern mania, from my anecdotal work experience, seems to be a disease mostly afflicting Java and Web developer.
Therefore I suggest get away from those sanity!
|
|
|
|
|
Just teach people with C, slowly force them to do OOP with C++, then throw them into Full Stack Web Development and watch them gawk at how nobody knows how anything about anything works.
|
|
|
|
|
Bill,
We have had a lot of paradigm shifts in programming. I cut my teeth on BASIC and assembly in the early 80s while in High School. I have programmed in over 13 dialects of BASIC. The most powerful was BasicPlus and BasicPlus2 (for the PDP/11). These had simple system function calls that let you do EVERYTHING, and all the core programming for the utilities of the operating system were coded in basic.
We had subroutines, not functions. It was compiled line by line as you hit enter.
I say that because you are not running into languages ruining programmers. You are running into languages setting people up to learn a paradigm. If a programmer is supposed to program a machine to do useful stuff... Then it is programming.
But we went through a few shifts. Procedures/Functions (Abstraction). Structs/Types/Objects. OOP. Event driven programming. Asynchronous Programming. And now OOP Library Programming (.NET in my mind).
Those are wildly different skill sets. All programmers need to solve problems and express them in code. 2 Great programmers will express the same program differently. Even more so when Libraries are used, specifically different ones are used.
Finally, the volume of "read" code impacts a programmer. I literally read EVERY SINGLE LINE of BASICPlus code that came with the operating system. Every program. Beginning to end. (I patched many of them to create some useful backdoors, too, LOL).
Thankfully I was reading COMPLEX code that was well organized. Written by professionals.
Today the problem is that everyone CUTS and PASTES, and there is so much CRAP code that everyone can easily find and read, that they have a low water mark for what is acceptable. This is one reason why code reviews are the backbone for the teams I work with. Code quality matters to everyone.
Therefore, while you believe that the language is impacting the developer and training them the wrong way, I would disagree. The programming paradigm they are starting from is wrong, and the examples they are being taught to program against are often too trivial.
While all programmers should learn the basics in a constrained fashion (gain basic understanding through doing). I actually think that programmers should be trained by actually READING, commenting, reviewing, and modifying really large, realistic programs.
And if that scares people, it should. Because that's what we expect them to do at work, when they are potentially fresh out of college where they have almost NEVER had to work with anyone elses code. Literally a condition that will not exist in reality.
Honestly, todays computer science classes would be better off interspersing the theory classes with a light weight programming language, and making the students take OpenSource software and learn how to modify it, and fix certain features of it. Real systems. Complex Systems.
Instead we teach them to Cut, Paste, and Hack through the problem.
I just don't believe I would blame the language, although asking someone to change from the ONLY ONE language they have ever used (Non OOP, Non Event Driven, for example) and then change paradigms too is way too much to ask of most people... Unless you are willing to spend serious time helping them to relearn...
|
|
|
|
|
This new one feels fine - but is a little noisy - but it's driving me round the bend!
The old one was a Logitech Media Keyboard, and the buttons above the cursor keys were arranged like this:
INS (shared with Scroll Lock on the function keys row)
HOME END
D PG UP
E
L PG DN And the new one is the old traditional:
INS HOME PG UP
DEL END PG DN And I don't look at my keyboard while I type, so I keep toggling Insert mode when I try to go to the beginning of the line, pasting when I want to highlight a row, page down when I want the end of a line, etc.
I'd forgotten just how long it took me to get used to the Logitech layout, and how much that annoyed to start with...
Any of you met this yourself?
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
I will not use a noisy keyboard. ever.
And since you really can't (not supposed to) take them out of the box and test them, it can be a gamble.
I try to research first online the best I can, but that is not always reliable either.
I am currently using a Logitech K120 (simple keyboard) and it was moderately noisy, but is starting to get worse - new one in the future for sure.
[^]
|
|
|
|
|
Slacker007 wrote: I will not use a noisy keyboard. ever.
Neither will I. Sadly, the management doesn't understand that even a few fractions of a decibel of noise reduction adds up. So everyone has these incredibly clackey crap Dell keyboards. I brought in my own Logitech illuminated keyboard (quiet, short travel, etc.) so I don't drive myself crazy, but all my neighbors are using the Dell clackety-clack-crap-keyboards.
|
|
|
|
|
To speed up getting used to a new kb super-glue thumb tacks point up to the keys you don't want to be pressing.
Signature ready for installation. Please Reboot now.
|
|
|
|
|
I have an old one for you. 40 years old this year. Real key switches, steel case, no less. Edit: And it's hand soldered. By me.
Over all those years the keys have worn out a little and you may have trouble interfacing it to your computer. You don't have a parallel port anymore, right?
I have lived with several Zen masters - all of them were cats.
His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.
|
|
|
|
|
I'm still using the HP keyboard that came with my first Windows system from 1998. It's still looks and works like new and has survived a few episodes of disassembly, deep cleaning under hot water, and reassembly. I'd say I've gotten my money's worth out of it! There's no place like Home.
I agree that most of the newer keyboards I have tried just feel cheap and they try to make them smaller and lighter.
"Go forth into the source" - Neal Morse
|
|
|
|
|
The one I replaced with the Logi was late 80's, and was still working fine.
I only replaced it because I got complaints from Herself that she couldn't use it as I'd worn all the letters off...
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
Here ya go, IBM Model M Replica. I watch a Linus Tech Tips on YouTube yesterday reviewing Unicomp's Model M Replica. Apparently, the company spent years obtaining the intellectual property rights and old equipment to reproduce the Model M. They just updated it for more modern computers. They are reasonably priced too and you can get other colors besides the beige.
[Edit] Here is the link to the YouTube video The Greatest Keyboard of All Time.. Reborn.
When you are dead, you won't even know that you are dead. It's a pain only felt by others.
Same thing when you are stupid.
modified 19-Nov-21 21:01pm.
|
|
|
|
|
Noisy keyboards bother me for maybe an hour and then I usually get focused and forget about it. Plus you can always wear noise cancelling head phones.
I'm more concerned about the layout of keys. I'm used to the traditional layout you posted, and it drives me CRAZY when I encounter a different layout. Especially switching between a laptop which has a FN (Function) key on the bottom left, squeezed between the windows key and the ctrl key. That is where ONLY the ctrl key should be. For the love of God, why do they put it there? Copy/Paste is blown to hell.
|
|
|
|
|
Don't get me started on lappie keyboards - I hate 'em. Too cramped, as well as everything slightly misplaced, and some keys missing unless you find the FN key - which is always in just the wrong place...
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
OriginalGriff wrote: ...unless you find the FN key - which is always in just the wrong place...
Agree on stupid laptop KB's.
Except in my case I can always find the Fn key, but what I wanted to find was Ctrl.
paste you ing POS! Fn-V Fn-V! Fn-V!!! ing
Signature ready for installation. Please Reboot now.
|
|
|
|
|