Status: 草稿; ZoomQuiet ;完成度 94%;
参考:

outline

Title:

PythoniCamp ~ try to train fast for Python programmer

Duration:

30min

Level:

beginner

Categories:

Python in Education

Summary:

Python is never one of the mainstream choice for development, also can not enter into college classes. But more and more teams or projects choose Python to develop. There is a big contradiction between enterprises' demands for pythoners and the loss of python training schools! How to balance the contradiction? We discovered one way to quickly train Pythoner in one month:

  • Base the real development environment to enable the trainees to practise
  • Prompt frequently
  • Force the team to elaborate the biggest learning abilities and experience Pythonic in shortest time

PythoniCamp ~ try to train fast for Python programmer

Background on China

  • in China most programmer s are not computer communication and technology majors
  • in Chinese universities, the educational mode of institutions of computer science and technology is very primitive, which is same with mathematics education.
  • What are the mainstream development technologies? in china, the main choices depend on the market share of IT companies
  • then the students will choose the relative technologies to learn by:
    • Reading the books of the most popular technologies;
    • Learning the technologies with most technical certifications
  • so! in china Python is far from mainstream

Problems need solve

  • but, Internet companies need Pythoners more and more urgently:
  • in Game Development, need to quickly bind python with functions witch complete by C / C + + / Lua / Perl / PHP, etc
  • in WebSite Development, need to use python to complete web site or realize some web services, etc
  • in Desktop Development, need to use python to quickly complete cross-platform deployment of automated testing / integration,etc
  • ...
  • How to do?
  • Wait for the universities to prepare and open a good course?
  • High salaries to attract self-taught Python programmers?
  • Create the specialized schools to train programmers?
  • PythoniCamp is a fast training method for junior and senior students to rapidly learn Python technologies.

What's PytohniCamp ?

  • `KingsoftCollege`_founded by kingsoft.com, is a full-time training organization for junior students in holidays.

    System Message: WARNING/2 (<string>, line 94); backlink

    Inline interpreted text or phrase reference start-string without end-string.

  • Usually lasts for 4 to 5 weeks
  • Promises to give offers to excellent students
  • The students finish the C++ programming exercises, and the teachers explain the exercises regularly
  • Preaches and introduces Python, and promises to give offer to the best students
  • For the voluntary participation of the trainees, make a four-hour introduction of basic syntax and development in Python
  • Published a number of practical project requirements, which are the truly needed small system or tools of the teams within the company
  • The development teams formed by the trainees themselves, experiments the iterative development under the guidance of the instructor
  • Through the mailing list at any time for technical answers
  • an open presentation to run the system demo every Friday
  • All of the codes are committed to SVN repository
  • All of the tasks / issues / defects are recorded in Trac

Why PytohniCamp ?

  • Learnning swim, must in water
  • students have formed a wrong software development concept in universities, they must be push into permission environments to refactory a correct concept:
  • in enterprises, team work is indispensible
  • Python development itself is not a mystery. To successfully complete the development, the difficulties are to accurately understand the requirements and communicate in or out of the team
  • Good habits of code management / configuration practices . It's useless to build habits after a failure
  • All commitments must be open, so that the credibility can be guaranteed
  • Any time, a participator should be considerate of others, then your code / documentation / communication can be effective!
  • Based on these assumptions , an atmosphere infinitely close to the real development environment can be created:
  • master is able to provide everything, but can not take the initiative to offer, students must be aware that roar out of what is required to promptly
  • master generally does not give the specific answers, only points out a direction, the rest is relied on the students' own efforts
  • The project is a real dead line and the pressure for demon presentation ,so which team is better can be immediately notice by everyone

Basic recurrence

  • Daily standup meetings have sound recordings
  • Weekly standup meetings have sound recordings
  • Weekly student activities score
  • Evaluation criteria are not publicly released
  • The quantitative evaluation according to the student initiatives
  • the evaluation is rated in the perspectives of cooperativeness/ responsibility / communication skills, and they are the important characteristics needed in a real project environment

More sophisticated recurrence

  • Rapid formation of the authority of the master
  • Rapid formation of opposition between master and students
  • Only the team which gives up opposition timely and seeks cooperation is able to obtain the real requirements to complete the project
  • If the team is always united for against master, them will not complete project neither

Other capabilities of ...

  • PythoniCamp is designed in this way is owing to:
  • master are the company staff, they also have their own development tasks, can not be fully involved in the training projects like the trainees
  • master do not have teaching background, they can only solve the problems occurred in the pratices
  • In a real company environment, it is impossible that a kind-hearted memeber will help you complete the mission!
  • In a real company project, there is no time for you to study the technologies, you can only squeeze time to learn.
  • If the students have any imaginations about program development, it's risky for individuals and enterprises
  • Experiencing the real development environment earlier has the following benefits:
  • Enterprise can tell whether a student is fit for the IT industry
  • Students are able to adjust themselves and form an appropriate habit.
  • Considerable effects of PythoniCamp:
  • The first PythoniCamp started on 2008-09,
  • 22 students participated,
  • only two quit the training.
  • The 20 students formed 5 development teams
  • finally finished 3 system.
  • Among the 20 students, five students passed the assessment and three was hired by Kingsoft.

Conclusion

  • Chinese students have solid foundations in normal school courses
  • As long as the students have the Pascal / C / C + + / JAVA based students, it is easy to master the basic syntax of Python and complete the executable script
  • The general guidance of the python camp teachers are active members of the communities, so that the final situation is:
  • Colleges need not to organize experienced IT company staffs to have classes, but a good employment rate will be achieved
  • Students do not have to spend the extra training fees, they can transfer the passive learning to the active learning in the shortest time, the employment rate can be improved
  • Enterprise do not have to pay additional fees, then they can recruit potential students from the community list and previously teach the technical skills to improve the employment rate
  • The communities can improve the influences without any extra efforts in the projects that have clear objectives and a variety of supports

that mean all win!

<<-- ZoomQuiet[2010-01-21 11:33:36]>>

PythonicCampEn (last edited 2010-01-27 10:03:54 by ZoomQuiet)