Hacker News new | ask | show | jobs
by keithpeter 5146 days ago
Disclaimer: I was so impressed with Learn Python the Hard Way that I bought the hardback in the hope that Shaw gets a beer out of it. I've made it to Ch 11 and will finish the course when I get my students through their maths exams.

PS: Zed, magstep3 in TeX, please, I need glasses as it is.

Is it possible that there are degrees of code writing?

I publish my humble Web site using some bash scripts I hacked up to generate pages from markdown text then to generate the index and lftp the lot up to my Web server space. That is coding, but it is not software engineering or industrial strength. The system probably only makes sense to me.

I bodge together R scripts that produce interactive 2d plots I can use in maths teaching. Again not engineering but useful.

I'd like to be able to hack up some small apps for Ubuntu, just silly front ends for things. The 'developer story' as Shuttleworth puts it is not too far ahead yet, so I'll have to get my head around Python/Glade. I'm reading my way through the Pyroom code and scratching my head a lot. I think that is getting closer to trade school coding but I'm no credible threat to a proper coder and have no intention of being.

Does HN collectively think there is a valid space for end user coding as in the BASIC days? If you want to get philosophical, is there space for bricollage as well as architecture?

2 comments

Professional programming's only been around for 2-3 generations. I don't think there's any hard evidence for the skills being limited to a particular domain - rather the opposite, we keep discovering new things to apply code to.

It used to be that programming was seen just as "large scale number crunching" and even top people in the computer industry didn't see greater application(e.g. the "only 5 computers in the world" quote often attributed to Tom Watson). We've progressed quite a ways from that point, and nowadays I think we've reached an era where no programmer can be expected to know all the programming knowledge that exists. There are too many different domains and specialties.

And that, in turn, means that as a society we need yet more programmers to cover all possibilities and make more discoveries. I think "skill" is very tangential to the discussion, because one of the domains that has ample room to progress is language design and engineering techniques.

When people online toss around phrases like "best practice" and "professional-grade" you can take it with a grain of salt - most code barely works, we don't actually know how to do it right, and we spend most of our time on concerns that are bikeshedding, not order-of-magnitude productivity enhancers. We're still catching up with some ideas from the 70s about how to build software.

Instead just be "humble yet courageous." If you don't know if it's right, marshal all your available defenses - source control, backups, comments, references, IRC channels etc. - and then go try it. It's an experiment, and it probably won't take long to figure out if it has problems.

Quality programming is an extremely broad range, yes. It's not really sufficient to say there are degrees: some forms of excellent quality are completely orthogonal and just can't be properly compared to each other.

And yes, there is definitely a valid space for end user coding. The key is mostly in remembering that an end user cannot and should not be expected to produce something competent, or even palatable.