Is Designing Data-Intensive Applications the Right Book for Learning Hosting, APIs, and Updates?

0
0
Asked By MellowPine47 On

I recently decided that I want to build a complete project instead of only running code locally, but I'm unsure where to begin with deployment and communication between the app and server. Specifically, I want to learn how to host the project, create API endpoints so the client can communicate with the server, and release updates when I change the program—similar to how mobile apps notify users that a new version is available. Would Designing Data-Intensive Applications help me learn these practical skills, or should I start with other technologies and resources first?

3 Answers

Answered By CloudyHarbor8 On

Designing Data-Intensive Applications is a valuable book, but it focuses on the theory and trade-offs behind databases, distributed systems, scalability, consistency, and reliability. It is not really a beginner guide to hosting an app, creating endpoints, or publishing updates. For this project, start with one programming language and a web framework such as Flask, Django, or Spring Boot. Follow a small tutorial that builds an API, run it locally, and then deploy it to a simple cloud service. You’ll learn the practical pieces much faster by building something small and improving it gradually.

MellowPine47 -

That makes sense. I was mainly looking for a foundation before making mistakes, but I’ll start with a smaller project and learn the deployment parts as I go.

Answered By BrightOak22 On

Those are mostly foundational development and deployment topics, so DDIA is probably too advanced for your current questions. First learn how a client sends HTTP requests to a server, how routes map to endpoint functions, how data is stored, and how authentication works. Then practice running the server on your own computer before deploying it. Once that works, learn about domains, environment variables, logs, and basic cloud hosting. Updates are usually handled by deploying a new server version, while mobile applications may require building and distributing a new client version.

Answered By RiverQuartz61 On

You don’t need to understand everything before starting. Build a tiny application with one or two endpoints, test it locally, and put it online using a beginner-friendly hosting platform. After that, make a change and redeploy it so you can see how updates work. Topics like graceful shutdowns, rolling deployments, and minimizing downtime become much easier to understand when you have a real project to experiment with. DDIA will be more useful later, once you already understand the basic application-and-server workflow.

Related Questions

LEAVE A REPLY

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.