Few months back, My friend Raguvaran, introduced me his brother Murugesan.
Murugesan is a fresher and looking for learning something to get a job.
I suggested him to learn whatever he is interested in.
After some discussions, I suggested him to learn python programming or linux administration.
He chose python and started learning it.
After some time of learning the basics, he asked me on how to proceed now to become a better python programmer.
Here are the answers for him.
0. Solve these 46 problems:
http://www.ling.gu.se/~lager/python_exercises.html
1. Start writing small programs yourself
You might be coded some snippets when you learn python. Using the knowledge of python, try to write small commandline applications.
Some examples:
1. A simple diary to store all your notes
2. An Address book to store/edit/search/delete address,phone,email of friends
3. Simple financial app to manage the income/expense
4. create all these using text file as storage and extend to use mysql as storage
5. twitter client in commandline
6. script to send email to all mail ids in a text file
7. webscrap a site automate its operations
8. A simple RSS reader in commandline
9. process access.log of apache and extract details from it.
GUI:
learn PyGTK or PyQT
Do all the applications you did as commandline apps, using GUI
once you are done with these basic simple applications, you can start exploring on the existing applications. Read the code and learn the advanced techniques like unit testing, Object oriented programming, network programing etc.
2. Use GNU/Linux
All GNU/Linux distributions like ubuntu/fedora/OpenSuse use python extensively.
You will use lot of python applications and you can see their code to learn from them.
Learn to use their package managers to install various packages with source.
You will be using many software and you will get ideas for improving them.
Join a local Linux Users group to meet awesome people with tons of learning.
example:
Indian Linux Users Group – Chennai [ http://ilugc.in ]
3. contribute to any open source project
As you start to use linux and python applications, you will get to know the existing bugs and required enhancements. There are tons of open source applications looking for contributions.
You can choose any one.
Look for its website.
Join the user and dev mailing list and read the archives.
Discuss with the developers for contributing.
There will be a issue tracker for all projects.
Check for bitsize/small bugs to fix them yourself
check this links too
http://stackoverflow.com/questions/117561/what-are-good-open-source-projects-in-python-for-which-i-can-be-a-contributor
http://stackoverflow.com/questions/2166322/open-source-python-project-to-contribute-to
https://www.google.com/search?q=python+projects+to+contribute
You can see the projects I contribute here. https://github.com/tshrinivasan
4. Learn IRC
Learn to use Internet Relay Chat
Join the project’s IRC channel and meet the developers.
They will help you to understand their code.
You can ask all your doubts to them regarding the project.
5. Start a Blog
Start a blog in wordpress.com or blogspot.com
start writing all your learnings.
Write daily on what ever you do technically.
Write what you learn, what you discuss in mailinglist/irc etc
6. Learn version Control System
Version control system like subverison or git is very important to contribute your code to any project.
Read the book http://www.ericsink.com/vcbe/
7. Join the User group and meet people
Python has users group everywhere.
Search net and find your local python suer group.
Join the list and participate in the meetings.
Ask questions and try to answer for existing questions.
example:
ChennaiPy : https://mail.python.org/mailman/listinfo/chennaipy
Banglore Py: http://mail.python.org/mailman/listinfo/bangpypers
8. Read books
Read good python books and explore more.
Tons of books are available in internet for free.
Example:
- How to think Like a Python Programmer
- Invent Your Own Computer Games with Python
- Dive into Python
- Essential Python Reading List
- The most comprehensive list from this Quora Page – How can I learn Programming in Python?
read here http://dorai.me/resource-links/python-resources-home/python-learning-material/
9. Teach Python
start to teach python to your friends.
Reach the training centers near you to teach.
else, create video tutorials and host in youtube.com
You can find some of my videos here http://www.youtube.com/tshrinivasan
The more you do programming, the more you will get skills.
Start contributing to any open source applications
Create new applications and share them in github.com or code.google.com
10. Get projects from surroundings
Look your environment for projects. You can discuss with a medical merchant to do a billing application.
You can contact any photographer to automate his tasks on photography.
Talk to any Hospital / Shop / Startup / etc. You will project to do.
You can charge for doing the projects for them.
It may lead to start your own company too.
—–
Reply here with your activities like blog and irc nick name.
Will follow your blog and give you suggestions whenever required.
Once you started to do all these, forget about the job market.
Update your resume with all these activities.
Provide your blog address, details about the projects you are contributing.
It will lead you to a job you wont feel as a job.
Waiting to see your contributions.
Wishes,
Shrini
This post can be matched with any programming language. Not only Python.
I dedicate this to all the freshers who are looking for how to start their programming career.
This was exactly the kind of advice I was looking up for some years back. It will help newbies a lot!!
Absolutely!!
I just started learning Python a week ago, other than to try do my own projects or learn from existing apps or codes, I have no idea what to do next. This article enlightens me.
Thabk you verymuch!!
Nice initiatives Mr.Shrinivasan.. I congrats and appreciate this activity for freshers… Keep doing.
thanks for the comment
Reblogged this on my / thoughts >> / dev / null.
That was a lot of info! Hope I’m on the right track. Longing to contribute to an opensource project, but procrastinating if me or my code is really ready enough. Stepping into my final year of CS Engineering and I should start contributing atleast this year.
very helpful for newbie like me.. i hope i can translate this for next release of kaniyam
That’s what i was looking for thanks for this great artical 😀
Very Very helpful. 🙂
pls send email address
pls give me your email addrees
tshrinivasan AT gmail DOT com
very helpful guide about python programing.
Good guide for newbies!
Very nice post for python newbies. IMO the best resource to learn python from is the official python tutorial : http://docs.python.org/2/tutorial/ . Also people at #python at freenode are very helpful
I used to be suggested this blog via my cousin. I’m now not sure whether this publish is written by way of him as nobody else realize such distinctive approximately my difficulty. You are amazing! Thanks!
Thanks. I really needed some measure of assurance that I am getting into the right thing.
Thanks again for the insight.
Pingback: What To Do After Learning The Basics Of Programming? ← Odd Journey
Large number of individuals looks for these information but they cannot get efficient one. I really thank you for talking about it
https://www.accounting-guru.net
Superb! Generally I never examine whole articles but how you wrote this information is just amazing and this kept my involvement in reading and I appreciated it.http://www.bestseoservice.in
Pingback: கணிணி மாணவர்கள் எப்படி வேலை தேடலாம்? | கணியம்
Pingback: Mudukulathur » கணிணி மாணவர்கள் எப்படி வேலை தேடலாம்?
Pingback: How students can prepare themselves for a computer career? | Going GNU
Pingback: How to get a computer science career? | Going GNU
Thanks for taking the time to write this. I took programming courses years ago, but do not being receptive to this kind of knowledge (knowlege must use in order to learn), and having instructors who cared more about finishing the course for the sake of finishing, rather than actually helping each student individually, I gave up the notion of learning to program. Years later I am homeschooling my son, and at the age of 8 he is learning Python. It is difficult at times for him, and I know some of that difficulty is do to my learning the material well enough to teach it to a child, but we are getting there 🙂
Plan to learn deeply About Python Programming . I am studied more materials but i am not perfect blog but i got from your end , Really Thank you . http://www.bangalorewebzone.com
Thanks Sir, these suggestions are really inspiring and helpful
Pingback: கணிணி மாணவர்கள் எப்படி வேலை தேடலாம்? | Bodhi Tree Skills
After Truly Finishing Learning Python, the coder will know how to do all you suggested and more, this is more of a “learn python through example” list of exercises rather than a list of things to do once one fully understands how to code and script properly with python. I could do all this stuff right after I learned what if, else, elif, and try are used for.
It inspired me.Really very very helpful.
But what is the minimum system requirements for the latest python aap?
I am very much interested to learn and earn from freelancing sites. I am a aged person and don’t have job or any useful skills. Could you please answer about the system requirements.