

Ask HN: Will the general-public one day be able to code?   - paisible

Had this debate with a friend a while ago ; we're both developers and have completely different views, I wonder what the HN crowd thinks about this.<p>IMO, today's "mainstream information knowledge base" already involves concepts that a few years ago would have been considered the domain of coders.<p>One example is the use of markup tags in blog comments (&#60;b&#62; and &#60;i&#62;). Granted, this is a simple concept to understand, yet it is the foundation of HTML.<p>As people are increasingly subjected to concepts like "markup language", and unknowingly end up assimilating them, how long before more complex knowledge is added to the mix ?<p>Keeping with the markup example, once you understand what &#60;b&#62; does, it's a small step to understand what &#60;div&#62; does. One applies style, the other structure.<p>With HTML5 being a "language" that allows infinite power of expression on the web (both structure and style), how long before students decide that this is a language that they ought to know, because it gives them the flexibility that existing tools simply don't ?<p>The success of Codecademy seems to confirm that given the right tools, the general public includes an intellectually curious bunch that finds it fun to learn these concepts.<p>What do you guys think ?
======
BrandonMTurner
It is hard to define what the "general public" is in your post. But I will
assume, that you mean, at one day will 50% of the population that has access
to a computer will be able to code.

And from me, I think that is an easy "No". I don't know why they would want to
either. A lot people are not interested in buildings things (physical or
digital) and are not interested in how things work. If they were, then I think
by this point the general public would know how a car works, but I would say
most people don't have a non trivial understanding of a simple motor.

Moreover, I think you are highly overestimating the ability of the general
public in that it is a "small step" from going from wrapping text with some
kind of special marker (<b>,<i>, etc...) to change the font style to how a DOM
and layout engine works. In my experience, obviously this is very anecdotal,
it is hard to explain the difference between block elements and inline
elements, margins and padding to people that are smart (at least in my
opinion) and truly want to learn.

~~~
kls
I think the car analogy is spot on, most people do not want to crack the hood
and get there hands dirty. There have been many attempts to create visual
languages as well as user friendly development environments. Probably the two
that have come the closest would be Flash and Microsoft Access and as history
has shown even development in those two technologies gets relegated to a
development roll. The problem is that development get's complicated fast and
these environments by their nature just cant deal with that complexity, and if
they do deal with it, they do so by dropping back to allowing the user to
write code.

If and when computers advance to the point of being able to read our thoughts
and translating that into an application, then we will see the nature of
programming truly change. But I would suspect at that point most people would
not be using vendor written software, but would be thinking up custom tailored
software that works the way their mind thinks. The very nature of computing
will have changed at that point so whether or not there are programmers, would
be akin to wondering if their will be coopers to make barrels for grog. It
depends on a plethora of variables that may not even exist due to the nature
of the product being totally different by that time.

------
Detrus
It simply takes too long to learn with today's state of programming.
Simplified natural language programming
[http://blog.wolfram.com/2010/11/16/programming-with-
natural-...](http://blog.wolfram.com/2010/11/16/programming-with-natural-
language-is-actually-going-to-work/) may be what they pick up.

------
sathishmanohar
tl;dr;

Its funny, I've been thinking about this recently, and the conclusion I came
to was, People doesn't need to code actually. Coding is the process to getting
desired output, which can be totally abstracted out for most common tasks.
Look at ruby on rails, It hugely reduces all the mundane tasks that
programmers needed to do.

If programmers care about DRY principle, they won't design yet another
shopping cart.

Look at google forms, Its so easy anybody can do it without knowing to code,
imagine coding a form with same complexity within the time it takes to set it
up. Its not possible.

So, my point is customers people want, nine in holes in their walls, not nine
inch drills.

coding is kind of nine inch drill ;)

------
paisible
this is on HN front-page right now :
<http://www.bbc.co.uk/news/technology-15916677>

------
Mz
I guess that depends on how loosely you want to define your terms. I'm a
former homemaker whose writings on some emails lists were seemingly popular
for a time. This led to a couple of websites. I eventually learned a little
(x)html and css to manage my sites. I suppose you could define me as "part of
the general public" and "someone who can code". But I certainly don't think of
myself as a hacker or programmer and couldn't qualify for a job writing code,
just like I know a little conversational German, can count to 10 in Russian,
know a smattering of Spanish words and can read and write a smidgeon of French
but I don't think I'm a linguist or even bilingual. I'm simply not that
fluent. I just dabble.

------
hendrix
The general public will be limited to typing homework problems into wolfram
alpha...

