Is a VPN even worth it for that use case? A seedbox won’t cost that much more, esp. if you factor in electricity costs from keeping your machine running. And getting to 1.0 seed ratio is also much easier.
Is a VPN even worth it for that use case? A seedbox won’t cost that much more, esp. if you factor in electricity costs from keeping your machine running. And getting to 1.0 seed ratio is also much easier.
I’d recommend everyone check out https://prql-lang.org/. It’s SQL, but readable and writable in a sane way.
And no, SQL is NOT readable or writable for anything involving more than a single join.
SQL is horrible as a language to read or write. There’s a million different variants, because it lacks so many basic things. And when used in other code, you generally end up string concatinating one language in another language, with all the HORRIBLE bugs something like that brings about.
Imagine Backend People said we should just write adhoc Javascript for the frontend by concatinating the “correct” code in the backend.
Without a DSL for writing SQL, any sufficiently complex program will end up with string concatinating all over the place. Basically, writing a language with ZERO checks or highlighting or anything. That’s asking for trouble.
But coming from Java, I agree that some ORMs go way too far.
Writing a CHIP-8 Emulator was really fun. There’s a lot of resources out there and it’s really fun, small low level project you can “finish” in a week of casual coding. As someone who was mostly coding highlevel in my job, I really learned a lot.
The Prime Video example was more like moving from nano-service insanity to sanity. They basically split EVERY POSSIBLE STEP into separate lambdas. They switched to still using microservices, but they do all transcoding steps for a single video on the same microservice instance (aka sanity).
How’s the filesystem performance? Whenever I’ve mounted something into a Docker Container, the performance has suffered. For example, things like NPM/MVN suddenly take way longer.
How do you manage JVM versions? We have many older projects that use 8, and some newer ones using 17, for example.
Kubernetes is so easy! Unless you’re insane enough to have any state at all in your app. But who does that?
Ironically, I learned Rust first, and later looked at Go. I found a lot of the syntax needlessly “different”. That being said, it’s still a decent language. Point being, a lot of the weirdness subsides once you understand why it’s there.
Personally, I don’t actually care about the lifecycle and memory management stuff. What I like about Rust is:
Why learn Rust? For the same reason everyone should learn different languages. To learn new concepts and see new perspectives on old problems. It’ll make you a better developer even in your previous languages.
Compiler checked typing is strictly superior to dynamic typing. Any criticism of it is either ignorance, only applicable to older languages or a temporarily missing feature from the current languages.
Using dynamic languages is understandable for a lot of language “external” reasons, just that I really feel like there’s no good argument for it.
And that one single line that makes zero FUCKING SENSE AND YOU SPENT 5 DAYS TRYING TO FIX IT!!! That definitely needs a comment so the next idiot (aka you in 6 months) doesn’t think “what useless shit is this? Let’s delete this!”.
For bigger projects, anything with MANDATORY types is a must for me. Optional, not compiler checked hinting doesn’t cut it.
Not that i hate the language, but I do hate the tooling around it. I don’t think I’ve ever had a pleasant experience with setting up a Python project. And all the data stuff is just wrappers for code in other languages, making the packaging story even uglier, even harder.
In my experience it HEAVILY depends on the language you’re using. Nothing beats Intellij for Java or Kotlin, but Rust and Go feel at home in any editor.
I know that LSPs and DAPs somewhat take care of these, but the following are often easier in IDEs:
Yeah, well, that’s just Python for you. List usages is now an LSP feature for most languages, so will work with “lesser” editors too.
All that being said, I use Intellij with Java daily, so I can see where you’re coming from. But for example Rust or Go works wonderfully with Neovim (or VSCode).
What do you gain from that approach, compared to comments, and appropriate whitespace? If you spread out your function over three, you now potentially have triple the moving parts. You have to manage in- and output, and you have to hope noone coming after you sees your subfunction, and assumes it’s there for using.
We used to have a Python guy at my work. For a lot of LITTLE ETL stuff he created Python projects. In two projects I’ve had to fix up now, he used different tooling. Both those toolings have failed me (Poetry, Conda). I ended up using our CI/CD pipeline code to run my local stuff, because I could not get those things to work.
For comparison, it took me roughly zero seconds to start working on an old Go project.
Python was built in an era where space was expensive and it was only used for small, universal scripts. In that context, having all packages be “system-wide” made sense. All the virtual env shenanigans won’t ever fix that.
I agree, yet I also see no good universal alternative. Every language has a nice tool to do things in it’s ecosystem, but the moment you need to coordinate two languages or go beyond simple stuff, make is the only good option.
PHP the language has become pretty nice, but I recently had to work with a PHP CMS deployment, and it was an absolute pain to do. PHP frameworks seem to still exist in a world where you manually upload code to a manually configured server running apache. Dockerizing the CMS (uses Symfony) is/was an absolute pain.
I have never had a good experience with a Debian server. Every single time I had to add unstable or third party repos to get anything remotely current to run. What’s the point if you have to add unstable shit anyway?