[Python Mastery] What Pythonistas can learn from bestselling authors

Hey there,

I just finished reading Stephen King's "On Writing."

It's a great little book where he shares some of the writing advice and stories he's picked up over the course of his career as a bestselling author.

He goes pretty deeply into the "behind the scenes" of his writing process, what his schedule looks like, etc.

All very interesting stuff. I'd highly recommend the book if you're interested in writing or just want to get a slightly different peek inside Stephen King's brain for a few hours.

Now, why am I telling you this? There's a chapter in the book where he says, in essence, that:

"All writing is re-writing."

That really struck a cord with me.

And I think it applies directly to what you and I do as Python programmers...

Here, let me explain:

One important thing you need to realize is that there's NEVER a "perfect" first draft:

Just like writing, programming is NOT a linear process. It's an iterative one.

You start with a "blank piece of paper"—whether that's a blank .py file or some boilerplate code you pulled from an existing template.

Then you get your first draft down...just get it out:

Maybe it doesn't fulfill all of the requirements yet (usually it doesn't, at least for me.)

Maybe the code you write looks a little "ugly": the formatting is off, the naming is bad, it's too complicated for what it does.

But that's okay.

Stephen King doesn't write a novel in a single pass—and neither do you need to write the perfect program in one go.

Because now you're going to *iterate* on what you've got so far:

You're going add a little more functionality. Make the code a little prettier. Tease out some functions here and there. Add docstrings and comments.

And you're going to keep iterating and making changes until your program is ready to face the day—

Basically, "all programming is re-programming."

Or as Kent Beck (the Test-Driven Development guru) put it:

"Make it run, make it right, make it fast."

This is really a mantra to live (to program) by.

If you look closely you'll find this idea in all kinds of other creative endeavours (except maybe not in sandcastle competitions.)

With "Python Tricks: The Book" you'll discover how to make the most out of this natural "re-writing" phase.

You'll see in detail how to take existing code that "gets the job done" and to refactor and improve it so that it becomes clean and Pythonic:

>> Click here to pick up the best "productivity features" Python has to offer like decorators, lambdas, list comprehensions (and more)

— Dan Bader

Key phrases

Older messages

[Python Mastery] The hidden costs of "copy-paste" Python programming

Thursday, June 23, 2022

Hey there, Here's a development story that plays out thousands of times each day: Avid Pythonista Max is working on a function to find the 10 oldest files in a nested directory hierarchy. He needs

[PythonistaCafe] Q&A

Thursday, June 23, 2022

Hey there, At this point you should have a pretty good idea of what PythonistaCafe is about and what makes it special. In this email I want to answer some common questions that I get asked about the

[Python Dependency Pitfalls] Artisanal "from-scratch" development

Thursday, June 23, 2022

Hey there, The other day I got this question from Newsletter member Newvick in my email inbox: ~~~ I'm trying to get past the beginner's stage in Python and one problem I have is: When do you

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

Wednesday, June 22, 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

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

Wednesday, June 22, 2022

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

The Critical Question Facing Web3 Infrastructure Startups

Friday, April 29, 2022

Tomasz Tunguz Venture Capitalist at Redpoint If you were forwarded this newsletter, and you'd like to receive it in the future, subscribe here.​ ​The Critical Question Facing Web3 Infrastructure

Sept. 13 - Facebook Publishes New Insights into the Ongoing Impacts of the Pandemic on SMBs

Monday, September 13, 2021

Pinterest Tests New Full-Screen, Vertical Scrolling Feed for Pin Discovery; 8 Social Media Marketing Trends and Predictions for 2022 and Beyond [Infographic]; Court Rules that Apple Must Allow

Plot Point Does Not Compute 💾

Saturday, July 2, 2022

Why bad scenes involving computers happen to good movies. Here's a version for your browser. Hunting for the end of the long tail • July 01, 2022 Today in Tedium: Exactly 26 years ago this week,

YouTube removes criticism of dangerous fractal wood burning, but leaves up tips — and Minecraft content creator Technoblade has died

Friday, July 1, 2022

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

Organization urges open source developers to dump GitHub following Copilot launch

Friday, July 1, 2022

TechCrunch Newsletter TechCrunch logo The Daily Crunch logo By Christine Hall Friday, July 01, 2022 Happy Friday, everyone! If you are sitting around this weekend, catch up on your TechCrunch podcasts

JSK Daily for Jul 1, 2022

Friday, July 1, 2022

JSK Daily for Jul 1, 2022 View this email in your browser A community curated daily e-mail of JavaScript news Angular State Management with NgRx State management is the process of managing the states

SWLW #501: Remote first async second, How to structure your product org to optimise for growth, and more.

Friday, July 1, 2022

Weekly articles & videos about people, culture and leadership: everything you need to design the org that makes the product. A weekly newsletter by Oren Ellenbogen with the best content I found

The Wonder of Turf.js

Friday, July 1, 2022

Keep up-to-date with the latest programming news Codementor Your Weekly Digest TOP POSTS FROM THIS WEEK Victor Gerard Temprano The Wonder of Turf.js Originally posted at Digital Mapmaking (https://www.

Recurring revenue growth is the key to overcoming economic headwinds

Friday, July 1, 2022

TechCrunch+ Newsletter TechCrunch+ logo TechCrunch+ Roundup logo By Walter Thompson and Ram Iyer Friday, July 01, 2022 Welcome to TechCrunch+ Friday Image Credits: tiero / Getty Images According to a

Daily Coding Problem: Problem #805 [Easy]

Friday, July 1, 2022

Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Dropbox. Spreadsheets often use this alphabetical encoding for its columns: "A

Infographic | U.S. Income Distribution Visualized as 100 Homes 💵

Friday, July 1, 2022

This visual breaks down US household income categories as 100 homes, based on the most recent data from the US Census Bureau. View Online | Subscribe Presented by: Do You Believe Data > Opinion? Get

What's New in Windows 11's 22H2 Update: Top 10 New Features

Friday, July 1, 2022

Did You Know?: Before the advent of the elevator, the highest floors of buildings were typically occupied by the poorer tenants since it was undesirable to climb so many flights of stairs and rent was