• 2 Posts
  • 455 Comments
Joined 2 years ago
cake
Cake day: August 9th, 2023

help-circle
  • Yeah, those are mostly showing off. They’re not really what I’m getting at, either. I more want to challenge people to make useful things simply.

    And yes, there are ways that JavaScript can be used to give users a faster and more streamlined experience. The web as it stands is so far past that justification. I swear there’s lots of “full stack” devs that haven’t a clue how to make a site without React.


  • I’d like full stack developers to try something. Next time you have an itch for a personal project, see if you can make it with no frontend JavaScript. Just some CSS and HTML forms. All templating handled on the backend. Just try it and see how far you get. Don’t worry if it looks like a GeoCities page.

    Then try finding places where JavaScript would make it more responsive or better UX in some way. Does the back button still work? Is it actually faster? Does it provide any benefit at all?

    Maybe it does, but just try.


  • AWS has a multitude of different offerings with confusing pricing structures. They have zero incentive to make them understandable.

    That said, chances are your new company has people who understand this already and know how to manage it. Hopefully, they’ll put up some guardrails that prevent you and others from running up a big bill. I wouldn’t expect a junior programmer to know how to do this, but that’s ok as long as the company is managed right. Granted, that can be a big if sometimes.






  • Always have to remind myself of this when managers ask me if something could be done. If it’s easy, I naturally get a little annoyed that they’re even asking. But knowing that is my job, not theirs, and it’s good that they ask. There’s lots of places where they assume and things go badly.





  • Skype won’t be supporting anything at all very soon.

    What happened with Vonage is something that could happen with any kind of instant messaging, including things like Discord.

    With everything directly addressable (not just static addresses, but directly addressable), an IM/VoIP service can simply connect to the recipient. No servers are necessary in between, only routers. That doesn’t work with NAT (CG or otherwise), so what you have to do is create a server that everyone connects into, and then that forwards messages to the endpoint. This is:

    • More expensive to operate
    • Less reliable
    • Slower
    • A point for NSA eavesdropping (which almost certainly happened)

    This is largely invisible to end users until free services get enshittified or something goes wrong.

    Yes, it’s only tangentially related to static addresses, but it’s all part of the package. This is not the Internet we should have had.

    And at least in the US (in single family homes) its crazy unlikely that your router is behind any NAT

    Your router has NAT. That’s the problem. CGNAT is another problem. My C&C: Generals issues did not have CGNAT.


  • . . . nobody at home actually runs VOIP . . .

    Plenty of people used Skype and Vonage. Both were subverted because they have to assume NAT is there.

    . . . quick game servers don’t need static . . .

    But they do work better without NAT. That’s somewhat separate from static addresses.

    My old roommate and I had tons of problems back in the day when we tried to host an Internet game of C&C: Generals behind the same NAT. I couldn’t connect to him. He couldn’t connect to me. We could connect to each other but nobody outside could. It’s a real problem that’s only been “solved” because a lot of games have moved to publisher-hosted servers. Which has its own issues with longevity.




  • No, I’m trying to get people to think. If I laid out my full opinions on this subject (compilers and interpreters aren’t that different anymore, even machine code often runs more like bytecode in many ways, “scripting” is a term that hides what’s actually going on, etc.), then people get into endless debates. My questions are designed to pick apart assumptions.

    Admittedly, people didn’t appreciate when Socrates did this shit, either.



  • Scripting languages are often considered to be very high level and can commonly run without compilation. Making them great to automate tasks or create a simplified interaction/abstraction layer to a more complex program.

    Then Python is not a scripting language.

    Programming languages usually have much lower level access, and by extension they tend to be more complicated. In exchange for that, you get much more control.

    Would you consider C to be more or less complicated than Perl?