[Python Dependency Pitfalls] What dev managers expect from Python candidates

Hey there,

My friend Og is a senior manager at Red Hat and works with a large team of developers and quality engineers using Python.

I got to pick his brain on what he thought were the most important skills for new Python developers to know.

Here's what he had to say:

~~~

Usually when people learn a new programming language they go through the process of learning about the syntax first:

How do you handle conditions, how do you write loops, how do you declare variables and functions, and so on.

And that is all very important.

But it's not enough.

As a leader of a development team you can't bring someone on who doesn't know their way around the core tools for the job.

A couple of things that I noticed new Pythonistas struggle with is, out of the gate, "How do I run a Python app on a pristine and sandboxed environment?"

And I'm surprised that none of the courses or books that I've seen online start by telling you how to create and take advantage of virtual environments.

To get really comfortable with the idea of, "This is how I set up the sandbox, this is how I install all of my dependencies, and this how I'm going to get rid of everything once I'm done."

The reason I'm telling you this is:

I have someone who's learning Python for the very first time, and she's taking an online course.

She was telling me about how she likes it, and that the course was very basic but she likes it that way because she hasn't really written a line of code in many many years.

She says, "I can handle the slowness because it gives me a good solid foundation."

And I asked her, "So, are you using virtual environments?"

And she says, "No, I'm not sure what that is either."

The problem is the course didn't cover this topic at all.

This is one of the things that we have to teach new people right away, virtual environments and using pip.

It's the clean way, and it's a skill all of our developers need know.

None of our apps and testing jobs run without creating virtual environments.

As a matter of fact, every piece of code we write must be installable on a virtual environment.

What I like for people to know is how to install all the dependencies, how to work with virtualenv sandboxes, and how to use standard Python workflows.

I think that learning all of these basic things—maybe even before you learn how to write code—is really important.

~~~

This was an eye opening conversation for me:

Too many Python developers focus on the language and IGNORE the importance of being able to work smoothly with complex projects and deployment setups.

Oftentimes what makes you productive in a "real-world" Python development environment is a little counter intuitive:

Knowing your way around Python's syntax is NOT enough.

The "missing link" is knowing how to manage sandboxed environments and knowing how to work with external package dependencies.

As a result, solid Python dependency management skills are an asset that puts you ABOVE the sea of applicants for many Python jobs out there.

If you're looking for a quick and efficient way to acquire the skills and workflows recommended by the official Python Packaging Authority then check out my Managing Python Dependencies with Pip and Virtualenv course.

By getting those skills under your belt you’ll be ready to work with the Python development and production environments used by professional development teams across the world.

And knowing these “tools of the trade” by heart puts gives you the edge in any Python job interview:

>> Click here and discover how to quickly and efficiently acquire dependency management skills in Python

— Dan Bader

Older messages

[Sublime + Python Setup] Don’t build “nag screen muscle memory”

Thursday, July 28, 2022

Hey there, Once I worked with a developer who refused to buy a registered copy of Sublime for months on end, even though he *loved* Sublime. He used it as his main code editor every day and was very

[Sublime + Python Setup] why Atom can’t replace Sublime

Wednesday, July 27, 2022

Hey there, "In a nutshell, Atom is a Sublime Text editor that just got better." When I read this quote I got so worked up I nearly fell off my chair. Because every time I've tried Atom or

[Python Dependency Pitfalls] How to set the world on fire

Wednesday, July 27, 2022

Hey there, #1 on my list of dependency management pitfalls is there for a good reason: It lead to a single developer causing mayhem and breaking thousands of open-source projects around the world in

[PythonistaCafe] What's in PythonistaCafe for you?

Wednesday, July 27, 2022

Hey there, A couple of years ago I'd become quite interested in martial arts. Hours upon hours of watching "The Karate Kid" growing up must've taken their toll on me... And so, I

[Sublime + Python Setup] The Ctrl+s "Heisenbug"

Tuesday, July 26, 2022

"What the **** is going on?!" I heard Keith yell. Returning from my lunch break and in a helpful mood I grabbed my coffee mug and shuffled over to my coworker's desk. "What's

You Might Also Like

BetterDev #273 - Operating System in 1,000 Lines

Monday, January 13, 2025

Better Dev #273 Jan 12, 2025 Hi all, Happy new year. Welcome to the first issue of 2025. I'm trying to become more regular this year. Looking forward to a new year and hope everyone continue to

Daily Coding Problem: Problem #1667 [Hard]

Monday, January 13, 2025

Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Airbnb. We're given a hashmap associating each courseId key with a list of courseIds

🧠 Are Supercomputers Dead? — This 90s Tech Is Perfect for Smart TVs

Monday, January 13, 2025

Also: How to Make Sense of Linux Ping Stats, and More! How-To Geek Logo January 13, 2025 Did You Know The original name of the iconic SR-71 Blackbird was actually the RS-71 Blackbird, but Lyndon

Consistency means nothing & Bluesky is reportedly valued at $700

Monday, January 13, 2025

Sill Beta Update #3, Miro AI starts storing AI interactions from free users, Mastodon transfers to a new non-profit organization, and a lot more in this week's issue of Creativerly. Creativerly

Ranked | The AI Models With the Lowest Hallucination Rates 🤖

Monday, January 13, 2025

Hallucination rate is the frequency that an LLM generates false or unsupported information in its outputs. Which models have the lowest rates? View Online | Subscribe | Download Our App FEATURED STORY

GCP Newsletter #433

Monday, January 13, 2025

Welcome to issue #433 January 13th, 2025 News Official Blog Vertex AI Introducing Vertex AI RAG Engine: Scale your Vertex AI RAG pipeline with confidence - Vertex AI RAG Engine is a fully managed

Spyglass Dispatch: It's Political & Personal

Monday, January 13, 2025

On Meta's Moderation Changes • Inside DOGE • Zuck Slams Apple (Again) • Apple's Muted 2025 • CES 2025 Recap The Spyglass Dispatch is a newsletter sent on weekdays featuring links and commentary

$200 to invest today... (USA Only)

Monday, January 13, 2025

Join me in investing in blue chip art on Masterworks, and you will receive $200 to invest on the platform. Not kidding. Founder interview coming soon! ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏

The Sequence Knowledge #468: A New Series About RAG

Monday, January 13, 2025

Exploring key concepts of one of the most popular methods in generative AI solutions. ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏

How a Kafka-Like Producer Writes to Disk

Monday, January 13, 2025

We take a Kafka client, call the producer, send the message, and boom, expect it to be delivered on the other end. And that's actually how it goes. But wouldn't it be nice to understand better