Wednesday, July 16, 2025

I think you should stop distro hopping.

There is nothing quite like the thrill of installing a fresh new OS. Starting with a clean slate every few months can be very cathartic, but if all you do is switch distros, the only thing you get good at is installing Linux, not using Linux.

People will move heaven and earth to not upgrade Windows. Understandable since every new version of Windows is even more user hostile than the previous one. Even though it sucks, it's consistent. You can change browsers, and even the shell before windows 11 (not sure if you still can).

But there are probably hundreds of distros at this point, which one? I guess that's part of the problem is that each one has its own reason to use it. 

The best Linux is the one that's already installed. If you have a steam deck you probably won't want to install Ubuntu. While it's doable, steam OS is already optimized. 

If you have a NAS or another appliance, it's probably not going to make a lot of sense to switch. 

So let's talk about desktops and laptops. 

If you have a desktop with a keyboard, mouse, a screen and speakers, and nothing weird, you should be alright with any of them. Find one, and stick with it. 

Fine. I'll pick for you. 

Kubuntu.

The stability of Ubuntu with the familiarity that kde has to offer. Kde looks and feels like windows. If you are used to windows, use this. 

If you are coming from Mac, use plain Debian with the gnome desktop.

Then from then on, figure out how to use the OS. 

Day to day there isn't much difference between gnome on Debian and gnome on fedora. You have the same apps, same command line tools, the same kernels. The major difference is how you get your software and even this is getting easier. 

Flatpak saves the day in a huge way if you are mostly comfortable in the GUI. For apps you don't need to use sudo with, it's great. 

If you have a laptop... Things get messier. 

If you have an AMD based machine you are probably just fine. AMD has had open drivers for a long time and either distro listed above should work just fine. 

If you have an Intel based machine, life is also pretty good. Again, mostly open drivers ecosystem. 

If you have a laptop with a discreet GPU, specifically an nvdia one, be prepared to suffer greatly. This has just been my experience with any dgpu laptop. Windows, Linux, or something else. 

It's too hands on to be a good experience. Having to juggle which app runs on which GPU, and which power settings do you need to use in which scenario is always painful.

What's even worse is actually trying to game on these. Enjoy constant stuttering from the power starved GPU. Enjoy horrible frame pacing. Maybe if you set everything to full throttle you won't have frame skips from dynamic power adjustment. But good luck hearing anything over the fans.

So, kubuntu, or Debian, but preferably whatever ships on your device. 




Saturday, January 10, 2015

Building an arcade machine - part 1 - planning

So I've decided to make my own arcade machine. It's going to be a little different than most MAME and emulator setups out there. Unlike most table tops, this one is going to be a head to head machine. I am going to take the output from the computer and run it through a VGA splitter. That way both players will see the same output, just sitting across from each other instead of side by side.

I need to wait for some more hardware to arrive before I can really begin to plan it out, but here is a preliminary basic design.

My big concern is that with this configuration, it's over 40" long. Granted, arcade machines are not small devices, but it would be nice to have something that can actually sit on the counter and be moved without me worrying about it falling apart.

Another concern is that because it's so narrow, it will have to have a substantial base to sit on such as a kitchen counter or a table.

I'm thinking that I want to use pine for this project because it's very light, strong, and easy to work. I know next to nothing about wood working, but now is a great time to learn.

The above is just the skeleton.  The side panels will actually be stylized. I want to make them sort of match up with the Atari logo.






Which I would like to get as a decal.

I have ordered the monitors, off lease, from ebay. They are two dell 2001fps. They are 20 inches with a 4:3 ratio and 1600x1200 maximum resolution. This should be the next best thing to using an actual CRT.




And finally, the last component, which I already own, is the mayflash universal fight stick.


I'll be honest, it's not a great device. The stick isn't tight and the buttons are mushy, but it works with everything and the base is solid metal. Also, I got them both for a great deal. Further down the line, if I see benefit to it, I should easily be able to change out for an ipac or something similar.

Monday, November 24, 2014

voidskimmer 2014 11 24


Doing some interesting and complicated things with a rendertarget2d.

Sunday, November 23, 2014

Planning development for voidskimmer.

So I have written two demos for void skimmer. One that demonstrates ship movement, and one that demonstrates the parallax effect by projecting the game field onto a cylinder. Now it's time to actually sit down and write the game.

Up until now I've been able to get away with using scalars or simple objects, but I want to be easily able to scale the game into something larger. I don't want to write my own engine, but I need to find a way to make certain things extensible.




I think that with the game I am working on, it would be nearly impossible to develop as an MVC style application. The coupling is simply to tight.

So let's take a look at the game objects to get a better idea of what design pattern to use.

So far, we have a playfield and a space ship.

A play field has dimensions, a background image, physics, gravity, objects, etc.

A space ship is an object, it has a position, velocity, and a heading, it has a sprite, fuel, health, etc.

Now here is an interesting question. Is a play-field a level, or does a level merely populate a level? What conditions cause you to change levels? How do you manipulate the space ship object?

How are objects drawn? Do space ships draw themselves? Does the play-field draw the space ship? Does the game object draw all the game elements?

Is a game object just a game object, and the play-field does all the controlling, or will a space ship object inherit from a base game object?

There are two things I want to avoid in designing this game. Over abstraction, and over complication. I don't have an existing code base to work off of, and no team mates to code it with me, so having large complicated objects just slows things down.

Saturday, November 22, 2014

voidskimmer 2014 11 22



This game is very much me cobbling together pieces as I can find time to. Today I got a very basic carousel working that the actual game will be projected on. The next video should hopefully combine the two concepts.

Sunday, November 16, 2014

Void Skimmer update

Just another update on the progress of my tiny game that I'm working on.


It's coming along pretty nicely. One thing I would like to do is have a repeating background instead of just clamping the edges. If you were on the bottom of the play area shooting down, and somebody was on the top of the play area, the person on top would get obliterated hands down, because they wouldn't see the enemy or the shots coming. I think this is what I will work on adding next.

I may need to switch how I am doing the drawing though. Right now I am drawing everything twice. I am drawing the ship, the background, and all the active game objects to a reserve render target. This gives me resolution independence and the ability to do some post effects on the game screen. Sepia when paused, shake the screen when a player dies, scale the camera to encompass two players, etc.

But the problem is when things go outside the play area. The default behavior is to clamp, but I need it to repeat. 

The next thing I would like to work on is adding black hole gravity wells for your ship to encounter.

Saturday, November 15, 2014

Void Skimmer Video 1



A small demo of just some simple movement mechanics that I've been working on, and getting familiar with Monogame.

It's a great library, and I'll definitely write some more about it when I have more to say about it :p