Hacker News new | ask | show | jobs
by jodrellblank 6254 days ago
When you go online and want to learn programming, you run into the uncool assholes. The ones who’ll take "How to I make a web site that people can join" not as an admission of some guy who doesn’t care about the details but as a sign of weakness. I’ve seen responses to that question that range from "You obviously aren’t ready" to "It depends on how you want the site to scale." What bullshit!

No no no. That's me, but it's not because of anything to do with spotting "a sign of weakness".

Let me try to use a non-car analogy: Imagine I'm a carpenter (I'm not) and you come up to me and ask "how do I build a staircase?". The kinds of thoughts going through my head might be:

1) A staircase is obviously wood, cut to shape, then fixed together. It's also obviously quite a big thing. There's no need to answer with the low level "obvious" things like "you will need a large workshop", if you want to build a staircase you probably already have woodworking tools and experience and now want a bigger project, so an answer telling you basic outline steps would be insultingly patronising and unhelpful.

Also, an answer covering enough steps from scratch would take far too long for a forum post or discussion reply, so if I make the judgement that you don't have any of the experience and haven't considered it at all then you might get a dismissive "with a lot of work" reply.

(OK, maybe if we met informally and you asked, you might be just making conversation, but nobody goes to a technical forum and asks how to build a website just to make friends, do they, so that doesn't apply).

2) On the other hand, if you have spotted the obvious then you're asking one question but meaning another - maybe what kind of wood can I use to make it look nice, what building regs must it comply to, how can I reinforce it, what fireproofing treatments work well? What styles of bannister were popular in Victorian times?

There could be a lot of fun stuff, but again too many directions to go in all in one answer - this is where you get the "it depends what style you want" answer. It's not bullshit, it's better than that, it's skipping straight to acknowledgement, acceptance and directed at whichever obstacle or major design consideration comes to mind first.

So, "how do you build a website that people can join" leads me to think something like:

A website people can join means giving them a form to fill in, keeping their details, and providing a login prompt later. This is obvious to anyone who has used a couple of websites with signup forms.

So either you understand the steps of a site you can signup to and would have Googled until you found out more about those steps and asked a more specific question (What's HTML? What's a webhost? What happens to information in a form once I click submit? How can I keep it around?), or you're really asking for design and obstacle avoidance suggestions, e.g. scaling, security, server load, etc.

Hence the replies: You haven't Googled for the basics, that suggests you aren't ready for the amount of work involved, or you aren't really asking such a basic question so you don't get a basic answer.

1 comments

Or, in the case of someone who asked me that exact question recently, what they really want is for you to provide them with code for free.
They can have the code for free - Joomla, for instance or Drupal, that's not the issue, it's something deeper than that.

I wouldn't go to an exotic plant center and ask how to grow a sequoia tree and when they ask if I have any gardening experience, say no. Have any tools? No. Have anywhere to grow one? No. Do I want to read a book on them? No. I don't want to go through all this growing a tree bullshit, I just want to grow a sequoia tree! It'll need a lot of space. Don't give me this scaling crap. It'll need a tropical soil makeup. I don't care about soil chemistry you nerd, I just want to grow a big tree!

If I wanted to jump into a big project, why not? I'd research to find out where they normally grow, where seeds for unusual plants can be obtained, how to germinate and care for similar (tree, tropical, whatever) seeds and what kinds of soils and watering they might require, and arrange a big space to grow it in - then I'd contact someone appropriate and describe my plan, make it clear I was determined and ask for their advice.

I'm having trouble putting my finger on what's annoying me, it's not the request for free code - you can have it. It's not the asking for help - I'll help when I can (if I'm interested).

There's something about the questioner being unwilling to help themselves. Not a lack of understanding about a topic, but a lack of understanding about understanding in general. A kind of feeling that some people think things are literally magic, not just a chain of connections that anyone learn about and manipulate.

It's probably because I'm a nerd who likes details (in areas I'm interested in, at least), but it's puzzling.

I was actually going to mention Drupal, because it's what I've spent a good five years playing around with. I love it.

There's something about the questioner being unwilling to help themselves. Not a lack of understanding about a topic, but a lack of understanding about understanding in general. A kind of feeling that some people think things are literally magic, not just a chain of connections that anyone learn about and manipulate.

That's not the vibe I get from a lot of the more arrogant types. If somebody asks "How do I make a custom forum" and somebody says "Well, you're going to need to know a lot of things, so if you don't know X Y and Z it's going to take you a lot of learning", that makes a lot of sense, agreed. But the attitude that comes off of a lot of programmers is "Yeah, you can't, don't bother," and I feel that hurts a lot of curious-but-ignorant people.

> There's something about the questioner being unwilling to help themselves.

Exactly. I run a tutorial site for younger webmasters so I get a lot of requests for help. I wouldn't do it if I objected (although it's far too out of date now) but there's a huge difference between someone who's been on my site, searched on Google, constructed some code that they think is on the right lines and struck a wall, and then someone who has thought "hmm, she codes, I'll just get her to do it".