10 Replies - 2575 Views - Last Post: 02 June 2013 - 05:21 PM

#1 print('username')  Icon User is offline

  • D.I.C Head

Reputation: 0
  • View blog
  • Posts: 61
  • Joined: 18-February 13

How should I start a programming club at school?

Posted 02 June 2013 - 12:46 PM

My school lets us create our own clubs that meet after school. A friend and I want to start a programming club. We are not sure what language we would teach them first. I was thing Visual Basic.Net. What would you use? Anyone know any inserting project ideas to code that entertain them, but are not to hard for beginners? Most will probably want to make games, I know that this is to hard for beginners (Unless you use Game maker, but that is to easy.).

So my to questions are:
-What language to teach them?
-What the first few projects could be?
-What are some good sites on this stuff?

From,
Philip

Is This A Good Question/Topic? 0
  • +

Replies To: How should I start a programming club at school?

#2 modi123_1  Icon User is online

  • Suitor #2
  • member icon



Reputation: 9387
  • View blog
  • Posts: 35,242
  • Joined: 12-June 08

Re: How should I start a programming club at school?

Posted 02 June 2013 - 12:51 PM

Quote

So my to questions are:
-What language to teach them?

You should get a bunch of folk together and see what *they* want to learn. Maybe they just want to talk different languages, make their own, or go a different way. Maybe everyone wants to do web stuff so unless you are rolling ASP.NET with your VB.NET it may be better to do php, javascript, etc. If they are looking desktop apps and games it might be better to go C# and then you can hook into unity.

See what the folks want - don't necessarily push some agenda on them.

Quote

-What the first few projects could be?

Again. .take a poll from people and see what they want.. you seem to be thinking a programming club is just a way for you to teach a class... it is more about the group dynamic.
Project Ideas

Martyr2 Mega Project List


Quote

-What are some good sites on this stuff?

Good sites on what stuff?
Was This Post Helpful? 1
  • +
  • -

#3 macosxnerd101  Icon User is offline

  • Self-Trained Economist
  • member icon




Reputation: 10658
  • View blog
  • Posts: 39,571
  • Joined: 27-December 08

Re: How should I start a programming club at school?

Posted 02 June 2013 - 12:53 PM

Does your school have an AP Computer Science class? If so, perhaps your AP CS instructor could be of some assistance. The language for the AP CS class is Java, so that's always a good language in high school. Android projects could be a fun way to go, in terms of games as well.
Was This Post Helpful? 0
  • +
  • -

#4 print('username')  Icon User is offline

  • D.I.C Head

Reputation: 0
  • View blog
  • Posts: 61
  • Joined: 18-February 13

Re: How should I start a programming club at school?

Posted 02 June 2013 - 12:57 PM

View Postmacosxnerd101, on 02 June 2013 - 02:53 PM, said:

Does your school have an AP Computer Science class? If so, perhaps your AP CS instructor could be of some assistance. The language for the AP CS class is Java, so that's always a good language in high school. Android projects could be a fun way to go, in terms of games as well.

No we don't. My main reason for doing this is because there is no class. A lot of my friends are also complete nerds and say they would join if there was a class, and want to learn to. Should I go talk with some other programmers and see how they learned to code? Might give me an idea on how people best learn coding.
Was This Post Helpful? 0
  • +
  • -

#5 modi123_1  Icon User is online

  • Suitor #2
  • member icon



Reputation: 9387
  • View blog
  • Posts: 35,242
  • Joined: 12-June 08

Re: How should I start a programming club at school?

Posted 02 June 2013 - 01:16 PM

Quote

Should I go talk with some other programmers and see how they learned to code? Might give me an idea on how people best learn coding.

It really isn't a 'how to learn to code', but what. Again - get everyone there.. start taking ideas and direction from them..
Was This Post Helpful? 0
  • +
  • -

#6 print('username')  Icon User is offline

  • D.I.C Head

Reputation: 0
  • View blog
  • Posts: 61
  • Joined: 18-February 13

Re: How should I start a programming club at school?

