Hacker News new | ask | show | jobs
by lifeisstillgood 2879 days ago
I believe that software is not a professional practise but a new form of literacy (in fact the book I am writing is all about this (Real Soon Now, thanks for asking))

And when you see software as literacy a lot of the stuff he moans about simply goes away.

Yes it is seen as exclusive and a priesthood - imagine what illiterate serfs thought of those who could write. It took years of practise.

No it's not a good idea to make programming more accessible. We don't have easy literature, we don't think someone who reads and writes solely with fridge magnets (#) has mastered the language. It is a good idea to invest more in education and that is being done reasonably well, but as in all things more is needed.

Yes the results can be a car crash at times - my favourite analogy for this is our management structures.

Would we ever take a literate organisation like the Washington Post or Harper Collins and put a layer of senior management in place who were totally illiterate from birth? If we did do we think they would make sensible decisions, empower those organisations? No.

Yes there is a lot of shiny new thing, going on. But that's because there are a lot of people doing software - and many of them select for being good at marketing too. The real big software projects tend to select for conservatism married to pragmatism- look at Linus on a mailing list or the PEP process, or Debian.

So yeah software needs to sort it self out - and professional bodies will start to solidify (personally I feel a lawyer like body, concerned with managing the course of OSS code used in government is the most beneficial), and until then don't try and fix the world or boil the ocean - just focus on making your coding practises as good as possible, even if your boss is making crazy calls.

(#) Wanted: Better analogys - can you write pithy phrases that sizzle like ice cream on a griddle? Contact the author in complete confidence today.

4 comments

> No it's not a good idea to make programming more accessible. We don't have easy literature, we don't think someone who reads and writes solely with fridge magnets (#) has mastered the language.

You're mixing up the content of writing with the methods of writing them. Writing "a rose by any other name would smell as sweet" is still as poetic when using fridge magnets.

Because of that, you fail to see that modern writing systems were massively improved by making it more accessible than what came before it, and that this has had a major impact on literacy levels as well. We started with Scriptio Continua[0]. We had to invent spaces and punctuation. Originally we just had capital letters. And so on.

And if we look beyond the West (which we should), you will encounter Hangul, which is a phonetic alphabet that points out how arbitrary our letters really are and replaces it with something more systematic and easy to learn[1][2].

Sure, mastering writing is hard. Basic literacy and writing systems do not have to be.

[0] https://en.wikipedia.org/wiki/Scriptio_continua

[1] How Korea crafted a better alphabet - History of Writing Systems #11 https://www.youtube.com/watch?v=j9hzK0K1L4I

[2] Learn to read Korean in 15 minutes, http://www.ryanestrada.com/learntoreadkoreanin15minutes/

It's hard to find a suitable analogy (see my advert at end of last post) for almost-literate. I think i would be better saying something like ::

it does not matter if one is born in china or UK or korea - children are given huuuuge amounts of training to become literate. We don't dumb down the writing system, and we don't dumb down the literature written in the system, we spend more on training the kids.

Similarly with programming - we should not look for some uber click and go system that makes it easier - we just have to work harder.

Fridge magnets are just a placeholder for "trying to make reading and writing easier without actually learning to be literate". I mean if someone writes in korean no one suggests they are not literate because it's easier. but if someone can only communicate by drawing, like some ultra-fast pictionary competitor, it's hard to say they are literate.

> it does not matter if one is born in china or UK or korea - children are given huuuuge amounts of training to become literate. We don't dumb down the writing system, and we don't dumb down the literature written in the system, we spend more on training the kids.

We definitely dumb down literature for kids. In fact, we dumb down literature in a gradient to provide a gentle on-ramp.

For the writing system, that's a bit more complex of a question, but at a minimum we judge their use of it more tolerantly (same with spoken language)—this seems somewhat parallel to using a simplified language or environment in programming.

Programming does not have a nice alphabet because it has to be unambiguously defined for stupid computers to understand.

There is no such thing as a programming alphabet.

Do you have trouble with metaphor, perhaps?

Because "alphabet" happens to be the fundamental writing system for human languages and therefore crucial to enabling literacy. I am simply using it as an analogy for us needing better programming environments to enable better programming literacy.

How would that better environment look?

So far, we had fails like Squeak and relatively low succeesses like Jupyter and Delphi.

The root of the problem is that humans communicate in extremely ambiguous and convoluted ways which makes programming quite atypical.

> How would that better environment look?

Come on, what kind of question is that? If I knew how to improve it I wouldn't be chatting here with you, I would be doing something about it.

Also, you should probably watch Bret Victor's videos, especially "The Future of Programming", if only to realize that we have been improving the programming environment since the days of punch cards, and are still in the process of doing so.

https://www.youtube.com/watch?v=8pTEmbeENF4

Following your metaphor, we're at a point equivalent to people needing to call a scribe to write their tweets and Facebook posts for them.

In programming, there's no tool that allow non-priests to automate repetitive tasks over data sets (though there are some simple trigger-based programmable actions, like Automator or ITTT).

The closest thing allowing end-users to handle repetitive data manipulation is the Spreadsheet, but it requires manual input-output of data, and it isn't easily integrated with actions in the operating system or other applications.

We are at a point where people need scribes to download their data and process it. Software is not writing - it's software and it needs an ecosystem around it. It's why it is just wrong that phones are locked down and you cannot get root or a command line.

Reading and Writing we have sorted. We can write on Facebook ok. what we cannot do is arrange our data so it can be iterated over by our script / agents.

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

Literature is accessible and as a society we value the importance of ensuring that everybody has access to the power it provides. You can either believe that programming is for the elite /or/ that it is like literature.

programming should be for everyone. The UK has gone from IT skills for kids ("using Word and excel") to actual coding classes - it's a long way from good, and we need to see "coding"'alongside maths and geography. Sooner rather than later.

no it's it for the elite. see me for examples.

I was quite pleased with your analogy! But perhaps I misunderstood. I was reading the subtext as a very clever dig at the "hashtag generation" by likening their preferred method of communication (140 character thought bubbles, txt-ing, snapchat etc.) to something as banal as fridge magnets.
I am not clever enough for deep clever digs. I just do me. :-)