Results 1 to 18 of 18

Thread: Programming Academy

  1. #1
    kshcshbash's Avatar My Good Sir CNSW
    Civitate

    Join Date
    Nov 2005
    Location
    Ontario, Canada
    Posts
    736

    Default Programming Academy

    Hello.
    I have the privilege of being part of a group of TWC Members who are proficient programmers, and are willing to dedicate some of their time to sharing some of their skills as part of a project called the TWC Programming Academy. The idea is still in the works, but I thought I would post for critique.

    My fundamental idea here is to have the advanced programmers (Tutors) teach amateurs and newcomers (Students) the principles of programming. Class sizes will be limited to three or four students per Tutor, unless the Tutor is willing and capable. This enables each person to get highly personalized help and teaching, without Tutors having to go too far out of their way.

    I have drawn up tentative outlines, largely from reference materials, for the two languages I can teach, but review would be great. Feel free to post new language course outlines, and I will add them to this list:
    C++
    • Architecting a program The before-code stuff. Programming, not coding!
    • Variables and Datatypes declaration, assignment, identifiers, core datatypes, scope
    • Operators assignment, arithmetic, equality, compounds, conditional, bitwise*, precedence*
    • Flow Control if/else, switch, iteration, jump/break/continue
    • Functions definition, prototyping, scope, arguments, inline, overload*, recursion
    • More Datatypes arrays, character sequences, typedefs, union*, enum, struct*
    • Pointers and Memory pointers, reference, dereference, passing by reference or value, declaration, initialization, arithmetic*, void, null, function pointers*
    • Misc. preprocessor, namespaces, templates*

    Java
    • Object Orientation basics objects, classes, behaviors, attributes, inheritance, class hierarchy, interfaces, packages, subclasses
    • Basic Java statements, expressions, variables, datatypes, comments, literals, arithmetic, comparison, logical operation
    • Basic Implemented OOP* class definition, instantiation, calling methods, accessing and modifying member variables, typecasting, class libraries, main(), command line compiling and running
    • Arrays declaring, creating, accessing, modifying, multidimensional
    • Blocks and Flow Control block, if/else, switch/case, for, while, do/while, recursion, break
    • Methods overloading, constructors, overriding, finalizers
    • Modifiers and Access public private protected package modifiers, encapsulating code, instance variable accessors, abstract classes
    • Exceptions handle/recover, creating and catching
    • Streams java.io, input and output streams, InputStream, files, filters, byte arrays, sequences, pipes

    * Likely need to be discussed

    Both of those outlines should provide enough of a solid base for a good entry into more advanced programming, and they provide (I think) a good general overview of the respective languages. I'd rather teach Java over C++, so if someone wants to claim C++, that'd be great.

    Anyways, what I'm thinking is that I will retain a master list of who's in what class and who is teaching what. Students will be responsible for contacting their Tutor with details of Time Zones and such, and Tutors can teach the course as they wish. A mailing list could be a fine idea, if the Tutor sets it up. The Tutor will basically cover all of the topics, and give you lots of stuff to read online to reinforce whatever it is that he is trying to teach you.

    MSN will likely become your best friend. Having a small class of 3 or 4 people lets the Tutor give you highly personalized support, and to keep a whole class rolling.

    For example, the Tutor might conference with all of his Students on MSN on Friday at 20:00 EST. Let's say he covers File IO. He then gives his students a few links to check out, and an "assigment" to write a simple Java program that will output every line of a file that ends with a "!". He is available on MSN when he is, and the Students can always ask each other. The following Tuesday, he gets back together with everyone and they discuss the problem, and he can judge who's 'getting it' and who isn't. He can move onto a new topic, and in private continue teaching File IO to the guy that didn't get it. Win win.

    Of course, it depends on the goodwill of the programmers out there...

    So yeah, thoughts?

    n.b This is not a sign up thread. Feel free to indicate interest, but this is really just to refine the concept.
    Last edited by kshcshbash; April 17, 2007 at 11:04 PM. Reason: Not a sign up.
    Simetrical's homeboy, yo.
    You take the blue pill and the story ends. You wake in your bed and you believe whatever you want to believe. You take the red pill and you stay in Wonderland and I show you how deep the rabbit-hole goes. Remember -- all I am offering is the truth, nothing more.

    Sign up to learn Java!

  2. #2
    chris_uk_83's Avatar Physicist
    Join Date
    Feb 2007
    Location
    Lancaster, England
    Posts
    818

    Default Re: Programming Academy

    I'm interested in learning more Java from somebody more qualified than I. I already know most of the things on your list (though not well enough to teach them) so I'd prefer to be just set tasks to complete at my leisure (since time's limited and I usually do my programming at work when I have nothing else to do, which is always). It'd be useful to be able to ask someone how to do a particular thing, or where to find info on certain techniques etc, or what the documentation actually means when it says "x".

  3. #3
    Jubal_Barca's Avatar Master Engineer
    Join Date
    Dec 2006
    Location
    Cloud Cuckoo Land
    Posts
    2,355

    Default Re: Programming Academy

    I'm too busy to teach, but a course in advanced Javascript and integrating it with PHP would be good, and I could write some Javascript articles.

    I know it's not really a programming langurage, but you can still make quite advanced programs with it.
    Sine remo flumine adverso - Latin, 'up the creek without a paddle'.
    Mod leader of Warhammer Total War, Narnia Total War, and A Game of Colleges: Total War



    Under the patronage of Aden of Woodstock, The Black Prince.

  4. #4
    chris_uk_83's Avatar Physicist
    Join Date
    Feb 2007
    Location
    Lancaster, England
    Posts
    818

    Default Re: Programming Academy

    Again, I'm interested in learning about JavaScript and PHP too! Feed me knowledge!

    If I've helped you, rep me. I live for rep.

  5. #5
    Jubal_Barca's Avatar Master Engineer
    Join Date
    Dec 2006
    Location
    Cloud Cuckoo Land
    Posts
    2,355

    Default Re: Programming Academy

    Javascript's a lot better than it's cracked up to be, I'll do some tutorials;

    Javascript; The Basics
    Functions
    Multiple Frames and how they affect games
    Minigames
    RPGs with frame layouts
    Strategy in javascript
    AI scripting

    Or something along those lines.
    Sine remo flumine adverso - Latin, 'up the creek without a paddle'.
    Mod leader of Warhammer Total War, Narnia Total War, and A Game of Colleges: Total War



    Under the patronage of Aden of Woodstock, The Black Prince.

  6. #6
    chris_uk_83's Avatar Physicist
    Join Date
    Feb 2007
    Location
    Lancaster, England
    Posts
    818

    Default Re: Programming Academy

    Isn't JavaScript for adding funky stuff to web pages? Like nice animation and stuff?

    If I've helped you, rep me. I live for rep.

  7. #7
    Jubal_Barca's Avatar Master Engineer
    Join Date
    Dec 2006
    Location
    Cloud Cuckoo Land
    Posts
    2,355

    Default Re: Programming Academy

    Yes, mostly. I specialise in doing rather unusual stuff with it.
    Sine remo flumine adverso - Latin, 'up the creek without a paddle'.
    Mod leader of Warhammer Total War, Narnia Total War, and A Game of Colleges: Total War



    Under the patronage of Aden of Woodstock, The Black Prince.

  8. #8

    Default Re: Programming Academy

    Is there any interest in Shader Languages (CG or HLSL?), if so I'd teach.
    Count no man happy until he is dead.


  9. #9
    Gwendylyn's Avatar Citizen
    Join Date
    Apr 2006
    Location
    Seattle, WA
    Posts
    1,353

    Default Re: Programming Academy

    The big question that comes to my mind:

    Are you planning on teaching people already familiar with programming languages, or people who have never touched one before?

    Four months of overkill in a Java class got me as far as object oriented programming basics and half the class failed anyway. Most of the things on your list for either C++ or Java can only be taught within a very long time frame. If you plan to teach people who have never touched the stuff before, make sure you arrange your 'curriculum' around that. Likewise, someone who knows some Java or C++ are going to be at a completely different level. Put them in the same class together, and you either get bored programmers or confused noobs, or both.

    I would suggest in either case, though, to create a curriculum that has a decided end to it. You could teach either language for years and not reach the end, especially in a once-a-week internet setting where things will inevitably move slower. To just start a project like this, it is better to start small to fish out interest and whether the the people involved, tutors and students alike, react positively as it continues.

  10. #10
    Jubal_Barca's Avatar Master Engineer
    Join Date
    Dec 2006
    Location
    Cloud Cuckoo Land
    Posts
    2,355

    Default Re: Programming Academy

    Is anything happening to this end?
    Sine remo flumine adverso - Latin, 'up the creek without a paddle'.
    Mod leader of Warhammer Total War, Narnia Total War, and A Game of Colleges: Total War



    Under the patronage of Aden of Woodstock, The Black Prince.

  11. #11
    kshcshbash's Avatar My Good Sir CNSW
    Civitate

    Join Date
    Nov 2005
    Location
    Ontario, Canada
    Posts
    736

    Default Re: Programming Academy

    Yes.
    Simetrical's homeboy, yo.
    You take the blue pill and the story ends. You wake in your bed and you believe whatever you want to believe. You take the red pill and you stay in Wonderland and I show you how deep the rabbit-hole goes. Remember -- all I am offering is the truth, nothing more.

    Sign up to learn Java!

  12. #12
    Jubal_Barca's Avatar Master Engineer
    Join Date
    Dec 2006
    Location
    Cloud Cuckoo Land
    Posts
    2,355

    Default Re: Programming Academy

    Good-oh.
    Sine remo flumine adverso - Latin, 'up the creek without a paddle'.
    Mod leader of Warhammer Total War, Narnia Total War, and A Game of Colleges: Total War



    Under the patronage of Aden of Woodstock, The Black Prince.

  13. #13
    kshcshbash's Avatar My Good Sir CNSW
    Civitate

    Join Date
    Nov 2005
    Location
    Ontario, Canada
    Posts
    736

    Default Re: Programming Academy

    Jubal_Barca, you've twisted me arm. I might be able to get you started with AJAX/PHP, if you can get a few more people together.

    Last call for teachers or I'll take Java and PHPAJAX.
    Simetrical's homeboy, yo.
    You take the blue pill and the story ends. You wake in your bed and you believe whatever you want to believe. You take the red pill and you stay in Wonderland and I show you how deep the rabbit-hole goes. Remember -- all I am offering is the truth, nothing more.

    Sign up to learn Java!

  14. #14
    Scorch's Avatar One of Giga's Ladies
    Patrician

    Join Date
    Aug 2005
    Location
    Australia
    Posts
    8,376

    Default Re: Programming Academy

    Quote Originally Posted by kshcshbash View Post
    Jubal_Barca, you've twisted me arm. I might be able to get you started with AJAX/PHP, if you can get a few more people together.

    Last call for teachers or I'll take Java and PHPAJAX.
    Well I'd be willing to learn PHPAJAX ... whatever it is ...
    Patronized by Ozymandias, Patron of Artorius Maximus, Scar Face, Ibn Rushd and Thanatos.

    The University of Sydney | Bachelor of Arts III (Majoring in Ancient History and Italian Studies)

    I do not fear death. I had been dead for billions and
    billions of years before I was born, and had not suffered the slightest inconvenience from it.
    - Mark Twain

    Godless Musings: A blog about why violent fairytale characters should not have any say in how our society is run.

  15. #15
    Incinerate_IV's Avatar Burn baby burn
    Join Date
    Apr 2005
    Location
    Pennsylvania, USA
    Posts
    2,042

    Default Re: Programming Academy

    Sounds like a good idea, I'll sticky this if you guys can get it going.
    THE PC Hardware Buyers Guide
    Desktop PC: Core 2 Duo E6600 @ 2.8 Ghz | Swiftech Apogee GT waterblock + MCP655 + 2 x 120mm rad | Biostar Tforce 965PT | G.Skill 4gb (2 x 2gb) DDR2-800 | Radeon HD 4870 512mb | 250GB + 160GB hard drive | Antec 900 | 22" Widescreen

  16. #16
    Jubal_Barca's Avatar Master Engineer
    Join Date
    Dec 2006
    Location
    Cloud Cuckoo Land
    Posts
    2,355

    Default Re: Programming Academy

    I think we should try and get a subforum for this, I'll make a thread in questions and suggestions.
    Sine remo flumine adverso - Latin, 'up the creek without a paddle'.
    Mod leader of Warhammer Total War, Narnia Total War, and A Game of Colleges: Total War



    Under the patronage of Aden of Woodstock, The Black Prince.

  17. #17
    kshcshbash's Avatar My Good Sir CNSW
    Civitate

    Join Date
    Nov 2005
    Location
    Ontario, Canada
    Posts
    736

    Default Re: Programming Academy

    I've been talking to Publius about integrating it with a similar proposition for the modding community.
    Simetrical's homeboy, yo.
    You take the blue pill and the story ends. You wake in your bed and you believe whatever you want to believe. You take the red pill and you stay in Wonderland and I show you how deep the rabbit-hole goes. Remember -- all I am offering is the truth, nothing more.

    Sign up to learn Java!

  18. #18
    kshcshbash's Avatar My Good Sir CNSW
    Civitate

    Join Date
    Nov 2005
    Location
    Ontario, Canada
    Posts
    736

    Default Re: Programming Academy

    Find registration thread in the TWC University :-)
    Simetrical's homeboy, yo.
    You take the blue pill and the story ends. You wake in your bed and you believe whatever you want to believe. You take the red pill and you stay in Wonderland and I show you how deep the rabbit-hole goes. Remember -- all I am offering is the truth, nothing more.

    Sign up to learn Java!

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •