jack: (Default)
History

As a teenager I never drank tea or coffee. I must have tried them at some point, but never felt the desire.

At university I started drinking both. I can't remember exactly, I remember having them as a ritual something to do when hanging out with friends. IIRC I drank instant coffee, and real coffee tasted too bitter.

And I think I reached a point where I needed coffee and got dopey and too tired to get up without it, either at university, or after I started working. Unrelated to the caffeine (I assume?) I also had student-y programmer-y sleep patterns, always wanting to sleep a bit later. I don't know how much that was inbuilt physiology and how much it was putting things off, including going to bed and doing things in the morning.

At some point, I started drinking real coffee for preference, and instant coffee tasted bad.

When I started dating Liv, I drank a lot more tea, because we'd usually make a pot together. And I started to feel like coffee was too abrupt, and tea gave a slightly slower caffeine release, and gradually switched to drinking tea almost entirely: I'd happily drink coffee if it was served somewhere, but didn't usually drink it at home or at work.

When I started dating ghoti, I started drinking coffee again, because she drank coffee more often and I liked companionably drinking the same thing. I started with mostly instant coffee, and to date, still mostly drink instant coffee, although I also like real coffee when I have it.

Now I tend to switch, drinking instant coffee at home (because it's quicker), tea at work (because I want a break from the screen to faff around in the kitchen for 10 min), and whichever I feel like if I drink something out.

I never really learned to like espresso based coffee, espressos taste much too strong, and all the mixed drinks taste weird. I used to like mochas occasionally. I usually like plain black tea with milk, or plain coffee, with milk.

Except when I'm abroad, I generally drink whatever's common locally if I'm ok with it at all.

I don't track how much I drink. It's probably quite a lot, because I drink it whenever I feel like, not at fixed times. But I used to feel like it was doing something weird, when I'd be completely wrecked when I *didn't* have caffeine, whereas now, I definitely need some, but if I get a drink within an hour or so of getting up, I don't feel completely zombified until then.

So I used to toy with the idea it'd be healthier to give up (ie. awakeness juice was just borrowing future awakeness and immediate gains were offset in future losses). But now it feels like, the status quo is doing ok.

ADHD

A couple of people have commented that they have ADHD or suspect they possibly have subclinical ADHD or something related, specifically that mild stimulants make them feel calmer, even right before sleeping.

That's very me. I've never tried to avoid late-night caffeine have haven't noticed it having any affect on my sleep. Which inclines me to think the status quo is possibly fine.

Away

The one big inconvenience in needing caffeine used to be when I'm away, especially at a con in a conference centre, but also, just anywhere on holiday where I'm out all day and don't have decent tea or coffee facilities where I'm staying.

I found it a big faff needing a certain amount of coffee or tea, but that not always syncing up with when I want to sit down and "have a coffee". And a crapshoot whether there'd be somewhere providing bog-standard coffee or tea cheap, or if the only source was a fancy coffee place. Especially if I'm in a rush, or it's all in a foreign language, or whatever.

At some point, I experimented with bringing caffeine pills. I'd studiously avoided them before since having caffeine without the ritual of drinking it seemed like it would only exacerbate the feedback loop of taking more and more to make up for potential caffeine-crashes. I still avoid them when I'm *not* away somewhere.

But I actually found it really helpful, it basically solved the problem for me. I usually need a couple of actual hot drinks throughout the day, usually one or two in the morning with breakfast and one sometime during the day. But otherwise, having a couple of pills in the interim, either physiologically or placebo-y, made me feel fine. I also remember to drink liquid. It made the whole thing a lot simpler.

I can't help other people though, especially tea drinkers in places where there's not much tea.

Questions

Which bits of those experiences resonate with you and which don't?

Most of my friends seem to default to tea *or* coffee, even though I remember by parents drinking one or the other depending on the circumstances. Do other people drink both at different times?

What is the relative caffeine in a cup of tea, a cup of coffee, and caffeine pill?

Does that status quo sound sensible or is there something else you'd recommend?
jack: (Default)
So, Arrival (the film, adapted from the Ted Chiang story). I didn't have a lot to say about it. Aliens, were great. Linguist, was great. Kind-of-sympathetic kind-of-antagonist military were a bit gratuitous, but generally good. But I did have thoughts about a few specific things.

And, yes, I'm annoyed it wasn't EVEN MORE like a Ted Chiang story than it was, but please do adapt as many Ted Chiang stories as you can. The tower-of-babel one would be amazing...

Spoilers )
jack: (Default)
I went to Helsinki for worldcon.

It was lovely to see osos and liv.

I always find travel a little stressful but I have got better at not worrying. It's still feels like more of a hurdle than travelling locally, even if it shouldn't, but less so.

Helsinki was nice. I didn't do a lot of exploring, but some. I love water, and enjoyed going to another city based on the sea. Helsinki itself isn't on as many islands as Stockholm, but the harbour is covered with them and several tourist attractions are on one island or another.

We went to the zoo, and I went out to the island fortress Suomelina, both nice ferry rides. Suomelina was originally fortified by Sweden when Finland was part of Sweden, and later controlled by Finland and by Russia, with modern fortifications added to the older ones. The original fortifications are incredible to see, vast stone walls dozens of feet thick with tunnels at the bottom surrounding grassy courtyards, and at the main entrance, stone steps swooping down to the sea from a giant gate that frames the sun.

When we flew back, I realised what Liv had already told me, but not previously realised the extent of, that there really are continuous islands all the way from Finland to Sweden.

Zoo pictures are slowly being uploaded on twitter :)