Posted 02 June 2013 - 01:22 PM

View Postmodi123_1, on 02 June 2013 - 03:16 PM, said:

Quote

Should I go talk with some other programmers and see how they learned to code? Might give me an idea on how people best learn coding.

It really isn't a 'how to learn to code', but what. Again - get everyone there.. start taking ideas and direction from them..

Ah, thanks for the help. Will probably just mix and match advice together and see what I come up with.
Was This Post Helpful? 0
  • +
  • -

#7 jon.kiparsky  Icon User is offline

  • Pancakes!
  • member icon


Reputation: 7876
  • View blog
  • Posts: 13,367
  • Joined: 19-March 11

Re: How should I start a programming club at school?

Posted 02 June 2013 - 01:47 PM

I agree with modi. Start by finding out what you've got to work with and what people want. There's probably a math or science teacher who would be willing to help facilitate things. They could be a big help, even if they don't have skills in programming or time to teach programming. They might be able to help you work out a plan of attack if you're trying to teach programming, or find programmers in the area who could come and talk to the group, or help you find problems worth solving, or any of a number of things. Generally, teachers don't have any spare time at all, so asking them to take on another class would be nuts, but most of them love to see stuff like this happen, and if you give them a reasonable role, they can be a big help. One thing you'd like to have them do would be to just keep an eye on the overall dynamic and make sure it stays fun for everyone. That's hard to do when you're part of the group - they don't need to run the show, but just serve as a back-channel advisor about the overall atmosphere.

If you have nerds kicking around, some of them probably already know some languages. Find out what people know, and what they want to learn, and connect those people with others who have similar interests.

There's a lot of stuff you could do. Here's some ideas:

- work on a project together. If there's a project that everyone's jazzed about, and people can get together on one language, this can be a great way to learn about programming from each other. Could be a game, or an app, or whatever. If you do this, it'll be important that someone (maybe you, maybe your faculty advisor if you have one, maybe everyone) is keeping an eye on the egos. Sometimes people get an "ownership" mentality, and that gets less fun for everyone else pretty quick. Good way to learn about working in groups.

- work on problems as a group. projecteuler.net is a great source of problems. If you take a problem or two per week, and have everyone try to solve that, you can have a lot of fun talking about the ways you got to an answer. This is cool if you have lots of people with different languages, because you can see a lot of ways to think about a problem.

- work through a coursera course together. There are a number of useful courses on coursera, and the best way to take them, I've found, is to discuss the material with other people. It might even be worth watching the lectures together - then you can stop and ask questions as you're going, and help each other the way you would in a real classroom. Or you could watch the lectures on your own time and come in to talk about the material and what troubles people are having with it.

- a sort of drop-in hackfest. People just turn up with whatever they're working on and talk about what they're doing, look for help with things they're stuck on, help each other out. Sort of a real-time DIC.

