I thought I would just share that I love the PICO-8, and the idea of fantasy consoles in general.
If you are not familiar with the idea, a fantasy console is a piece of software that emulates a fake computer. Unlike a virtual machine or other type of hardware emulator, a fantasy console is not trying to mimic a real-life piece of hardware. Instead, it's emulating a fake device that is governed by the creator's vision of, “artful restriction,” (my words). One might consider it the software expression that limitation breeds creativity.
In the case of the PICO-8, the fantasy console is an 8-bit machine similar to a VIC-20, or maybe even a Game Boy Color. It has restrictions in allowed program size, the number of available (16!), the memory size, and even the screen resolution (128x128!). All of these limitations are intentionally made in the spirit of forcing creators to focus on creating, and less on trying to push the boundaries of modern technology.
The PICO-8 comes bundled with its own community and publishing platform in the form of SPLORE. Through the SPLORE built-in application, you can download games made by other developers directly into your fantasy console. It is this built-in community that makes me more attracted to PICO-8 as a development ecosystem compared to other real-life restricted consoles like the Arduboy or ODROID-GO. Sampling games on both of those hardware platforms is an exercise in patience, even for the more technically inclined, and it completely eliminates that feeling of serendipity I get when I am browsing SPLORE and find a game that just transports for, if even for 10 minutes.
The last part of the PICO-8 experience that sets it apart is its built in developer tools. It comes with its own code editor, sprite editor and even a music editor. It's a one-stop shop for all things PICO-8 development, and the tools aren't that half bad. Sure, you could use Aseprite or a more powerful code editor, but there I feel it's more immersive to work in the console itself. Just... get used to the font...
I am thinking to try out doing some PICO-8 game reviews here, once I find out the best way to get it into the site.
For some reason, I cannot find a straightforward call sequence for when your POST a form in Django. I currently am stuck with a form that is failing. I suspect it has something to do with the half-implemented MultiSelect Custom Widget I am trying to implement, but without knowing the sequence of methods it is hard for me to know where to begin debugging.
A bit of context: this sequence will be based on using a CreateView subclass. It is routed from urls.py via a CreateView.as_view() call. With that in mind, here we go.
Django Form POST call sequence:
1. CreateView.init()
1. CreateView.getformkwargs()
1. Form.init()
1. Form.isvalid()
1. Form.clean()
1. CreateView.getcontext_data()
After the last call to getcontextdata() it routes back to the Form and calls my overridden subwidget method (due to a “bug” Django 3+) for my multiselect custom widget.
For posterity's sake, I have also performed a quick check against the GET sequence.
Django Form GET call sequence:
1. CreateView.init()
1. CreateView.getcontextdata()
1. CreateView.getformkwargs()
1. Form.init()
1. MultiWidget. subwidgets()
1. MultiWidget.decompress()
Now, the current issue I am having is because I am unsure how my custom widget's decompress is mapping the bound model to the HTML select option. Subsequently, I am unsure how the POST command is actually re-binding to model for saving when calling the form.savem2m() method.
I got my first ever, “First you will need Google Chrome and install XXX Chrome Extension,” message from a webapp today. I know it's been coming, heck, even the company I work for, “prefers Chrome,” and, “Develops on Chrome,” but as an avid Firefox user since 2004, it makes me a bit sad. Especially since modern day Firefox is just awesome. Heck, to show my support I even use Mozilla VPN.
I know people have strong opinions about Mozilla: their cozy relationship with Google search revenue; their non-browser-related initiatives; their abandonment of non-browser productivity tools like Thunderbird; their acquisition of seemingly-frivolous tools like Pocket... I get it.
Calling someone a, “muppet,” may be one of my favorite pieces of slang to come out of the UK (or, at least I mostly here people from the UK using it, so I assume that is the original source of the phrase).
Recently, there seems to have been a debate in the USA, which I have only experienced from afar, about whether or not there should be some sort of mechanism for validating someone has been vaccinated against COVID or not.
Americans from the US (not to be confused with Americans from other parts of the massive continents of both North and South America), are acting like muppets. Firstly, Americans already face several exclusionary policies based on vaccinations for public schools, private schools, camps. Secondly, the World Health Organization already has a, “vaccine passport,” (source: https://www.who.int/ihr/ports_airports/icvp/en/_ that is already required for several forms of travel. I personally have had to use this vaccine certification in the past.
On this page alone, we get an amazing list:
* Hepatitis A
* Hepatitis B
* Influenza
* Influenza type b (Hib)
* Measles
* Meningococcal
* Mumps
* Pneumococcal
* Pertussis
* Polio
* Rotavirus
* Rubella
* Tetanus and diphtheria toxoids
* Varicella
This has been an adventure. I have not blogged in quite a while, and I've decided to hit the ground running by hosting everything myself. I don't really have any grand intentions on this blog, except that I find myself wanting to shout into the, “void,” while still being such an extrovert that I need some hope that someone may pass through the void and pick up on what I say.
That being said, I will remain as anonymous as can be, because in this day and age, it's just not feasible to publicly and freely express oneself without unintended consequences. Be it doxxing, internet mob attacks, cancellation, or whatever the mode of shame may be on that day. It's a sad state of affairs, but I guess that is what happens when there is too much access to information, and not enough trust and education to synthesize that information and one's own emotions.
Even this little diatribe of mine is not quite how I would want to start some type of publicly acknowledged blog, but since this will not be publicly acknowledged, I feel more able to express myself as is.
This is also just acting as a test of all of the bits and pieces I had to put together to get this blog up and running. Let's see if it works.