[Python Dependency Pitfalls] The Iceberg

Hey there,

The other day I read this quote from a Python developer that made me stop and think:

"As a noob with a little programming knowledge already, I've found setting up and installing things much harder than actually learning Python itself."

Isn't that surprising?

Shouldn't picking up the core language skills be much more difficult than learning the workflows AROUND the language?

I have a personal theory of why this happens:

The trouble is that the "difficulty distribution" for modern software development with Python is shaped like an iceberg.

And knowing your way around Python "the language" is just the tippy top of the iceberg.

The syntax of the language, working with the Python interpreter, where to find things in the standard library—

That's all challenging stuff for someone just starting out.

But it's also VISIBLE in plain sight.

Then there's a huge chunk of "ice" HIDDEN below the surface. A chunk that stalls the progress of many Python devs:

    - They don't know their way around standard tools like pip, virtualenv, or PyPI and it sabotages their productivity.

    - A lack of experience with the tools and the ecosystem surrounding the core language slows them down.

    - They lag behind other developers because of "re-inventing the wheel disease" and not knowing how to find and use quality Python packages.

(And there's more.)

Because these problems are invisible at first and quite counter-intuitive, many Pythonistas are missing an important part of the puzzle.

From personal experience I know it's easy to focus on the tip of the iceberg that's visible in plain sight—while completely ignoring the GIGANTIC MASS underneath.

And it makes sense—when you're learning a new skill for the first time it's impossible to "know what you don't know."

As they say, hindsight is 20/20.

And that's why focusing on the stuff that's invisible to a beginner but OBVIOUS to a more experienced dev is so powerful.

If you can focus on the hidden part of the iceberg and adopt the tools and workflows that experienced Python developers use, you'll find that you can make progress more easily…

And you'll pull ahead of your peers who are left wondering why their unsinkable "development ship" is filling up with water.

One of the easiest boosts you can get for your Python abilities is adopting the tried & tested dependency management workflows that experts use every day.

For more on how to use the Python "tools of the trade" and best practices like virtualenv, pip, and requirements files, go to:

realpython.com/products/managing-python-dependencies/

— Dan Bader

Key phrases

Older messages

[PythonistaCafe] What's in PythonistaCafe for you?

Saturday, September 17, 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

[Python Mastery] Learn Python in 21 days!!!!11 (what a lie)

Friday, September 16, 2022

Hey there, One of the first programming books I ever bought was "Teach Yourself C in 21 Days." This four pound tome came with a CD-ROM that included an ancient version (3.1) of the Borland

[PythonistaCafe] Why PythonistaCafe exists

Friday, September 16, 2022

Hey there, In one of my last emails I talked about how some online communities in the tech space devolve over time and turn into cesspools of negativity. This relates directly to how and why I started

[Sublime + Python Setup] Sublime Text is just a blank canvas…

Friday, September 16, 2022

Hey there, When I became serious about optimizing Sublime Text with plugins, it was hard for me to separate the wheat from the chaff. Without a real guideline or roadmap I resorted to installing *any*

[Python Dependency Pitfalls] "Re-inventing the wheel" disease

Friday, September 16, 2022

Hey there, PyPI, the Python packaging repository, now contains more than 100000 third-party packages in total. That's an *overwhelming* number of packages to choose from... And this feeling of

WP Weekly 116 - Launches - WP Biz, Tutorial Websites, Faster WP 6.1

Monday, October 3, 2022

Read on Website WP Weekly 116 / Launches This week saw many launches for WordPress-specific projects, new tutorial websites, and the usual stash of WordPress plugins. Also, get to know which WordPress

Register Today: Getting started with logging with the ELK Stack: A primer for beginners

Monday, October 3, 2022

elastic | Search. Observe. Protect Getting started with logging with the ELK Stack: A primer for beginners Register now Date & Time Thursday, October 20th, 2022 12:30 pm SGT, 3:30 pm AEDT Find my

SRE Weekly Issue #341

Monday, October 3, 2022

View on sreweekly.com A message from our sponsor, Rootly: Manage incidents directly from Slack with Rootly 🚒. Rootly automates manual tasks like creating an incident channel, Jira ticket and Zoom rooms

Stadia died because no one trusts Google — and Mandated diversity statement drives Jonathan Haidt to quit academic society

Sunday, October 2, 2022

Issue #908 — Top 20 stories of October 03, 2022 Issue #908 — October 03, 2022 You receive this email because you are subscribed to Hacker News Digest. You can open it in the browser if you prefer. 1

Tech Lead Digest #109: Your CTO Should Actually Be Technical

Sunday, October 2, 2022

And more news, tutorials and articles about building better teams, culture, and leadership in this week's issue. #109 — October 03, 2022 View in browser Tech Lead Digest Spread the word, build the

React Digest #376: Get in Zoomer, We're Saving React

Sunday, October 2, 2022

And more news, tutorials and articles about React in this week's issue. #376 — October 03, 2022 View in browser React Digest Spread the word, build the community, share the knowledge with your

Digest #71: Saving 50GB of Disk Space with One Character 😳

Sunday, October 2, 2022

Digest #71: Saving 50GB of Disk Space with One Character 😳 #71: Saving 50GB of Disk Space with One Character 📖 POSTS OF THE WEEK Building applications with Step Functions In this tutorial series, you

C# Digest #435: ASP.NET Core - Why async await is useful

Sunday, October 2, 2022

And more news, tutorials and articles about C# and .NET in this week's issue. #435 — October 03, 2022 View in browser C# Digest Spread the word, build the community, share the knowledge with your

Supercharge Accessibility & Why designers quit

Sunday, October 2, 2022

In this week's issue of Creativerly: Your agile iPad app for deft note-taking, where remote teams work together, a short notes manager, and a lot more. Creativerly Creativerly Supercharge

The Station - Geely's Europe expansion continues, Argo robotaxis on the Lyft app and Tesla AI Day takeaways

Sunday, October 2, 2022

TechCrunch Newsletter TechCrunch logo The Transportation logo By Kirsten Korosec Sunday, October 02, 2022 Welcome back to The Station, your central hub for all past, present and future means of moving