- special-topics seminars. Let people work up a short talk about something related to programming, and then discuss it. Could be a series of related ideas, or one-off or a combination. Possible topics might be math-related (there are lots of ideas in math that are useful for a programmer) or architecture-related (talk about some design patterns and show off how they work and what's good about them) or advanced programming techniques (advanced might be anything - recursion, closures, dynamic programming, you name it).


There's a lot you could do with something like this. What you end up with will depend on what you have at hand, and how well you deploy it, but it could be pretty awesome. Keep us posted on how it goes!

EDIT: one thing I wouldn't try to do would be to teach classes - that's really hard to do well, and it's especially hard when you have a bunch of people at different levels. Keep the instruction one-on-one or in small groups. Make it more like a club than a classroom, and it'll probably go better.

This post has been edited by jon.kiparsky: 02 June 2013 - 01:54 PM

Was This Post Helpful? 0
  • +
  • -

#8 print('username')  Icon User is offline

  • D.I.C Head

Reputation: 0
  • View blog
  • Posts: 61
  • Joined: 18-February 13

Re: How should I start a programming club at school?

Posted 02 June 2013 - 03:11 PM

Wow, thanks for your in depth response. Gave me a lot to think about. Now I have some super cool ideas for what we can do and how to do it. Will defiantly show your post to my friend I am starting the class with. How should I teach non programmers through? Maybe have a partner system, were a experienced programmer pairs up with a beginner and the beginner learns from helping the experienced coder and asking him questions, looking over his shoulder, etc.

This post has been edited by macosxnerd101: 02 June 2013 - 04:19 PM
Reason for edit:: No need to quote huge posts!

Was This Post Helpful? 0
  • +
  • -

#9 jon.kiparsky  Icon User is offline

  • Pancakes!
  • member icon


Reputation: 7876
  • View blog
  • Posts: 13,367
  • Joined: 19-March 11

Re: How should I start a programming club at school?

Posted 02 June 2013 - 03:39 PM

View Postprint(, on 02 June 2013 - 05:11 PM, said:

How should I teach non programmers through? Maybe have a partner system, were a experienced programmer pairs up with a beginner and the beginner learns from helping the experienced coder and asking him questions, looking over his shoulder, etc.


Everyone starts somewhere. I would find good resources for each language that people are interested in, and set people in front of them. Let them start working it out on their own, and come to you with questions. Really, you're almost certainly not equipped to teach a formal course, and people looking for a programming club probably don't want a formal course.

If someone wants an intro programming course, probably the best place to find one is at your local state or community college. Some of the teaching at these schools is really excellent, and many of them make provisions for high school students. Again, if you have a faculty advisor, they might be a good resource for this. Who knows, you might be able to mob down to an existing class and start learning that way. These courses aren't free, but if you put your heads together with your school there might be programs to reduce or waive the fees for you. Maybe not, but you won't know unless you check it out.

If people want to learn on what you have at hand, you might try to get hold of some good programming books, either through your school's library or as a separate effort. (some clubs have bake sales to raise funds... you guys could do tech support...) There are tons of recommendations for good books out there, so when you know what you want to focus on, you can probably start building something up.

Some more ideas: large businesses, especially ones with technical presence, often ditch out old machines. Usually they strip out the hard drives and sometimes the RAM, but they're usually in pretty good shape, and they'll usually run linux very nicely. You can probably set up a pretty good computer lab if you can get hold of some of these machines - and the kids who set them up will learn an absolute hell of a lot. Contact Free Geek in Portland, Oregon, for ideas on how to make something like that work. Generally, these companies pay people to haul away old gear, so there's a certain incentive to having you get rid of it for them.

You'll probably have some people with web skills. Set up a page for your club - domains and hosting on this scale are dirt cheap - and start gathering together good resources. Make a project of it - how can you best organize the existing resources so people can find what they need and avoid the bad stuff? It's a web development project that people can get into, and it's also a way to provide these resources to the novices. Two birds, one stone.



The important thing to realize is that everyone who is in a position to help you respects initiative and drive. If they see you getting after it, and making something happen, they will usually lend a hand, either by helping to push or by clearing obstacles.
Was This Post Helpful? 0
  • +
  • -

#10 print('username')  Icon User is offline

  • D.I.C Head

Reputation: 0
  • View blog
  • Posts: 61
  • Joined: 18-February 13

Re: How should I start a programming club at school?

Posted 02 June 2013 - 05:06 PM

Alright, I think I got it. Thank you for your time. I am hoping to share the joy of programming (or that moment when you fix a bug.) to other people.

This post has been edited by macosxnerd101: 02 June 2013 - 05:08 PM
Reason for edit:: To make things more readable, please avoid quoting large posts

Was This Post Helpful? 0
  • +
  • -

#11 Skydiver  Icon User is offline

  • Code herder
  • member icon

Reputation: 3621
  • View blog
  • Posts: 11,278
  • Joined: 05-May 12

Re: How should I start a programming club at school?

Posted 02 June 2013 - 05:21 PM

View Postprint(, on 02 June 2013 - 08:06 PM, said:

the joy of programming (or that moment when you fix a bug.)


My personal name for that feeling is "Hacker's High".
Was This Post Helpful? 0
  • +
  • -

Page 1 of 1