Replies

This profile is from a federated server and may be incomplete. Browse more on the original instance.

dotstdy, to random
@dotstdy@mastodon.social avatar

It's kind of funny when people complain about things which are the direct result of something being useful for a long time. Like yeah it's complex and has a bunch of weird extensions, it's been solving (hopefully real) problems for 20 years. And guess what, if you throw all that away to build something "clean" you're still going to end up with a complete clusterfuck in N years (where N can be as low as 0, depending on how good you are at designing complex systems)

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@dotstdy I (mis)remember a Usenet story from about 20 years ago. It went something like this:

Some guys were building a product and decided that the network stack in their operating system was super hacky and unreadable, and that they could do it much better themselves. So they started implementing everything from scratch, following the spec. It was all nicely architected and quite readable.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@dotstdy Then reality sets in. This one popular switch is non-conforming with its buffer sizes, so you have to add some hacks to make it work. This one NIC just freezes when you try to send a certain packet, so you need a workaround. This one operating system did a sloppy job, so you have to replicate the bugs in other stacks that they depend on. And so on.

The end result was not only just as hacky and unreadable, but also slower than the solution they had in the first place.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@dotstdy I did write an FTP server once (https://wolf.nereid.pl/projects/dftpd/), and boy, oh boy, was it an experience.

RFC: Don't quote that thing.
Firefox: Quotes the thing.

RFC extension I did not implement: Before using a thing you have to query if it's supported.
Some client: Uses a thing without checking and fails on error.

RFC: LIST returns directory contents, format unspecified. Valid usage: LIST dir, anything else is wrong.
Every server: Formats output just as ls -l.
Some client: LIST -l dir.

castano, to random
@castano@mastodon.gamedev.place avatar

Is there a way not to burn quithub's LFS quota on github actions?
I have a repo with GBs of LFS data, and it looks like the checkout action downloads the entire thing every time it's triggered.
This is not only is extremely wasteful, but also gets expensive very quickly!

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@castano If "quithub" is not a typo, gitea is a direct self-hosted replacement. It supports LFS as well as actions.

https://about.gitea.com/

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@pervognsen @castano The cheapest you can go with GitHub is $5 per month for 50 GB of LFS storage and 50 GB of monthly transfer.

BuyVM will give you 1 TB of storage to use however you want for the same $5. The catch is that you also need a VPS from them, which is $15 for a dedicated CPU core and 4GB of RAM.

You can go cheaper with them, but then you get into CPU fair-sharing territory, and the low RAM amount doesn't play well with running actions.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@pervognsen @castano I would recommend it. There have been relatively few problems, support is quick to respond, and you can nag the owner on Discord. It's a small company, not a shitshow like OVH.

One downside is that the route I have from home to their EU site is not that great. It looks okay with trace route, but seems to be throttled on some hop in the middle.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@pervognsen @castano Actually... I'm looking at Hetzner's dedicated servers, and that might be a better option? Superior hardware that you don't have to share with anyone (even with a dedicated CPU core you still have other people (ab)using your RAM or IO bandwidth), and the price bump is very small, definitely in the same price range.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@pervognsen @castano Yes. The cheapest one are 35 eur, and they are 4 core 6700/7700 with 64 GB RAM + 500 GB SSD or 32 GB RAM + 1 TB SSD with an unlimited 1 Gbps link.

Right now I have a 2 core 8 GB BuyVM option ($30), and a 256 GB slab ($5) that is spinning rust accessed via network. For the network link, it's unlimited, guaranteed 200+ Mbps, with bursts up to 10 Gbps.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@pervognsen @castano The disk space is actually half that in a 2x RAID 1 configuration. Still very tempting.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@pervognsen @dotstdy An excerpt from BuyVM's terms of use:

3,1,1 - Clients must provide their legitimate name and surname and residential address when registering an account.
3,1,4 - Registration and Order Placement must take place from the client's residential ISP.
3,1,5 - Account details must match information provided by payment method.

I'd imagine Hetzner takes similar precautions.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@pervognsen @dotstdy In BuyVM they also manually verify your order, unless you pay in crypto (so no chargebacks) or are in good standing with them (6 months of active service).

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@pervognsen @dotstdy In my dealings with the Polish tax authorities, I was able to present English documents with my own handwritten translations of the important parts. The lady at the counter said something about notarization, but I assured her it would be fine, and it was.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@pervognsen It went without a problem for me. Create an account, hook up a credit card, and that's it. No paperwork for verification or anything.

The server I got on an auction was up and running right away. They provide a TUI installation tool that does everything for you, provided you use one of the distros they support (https://docs.hetzner.com/robot/dedicated-server/operating-systems/standard-images/). The RAID thing is optional, so you can just use the two drives you get separately.

Right now I get a 60 MB/s download from https://www.borgbase.com/.

aras, to Playdate
@aras@mastodon.gamedev.place avatar

Because no one stopped me, I ported "Everybody Wants to Crank the World" #playdate demo to PC (Windows/Mac). https://github.com/aras-p/demo-pd-cranktheworld/pull/1 :playdate: :demoscene:

Using Sokol libraries by @floooh to do most of heavy lifting.

Fun fact: while the demo is running, it takes up as much CPU time as the windows task manager on my PC.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@aras @floooh I don't think the "less CPU usage than the task manager" claim still stands ;)

wolfpld, to random
@wolfpld@mastodon.gamedev.place avatar

Why is clang taking 5 minutes to compile a relatively small C++ (168 KB) source file? Let's see...

https://github.com/ggerganov/llama.cpp/blob/917dc8cfa67a72fb7c8bf7392270da3bf4833af4/unicode-data.cpp

Ah, oh, um... That's not how you do it.

Here's 10 MB of data as source code that compiles in about 8 seconds:

https://raw.githubusercontent.com/wolfpld/tracy/8983e14e1875ea1b7de820c558f898f3ad47015a/profiler/src/profiler/TracyMicroArchitecture.cpp

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@JamesWidman Not really. There is a lot of pointer following in the tables I have, and a postprocessing step would be necessary to set everything up. The compiler hand-waves all that away, and I can just access a global table and then follow into whatever it points to.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • megavids
  • rosin
  • InstantRegret
  • mdbf
  • ngwrru68w68
  • khanakhh
  • DreamBathrooms
  • Durango
  • magazineikmin
  • thenastyranch
  • everett
  • Youngstown
  • slotface
  • kavyap
  • JUstTest
  • cisconetworking
  • anitta
  • osvaldo12
  • tacticalgear
  • tester
  • GTA5RPClips
  • cubers
  • ethstaker
  • provamag3
  • modclub
  • Leos
  • normalnudes
  • lostlight
  • All magazines