Food was expensive but fairly easy. Few places had good vegetarian options already on the menu, but everyone I spoke to was eager to to be flexible and make up a cheaper price for a plate full of all the side dishes, without me needing to explain or anything.

Part of the expense is being in a foreign conference centre when the pound is getting weaker, but as I understand it, Finland *is* typically more expensive. I don't know enough about it, but my impression is, partly due to needing to import more food, and partly due to higher taxes and wages. But I wish people would acknowledge that latter part when complaining.

Worldcon was fun. Registration was incredibly quick with a computerised "scan barcode and print label" system, and everything was well organised apart from being over-full on the first two days.

Most of the panels I went to were decent but none stood out to me as amazing.

I loved seeing authors I cared about, at the steven universe panel, at the wild cards panel (and winning hugos). The quantum computing panel didn't tell me a lot about the theory but was fascinating for telling us about what computers had practically been built -- and apparently IBM have one you can run programs on online!!

I had a better balance between different sorts of things, I did some panels, some meeting people. I met up with people, but didn't feel like I was constantly missing out on fun things just round the corner. I got some books I was excited by but not too many.
jack: (Default)
Does anyone understand pilot wave theory even a little bit?

Prodded by several recent articles, I've been trying to follow what it says, and am still quite unsure of the realities.

The analogy usually presented is, if you have a small oil drop on the surface of water, and the water container is subject to a regular pattern of vibration, the water forms standing waves in shapes affected by the edges of the container and any obstructions in the surface of the water. And the oil drop tends to move across the surface of the water following the paths in those waves.

If you look solely at the oil drop, you can't tell which of two equal paths it would follow, but you can predict it will take one of them with equal probability, and predict its motion probabilistically. And if you couldn't see the standing water waves, you could deduce something in that shape exists.

You can even get some analogies for weird quantum behaviour like the an electron passing through two parallel slits and experiencing interference with itself: the water waves form possible channels for the oil drop, and the oil drop goes through one slit or the other, but ends up only at certain places on the far side.

However, the analogy to actual quantum physics is still unclear to me. Not whether it's true, but even what people are suggesting might happen.

Are people suggesting there's some underlying medium like the water? In that case, isn't there some propagation speed? The water waves exist in a steady state once all the obstructions are set up, but they don't respond to changes instantly. If the water trough were miles long, the oil drop would set off following water wave paths that existed at the point it passes through, not the paths corresponding to the obstructions that are going to be in place when the oil drop passes through them.

And yet, as I understand it, no-one expects a propagation delay in quantum experiments. People keep checking it out, but there never is: it always acts like an electron propagates just like it is itself a wave.

I agree, if there WERE some delay, if you changed the slits at this time, and got one result, and changed them at another time, and got another result, that would be massive, massive, evidence of something, possibly of something like pilot wave theory. But AFAIK proponents of pilot wave theory aren't advocating looking for such delays, and don't expect to find any.

Contrariwise, if this is just an analogy, and the quantum equivalent of the water waves (equivalent to the wave function in other interpretations of quantum mechanics) propagates at "infinite" speed, then... that is undetectable, indistinguishable from other interpretations of quantum mechanics. But it raises red-flag philosophical questions about what "infinite speed" means when all the intuition from special (or general) relativity indicates that all physical phenomena are local, and are influenced only by physics of nearby things, and "the same time" is a human illusion like the earth being stationary. Even if you don't expect to detect the pilot wave, can you write down what it should be in a universe where physics is local? Does that in fact provide a way to make QM deterministic and independent of observers, even if you change the reference frame? Because it doesn't sound like it will work.

FWIW, those are very superficial objections, I don't understand what it's saying enough to actually evaluate in depth. But I don't understand why these don't show up on lists of "common objections and rebuttals". Common objections have confident rebuttals in several places, and I've *seen* articles about them, but not understood well enough. Can anyone explain better?

Digression

I do agree, the idea that QM equations are an emergent property of something else, ideally a statistical interpretation of a deterministic underlying reality, would be very nice in clearing up a lot of confusion. But AFAIK, the closest candidate to that is Many Worlds, which doesn't appeal to many people who want to get away from QM unpleasantness.
jack: (Default)
OK, so. We want to allocate a large block of memory that is contiguous as physical memory. That means allocating physical memory in the kernel (as with kmalloc), and then later providing it to userspace software. Presumably then mapping it into virtual memory for use in userspace with mmap from physical memory in dev/mem, although we may be doing something different for reasons which aren't relevant here.

We happen to have a kernel driver already for other experiments with our specific hardware, so we have somewhere convenient to put this kernel code as needed.

This is running on a hardware board dedicated to a single task, so we have a few advantages. We would prefer to allocate a large chunk on start-up, and will have complete control over which programs we expect to use it, we don't need to dynamically manage unknown different drivers trying to get this memory, and we never intend to free it, and the board will only be used for this so we don't need to make sure other programs run ok. And there's no restriction on addresses, DMA and other relevant peripherals can access the entire memory map, so unlike x86 we don't need to specifically reserve *low* memory.

There are several different related approaches, and I went through a few rabbit holes figuring out what worked.

Option 1: __memblock_alloc_base()

From research and helpful friends, I found some relevant instructions online. One was from "Linux Device Drivers, 3rd edition", the section entitled "Obtaining Large Buffers", about using alloc_bootmem_low to grab kernel pages during boot. I'm not sure, but I think, this was correct, but the kernel started using memblock instead of bootmem as a start-up allocator?

