"Buy Me A Coffee"

  • 0 Posts
  • 2 Comments
Joined 2 years ago
cake
Cake day: June 13th, 2023

help-circle
  • How many corporate man hours are wasted re-inventing the wheel a bajillion times? Wouldn’t

    Honestly, very little. Unless you’re in a “not designed here” environment. There’s a lot of open source applications/libraries out there that can be added to your project to get what you need.

    But I do agree, vibe coding can be great as long as it’s just for one off small projects. Need to do a quick computation or a quick POC and don’t want to spend the time setting everything up? Great!

    But if you want to build an application that’s used by 1000 or even millions and receives regular updates? Please follow best practices / design patterns, etc… otherwise you’ll be rewiring the entire codebase every time you want to add a new feature.


  • More technically there’s two ways to move data between two separate services. You can either pull or push the data.

    Assume for both scenarios that the client is your phone and the server is some machine in the cloud.

    With pulls the client calls an API and the server returns a response. Generally the www works this way. You ask a server for a wab page and you effectively pull the source down to your browser.

    Pushes work the opposite, in that a server has data for the client and needs to push or otherwise give it to you. Pulls are relatively strait forward because every server has a well known name (the domain name and url). But your phone’s IP address changes constantly. So how does a server know how to contact your device? There’s generally two ways:

    1. Your device can poll (make repeated pulls to a server checking for new data)
    2. Or you can register some identifier and your IP address with some central server every time it changes. And then the server can essentially call a URL on your device directly. This is essentially what Google and Apple are doing as it doesn’t waste CPU resources and your battery.

    You could in theory implement either of these yourself but because of the way the OSes work on both Android and iOS there’s no guarantee that you can keep a process running in the background forever. As the OS can kill your process if the OS needs more free ram, etc … The built in notification APIs are exempt from this because they are part of the OS.