• 1 Post
  • 36 Comments
Joined 1Y ago
cake
Cake day: Jul 05, 2023

help-circle
rss

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.


It does support it, it’s just slower than JS. WA is faster in other aspects though, so frameworks that compile to WA (like the Rust framework Leptos) still end up being faster than a lot of JS ones.


You can also copy paste by manually copying text by hand, would call that a valid alternative to Ctrl-C/V?


I don’t understand the need for Ctrl-C/V, when manually copying the text exists. I know it’s snarky, but that’s the level of difference we’re talking about here. Or imagine, to delete a line, someone Right Arrows 50 times, then backspaces 50 times, instead of using the shortcut.


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.


I want a shooter-esque game crossed with MOBA stuff. Basically, I just want Monday Night Combat, Battleborn or Gigantic to come back.


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.


Nier Automata. I really hated the replaying it part. The combat gets incredibly boring after the first two playthroughs. I also found the supposedly “deep” story to be extremely lacking, very on the nose and, like way too much japanese entertainment, bipolar when it comes to emotions.


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:

  • An enforced error type that is very convenient to use with the ? operator. No more err != nil spam, but same amount of safety
  • ADTs with a host of wonderful features, like exhaustive match statements. Go enums are horrendously basic, let’s be honest
  • NO NIL!! Non existence is expressed with an Option type that, like the error type, comes with many conveniences
  • Generics from the start, meaning you don’t have older code that throws away type safety anywhere
  • Traits/Interfaces can be implemented for foreign/external types and types can implement external interfaces (duh)
  • Great tooling, good formatting tools, good LSP, that kind of stuff. Golang has that too

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:

  • Refactorings, including really smart language specific ones
  • Support for fancy frameworks. For example, Intellij can analyse all annotations for Dependency Injection or Spring stuff, and will then tell you exactly how everything connects on a higher “framework” level. Arguably, this is a solution to a problem Enterprise Java created
  • Debugging is easier
  • In general, stuff works “well enough” out of the box. As a fan of Neovim, I’ve definitely been frustrated a lot the first time I had to set something up
  • Fancy integrations, for example linking frontend code calling backend code directly, or an entire little Database Manager builtin, with magic SQL code completion

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.


Honestly, Immortals: Fenyx Rising was superior to Breath of the Wild in every way (for me at least). The world wasn’t “stretched” in size needlessly, “shrines” integrated directly into the overworld, instead of being seperate, the collectibles were sometimes fun (compared to Koroks, which were always bad), there were far more interesting characters and side quests, the world was more alive, the combat was better (if we ignore BotWs weird physics stuff, which has fuckall to do with an action RPG), exploration had an actual point, because you might actually find something nice that doesn’t break five swings in, the story was superior, and the humor was great (to me).

TL;DR: Ubisoft cancels a sequel to their best game in some time, no suprise here.


While I understand the idea behind using CSS “correctly”, I have, in my 15 years of professional experience, never ever seen even one project where the hypothetical promises of CSS were actually realized. It ALWAYS ends up with a fuckton of importants, or hunting for ages for the one class fifteen levels of abstraction up that changes your one element, coming up with more and more absurd class names, until they are literally no different from just some random name. Tailwind might seem horrible in a theoretical sense, but in an actually using it sense it’s a heaven sent. I want to change the padding on THIS ONE SINGLE ELEMENT, I change it EXACTLY RIGHT THERE where the element is defined, and i can be absolutely sure that I haven’t accidentally cascaded someone else’s work to death.

#CSS, in practice, is the insane idea of every single element on your website sharing global, mutable state, and thinking that’s in anyway smart.


The worst thing is that it’s often just that one specific mission that has shitty checkpoints. The rest is generally fine, but then you hit that wall and you want to do PHYSICAL VIOLENCE. At least that’s been my experience.


I often find mechanics that only exist to waste time incredibly annoying. In the case of loot, a limited inventory is kind of that. You could absolutely just portal/teleport to town, sell your stuff, and then get back to playing. There’s no challenge involved, EXCEPT that it wastes your real-world time.