From the code in the contiguous memory allocator (search the kernel source for "cma"), I learned that possibly I should be using memblock functions as well. I didn't understand the different options, but I used the same one as in the contiguous memory allocator code, __memblock_alloc_base and it seemed to work. I tried large powers of 2 and could allocate half of physical memory in one go. I haven't fully tested this, but it seemed to work.

There are several related functions, and I don't know for sure what is correct, except that what the cma code did worked.

This code is currently in a kernel driver init function. The driver must be compiled statically into the kernel, you can't load it as a module later. You could put the code in architecture specific boot-up code instead.

Option 2: cma=

fanf found a link to some kernel patches which tried to make a systematic way of doing this, based on some early inconsistently-maintained patch, which later turned into code which was taken up by the kernel. Google for "contiguous memory allocator". There's an article about it from the time and some comments on the kernel commit.

It's a driver which can be configured to grab a large swath of contiguous memory at startup, and then hand that out to any other driver which needs it.

You specify the memory with "cma=64MB" or whatever size on the kernel command line. (Or possibly in the .config file via "make menuconf"?) You need to do this because it allocates on start-up, and it doesn't know if it should have this or not.

It then returns this memory to normal calls to "alloc_dma_coherent" which is designed to allocate memory which is physically contiguous, but doesn't normally allocate such big blocks. I hadn't tested this approach because I didn't need any specific part of memory so I'd been looking at kmalloc not "alloc_dma_coherent", but a colleague working on a related problem said it worked on their kernel.

It may also do clever things involving exposing the memory to normal allocating, but paging whatever else is there out to disk to free it up when needed, I'm not sure (?)

I was looking at the source code for this and borrowed the technique to allocate memory just for our driver. We may either go with that (since we don't need any further dynamic allocation, one chunk of memory is fine), or revert to using the cma later since it's already in the kernel.

I went down a blind alley because it looked like it wasn't enabled on my architecture. But I think that was because I screwed up "make menuconfig" not specifying the architecture, and actually it is. Look for instructions on cross-compiling it if you don't already have that incorporated in your build process.

Option 3: CONFIG_FORCE_MAX_ZONEORDER

This kernel parameter in .config apparently increases the amount of memory you can allocate with kmalloc (or dma_alloc_coherent?). We haven't explored this further because the other option seemed to work, and I had some difficulties with building .config, so I don't know quite how it works.

I found the name hard to remember at first. For the record, it means, ensure the largest size of zone which can be allocated is at least this order of magnitude (as a power of two). I believe it is actually 1 higher than the largest allowed value, double check the documentation if you're not sure.

Further options

There are several further approaches that are not really appropriate here, but may be useful under related circumstances.

* On many architectures, dma does scatter-gather specifically to read or write from non-contiguous memory so you shouldn't need this in the first place.

* Ensure the hardware can write to several non-contiguous addresses.

* Allocate the several blocks of the largest size kmalloc can allocate, and check that they do in fact turn out to be contiguous since kernel boot-up probably hasn't fragmented the majority of memory.

* Ditto, but just allocate one or several large blocks of virtual memory with malloc, and check that most of it turns out to be allocated from contiguous physical memory because that's what was available. This is a weird approach, but if you have to do it in userspace entirely, it's the only option you could take.
jack: (Default)
Logic Cassandra: No, don't bring the horse into the city! It has soldiers inside.
Trojans: Pshaw.
Logic Cassandra: Wait, I mean, sit on your hands all night, and nothing much will happen. No gods will give you a big pile of gold.
Trojans: Hah, no way you're putting one over on us. We'll sit here and take the gold, thanks.
Logic Cassandra: In fact, you're going to go on disbelieving everything I say.
Logic Cassandra: *level stare*
jack: (Default)
I voted in several more categories, but eg in long form dramatic presentation, I didn't have a lot to say so I'm not going to try to recap it here.

Novellas

Ballard of Black Tom was a very moving Lovecraft inspired story, from the perspective of a black new yorker, it paints a great portrait of his day to day life in 1920s (?) NY, and his initially minor dealings in mythos stuff. It was quite creepy once it started, but I've still to read the more lovecraftian ending of the story.

The Dream-Quest of Vellitt Boe was *also* a very good Lovecraft inspired story, set in the dreamlands, and the travels of a professor at the newest university college, the women's only college, through strange parts of dream, weird gods, and eventually maybe the waking world.

Penric and the Shaman is enjoyable in all the ways you'd expect it to be if you've read other Chalion stories by Bujold. It says a little about shaman/demon interactions which was only incidentally touched on before, and has slightly more of a role for a Father-worshipping figure. But it doesn't add a lot new.

A Taste of Honey, I still need to read, but the cover is *gorgeous* and there's some good male/male flirting on the first page. I'm not sure how that's going to turn out.

This Census-Taker. Interesting worldbuilding, I'm not sure where it's going, I still need to finish it.

Best Novelette

“The Art of Space Travel” about a small cast of characters living and working near Heathrow, against a backdrop of a second Mars colony mission, 30 years after the first tragic failed attempt. I loved the character stuff, and background matter-of-fact look at a possible mars mission, although I wished they'd tied together more closely: I wanted to know more about the disaster, and the next mission. The title refers to the name of a textbook.

“The Tomato Thief” by Ursula Vernon. All of her stories are pretty good, although I didn't love this as much as some of her others, despite being pretty good.

“Touring with the Alien”, an odd-job woman ends up with the role of taking reclusive alien visitors on a road trip to see some of earth. Interesting musings on free will etc even though I wasn't convinced where they ended up. Again, I loved the day-to-day interaction of the protagonist and the other characters.

“The Jewel and Her Lapidary”, interesting worldbuilding, but I need to see how this finishes up. Jewels were nobility of a hidden kingdom, who kept it secret safe and stable with various supernatural powers granted to them by gems, but could only be bestowed by Lapidary servants.

You’ll Surely Drown Here If You Stay” by Alyssa Wong. Something about a desert? It looked good but I couldn't get into it at all (sorry).
jack: (Default)
I've had several conversations about why "secondary" is such a loaded concept in poly relationships and feel like I'm slowly getting how people feel. But still, I feel there's a lot that's important to people I'm missing.

1. Not enough

It seems like many people are starting from the assumption that nobody *wants* to be a secondary, and the concept is basically synonymous with "I'll probably want more but I'll settle for what I can get". And yes, if that's how you feel, then that might be ok, but there is an inherent source of tension which is likely

I never had that assumption, only as I've met a wider variety of relationships have I started to understand it. It seemed to me, some people had many parallel relationships (either a small number of permanent partners who are equal priorities in organising your life whether or not they're different in other ways, or varied relationships each negotiated individually etc). Or they had one or two main partners, and other partners as well, usually people who themselves had many other partners, or had other major commitments, or otherwise were at a point in their life where a relationship *might* become much more, but they weren't looking for more, they were looking for something which fit their life right now, even if they had limited time and energy.

