spoiler

made you look

  • 0 Posts
  • 115 Comments
Joined 1 year ago
cake
Cake day: July 27th, 2024

help-circle



  • Odd, the 100/40 plan was the original speed tier, but the NBN got rid of it a while back and everybody should have been moved to 100/20. The NBN then re-introduced it of course, but it’s relegated to “business” users, so it’s behind the “Pro” selector with Aussie.

    We’re writing to let you know that, unfortunately, from your billing cycle in November 2020, we will need to migrate you from your current plan NBN 100Mbps/40Mbps Unlimited ($99.00) to NBN 100Mbps/20Mbps Unlimited ($99.00) for the same cost of $99.00

    Whilst it is an upload decrease, the price will remain the same and your download speed will also remain the same.

    It goes without saying that we did not want to do this, but due to increased costs and the current NBN wholesale pricing model we have been forced to choose between congestion or higher prices. For a more in-depth look into the reasons why we were forced into this decision, click here.

    In the spirit of ‘No Bullsh*t’, we are actually losing money on a lot of our legacy plans such as yours. As a smaller provider, we can’t offer plans that are below cost price. Given the COVID situation, however, we’ve waited as long as we could to give everyone full advantage of our old pricing.

    We hope you choose to stay with us – if you do, your plan will change automatically from your November bill, and you don’t need to do anything else. If you’d prefer to browse all the plans available to you, sign in to the MyAussie app or have a look at the website.

    If you wish to stay on the 100/40 plan, for an additional $10 per month, you can select it within MyAussie or by calling our support team on 1300 880 905 at any time.

    That’s the email I got about it back in 2020


  • Yep, their frontend used a shared caller that would return the parsed JSON response if the request was successful, and error otherwise. And then the code that called it would use the returned object directly.

    So I assume that most of the backend did actually surface error codes via the HTTP layer, it was just this one endpoint that didn’t (Which then broke the client side code when it tried to access non-existent properties of the response object), because otherwise basic testing would have caught it.

    That’s also another reason to use the HTTP codes, by storing the error in the response body you now need extra code between the function doing the API call and the function handling a successful result, to examine the body to see if there was actually an error, all based on an ad-hoc per-endpoint format.


  • Ehh, that really feel like “But other people do it wrong too” to me, half the 4xx error codes are application layer errors for example (404 ain’t a transport layer error, neither is 403, 415, 422 or 451)

    It also complicates actually processing the request as you’ve got to duplicate error handling between “request failed” and “request succeeded but actually failed”. My local cinema actually hits that error where their web frontend expects the backend to return errors, but the backend lies and says everything was successful, and then certain things break in the UI.


  • Well no, the HTTP error codes are about the entire request, not just whether or not the actual header part was received and processed right.

    Like HTTP 403, HTTP only has a basic form of authentication built in, anything else needs the server to handle it externally (e.g. via session cookies). It wouldn’t make sense to send “HTTP 200” in response to trying to access a resource without being logged in just because the request was well formed.




  • So it’s an “open standard”, not in the sense that anybody can contribute to the development, but in the sense that the details of the standard are open and you can learn about them.

    The format itself is an XML version of the existing Office document formats, and they grew organically over decades with random bugs, features, and bug compatibilities with other programs. e.g. There will be a random flag on an object that makes no sense but is necessary for interoperating with some Lotus 1-2-3 files that a company had, who then worked with Microsoft to support back it in the 90s. Things you can’t change, nobody really cares about, but get written down because the software already implements it (and will emit sometimes)








  • It was an issue for a long time that browsers just ignored the caching headers on content delivered over HTTPS, a baked in assumption that they must be private individual content. That’s not the case now, so sites have to specifically mark those pages as uncachable (I think Steam got hit by something like this not that long ago, a proxy was serving up other peoples user pages it had cached).

    But for something like Google Fonts, the whole point of it was that a site could embed a large font family, and then every other visited site that also used it would simply share the first cached copy. Saving the bandwidth and amortizing the initial cost over the shared domains. Except now that no longer holds, instead of dividing the resources by the amount of sites using it, it’s multiplying it. So while a CDN might put the contents physical closer to the users, it doesn’t actually save any bandwidth (and depending on how it’s configured, it can actually slow page loads down)