News for hackers. Stuff that matters.
Re:The Awk Programming Language (1988) [pdf] by blowski on Thursday May 24, 2018 @06:05AM (#17142581)
> a language designed for people that do not enjoy programming, which sadly seem to be the majority in our industry

Could you expand a bit on that comment?

Re:The Awk Programming Language (1988) [pdf] by mjburgess on Thursday May 24, 2018 @06:39AM (#17142710)
If I can add my interpretation of his comment:

Consider which language is sold to people-off-the-street as "How to Program!" it's python. Most of these people do not enjoy the cognitive effort, detailed typing and symbolic work, algorithmic thinking, architectural thinking, linguistic thinking that is "programming". At best, the enjoy the end result, but not the process.

Python taught in this way at least, fools people into thinking that programming is about something far simpler and more toylike than it is. Many "hard" disciplines do this: sell children and lay people on toy experiments that momentarily captive but have no relationship to what a practitioner of that discipline does.

The older system of recruitment would be to polarized hard, ie., to throw people in at the deep-end to scare off all the people who would waste time/resources training. Who remained really wanted to do that thing (eg. physics, programming, ...).

Today we're doing something perhaps vaguely immoral: selling people on a career that has no relationship to the sales pitch.

Re:The Awk Programming Language (1988) [pdf] by blowski on Thursday May 24, 2018 @06:59AM (#17142812)
To me, that sounds like gatekeeping - as in "it's only programming when it's insanely difficult".

Somebody playing football in a Sunday pub league is still playing football, and still loves playing football, even if they're not at the same standard of Lionel Messi.

For me at least, I feel the same about programming. I love understanding somebody's problem, and building a solution for them that solves that problem. I normally use PHP (and sometimes Python or Ruby or JavaScript) because they make it easier for me to focus on the problem, rather than language details. I can't always solve the problem because it's too difficult, and perhaps some of my solutions are not 'optimal'. But I feel hurt by the idea that because I don't have a strong understanding of how Python works at a really deep level, I'm not a real programmer.

I also think that's a great way to piss people off who are just getting into the industry, and may one day become great programmers - even Linus Torvalds was a junior once. I'd encourage them to keep going, keep learning, and keep helping people solve their problems (and getting paid good money for doing that).

Re:The Awk Programming Language (1988) [pdf] by mjburgess on Thursday May 24, 2018 @07:19AM (#17142910)
Its only gate-keeping if people want to be past the gate. I'm not talking about deterring people who are interested.

The vast majority of people do not want to be programmers and would not enjoy programming. Delaying the moment the actually have to do something difficult with a programming language is not especially heathly.

How would you feel about a career in football sold to you on the basis of table pong? Keep playing the pong, and then one day, you're face is in the dirt and you drop out.

The self-esteem hack psychology of the 60s-90s equivocated encouraging people with lying to them, as-if the only way we can get programmers is by lying about what programming is about. This isnt encouraging anyone, it's lying to them.

Re:The Awk Programming Language (1988) [pdf] by exelius on Thursday May 24, 2018 @08:30AM (#17143277)
I think you’re confusing “programmer” with “10x programmer”. Plenty of people are capable of implementing business logic in code. Very few are capable of designing that logic — they’re the 10x programmers who know all about data structures, algorithms, etc.

You can’t run a business expecting every employee to be a rockstar. It just doesn’t scale. So you skill it down and put the high-skill people where they can have the most impact.

Re:The Awk Programming Language (1988) [pdf] by blowski on Thursday May 24, 2018 @10:48AM (#17144494)
It sounds like we have a different definition of programming. For me, programming is producing code that gets executed by another piece of hardware or software.

The complexity of the code is not part of the definition. Nor is your understanding of the hardware/software involved.

Re:The Awk Programming Language (1988) [pdf] by mjburgess on Thursday May 24, 2018 @11:21AM (#17144856)
Enjoying programming is enjoying programming. The way it is sold, sometimes, is not as programming.

Unless you've experienced this sales pitch you're not going to connect with the point i'm making.

Re:The Awk Programming Language (1988) [pdf] by kchr on Friday May 25, 2018 @11:31AM (#17154650)
Care to give an example pitch from the real world?
Re:The Awk Programming Language (1988) [pdf] by singingfish on Friday May 25, 2018 @08:41AM (#17153040)
Perl isn’t difficult in the same way that the English lnguage isn’t difficult. Easy to get started with, takes a long time to master. Fortunately for us die hard perl types it’s quite capable of cleanly solving all normal dynamic language problems, and some seriously abnormal ones. And because of the insanely good backcompat in perl we’ll see the pendulum swing back to perl 5 some time in the next decade.
Re:The Awk Programming Language (1988) [pdf] by kamaal on Thursday May 24, 2018 @09:22AM (#17143699)
>>To me, that sounds like gatekeeping - as in "it's only programming when it's insanely difficult".

The whole point of programming is power and flexibility. Else there would be no need to move beyond logic gates.

The problem is tools sold for newbies tend to take away too much power to make it easy for people to start, but then keep them, right there, all life.

Re:The Awk Programming Language (1988) [pdf] by ams6110 on Thursday May 24, 2018 @08:53AM (#17143445)
When I did my comp sci undergrad degree, languages per-se was not part of what was taught in the classroom. Whatever language that class was using, be it assembler, scheme, C or some other higher level language, it was up to the student to figure out the syntax, how to run the compiler, etc. You got some help and basic examples in the discussion sessions but it was not part of the lectures. And there was no web, no stack overflow, no google at the time. You had a book about the language, some local newsgroups (and the larger USENET) and that was it.

If you didn't enjoy reading, puzzling, and banging your head against the wall you would wash out after a couple of classes.

Re:The Awk Programming Language (1988) [pdf] by code_duck on Thursday May 24, 2018 @07:17AM (#17142900)
What language do you think beginners should be learning that would not keep them from what you say is ‘cognitive effort, detailed typing and symbolic work, algorithmic thinking, architectural thinking, linguistic thinking’. Perl? And why is Python incompatible with those things?

Like many of us, I started programming with BASIC, not C or assembly, but I turned out fine. I don’t think people need to or necessarily can absorb all the high level details straight off. To me python seems well organized enough that it makes a great language for beginners.

Re:The Awk Programming Language (1988) [pdf] by mjburgess on Thursday May 24, 2018 @07:26AM (#17142947)
Python is fine.

Python is perhaps my favorite language, and I use a dozen fairly regularly.

My point was about how python sometimes gets used, and how its design is especially facilitating to that use.

Re:The Awk Programming Language (1988) [pdf] by code_duck on Thursday May 24, 2018 @07:31AM (#17142974)
As far as the second part of your comment, I think if you make topics like this impenetrably difficult and complex at first, it will not only filter out the non-dedicated, but also those who don’t yet know that they would like to be dedicated to it.
Re:The Awk Programming Language (1988) [pdf] by singingfish on Friday May 25, 2018 @08:11AM (#17152777)
Aka python helps you think more like the computer does. Perl helps the computer think more like you.
Re:The Awk Programming Language (1988) [pdf] by tzahola on Thursday May 24, 2018 @02:11PM (#17146700)
Python is the rubber sheet analogy of programming.
Re:The Awk Programming Language (1988) [pdf] by kqr on Thursday May 24, 2018 @07:52AM (#17143079)
Note that it sounds like a snide remark but it doesn't have to be. One could interpret it as, "Do you want to simply get things done, and not bicker endlessly about microoptimizations or where the braces go? Python is for people who simply want to complete their tasks and then go home and spend their time doing more stuff they think is fun."

It's not necessarily a bad thing to be productive, instead of inventing new problems for yourself to keep having programming things to do.

(Note that none of this necessarily reflects my personal opinion; it is just an alternative way to read the grandparent.)