But if every relationship is "I fall deeply in love" then it makes sense that anything other than deep and permanent is really hard. Likewise, if you only have room for one relationship, it's a very painful choice to be with someone who wants to be with someone else more, if that's not what you want, and either "they need to have room for their relationship with you to grow" or "they need to realise that they may not be kind by having a relationship with you" may be issues.

With the benefit of hindsight, that looks to me like, "here's a form of relationship that suits some people but not others, don't choose it if it doesn't suit you". But if you have no experience of possible relationships, and the only model you have is "A and B are the love of each other's lives, and C is there too but is treated with absolutely zero respect", it's easy to fall into that model, and come out feeling like it should be burned to the ground.

2. Negotiating from a position of weakness

The other thing I had to say is, it's common for a relationship (not romantic, any form of association) to involve people with different amounts of power. Sometimes that's seriously unfair, as in a bad boss and an employee who needs the job: the boss has every opportunity to take advantage, to not just be unfair but to manipulate the interactions to their advantage by changing the rules all the time.

Sometimes it's completely fair, as in A wants to date B and B doesn't want to date A: then B deservedly has completely control over who they want to date, and they may reject A politely and compassionately (if A is not a jerk) or harshly (if A is a jerk, or if B is for that matter).

"Fair" doesn't mean "half and half". Although in most healthy ongoing relationships, jobs, romance, etc, both sides get comparable good things out of it.

A relationship can be unequal. Say, A has young children, another partner, and many other commitments. And they have a fortnightly date with B, whose commitments are a lot more flexible. That's just how their lives are, no-one is deliberately being unfair. But it does turn out, B has more flexibility than A, so they end up rearranging things more often.

Now here's the distinction. At the moment A doesn't really have the power to offer a lot more time to B. But they do have the power to make arrangements respectfully, by being clear in advance what commitments they can and can't make. By being honest about what time they have. By being upfront that occasionally emergencies will happen but that won't be a default. By not changing plans at short notice and expecting B to cope, can we emphasise that one.

Maybe B *could* cope with that if they had to, but if A forces them to for no reason, or for unfair reasons like, "My other partner is jealous if I spend ANY TIME WITH YOU AT ALL so rather than talking about it I'm just going to constantly jerk you around in the hope that eventually they're happy", then A is not treating B at all respectfully.

The reason I mention this particularly is that it seemed to be a common complaint from people familiar with certain sorts of history, that A had apparently logical reasons why they needed to constantly change stuff around. But it's possible for A to be unfront about what's not really changeable, while also being respectful and communicative about everything.

This is obvious in some relationships: most people with friends know that sometimes a friends' job or partner need them right now, and most friendships, if you move away your friend will usually stay with their job or family, not move with you. And that's just normal: almost all humans have many relationships and give different things to different ones. But it's also normal that friends are not jerks about it, and (a) don't constantly talk about how something else in their life is more important than you and (b) make time for you sometimes and don't just cancel all the time without telling you.

Postscript

Hopefully this is obvious, but this is, me trying to understand many thoughts I've heard from different places, and not about any particular relationships of anyone (especially not anyone I know). Hopefully that postscript isn't needed, but I know it's possible for me to post "thoughts on X" and people to worry "is this about me".
jack: (Default)
Quite a long time ago now, I read about the concept of inbox zero. For a long time I struggled with various productivity techniques. I sometimes temporarily achieved inbox zero, and I made big inroads against the habit of having all the urgent emails muddled in with everything else I'd ever received. Although that never quite became permanent.

However, now there maybe has been a permanent sort of shift. I think a combination of receiving less urgent emails, and of having a regular non-email based per-week todo list, and of generally being less stressed by all urgent things, have led to a point where I no longer *need* inbox zero. I generally only have a few emails needing attention, and those are starred. And other recent-ish email sits around in my inbox to a certain extent not doing much harm, but being handy if I need it.

And I'm sufficiently non-stressed that it's not usually something I need to *set aside time for*, but something I can do when I'm checking my email anyway. Any longer time commitments get put in a separate todo.

Non-email email (social network notifications, mailing lists, confirmations, etc, etc) gmail helpfully puts into a separate tab. Social network stuff I star anything I want to reply to, and empty it out every so often. Everything else I just glance at, and if it needs any response move to my main inbox and star it.

