Hacker News new | past | comments | ask | show | jobs | submit login

I really like that idea and I understand that this is aimed specifically at the friend mentioned on the site so it takes their technical ability into account but I think for most people who are struggling with basic tasks like these instructions like

> Create a directory to hold your website and cd into it.

would already confuse them.

Now that you already got that nice domain I think I'd be great to have a guide like that aimed at beginners with more detailed instructions. I could see this as a great resource to link friends who always thought about getting their own little site, even if it's just a page listing their contact details.

If the reader isn't able to at least create directories in the terminal then Git and GitHub Pages will be way beyond their comfort level. If they're just wanting a simple blog or landing page and not interested in the background details, they'd be better off looking at something like Tumblr or a WordPress host.

I also built a tutorial around the same idea a few weeks ago, with a similar domain name, but aimed more at complete beginners than this site. My target audience would be graphic designers who want to get into web design, but don't have a clue where to start.

I stopped after writing one article because I didn't get much interest, but then I didn't put much work into publicising it either. If people found it useful I'd certainly like to keep adding to it until it explains how to go from never having programmed to building a website which can take payments.

You can find it at http://makethispage.com/chapter-1.html

I am one of the worst people to give advice on "finishing" but you should definitely go on with this, it's a very good idea that can expand beyond your limited target audience (= just graphic designers). The web is full of "general" purpose tutorials for html, css, js, etc and this "general purpose" becomes "no purpose" in the end. If I am this random person that wants to learn how to make a website, I don't really care about learning all the details of the particular tools at this point, I care mostly about building what I want and "deploying". Then, maybe, I'd like to make it better, prettier, faster, etc etc. Your guide seems to attack this.

Can't you create and edit files directly on github.com? If so, this could be done without a CLI.

At what point do you define a beginner then?

I struggle with this a lot when writing teaching materials. It feels like teaching somebody how to create a directory should not be a part of teaching somebody how to make a website. Beginner or not. You should already know how to use a computer.

It's like when I'm trying to teach people how to do X and Y with JavaScript and they get confused beyond hope when they try to run `grunt watch` and it fails because they haven't created a file yet. Like, just wait, you'll create the file in the next step. It's not the end of the world if something throws an error. You're supposed to be a programmer, jeezus.

You're blaming the students. Is it a possibility that the fault lies with you?

Obviously the fault lies with me. The problem I'm having is exactly the question I opened with: where do you draw the line? How do you draw the line?

At what point do you say "You know what, a beginner should know this"? Or whatever the specific level you decide to teach at.

Personally I try to teach at levels above beginner. This only makes the line blurrier because there's no clear divide between someone who kinda knows his stuff and someone who's an expert. It's the same problem as putting rocks in the same place. At what point does a bunch of rocks become a pile?

Same here, at what point does a total beginner become just a beginner? When do they become not a beginner? What turns them into someone who kinda knows what they're doing? At what point do they become "actually kinda good"?

For instance: my mum can accomplish all her work tasks with a computer. But she has no conceptual idea of what is a file. She thinks in documents and she only knows how to open documents by going through the app she created them with. The attachments in her email are a completely different world than the ones she creates with Word directly. I once blew her mind by showing her that she can use Word to open something that was sent to her via email.

How would you teach her how to make a dynamic HTML5 JavaScript app? Or would you suggest some basic computer use classes first?

Or, for another example, my girlfriend always gets frustrated with me because I can't just "Explain How Everything in Computers Works. How Does a Source File Turn Into A Working App?" in under five minutes. How do you even begin answering a question like that? Do I claim magic, or start with turing machines and work her way up to formal grammars and compilers? She's asking a question so far beyond her understanding that I don't even know how to begin answering.

"Explain How Everything in Computers Works. How Does a Source File Turn Into A Working App?" in under five minutes. How do you even begin answering a question like that?

You could try to be romantic and playful and say the love child created by a sexy, error-free relationship between source code and the compiler is an executable?

* > How would you teach her how to make a dynamic HTML5 JavaScript app? *

How would you teach, not your mum but, a first year computer science student how to make a dynamic HTML5-Javascript app?

Sure, they (probably) understand what a file is much better than your mum, but still: Canvas, "this", libraries, dependencies, etc etc..

I was having trouble explaining stuff to my father as well but I realised that I don't have to give him a pretty picture of how a computer works when all he wants is to be able to reply to emails, print attachments and create documents. Forget the file system and the desktop and the folders and this and that, all he wanted was simple step guides to perform these very specific tasks.

In the end, the teaching process is the same, no matter how (non) beginner someone is: There is always something they probably don't know and you don't have to teach them the whole universe before they learn how to do something. You don't have to know what electricity is in order turn the lights on..

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact