The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.
"The new breed of the Silicon Valley lived for work. They were disciplined to the point of back spasms. They worked long hours and kept working on weekends. They became absorbed in their companies the way men once had in the palmy days of the automobile industry."
Tom Wolfe, 'Hooking Up,' 2000
compare with this from Douglas Copland's 2008 sociological exploration of MicroSoft employees, 'MicroSerfs:'
“Maybe thinking you're supposed to 'have a life' is a stupid way of buying into an untenable 1950s narrative of what life *supposed* to be. How do we know that all of these people with 'no l80's)ives' aren't really on the new frontier of human sentience and preceptions?”
I do not think it is a form of dementia that, like others who came late to programming (1986 for me), and, even later than most to the internet ... cannot now imagine life without the internet.
My years of use of reading books (I was reading at age 5 at a level 2~3 years ahead of my peers), and my intense use of libraries in my academic years, seem ghost-like, dusty, in my memories ... but, they are happy memories.
Now, heading too quickly towards my 1000th. lunation on this planet, and dealing with a down-shift in my usually very high energy level, and diminishing vision, I find myself ...
... while using programs as great as Visual Studio and PhotoShop ... often feeling like I am more the slave of the program, than "master:" that I continually cater to small ritual behaviors required to render what are not too complex results.
It seems surreal I can't just talk to the computer, and say things like:
(Win 10) find me the text files created in 1996 with the words 'extension; and 'generic'.
(PhotoShop) copy the layer, apply high-pass filter, set new layer mode to linear light 25%
(Visual Studio) create a new static extension template named GenericExtenions, define a static method DualDictionary with types D!, D2
... okay, you could, perhaps should, tell me I am lazy; I do know how to write PS macros. And, VS 2019 + ReSharper makes what I used to have to do manually seem primitive ! for file searching I use an at least 12 year old program 'Agent Ransack,' that has always put the execrable Win OS to shame.
Maybe, I am "losing it," maybe, I am finding ?
«One day it will have to be officially admitted that what we have christened reality is an even greater illusion than the world of dreams.» Salvador Dali
The misguided auto analogy:
first there was walking.
Then riding a beast of burden
Then the wheel, followed by the wagon. Drawn by the horse (or other).
Then the automobile, hand crank to start, kerosene lanterns, dirt roads, lousy tires.
Then the electric starter, still stick shift, electric lights. etc.
Then automatic transmission, heat, AC, power everything, more expensive insurance.
Then self driving autos.
First there were computing things, programmed with wires and tapes.
Then there was assembler language
Then there was C language and PL/1, and Basic (oh, wait)
Then there was C++, C#, VB
Then there were shiny frameworks and self configuring stuff and IDE's with intellisense and auto completion and refactors and and... tada QA
Then self programming stuff????
Fill some blanks, fix some errors. Sit back and wait for it, you will be assimilated.
Edit: somewhere along the line, the idiots took over.
If you can keep your head while those about you are losing theirs, perhaps you don't understand the situation.
In that time, computers have changed some, but software has changed a lot.
I beg to differ: in that time span CPU speed went up by a factor of at least 500, memory size by about 50 (remember "640k should be enough for everyone"), disk size by a good 1000. And that's not mentioning multi-cores, display size and resolution, data transmission speeds and so on.
I cannot see any changes of that magnitude in software. Software bloat was made possible by the spectacular improvements made by our colleagues on the hardware side of the street.
Software is not new either - same control structures spinned in a slightly different way. Functional programming is all the rage now but LISP was created in the '60es. When I started programming (late '70es, early '80es) artificial intelligence was right around the corner. Seems it stayed there all these years.
You're both right. Neither has truly made significant advances.
Hardware is just faster/cheaper/denser, not improved per se. Multicore is the worst thing ever to happen to software, period. The hardware boys having fun at the expense of software boys who should know better.
I wrote a recursive descent parser in Simula, in 1979, for an Algol subset. The fact that I can write one for most of C++ today mostly has to do with the hardware not taking a day to run it and the fact that I've gotten better at large software projects. But it's hardly a sea change.
I won't even mention the advances in software quality that have led to exhortations for "stateless programming", where bedwetters write every one of their transactions to disk.
I'd say it was maybe the father of functional programming. It didn't have constructs like monads, but other than that it was pretty much the standard in functional programming for its day (i don't think it was called functional programming back then though)
Personally, I find that Lisp is adequately described as "Lost In Silly Parentheses" - I'm no fan of the syntax, but all of the fundamentals of functional programming are there. It's just rough around the edges for lack of some of the more modern constructs like monads
I started professionally in 1980 and still love assembler or even pascal, though I don't use it much now days.
Finding IDEs more and more frustrating with their bugs and semantics.
It all seems to have dampened the creative side of the challenge.
Bloated, badly written libs rule now. Copy and past every where I look.
One thing is certain, the size of software grew with at least the same speed as that of the hardware, and not always for the best
The first Algol 60 compiler I wrote (yes, using my own parser generator) ran in less than 16 K on a 32K PDP-11 (early 70-ies), it was written in BCPL. No "fancy" stuff like IDE's that think they know what you want, just a simple editor (cannot remember the name of the editor, it was probably something like ed on RT-11, well before Unix came)
Nearly 20 years ago (I did professionally nothing with computers at that time), I wrote
in spare time an Algol 60 -> C translator, it still runs but the executable takes over 700 KByte (I know the size is nothing compared to that of a C compiler).
The current application I am working on (hobby, something with SDR) when packed as a Windows installer takes nearly 60 Mbyte, without dll's it takes 13 MByte) although I must admit that the signal processing (2048000 samples/second, with app an FFT per msec could not have been done on a PDP-11), but the size increase of applications is dramatically
Wrt quality: In the 70-ties there was this belief that - on average - each 100 lines of source code would contain (at least) an error, I belief that currently that is worse, imagine then a 100 times larger program .....
I do not deal with IDE's, they think they know what I want, and if I try to express that do not want it they more or less enforce it on me.
Actually, for me that is the main reason not to try a language like C# since there does not
seem to be single a tutorial that describes the language without forcing you to install some crappy IDE. When programming, I want to be in full control, so separate editors, compilers, debuggers is what I need, and therefore I'll stay with Linux.
But of course that is different from using the computer as administrative vehicle, then I want indeed to say things like:
find me my wedding photos, call the plumber to repair the faucet in the bathroom
I work in a different world, but I occasionally notice some bloat in the code so I start removing dependencies and watch what happens. It can be a useful exercise since it shows you who needs what and usually makes me wonder if I really need those things. Sometimes it leads me to split things up and that is often useful.
"They have a consciousness, they have a life, they have a soul! Damn you! Let the rabbits wear glasses! Save our brothers! Can I get an amen?"