This has bad effects as well. Because it *usually* just works, if I get an urgent email and then suddenly go away, it can fall through the cracks. But that's hopefully ok, it's mostly how most people deal with tasks: they usually do it fine but occasionally miss something, instead of needing to be always perfect else they fail forever.
jack: (Default)
Every Heart a Doorway tells the story of a school for the recovery of children who've been subject to portal fantasy stuff, specifically people wanted to stay but were cast out for some reason. It's pretty good; I felt it could have embraced the premise *better*, but it still did a pretty good job.

I have lots of different thoughts about this.

Returning from portal fantasy

One of the biggest is probably that, it's written as if people being cast out is a central feature of secondary worlds, whereas originally I think it's more like, the authors didn't think about it much either way, they just tacked on a happy ending even if it didn't really make sense in the book.

But as liv points out, many people found portal fantasies incredibly moving as children because they wanted to escape somewhere else from where they were, and returning was horrible, and this story serves very very well as an emphatic rejection of that trope.

Funnily enough that was never me. Lots of my friends overcame a lot of childhood problems, but though I was nerdy and bad at making friends, my parents were great, and I never wanted to get away from here, even if I was drawn to the idea of going somewhere where my strengths could blossom. I got some of that by going into maths and programming.

Flaws

I enjoyed this more than most of the other Seanan Mcguire I've read, even the Mira Grant. I think the strengths were similar, but the bits where "the characters go where the plot says, completely disregarding logic, common sense, emotion, characterisation, survival, or physical possibility" were much less prominent.

At least to me -- I know some people didn't find that a problem in any of her books, and some people were bothered by it in this one. But there are going to be *some* rants in the spoiler section.

I wasn't bothered by some things that bothered other people. To me, the variety of sexualities etc didn't feel shoehorned in, except occasionally (and I was pleased it was there). I wasn't bothered by shifts in narration from tight third to omniscient (I actually quite like little omniscient asides).

Strengths

The diversity of characters. The description of the secondary worlds: the harsh "high logic" faerielands; the "high nonsense" nonsense worlds; the ones with rhymes, the underworlds, etc etc. It is all very memorable.

Random thoughts

I know I can be too optimistic here, and it can be impossible to stop bullying, but I also just despair at how it's taken for granted in so many situations fictional and real. Here there's a fairly small group of children, with several adults present full time. Can't they at least TRY to prevent at least physical attacks? And ideally violent threats?

Spoilers )
jack: (Default)
The android game I wrote last month is available for download (see bottom of this post).

Gameplay

It's a variant on an augmented reality match three game. Physically walk around to change which square is highlighted with a light grey background. Click that square to place the next tile there. The next tile is shown at the bottom of the screen. Match three of the same type in a row, and they vanish forming a new type. Then try to match three of *those*. When you reach hearts, match three hearts of any colour and they vanish entirely (but give lots of score).

For instance, three fish next to each other in a line make an octopus, three octopuses make a whale, three whales make a blue heart, three hearts of any colour vanish entirely. And similarly for the three other starter animals.

Only vertical and horizontal. But if you make a line of four, or two crossing lines of three, they all vanish. They only give one new tile, but you get more points.

It would be trivial to play if you could just click on a square, but it's surprisingly addictive when you play it walking about.

Be careful not to walk into the middle of roads! It's surprisingly easy to make that mistake when you're concentrating on your location in the game.

The screen wraps round, so you can always keep walking in one direction rather than walk in the opposite direction. It's best to start by figuring out which compass direction corresponds to which direction on the grid :)

Tips: When you complete an octopus, think about where you're going to put the fish to make the next octopus next to the first one.

Details

If you open the .apk file on an android device, it should ask if you want to install it. You can only do so if you agree to install apps which come from me not the play store. I think that should work but I don't know for sure.

It is very early stages. It seems to work on one or two devices, but I haven't tested it more extensively than that. It will hopefully be ok, but I don't know for sure. I would appreciate knowing everyone who tried it, just whether it ran ok or not, and if the game itself seemed to work.

It still has some UI from the open source OpenSudoku game I based the code on. Don't pay any attention to the menus or help.

File:

https://www.dropbox.com/s/md5sjt25xe3eean/emojilution-debug.apk

