Hacker News new | ask | show | jobs
What it takes to build an app nowadays
8 points by the_noob 1735 days ago
I have just recently started working on an MVP. I have taken a few months learning a thing or two about the JavaScript ecosystem. Skipping to now , I am simply puzzled by how much modern app development actually revolves around the use of third party APIs .I am wondering wether I am missing something about this whole process.I often find myself having to deep dive into the docs of some API, rather than some spend this time actually learning about a new technology , which I find mildly(might switch to highly ,as the time passes) dissapointing. Is modern app development all about putting independently provided pieces together ?
3 comments

With some exceptions, essentially yes. You might want to think about this in the way that you design your app too. Exposing relevant APIs as needed.

You could always avoid that whole ecosystem and write your own from scratch. Because of how rich the ecosystem is you can do that at essentially any point. From the hardware itself up to UI frameworks. Depending on where you decide to build people may call you more or less crazy but nothing is stopping you.

The nice thing about having so much of that stuff exposed as APIs of someone else's software is that you can (theoretically) let them focus on debugging, improving, and updating their part of the software (that you happen to be using).

Meanwhile you get to focus on that thing you're an expert in or desperately need, the thing that doesn't already exist as a library, API, or App. Thats the actual valuable thing to work on. Which again, may turn out to be some random thing in the middle of the stack you think you could do better. Lots of great software was written that way!

Indeed !
This follows from long ongoing processes that aim to separate concerns, modularize, DRY, split into microservices etc, which has become even more important now that practically all computation is networked.

What you describe as an "app" is essentially just the front-end part, where the assumption is that some variation of components from a framework are sufficient to expose the essence (business logic) of the "full app" to the user.

Its possible that an application does not fit into this pattern. The richer the domain, the more unique or innovative the idea the more likely it may need its own core engine (see eg, gaming or scientific applications)

> I am simply puzzled by how much modern app development actually revolves around the use of third party APIs

A staggering amount of web development relies on third-party libraries: React, Vue, etc. etc. It's just the way things work. You can make a website without the use of external resources, but it will be a little harder if you're building something more complex (with various states, etc.)

> Is modern app development all about putting independently provided pieces together ?

I would argue yes, the majority of development is putting pieces together and getting an output. They could be third-party, part of the standard library, or something in between :)