Author archives: Mike

RSS feed of Mike

Potions with Custom Effects

In Pycraft, I figured out the Potions-with-custom-effects, the problem being that Bukkit's PotionEffectType doesn't actually implement the keyed interface, but instead has its own .values() call, so needs a whole special handler. The code for creating potion with custom effects looks like:


await potion_of(
'night_vision',
"Gopher's Gruel",
{
'type': 'fast_digging',
'duration': 20 * 60 * ...

Continue reading

Finally Got Potions (ItemMeta) and Signs (BlockState) working

So one of the long-standing requests from the boys has been that we have the ability to create potions from Pycraft's in-game REPL. Today I finally got that working, mostly because I finally decided that there was room for a reference pattern to make the whole thing easier.

By way of background, Pycraft was previously ...

Continue reading

Creating some Pycraft Videos

Pycraft has remained relatively obscure. It lets you write (very close to) Python code in the minecraft chat window to perform magic that's written in Python code on the backend. I thought maybe a few demos showing what you can do with the code might serve to interest a few others in playing with it. ...

Continue reading

Python Version Support Ideas

As a general rule, I don't like to just stop supporting Python releases just for the sake of deprecation. I try to be relatively wide in the set of Python's I'll support for my libraries, with my current general rule being 2.7, 3.6+ .

Why those? Well, 2.7 is still on RHEL/Centos for another year ...

Continue reading

Cleaning up the PyOpenGL Demos

Spent a bit of my second-last-day-of-vacation cleaning up the PyOpenGL Demos so that they run with current Python 3.10, PyOpenGL, numpy and PIL and can be installed as a package rather than only being usable via a git checkout.

There were a few bits of bit-rot, mostly around ctypes no longer allowing you to raise ...

Continue reading

What's with the bot fodder on planet python?

It seems that someone has created a script to generate posts of the form "ModuleNotFoundError..." with a generic "so install the package" article body. I can only imagine this is to get Google ranking. But why is it on planet python? It's a hell of a lot of spam when almost everyone following planet python ...

Continue reading

Go Lang Impressions after 2 Months

So for work I've needed to learn GoLang, which I'd always before picked up, kicked the tires and said "meh" on. A few months now of working with it pretty-much-daily have upped the "meh" quite a bit. To be clear, I'd choose Go over raw C, but I'd likely pick modern C++ over Go.

Channels ...

Continue reading

Social Cost of Carbon and Ethics

It is unreasonably frustrating to me that discussions of the Social Cost of Carbon by Economists are seemingly using models that read like a Libertarian's Fancy Footwork to Excuse Desired Behaviour. Basically, by deciding that we value the lives of our children and children's children less than our own comfort, we can deprecate the loss-in-value ...

Continue reading

Django Field Rename Migrations and Test Cases

Is there some trick to running Django test cases when you've got a RenameField later in the migration-stack? I feel like this has to be some obvious thing I'm missing...

With a migration (say 0058_big_restructure.py) which does this:


migrations.RenameField(
model_name='rfsource',
old_name='source_name',
new_name='follow_source_name',
),

and a previous migration, (say 0006_long_ago_change_that_populates_some_other_field.py) which doesn't explicitly reference the source_name ...

Continue reading