Following on from the Django tutorial

Hi all,

I have a junior developer join my team in September, and she’s done very little Django before. She’ll be supported by an experienced and empathetic mentor and I’d like them work through the excellent Django tutorial in her first week or two.

But what next? Does anybody have any suggestions for good learning materials that take newish programmers beyond the basics?

Thanks!

Peter

Anything recommended from this point should be tailored depending upon whether or not they have experience in other development fields. (They might be new-to-Django, but have years of experience with Java - creating a different situation than for someone for whom Python / Django is their first development environment.)

If time permits, I’d also recommend the Django Girls Tutorial. It provides a different perspective on a couple of topics and addresses a couple things not really addressed by the Django tutorial. I think they complement each other.

Make them comfortable with reading the Django docs. They should get used to reading the information provided, and generally aware that not everything about a topic is always going to be in one place. Frequently, different aspects of a subject are covered in two or three different places. (I’ve been using the Django docs for more than 10 years now, and there are still specific questions where I need to look at multiple pages to find just the information I’m looking for.)

Being aware of, and familiar with the Table of Contents page and the Index are useful.

Beyond that, I would only recommend materials listed in the Education second on the Awesome Django page. There’s a lot of stuff out there - and not all of it is the best quality. (Some of it is just outdated, but some of it is simply wrong.)

Are they going to need to write any JavaScript for client-side operations? That adds a whole other learning curve.

At some point, they will find it beneficial to understand the HTTP protocol from a more fundamental level.

Try to keep them away from blindly finding answers using ChatGPT and SO. Yes, sometimes you get good or even great information. However, sometimes the answers you get are useless or dangerous, and a new Django developer isn’t going to know the difference.

But, once you’ve gotten through the tutorials, I’ve found the best next step is to get them looking at whatever project they’ve been hired to work on. Those two tutorials really do introduce pretty much everything they need to know to get started.

What you don’t want to delay on is getting them familiar with your own internal standards, processes, and procedures.

Do you have written (and unwritten!) coding standards? What is considered best practices for your environment?

Are there different roles within the team? Are they gong to fill a particular niche?

What’s your workflow? Are you using some type of trouble-ticket or project / task management system?

How do they work with your version control system? Code reviews? QA?

What do they need to know for deployment in your environment?

These are all issues that can’t be covered by external resources, but are probably more important for integrating a new person into a team.

2 Likes

I think it is helpful to create a website with Django and keep records of the creation process.
I am creating and running my own site(https://django.seolpyo.com/) with Django, and at the same time, I am keeping records of how to create such a site with Django.
As I keep records, I discover new things I missed, which helps me figure out which areas I need to improve.

1 Like

Thanks so much your thoughtful response Ken! I’d not considered the Django Girls Tutorial as a companion to the official tutorial – we’ll take a look at that, and at the other Awesome Django recommendations.

Fully agree with your points about getting familiar with docs and about being careful with ChatGPT + SO. And yes, we’re thinking hard about how to make sure our team’s processes and workflows are legible to new starters.

I like the idea of keeping notes as you go – it’s something I did a bit myself earlier in my career, and reviewing what I’d done was been a great way to see how much I’d learnt. (Maybe I should try this again – after all I’m still learning!)

1 Like