I liked the pets in Torchlight for this reason. You could send them off to sell loot, while you kept playing the part of the game that’s actually fun.

One exception is something like Resident Evil, where the choice is relevant to the gameplay directly. But even then, I would’ve preferred limits on individual elements (Only X weapons, only X healing items, etc.) and having extras automatically stored.


But some people play them with just a Dance pad. Doesn’t that, by your logic, mean they are too easy? Shouldn’t they be even harder? Maybe they’d be even more famous. The point is that difficulty is relative, therefore there OBJECTIVELY isn’t a correct difficulty. You’re just lucky enough to fit into their “difficulty demographic”.

But it’s moot anyway. Games with easy modes will still get played with high difficulty by people that actually enjoy it. Your own enjoyment of a game should not depend on other peoples difficulty levels.


This is one big reason why I liked Fenyx way better than Breath of the Wild. The Fenyx world is far smaller, but also more dense with actually interesting things to do. You have a horse in both, but the distances in BotW are still just pointlessly big, esp. when 90% of the things you can find are just the same two things: shrines and koroks.


I personally find the most important part of those choices isn’t the actual effect, but whether the game managed to immerse me enough so that I care.

For example, in Life is Strange, there’s a string of choices you can make that will get someone killed (or save them). The game invests enough time in the character before hand so when you come to the crossroads, the decisions FEEL very important. Do those choices have any big effects on the game? Not really. The character isn’t part of the main story line anymore after that, you only get some people referencing the difference. But if FELT important.

Think about the polar opposite: Choices that change the entire game, but you aren’t invested in. Would those be interesting choices, or would that just be 2 games in the form of one, and the choice is just a kind of “game select screen”.


Soulslikes can’t be paused and it has nothing to do with online play. Fromsoft just hates working adults.


Hey! The first half was actually really good. The second half didn’t happen.

Seriously, I remember replaying Fahrenheit like 2 or 3 times and always stopping at the halfway mark. That very first level in the diner promised soooo much, and the game never delivered.


While I don’t mind openworld games, they definitely feel off, esp. with regards to the main quest. Can’t save the world, gotta get this granny laid.

One of the only games with a open world that actually REQUIRED it for the game to make sense is Paradise Killers. It’s a detective open world game on an island. The open world makes a lot of sense, because a detective has to find their clues. It’s not a detective game if there’s a counter of “clues found” or there’s a linear progression. The game never tells you that you’re done finding clues. Like a real detective in a real open world, you have to decide whether you’ve seen enough.


Does she even need Linux? 99% of things that run on Linux will also run on MacOS (or have a MacOS version). If you need a VM, Virtualbox is good enough. I’d recommend Ubuntu, simply because that’s what most people use, ergo you’ll find tutorials/information for every little aspect of it.


As someone that unironically wants to rewrite everything in Rust, but does Java for a living, Go started off horrible, but has become OK. Especially for that sweet spot between “too big for a shell/python script”, but “not big enough to need perfect type checking/advanced tooling”, Go is decent. I recently clobbered together a CLI tool for a customer that does some custom stuff involving S3 files. I disagree with it’s biggest fans that it’s really simple. Some of the syntax seems very weird, the error handling (while better than exceptions) is still extremely tedious and weak.

Honestly, the fact that the creators thought they knew better than EVERYONE ELSE that they didn’t need generics, and argued against it FOR YEARS, just to finally add them now tells me everything I need to know about how they think of their users, and about whether they react in a timely and reasonable manner to needs of the community.


For reference, I found a tool that does what I’m looking for: https://github.com/guumaster/hostctl


How to automate local DNS entries per project?
In many projects, you might have custom DNS entries, for example for your development environment, or because something is prototype without a real DNS entry yet, or simply for convenience to not remember weird IP addresses. Currently, these special domains might be used in the configuration of a project (say, the DB server is db1.acme.local), and that's version controlled and everything, but creating the actual DNS entry (in the hosts file for example) is still manual and therefore error prone. Has anyone figured out a nice solution to this? Or do you all have super quick IT departments that'll give you real domains instantly?^^
fedilink