News for hackers. Stuff that matters.
Re:Outgrowing Software by MaxBarraclough on Sunday March 21, 2021 @07:33AM (#26529671)
> software is a new form of literacy

Do you mean basic skills in using a desktop computer, or do you mean software engineering skills?

> we don't talk about the literacy department

Software development is a skilled craft, and will remain so.

Re:Outgrowing Software by SideburnsOfDoom on Sunday March 21, 2021 @10:07AM (#26530560)
I use the motor vehicle metaphor:

Software literacy is equivalent to: being able to drive a car, fuel it, decode the various dashboard lights when they blink, maybe change a tire and check the oil.

Software engineering is: Being a car mechanic.

So is it very useful to society if the vast majority of adults are able to drive. It is not important or worth the effort to have a majority of adults as fully trained car mechanics. Although it is good to have "on ramps" for those with the aptitude and inclination to pick it up, as a useful and paying job.

It is _now_ useful to society if the vast majority of adults are able to use a maps app, a messaging app, a word processor, maybe a formula in spreadsheet, calendar a zoom call and unmute themselves, have email and can distinguish a phishing email from real bank communications, ignore fake news on social media, etc.

The difference between a formula in a spreadsheet and full-time coding is one of degree, not kind; but you could say the same about changing a tire vs. a full vehicle overhaul.

Re:Outgrowing Software by alisonatwork on Sunday March 21, 2021 @12:34PM (#26531628)
I used this analogy myself the other day, and it's how I often explain software development to people who have been led to believe that computers are some deep mystery that could never be understood by the common man.

However there is one important difference between software developers and car mechanics, and that is that our work is in cyberspace so it can be effortlessly duplicated and sold a million times over. Car mechanics operate in meatspace, so in order to get paid they need to keep on fixing cars. A software developer could fix just one virtual car and then keep earning money forever thanks to intellectual property laws. It doesn't seem like equal pay for equal work.

Thinking about it this way has led me to become more skeptical of intellectual property laws. Software development isn't especially more difficult than any other skill, but we are disproportionately rewarded for it due arbitrary legal constructs. It seems like the industry has a vested interest in giving the impression that what we do is impossibly complicated. If more people realized the truth, there might be a stronger call to abolish or at least reduce the terms of copyright, patents and so on.

Re:Outgrowing Software by datavirtue on Sunday March 21, 2021 @11:47AM (#26531282)
I used to be a mechanic and the analogy fits. Rich people drive into the shop and bark at you to "just fix it." They don't care about any of the minutia but it had better work they way they envision it working. Then they throw you a few pennies and drive off.
Re:Outgrowing Software by gpanders on Sunday March 21, 2021 @12:01PM (#26531371)
Where were you a mechanic that it only cost “a few pennies”? I feel like I get bled dry every time I take my car in...
Re:Outgrowing Software by datavirtue on Sunday March 21, 2021 @12:13PM (#26531453)
Mechanics work ungodly hours and deal with very painful situations and barely make a living wage that can support a family. You feel like you are getting bled dry because the service does not scale. A highly trained professional has to focus on your problem until it is fixed and the solution is often very time consuming. Insurance costs are high and so are labor and material costs. It doesn't mean the mechanics are making a killing. The owners are often well off though. Hiring more mechanics scales for them.
Re:Outgrowing Software by gpanders on Sunday March 21, 2021 @02:27PM (#26532626)
That makes sense. Thanks for sharing your perspective.
Re:Outgrowing Software by SideburnsOfDoom on Sunday March 21, 2021 @12:25PM (#26531547)
I don't know myself, but if the big expense is parts not salary, both can be true. The vehicle manufacturer would be the one capturing the profits of the overpriced band-name parts.
Re:Outgrowing Software by mgummelt on Sunday March 21, 2021 @02:40PM (#26532745)
"We need to decide if software is a car to be driven or an essay to be written." - Alan Kay

He goes on, of course, to argue that the car analogy is the wrong one.

Re:Outgrowing Software by lifeisstillgood on Sunday March 21, 2021 @05:26PM (#26534243)
Oh wow - do you have a reference to the original?
Re:Outgrowing Software by mgummelt on Sunday March 21, 2021 @08:06PM (#26535321)
Re:Outgrowing Software by junon on Sunday March 21, 2021 @09:58AM (#26530475)
Man it really sucks this is being down voted. Software engineering is not like reading. Reading conveys information about reality. Software code conveys solutions to problems.

The latter requires understanding of computers, problem solving, domains, etc. Just like I can't pick up a book about organic chemistry and understand it, people are not going to some day care to know about how distributed systems algorithms work.

It is indeed a skilled craft and this weird, cyberpunk-ian idea that everyone will just converge on technical literacy is very hand wavey and ignores simple facts like some people just not having ANY interest in computers or tech.

Re:Outgrowing Software by jfim on Sunday March 21, 2021 @01:38PM (#26532202)
Literacy is actually a good analogy. People have different reading abilities, but they're all under the umbrella of literacy.

Some people are illiterate, some people can read simple documents but struggle with higher complexity texts and contracts, and some people can breeze through high complexity texts. In the same way, some people struggle with computers, some are able to understand Excel spreadsheets, some are able to understand business logic expressed in a domain specific language, and some are able to read complex programs.

Re:Outgrowing Software by andrewflnr on Sunday March 21, 2021 @10:20AM (#26530651)
Writing is a skilled craft, and will remain so, especially at professional levels. But we still teach everyone the basics.
Re:Outgrowing Software by gonzo41 on Sunday March 21, 2021 @08:08AM (#26529814)
Software development is a skilled craft, and will remain so.

Yes, you're right, but i would take the meaning that understanding Software development and deployment and how that can be leveraged is a literacy. There's tons of IT transformation disasters because the companies upping their literacy get stuck with knowing the words (SOA and Agile) but don't know how to make coherent use of them.

Most projects these days are IT projects.

Think about it like a dev, Software on a computer is useful. Networked software is more useful. Cloud and IaaS is really useful, SaaS is a really really useful and knowing when to use each to actually get stuff done is the most useful of all.

Re:Outgrowing Software by FpUser on Sunday March 21, 2021 @10:20AM (#26530655)
>"Software on a computer is useful. Networked software is more useful. Cloud and IaaS is really useful, SaaS is a really really useful"

I actually prefer the reverse progression as the closer it is to my computer / my server the less I spend on feeding somebody else's insatiable appetites. Being connected is one thing. Giving somebody else more and more control over your business is totally different.

Re:Outgrowing Software by moonbug on Sunday March 21, 2021 @10:09AM (#26530570)
your periodic reminder that Excel is programming.
Re:Outgrowing Software by nullserver on Sunday March 21, 2021 @11:56AM (#26531337)
It’s also extremely productive.

Management always thinks a new web report / dashboard will solve all the problems.

Team then spends a week or month building said report into system.

Only to find that it doesn’t help anything. Six months of iterations later it’s correct and useful.

Or have someone build a one off report in excel. Iterate a few times that afternoon until it’s correct. Then it’s handed off to developers. Avoiding months of rework.

Re:Outgrowing Software by MaxBarraclough on Sunday March 21, 2021 @11:05AM (#26530981)
Respectfully, I don't think it's insightful to point out that Excel is Turing complete. That's a technical curiosity, it doesn't inform our discussion here.

The boundaries of what we call 'software development' are fuzzy, but that's true for all sorts of things. Assembling a computer doesn't make you an electronic engineer, despite that you're building a complex electronic system. If a high school teacher comes up with a basic arithmetic question that, by coincidence, has never been asked before, the teacher still doesn't count as a research mathematician for solving it.

Re:Outgrowing Software by 6gvONxR4sf7o on Sunday March 21, 2021 @12:25PM (#26531553)
I think you misunderstood the point (or they edited the comment). Excel is user programmed automation, and it’s incredibly wide spread.
Re:Outgrowing Software by moonbug on Sunday March 21, 2021 @01:39PM (#26532221)
"Excel as technical curiosity".

Peak SV.

Re:Outgrowing Software by nickthemagicman on Sunday March 21, 2021 @07:52AM (#26529728)
Reading itself used to be considered a skilled craft.

Only 4% of people knew how to read during the middle ages.

Mostly clergy and civil servants.

The grandparent poster is right imo. If programming becomes just another thing everyone knows, and takes a software class every year like they take an English class, the world will be way better off.

Re:Outgrowing Software by fauigerzigerk on Sunday March 21, 2021 @08:38AM (#26529968)
The important difference between programming and reading/writing is that written language is just another representation of natural language. All the complexity is in understanding and using natural language. Reading itself is trivial once you have some practice.

Programming on the other hand is creating new abstractions (i.e modelling). It never becomes trivial, because it's not just a new encoding of existing abstractions.

I think programming is no different than maths. Yes, everyone will have to know a little bit of it, but very few will be capable of modelling complex problems or implementing large software systems.

Re:Outgrowing Software by jart on Sunday March 21, 2021 @11:02AM (#26530959)
Well lots of people can read and write, but few people are able to write a good novel. Everyone I know who isn't necessarily a software engineer but has basic programming skills has benefited from that knowledge. For example with everyday office work there's a big difference between someone who's able to use Word and someone who's able to use Access. The latter requires programming know-how. Also shell scripts and automation. It has a huge productivity amplifying impact.
Re:Outgrowing Software by fauigerzigerk on Sunday March 21, 2021 @12:17PM (#26531486)
>Well lots of people can read and write, but few people are able to write a good novel.

That's exactly my point. Coming up with a great story is very difficult. Writing it down is trivial in comparison.

>Everyone I know who isn't necessarily a software engineer but has basic programming skills has benefited from that knowledge.

I completely agree. It's very useful and should be taught in school just like maths is taught in school. Maybe it should be taught as part of maths.

My point is that the cognitive difficulty of formal modelling is on a completely different level than that of transcribing words. We should adjust our expectations accordingly.

Re:Outgrowing Software by jart on Sunday March 21, 2021 @01:41PM (#26532239)
I agree but consider that Homer, one of the greatest storytellers of all time, was most likely illiterate. I've also met people who are outstanding at computer science but struggle with coding. I just think they're different skills and the people who can do both know how smart and important they are. It's sometimes a source of discouragement when the aim is to teach coding as a form of literacy. I read a story once where this company a few decades ago tricked a group of secretaries into learning to code LISP because they didn't tell these women that what they were doing was programming. Similar to the airline ticket salespeople who used to do things like edit raw memory in their sabre terminals, which is something most programmers today would believe they're not smart enough to do. It's amazing how clever people are at figuring things out if we avoid thinking about technology labor with the classic division of labor assembly line model.
Re:Outgrowing Software by lifeisstillgood on Sunday March 21, 2021 @02:42PM (#26532762)
I seem to remember a similar using LISP story - not tricking people but they gave sales team / admin lisp tools because they did not have time to code the "proper ones" - and the employees (women) rebelled when people tried to take them away. I want to say it was ... wrote much of netscape then ran a nightclub ... memory like a sieve I have.
Re:Outgrowing Software by EdwardCoffin on Sunday March 21, 2021 @04:48PM (#26533854)
Rather than JWZ, you may be thinking of the Mailman system for customer service at Amazon in the early days, as recounted by Steve Yegge [1]

[1] https://sites.google.com/site/steveyegge2/tour-de-babel

Re:Outgrowing Software by Wowfunhappy on Sunday March 21, 2021 @11:17PM (#26536495)
> I read a story once where this company a few decades ago tricked a group of secretaries into learning to code LISP because they didn't tell these women that what they were doing was programming.

I'd like to read this if anyone can find it. :)

Re:Outgrowing Software by kazinator on Monday March 22, 2021 @01:13AM (#26537067)
That was written by Richard Stallman, and is right on the GNU website:

https://www.gnu.org/gnu/rms-lisp.html

Re:Outgrowing Software by lifeisstillgood on Sunday March 21, 2021 @10:37AM (#26530761)
By saying " ed few can do the hard stuff", is that not redefining use of maths to an arbitrary cutoff line.

Think of all the instances of maths used globally. Do the millions of people who more or less get the idea of an average - this is used across politics, and common discourse. Does that count as maths? I would say yes, just as a for loop is programming. No we are not expecting a compiler but just "arranging the world so it can be easily iterated over" is a fine common objective.

Re:Outgrowing Software by fauigerzigerk on Sunday March 21, 2021 @11:29AM (#26531155)
>Does that count as maths?

Yes, that's exactly what I meant when I said "a little bit of it".

Re:Outgrowing Software by nickthemagicman on Sunday March 21, 2021 @09:03AM (#26530073)
Language is just a tool to express a collection of ideas.

The reason programming is not an extension of our natural language is because we haven't included those concepts in our natural language yet.

The world would be way better off if everyone had better logic and analytical thinking ability

Re:Outgrowing Software by colinb on Sunday March 21, 2021 @08:04AM (#26529794)
Interesting idea. Will everyone spend the next twenty years complaining about how much they hated Mrs Jones the programming teacher and how Stroustrup ruined programming for them?

Put it another way. The reason we interview people the way that we do, is because it isn't realistic (unfortunately) to expect that a CS grad can fizz-buzz, or delete from a linked list, or whatever. Anyone who has spent a little time interviewing can confirm this. Why should we expect that secondary education would do a better job?

Re:Outgrowing Software by nickthemagicman on Sunday March 21, 2021 @09:04AM (#26530077)
If they were taught this kind of thing from an extremely young age in school every year these interviews would be trivial, Just like speaking your native language is trivial.
Re:Outgrowing Software by dasudasu on Sunday March 21, 2021 @09:38AM (#26530337)
We don't quite reach a very high degree of practical math literacy even though everyone is taught from a young age. Calculus considered as "incredibly difficult" being an example.
Re:Outgrowing Software by fakedang on Sunday March 21, 2021 @10:10AM (#26530577)
I know a lot of students who would not understand the idea behind calculus concepts, even though they knew the formulae. They simply could not grasp a very simple thing like "area under the curve" or "Slope of a curve". This was at a large private school with a selective admissions process. I know for a fact that my college educated parents (50+) would not know how to solve a calculus problem. So yeah, Calculus is a pretty bad example because it IS incredibly difficult for the general population.
Re:Outgrowing Software by nickthemagicman on Sunday March 21, 2021 @11:52AM (#26531305)
I don't know if this is like a smarts thing or just a poor math education thing.
Re:Outgrowing Software by 6gvONxR4sf7o on Sunday March 21, 2021 @12:31PM (#26531596)
As someone who does math for a living, I’m always frustrated because I truly believe it’s a poor math education thing. But then people just respond, “oh MYNAME, you just think that because you’re good at it/you’re a math person.” As if that made the point less valid rather than more valid.
Re:Outgrowing Software by AlchemistCamp on Sunday March 21, 2021 @12:41PM (#26531696)
Leonardo da Vinci was likely one of the most intelligent humans ever to have lived, and didn't understand calculus. It wasn't for lack of interest, either! He was fascinated with parachutes, timing falling objects and trying to understand the rates of change. But despite nibbling at the edges of calculus, he never got there.

In contrast, it's now completely ordinary for a teenager to not only get to the core ideas but solve complex calculations with them in timed tests!

Re:Outgrowing Software by nickthemagicman on Sunday March 21, 2021 @03:10PM (#26532986)
This is an odd comparison.

I think DaVinci was way before Newton.

High school students aren't asked to invent calculus just to understand it.

I didn't invent djikstras graph traversal algorithm but I can read and understand it.

I think there's a difference between original invention and understanding 'n usage.

Re:Outgrowing Software by AlchemistCamp on Sunday March 21, 2021 @04:07PM (#26533485)
We all stand on the shoulders of giants and have increasingly powerful complimentary cognitive artifacts that let us easily do things that used to be very difficult.

In a more extreme version, consider that ancient Greek and Roman mathematicians struggled with long division problems that many of us can do in our heads now!

Why? Arabic numerals are far more effective than Roman numerals for the task and after having learned them, we have a permanently increased ability to do certain kinds of calculation.

Re:Outgrowing Software by nickthemagicman on Sunday March 21, 2021 @08:02PM (#26535299)
That's very fascinating.

I look at quicksort and that was revolutionary at the time.

Do we have ways to better conceptualize the world around us? Or are our brains evolving outside of some normal evolutionary process?

Fascinating to me.

Re:Outgrowing Software by AlchemistCamp on Monday March 22, 2021 @01:01AM (#26537017)
I think both are true but mostly the first. Human evolution has sped up dramatically in the past 15,000 years, but it's still very slow.

Arabic numerals, literacy, maps, bayesian reasoning, etc are unnatural, but better ways to conceptualize the world around us and these tools and others have steadily become more prevalent throughout the population.

Maybe quicksort hasn't permated through much of society, but binary search has! People born 100 years ago became comfortable flipping through phone books and quickly finding a name, whereas that would have taken a conceptual leap for most born 200 years ago.

Re:Outgrowing Software by nickthemagicman on Sunday March 21, 2021 @11:31AM (#26531170)
I completely agree with you.

I think it's a failure of the school system from a very early age because math is heavily dependent on foundations of previous classes.

And I think it's more than just sharing the information we have to also make rational thinking fields as fun and cool as the emotional expression fields of study like English or Music and not the domain of 'nerds'.

I think our whole culture would be way better off if people had better critical thinking logic and math skills.

Re:Outgrowing Software by 6gvONxR4sf7o on Sunday March 21, 2021 @12:44PM (#26531722)
> because math is heavily dependent on foundations of previous classes.

This is a point I hadn't thought enough about before. Great insight.

It makes me think that maybe we just suck at education in general, and it only shows up in the subjects where continuation is dependent on previous courses.

If you completely fail to understand american history, you can lie to yourself about being good at it, and continue to believe that when you get to european history. If you completely fail to understand the lessons from Fahrenheit 451, you can believe you're good at English (the subject, not the language) while you move on to Shakespeare.

The only (pre-college) subjects I can think of that really require you to actually understand the prereq's material are math and language. And they share that people say "I'm just not a math person" or "I'm just no good at languages."

I'd never thought about it with that lens before, but now I'm feeling kinda pessimistic. Like, if this hypothesis is true, it's not about bringing math education up to the bar of other subjects, it's about overhauling the entire system.

Re:Outgrowing Software by isbvhodnvemrwvn on Sunday March 21, 2021 @12:50PM (#26531774)
You use your native language all the day, all the time. It's nowhere near the same.
Re:Outgrowing Software by maxwell on Sunday March 21, 2021 @09:27AM (#26530239)
Agreed.

Widespread ability to read and write natural language seems to've, eventually, made written constitutions not so-much "viable" but "necessary".

It's easy to forget how innovative the U.S. Constitution was for being written, content aside.

https://en.wikipedia.org/wiki/List_of_national_constitutions

Definitely excited about the social implications of widespread ability to read and write executable language in the long run, note when France crossed 50% literacy though:

https://en.wikipedia.org/wiki/Literacy#/media/File:Illiterac...

Re:Outgrowing Software by lifeisstillgood on Sunday March 21, 2021 @10:41AM (#26530791)
I think I am the grandparent - and yes I agree, software is going to be table stakes for the next generation of corporate players (and by implication, those corporates who cannot will mean a huge gap opening up).

It's not just "can my employees write a for loop" but it's "do we store data sensibly, when upper management wants a report is there a data history stretching back to the raw (ie no manual involvement). Do we all publish APIs and work through those defined interfaces - and many more.