Mentorship template for learning programming in python Type = Level 1
- Mentee should fork this template.
- Mentor should join in as a contributor.
This template is designed to assist Twoleaps mentorship program. The template consists of two major sections: Goals and Progress tracker. Mentors and mentee should add goals prior to start of mentorship. Both Parties should have agreement on the goals. Progress tracker is to be updated on week by week basis with new tasks to complete the defined goals. For each week, a folder in the repository has to be maintained which captures the work done. It can be a small essay of things learned to code written etc.
Regular feedback is highly encouraged. Feedbacks should inspire improvement. Mentors should summarize week by week progress in form of feedback whenever possible and add it to the weekly work folder in form of week1/feedback.md
<Add mentorship timeline here in weeks. Example: 8 weeks starting 10th August>
The objectives of the mentorship should be listed down here. They can be customized over time by the mentor or the mentee's preferences.
-
Understanding python
- What are interpreted languages?
- What are dynamic typed languages?
- How python code executes?
- Global interpretor lock
-
Understanding python dev environment
- Introduction to venv
- Introduction to pip and easy_install
-
Basic python syntax
- Variables, expressions and statements
- Writing Functions
- Looping
- Working with strings
- Error handling
-
Python common datastructures
- List
- Tuple
- Dictionary
- Sets
-
Python Functions
- Functions
- Mathematical functions
- In-built python functions
-
Object oriented programming
- Writing classes
- Creating modules
- How inheritance works in python?
-
Working with lambdas
- What are lambdas?
- Writing programs using lambda.
-
Working with I/O
- Reading and writing file in python
- Taking user input in python
-
Projects
- Minor project 1 : Stand alone application. Ex: Calculator app.
- Minor project 2 : Working with libraries. Ex: Web crawling.
- Major project : Solve a real life problem. Ex: Software to check weather forecast and send sms if it is about to rain.
Track weekly progress in this section according to above mentioned goals.
-
- Task 1
- Task 2
- Task 3