Sunday, June 19, 2016

Weird Products & Offers

More odd stuff I've run across:

Good thing my wife spotted this, because I hate it when my power failure runs out of power:

This one seems to have a way to moderate drainage by absorbing light!

And finally, for those of you who need style help and/or companionship:

Wednesday, June 8, 2016

Election 2016 :(

Curse.
Curse curse curse curse curse.

Here's the deal: I am not a fan of Hillary Clinton; I'm in favor of supporting the constitution and not putting huge amounts of power in the hands of a few people (i.e. executive orders and court rulings that ignore Congress). Not to mention the whole abortion thing, etc. But somehow - I haven't fully figured out how yet - the person running against her is Donald Trump. Like just about everyone else, I thought it was a joke at first. And honestly I didn't know that much about the guy. But at this point it's pretty clear that he doesn't have the moral character to deserve a political office.

That creates an interesting dilemma. (Not for liberals, of course - I'm sure they're loving this.) You don't want to vote for Trump. But you don't want Clinton in power. It seems that most of the Republican leaders are deciding that they have to keep Clinton out of office at any cost, and so they are endorsing Trump, even while they condemn his racist, sexist, and otherwise disrespectful comments. No doubt they hope that they can sway him, to convince him that he needs to tone things down in order to attract a broader voting base. And obviously a lot of voters are behind this.

I can't do it. As much as I don't want Clinton to be president, I can't be a part of someone like Trump getting there either. And that's not to say he wouldn't do less damage - I honestly don't know what he'd do. I kind of doubt that he'd really attempt most of what he has suggested he would. But at this point, I'm not sure it even matters. Even if I agreed with Trump on every issue (which of course I don't), I still wouldn't vote for him, because again, I think that there's a bar you have to set on morality, and he doesn't meet it. In fact, it seems to me that the only value Trump has is that he wants to feel like a winner. If that's the case, then he'd do anything to feel like he's winning. Anything. At list Hillary Clinton is clearly self-centered and cares about her image. That's not respectable, but it's predictable.

So some will accuse me of helping Clinton win. And they are probably right - I am sure that lots of conservatives will feel the same as I do, while most liberals will happily pick Clinton over Trump. But you can't set your priorities such that you will keep a particular person out of office "at any cost". Those costs can become very high. It's too high this time. I'm not sure who I'll vote for, but I'm sure they won't win. But if Trump somehow manages to become president, and if he is as destructive as it seems he could be, I'll be able to say that I had no part in it.

But still, curse.

That bathroom law thing

It's embarrassing that we have to even talk about who should go into which bathroom, but apparently we do. There's a lot of that talk going around, and it seems to me that most of it misses the point. The problem with trying to redefine genders with respect to bathrooms is not with the folks who believe they're of a different gender than they are. (I don't like the term "transgender" because it implies that gender is a changeable thing, which is not true. Even aside from any religious doctrine, science tells us that much. And if you think about it, trying to argue otherwise just ends up propagating a bunch of harmful stereotypes about how men and women should think and feel. But that's a different topic.)

The problem is the other folks, who can very easily pass themselves off as transgender. Here's the thing. Nearly all perpetrators of sexual abuse and harassment are male. (Biologically male.) And nearly all victims are female. Segregating bathrooms and locker rooms by biological gender separates the perpetrators from the victims in situations where abuse is likely to occur. By definition, that has to reduce the number of abuses. If a man can say he's a woman and go into the women's locker room, and if it's not PC (or even legal) for women to boot him out on sight, you have to assume that the dregs of society will do that.

People argue that said segregation shouldn't be required because there are already laws against that kind of abuse. But that misses the point - those laws only provide protection after abuse has already happened. With the "new way", women aren't allowed to protect themselves until they have already been abused. How is that acceptable to anyone?

