Slashdot Mirror


Ask Slashdot: How Can I Make a Computer Science Club Interesting?

plutoclacks writes "I will run a computer science club at my high school next semester with two other friends. The club was newly introduced this school year, and initially saw a massive success (40+ members showed up at the first meeting). Unfortunately, participation has decreased a lot since then, down to four active members. I feel that the main reason for this decline was the inability to maintain the students' interest at the beginning of the year, as well as general disorganization, which we hope to change next semester. The leaders of the club all have fairly strong Java backgrounds, in addition to enthusiasm about computer science and programming. We have a computer lab with ~30 computers, which, though old, are still functional and available for use. What are some ways we can make the club have an impacting interest to newcomers?"

265 comments

  1. easy by Anonymous Coward · · Score: 1

    pron...lots of pron

    1. Re:easy by Selur · · Score: 0

      LOL my first thought exactly,... (porn&forbidden stuff)

    2. Re:easy by robthebloke · · Score: 1

      Well the Memotech MTX512 probably hasn't got enough power on it's own, but if you were to hook a government mainframe upto a barbie doll and a lightning bolt, you might just be able to make a computer science class stimulating enough to fill out a 90minute film....

    3. Re:easy by SplatMan_DK · · Score: 1

      that's pr0n, you insensitive clod ...

      --
      My security clearance is so high I have to kill myself if I remember I have it...
    4. Re:easy by nopainogain · · Score: 0

      if only i got up early enough to beat you to this joke.. If i were 15 years younger (that would make me class of 2007 instead of 1992),,, i would totally have done this and gotten a nice suspension. our computer club had "the Oregon trail" and "Turtle Command"... in case anyone wondered why brilliant programmers were so scarce in the 80s, the PC gaming in-school sucked hardcore. mornin slashers. nopainogain.

    5. Re:easy by Zemran · · Score: 1

      Meet in a Go-Go bar...

      --
      I love stacking my barbecues in the shed at the end of summer - you can't beat a bit of grill on grill action.
    6. Re: easy by Anonymous Coward · · Score: 0

      You must pick topics that a current and controversial to go over. Hack a iPhone or android. Show how to hack into any PC, wirelessly.

    7. Re:easy by Anonymous Coward · · Score: 0

      just bring in some nude motherboards

    8. Re:easy by Anonymous Coward · · Score: 1

      They are milfs.

    9. Re: easy by noh8rz10 · · Score: 1

      A suggestion for real: make an iPhone app. Everybody can design it, then split it into chunks for each person to do. Have a final product at the end if the year. Or, if you have java backgrounds and pcs then make an android app

    10. Re:easy by ArhcAngel · · Score: 1

      If a device has a visual interface it has pr0n. I was working on a Compaq luggable (A Portable II I believe) in the late 80's and I was looking for a file when I noticed another file I didn't recognize. Being the cautious person I am I immediately opened it of course. I was greeted with a green phosphorous rendering of the predecessor to the animated GIF of a guy "servicing" the farmer's daughter. I was impressed, disgusted, and enthralled all at the same time.

      --
      "A person is smart. People are dumb, panicky dangerous animals and you know it." - K
    11. Re:easy by nopainogain · · Score: 0

      and given the resolution of said image, the allure to distribute this type of media was not sufficient in that era.

    12. Re:easy by HornWumpus · · Score: 1

      When I was a kid we had to print out porn using daisy wheel printers.

      Truth: one of the first 'apps' I wrote was a little machine code to show 1 frame of 'highres' graphics every 10 seconds or so on an apple 2. Of course that highres graphic image was porn. Left it running on the machines in HS computer lab.

      --
      John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
    13. Re:easy by HornWumpus · · Score: 1

      No; you need one half cute, friendly girl. Pay her to show up for 4 meetings. She will want bonuses after she meets the club, budget for it.

      Computer club members have plenty of porn.

      --
      John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
  2. Lots of hot smart chicks by realsilly · · Score: 5, Funny

    should do the trick.

    --
    Life takes interesting turns, but the most interest is when you're off the beaten path.
    1. Re:Lots of hot smart chicks by gandhi_2 · · Score: 4, Insightful

      Hookers and coke.

    2. Re:Lots of hot smart chicks by Andover+Chick · · Score: 1

      True, girls are far more attracted to asperger/loner computer types then they are to say the dashing hunks on the soccer or football team. What girl won't want to hang with a bunch of scrawny/overweight neruotics in a dark computer room!!

    3. Re:Lots of hot smart chicks by mmcxii · · Score: 1

      If you're going to have Coke you need some Jim Beam to go with that.

    4. Re:Lots of hot smart chicks by Anonymous Coward · · Score: 0

      Jack Daniels goes better with Coke.

    5. Re:Lots of hot smart chicks by mmcxii · · Score: 1

      Jack is what the 14 year old kids drink. But since this is for high schoolers it just migjht fit the bill.

    6. Re:Lots of hot smart chicks by mrzaph0d · · Score: 3, Funny

      well, at first they had all the lights on to not scare the chicks away, but that made it worse. they've now calculated the lighting level to allow them to get as close as possible to the girls before they sense something's wrong and bolt from the room.

      i think the next step is to be able to raise and lower the lights as the girls enter and move about the room, allowing them to get even closer.

      --
      this is just a placeholder till i send back my real sig from the future.
    7. Re:Lots of hot smart chicks by Anonymous Coward · · Score: 0

      Drink! It will make any chicks that stay seem hot by the end of the night.

    8. Re:Lots of hot smart chicks by turgid · · Score: 1

      i think the next step is to be able to raise and lower the lights as the girls enter and move about the room, allowing them to get even closer.

      And what about the sweaty stink from the geeks' armpits?

    9. Re:Lots of hot smart chicks by Andover+Chick · · Score: 2

      That's excellent. Maybe they could have mini-drone light sources flying about. Sensors could calculate the girls position and eye direction. Based on these inputs the light drones could illuminate they boys so as to minimize their acne or maximize their biceps. A fun computer project.

    10. Re:Lots of hot smart chicks by Anonymous Coward · · Score: 0

      In fact, forget the computers!

    11. Re:Lots of hot smart chicks by Andover+Chick · · Score: 1

      One the mini-drone idea, there could be drones flying about which could spray pleasant smelling fragrances whenever a girl approaches a nerd.

    12. Re:Lots of hot smart chicks by Anonymous Coward · · Score: 0

      There's one problem with your 'hot smart chicks' suggestion. A lot of boys then take the brogrammer attitude around them and drive them into starting their own separate Girls in Computer Science Club.

    13. Re:Lots of hot smart chicks by Anonymous Coward · · Score: 0

      I like my women the way I like my whiskey,...

    14. Re:Lots of hot smart chicks by Anonymous Coward · · Score: 1

      i like my women like i like my scotch... 15 years and mixed up with coke

    15. Re:Lots of hot smart chicks by bill_mcgonigle · · Score: 1

      That works on DoD grant people, but in high school the proper scope is 'free pizza'.

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
    16. Re:Lots of hot smart chicks by Anonymous Coward · · Score: 0

      Sarcasm aside...you are also hanging out on Slashdot with those types...

    17. Re:Lots of hot smart chicks by StingyJack · · Score: 1

      Jim Beam is the worst bourbon. Get some Old Granddad 100 or Buffalo Trace.

    18. Re:Lots of hot smart chicks by umghhh · · Score: 1

      now you did it - I just spit on my laptop (evenly on display and keyboard). Good that I was drinking mineral water - last time it did happen (long time ago) it was beer and I had to buy a new keyboard because of that. As for the light and chicks. I read somewhere that this is a known problem. They are scared of anything with dick so you need alco so that they do not notice. A proper amount of smoke does help too. I guess this should be some aromatic stuff possibly also intoxicating and maybe we can skip the girls altogether.....

    19. Re:Lots of hot smart chicks by TeknoHog · · Score: 1
      --
      Escher was the first MC and Giger invented the HR department.
    20. Re:Lots of hot smart chicks by tristes_tigres · · Score: 0

      "Hot", "smart", "female" - pick any two

    21. Re:Lots of hot smart chicks by Anonymous Coward · · Score: 0

      "we want the dudebrogrammer audience."

  3. Normal. by nospam007 · · Score: 4, Insightful

    First, reduce your expectations.

    From your initial 40 'applicants' only 20% will stay, that's everywhere the case, from Pilates to Yoga, from Knitting to Pottery.

    So in the best case, you'll get 4 additional members.

    1. Re:Normal. by Brandano · · Score: 0

      Shouldn't that be 8?

    2. Re:Normal. by Anonymous Coward · · Score: 3, Funny

      Hey, it's the Computer Science Club, not the Math Club.

    3. Re:Normal. by nospam007 · · Score: 2

      "Shouldn't that be 8?"

      8 total, yes, but they have already 4, so 4 more is the goal.:-)

    4. Re:Normal. by JMJimmy · · Score: 1

      ^This. University enrollment is much the same too - Queens U CS started out with 180 I believe - whittled down to 40 every year. Tiny tiny department considering the value of the degree.

      #1 thing I could recommend: Don't treat them like idiots. Give them challenges you don't think they'll be able to complete and let them surprise you.
      #2 Get the arts involved too. Many computer projects require graphics - get them working on these separate things and show them how they can work together to create something truly awesome in their eyes.

    5. Re:Normal. by Anonymous Coward · · Score: 1

      Not if he's using a Pentium to do the calculations.

    6. Re:Normal. by Anonymous Coward · · Score: 0

      1992 called! On a rotary phone! They want their joke back!

    7. Re:Normal. by asmkm22 · · Score: 1

      Also realize that computer science isn't interesting to a lot of people, and you can't really change that. I never tried out for the football team in High School because I didn't find football interesting. That's not because football is a crappy game, or that the school's program was bad; I just wasn't interested.

    8. Re:Normal. by Anonymous Coward · · Score: 0

      You didn't stay for the Algebra Club, did you?

    9. Re:Normal. by steam_cannon · · Score: 1

      I see a lot of good advice here. Highschool isn't going to have overwhelming turnout. But I think you can get more people involved. 1. Make the club useful for other people. Have workshops on wordpress, blogging, have career speakers maybe from local colleges. Have discussions on 3D printing to bring in the DIY crowd. Computer Science means you have access to all the information and systems that have ever existed. It's core is founded on helping people do things they want to do and make their lives easier. Think about it that way and you'll see that you have plenty of material generate interest. 2. Bring pizza! People often skip meals to make meeting times. Understand that and use a large portion of fundraiser money for pizza. It works. 3. Get lists of emails/text and send them weekly updates with really useful information. You have "old" computers available. Buy 15 licenses of quake 2 for a few dollars and hold a game-off! Have fun! But don't make the club about the computers. Clubs are about people and what your interest can do for people. Myself, I was a former CPSC Club president and a UPE president, I can tell you what worked and didn't work in college for me. In college successful meetings involved: Going deeper then just one layer of meetings and make it a club. Making it something useful. Advertise! Chalk sidewalks, make chalkboard notes in cpsc classrooms, put up flyers, email lists, reminder emails, phone calls sometimes. Have a big pizza meeting and get a group list to text. Keep people thinking of your club with signups for updates on related campus events and important industry changes, like updates to google posted on searchengineland. Updates on the most popular programming languages/web systems with reports from google trends. Talking about trends students need to know. Holding meetings at Lunch times or common hours for the best turnout. A big key for meetings is food. Free Pizza / soda / fresh coffee can be paid for by coffee pot fund raisers, sometimes alumni and other general fund raisers. The students must have food, even if it's just a 75cent slice of pizza and a 10cent free cup of coffee. This makes up for the lost lunch/break time students use to go to your meeting. Hold the meeting in an accessible public location like a central hall with lots of chairs. Plan speakers: Speakers from industry often go over well and so do discussions of student projects. DIY robot demonstrations, Speakers on server/web security, Discussions on getting experience though open source projects, Career planning, Book reviews on the best book for X, Best twitter/feed resources, project management softwares, specific topics like content development... More modern topics like social media, VR web apps, phone app programming, 3D printing, computerized stencil cutters, factory robots and google glass stuff would all go over well too. Make your meeting important and worth going to! What were the 10 most important articles/web trends on slashdot in the last year? If the speaker has a printable guide say on networking, have printouts or sharable files you can email to people who sign up for a copy. Your adds for the events should say there will be guides available at the events. Talk with professors to help arrange speakers, they often know a few people. And try to get them asking these people about internships. Then you can help arrange internships for students. Also saying on a flyer you'll be announcing internship opportunities will also bring a lot of people in. Speak but don't spend too much time talking yourself unless you're presenting or if you can magnetize an audience. Ideally spend your time helping speakers talk and come with a few guiding questions for your speaker. Have one page handouts with a summary of the topic and the next meeting/time/schedule. Have a texting/email list signup for people and mention that to them. Post meeting minutes and event summaries online, with links to documents/resources if available. Announce meetings and club events that are related, like web graphics design discussi

    10. Re:Normal. by drkim · · Score: 2

      Teach them how to break up blocks of text with the [ENTER] key.

    11. Re:Normal. by Anonymous Coward · · Score: 0

      Way totally, man. Slashdot needs a paragraph length thingy to to with their too much punctuation thingy.

  4. Do something for the school: by MurukeshM · · Score: 4, Interesting

    (Re)Design your website.
    Create a course-management tool.
    Try to use Moodle.

    In general, a year-long project that will have a lasting effect on your high school.

    1. Re:Do something for the school: by Anonymous Coward · · Score: 0

      Right. DO something.

    2. Re:Do something for the school: by XxtraLarGe · · Score: 1

      Moodle is a very good suggestion. Each user can experiment with their own local copy on a flash drive. There are a ton of different things that can be done, like updating the styling with CSS, create new blocks with HTML & Javascript, etc. You can make all sorts of improvements with a few lines of PHP & MySQL code as well, if your students want to get REALLY adventurous.

      --
      Taking guns away from the 99% gives the 1% 100% of the power.
    3. Re:Do something for the school: by Anonymous Coward · · Score: 0

      Absolutely. Do something. But why would you do it "for the school"??? This is a High School club aimed at getting High School students to stay after school for it (or to meet during Lunch). Doing something for the school isn't going to boost attendance. Writing a cool app for Android on the other hand? You'd get casual high school students interested, as well as the smart kids who want to put a "portfolio" of their work into their college application.

    4. Re:Do something for the school: by xclr8r · · Score: 1

      Do something.. but do something that is relevant. Have them work on a project that will either make the students life easier or assist in making their voice heard. Mobile apps might be a good start.

      --
      Beware of those who profit off the docile and persecute the unbelievers.
    5. Re:Do something for the school: by Anonymous Coward · · Score: 0

      In general, a year-long project that will have a lasting effect on your high school.

      In general, a year-long project that will have a lasting effect on your participants.

      Make it interesting (AKA fun), challenging, yet achievable or at least partially achievable. You'd be surprised what lengths people will go to if you truly pique their inner curiosity.

      As with about all problem solving techniques, break the project into smaller doable components to give a sense of progress and achievement as you go along. Not only does this make the task seem less daunting, it let's people know they're getting something done.

  5. Keep it interesting by Anonymous Coward · · Score: 4, Insightful

    As and educator for 20+ years (University level) I can attest that I too have had the same problems. The way to stop the declining numbers it to make it more fun. Have everyone War Drive on the way to the meeting and hand out a $5 gas card to the one who fins the most open AP's. Have a contest to find the most expensive computer on ebay. Have a hackathon over a 12 hour period where they get to try their hand at protecting and attacking computers in a safe environment.

    1. Re:Keep it interesting by robthebloke · · Score: 4, Insightful

      +1 (and an ex-educator)

      If you want to bore the pants off people, teach them the syntax of a programming language. If you want to maintain an enthusiastic class, teach the bare minimum language skills (for-loop, not for/while/do-while. std::vector, not std::vector/std::deque/std::stack/std::list. member funcs, not member funcs/operators/static methods/etc), and encourage them to 'build' interesting things (simple games, basic apps, image editing tools, sound sequencers, etc). Enthusiasm for programming and computer science is something that you develop over time. Enthusiasm for being creative and making your own computer game, is something that can grab peoples attention. Just remember that whilst *you* might love the inner workings of a 6502 processor, there will be a large number of people that will find that dull and unexciting! Constantly ask yourself the question: "Why am I showing them this? Is this going to help them be creative?", and you can't go too wrong imho (and try to encourage the people to make links with other passions they may have, e.g. art, sound, etc)

    2. Re:Keep it interesting by samkass · · Score: 2

      Java? Kids? Write a mod for Minecraft.

      --
      E pluribus unum
    3. Re:Keep it interesting by emorning9707 · · Score: 1

      Is the point to give kids the skillz they need to become criminals? A computer science club should be about *making* software...

    4. Re:Keep it interesting by Creepy · · Score: 2

      I agree - when you're talking about a club or even a high school level class, you're going to get people of all skill levels and interests. Since it's a club, find out what the kids want to get out of it, and don't make it about teaching programming, try to make it about learning from each other. If you can find people with similar interests, group them together on projects, even if their skill levels are drastically different. I learned how to write 6502 Assembly when I was 12 by looking over a friend's shoulder because I was curious. I also learned how to crack software the same way and from the same friend, but let's leave the notorious stuff out.

      You will always have someone with no programming experience that wants to come in and write and MMO and will be dejected that they can't do it in 3 days, but there isn't much you can do about this sort. You may be able to get them to download Unity free and write a simple scene, but usually they get dejected and quit.

    5. Re:Keep it interesting by Anonymous Coward · · Score: 0

      std::vector, not std::vector/std::deque/std::stack/std::list

      If you're showing them one of them, it definitely should be std::deque. It's more flexible, releases memory when shrinking, and the only downsides are slightly less efficiency (at their level not relevant anyway) and non-contiguous memory (which you shouldn't have to care about at that level either).

    6. Re:Keep it interesting by Anonymous Coward · · Score: 0

      The way to stop the declining numbers it to make it more fun.

      Teach Perl and do a Week 1 lecture on regular expressions. You'll still have some attrition; there's no preventing it, but everyone that returns for Week 2 is there to stay.

    7. Re:Keep it interesting by stdarg · · Score: 2

      I agree that it has to be made more fun. One fun thing is making money.

      Many high schools let clubs do fundraising activities, and the computer club is a good place to showcase money making software. In my high school days, I wrote a matchmaking program that matched people up based on a survey. We printed out surveys and gave them to everybody in the school a few days before Valentine's day. Then on Valentine's day, we set up tables at the cafeteria and people could buy their matchmaking results for 50 cents. We made a ton of money with over 100% participation since many people took the survey multiple times to see who they would be matched up with for different answers. For the rest of the year the computer club had regular movie outings and pizza at meetings.

      The best part was the feeling of being responsible for a very popular event and having schoolwide recognition for coming up with something entertaining. Everybody in the club was happy. We went from 4-5 regulars to 10-15 pretty quickly.

    8. Re:Keep it interesting by Anonymous Coward · · Score: 0

      As and educator for 20+ years (University level) I can attest that I too have had the same problems. The way to stop the declining numbers it to make it more fun. Have everyone War Drive on the way to the meeting and hand out a $5 gas card to the one who fins the most open AP's. Have a contest to find the most expensive computer on ebay. Have a hackathon over a 12 hour period where they get to try their hand at protecting and attacking computers in a safe environment.

      Have them restore an IBM System/360 Model 65.

      Hey, it works when you do it with a '57 Chevy!

    9. Re:Keep it interesting by HornWumpus · · Score: 1

      No JCL involved in the Chevy.

      --
      John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
  6. anyamous sorry by Anonymous Coward · · Score: 0

    none of these methods would help for them, sorry,..

    1. Re:anyamous sorry by OakDragon · · Score: 1

      When I was a kid, computers were interesting enough all by themselves. It's a sad state of affairs that they no longer seem to be...

    2. Re:anyamous sorry by Anonymous Coward · · Score: 1

      "When I was a kid, toilets were interesting enough all by themselves. It's a sad state of affairs that they no longer seem to be..."

      The fact that computers are now ordinary devices is hardly sad.

    3. Re:anyamous sorry by darkwing_bmf · · Score: 1

      I still think they're interesting.

    4. Re:anyamous sorry by gewalker · · Score: 1

      Computer club is not interesting because the computing is not magic (movie computers) and involves hard work. Considering that kid's attention spans are about that of an average hamster these days, it is not surprising that the students don't care about computer club. Better to cater to the 4 that actually care that worry about the masses that do not care.

    5. Re:anyamous sorry by Skapare · · Score: 1

      It's no longer the computer that is, or should be, interesting. It's all about what you can do with them. How about a hac^H^H^Hprogramming club instead?

      --
      now we need to go OSS in diesel cars
  7. ask them by moorhens · · Score: 2

    Ask them what they want and adapt accordingly. They probably won't ask for pron because they can get that elsewhere and aren't dumb enough to think you can offer that at school. But if you get them to choose from a list of things that you know you are capable of offering them, you will give them some ownership in the club. They often find that easier than starting from scratch. In my experience, high school kids rarely get asked their opinions about anything that matters directly to them . . . and if you ask their opinions your club will start to matter to them.

    1. Re:ask them by nospam007 · · Score: 1

      "Ask them what they want and adapt accordingly.

      A pony in which language?

    2. Re:ask them by moorhens · · Score: 1

      True enough . . . hence the "pick from a list of stuff you can deliver" in the rest of my post.

  8. Mission Possible by Anonymous Coward · · Score: 1

    Covertly install video games on the schools network drive, and then have lots of gaming sessions. That's what my friends and I did in high school.

  9. bribery by Anonymous Coward · · Score: 0

    Pizza

  10. 2 words by puddingebola · · Score: 1

    Computer Calisthenics

  11. Robotics by Anonymous Coward · · Score: 2, Interesting

    Build an autonomous Ardurover. That will raise lots of interest.

    1. Re:Robotics by crymeph0 · · Score: 2

      That's what I would recommend as well. I work in industrial automation, building tooling for the kind of robots that build cars, and for me, it is really cool to see something physically move based on your programming. With a serial port or other kind of connection (maybe some sort of wireless) between the moving thing and your PC, you can also create stuff that's fairly advanced, e.g. a command program on the PC that uses voice synthesis to warn a student to leave the area before sending the robot to "attack" them, or something similarly interactive.

      --
      It should be illegal to say that freedom of speech should be limited.
  12. Kudos and ideas by edumacator · · Score: 2

    First of all, congratulations for starting the club. Too many students sit passively by in high school.

    A couple of things that could help. Do you have a dynamic teacher in your building that might be willing to sponsor the club? They can help you with recruitment and ways to keep people interested.

    Also, try to have some really clear goals. Can you build an app for students in the building? Can you collect scraps from your IT person, and build some extra computers for the cafeteria for students to use or to give to underprivileged students? Can you find some local places to visit on a field trip or two? As much as I wish as a teacher that students would readily join clubs for their own edification, typically you need to find a "hook" to get them in the door. Once they've built something or seen the glory that is coding, they are going to be more likely to stay in the club. Try to find something they can SEE at the end of the year. Nothing beats seeing the fruits of your labor.

    Good luck! If you need more advice or ideas, I could introduce you to some great AP computer science teachers.

    1. Re:Kudos and ideas by gr8_phk · · Score: 1

      I liked this one: "Can you build an app for students in the building?" Doing an app for your friends can be a good motivator. When I was a kid I started a 2d scorched earth game on my Atari800, but it really started to get awesome when one of my friends started making suggestions and I implemented them - didn't just have a numeric display or a wind sock, ended up with clouds blowing by dependent on wind speed. Of course this can go too far with people demanding all sorts of things, but making something for others is sometimes a good motivator.

  13. Forget Java by Andover+Chick · · Score: 1

    Heavy languages like Java/C++ are tedious for kids/adolescents. Program in something fun and lite like Python/Ruby/Perl.

    1. Re:Forget Java by XxtraLarGe · · Score: 4, Insightful

      Heavy languages like Java/C++ are tedious for kids/adolescents. Program in something fun and lite like Python/Ruby/Perl.

      Javascript is better still. No compiler, near instant results. You just need a text editor & browser.

      --
      Taking guns away from the 99% gives the 1% 100% of the power.
    2. Re:Forget Java by Andover+Chick · · Score: 1

      Yes, good one. And it is nice and flashy in a web browsers right off. Lots of codes snippets around the web for fun stuff too.

    3. Re:Forget Java by Anonymous Coward · · Score: 0

      ISO-C is fun like no other language. I think that Perl was "fun" in the previous century, though...

    4. Re:Forget Java by gandhi_2 · · Score: 1

      It's not just a matter of tedium, but of time.

      It's the time and meta-programming overhead of environment, precompiler directives, massive API knowledge it takes to actually GET ANYTHING DONE.

      In the small amount of time highschoolers get to actually concentrate on any one topic, you can't really get all that far into it.

      Something that lets the kids get the flow in a shorter period of time is critical.

    5. Re:Forget Java by buddyglass · · Score: 1

      As someone who spends most of his time in Java but has had to dabble in Ruby, I find Ruby to be way more tedious. If I were going to recommend a language in that vein, though, I'd stick to Python. It seems to have wider adoption and generally be more future proof.

    6. Re:Forget Java by Chelloveck · · Score: 1

      Agreed. JavaScript and HTML5 is the way to go. Lightweight, capable, and ubiquitous. And it's probably going to be the most generally useful language for what people want to do these days.

      Unfortunately, JavaScript itself has some major warts. You might want to read Crockford's JavaScript: The Good Parts and avoid some of the worst of the language.

      --
      Chelloveck
      I give up on debugging. From now on, SIGSEGV is a feature.
    7. Re:Forget Java by JuzzFunky · · Score: 1

      How about Processing? Dead simple to get some impressive results quickly. It will build on your Java skills and it's easy to branch out into cool electronics projects with arduino etc. Most importantly, there's a huge community of people that are willing to help.

      --
      Unexpect the expected!
    8. Re:Forget Java by XxtraLarGe · · Score: 1

      Agreed. JavaScript and HTML5 is the way to go. Lightweight, capable, and ubiquitous. And it's probably going to be the most generally useful language for what people want to do these days.

      Unfortunately, JavaScript itself has some major warts. You might want to read Crockford's JavaScript: The Good Parts and avoid some of the worst of the language.

      Every programming language I've encountered has its warts. However, I believe JavaScript is the best language for beginning programmers, precisely for the reasons you outlined above. I don't think that they should ONLY learn JavaScript though.

      --
      Taking guns away from the 99% gives the 1% 100% of the power.
    9. Re:Forget Java by gbjbaanb · · Score: 1

      warts, Java... well....

      of course, the first step is getting them interested in computing as more than just porn and video games. Once you've got them coding anything, then they can figure the other languages out themselves. Maybe they'll get a job in the industry and then they'll end up supporting someone's shitty old legacy Java code too :-)

      So the trick is to do something fun and easy. I think games in js is probably the best choice - especially if that can be game in js they can play on their phones (or an emulator if they don't have any). Then you'll also see more members along as they show their efforts to their friends during the rest of the day.

      You also get to teach them a bit about network programming, client/server architectures, and separation of code (so they don't learn monolithic practices from the start).

      I would say - node.js servers, with express or restify library on the lab computers, with Apache Cordova on the front end.

    10. Re:Forget Java by Anonymous Coward · · Score: 0

      god no, never Javascript. At least make it jQuery.

    11. Re:Forget Java by Anonymous Coward · · Score: 0

      Program in something fun and lite like Python/Ruby/Perl.

      Javascript is better still. No compiler, near instant results. You just need a text editor & browser.

      No compiler, near instant results...just need a text editor, browser...so how are Python/Ruby/Perl different? Oh, you don't need a browser...

    12. Re:Forget Java by slim · · Score: 1

      No compiler, near instant results...just need a text editor, browser...so how are Python/Ruby/Perl different? Oh, you don't need a browser...

      You need Python/Ruby/Perl installed, which might not be the case.
      You probably do have a browser installed.

      Not that I'd personally use JS for teaching.

    13. Re:Forget Java by Anonymous Coward · · Score: 0

      Heavy languages like Java/C++ are tedious for kids/adolescents. Program in something fun and lite like Python/Ruby/Perl.

      Agreed. Although, in my opinion, Smalltalk is the superior beginner language, particularly if an interactive IDE is part of the package. As much as I prefer the command-line rest assured for a high school computer science club something like [url=http://www.object-arts.com/products/dce.html]Dolphin Community Edition[/url] provides an ideal learning environment and allows the club members to learn the fundamentals of object-oriented analysis, design, and implementation.

    14. Re:Forget Java by Anonymous Coward · · Score: 0

      Heavy languages like Java/C++ are tedious for kids/adolescents. Program in something fun and lite like Python/Ruby/Perl.

      Javascript is better still. No compiler, near instant results. You just need a text editor & browser.

      Oh, sure, that is all we need. A bunch of kids huffing javascript in the computer lab behind the campus.

  14. Programming contests by Anonymous Coward · · Score: 1

    Programming contests/competitions are fun. If you are not aware of how they work, you have teams of programmers. They are given a set of problems, for which no one could complete all of them within the time limit. If you have teams of four, usually one two members at a time can be at the computer. At the end of the time limit the judges rate who completed the most tasks. It has been a while since I was in one, but we did a few in college using C programming. An example of a task is a program that is run while two parameters (month and year) and the output is the month calendar. No one got 100% on that because of a special leap in in year 10,000 or something. Usually you are given 5 to 10 "projects" and 2 to 4 hours to work. You can tackle the ones you are best at. I think they scores were weighted so the easier tasks were worth less. I imagine there are lots of write ups on how to set these up.

  15. Step #1: toss Java. by Nutria · · Score: 4, Interesting

    Step #2: understand that Computer Science isn't the same as Computers.
    Step #3: decide what the current club members want to do.

    Redesign the school web site? Robotics? Arduino/RasPi hacking? Learning new languages? Etc etc.

    Installing FreeDOS and writing graphics programs in C that directly write to the VGA memory while controlling the sound "card" is an interesting first project. You learn a lot about the h/w, too. Then there's manipulating the FAT in assembly, banging bits out of the serial and parallel ports, etc, etc.

    --
    "I don't know, therefore Aliens" Wafflebox1
    1. Re:Step #1: toss Java. by Anonymous Coward · · Score: 0, Troll

      Installing FreeDOS and writing graphics programs in C that directly write to the VGA memory while controlling the sound "card" is an interesting first project. You learn a lot about the h/w, too. Then there's manipulating the FAT in assembly, banging bits out of the serial and parallel ports, etc, etc.

      Yes, build a time machine so they can go back to 1990 when FAT and parallel ports were the 'in thing' . Offering them the chance to learn about the world of raw access to hardware registers is just the thing to get today's 'hip' teens away from drugs and Justin Beiber. What teen would want to spend their time after school 'hanging out' at the mall with their 'homies' when they can spend months learning how to tweak VGA and SoundBlaster registers in assembler so they can eventually plot a square or make the speaker beep?

      If watching American teen movies has taught me anything, the computer club will become the envy of all their classmates and the cheerleaders will certainly agree to go to the prom with them. Cheerleaders dig x86 assembly experts who can talk for hours about the file allocation tables in obselete file systems.

    2. Re:Step #1: toss Java. by Bigby · · Score: 1

      On the same subject of not making it about computers.

      Make each day an interesting challenge. Present a problem and have the members come to a solution either individually or as a team. The problem should be Computer Science problems. Things you would get asked in crazy interviews. Brain teasers if you may...

      That will get beginners and experienced alike interested. Basically, don't focus on the code. Just the algorithms in a game-like format.

    3. Re:Step #1: toss Java. by slim · · Score: 1

      +1 to that. CS is stuff like formally proving the search efficiency of data structures. Don't try to attract high schoolers with that. It's interesting stuff, but you need a gateway drug.

    4. Re:Step #1: toss Java. by slim · · Score: 1

      If watching American teen movies has taught me anything, the computer club will become the envy of all their classmates and the cheerleaders will certainly agree to go to the prom with them. Cheerleaders dig x86 assembly experts who can talk for hours about the file allocation tables in obselete file systems.

      Sufficiently advanced high school programmers can create themselves a Kelly LeBrock.

    5. Re:Step #1: toss Java. by Nutria · · Score: 1

      Sure it's old and out of date. But it's simple, and there's a great virtue in simplicity when learning computers.

      --
      "I don't know, therefore Aliens" Wafflebox1
    6. Re:Step #1: toss Java. by kodomo · · Score: 1

      I think Computer science it's a lot bigger that just programming. You can all take a huge project like customizing a Starctaft bot https://code.google.com/p/skynetbot/ and give ever person a role in thar play... Some would be good organizers, some could have skills in programming, and... other could be beta tester playing against the bot and takin notes about bad behaivour. Thar game runs on a pentium MMX, so your old hardware shouldn't be a problem. Making them all fell like a part of something, contributing to the proyect shoud motivate them... Your role it's to identify their capabilities and give them a proper task.

    7. Re:Step #1: toss Java. by Warbothong · · Score: 1

      I agree. "Computer club" should not be "code-monkey training"; the point is to engage and play, not to teach practical job skills.

      Keep as far away from the stereotypes as possible, eg. don't show a screen full of unintelligible symbols for doing something with numbers.

      Make it easily accessible, eg. drag and drop, sliders, concrete results rather than abstract results, difficult/impossible to make syntax errors (eg. tile-based languages).

      Make it lenient. Getting a parameter wrong in a procedural image generator can produce an incorrect result which is still interesting. An error message is not an interesting result.

      Make it give instant gratification. Once I create a PacMan sprite I should be able to hook it up to the keyboard and play; I shouldn't have to stub out a Level class, a Ghost class, a setPowerPillDeactivateTimeOut method, etc.

      There are many programming environments which use direct manipulation rather than code. Some examples are eToys, Scratch and LivelyKernel (the latter two will run in a browser). If you want to write some code you could try those which are designed to be easy for kids to learn, eg. LOGO (lots of versions available) and Smalltalk (Amber will run Smalltalk in the browser). Find and read some of the studies by Seymore Papert, Alan Kay, etc. into teaching kids programming. There are also some less-general, domain-specific languages which make it easy to get an immediate 'wow' factor, eg. PureData.

      Make sure the projects have a multimedia element (graphical, musical, etc). Make sure things are relatable (games, crawling a popular Web site, etc.). Make a big list of ideas and take a vote for what one/two the group should do together at a time.

    8. Re:Step #1: toss Java. by Anonymous Coward · · Score: 0

      Make each day an interesting challenge. Present a problem and have the members come to a solution either individually or as a team. The problem should be Computer Science problems. Things you would get asked in crazy interviews.

      ABSOLUTELY NOT!

      This would steer anyone of sane mind away from computers, especially programming / software development, faster than a sweaty fat girl plunking her oversized posterior into a chair not designed for that much volume, while the pretty girls pass by in the hallway laughing and talking about the cheerleader practise or volleyball practise. If I discovered that I was in a "crazy interview" I would walk out quietly after saying "I won't be returning your calls".

  16. Obvious. by Anonymous Coward · · Score: 0

    Butterscotch. Network cables. Nipple clips. Chestcutters. A whole lot of fondue. Lots of rum. Fire.

  17. Easy by Anonymous Coward · · Score: 0

    Let there be beer.

  18. Re: by Anonymous Coward · · Score: 0

    Look into things that groups like LUG (http://en.wikipedia.org/wiki/Linux_user_group) and 2600 meetup groups do. (Not the illegal or questionable things, obviously.) Try to arrange for guest speakers or have weekend hackathons (http://en.wikipedia.org/wiki/Hackathon). Maybe try to participate in something like 7DRL (http://roguebasin.roguelikedevelopment.org/index.php?title=7DRL_Challenge_2013)

  19. Computing At School is your answer by SplatMan_DK · · Score: 3, Informative

    Take the time to visit non-profit organization Computing At School.

    Their own description of themselves is:

    The Computing At School Working Group (CAS) is a grass roots organisation that aims to promote the teaching of Computing at school. CAS is a collaborative partner with the BCS through the BCS Academy of Computing, and has formal support from other industry partners.

    They are dedicated to finding and sharing the best ways to teach IT to the young(er) generations, and they have a proven track-record with great results.

    I am not affiliated with them; but I use their website and material for my own children, because nothing better is available to me locally.

    You can join their online Educators Community here:

    http://community.computingatschool.org.uk/door

    - Jesper

    --
    My security clearance is so high I have to kill myself if I remember I have it...
  20. Jason by Anonymous Coward · · Score: 0

    If you've managed to retain 10% of applicants that's not too bad. Quality rather than quantity is the best way to go in this area. Just because something isn't popular doesn't mean it isn't good. Once you go off to college you will realize very quickly that after your introductory computer science course the class size gets significantly smaller. Think of it as filtering the riff raff...

    You might actually want to make it harder for people to join (exclusivity) makes things like this more appealing (night clubs and facebook did this). Best of luck!

  21. Have a project. by Anonymous Coward · · Score: 0

    Code game, modify some OS game, make mod.

    That way, "testers" and "idea guys" will also stick.

  22. Make something cool by slim · · Score: 4, Informative

    Make something cool; something you can show off to people outside the club, that will impress them and make them want to join in.

      Something involving robotics or sensing devices, perhaps -- that seems to engage young imaginations somehow. It's 20 times cooler to make a turtle robot draw a picture, than to draw the same picture on a screen. What about a Raspberry Pi powered school weather station that tweets the current wind speed and temperature, and serves visualisations of historical data on the web?

    See if you can come up with a project that can scale -- so your 4 core members can make a start on it, but other people could be brought in whenever they show an interest?

    1. Re:Make something cool by PetiePooo · · Score: 1

      Agreed. Java by itself is boring.

      At younger ages, pure software is not always that interesting. I'd suggest starting out with a hardware/software mix, like Arduino. Make something cheap with blinking lights that they can take home with them. Buy a few AVRs, a handful of resistors and caps, some LEDs, voltage regulators, and mini breadboards so you can make Arduino clones. If they want to keep them, sell them at cost; it's only a couple days of lunch money.

      Once they've outgrown that, move their skills over to the Raspberry Pi and have them blink a LED using Java or Python. Now, they're on a cheap, fully functional (albeit a bit underpowered) Linux system. They can learn BASH, Python, C/C++, etc. by seeing and tweaking what's already there. And if they break it, you're only out $35. Or if they want to continue playing at home, they're only out $35 plus accessories.

    2. Re:Make something cool by D1G1T · · Score: 1

      Yes. Keep it interesting. Robots. Arduino. Massive parallelism. Maybe a joint project with art and music clubs (i.e. girls) doing something with http://en.wikipedia.org/wiki/Projection_mapping using VPT or Madmapper since you've probably got a bunch of projectors available.

    3. Re:Make something cool by emorning9707 · · Score: 1

      Like a pen with an embedded camera that can broadcast pictures of a test to the group of students that have to take it next period....

    4. Re:Make something cool by Anonymous Coward · · Score: 0

      Kids (25yr) will find these things cool and will play with them, yeah. Tell them to create it themselves and watch all slowly fade from your meetings.

  23. How do we know? by mmcxii · · Score: 1

    Ask them what their expectations are and work from there. Everyone's ideas on what computing is or should be are different.

    But I would suggest that if coding is going to be part of what this club is that you get a group consensus on what kind of project they'd like to do and start something on SourceForge or the like. It'll get some public recognition even if it's not too great and people will see their name on the web. People like that kind of thing.

    I do a public astronomy outreach with my local amateur astronomy group. It's nice to work with the public and get some recognition even though I'm not great at it. It's one of the few reasons I still set up my equipment on public nights. I'm more comfortable working within the group but it's still nice to be part of a bigger community through public participation.

  24. Scratch by Torodung · · Score: 1

    MIT's scratch is pretty fun:

    http://scratch.mit.edu/

    1. Re:Scratch by slim · · Score: 1

      Scratch *is* fun, and would be a great fit for an elementary school computer club.

      I think by the time you're in high school, you should be aspiring to something more powerful/advanced.

      Having said that, for complete beginners to programming, I'd be tempted to use Scratch just for long enough to introduce a few core concepts. It's wonderful to have an environment where syntax errors are impossible.

    2. Re:Scratch by Torodung · · Score: 1

      I wouldn't presume that today's high school student can handle much more, but point taken. There needs to be something in between. When I was in HS, it was Pascal. I think previous suggestions of doing javascript pages was a good intermediary.

      My local college used Scratch to introduce programming to high school students, and it went quite well, btw. To avoid attrition, you need to appeal to someone other than the ubergeek, who should be learning to program bare metal machine code, AFAIC. The consummate geek is not the person you need to worry about losing in a high school computer club, is my point. You need to appeal to the novice as well. Scratch would fill in that gap.

  25. some thoughts by buddyglass · · Score: 1, Insightful

    You have to think about what peoples' motivation will be to be part of a "computer club". Despite being generally interested in coding, most folks don't want to sit around and talk about it all the time. Some ideas:

    1. Serve others. For instance, offer to tutor kids in lower-level programming classes. This won't be well received if you just end up doing their work for them.
    2. Prepare, as a group, to enter local programming contests. Where I grew up, there were one or two schools in the area that had "invitational" team programming contests. See if you can get a staff sponsor to drive you to these events so you can compete.
    3. Try to build something functional, and invite club members to help in the effort. Maybe a website that allows students at your school to plan out their course schedules based on your areas degree requirements. Maybe something that lets them sign up for automatic SMS updates containing news about your school. Etc.
    4. If you have any sort of budget then provide food at your meetings. Cheap pizza usually does the trick. People flock to free food.
    5. Invite speakers people might want to hear speak. If you live near a research university, see if some of their CS faculty might consider speaking to your group. If you live near any companies that do software development (and most people do), see if you can get some "real developers" to come talk about how things are in the "real world" and impart wisdom. (Caveat: many professional developers are not, in fact, very wise.)

    One thing you'll realize in high school, and college for that matter, is that about half the people in most "clubs" are there just so they can put it on their resume. I say that not to criticize, necessarily; it is what it is.

  26. Old tried and true... by securityfolk · · Score: 1

    Programming competitions. Sounds boring, I know, but I've seen such events bring out some very creative, lore-worthy, er, um, "logic" to win.

  27. projects... by Anonymous Coward · · Score: 0

    You need to find a project that is interesting and doable. How about some sort of activity where people can drop off old and/or "broken" computers for the comp. sci club to fix up and donate to charitable institutions? Guarantee that data will be wiped with DBAN or some other utility before disposal/redeployment. Idea here is to build up and inventory of hardware to play with, or redeploy.

    You can then set up a process for dropping images on machines by usb stick, or something like clonezilla. Go with something free like Linux Mint.

    Maybe some sort of project where you are setting up a classroom environment for an elementary school? Use something like edubuntu. Obviously this would need approval and supervision of the local IT dept of that school.

    Or some kind of virtual server project? Again going with free, something like ESXi or proxmox and any linux server flavor.

  28. Something people can do. by HungryHobo · · Score: 2

    Right, simplest way to maximise the number of people who stay.

    give them something immediate which they can do and see a result.

    Get them thinking about other things they'd like to do.

    It could be as simple as getting people to design some 3d objects then dropping them into garrys mod and letting people play with them.

    Immediate small success is more important than technical significance

    some basic scripting perhaps, the sort people can build on later without any setup like bash for linux/mac and vbscript for windows (even if VBscript is a horrible language)

    1. Re:Something people can do. by Anonymous Coward · · Score: 0

      Way back in my day (1980-1982) using one Trash 80 Model 1 and four Commodore PETs, we wrote a biorhythm generator with comments and then sold them to regular students for 10 cents. They would get a one page (dot matrix) printout showing the graph and comments on their physical, emotional, and intellectual state, and we made a little extra money for the club.

      They sold like hotcakes. So we moved on to simple tax preparation stuff (the EZ form) for those that had part time jobs. Not as popular though

      Now get off my lawn.

  29. RENAME NEEDED !! by Anonymous Coward · · Score: 0
    Teh Geek & Nerd Party Club at Rydell High !!

    (Only Geeks and Nerds Need Apply !! NO JOCKS ADMITTED)

    What have you got to lose ?? Four ?? And ditch Java !! Too hard !! Go BASIC !! Interpreted BASIC !! Instant gratification !!

  30. Instead of "No Girls Allowed" by Anonymous Coward · · Score: 0

    The sign on the club door should be:

    This is a GOOGLE GLASS site. All personnel are required to wear GOOGLE GLASS at all times.

    although I guess the effect would be similar.

  31. confidence and socialization by anthony_greer · · Score: 1

    I remember the CS club in my school back in the day and as I recall, it was a room full of very bright students but they all pretty much kept to themselves, not because they were mean or bad or anything, it was just a room full of introverts - if my experience is any indication I would recommend any activity that gets the group working together to meet a goal and or have them share what they are tinkering with and offer to help others and receive help. the club in my school got a lot better when it was taken over by a teacher who really forced engagement.

    1. Re:confidence and socialization by slim · · Score: 2

      To bring people out of their shells -- and I am not joking here -- make something, and make it with agile activities . No, don't get all anal-retentive about Scrum methodology, but:

      - Make design a group activity. Whiteboard. Write user stories on index cards.
      - Invite some kids who are *not* interested in coding, to be "stakeholders" -- have them help you write user stories, show them your work in progress, gather their feedback
      - Pair program (when I was at school, we were two-to-a-keyboard due to hardware shortages anyway)

      For example, one pupil has a vague idea for a game. Perhaps he's not much of a programmer, but he knows roughly how it'll work.

      Get him, some more technical pupils, some more arty kids, together for a design meeting. The arty ones all brainstorm for a bit. Then the technical ones step in and say, "OK, we've got a lot of cool ideas. By next week I reckon we can have a controllable square sprite, a jump control, some static target sprites, and a score that goes up every time he touches one.".

      Then the following week, they show off what they've done, and the non-technical ones are suitably impressed. And the semi-technical ones have learned some more coding skills. And the arty ones have maybe drawn pictures to be scanned into sprites in the meantime. Someone says "I thought the main guy would move faster", or "he should jump higher", or "now, those static targets should move... how should they move"? ... and you iterate with that, mixing with non-technical people to build up something cool.

  32. Invite speakers by nbauman · · Score: 3, Interesting

    Find some interesting guys in your neighborhood who are doing interesting things.

    Try the local businesses, colleges, IEEE chapter, etc.

    That's a "speaker" who comes in to describe his work, but then you spend an hour just hanging out with him or her.

    1. Re:Invite speakers by bill_mcgonigle · · Score: 1

      Experienced folks can teach real CS in interesting ways too.

      I've got a standard gig I do when asked to do "anything" which involves a fist full of pennies and notecards. In about 1:30 I teach the kids from 2nd-grade through high school how to send each other uncrackable encrypted messages (usually described in terms of teachers or CIA depending on the grade level). They get a touch of information theory, Boolean algebra and cryptography, but I don't use such lofty terms, I just encourage them to be subversive.

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
    2. Re:Invite speakers by Anonymous Coward · · Score: 0

      ...I just encourage them to be subversive.

      You are a terrorist and must be reported to the Department of Homeland Security. Teaching children to be subversives. Of all the nerve and to come right out and admit it is the height of audacity.

  33. Strippers by Anonymous Coward · · Score: 0

    They are like nerd bacon.

  34. Simple answer by Sparticus789 · · Score: 1

    You all are mostly familiar with Java. So create some sort of large project that is based in Java. Minecraft mods come to mind as an easy one, but there is still the possibility of some sort of web app/game that you all could participate in creating.

    --
    sudo make me a sandwich
  35. Get your facts straight. by Anonymous Coward · · Score: 0

    Get used to the thought that the target audience is not hackers, but rather the opposite. Non-hackers with maybe a little interest in how a computer works.
    The "strong Java Background" is a moot point - you are not about to discuss the pros and cons of multiple inheritance, but rater why you have to put a ";" at the end of al line.
    Lower your expectations.
    Make sure you present yourselves well (I'm thinking of a Website / Facebook Group mostly here). Have this Paged audited by somebody who's absolutely not interested in computers, peferrably a girl. Only when she finds it interesting, it's good enought. Don't go about geeky stuff on the official pages. If you really have the urge to do so, make an "inside group" or a Password-protected part of you site where you can geek about your geeky stuff :)

  36. Competition + food by Anonymous Coward · · Score: 0

    You could find some competitions to enter as a club, hackethons, game contests, things like that. That would give you a cohesive goal to shoot for and something to do as a team. If all else fails make sure every meeting has donuts and pizza. That always got me out.

  37. Design a game... by Anonymous Coward · · Score: 0

    And get it on kickstarter.

  38. Hello World...? by Half-pint+HAL · · Score: 1

    My philosophy is simple: Hello World is stupid. When I started programming in C at university, it bugged the hell out of me how long we took struggling with the language before being allowed to actually do something. The real way to start C is to start teaching the *n*x command prompt, and start making simple programs for shell extension commands (square, square root etc). That's the quickest way to get to something conceptually useful, because you're starting with divide-and-conquer and effectively teaching procedural programming by stealth -- the barrier between the command line and the program is less abstract than between calling procedure and called procedure.

    Things are obviously a bit different for Java, but the point is that you should be looking for the real core design goal of the language and starting there. C was designed for Unix, in the days when everything happened in a shell, and getting it to do anything else takes a few steps longer.

    --
    Got them moderator blues I blieve I walk out the do', With these mod-points I been gettin', I 'most never post no mo'
    1. Re:Hello World...? by GodfatherofSoul · · Score: 1

      Hello World is fantastic for its intended purpose. It's a simple sanity test of your environment. For new programmers, just getting to that step is a big hurdle.

      --
      I swear to God...I swear to God! That is NOT how you treat your human!
    2. Re:Hello World...? by Half-pint+HAL · · Score: 1

      A hurdle is a type of obstacle

      If there is an easier, clearer and more useful first step: take it. Follow the "path of least resistance", because it's frustration that turns people off learning something new....

      --
      Got them moderator blues I blieve I walk out the do', With these mod-points I been gettin', I 'most never post no mo'
  39. RoboCode by Anonymous Coward · · Score: 1

    A modern version of CoreWars. There's nothing better than competing against each other!

    http://en.wikipedia.org/wiki/Robocode

  40. Insight the little bastards.... by TheToddmonster · · Score: 1

    Anything you can do to create buzz is going to have a gravitating effect. Keep in mind you're talking about a bunch of teenagers. Make something explode (safely), fly something around the cafeteria, do a community service engagement project (stolen from above). Also... to get the parents to endorse... put some structure behind it and guarantee some publication. Anything to help a college application look better will also bolster support from the parents. Finally - to the 4 kids you have who are proficient in JS - remind them they need to act as leaders, mentors and teachers to the other kids. Perhaps a little difficult for kids who are trying to break out of their nerd shells but it'll be a good crash course in human interaction for them!

  41. Robots and video games. by Anonymous Coward · · Score: 1

    Robots and video games.

    At that age they are ready to begin a serious investigation into CS, but the majority of students lack discipline/motivation/focus to really dig deep and learn their ADT's and foundational algorithms, etc. So, you dress it up with something cool. I taught in similar circumstances, and used robotics and video game programming as an excuse to teach kids math/computer science/physics.

    We made a 2 degree of freedom, planar robot arm (oriented against gravity) that would read commands from a text file, and faithfully carry them out. This involved me teaching them about trigonometry, the PID control algorithm (and thus the integral and derivative), Taylor series approximation (and then, table look-up and first order Newtonian approximation), parsing text files, and most importantly, how to break a complicated problem into approachable subproblems.

    You can do lots of similar stuff with video game programming. Teach them how to make a Monte Carlo tree search based AI (it is a heck of a lot simpler than it sounds!), and have a tournament to decide who wrote the best AI for some board game. If you want to teach a particular abstract data type or algorithm, find a way simple way it is used and introduce them to that. The rest will follow.

    The Unity game engine is pretty awesome. Nothing drives concepts home like immediate, tangible, visual results. It has something of a learning curve for absolute beginners, but more people will try harder to climb that mountain.

    The point is, make is keep it (small) project oriented. There is more than enough meat in even unambitious projects to keep the club interesting and active for years. You don't have to worry about the 'purity' of keeping it *only* computer science. Show them some interesting ways in which CS is used, and then show them what is going on behind the scenes how to reach in and fix/break it. Remember it is not a primary education environment: there are no grades in a club, no compulsion for them to be involved, just cool stuff that they want to be around to explore and other people similar interests.

    If you want you can introduce the real nerds to the nerd-lore. (Is the jargon file safe for kids? Been a while since I've read it; regardless there are a lot of hacker koans you could print out and decorate the walls with.) Show them Duff's device (and spend a good long while explaining WTH it does), the "0x5f3759df algorithm", teach them about Babbage's analytic engine, introduce them to a variety of famous algorithms, teach them about who Knuth, Shannon, Turing, etc are and why they should care. Bring in a guest speaker, if you know someone who would like to. Less people will go for that sort of stuff, but it'll have a larger impact on the ones who do. Point them to the very large number of online resources for learning how to code. Udacity has a very approachable class on AI (from the guy who made the first self driving car).

  42. Clubs Often Work That Way by mx+b · · Score: 3, Informative

    As someone heavily involved in clubs in high school and college, let me first say that it is entirely common to have the numbers thin out quickly. Everything I've ever been involved in has mostly been done by a "core" group of say 3-6 people, everyone else is only helpful here and there on temp basis. Do not let that discourage you as it did me in the beginning. You don't need or even want too many people that actively involved or it will be a nightmare to manage. Instead, I would say get your core group together and vote more or less on an interesting project to work on. Build a robot, set up new computer labs in the school (with linux? ;-) ), contribute to an open source project mutually agreed on, or whatever makes your boat float. Cool things happening will get interest from others, who will then start to participate.

    The other thing I can say about attracting newbies is that you have to be sure you don't make things *too* technical up front. Some people have an interest but do not know where to begin, and will get scared off if the first meeting is too focused on the cool advanced projects everyone has. Make sure you include some plain "social" events to make people feel comfortable. Maybe with a computers theme. Maybe participate in a Distro Release Party (openSUSE I think encourages everyone to plan a pizza party and play with the new release every time it comes out, maybe try that? social but gives new people a chance to learn something new in a non-threatening environment). Remember: there are probably more people with interest in programming, but did not learn it yet, and so you have to be sensitive to their emotions. Not everyone teaches themselves programming at age 8 (for any number of reasons), so just remember your first priority is fun with friends with an interest, and then from that build a core that does cool stuff (maybe the core has extra meetings in addition to the monthly social meetings that attract new members). Contests are often a good way to get interest because it gets people involved. Maybe have some fun computer related contest (jeopardy! type game, whatever) and have some cheesy prize for the winner.

    Do you have a faculty sponsor? Having a teacher at bat for you can help you get resources: computers, software, pizza, or maybe even just get permission for use of a certain room as the club hangout and lab. An area to call your own is always good at getting people comfortable and happy to join.

    In any case, do not worry *too* much about planning to attract help. Just be involved in the school, have a lot of enthusiasm and do cool things, above all be casual and friendly, and people will naturally start showing up and helping out. Have a lot of fun and good luck!

    1. Re:Clubs Often Work That Way by Anonymous Coward · · Score: 1

      As the former president of a computer science club in junior college and continuing social engineer, I was very successful in promoting my club and taking it from 4 to 30 members by having real refreshments at meetings and advertising like crazy. (No one seems to have mentioned refreshments except for the above poster, thank you.)

      Without advertising, it will be hard for the average computer-interested joe to decide to attend a meeting over other activities. What's the advantage to joining your group at school as opposed to the other options available? (Browsing slashdot, writing code, making friends and enemies on IRC, sports, etc.) You have to be cool and friendly as the above person indicates, but you also have to be discoverable.

      Flyers, personal invitations from charismatic, popular people, mentions in press (school newsletters, mailing lists), all help a lot. Never underestimate the promotion that the teaching staff who are on your side can do. They're holding classes with every single possible member of your club and can send them your way.

  43. If they don't find CS interesting by Mrreh · · Score: 0

    If the participants don't find it interesting, they will leave. Which is fine, because they probably don't belong there in the first place.

  44. Keep it current if possible by Braavosi · · Score: 1

    If your dealing with grade school kids, keep the topics fresh and relevant to their world. Try giving them weekly coding challenges consistent with the technologies they currently deal with, like Android, Twitter, Facebook, etc. Have people from the industry come in and speak every so often. Not just from pure coding perspective, but also from some of the more fun areas of Computer Science like Game Development, research, medical, engineering just to give them an understanding of the world and it's implications to CS. For a year challenge, have them poll the students and see what they would want most from a new mobile app, and work through creating it. Have a prize or even submit it to ITunes or Google Store for download. That would give them real experience is developing against actual user/customer need, a skill that I feel becomes jaded as we spend years in corporate IT.

  45. Oolite by Smivs · · Score: 1

    Oolite is a free open-source cross-platform space trading and combat game inspired by Elite. It is infinitely mod-able and is written in objective-C.
    The OXPs (expansion packs) use javascript and open-step plists and graphics can be produced with Gimp etc.
    There is also a big community behind it so there's plenty of support available.
    The game is great fun, and it is easy to make expansions - your kids will be able to produce good results quickly.

  46. Get rid of the 4 regulars by arfonrg · · Score: 4, Funny

    Get rid of the 4 regulars because they are driving everyone else off.

    --
    Your thin skin doesn't make me a troll
  47. Robots by Maximum+Prophet · · Score: 1

    Anything that moves in response to commands is going to be more interesting that stuff that just sits there. Start a robotics curriculum that can be expanded as you find more resources and sponsors.

    Throw in a 3D printer and there will be all sorts of interest.

    --
    All ideas^H^H^H^H^Hprocesses in this post are Patent Pending. (as well as the process of patenting all postings)
  48. Three things to consider by Anonymous Coward · · Score: 0

    Three suggestions:

    1. Ask the some of the kids that left why they did so
    2. Be sure the kids are in charge, picking the ideas they work on, organizing the teams and so on. Guide them.
    3. Do some android development. The kids can build apps quickly they can use themselves on their own devices. It could be something used school wide. That provides immediate feedback and should not be a lot of work.

    1. Re:Three things to consider by bickerdyke · · Score: 1

      1. Ask the some of the kids that left why they did so

      They thought they would learn the secret of how to "hack facebook" at the first session. Dispointed that it would require hard work.

      --
      bickerdyke
  49. Ask them what they want to learn to do by Anonymous Coward · · Score: 1

    If they say program games, get them the tools, make it a place to show off what you have learned. A true geek session

  50. instructibles by Meyaht · · Score: 1

    Make stuff. Pyrophoric reactions, ferrofluid toys, hovercrafts from shop vac s. Make your club project based, and try to made it competitive somehow.

    --
    I believe in karma, which is why, when I do something bad to people, I assume they deserve it.
    1. Re:instructibles by Nutria · · Score: 1

      I think you've confused Computer Science with Chemistry and Mechanical Engineering.

      --
      "I don't know, therefore Aliens" Wafflebox1
  51. Field Trips by boristdog · · Score: 1

    I'm not sure if this is as relevant as it was when I was in a computer explorers club in the late seventies, but the coolest thing we did was go on field trips after school to see what sort of equipment and jobs were out there. Someone's parent or friend of their parent would usually take us into the "computer room" and explain the equipment and what they were doing. It was pretty cool.

    Of course, I did grow up near the Johnson Space Center and most of our field trips were NASA contractors and NASA itself, so that probably helped. And it was the late 70's, so paper tape, 9-track, punch cards, disk packs, etc. were the norm. And a fairly knowledgeable high-school student named Richard Garriott was our club leader, and he was pretty enthusiastic about this computer stuff.

    But it DID get me interested in these here computer things.

    1. Re:Field Trips by bickerdyke · · Score: 1

      Of course, I did grow up near the Johnson Space Center and most of our field trips were NASA contractors and NASA itself, so that probably helped. And it was the late 70's, so paper tape, 9-track, punch cards, disk packs, etc. were the norm.

      Strange how compared even to something like the original Gameboy, that much less computing power could look more fascinating.

      You could actually SEE how data is processed. And seeing is believing. This clearly sparks more intrest in "computers"

      Back then, the basics (e.g. a simple "guess the number" game in Basic or Pascal) was much much closer to professional data crunching in a big iron computer room. geting "Guess the number" working was a success. Today it's a disapointment because it doesn't have 3D-graphics.

      And a fairly knowledgeable high-school student named Richard Garriott was our club leader, and he was pretty enthusiastic about this computer stuff.

      But it DID get me interested in these here computer things.

      But you have to admit that that was sheer luck....

      --
      bickerdyke
    2. Re:Field Trips by boristdog · · Score: 1

      You could actually SEE how data is processed. And seeing is believing. This clearly sparks more intrest in "computers"

      Exactly. Everything was a lot less "black box" back then. You could see the bits light up on a panel as they were processed at sub KHz speeds.

      Maybe OP could have them build a simple "slow" computer with regular transistors to help understand the whole concept of registers and binary math as it happens in a machine. Start with something that adds two numbers and go from there.

      And yeah, we were lucky to have someone as enthusiastic as Richard for our leader. A leader who is REALLY into computers helps a lot. Plus, he wasn't your typical "nerd", he actually had a couple girlfriends at the time, which was quite inspirational to a freshman nerd like me.

  52. Please don't delude the kids... by Anonymous Coward · · Score: 0

    Getting kids into coding is like getting them interested in meat packing or textiles -- industries which are career dead ends. No business hires domestic programmers anywhere, especially when a call to Tata can get guaranteed results for a fraction of what a full time employee would cost, not to mention the other benefits (smaller payroll tax, less building space needed, one less employee that you have to worry about suing at a drop of a hat.)

    Instead, get them interested in what matters: Debate, accounting, business, finance. It would be nice to even have a class that discusses critical court cases and encourages legal research. These are majors that once they are in college, they might have a hope of feeding themselves and paying back student loans.

    Last college job fair I went to, the only people recruiting CS majors in the US, was the Army for enlistees, and you don't even get a choice of MOS, unless 11X is your choice.

    1. Re:Please don't delude the kids... by buddyglass · · Score: 1

      Do you really believe this? I'm curious; what do you think the jobless rate is for U.S. citizens with at least a bachelor's degree in C.S.?

    2. Re:Please don't delude the kids... by Cenan · · Score: 1

      Getting kids into coding is like getting them interested in meat packing or textiles -- industries which are career dead ends. No business hires domestic programmers anywhere, especially when a call to Tata can get guaranteed results for a fraction of what a full time employee would cost, not to mention the other benefits (smaller payroll tax, less building space needed, one less employee that you have to worry about suing at a drop of a hat.)

      You really, really, really need to get out and experience the world around you some more. That whole sentence pretty much summarizes the world view one would have if the only source of interaction is through news headlines. It basically says "hello, my name is AC, i have no fucking clue - although I think I do"

      --
      ... whatever ...
    3. Re:Please don't delude the kids... by PacoSuarez · · Score: 1

      In case others are too lazy to look it up, it's lower than the rate for those who majored in accounting, business or finance: http://www.studentsreview.com/unemployment_by_major.php3?sort=Rate

    4. Re:Please don't delude the kids... by Andover+Chick · · Score: 1

      True it is good to have less expensive Indian/Chinese programmers. But it is also wise to have an American/European programmer with higher well rounded language/assimilation skills along with the Asians. A good diverse team is one American programmer, one Russian program and a couple of Indian/Chinese coders. The infrastructure teams can be more of a ghetto but the program teams should have a craft blend of backgrounds.

    5. Re:Please don't delude the kids... by bill_mcgonigle · · Score: 3, Insightful

      especially when a call to Tata can get guaranteed results

      it's all a matter of what that guarantee stipulates.

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
    6. Re:Please don't delude the kids... by Creepy · · Score: 1

      Just to answer your question

      Do you really believe this? I'm curious; what do you think the jobless rate is for U.S. citizens with at least a bachelor's degree in C.S.?

      ~3.7%, and not even for a bachelors, that is 2 year MCSE sorts and above, well below the official jobless rate of 7.5%

    7. Re:Please don't delude the kids... by Anonymous Coward · · Score: 0

      I have worked with Indian nationals in various IT roles. Generally speaking they are unmotivated and uninspiring in their skills or abilities. As a founder of a technical start-up I would never outsource or in-source software development to anyone except a highly-motivated person. And no laundry list of requirements for some "purple squirrel". Anyone afraid of the *nix command-line would never get beyond the initial resume screening.

    8. Re:Please don't delude the kids... by demoncleaner925 · · Score: 1

      Getting kids into coding is like getting them interested in meat packing or textiles -- industries which are career dead ends. No business hires domestic programmers anywhere, especially when a call to Tata can get guaranteed results for a fraction of what a full time employee would cost, not to mention the other benefits (smaller payroll tax, less building space needed, one less employee that you have to worry about suing at a drop of a hat.)

      Instead, get them interested in what matters: Debate, accounting, business, finance. It would be nice to even have a class that discusses critical court cases and encourages legal research. These are majors that once they are in college, they might have a hope of feeding themselves and paying back student loans.

      Last college job fair I went to, the only people recruiting CS majors in the US, was the Army for enlistees, and you don't even get a choice of MOS, unless 11X is your choice.

      You are the one that is deluded. You think programming is a dead end, yet you hold debate, accounting, business, finance in high regard. Have you worked in all these areas? Neither Have I. One should pick a academic route that interests them and fits their personality type.

    9. Re:Please don't delude the kids... by buddyglass · · Score: 1

      The question was rhetorical, but thanks for providing the actual stats. I was aware the rate for C.S. degree holders was lower; just not by how much. Certainly the rate isn't "100%" as the guy to whom I was responding implied when he wrote, "No business hires domestic programmers anywhere".

    10. Re: Please don't delude the kids... by Anonymous Coward · · Score: 0

      This explains the four or five LinkedIn requests I get every single day asking me to consider this or that opportunity in software engineering, or offering me 10k large to recommend someone who might be a good fit.

  53. BEER by Anonymous Coward · · Score: 0

    BEER

  54. Robots! by LtNacho · · Score: 1

    ... that should do the trick. But seriously, find something cool to work on. Maybe a competition like robot soccer.

  55. Write video games with this book by Anonymous Coward · · Score: 0

    From the Pragmatic Programmers, so it's likely to be very good (NOTE: Haven't read the whole thing yet, but the intro looks good):

    http://pragprog.com/book/csjava/3d-game-programming-for-kids

  56. 10% does not seem bad. by archshade · · Score: 2

    10% of people staying on for a year does not sound to bad (especially for a disorganized group). I would say that making the group accessible to people during the year (certainley the first term) will help boost numbers.I highley doubt you will achieve more than 25% of people to stay. I would say that 20% is really the best you can hope for. If you want more people your probably better off trying to get more people though the door (although this will drive down your %)

    Have goals, - what do you want to achieve? Come up with a few ideas yourself for projects, then in the first few meatings get suggestions from members, do whatever you can to keep then involved and take ownership of the project. The decsion of which projects to follow needs to decided by the group. Don't run to many projects in parralel (not a problem if you only have 4 people) but have everyone working towards a common goal.

    Don't be autocratic, members are putting time into it they don't want someone pushing them around, do be prepared to take on the role of arbiter in disagreements.

    Don't assume everyone is at the same level, some people will have experiance, others will want to learn. Come up with an itroduction corse that is not mandatory, even if the course is just go away and read this documentaion/work though theese examples at home. Be prepaired to help. Agree on a group language, make it appropriate for the type of project you want to do, for application stuff I would recomend python.

    I asuming that this will be be coding based - thats not a requirment but I would definatley go for somthing where you make/design somthing.

    --
    Most Damage is done by people who are AWAKE
  57. Remove the computers by Culture20 · · Score: 2

    I'm not kidding. Make it a social gathering for people who are in CS, not a place to discuss more CS concepts (that's what your classes are for).

  58. How to increase interest in a club .... by morbingoodkid · · Score: 3, Insightful

    I currently run a club with about 230 members about 100 active on a weekly basis. Here is the principles I use to run the club.

    Basic principles:
    1. Challenging
    We try and target classes and projects just slightly above the students current level.

    2. Fun
    Let's face it if it's not fun people don't come.

    3. Sense of achievement
    People do not want to feel like they wasted their time. We give certificates for specific achievements.

    4. Do what you promise
    This is a way to make sure your club does not die. If you say you have meeting you have to have a meeting regardless if 1 person pitches or 100.

    This is the only way I know how to do it. And it seems to be working.

  59. Make it Relevant by csunfoley · · Score: 1
    You can try to ask students what they want to do - but most teenagers dont have a clue. But find out what they are into - what games they play, what topics they spend their time interested in and develop activities around those. It helps to have some ideas in mind. Here are a few possibilities
    1. Games, everyone likes games. You can recreate simple videogames (most kids today have never played asteroids - its a not too hard game to make).
    2. Use sensors and robotics to get the computer to interact with the rest of the world (e.g. have the computer respond to people walking by). Scratch and Kinect is a great tool for this.
    3. Create something useful - find a need in their house or school and figure out how to solve it. Kids (especially girls) like to be helpful. The Hacking for good meetups have been pretty successful.
  60. I was president of my high school club by slashmydots · · Score: 3, Insightful

    I was the president of mine in high school and we turned it into the gaming club. We kept the title for funding reasons but really we just threw LAN parties. Membership was pretty high. We also held a dance dance revolution tournament with the finals in the lunchroom.

    I've heard from other places though that the biggest success is always building some sort of overclocked, ultra-high storage, superocomputer but sort of an ironic one number-wise since nobody ever has the budget for a brand new one. Basically, throw together a ton of spare parts in a gigantic 1995 era-case with other computers' hard drive cages glued in for like 10 used drives with PCI IDE controllers (like $10 on ebay) and dual power supplies. You can get cages, fans, drives, and all that donated from people who just want to get rid of their junk computers laying around at home. Then run through how to run a proper chkdsk on them all and other technical stuff and definitely paint it and anyone into computers at all will love the project.

    1. Re:I was president of my high school club by Anonymous Coward · · Score: 0

      I was looking for an answer like this.
      Just let everyone play games.
      At our school most of the computer time was spent on hearts minesweeper and solitaire.
      It was at the time one of 3 air conditioned rooms, so that's where we would hang out when possible.

  61. Make a game. by Anonymous Coward · · Score: 0

    I'd try something which is interesting and varying overtime: Designing a computer game.
    If you want to stick to Javascript, I'd say have a look at Unity. At the moment you can freely release your projects on mobile devices, PC and Mac with their Free/Indie version. Besides Javascript, it also allows C++ and Boo for coding languages. There's a huge community, great toolset, and a lot of free usable assets. Hell, it kept a class I'm running in the UK interested (70% retainment after running it for a year; and we recently published our free game :-) )

  62. make a theme / activity "story arc" by Speare · · Score: 1

    I suggest you develop some sort of "story arc" or pathway or series of activities that build on each other, but where each step is fun on its own. Then new members can see how things will evolve over time, and not just be a purposeless hangout time that's easy to replace with Final Fantasy XX when that hits the shelves.

    As an example, they probably already know about Minecraft. For a minimal cost, you can get two Raspberry Pi units, then expand as kids start acquiring their own. Get them interested in the simplest Linux environment, then install Minecraft for Pi, then a tiny bit of Python will let them construct various Minecraft structures or mob AIs using Python coding. Mix it up but stay in the theme by setting up a Minecraft/Bukkit server on your full PCs, and learn to write plugins there, using the Java that your seniors already know.

    --
    [ .sig file not found ]
    1. Re:make a theme / activity "story arc" by NeverVotedBush · · Score: 1

      The Raspberry Pi thing is a great idea for computer clubs. The entry cost is cheap and the kids can do everything from robotics to cluster computing with them.

      They can learn about networking, linux, programming languages, vnc, interfacing and electronics, etc.

      I've been exploring one for the last few weeks and the possibilities are really wide open. One thing the Pi has that regular computers don't without buying accessory boards is a GPIO interface that gives you I2C, SPI, PWM, and bit flipping capability. All on the board.

      Plus, with an SD card for a hard drive, once one system is built for something like a contest to see who can debug some problem the fastest, it's easy to clone that image to all the other cards so all instances are identical.

      And it is a pretty much regular debian distribution if you go with the stock image - but you aren't confined to that. There are plenty of other images out there with other features and reasons one might use them. Pile on something like Adafruit's IDE and you have a real powerhouse for learning (which is exactly what the Pi was designed for in the first place).

      There are also tons of Pi-based projects on the web that can be explored, extended, modified, etc, that teach all sorts of things. They can learn about PID control loops and all sorts of command and control strategies.

      The Pi is extremely powerful and amazingly expandable. All anyone needs do is look at learn.adafruit.com and see all the RPi lessons that they have to start seeing the potential.

  63. Diversify by Anonymous Coward · · Score: 0

    Expand your club reach; change to being technologists vs being "computer science."
    By opening up to other technology fields you will get to meet, socialize, and hang out with other people interested in pretty much the same thing as you.

  64. You can't by Anonymous Coward · · Score: 0

    ....

  65. where is the blackjack? by Joe_Dragon · · Score: 1

    where is the blackjack?

    1. Re:where is the blackjack? by Minwee · · Score: 1

      Yeah, well, I’m gonna go build my own computer science club. With blackjack and hookers.

      In fact, forget the club.

  66. arduino, makey make and hackerspaces by Anonymous Coward · · Score: 0

    An important part of comp sci is how it connects to other subjects. Team up with some artist types and those who want to play with electronics. Look up arduino, makey make and go visit your local hackerspace for some ideas.

  67. Games. by chrisfcarroll · · Score: 1

    Games programming. Seems to get and retain a good level of interest -- look how much stickability http://scratch.mit.edu/ has got. Of course, it's a whole new ballgame and a learning curve for you too if your background is enterprise Java.

    --
    "In the quest for truth we must train ourselves to view our favourite ideas just as critically as those we oppose"
  68. For Javascript, what about Plunker? by matmota · · Score: 1

    What about Plunker?
    You can point people directly at their online editor, ready to write and run Javascript applications:

    http://plnkr.co/edit/

    On the left, select "script.js", type something like alert("hello") then click the Run button at the top. Template projects using jQuery, Angular and Bootstrap are available in the green "New" button dropdown; they are not limited to basic Javascript.
    If they want to download their creation, use the button at the top right (next to the blue GitHub button): "Download your Plunk as a zip file"

    You could use that to show newcomers to the club that they can write and run programs with just a browser and internet access, then organize other activities based on their feedback.

  69. I think you're asking the wrong questions... by Mysticalfruit · · Score: 1

    So when these 40 members showed up did you take a poll to figure out what people were interested in?
    Do people want to build video games? If so, show them pygame. Show them scratch.
    Do people want to do robotics? There are only a bazillion cheap robotics kits that use Arduino's, raspberry pi, etc.

    You need to figure out what direction you want to take the club and go in that direction.

    Just my two cents. I've been actively involved in running a LUG (http://www.wlug.org) for more than a decade. This formula has worked to keep our group active.

    --
    Yes Francis, the world has gone crazy.
  70. Call it a "Hacking Club" by vikingpower · · Score: 1

    At my former employer's, a colleague and I once gave a course with the help of OWASP Webgoat. It was in the evening, so on employees' own time. But lots of people came, and when time was up, we had to almost drag them out of the building. Including the secretaries, who had had great fun "stealing" credit card numbers.

    --
    Religous speak to God. Insane are spoken to by God. When all shut up, one can finally hear Shostakovich in peace
    1. Re:Call it a "Hacking Club" by GodfatherofSoul · · Score: 1

      Just what the world needs. More people with remedial skills at poking around someone else's network.

      --
      I swear to God...I swear to God! That is NOT how you treat your human!
  71. Oh That's Easy by Greyfox · · Score: 1

    Just get raided by some law enforcement agency. Your membership will triple overnight!

    --

    I'm trying to teach myself to set people on fire with my mind... Is it hot in here?

  72. Robots and graphics by Anonymous Coward · · Score: 0

    People like to see stuff happen rather than just moving some numbers about in a computer memory.

  73. Try something other than Java by RogueWarrior65 · · Score: 1

    IMHO, Java is the Visual Basic of the programming world. Try playing around with Raspberry Pi.

  74. Introduce them to MIT Scratch by jclaer · · Score: 1

    First find the basic youtube explaining MIT Scratch. Then open it on a browser. Then start an discussion where you try getting ideas of things people can try.

  75. Give them something fun to play with by Anonymous Coward · · Score: 0

    Like JPC (http://jpc.sourceforge.net)

  76. I suspect it's not visual enough by Anonymous Coward · · Score: 0

    My experience in getting people interested in code; and computing in general, is about providing as much immediate feedback as possible. The trick is to get people hooked on the empowerment that having control over a computer can bring. One way this is made most obvious is through the visual results their actions can bring about. For some it is true that a cool script here or a discovery there are interesting but for most it will be about creating something that looks impressive.

  77. Go for it. by Anonymous Coward · · Score: 0

    I am in school currently, half the people in my class are all sitting here with a "we should do something awesome", but don't really dare to propose it. Hell, even with my best friend we often have this "We should do something" feeling, but we don't really dare to ask the other person, although we both know either side would agree with pretty much anything.

    A great start, which we did with some peopel of the class (from europe btw, so our schooling system is different), is to get raspberry pi's. Fucking awesome. So far we have set up our own IRC, own music stream (although the legality of doing so may not be the same everywhere), we host lots of small things. Especially the IRC is a success due to us loving to make bots and so on, testing out lots of new things.
    Further on great ideas are organising a lan party, once again, police may not be fond of it everywhere. But our lanparty is now reaching a good 230 people and is simply great. Its a load of fun for both crew and non crew.
    Do note, being from europe, more specifically belgium, some of our schools are smaller than big universities. When I say a 230 people lan party, I mean its pretty much the biggest we can go if we want to keep it in one room.

    Further more I am currently thinking about some defcon like talks, defcon is pretty awesome, and I am sure that with some teachers, we could get it going.

  78. Puzzlers by Anonymous Coward · · Score: 0

    I lead a Java Developers meeting at my workplace (so I realize this won't be one to one with your group), but the thing they all love is when I pull out a puzzler from http://www.amazon.com/JavaTM-Puzzlers-Pitfalls-Corner-ebook/dp/B001U5VJVS/ref=sr_1_1?ie=UTF8&qid=1370007933&sr=8-1&keywords=java+puzzlers (it's about corner cases in the java programming language that have interesting results or unintended side effects).

    I put one up and ask them what they think the result of the code snippet is. Then after they get the answer wrong, I show them what actually happens and they puzzle about why it happens the way it does. Normally this involves rewriting the code snippet or passing in different input and trying to figure out why the snippet behaves the way it does. Finally, I'll read the explanation that's in the book and we'll talk about what's really happening and how to avoid the problem in code. It's definitely the high point of the meeting for us.

  79. Social Activity is Key! by BoyIHateMicrosoft! · · Score: 1

    I think something that would be interesting for you maybe to talk about, or have a speaker talk about, is social skills for people who are interested in CS as a career. I'm an extrovert so I don't have issues talking with users and colleagues, but so many people in CS do nowadays. I happen to have some modicum of IT skill, but I see lots of folks hired into IT nowadays that aren't really great at IT, but great with people. Especially user support fields. And before y'all say it, yes I know those aren't ideal, but we all gotta start somewhere right?

    I would also think maybe have a couple speakers with some real world XP would be nice. Not just coders, but maybe a tech support person or a network admin. Perhaps someone in a field that is growing. I work in Healthcare Informatics and that is a booming field.

    Just kind of look outside the box and I think you will get a large group than just your core that way.

  80. Mod video games or make some other fun product by Ameryll · · Score: 1

    StarCraft II has an editor and many of these moddable games have a scripting language for events.

    Blender allows you to write mods to it in Python - you can make movies or other fun final products.

  81. Rename it by Anonymous Coward · · Score: 0

    Call it the "Data Processing Club" instead.

  82. Go Knuth by jomama717 · · Score: 1

    Choose exercises/examples from Knuth's books and implement sample programs in the language of your choice - make it a weekly contest, best sample app wins gift cards or something.

    --
    while [ 1 ]; do echo -n -e "\xe2\x95\xb$((($RANDOM&1)+1))"; done
  83. EASY by BeCre8iv · · Score: 1

    Find students with an interest in computer science

    --
    This perpetual motion machine Lisa made is a joke, it just keeps getting faster and faster. - Homer
  84. Raytracing by CnlPepper · · Score: 1

    Make sure you launch them into something interesting. I would recommend a raytracer - the basics are incredibly simple, but they can be expanded to great levels of complexity. There is direct visual feedback, so rather than just printing out a load of numbers the users can field like they have achieved something more substantial. Numerical optimization and data structures can be introducted gradually and immediate results can be seen. Raytracers provide a great environment for introducing object oriented programming, they are also trivial to parallelise. On top of all this raytracing is extremely useful and the knowledge gained writing a raytracer, other than the computing aspect, is extremely valuable in engineering and physics (eg the maths + physics behind them).

  85. LAN PARTY by Vrtigo1 · · Score: 1

    We have a computer lab with ~30 computers

    Even old computers will still run plenty of good games...Quake, Warcraft, Halflife, Unreal Tournament, etc.

    Quake and Quake 2 in particular made it easy to create your own mods. Why not spend time hacking on the games and the rest playing the games? Great way to keep it interesting and fun.

  86. Set a project for the year perhaps? by Anonymous Coward · · Score: 0

    For example, make a video game. Use something like Unity3D free and free tools such as Wings3D + gimp or Blender. You'll need to go through all the steps of systems analysis, project management and development. Plus you can even sneak is some math and mathematical concepts and networking. I'd keep the game concept pretty simple to start and then you might be able to recruit kids with artistic talent to join the club, possibly opening it up to a wider range of interests and involving other people who may not be specifically interested in CS, but are interested in computer-related fields.

  87. Oblig by Anonymous Coward · · Score: 0

    Female nudity.

    If this involves a teacher, that's a plus.

  88. Games and Thinking by shdowhawk · · Score: 1

    As someone who was a VP of the comp sci group in my highschool years ago, the way we did it was we played games. We met twice a week, once to play starcraft (or other games... usually starcraft) and other games on the computers, the next to discuss coding and logic

    Often the logic would be strategies to figure out how the AI worked in games, but then we would talk about breaking through the schools firewalls, key loggers, etc. The Comp Sci teacher actually encouraged us to help him find security flaws for them to fix. After that we decided to try and write our own software for things like keylogging. Eventually we helped each other out with showing the newer kids the answers to some of the advanced AP homework assignments (they weren't in the AP classes). It was actually fun watching 5 people all come up with different but similar answers - then discussing WHY they took that route. Add in the classic "work on the schools webpage" stuff, and we were decently busy all year.

    The key was NOT talking about comp sci the whole time, but tying computer science INTO what we were doing. We had a solid 15ish people or so in the group at any given time and the school was average size.

  89. First of all, don't call it... by Anonymous Coward · · Score: 0

    ...the "Computer Science Club."

    shades of the 1950's Jughead grey crown beanie.

    Call it the "Android Fight Night" or "My Little Monolith." or something

  90. Weekly talks about projects by Anonymous Coward · · Score: 0

    Every week during the meeting we would have a presenter speak about a project they are interested in outside the norm. Everything from building a robot to productive text edits on a Mac, to GTD. We wouldn't spend the entire meeting on just this because that would be boring, but about an hour once a week.

  91. Programming contest, robots by kiick · · Score: 1

    When I was in grad school the local ACM/IEEE chapter sponsored a programming contest for several local high-schools. This is a fun way to get kids interested in programming and computers in general. Competitive games are a draw. Contact the ACM, IEEE or your closest university and see if they have any contests in your area. If not, maybe they will help YOU host one. Your kids will get to meet students from other schools with the same interests, polish their programming skills and have some fun. Cool prizes help.

    Another area with some cool factor to it is robotics. There are FIRST and BEAM leagues all over the place. Check them out. You could spend a few months getting a contest entry together, involving not just programmers, but budding engineers as well. Even without a contest, having a school robot is cool. And they have something tangible to show off to the rest of the school.

  92. Talk to people by Anonymous Coward · · Score: 1

    As a startup founder who far prefers building product to selling to customers, I'd say go talk to your potential members (customers).

    You had 40+ members who were somehow interested in the idea of a computer science club.
    But after they showed up, it turns out the club wasn't what they were curious about.

    So go talk to them. Ask them what they were expecting.
    You won't feel like doing it. Your gut will probably say no, just keep your head down.

    But you'll learn how to make your club interesting. And you'll be building up a skill that will be valuable later in life.

  93. one word by Budgreen · · Score: 1

    Strippers.

    --
    The greatest right given is the right to be wrong...
  94. Long-term project by tillerman35 · · Score: 1

    Pick a fun and innovative project for the whole group to participate in. That way, people will have a reason to come back every week.

    The project should be:
    1. Fun - but not necessarily a game. Fun to compy geeks means "has interesting puzzles to solve"
    2. Innovative - do something new. Invent something that nobody has done before.
    3. Important - do something that matters.
    4. Focused. Don't try to create the Ultimate Framework of Everything. It will take too long, and people will become bored and leave.
    5. Achievable - Target a ten-to-sixteen week completion time, with no more than an hour to an hour and a half contribution per member per week.
    6. Easily chunk-able. Pick something that can be planned together, then dealt out to members to investigate/design/create individual pieces.
    7. Lends itself to collaboration. Pair programming, get-togethers to investigate alternatives, etc. Anything to keep members connected and engaged.
    8. Has clearly defined roles that can be assigned team-wise. Bob and Jeff, you'll be the web team. Julie and Frank, you'll be the architecture team. And so on.

    If you pick the right project, people will be engaged and excited, and they can take pride in contributing something to the global community.

  95. It worked when I was in HS by dragon-file · · Score: 1

    Quake... maybe even Quake tournaments.

    --
    Whenever a player quits EVE to go play WoW, the Average IQ of both games increase.
  96. Hackers don't go to clubs by Anonymous Coward · · Score: 0

    A hacker is not someone who would want to go to a club in the first place, so you probably won't attract many true computer science enthusiasts. To attract more social people, do social things like play games or have contests. Whatever social people do when hackers aren't around. I wouldn't emphasize computer science, because lectures on homomorphic group operations will not go down well with the general public, and hackers won't attend social events anyway.

  97. Do something fun ! by eulernet · · Score: 1

    Why don't you try writing a demo in Java ?

    It'll develop the creative part and help you discover Java in depth. And it's easier than writing a game !

    Here are some examples:
    http://pouet.net/search.php?what=java&type=prod&x=0&y=0

  98. Android project. by Anonymous Coward · · Score: 0

    You've got old but serviceable computers. Android phones are pretty common, and you could probably get a couple older Android handsets donated by the community, or even maybe get a couple "goodwill" Galaxy S4's donated by your local AT&T/VZW/etc branch.

    Load up the Android SDK, get the kids to think of some interesting stuff they'd like to make their phone do, and then turn them loose to work on their projects.

    Oversee their work, have them work in teams, and give them some hands-on programming experience that will be relevant to their interests - high school kids aren't going to be too jazzed about "building a course scheduling tool for the school." But they might be pretty excited to build something they'd use with their friends.

    And so what if the app they build sucks? The point isn't to turn them into millionaires, it's to help them learn and the best way to do that is by doing it, and then sitting down to say, "so what sucked about that, and what can we do better next time?"

  99. Create Special Interest Groups by TomGreenhaw · · Score: 1

    Some will be interested in gaming, others will want to make web sites, mobile apps, etc. Do something cool with the Raspberry Pi, WebGL, or Google Glass...

    --
    Greed is the root of all evil.
  100. Minecraft by Anonymous Coward · · Score: 0

    If you can involve Minecraft into your activities you should be able to get a lot of attention. As for the more technical aspects... Minecraft mods perhaps?

  101. Pull their NSA file by Anonymous Coward · · Score: 0

    FTW!

  102. help them building 3D games by the+agent+man · · Score: 1

    We have been helping running computer clubs for about 20 years and have documented the things that work and don't. Creativity and ownership are key. Simply hacking Java code will go nowhere. Have them build games where they can also build their own 2D/3D artwork. Use tools like AgentSheets and AgentCubes that include powerful 2D/23D authoring and end-user debugging tools to motivate them and help with the programming. Otherwise, as you already see, you will quickly loose your audience.

    Here is some research data: http://scalablegamedesign.cs.colorado.edu/gamewiki/images/4/44/Will_It_Stick-submit_CR.pdf

    AgentCubes in action: http://www.youtube.com/watch?feature=player_embedded&v=2GWcb3aG2w0

    Better Idea: Forget computer clubs! If your goal is to expose students to computer science then the computer club idea goes nowhere. This is not an opinion. We have the data. You will get few girls, rarely any minority students and the overall percentage of students participating is dismal. Try the Scalable Game Design curriculum http://scalablegamedesign.cs.colorado.edu/ You can have your teachers do this and expose nearly 100% of the students at just about any middle schools or high school. With this strategy we get ~300 students per school and year instead of the ~15 computer club ones.

  103. RoboCode by RedHackTea · · Score: 1

    RoboCode
    Make it a competition amongst the members of the club. This is a little more modern take on old clubs where the main focus was usually Chess, Checkers, etc.

    For a little more advanced stuff, you could fork Mana World or create bots for the server and improve the game overall.

    Make an IRC MUD using PircBot or any of the other libraries out there. I've always wanted to do this but have never gotten around to it.

    Lastly, the most advanced option... research into making another Linux Distro ("Club Name" Distro -- also come up with a cool club name) or another Linux Desktop Environment (forking LXDE will be the easiest).

    There are lots of little things like this that you can research on the web. Chess can still be fun if you require no use of search trees, but instead force the use of a more pseudo-random algorithm like the Genetic Algorithm. Ask around the school to see what people are doing in their spare time at home and what they think is fun. Most people using Facebook? Maybe write a really simple Facebook app and then eventually a game...

    --
    The G
  104. CodeSpell by Anonymous Coward · · Score: 0

    I assume you read the article on Codespell a while back?

    http://codespells.blogspot.com/

    A game that teaches programming sounds like a really fun way to start off to me. Then you could have contests for who can create a certain spell the quickest, who can create the most interesting spell, etc,.

    I would do that for a month, and then I would then find out what the members wanted to do.

    As suggested previously, an app for the school could be cool. Perhaps a map of the school internals that you can see on your android phone? Perhaps a program that can easily create student schedules for the following year? It could be interesting to ask the administration if there are any programs that the CS club could attempt creating that would make school management or student life easier.

    You could also get the club to try to create a game together over the rest of the year. Not something too complex probably, but maybe something like Asteroids.

  105. To quote Kaiser cement trucks by kenh · · Score: 1

    "Find a need and fill it"

    Why did you start the Computer Club? Was it because you and a few friends wanted to start one, or was there some burning issue/need that no one else in the community/school were addressing?

    I'm gonna go out on a limb and guess it's the first one, and I will go even further and speculate that it was an idea shared by you and three of your friends.

    Successful groups form when they address needs, concerns or interests of a number of people - what are the needs, concerns or interests of the students in your high school? I'm a bit perplexed that you expect total strangers to suggest to you what your schoolmates are interested in...

    • Do you want to offer to help the school better-manage their computer resources (like so-called A-V Clubs used to do a few decades ago)?
    • Do you want to meet to discuss the latest computer games? Hardware advances?
    • Do you have some ability to attract industry leaders/spokespeople to come and speak to your group?
    • Do you want to marshal resources to assist some deserving charity?
    • Etc.

    "Find a need and fill it"

    --
    Ken
  106. Booze by englishknnigits · · Score: 1

    Put some booze in the Mountain Dew.

  107. How I Ran Our Club by kc7whd · · Score: 1

    I was the president of the computing club at the university I attended. We had a large membership since all computing students were automatically members, lol! We had several events throughout the years that were a hit.

    1. Building/coding competition. The School of Computing had tons of spare/old computers sitting around. We disassembled a bunch of them and basically created a bunch of parts boxes. It was fun to toss in some bad memory and non-functional HD's :) During the competition, the teams had to assemble a working pc, then code a working game (guess the number between 1 and 100). The first team to create a working game won.

    2. Computer fix-it day. As a volunteer event, about a dozen of us got together in the foyer of the computing building and fixed people's pc's. If the work was extensive, we'd sometimes take the pc's home (with the owner's agreement) and fix them for a fee.

    3. T-shirt contests - We have everyone submit ideas for geeky t-shirts then posted the submissions online for voting. The winning T was then available for a small fee to club members.

    4. War-driving game. For this, we hid an access point on campus, and competiting teams used their laptops (nowadays mobile phones would work too) to find the WAPs.

    5. Show and tell - I remember one club meeting where several friends had cobbled together a pc with a ton of hd's. It was pretty funny!

    6. LAN parties - fortunately for us, the faculty and lab managers were very helpful. The lab guy imaged all the pc's with an alternate gaming image, with Age of Empires, Worms, and some FPS. We got some cable lighting, etc, so the ambiance was awesome. An additional classroom was also wired so that people could bring in their own gaming machines.

    7. See if you can get your school to purchase a couple of LEGO MindStorm units - lots of fun, and there are many local/regional/national clubs and competitions.

    8. No matter what event you host, pizza always will get a turnout.

    Hope those ideas help - good luck!!

  108. Use of Javascript by MarkvW · · Score: 1

    The javascript suggestion is very good. The Kids could use javascript to make expressive and/or functional websites for themselves.

  109. Welcome to Computer Science Club by zawarski · · Score: 0

    The first rule of Computer Science Club is......

  110. some ideas by Anonymous Coward · · Score: 0

    Play computer Jeopardy. To keep nubes involved make the lower valued questions for nubes only.

    Linux install festival. install Linux for people (make sure you know what you are doing)

    informal help desk.

    From much experience I've found that activities that do not involve sitting in front of a computer are important if you want a variety of people with varied skill levels. You can have a "programming" club or a "computer stuff social club". Go for a 40-60 mix of tech stuff and pure social activities Social activities could be go out for pizza or burgers after the Jeopardy game ( or even after each meeting or get a computer related movie and make popcorn.

    -E

     

  111. Activities by Anonymous Coward · · Score: 0

    My university's ACM chapter hosted a programming contest for all the local high schools every year. Problems were selected from ACM contests from years past with some local flavor added. Up to three programmers per team. Only a single computer for the team and no electronic devices (members could bring in books and notes, though). Pizza, drinks, and local favorites were available outside the main programming room. With such a small number of active members, maybe your club could host a contest for others (think the original 40+ members).

    Another fun activity was our "Tank Wars". We created a server which placed a tank on a random tile on a random board facing a random direction. The tanks start out knowing nothing but what type of tile they are on and the tiles touching them. It's a turn-based game where each tank can shoot, scan, turn, or move forward / backward. Each team programs their own tank and sends the command (via sockets) to the server. Since it's client / server, the tanks can be programmed in any language.

    Computer Science isn't limited to programming. Our ACM chapter had a contest where participants had to assemble a computer and have it successfully boot up. The participant to do so the fastest was able to keep the system they built.

  112. Make it fun by SinisterRainbow · · Score: 1

    When most people think of math/computers/etc they think it's boring. You need a bridge to show all the great things that can be done, I suggest make games/mods using UDK/CryEngine/Unity (unity especially for new comers picking up simple javascript/C#). Does more than teach com sci, teaches various math disciplines, physics, it's fun, most people have played several games and can relate.. relevant to most people.. If i had to learn linear algebra without games to visualize it I would have been bored out of my mind. Visualizing and applying it in a game environment was the difference.

    --
    -Ultimate Stickman Game Developer Infinite World Puzzler
  113. COMPETE by Anonymous Coward · · Score: 0

    http://acsl.org
    http://usaco.org

  114. Don't limit what the members can do by Anonymous Coward · · Score: 0

    Combining several ideas from comments here, I think the best idea would be after asking the members what they want to do, let them group together to do different interesting things. For example, let's say half want to explore robotics and half want to explore game development. Then you could just let both groups go in two different directions (assuming you have enough supervision to cover both) and maybe further down the road find a way to bring both ideas back together and integrate into one thing.

    Though, if you've read this far down then you can see it's pretty clear that you should let the members drive the question of "what to do?" and merely curb it into something that makes sense for your situation.

  115. Have them make a web app by pyzondar · · Score: 1

    Where they flip through a list of pictures of all the high school students, answer 'would you sleep with that person?', and publish the standings on a screen in the high school corridor.

  116. Just Do It by VortexCortex · · Score: 1

    Know how I get adults and kids excited about learning computer science? APPLIED COMPUTER SCIENCE.

    Seriously. It's just like "Rocket Science" -- Few actually give a damn about the Science, its the ROCKETS that matter.... at first, but if you want to have more fun with rockets, you end up doing more and more science.

    So, what are the applications of Computer Science that are simplest to understand at a base level and high level, yet have unfathomable depths in between?

    Video Games, Artificial Intelligence, Embedded Systems / Robotics, Client Server Architectures, Distributed Data Systems (e.g., DHT), etc. Get a few skeletal projects going in a few interesting areas of applied computer science. Let the folks COLLABORATE on what they want, and don't put up with folks who try to dominate a project and brow beat others away -- You can lose that member, and gain even more via the more welcoming environment to outside ideas; It's good practices for IRL interactions in business and social settings.

    If you discount games as "kid's stuff", then you don't have even an inkling of the systems in play there. Games simply do more than any other programs; They contain behavioral science, computer science, graphics, geometry, physics, audio, network architecture, art and even writing -- CS can be demonstrated in the most ways possible in games, and it can be a project that many different clubs could work on simultaneously, yet can easily be scaled down to just Tetris, or mazes.

    Maybe make an AI opponent for the games using something other than just state tables or decision trees. Once you have an environment for avatars to act in AI takes on a whole other level of interesting complexity as they interact with their environment (or even people via player avatars). Take a look at Noble Ape, but DO NOT throw that at first time folks. A simple feed forward OCR can be coded in a few hours, and evolved or trained in the same length of time.

    Embedded Systems are great because they still NEED efficient algorithms in their software in order to perform well; Applying CS to pull off seemingly impossible feats under such limitations is very gratifying, and even gives the hard core ASM coders a chance to shine -- Their optimizations actually yield very noticeable results.

    Got an Embedded system, a simple AI and a little game environment to train it with? Throw the system in a chassis add a few Robotic sensors and controls, and you've got a little robot that EVERYONE will fall in love with. Even without the AI or Game environment folks can enjoy controlling robotics stuff themselves, even remotely...

    Add some networking code, maybe a decentralized hash table, and you can have "AI Sports Leagues" with other folks, control things remotely, have people interact from their other labs, dorm rooms or homes; You can even have a Robotic Hive mind that span the globe, each "body" part in a different place. All the while you can punctuate the fun interesting RESULTS of computer science with the actual Computer Science of how the systems work optimally. You can make predictions of your algorithms effects, test them in real applications, and observe the results -- Do Science To It; However, be prepared to be disappointed when a code-monkey's ASM optimization around a read/write bottleneck blows your algorithmic optimizations out of the water: Don't let that get you down, there are other places were the opposite is true. Learning where these spots are is great fun, and IMO a necessary but missing piece in today's CS curriculums.

    Seriously, if you can't figure out how to make TECHNOLOGY interesting, then maybe the best thing to do would be to look for someone else to replace you who can? Not trying to be mean, you can still be an important member, but maybe you're not cut out to be the president?

  117. Really fat (and smart) chicks.. by nanospook · · Score: 1

    That's about the only lucky lay those geeks are gonna get :p

    --
    Have you fscked your local propeller head today?
  118. free beers! by Anonymous Coward · · Score: 0

    I suggest to add some free beers for all the room. They will learn that programming is not so painful when accompanied with 3-4-5 pints of beer free !

  119. Suggestions for Computer Science Club by Anonymous Coward · · Score: 0

    Some of these have worked successfully in Canada and other jurisdictions that have a generally strong science program in education.

    Use Computer science program (more math based) to calculate an ideal algorithm or calibration for adjusting the swingarm on a grandfather clock, in a visual representation..

    Use Computers to do analysis and projections on the rations and amounts of nutrition for plants and vegetables in a "lab" Hydroponic farm, also in a visual representation, particularly in effects of sunlight, water and heat.

    Robotics is always a great topic in Computer science, and NASA "apparently" provide material for such topic to high schools.

    Two great Computer programs that are always winners are "blender" at blender.org and "synfig" at synfig.org - both used in many 3D graphics and particularly animation projects.

    There are also Free/Open Source Software (FOSS) "Video Game" development engines available for easy download and use, including with tutorials and help.

    These above will provide a great start.

    wanderson@nac.net

  120. Advice from my experience as a CS club pres by MrEricSir · · Score: 1

    I was the president of the ACM chapter at my university for a while. Here's a few of the activities we did, maybe it'll give you some ideas:

    * Programming competitions. This is a fun way to learn how to solve new problems, and works best in groups. Look into TopCoder and ACM-ICPC for sample problems.

    * Textbook lending library. Get students to donate their used textbooks and make them available to students studying in the lab. This way students will skip buying the books and spend more time together studying.

    * Video game party. Get some game consoles, TVs/monitors, and some pizza. Social games like Rock Band and sports games usually work well for this.

    --
    There's no -1 for "I don't get it."
  121. Money! by giveen1 · · Score: 1

    Have the students produce something like an Android app as a team. Sell it on the Play Store and give them the proceeds. This will spark lots of interest.

  122. The same thing that kept me in my H.S. club by Anonymous Coward · · Score: 0

    Quake 2

  123. Robots, Cellphones and Games by cowdung · · Score: 1

    People from the 80s:
    When you were learning programming the PC may have been the new shiny toy.. so it didn't really matter that the only thing it could do was BASIC you played with it because it was an interesting new gadget. Fast forward to 2013.. computers are everywhere and they are "boring" nobody cares about 6502 assembler or that you can trick your dot matrix into printing pictures with ASCII codes.

    People from the 90s:
    When you were learning programming this new thing called "The Internet" was all the rave! You wanted to learn "HTML" to show your useless dog in cyberspace. You were entralled by CSS and JS and other sillyness and ignored the fact that you reinvented the wheel (badly) when programming in your awesome Perl script.
    Fast forward to 2013.. nobody cares about "the Internet" its here.. we use it everyday.. what's the big deal?

    Back in the day.. there wasn't much to do with a computer.. so we enjoyed inventing things for it, building things. These days people would rather just hang on Facebook or Tumblr and veg. The computer is not a place for exploration.. it is an old dirty thing that sits in a room somewhere or some unexciting laptop whose battery doesn't last more than 15 mins.

    People today are crazed about Cellphones and Tablets that are the new toy. They are looking for ways to justify their ridiculous spending with such toys and trying to convince dad to buy them the iPhone 5 or the Galaxy S4 or whatever. If you can show them to write apps for the baby and give them some instant gratification doing so (PRINT "HELLO" won't work anymore) using modern interfaces they'll love you for it.

    Robotics are also starting to be interesting so using a tool like Lego Mindstorms or something better to make some complex programs si cool also.

    Also, games are a great way to get started because it is a great excuse to teach math and physics and some advanced programming concept. But to get immediate gratification you could try Pilas Engine (Python based) or maybe something better.

    Finally, I agree with other posters that using something like Java can be tedious for beginners. I remeber BASIC and LOGO because they gave me instant gratification. I suggest Python based tools as a good way to begin or AppInventor or something similar if you prefer.

  124. Teach then the Alice language. by Anonymous Coward · · Score: 0

    Kids will stay more interested if you get them writing games. One of the easiest ways to do that is with the Alice programming language.
    www.alice.org

  125. You are not alone by Anonymous Coward · · Score: 0

    It seems that you are not the only one with a shrinking CS club. It was similar at my school.

    For ones last three school years, there were completely optional but graded CS classes in my school.
    When I started, there were two full classes, about 40 students. After the announcement of the first test (around four weeks in), the number shrunk to 20. Now the teacher had separated the wheat from the chaff and classes became a little less difficult. Meanwhile he had also started a CS club for younger students, but only one student attended.
    After that first year, the teacher, who was very good, went into retirement and another ten 10 students resigned from CS classes. The new teacher wasn't nearly as good and his knowledge was partially outdated, after a semester another 4 students resigned.
    And during the last year we were 3 students.

    Some students left because classes were at 7 o'clock in the morning, some because they needed to make cuts in their overloaded schedule, some because they did not like the classes of the new teacher, some because classes were to hard for them, some because classes did not measure up to their expectations.

  126. The only thing that got me to the club meetings.. by Anonymous Coward · · Score: 0

    Free pizza and beer!

  127. Hack A Restricted Network by Anonymous Coward · · Score: 0

    That should create some excitement.

  128. FIRST? by Anonymous Coward · · Score: 0

    I realise the FIRST competition is more geared towards engineering, but....do that?

    "build robots and battle against other schools"

    it'll attract a few.

  129. Suggestions by Anonymous Coward · · Score: 0

    As someone that ran one for 15 years, you have to offer things that nobody else does.

    * ENVIRONMENT
    It has to be a friendly environment with as few rules as you can, and when somebody breaks a rule, politely point it out to them, don't talk down on them.
    Don't make people register. Its far too invasive, you don't need a bunch of details on other people. You need to ask your self why you are there? Is it to exchange knowledge and have fun, or is it to gather information on people?

    * EDUCATION
    Invite some experts to bring products and talk about them, or share some knowledge. You might have people talking about different kinds of hacking, or security related activities and a Q&A. Some people there may not want to participate in that, so let them do their own thing, as long as they don't disrupt the presentation.

    * TECHNICAL
    Many people have technical issues with their computers and they may need some technical assistance to help them solve the issues. It's a good time to get a number of opinions and different experts working on something (everybody has an opinion) for free.

    * FUN
    There is a reason LAN parties almost always have lots of people, because it provides an oportunity for people to trade files and play games and just have some fun, and break for a pizza or something. You don't really have to turn your club into a LAN party, but you can adopt some aspects of it such as programming contests, presentations, etc. etc.

  130. Sounds like you are a know it all, kid. by Anonymous Coward · · Score: 0

    don't be such a know it all. That helps alot.

  131. The three faces of the CS Club by Anonymous Coward · · Score: 0

    I managed to apply to colleges with "Founder of the high school's Local Area Networking Club" on my resume. The trick was, the club didn't really exist in the way that the high school thought.

    1) I went to the Principal to get permission to start the club, and explained how it would be all about learning computer science applicable networking skills.

    2) I went to my friends about the club, and told them we would play computer games all the time. We played a ridiculous amounts of Counter-Strike in the CS lab after school.

    3) There were a few people in the club who were seriously interested in Computer Science, and I spent a good amount of time outside of club events with them actually talking about interesting CS theory.

    So basically, the trick is to lie to everyone and let the masses eat cake, but still use the club the way it is intended for your own personal edification. Those four guys who were with you from the start will be good guys to know for the rest of your CS life.

  132. If your club is boring... by flandre · · Score: 0

    If your club is boring (read: uninteresting) then and lacking in discussion, demonstrations, games / fun, workshops, group projects/studies and even problem solving for your peers and staff, then don't be surprised if your membership falls short of your expectations.

  133. Use your club status by laughingskeptic · · Score: 1

    Back before the PC was invented, I started a Computer Science Explorer post after one of my high school teachers suggested I do this. This allowed us to have access to the local community college's excellent computer facilities and we also were given a great mentor by the community college. We played games (mystery mansion and trek), worked on writing an interactive version of the game Risk in SPL and learned to hack in Fortran. We had a consistent group of 8 or so members for 3 years. The point is, look for ways to use your status as a club to get access to interesting events and resources. I got more than I could ever have imagined for free by creating my club and it had a life long impact on my career.

  134. Ease your way into computer graphics by Scouras · · Score: 1

    Before making the big leap into opengl and such, you can make a simpler step into fully programmatic computer animations, either with Processing or Happy Fun Coding.

  135. Games by Anonymous Coward · · Score: 0

    Games.

    Really no more to it than that. Code games, simple ones then complex ones. Even at an advanced graduate level the lure of some sort of game makes most people go aflutter (not many get jazzed by cache replacement policy demo programs). I don't really know why, but it happens every time.

    Start with something dead-simple (hot-seat tic-tac-toe, or even shoots and ladders). The nice thing is that a game includes almost all parts of computing. The mistake would be to pick a "game framework" and try to teach that. What that would be to your students is giant wad of stuff they have to read and grok to have fun. Don't do that. Keep it simple- a tic-tac-toe that prints the board after every move- something easy enough to implement with plain old C and stdout.

    The mistake is to jump to a complicated framework (which takes time to learn). Get to the coding as fast as possible. Get to something tangible at first (games).

  136. Fun by Anonymous Coward · · Score: 0

    Give them the tools they need to build games, then leave it to their imaginations! Maybe even walk them through a bit of demo code. Teamwork should also help.

  137. first by Anonymous Coward · · Score: 0

    Tell them to forget a stupid "language" like java, its holding everyone back

  138. Conrad Barski by Anonymous Coward · · Score: 0

    Try 'Land of Lisp' by Conrad Barski. The subtitle is 'Learning Lisp One Game at a Time.' No, it's not GUI action games, but it will really ring the bell of those who like to make the computer do cool stuff.

  139. Create real programs by Anonymous Coward · · Score: 0

    Make a list of 30 apps that solve real world computer/human problems, ranging from tiny to medium sized. Have your group pick 4-5 of these and start with the smallest one (to boost confidence). Share these apps with the community through your school's website, including source code.

  140. Think Arduino or Raspberry Pi by Anonymous Coward · · Score: 0

    Well something very interesting that will use computer science ...

    Think Arduino and Raspberry Pi micro controllers.

    Basically inexpensive to start with, and loads of fun.

  141. Situation "Normal" by RockDoctor · · Score: 1

    initially saw a massive success (40+ members showed up at the first meeting). Unfortunately, participation has decreased a lot since then, down to four active members.

    That sounds like a fairly normal attrition rate. Pretty much all clubs go through this when they start up. (Sports clubs and other retard-entertainment may be different. But I doubt they'd be much different.)

    I feel that the main reason for this decline was the inability to maintain the students' interest at the beginning of the year,

    Plus a significant proportion of your membership will have graduated / moved on to other interests / discovered 1-person sex / discovered multi-person sex / moved away ... from year to year. You have three interlinked problems : retention of existing members ; recruitment of new members ; co-option of new members into administration of the club. (I'll ignore the dressing of the club with the trappings of democracy. The only time this is going to be a real issue, is when you don't have a membership crisis. Until then, Benign Dictatorship with the window-dressing of a compliant troika is more effective.

    as well as general disorganization, which we hope to change next semester.

    See above.

    Welcome to the wonderful world of politics. You might be under the delusion that you are running a computer club, but in reality you have become a competitor against every member of the club who thinks that they can manage the club better than you. I.e. you're a politician under fire. Enjoy!

    Meantime : pack the board (however : read the local election rule book, then put a surf board and 80-piece orchestra on your shoulders before sailing through the larger holes) with your supporters ; run the club the way that you want ; choose your successor (someone who will leave at least one, better two, years later than you) and whip your sock-puppets into line to guarantee a succession. Then grow. Grow! GROW! When you've got enough people who joined in first-year, were active through all of second year, and WILL attend third year ... then you can think about transitioning to something that resembles "democracy". But while you're starting and building a club - is not the time to be worrying about other people's opinions.

    Someone else is certain to take control of your club at some point. Unless you're particularly sad. So concentrate on GROWTH (dominance if there are relevant competitors), SUCCESSION, and .... well maybe then you can go onto policy. Which your replacement will change, once you're at college (or dead and buried ; same difference).

    The manual you need was written by one Niccolo Machiavelli in about 1480. The titles of the roles may have changed slightly ; the actions haven't.

    There's a damned good reason that Machiavelli's "human group programming" instruction manual is still in print : it works.

    Cynic?? Moi? Mais oui ; avec raison!

    --
    Birds are not dinosaur descendants;birds are dinosaurs, for all useful meanings of "birds", "are" and "dinosaurs"
  142. Core Wars by deepseabird · · Score: 1

    The project is straightforward: 1) build the computer simulator for the core 2) write the operating environment (very simple task switching) 3) let the club loose! They could organise as individuals, teams or both. Nothing like a gladiatorial contest and a little geeky bloodlust to fan the fires of enthusiasm. [Negative points for gratuitous references to TRON .... apart from the lightcycle of course.]

  143. Guest Speakers by MrResistor · · Score: 1

    Guest speakers from local companies that do stuff that your members might be interested in. That was the main thing that kept me interested, anyway.

    --
    Under capitalism man exploits man. Under communism it's the other way around.