Live data from Hacker News

The problem with programming and how to fix it

alarmingdevelopment.org

81–90 of 99 posts

Re: The problem with programming and how to fix it

#81

This is like trying to suggest we need more women in the NFL. Programming is an extreme sport where geeks excel - men and women, but mostly men - who else has the patience to deal with the minutia? Maybe I'm just biased towards rhetoric that suggest we should remove extreme variations between populations of humans, as segmented by occupation (or whatever). Let's embrace our differences. If programming was easy to do…

> who else has the patience to deal with the minutia? Women. What the hell is this? > If programming was easy to do at high levels of excellence by anyone We're not expecting programming with high levels of excellence from no programmers. Just some basic programming would be nice without having to spend a week setting up a dev box before "Hello World" even can be attempted.

That's like saying it would be nice for women to learn how to tackle linebackers. Not everybody needs be a geek who codes, just like not everybody needs to weight 250lbs and run a 4.4 40-yard dash.

If you can't figure out how to do "hello world" then this is an excellent sign that you should be doing something else.

Re: The problem with programming and how to fix it

#82

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 t…

> 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 wri…

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.

Re: The problem with programming and how to fix it

#83

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 t…

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.

Re: The problem with programming and how to fix it

#84

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 t…

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 Spreadsh…

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.

Re: The problem with programming and how to fix it

#85
post #18

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 t…

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. :-)

Re: The problem with programming and how to fix it

#86

Earlier quoted context omitted.

> 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 wri…

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 wi…

> 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.

Re: The problem with programming and how to fix it

#87

> What reason is there to believe we can improve programming technology to be vastly easier and more accessible? To start with, spreadsheets. So many failed efforts to make programming vastly easier and more accessible have started with almost this exact line. I think it's possible that there is a seductive trap there. We see spreadsheets and we think, “programming that doesn't have the downsides we associate with sp…

> Unfortunately application programming got trampled in the internet gold rush. No, it didn't I think if you don't rely on memory but examine the history as Jonathan Edwards has done, you would be surprised to find that the late 1990's was, indeed, a big cliff in terms of application development innovation. You can argue the reasons -- maybe it's not about the internet gold rush -- but you would have to do a small fr…

> Frankly, I'm not sure you know what you're talking about. Before the web was popularized, designing a layout meant a using a simple layout tool. Now it's a stack that is at least HTML, CSS and JS, and often more. We're doing more, to be sure, but you can't honestly claim, without a deep ignorance of the past, that it's easier or more inclusive.

Since we're on the topic of UI, I think this is actually a great place to discuss what has happened to programming.

You used to be able to use a simple layout tool. But we traded that away for a substantially increased level of visual sophistication that wasn't practical with the predecessor technologies. For visual sophistication, you had a couple other quite complex options: render it yourself, or for about 15 years, use Flash.

However, we've also smoothed out the learning curve a lot. Even if you have to learn the HTML/CSS/JS triad, we've figured out how to teach it more incrementally.

Even UI in 3d games has gotten dramatically easier. These days you can hack something together in Unity with barely any coding knowledge. When I first started learning 3-d programming 10 years ago, your options were basically to learn C++.

Maybe it's not a 100% obvious conclusion, but I think on the balance of things it really has gotten easier and more inclusive.

Re: The problem with programming and how to fix it

#88
post #20

Simplifying software is a fantastic goal, but blaming the situation on an "isolated subculture of nerdy young men" is the opposite of helpful. Also, I would seriously consider the fact that some things are simply complicated and there's no conspiracy behind it. A lot of very smart people work very hard to find ways of taming this beast. It's just hard.

I’m interested as to whether there really is complexity that can’t be simplified in general. Here’s an obvious example where it could be: web apps are mostly conceptually simple: a thin client which is basically a UI framework talks to a process on a remote server. So you need something to develop the UI and something for the server. But instead of the “web UI toolkit” (which could mostly be a graphical tool) we have…

Yes, it's quite complicated now (but it's getting better).

But it's not as easy as replacing it with something simpler. If you do, you will discover all the things you can't do with it. So you start to improve it, add features, etc. And after a short time, it's probably even more complex as html/css and still not as flexible and powerful.

Re: The problem with programming and how to fix it

#89
post #79

Earlier quoted context omitted.

I’m interested as to whether there really is complexity that can’t be simplified in general. Here’s an obvious example where it could be: web apps are mostly conceptually simple: a thin client which is basically a UI framework talks to a process on a remote server. So you need something to develop the UI and something for the server. But instead of the “web UI toolkit” (which could mostly be a graphical tool) we have…

conceptually simple, perhaps, but in practice they are far from it. HTML, CSS, JS, and web server tools are complex because web pages are extremely parameterized over different content, client sizes and types, user preferences, and data. From being a long time web developer, the graphical layout tools are basically only useful for graphic design, because they output code that only works for the exact layout and conte…

That, and also needs beyond the initial creation: Adding new types of content, modifying things without having to start from scratch, being easy to diff for change reviews and for merge-conflict resolution, supporting search engine crawlers, deep links, permanent links, interacting well with the back button. And that's without getting into the cases in which you have content that updates in real time, user content, the need to support offline mode, or any of the things that blur the website / application line.

Re: The problem with programming and how to fix it

#90

Lemme use an analogy: Why is building a house not accessible to all? Surely house building could be more like building with legos. Building a proper house is so much more that just piling rocks mixed with mortar. You have to take into account the ground composition, moisture, light, ventilation, red tape, usability, safety, etc. In other words: it takes a huge set of skill. You can use advanced tools, like a tractor…

Not all programming is akin to building a house. Some of it is similar to hanging a shelf in the kitchen. Why should it take an architect to drill the holes and fasten the wall plugs to hang a spice rack? Sure it might need some training, but it should be the kind that can be explained in a DIY TV show.

Most of the work in programming is in describing (in very strict and pendantic terms) how different systems interact with each other and how the data flows from one end to another. The actual work of moving the data and doing all the calculations is handled by machines. In that sense, the work done in programming is designing and integrating systems, not the execution of it. In your analogy, installing a shelf would be more like installing Photoshop (which we can presumably agree is actually simpler than installing a shelf). Most people do not design their own shelf, select the most appropriate fasteners, source raw materials and send it to manufacturing to be mass-produced. A shelf is also a relatively simple piece of furniture. What about a desk-drawer or a closet? Sure, you can buy the raw materials and power tools at any hardware store, but is it trivial for anyone to actually design and build usable (and desirable) furniture from pieces of plywood?
Post reply on HN