Rendering of reStructured text is not possible, please install Docutils.
:status: 草稿; ZoomQuiet ;完成度 94%;
.. contents::
:depth: 3
.. 链接定义区
建议在文章头部,统一定义各种链接/图片... 内容资源!
.. |biohazard| image:: biohazard.png
.. _Docutils-Users mailing list:
http://lists.sourceforge.net/lists/listinfo/docutils-users
.. _Docutils project web site: http://docutils.sourceforge.net/
.. _Trac:
http://trac.edgewall.org/
.. _金山训练营:
http://www.kingsoft.com/zt/2008/kscollege/
.. _KingsoftCollege:
http://www.kingsoft.com/zt/2008/kscollege/
:参考:
- `PyCon2010亚洲 <PyCon2010>`_
- `蟒营~快速培训Python 人才的尝试 <PythonicCamp>`_
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.
- 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
- PythoniCamp is a specified training from `KingsoftCollege`_ :
- 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!*
.. 脚注定义区
建议在文章底部,统一定义各种 编号/自动/标签/引用 脚注
.. macro:: -- ZoomQuiet [<<DateTime(2010-01-21T19:33:36+0800)>>]