Of course, proponents of the change point to the feelings of the transgender folks as the point of the new policies. Their feelings are certainly important, and it's certainly important to be respectful. However, the real cause of their discomfort is a lot deeper than which bathroom they are in; it is rooted in gender identity. To use what some might call an extreme example: Imagine that I were to sincerely consider myself a Native American. Let's say I tried to drop in on a ceremony of some tribe. They might look at me strangely. Depending on the situation, they might not even let me in. This would presumably make me feel uncomfortable. But the root cause of my discomfort would be my own incorrect sense of racial identity, not their reaction. I am not a Native American, and believing myself to be one would be guaranteed to cause discomfort. Anyone concerned with helping me feel better would begin by helping me understand the real meaning of the term and that it doesn't apply to me.

I realize that this sounds like it's begging the question, since the definition of gender is part of the issue. But it's really not. Because comfort aside, the issue of protection is very much connected with "gender at birth". And as I see it, as important as it is to respect the feelings of people with gender identity issues, protecting women and girls is far more important.

Sunday, May 29, 2016

Fairune

I beat this Android game app called Fairune yesterday. There's actually a 3DS version (which has some extra stuff), but the app was free so I went with that.

It's worth mentioning for a couple of reasons. First, it was pretty cool. It's a simplistic adventure game, in which battle takes place by simply touching enemies. If they're too strong, you'll take damage and bounce off. If they're weaker than you, they'll be defeated but give you no experience. If they're evenly matched or a bit stronger, you'll defeat them and take some damage yourself, and you'll gain experience points, which eventually raise the amount of health you have and allow you to fight stronger monsters. It's mostly a puzzle game, where you find items and figure out how to use them to advance. It has retro-style graphics and sound, and amusing-looking enemies.

The second reason is that my daughter is a huge fan. She doesn't like video games in general, but this one is fairly adorable. I think the narrator at the start hooked her with this proclamation: "Even monsters won't attack girls in cute dresses!" What's not to like?

There were a few times I had to look up what to do online. None of these situations were necessarily unreasonable, but you really have to pay attention to the pixel art to catch some of the clues. The boss battles gave me trouble also. It would have been much easier on the 3DS (i.e. with a real controller); it was hard to have precise timing with the onscreen buttons. But it was pretty satisfying when I beat it.

Please don't ask how you're supposed to pronounce the title.

Non-stupid dragon rider travel algorithm

I'm not a fan of Eragon - see the Books page for details. One (not the largest) of my complaints involves a moment where a couple of people (or maybe three) have a horse to carry their baggage, and of course they're traveling with a dragon. Since the dragon can't carry everyone, they decide to walk from one town to a distant one.

Stupid.

Of course the most straightforward thing would be for the dragon to carry one person (or however much she can carry) in one trip, then return for the next load, and so forth. Presumably a dragon could make several trips between towns in less time than it could take a person to walk. But for some reason I found myself thinking a little harder about this - specifically, how to optimize things for the shortest possible trip.

