I bet a fresh job offer will make anyone a bit happier and more self-confident. Still, most of us had at least a single denied CV or failed interview. If this is the case, consider it as a sort of new experience.
This article is intended for a person who'd like to become an intern in a software development company.
Here in Django Stars if a candidate fails to pass the interview due to the lack of knowledge, we always provide the list of useful tutorials and books, that can help him or her to improve the coding skills.
You don’t need to pass every single course completely. It’s better to start from the very basic tutorials and do a lot of practice(little Python scripts and eventually a simple Django app).
And one more very important note: whenever you learn a new concept, data type, class or function, don’t forget to check the official documentation. One day you won’t need anything than the documentation. So far it's a good idea to briefly look it through.
So here is what we recommend for novice programmers or those seeking to become an intern or junior Python/Django Developer:
- Codecademy is a really nice place to start learning from scratch. However, some of the tutorials were updated and the new versions are not so challenging. Another drawback is a lack of Django tutorial.
Coursera's idea is great and I have tried 2 Python courses here. On one hand, the Coursera tries to make you code on a regular basis. On the other hand, if you start the beginner's course you should wait (sometimes for several weeks) for the start of the advanced topics.
Tutorialspoint can be best described as a simplified version of the official documentation. Here you can find the description of most basic concepts and keywords and some built in libraries. The description is brief and clear. For the most of the beginners, it’s actually a great option, but it’s not the place where you’d like to start from scratch.
SoloLearn offers a set of mobile tutorials, including Python. Really nice courses for those who can’t fall asleep without surfing with a mobile phone (including me). The theoretic part is really nice and I found the answers on several very basic things like the purpose of the 'magic' methods, on this exact course. However, the practical tasks sometimes look awkward. Some examples are over complicated and don't resemble a real life code. Most of the task are simple tests you can eventually guess.
Tango with Django. The beginner’s guide to Django and the web development in general. It may be your first stop when you end up with basic Python tutorials. There are several parts for different Django versions from such old versions like 1.5 to the newer 1.9 and 1.10. The book can be purchased on amazon or you can use it online for free.
Djangobook. In spite of the simplicity of Django official documentation, this thing is a great step by step guide. The book is based on Django 1.8 LTS version. Once again it’s somewhere in between simplified version of the official documentation and a nice step by step guide on how to build your first Django web app.
The Definitive Guide to Django: Web Development Done Right by Jacob Kaplan-Moss, Adrian Holovaty. The book describes a deprecated version of Django 1.1, however, it does describe all the basic concepts, and you can find answers to any Django related question. If you can’t find this exact book, you can try to look for any book by Adrian Holovatyi. Being Django co-creator he describes the material in a clear and simple manner.
When you feel confident with the Django fundamentals, you can check the latest versions of Django:
When you finish with a basic part, we recommend to read the following books:
Python Essential Reference (4th Edition) by David M. Beazley
Effective Python by Brett Slatkin
Who to Follow:
Guido van Rossum — creator of Python and the original BDFL
Tom Christie — Author of Django REST framework
Andrew Godwin — Django core developer
David Beazley — Python Cookbook author
Carl Friedrich Bolz — PyPy core developer
Adrian Holovaty — Django co-creator
Articles on Our Blog
Here on Django Stars blog, you can find articles and tutorials that cover both specific and general topics:
Practice Makes Perfect
Once again, do not rely solely on theoretical part. Try to do more practical skills like little scripts or simplified versions of already existing applications. If you do it on a daily basis you’re bound to succeed as a developer.