☀️ Should you really Shine?


👋 Hi!

Today’s the final step in my How the Web Works series!

We started by exploring what HTML, CSS, and JavaScript are. Then we saw how to use these tools to create interactive graphs, even when working with R or Python. Finally, I showed how to host your work on GitHub Pages, turning it into a free mini-website. 🔥

Today, I want to tackle a tricky but crucial concept:

⚡️ Static vs Dynamic websites

A static website is like the one we built last week.

You write a simple HTML file (manually, or using a tool like Quarto or Jupyter (Quarto is so much better, by the way)). Then you host it somewhere like GitHub and get a public URL.

1M ppl can access it in the same time using their browser. It's free. Like this report the students of my Productive R Workflow project learn to build.

It’s called static because it just delivers a file. There’s no logic, no computation by a server. Just content.

But sometimes you need to go further.

💪 Dynamic = Powerful

A dynamic website can perform tasks on the server that initially provided the HTML file.

It allows to handle things like:

  • Letting users upload data, choose parameters, and run a linear regression with R.
  • Allowing people to log in and interact with a database.

All of that requires logic. It requires a server.

That’s what makes a site dynamic.

🔧 Dynamic = Complicated

But with great power comes... overhead:

💸 Cost — You’ll have to pay for server hosting.

🔧 Maintenance — Servers need updates, monitoring, backups.

📈 Scaling — If traffic spikes, you need more resources—and more money.

🐌 Performance issues — Communication between your computer and a server takes time!

🤔 Make the Right Call

This is an important conversation, especially for the R and Python communities.

Tools like Shiny and Streamlit are super popular & powerful. I’ve used Shiny a lot and it’s actually what nudged me toward becoming a web engineer.

But I also see it used for the wrong reasons.

  • Just want a few interactive plots based on one dataset? Use Quarto with Quarto Dashboard.
  • Want to show a graph for group A, B, or C? Use tabs in Quarto as shown. below.
  • Want to toggle a chart fullscreen? Quarto can handle that too.

The list goes on.

You’d be surprised by what you can do without adding server-side logic.

Check out my list of Quarto Tips & Tricks to see what's possible!

Conclusion

The distinction between static and dynamic websites might seem subtle, but it’s fundamental if you're into data visualization.

Sooner or later, you’ll want to build a little app to explore data. When that day comes, ask yourself:

Does this really need a dynamic server?

If not, Quarto might save you time, money, and headaches.

I’ve been paying €20/month for years because I made the wrong call. Don’t repeat my mistake.

That’s it for the web series! Next week, we’re back to full-on dataviz content 😄

Yan

PS: this post is even more true now that Pyodide and WebR exist. If you do not know what it is, hit reply and I'll write about it!

PPS: interested in how to use Quarto properly and create stunning online report for your data analysis? Check my productive R workflow project! So many students told me it transformed their every day life at work.

Yan Holtz

Find me on X, LinkedIn, or check my Homepage

👋 By the way, here is how I can help!

  • Master R: Join my productive R workflow online course, already helping hundreds to excel in R, Quarto, and GitHub.
  • Team Training: Hire me to train your team on Data Visualization and Programming.
  • Engaging Talks: Book me for short, impactful talks on Data Visualization and Programming.

Check yan-holtz.com or hit reply any time! I love hearing from you.

https://preview.convertkit-mail2.com/unsubscribe
Unsubscribe · Preferences

background

Subscribe to Dataviz Universe