Dricenak.com

Innovation right here

Technology

My controversial opinion on Jupyter

It has become common for Python courses to use Jupyter for their coding exercises…

But they have a big problem.

Let’s go back. What are notebooks good for?

A couple things. But mainly, a laptop is an interface. It is a way to operate or control the software, not by clicking buttons or typing in text boxes. But writing sets of Python statements.

And he’s GREAT at this. Magnificent.

You write code that imports Pandas or Keras or PyTorch or Matplotlib or whatever…

It then uses these libraries to get what it needs. Split your code into different cells, rely on its built-in visualization tools, etc.

Great for fields like data science, where an exploration phase is rarely optional. Once you’ve moved to Jupyter, you won’t be able to live without it.

It also works: Jupyter rawks for people just learning to code.

The immediate feedback on what works, what doesn’t… The elegant interface… The ease of viewing… The layout of the different cells…

For someone learning hello world, and way beyond that, it’s great.

Objective:

The laptop’s interface puts a real ceiling on complexity on what you can create. Would you develop a library like Pandas or Tensorflow in a notebook?

Of course not. The fact is that most important software is developed OUTSIDE of a laptop. In regular programs, which are in version control and have extensive unit tests.

Once upon a time, there was no such thing as a DataFrame. Someone INVENTED it.

And while it wasn’t first invented in Python, eventually the creators of Pandas created a Python class called “DataFrame”. That you import into a cell in your notebook and can use to do remarkable things.

And the crucial part:

That DataFrame class, and indeed all Pandas, were NOT created inside a notebook. It was created using standard software development practices outside of the laptop environment. And now, millions of people use it all over the world.

THAT is the kind of software I want you to write. To EXCEL in writing. Be prolific and powerful in writing.

Because it’s those “building blocks” that programmers less than you will import into their Jupyter notebooks. Building on what you wrote, and maybe doing great things with it…

But never being able to create that foundation on your own.

Is this elitist? Talk about being in a different league than other “landlord” developers? To have this higher ambition for your career, for your life?

If it is… so be it. Because learning the skills of the top 1% of Python developers is a goal worth achieving.

LEAVE A RESPONSE

Your email address will not be published. Required fields are marked *