Live data from Hacker News

Ask HN: How would you teach web development to college students?

news.ycombinator.com

31–40 of 48 posts

Re: Ask HN: How would you teach web development to college students?

#31
post #4

I have been wanting to set up a similar program at another university. With 300+ students you have something good going. Your idea of organizing trips to hackathons is marvelous. What language are you hoping to get them started on? Python? Scheme? I have been wanting to start with Scheme... but that is because I read PG's essay and got bitten by the bug. Keeping the lecture time down to 45 minutes sounds wise. Studen…

Thanks Kendal!

I think we'll probably have them start on Ruby since we have a few students that can teach it and have experience in RoR.

> Perhaps you could set up teams that could compete with each other through a series of programming challenges?

I like the idea but I think students might find this to be too much in the beginning. Especially when CS majors are competing with non-CS majors.

Maybe a better option is to promote the Binghamton hackathon from early on and offer prizes/competition for the groups that entered without experience.

> You could find a local business who would sponsor a prize, or a restaurant that would offer a dinner for the winning team.

I definitely want to keep it as local as possible and even have a few community members signed up.

> Be sure to post updates on your group's website.

I'd recommend following the progress on Twitter and GitHub:

- https://twitter.com/HackBinghamton

- https://github.com/HackBinghamton

Thanks for all the advice and feel free to reach out by email (it's on my profile).

Re: Ask HN: How would you teach web development to college students?

#32

First I would ditch any notion of teaching back end programming and focus on front-end only [0]. The things you can do with, and are required to learn and master to be good with, HTML/CSS/Javascript are so extensive and deep that alone could be overwhelming to people new to web development. So, first and foremost just focus the course on frontend technologies (and feel free to use things like Coffeescript or Clojures…

I totally back the inverted classroom approach. Coming prepared to the class will make an enormous difference in how well the students who aren't familiar with the subjects will be able to keep up. It attenuates the individual variation in learning speed and allows students to take as much time as they need in private to understand the material.

Re: Ask HN: How would you teach web development to college students?

#33
post #4

I have been wanting to set up a similar program at another university. With 300+ students you have something good going. Your idea of organizing trips to hackathons is marvelous. What language are you hoping to get them started on? Python? Scheme? I have been wanting to start with Scheme... but that is because I read PG's essay and got bitten by the bug. Keeping the lecture time down to 45 minutes sounds wise. Studen…

> Perhaps you could set up teams that could compete with each other through a series of programming challenges? You could find a local business who would sponsor a prize, or a restaurant that would offer a dinner for the winning team. I like this idea. Through my experience in several student orgs, it seems that the best way to get people to stay involved is competition and prizes. Personally, I would much rather see…

Good point.

I replied to kendalk and mentioned that forming teams and having competitions might be overwhelming in the beginning, but maybe it makes sense to two individual semester semester-long prizes for a CS major and non-CS major that build the coolest product.

Re: Ask HN: How would you teach web development to college students?

#34
post #29
post #12

Speaking of what I would love to do as a college student, I think it would be awesome if a professor was doing something as a challenge against me. Meaning, I think a lot of time students are told to learn by the professor explaining some of the most basal subjects that we all take for granted anyways (like server architecture, HTTP, etc) and not getting to the juicy cool stuff that we can all do with the web. What m…

I do like the idea but I'm worried that people would lose interest if we spent too much time on code I wrote. I think there is value in that though and might incorporate some personal projects and existing into the lecture.

I think that is a valid concern, but I think it's straightforward to mitigate it by saying "I can't remember why I did it that way?" But here let's spend this class day taking suggestions of how we could improve it and what I was trying to solve with this bit of code. Which would teach them how to problemsoolve as a group.

I think at the very least, it would allow you a personal, concrete story bc so much of what was lost on me in the beginning were things like "why would I ever use .map instead of .each" in ruby, when that is a terrible question for a newbie to ask. I think a better question would be something like "what's the best way in this case to iterate through a list in ruby"

Re: Ask HN: How would you teach web development to college students?

#35
post #11

I'd probably structure it a lot like a bootcamp. Check out Flatiron, gSchool, or Dev Bootcamp's curriculum for some good ideas. To summarize, though, typically it's a few weeks of learning a high-level language (Python or Ruby). From there, it's typically a solid couple of months of learning the corresponding framework (Django or Rails). All the while, sprinkling in some JS and CSS magic. They're usually able to chur…

Thanks! My main concern is that 2/3 of the people signed up don't have any programming experience, so it will be hard to keep it interesting for CS majors and slow enough for everyone else. We were thinking of starting off with HTML/CSS since it's not taught in classes then progressing to a server-side language + framework. I've recommended all of the non-CS majors to go through the JavaScript Codecademy lessons over…

Not sure this is a legitimate concern though... The experienced CS majors will be able to blaze through HTML/CSS just as they would be able to blaze through Ruby. I also think they'll find themselves sufficiently occupied helping their classmates and/or implementing more challenging projects.

It's fine to start with HTML, but recognize that it's a markup language, not a programming language. Aside from that, you'll be able to cover most of the HTML/CSS within the span of a week (hopefully faster with the CS majors).

Re: Ask HN: How would you teach web development to college students?

#38
post #10

I don't think web development is the hard thing to teach as much as problem solving well. I would have them build anything and everything with the caveat that no matter how good they were (or weren't) the quality of their code would suck looking back in 5 years and to start with bad code, and incrementally add concepts like switches, functions, etc., much like very young coders did at age 10-15 when building anything…

> I don't think web development is the hard thing to teach as much as problem solving well.

True, but there's a lot to be said for having first-time programmers (and especially college students) do Web development. It's a familiar environment, which means that they'll know that they're doing something relevant and practical, rather than abstract. They'll be excited to see that they can create Web sites and applications, just like "real" programmers with more experience.

Part of the fun of programming is the immediate feedback that you get from your work. Nowadays, making that immediate feedback happen in a Web browser strikes me as a smart way to go if you're going to get them hooked.

Re: Ask HN: How would you teach web development to college students?

#39
post #33

Earlier quoted context omitted.

> Perhaps you could set up teams that could compete with each other through a series of programming challenges? You could find a local business who would sponsor a prize, or a restaurant that would offer a dinner for the winning team. I like this idea. Through my experience in several student orgs, it seems that the best way to get people to stay involved is competition and prizes. Personally, I would much rather see…

Good point. I replied to kendalk and mentioned that forming teams and having competitions might be overwhelming in the beginning, but maybe it makes sense to two individual semester semester-long prizes for a CS major and non-CS major that build the coolest product.

In addition to having a prize for a CS major and a non-CS major, you could have one that is specifically for a new beginner to programming. Some students have been hacking since they were in junior high but have a different major. I started with a Commodore VIC-20 and BASIC but I wasn't a CS major in college.

Re: Ask HN: How would you teach web development to college students?

#40
post #31
post #4

I have been wanting to set up a similar program at another university. With 300+ students you have something good going. Your idea of organizing trips to hackathons is marvelous. What language are you hoping to get them started on? Python? Scheme? I have been wanting to start with Scheme... but that is because I read PG's essay and got bitten by the bug. Keeping the lecture time down to 45 minutes sounds wise. Studen…

Thanks Kendal! I think we'll probably have them start on Ruby since we have a few students that can teach it and have experience in RoR. > Perhaps you could set up teams that could compete with each other through a series of programming challenges? I like the idea but I think students might find this to be too much in the beginning. Especially when CS majors are competing with non-CS majors. Maybe a better option is…

> I definitely want to keep it as local as possible and even have a few community members signed up.

You might gain some local sponsors by offering to put their company logo on your website. See the bottom of the page of http://clojure-conj.org for the Clojure Conj conference. There are "Platinum," "Gold," and "Supporting" sponsors listed.

Put a Sponsors page on your website and make it easy for businesses to sign up. You could even have a donate button.

Post reply on HN