(Let me know if the link doesn't work. You should *not* need a dropbox account to use it, but you may have to scroll to the bottom of the screen to continue to download without one.)

Feedback

I would appreciate knowing everyone who tried it, just whether it installed ok or not, and if the game itself seemed to work.

Lots of things are known to be unfinished, so don't waste energy enumerating what's missing in menus etc. Do let me know anything that seems to prevent me playing the game. Do ask if it doesn't run or it's not obvious what to do. Comments on what's fun and what isn't are very much appreciated!

Thank you!

News recap

Jul. 13th, 2017 01:05 pm
jack: (Default)
Unfortunately, I often lose track of events when they're no longer headline news, even important ones.

I'd not realised how long the situation in eastern Ukraine had been :( But apparently, it's mostly in the same situation, with several large areas controlled by separatists backed by Russia, with continued fighting but not a lot of movement in lines of control.

Everyone condemned Russia and instituted sanctions, but it doesn't seem to have made much difference :( I guess eventually, the current situation will be formalised. Unless someone offers military aid to Ukraine which might even be worse, more proxy (or not proxy) wars :(

I think I sort of knew that, but I wasn't really sure.

I looked this up while checking what happened under NotPetya, the malware that used the same exploit as WannaCry, but also sought administrator privileges on networks to spread throughout organisations. It seems it didn't go globally apocalyptic as it temporarily seemed it might. But was pretty bad in Ukraine. It was initially spread when a commercial accounting package widely used in Ukraine was hacked to include it in a software update.

That's scary in two ways. One, it was targeted at Ukraine in several ways. It superficially presented itself as ransomware, but actually just did damage, the "accept money and decrypt" stuff was half-arsed.

Secondly, most people don't have a good defence against a legitimate software update. Image if chrome were hacked, or windows! That's hopefully not likely, but if it were possible, and someone used a new exploit to subvert their software updates directly instead of spreading indiscriminately first, it could infect *incredibly* widely.

Holiday

Jul. 13th, 2017 01:02 pm
jack: (Default)
Last week, Rachel and I had a couple of days away in Norwich and Great Yarmouth. It was really lovely. Norwich was great to explore, visiting the sea was blissful. We found some nice food, especially the little cafe 42 King Street in Norwich which did tapas-style... stuff, including fascinating vege stuff, incredible marinated halloumi and dip.

Then we went to Michelle and Mike's wedding, which was really nice. I loved their book cake, and geeky references, and games, and little lego-chocolate-dispenser gift bags! And the family has been through a lot, it was so, so lovely they got to this point.
jack: (Default)
Subnautica

This falls into what I'm starting to recognise as a category, computer games that are incredibly beautiful in multiple ways, but I play for five minutes and decide I don't have time to play properly. You crashland on an ocean planet, and oh my gosh, the water is so WET it practically comes out of your monitor. And warm and clear and inviting, with tropical reefs stretching endlessly.

The actual game is a bit like minecraft, find the right materials to feed into an emergency fabber to make more complicated tools to get more useful materials and components, until you eventually repair a distress beacon. (I don't know if that's all or if there's also underwater aliens or whatever).

Avatar on Wii

Rachel bought some old-ish games and it's been lovely to have something fun but simple-ish we can play together occasionally. One person controlling and one person kibitzing works surprisingly well, a lot is "what now" where having the trigger finger isn't the important thing.

It looks great, very avatar-y. It's not set at any particular point in the chronology but has a feel of an avatar well-respected but also young and unpracticed well. And your abilities work like that too: you have quite powerful abilities but you have to unlock them by levelling up, and they have cooldowns, so you feel powerful, but also like you can only succeed by being skillful, which fits the tone very well.

I have a few quibbles. The wolves appear intelligent to manufacture, or at least habitually carry, headbands of +2 armor, and yet not intelligent enough to avoid spontaneously attacking the most powerful humanoid bender on the planet. The avatar indiscriminately slaughtering wolves and taking their stuff seems tonally inconsistent on multiple levels. But that's computer games.

Also, Zuko can jump down behind Kitara and grab her and she's suddenly unable to fight back? Why didn't he try that on all the OTHER waterbenders there?

Flintstones comic

So... there's a gritty flintstones reboot. Except it's not *very* gritty. Not like gratuitous gore. But it deals with consumerism. And colonialism. And PTSD. And so on. I've no idea how this came about, but it works really quite surprisingly well. A few panels are incredibly biting. I loved the animals-used-as-appliances talking to each other, and calling the pet dinosaur a traitor.

On other occasions, it does veer a bit puerile, making simplistic jokes and criticisms of modern life that aren't especially telling. But worth reading some of.

Irredeemable

About a superteam where the most powerful superman-like member goes rogue and starts killing people, and everyone else has to figure out what they can do from there.

The worldbuilding and characters are pretty good -- it feels really LIKE famous superteams, while all the individual members are not knock-offs of specific characters from a single team, but embodying the *sort* of iconic characters that usually exist.

It's mostly about the characters, and what they do and their relationships with each other. There are quite a lot of *further* story developments of one sort or another, it doesn't just dwell on the premise forever with nothing evolving.

I've some quibbles. Things would drag on a lot less if people stopped going back and forth on when to try to contain someone and when it was necessary to kill them. And it's not a *lot* of sexism, but there's some.
jack: (Default)
“That Game We Played During the War”, by Carrie Vaughn (Tor.com, March 2016)

Chess, two countries slowly developing a peace after a long war, two people from opposite sides tentatively renewing a friendship formed during the war, and one side is entirely telepaths. Generally pretty interesting. More thoughts below.

“A Fist of Permutations in Lightning and Wildflowers”, by Alyssa Wong (Tor.com, March 2016)

Two sisters with magical abilities over the weather and alternate histories.

“Seasons of Glass and Iron”, by Amal El-Mohtar (The Starlit Wood: New Fairy Tales, Saga Press)

Two fairytale protagonists rebel against their allotted labours and help each other escape.

“The City Born Great”, by N. K. Jemisin (Tor.com, September 2016)

A struggle to allow, or prevent, New York to become a living city. Really evocative, but I found it hard to get into.

“Our Talons Can Crush Galaxies”, by Brooke Bolander (Uncanny Magazine, November 2016)

Likewise, doing something good but I find it hard to describe.

The john c wright one

In general, I'll vote any spam entries no award and not feel obliged to read them, but I checked some reviews. It talks about things I genuinely find interesting, like the relationships between asimovian robots and theology. But in rather horrible ways.

Some spoilers )
jack: (Default)
I've entered votes for everything apart from the novellas. There's quite a few I wish I had to spend more time on: ideally I'd read more by the Campbell authors, and some of the short stories I'd like to read again, and some other things.

But I'd also like to talk about what I enjoyed, and see what other people thought, so I'm working my way through some of the categories this week. The deadline for finishing voting is 8am Sunday morning BST (I think).

A few years ago I didn't follow any graphic novels at all, I only recognised entries which were webcomics I knew. But a combination of random drift, me following some authors online, reading some of the earlier graphic novels (especially Ms Marvel and Saga) and having other things recommended to me, and of just getting into the habit of reading comics on the tablet at all, have made me recognise enough of the ballot to have an opinion on the category and want to see the entries I didn't already know.

Most of them had enough in the hugo packet to make a good decision, a first issue or first collected volume, which is pretty good. Although I wouldn't have time to read them all.

Vision was really interesting. It's about the artificial magical humanoid from the avengers I only know from the recent avengers film, but enjoyed there. I don't usually read comics from large continuities even if I like the characters, because it feels like they're too constrained by stuff I don't know. But I really enjoyed this; Vision and family lose their memories (or the emotional component of their memories) and try to fit into human society again by living in a house in the suburbs and sending the teenagers to high school. It hits a lot of interesting "learning to understand human interaction" things. Although there looks to be a fair amount of gratuitous death coming up.

Black Panther is about the prince of Wakanda fighting... a bunch of mystical stuff. It covers lots of worthwhile themes, of power and racism and so on and is very well done. I got confused because I was trying to skim and that didn't really work, but I definitely want to read it more slowly, and rated it pretty highly

Monstress, I'd like help forming an opinion about. I read the first issue a while back without knowing much about it, but my impression was, it was absolutely gorgeous, both in visuals and in tone, all about some mystical battle of enslaved people and spirits against someone, and lots of people being captured and bravely escaping; but it felt very male-gazey and I assumed it was going to be "interesting, but not developing the interesting themes further and getting hard to read". But what everyone else said about it was gorgeous, amazing worldbuilding, feminist themes, so it sounded like my first impression did completely underestimated it, and it was all the things I'd love. But I've not actually read any more to be able to form my own opinion about. Has anyone else read it more (or even just read the first issue more slowly?)

I postponed the saga and ms marvel entries. I assume they're good, but about as good as the previous series was, so I will take the risk of voting on that basis. (If either was exceptionally more standout than the rest of the series, let me know). And I will vote most of the other entries first, because I'm more excited by *new* series, even as I want the ones I like to continue.

Papergirls is about three teenage girls who deliver newspapers discovering some alien invasion or something... the write-up sounded interesting, but I couldn't get into the first couple of pages. I expect it's fairly good, but I'll see if I go back to it or not.

Has anyone else read any of the ones I've partly read and have helpful opinions?
jack: (Default)
I previously talked about accessing the scope of an owning class from a class declared and instantiated within it. Latest post here: https://jack.dreamwidth.org/1017241.html

The possible approaches seem to be: the owned class has a pointer back to the owning class; or functions dealing with the owned class get an extra parameter to the owning class. Whether that's implemented manually, or automatically by the language, or somewhere between.

Thinking some more about this, various things occurred to me:

Java

I hadn't realised, but I learned Java and C# (and maybe other recent/managed languages) do this automatically, presumably implemented by the owned class automatically having a pointer to the owning class, and checked where its instantiated that it's only instantiated by an instance of the owning class.



I was naturally drawn to a "owning pointer is passed in alongside or as part of a this pointer" implementation as it seemed more conceptually correct. However, the actual benefit of this is a lot smaller in most languages other than rust. I first started thinking about these options in a rust example, where having a pointer to the owning class needed some fancy dancing, because rust prefers to keep tight limits on how many pointers to a class at once (ideally one only).

This hopefully makes memory management safer, and means you can usually move classes around in memory using a raw memcpy, because they don't usually have internal pointers to different parts of them. But most other languages don't even try to do that, just assume that a non-trivial class is fixed in place in memory (or moved only by a garbage collector that knows where all the pointers are).

Implementation

If you try to avoid having a permanent pointer back to the owning class, and if you ever need a pointer to the owned class (this is common if you use it as a callback), you need to accept your pointers would actually be a pair (or more) of pointers, to the owning class, and to the owned class. The owned pointers might be an offset rather than a complete pointer. That's clunky, but wouldn't necessarily take up that much space if the language supports it. You could do a similar thing for iterators, like pointers to members of a collection, rather than having a bare pointer that only makes sense if you already know what the collection is.

That seems a useful concept, but I'm not sure how useful it would be in practice.
jack: (Default)
I've been at the new job over three months and it's going fairly well.

For a long time, I've felt like, each project goes through phases, of "just getting started and full of ideas" and "wrestling with someone else's code I don't understand" and "filling out features and making something fairly complete" and "dealing with an urgent problem". And they basically ALL caused me to procrastinate. But with very very many varied productivity tricks and techniques, I seem to finally be reaching a point where, in most of those phases, I can just go ahead and do work, without constantly struggling not to freeze up and get nothing done.

The last couple of weeks, I was a bit stuck in a "it doesn't work and I can hopefully fix it but I don't know for sure" loop, and hadn't realised how much it was dragging down my mood. It also seemed to be, I wasn't content if there was *any* major upcoming problem hanging over my life, I had to make progress on *all* of them before I felt at all better. But I eventually did.

Overall, that's really quite good. I still need to test if the improvement is ongoing, but it's an improvement I wasn't sure I'd ever quite reach. Unfortunately, because I'm me, my brain is less excited, as depressed that it took so long, and that afterwards things will not be significantly better.

There's been a slow shift. It used to be, if I had a little bit of time, I could never just, do something small (washing up, or code tidying, or replying to some emails). I could only ever do things when I made it so I *had* to. But as things improved, that resistance melted away, and "how intimidating tasks seemed" shrunk back to something related to how much work they actually were. Which I guess is where many people were all along.

Doing month-by-month goals or projects was definitely good, I think I want to keep that up. Sometimes they've been a specific project, like learning rust. Other times they've been just "catch up on these paperwork/chores". But having that structure helps a lot letting me see progress. And knowing a project is self-contained, I can see how much I can do, and then *stop* and force myself to re-evaluate my goal, not get stuck in a dragging-on project for ever.

I haven't done anything very spectacular this year, but I've learned about rust (and contributed!) and learned about writing an android app. And started a new job. And am confident that if I try to work on a project in a language I already know it would have gone a lot faster.

It feels like, given the slightest pressure to do things a particular way, even in my imagination, my brain immediately collapses into thinking "i have to do things that way" and it's really hard to *notice* how I'm stuck let alone dig myself out again. And that applies not only to specifics, "colleague refused to listen to idea, so can I ever consider that idea again in the future in any way?" but to meta-skills. It always feels like I *have* to fix everything by sheer force of will, not by, well, techniques that work, because that's what people expect of me. But it's not true, no-one does think that, but it *feels* like they do.
jack: (Default)
I've bashed my head on this before but not got a specific answer. Now I read through it in some more detail.

Summary

In West Wing episode 1, Josh insults some evangelical christian leaders. In a meeting trying to resolve this, the following happens.

* One of them proposes a radio address (presumably by the president) on a topic important to them, including public morals, school prayer or pornography. Apparently meaning "people in school should not have access to condoms", "people in school should be forced to perform christian prayer" and "we don't quite know what we want you to do but we're very upset about pornography".

* There is a muddle of people speaking at once, and he cuts in again, saying, "I'd like to discuss why we hear so much talk about the First Amendment coming out of this building, but no talk at all about the First Commandment."

* He says, "The First Commandment says 'Honor thy Father'."

* Toby breaks in, and says that's wrong, that's the third commandment. He is very long-suffering.

* He says, what is the first then?

* The president enters the room and quotes: "I am the Lord your God. Thou shalt worship no other God before me."

Analysis

I'm fairly sure the intended impression is, talk show guy spoke without thinking and screwed up something basic, Toby and the president correct him.

But firstly, the first commandment seems SO basic, it's hard to see how he could get it wrong. Whether or not he's a good Christian overall, quoting the commandments, especially the first one, seems like the sort of thing he'd do all the time.

Secondly, when I first heard it, I assumed this was "honor your father and mother", but now I wonder if it's supposed to be honoring *God* thy father. Although that doesn't quite fit any of the specific sentences either.

I'm not sure if the commandment he was quoting was supposed to be directly related to the previous discussion or not. Either of the possibilities doesn't seem directly relevant to the school stuff, but it's possible it is in a way that's only familiar if you know the usual arguments people make.

Several people point out that all the people involved have *different* traditional commandment numbering. Toby is Jewish. The christian leaders are protestant. And the president is catholic. I assume in America the protestant version is widely known and often considered canonical? I spent some time on wikipedia checking the different traditions for how to break up the commandments into ten.

But that doesn't seem to fit much better. The president could be quoting the protestant version (or possibly a slightly abbreviated catholic version?)

There's no way to make "honor thy father and mother" into 1 or 3, it's 5 for both protestants and jews (and 4 for catholics).

It could instead be "have no other god" or "don't take God's name in vain" but that doesn't quite fit, either the numbers or the quote.

My best guess is that someone wrote an exchange that worked, probably based on the traditional protestant numbering[1]. And then it got edited for various reasons, and ended up in a version which sounded good but didn't actually make sense.

The best alternate explanation is (a) Christian leader guy genuinely didn't know what the first commandment was (or forgot in the heat of the moment) (b) Toby was trolling by deliberately making something up, knowing no-one could call him on it as he had a different numbering anyway (c) the president (an intellectual catholic) knew the confusion of the numbering, but quoted a first commandment that would be expected to protestants and wasn't exactly wrong by his own tradition.

But to me that seems too complicated, if all that was supposed to be there, there'd be more indication. The mistake would have been one where it's more clear how he came to make a mistake. Toby would have sounded different if he was blowing smoke than if he was correcting people. There'd be some acknowledgement that SOMEONE would have known the first commandment, that this isn't exactly an obscure piece of theological trivia the president researched.

[1] West Wing does much better at research than most shows, but they seem to research a particular topic, it still seems like minor things not the main theme of an episode get overlooked sometimes.

Transcript: http://www.westwingtranscripts.com/search.php?flag=getTranscript&id=1
jack: (Default)
Community. Rewatched first two series. Got bored in series three. I think there was still a lot of good things after that, but I wasn't as excited by each episode.

Rewatching s1 of west wing. Still very good. See twitter for running commentary. It's strange that WW made so many things famous you can't look up if they're true or not, you just find they were in the WW.

When I was being excited by Natural History of Dragons #3, I forgot to say, they investigate translating an ancient syllabary language. made me think of rochvelleth :)

Watched Doctor Who "Veritas". Some things are tedious: that's not how computers work, and that's not how random numbers work. It's almost the opposite. But overall I enjoyed it quite a lot.

Read the latest wild cards. Weird that it just happens to be set in Taraz (Talas) in Kazakhstan when ghoti et al are visiting that country. Although it unfortunately doesn't include much actually specific to Kazakhstan.

There's so many things that are really interesting about the wild card books. Partly that lots of famous authors show up writing a really different style of thing to what they usually write, often more straightforwardly engaging. Partly that main characters in one story thread show up as minor characters in other story thread, and you get a good triangulation on them, how they think of themselves vs how different people see them -- often with no Word-of-God on which is more accurate.