I started with a few constraints, which may or may not be valid in the book, but that's fine. For the sake of simplicity, let's say that on a given trip the dragon can carry one human, or all of the luggage, or the horse. (Granted, the horse would weigh more than two humans, so the dragon should be able to carry them both, but maybe the humans don't feel comfortable being dangled by just one set of claws or something. Or maybe the dragon can't carry the horse, but that makes this problem less interesting.) Another possible constraint is to ensure that you don't leave the luggage or the horse unattended. If it's okay to leave the luggage alone, and if there are two humans, then we have a fairly simple way of shortening the time even more:

  1. The dragon carries the luggage to the end point. At the same time, one human starts off on the horse while the other starts walking.
  2. When the dragon drops off the luggage, it returns to pick up the walking human. 
  3. The dragon drops the human off with the luggage and returns for the horse. (By this time, the horse and remaining human have covered a lot of distance, so the dragon doesn't have nearly as far to go.)
  4. The dragon drops off the horse and goes back for the final human.

We can optimize things a little further, because at step 3, the dragon doesn't have to carry the human all the way to the luggage - just close enough that the human can reach it before the final trip is over.
It might be possible to advance things even further,  if we can assume that extra trips for the dragon are offset by less time spent with a human on foot. At step 3, the dragon drop the first human off at an even farther distance from the end. Then at step 4, the dragon carries the horse from the second person to the first, then goes back for the second person. This way, more time is spent with the slowest traveler on horseback rather than walking. Like I said, this might (depending on relative speeds and distances) offset the need for some extra partial trips for the dragon.

Things get even more complex if we add the constraint that the luggage must always be in the company of a human or dragon. (Maybe there are lots of thieves around.) In this case, the luggage becomes the limiting factor. Again, assuming two humans:

  1. The dragon takes human #1 far ahead, but not quite to the goal. The human starts walking. At the same time, the other human begins walking the the laden horse.
  2. The dragon takes the luggage to human #1's position. That human must now stop. But human #2 can now ride the horse and move faster.
  3. The dragon takes the horse to human #1, who can now move. Human #2 continues on foot.
  4. The dragon takes human #2 very near the end point
  5. The dragon takes the luggage to the end point, arriving at the same time as human #2. Human #1 can now ride.
  6. The dragon takes the horse to the end point. (Unfortunately, the horse's extra speed is now wasted.)
  7. The dragon takes human #1 to the end point.
Again, we might be able to optimize this by having the drop-off point for the luggage at step 5 some distance from the end point. That way human #2 can continue with the horse and luggage while the dragon goes back for human #1. But this would also mean that the human is stationary in-between receiving the luggage and receiving the horse, which might offset this. Of course, adding a third person would really free things up and allow the horse to continue running right up until the end, similar to the first scenario. (Although of course that would also add additional trips.)

You'll notice that I've left the math out of this completely, which is why it's not possible to come up with a definitive optimal solution. I guess this would be a good interview question if math were relevant. Maybe someday I'll write a program to simulate the situation - it would be pretty cool to have little icons representing the different elements and let you tell the dragon which thing to pick up and when to drop off. In the meantime, though, please don't make stupid choices like walking somewhere you're in a hurry to get to when there's fast and free transportation available.

Tuesday, May 10, 2016

Return of the King

[Spoiler alerts] I finished reading Return of the King the other day. (Well I've read it before of course, but not in the last fifteen years or so.) It's pretty epic. By this point, I guess I know Tolkien's world well enough that even the rambling details seemed pretty relevant to me this time through. And again, the parts about Mordor seemed extremely vivid to me. I think that's because the experience that Sam in particular goes there resonates with me. He doesn't do very many things that are outright heroic, other than fighting off Shelob (which was in the previous book), but the author switches to Sam's perspective for that journey and makes it clear that his constant dedication to Frodo is as much a pillar of the quest's success as anything else. Not surprising that I would connect with the consistent, loyal guy more than the dynamic warriors and royalty that make up the other plot line - I guess most people would, and that's probably intentional on the author's part. In addition to Sam as character, the journey through Mordor itself is a lot like life I think. You keep putting putting one foot in front of another, half the time not necessarily knowing where you're headed or what you'll do when you get there. (Fortunately Frodo did have some sense of direction for most of the time he was conscious.) Sometimes you only succeed because things have been arranged for you (like Sam rescuing Frodo from the Cirith Ungol tower). Sometimes your trials are what propel you forward, like how Golumn covers the Hobbits' tracks so the orcs can't follow. Somehow things are just outright painful for no good reason, but you keep moving forward anyway. And while Frodo and Sam get rescued by eagles when their work is done, the book still would have been valid (if not as satisfying) if they had perished in the eruption of Mount Doom, because they succeeded. I guess it's also relevant that following their world-changing feats, most of the characters end up going back to normal life. Fortunately they're humble enough to see the value in that rather than trying to live in the past and make everyone see them for what they have accomplished. The ending is really wistful and poignant and all that stuff. I know the "Scouring of the Shire" bit was cut from the movies because it was deemed anti-climactic (not to mention time), but it really does a lot to tie things back together, showing how the Hobbit characters have changed, and that Hobbits in general have character even when things aren't peaceful. Incidentally, it's also the part about Sam that I relate to least, in some ways (besides gardening) - that he becomes a leader as restoring the Shire becomes the new quest. It's fitting that the book ends with him coming home to his family, since I guess the point of any defensive war: to make sure that families can raise children in peace. But more than that, the reader once again connects with Sam in that the epic journey and magical world have passed for him, and the reader has to close the book and go back to the real world. I guess I can't really say I've finished the book, since I think the chronology in the appendix is nice - I remember it telling how the different characters visit each other and stuff. Not to mention that it once again underscores the fact that Tolkien had a whole world apart from the story. It's amazing. Go read it if you haven't already.

Wednesday, April 13, 2016

A Link Between Worlds

At long last I started playing A Link Between Worlds last week. It is glorious. It’s intended to be a sequel (in style and plot) to A Link to the Past, and the nostalgia started flowing from the moment I started it up. The look and feel are very familiar, not to mention the landscape. And the 3D effect (which is new to me) is a nifty addition.

Like most Zelda games, this one has a “gimmick” to set it apart from other games: after the first main level, you can “merge” into walls and travel horizontally, i.e. through narrow gaps or over pits. This is a very important change, especially in such a familiar-feeling world, and there have been many times where I got stuck just because I forgot I could do that. It definitely introduces involves some clever puzzle-solving situations.

There’s also a distinctive change to the game mechanics. A Link to the Past has stood out as the longest game in the series, with 12 levels (although some are quite short). It also preserved a now-rare feature from the original game: you can often enter and even beat levels out of order. A Link Between Worlds appears to have the same number of levels, but it takes the level-reordering feature a step further in that in most cases, there is no order. To facilitate this, the levels often do not contain required items. This is a jarring change and a departure from the series. At first I was a little taken aback when the game just handed me a bunch of items near the start. (You have to “rent” them, but money is pretty plentiful in the game.) After playing it, though, I think it works. Each level does sort of focus on the use of a particular item, so you have a similar feel of solving unique puzzles in each level, and the levels do have important optional items to find. There's also a healthy supply of items to find as you explore the overworld.

Another thing I noticed is that, while the game is clearly supposed to be set in the same world as A Link to the Past, it does reinterpret the ending of that game a bit, since the Master Sword is back (despite the fact that the ending credits said it was to sleep again forever), and Ganon has apparently not been completely destroyed, as the Essence of the Triforce said he had been. But I can’t really complain about that, since those are both key elements of A Link to the Past (and Zelda in general).

My favorite thing about the game is the enemies. Pretty much all the enemies from A Link to the Past are back, and while they’re more detailed, they’re not restyled; they look like they were pulled right off of the Super Nintendo and rendered in 3D. Some of the monsters are absolutely adorable.

I’m not done with the game yet, but I imagine I’ll rank it right near the top of the series.

[Update, with spoiler alerts]
I finished the game! I'm very happy with it. I did manage to skip some should-be-obvious stuff early on, most notably the Pegasus Boots, which I didn't get until just before the last level. Likewise, I didn't know I could purchase (or upgrade) Ravio's items until that point either. At least there was still the Treacherous Tower left to do, and of course the final level, so I did get to use my stuff. I was a little weirded out that they had done nothing to explain the inverted Triforce symbol that's so prevalent, but fortunately they do explain that in the ending sequence, which was very gratifying. The game was definitely easier than most Zelda games; the only game over I saved was in the first level, where I hadn't saved intermediate progress. Later, that wasn't very necessary. I even skipped the red tunic - mainly because I think the blue one looks better, but also I suspected that I could handle the rest of the game without it. (Actually I probably could have done it with the green tunic, since I only used two blue potions in the final battles.

I will say that A Link to the Past is still my favorite Zelda title. And while the graphics in A Link Between Worlds are delightful, I doubt that people who haven't played A Link to the Past will fully appreciate their glory. Same goes for the many parallels between games. But this was definitely a wonderful sequel. Eventually I'll play it on Hero Mode and see how knowing stuff in advance balances out the harder enemies and stuff.