<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>programming on hexbloom</title><link>https://hexbloom.github.io/blog/programming/</link><description>Recent content in programming on hexbloom</description><generator>Hugo</generator><language>en-US</language><copyright>© 2023-2024 hexbloom</copyright><lastBuildDate>Sun, 14 Apr 2024 00:00:00 +0000</lastBuildDate><atom:link href="https://hexbloom.github.io/blog/programming/index.xml" rel="self" type="application/rss+xml"/><item><title>on programming languages</title><link>https://hexbloom.github.io/on-programming-languages/</link><pubDate>Sun, 14 Apr 2024 00:00:00 +0000</pubDate><guid>https://hexbloom.github.io/on-programming-languages/</guid><description>There&amp;rsquo;s a short list of topics that are guaranteed to generate hot takes in your typical programming roundtable:
Tabs vs spaces Braces on new line or same line (new!) Memory safety For this post, I&amp;rsquo;d like to discuss another one of these topics:
programming languages. Perhaps it&amp;rsquo;s a surprise that we haven&amp;rsquo;t converged on a single programming language to rule them all. Even when you narrow down to a subdomain, like web development, systems programming, or games, you&amp;rsquo;ll still find a diverse set of options to choose from.</description></item><item><title>the burden of choice</title><link>https://hexbloom.github.io/the-burden-of-choice/</link><pubDate>Wed, 27 Mar 2024 00:00:00 +0000</pubDate><guid>https://hexbloom.github.io/the-burden-of-choice/</guid><description>I&amp;rsquo;ve been programming for the Playdate lately. The marketing pitch is intoxicating:
The device has a sleek, minimal design reminiscent of the GameBoy. Games made by indie darlings like Keita Takahashi headline the &amp;ldquo;Season&amp;rdquo; of games included with the system. There is a vibrant developer community and a freely available SDK. But above anything else, I was most intrigued by the constraints that come with developing for such a limited device.</description></item><item><title>side project energy</title><link>https://hexbloom.github.io/side-project-energy/</link><pubDate>Sat, 10 Feb 2024 00:00:00 +0000</pubDate><guid>https://hexbloom.github.io/side-project-energy/</guid><description>This topic came up in a thread and I wanted to write about it because I have opinions:
Overall, I don&amp;rsquo;t really love spending my side project energy on figuring out how to cram a game&amp;rsquo;s data model into to a game engine&amp;rsquo;s mix of scene graph/component/node stuff.
what kind of side project are you making? A side project is a project that you spend time on outside of normal working hours.</description></item><item><title>godot first impressions</title><link>https://hexbloom.github.io/godot-first-impressions/</link><pubDate>Sun, 29 Oct 2023 00:00:00 +0000</pubDate><guid>https://hexbloom.github.io/godot-first-impressions/</guid><description>I&amp;rsquo;ve decided to try out the Godot game engine.
While Unreal remains dominant in the AAA scene, not all developers are looking for engines with such high-end features. Unity has long been the frontrunner for 2D games and games that ship for mobile or the web. Following Unity&amp;rsquo;s recent missteps, Godot has a golden opportunity to challenge Unity in this space.
The best way to learn a new tool is by making something, so I made a clone of the SNES version of Tetris.</description></item><item><title>decouple game from engine</title><link>https://hexbloom.github.io/decouple-game-from-engine/</link><pubDate>Wed, 25 Oct 2023 00:00:00 +0000</pubDate><guid>https://hexbloom.github.io/decouple-game-from-engine/</guid><description>Good design is easier to change than bad design.
This time-honored programming adage is especially pertinent to the development of video games, where &amp;ldquo;finding the fun&amp;rdquo; constantly changes the requirements of the code.
One technical decision that is difficult to change is the choice of game engine. When you use Unity, you couple your code to MonoBehaviors. When you use Unreal, you are tied to Actors. To change the engine would effectively call for rewriting the entire game.</description></item></channel></rss>