Rent Based Transitory Ownership - A Blueprint For Just Rent
As income inequality increases, one mechanism for the movement of wealth from the general population to an increasingly insular property-owning class is through rent of residential property. While it cannot be said that landlords do not have some responsibilities to their tenants in most countries, the power relationship between landlord and tenant remains unbalanced. It is solely the landlord who decides if a lease should remain or expire, regardless of how many years the tenant has spent in the home. The tenants labor in maintaining and protecting the home is unrewarded, and we must rely on punitive incentives such as bonds to encourage responsible tenancy.
Many Marxists espouse the necessity of eliminating this form of rent-seeking private property, but few propose tangible ideas that could replace them beyond vague statements about government-run allocation programs. We reject this as being excessively rooted in bureaucracy, inefficient in allocation and overly centralised. Land allocation is fundamentally unsuitable to central control, due to its heterogeneous properties. Simply put, every piece of land is distinct from every other, and so determining the real value requires an enormous amount of information. A centralized system simply cannot compete with an emergent market in terms of this ability to gather large amounts of contextual information.
Hurtworld - An Open-World Surival Game for PC
Between 2014 to 2018, I worked at an independent games studio called Bankroll as a programmer and game designer. The studio was only between 3 and 5 people in size over the course of the 4 years. We created the open-world multiplayer survival game Hurtworld.
This game ran on PC, Mac and Linux and was built with the Unity engine. My role here touched most aspects of design and programming, such as networking, UI design, tools creation, and the creation of multiple complex runtime systems. There were lots of interesting problems to solve - from building a realtime icon-rendering system that could render dynamically generated items into an inventory system, to environmental systems that emulated dynamic weather and time of day, to shaders and graphics. It was a heck of an experience!
Ethereum Is Going To Eat Silicon Valley Alive. Here’s Why
Many of the current dominators of technological business perform the same task. They serve as a trusted third party in a marketplace of providers and consumers. The trusted company enforces rules in the community, like how Facebook bans accounts that act outside the terms of service. Usually the same company that enforces the rules owns the service. They act as a trusted arbiter for disputes within the market. Usually, to help everything run smoothly, they provide a reputation system for both consumer and producer that enforces a level of good behaviour.
We can see at a glance how many Silicon Valley heavy-hitters act this way:
Mad Maps - A Non-Destructive Terrain Pipeline for Unity
Mad Maps was a set of tools I built in my time at Bankroll Studios in the period of 2017-2018 and then went on to sell on the Unity Asset Store as a standalone product.
Unfortunately, the IP for these tools is not in my control and so the asset fell out of maintainence, but I'm proud of this work. It helped enormously in the construction of the massive open worlds within Hurtworld, and while it was maintained I think it helped some people use the Unity terrain system a lot better. Here's the original pitch and Youtube tutorials!
An Intersection Test for Arbitrary Rectangular Prisms
Have you ever had two arbitrarily rotated and sized rectangular prisms, and wanted to check if they’re intersecting? I know I have! Just an old AABB won’t do the trick, as very snug fitting rectangular prisms need to be detected and dismissed. There are some dastardly configurations (for instance, imagine a very very small rectangular prism sitting just above the surface of a massive and highly skewed rectangular prism) which also need to be sussed out.
It turned out to be a surprisingly tricky problem, and I had to pull a lot of different things from a lot different places together to get it working.