Saturday, June 30, 2018

Humor Rules

A few random notes to remember from Scott Adam's podcast about humor:

Adams discussed what he called the 2 of 6 rule. The idea is that there are 6 elements to make something funny. For something to then be funny, it needs to have at least 2 of the elements. If it has even more, that's better. An excellent comedian will be able to hit 3 points. A 4 of 6 is rare. The elements are:

  • Mean
  • Bizarre
  • Clever
  • Naughty
  • Recognizable
  • Cute
That's why a sitcom will always have a small child or pet, since that adds an element of cute. Adams plays with Dilbert in the recognizable realm. When he has Dogbert (cute dog wagging his little tail) say something mean, that puts him at a 3 before he has even decided on the joke.

Some corollary principles have to be considered as well.

One is that about 30% of the public has no sense of humor. They won't know a joke even if it has 5/6 elements in it.

He also discusses punching up vs. punching down. The idea is that if someone is in some type of power situation, a joke is less funny and possibly offensive for the higher power person punching down at the people below them. He discussed a few examples of Donald Trump and things he said while on the campaign trail, which now seem like he was punching down, but at the time when he was yet unelected, he was punching up. Punching up makes it more funny, because you're getting back at The Man.

Another principle is that the funnier a joke is, the more you can get away with. I think of Monty Python and the Holy Grail. I think at some point they hit all 6 points, even if not all at the same time. There are some pretty raunchy things in there that they get away with, because the rest of it is so funny.

The final principle is what he calls the Uncanny Valley. This is where if you have something that is artificial, but obviously artificial, it can come across as cute - most of the droids in Star Wars fall in this category - BB-8 is cute, because it is nothing like a living thing. But if something artificial is almost realistic but not quite, it becomes disgusting or creepy. Think here of staying at a family member's house and waking up in the middle of the night and seeing a row of dolls staring back at you. Almost realistic, and very creepy! I think the main reason for this principle is that if you're going for cute, make sure you don't cross the line into creepily almost-realistic.

Next time you need to make up a joke, grab as many of the principles as you can, make sure you punch up, and don't be creepy.

Monday, May 28, 2018

Tragedy of the Common Carrier

The Tragedy of the Commons is a well-known example in economics of how a common or public resource can be destroyed through over-use.

Adam Smith's famous Invisible Hand worked differently as he applied it to privately owned resources. Take the richest person you can find, and their wealth and resources are distributed to the poor due to the fact that the rich person will hire others to help take care of the estate. They can't possibly consume everything they own or create, and they can't take care of it either. Hiring someone poorer than them helps to maintain or grow the estate, while benefiting others at the same time. This is in some way the basis for Trickle-down Economics.

A commons, however, is a public space, with no majordomo to place limitations on its use. The tragedy comes in when this public resource is overused to the point that it becomes useless. Normally individuals acting in their own self-interest will provide a net benefit to society through their actions. The problem is that public lands can be overgrazed, roads can be shut down by gridlock, and a once-beautiful park can be spoiled by trash.

The stock market has the potential to be destroyed by those large players who manipulate it in a variety of ways.

I think our phone system has all but passed this point. Between mobile phones, the Internet, and scam calls, something major needs to happen to fix the problems that our common carrier phone system is faced with. There used to be natural limitations on abuses of the phone system, long distance calling rates being one of the biggest. There is no security system in place with our phones, as they were built as a commons, to allow anyone to call anyone if you had their number (and these were published). With the advent of free calling via VoIP, the minimal cost gatekeeper is gone, and untraceable nuisance phone calls flourish. Scammers are riding a dying wave, as fewer and fewer people have a landline anymore, and fewer people answer phone calls that they aren't expecting. There are still a few people left to scam, so they continue trying, and as they do, they hammer their own coffin even tighter.

With many messaging and voice apps available, we still have options to communicate within private systems. This requires that everyone maintains multiple accounts, in order to have the ability to talk with different groups. Those under Apple's spell are locked into their communication tools, yet there are many other providers. Facebook had gotten too big and has taken a stumble because it got away from its original mission and sold out to scammers and advertisers, so alternatives arise. It is a pain to deal with so many protocols and username/password combos, but the pain and cost is what puts up just enough of a wall to keep tragedy at bay.

Monday, April 30, 2018

Have a great summer!

About a month ago, we had our last session for the year (meeting 17), plus our demonstration night. For the last meeting, it was fairly quiet. We kept it simple and just practiced the tasks that had been previously completed. Sort of.

One of the boys had his project lost, because it was stored on a local laptop instead of being uploaded to our cloud storage with everything else. It wasn't quite done anyway, but that was a frustration that we're going to try to knock out quickly for next year, with a place to store everything right up front. So he actually picked a different task and was able to get it to work. The task to flush the toilet, which activated a waste processing plant on the other side of the field was pretty neat, yet simple enough to do it quickly.

A couple of the small teams just kind of played around, figuring that they had tested their task well enough the previous week.

One team really spent the entire time running their task over and over again.

When we got to the competition, er demonstration, we went first. I wasn't sure how far along the other teams had gotten, but as I watched them later, they had the same struggles we had.

The team that practiced all day had to run their task about 10 times before it finally worked. It was working four out of five runs in practice and then was just slightly off on the day of. Oh well. The toilet flushing also had to be run several times before it hit just right. Two of the other teams who didn't practice at all the day of had issues.

And one of the boys whose task was always working, every time, hardly ever any issues, didn't show up. And we didn't know how to run his code, since we couldn't find it on the robot's memory. If we knew he wasn't going to be there, we would have had him show us and had someone else practice running it for him. He had cub scouts instead, which is fine. It just would have been nice to know so we could show off another task performed.

We've already started talking about next year, knowing that this year was getting a foundation in place to be able to start early and be ready to do a real competition.

Thursday, March 22, 2018

Wrapping Things Up

Meeting 16 of the Robotic Dudes was fairly low key today. We hadn't met last week due to school being out of session on Thursday. Next week is our final meeting, and that evening we will hold a demonstration/competition among the various teams at the school for the families.

Some involved are very hesitant to call it a competition, favoring instead the demonstration aspect of it, but Lego talks about coopertition being a key principle of the challenges - a combination of cooperation and competition. We want to work together and learn from each other, but we also want to try hard to win. So I hope we win. ;)

We kept it kind of quiet today. We had everyone work on repeating their tasks several times to make sure everything was set up where it needed to be, with the robots pointing in just the right direction. A rotation of just a couple degrees in angle could result in the robot being several inches off from where they needed to be for their tasks.

There were one or two of the team who were starting to work on a totally new task on the complete opposite side of the field, which I tried to explain wasn't likely to be done by the time we show things off next week. In the end, I just let them do what they wanted to do.

This whole first year really has been setting us up for success next year. There are a lot of things we'll be able to look at doing different or better, in addition to having some experienced people on the team. The one thing from my observations and interactions that I'd like to see is just overall taking things a little more seriously. Now, I'm all for having fun and enjoying one another's company, so I'm not talking about being more serious. We just need some more organization and help with focusing on working on the tasks and learning more about methods of programming that will take our performance to the next level. I'd also like to not being losing and breaking parts all the time. Half the challenge board is disassembled, so we can't even do all parts of the challenge. If someone wants to do a Legos club where they just build whatever they want, someone can sponsor that, but for Lego Robotics Club, we should be building some awesome robots. I'm looking forward to that.

Thursday, March 15, 2018

Demo Day

We don't have a robotics club meeting today, since it is a half day of school. Last week, we did have our 15th meeting. We are looking at holding our competition / demonstration at the end of this month, just before spring break. The idea is then at that time, a lot of things like soccer and other outdoor activities start happening as the weather warms up and we get closer to the end of the school year. So I think once we have that demonstration, while it's possible that some of the boys may want to continue meeting, we will likely be done for the year at that point. We're looking into shirts or medals or something to hand out as a reward for participating.

So last week we worked for a while on polishing up what we were working on. We talked about being realistic and what they thought we could get finished up by the end of the month. I had each of the small teams work on what they were close on and demonstrate what they had. They didn't have to be perfect, just show where they were at, so we could judge how close it seemed like they were.

We basically have four activities that look like they are close, that people have been working on. One of them is pretty complicated and may or may not be finished. Two are basically functioning most of the time now. Every now and then they don't totally work, but as they work on fine tuning them, such as making sure the robots start from the same place every time and so on, I think that success rate will go up. The fourth task should be simple, but more often than not it ends up being kind of a brute force, run over the parts type of thing, which maybe technically works, but it would be nice if we can get that one working without knocking everything over.

It was nice to see some success. I know part of the goal with the robotics this year is to be prepared to do something bigger (and earlier) next near. Most of the tasks we've completed are fairly simple ones, close to the home base and don't take much maneuvering to get to. What would be great is if next year we could purchase the whole challenge kit and have the table ready right as school was starting. That way we could have the teams start meeting and knock out some of the basic tasks quickly, freeing them up to work on some of the more advanced parts or the ones that are difficult to get to on the other side of the board.

Wednesday, March 7, 2018

Slogging Through

Meeting 14 was last week. We had most of the team there, but with some of the things we had put in place previously in terms of organization, we were generally on task. One of the things we need to do, which was suggested by our assistant coach, is to have each group schedule a time during our meeting where they will have access to the robot. We have two robots, ours and the one belonging to another team. We share since we aren't there at the same time, so it makes a lot of sense to use each other's robots. Still, only two robots, when we have 4 teams of 2 or 3 people each, there is still a robot bottleneck.

Sometimes you can test things out in your head and build accessories and do other things that don't necessarily require the robot itself. Other times, you just have to run it and see what happens.

We have a few portions of the challenge that are there or at least close to there. One is the water filter, which is just pushing in a certain spot to slide the filter into place. Another is the rain. It requires driving at just the right angle and bumping the switch that drops the water. Those two are pretty much working. Another is the pump. That team kind of comes and goes in terms of how close they are, but it's pretty straight forward - just driving forward and hitting one of a couple different levers. Each of those three are close to the home base and just require a quick drive and pushing, sliding, or lifting a single switch. Another more complicated aspect of the challenge is removing and replacing the broken water pipe. That one is close, although we need to simplify it. Right now, he's trying to carry out the new piece, set it down to remove the old piece, and then he will pick up the new piece again and drop it into position. I think setting it down and picking it up again is going to be error-prone, so we need to talk about how to simplify that action.

There are several parts of the challenge that are missing from the board. I'm not totally sure if that is because they are just put away because they were broken or otherwise disassembled. The STEM Lab where we meet is used by several robotics teams, plus several other student groups like Odyssey of the Mind, and I'm sure there are others. The problem is that there isn't always respect for each other's things in there.

I did ask one of the team members to leave about halfway through, since he was not on task and was throwing things around the room. The kits are expensive. I'm sure we've already lost a few pieces due to things falling on the floor. As soon as they start throwing things, though, we're dealing with both losing the Lego pieces and damaging things that belong to other groups who use the room.

Tuesday, March 6, 2018

Organization

For meeting 13, we had an interesting idea from our assistant coach. Basically, we have been having problem with focus and getting the team to stick to the various assignments they had. He mentioned that he's surprised adults are able to get as much development done as they do, as they often run into similar issues. But even more for the elementary school kids, who don't have experience.

The suggestion, which we jumped on and had the team do is organize themselves into several small teams and then write down those assignments. It's not that we hadn't tried that previous, since we had, but actually writing it down and making sure everyone was happy with their assignment seemed like a good idea. For the rest of the meeting, as I saw someone wandering around or off task, I'd just ask them what their task was and if they were working on it. More often than not, they'd get back on track.

We had a couple of the teams either be able to accomplish their task or at least get close to it, which is encouraging. Others are still trying to do things that are probably more complicated than they need to be.

Friday, February 23, 2018

Inspiration

For our 12th meeting (which was a couple weeks ago), I figured we needed something to shake things up a bit. We have been using the generic robot design, with just slight changes to the arm out front, so I looked up several videos showing teams who have created a variety of different types of robots to solve as many parts of the Hydrodynamics Challenge as possible.


We watched three different ones, with all very different approaches and takeaways. Above is one of the three videos we watched. The main takeaway is that they were very creative in how they built the base robot and the various appendages to perform all the tasks. They also aimed to solve several tasks back to back, so an arm might move one way to drop something in a certain place and then it moves back the other way to slide a piece somewhere else. They even left pieces out on the field if they were no longer needed.

They have been mostly trying to program the robot to move around and do things with the simple arm, but this opened them up to the idea of building more, which they were excited about. One thing we do need to come back around to is the idea that they need to build the machines as simply as possible and in a way that they won't break easily. A few of the team were trying to activate a lever and used a bunch of complicated gears, when just a bump with a large arm would have done the job.

Our helper was missing for this session, but we were largely focused given the inspiration provided by the videos.

Monday, February 5, 2018

The Help Has Arrived

For our eleventh meeting of the Robotic Dudes, we had a helper come, which was great to see. We had three of the team missing, which helped it be a bit calmer, plus having an assistant coach shifted the dynamics a bit.

We had two groups working on solving various tasks in the Hydrodynamics Challenge. There were still a couple of boys just sort of wandering around and one who left early. One of the teams just had to have the robot drive forward a couple of feet and lift a lever to dump out a water barrel. They came pretty close to getting it to work. Another team was trying to pick up a broken pipe, but that team had to get the robot to navigate quite a bit further before grabbing the pipe, so more room to be off slightly. I think they need to use the light sensor to turn based on when they hit some guidance lines on the ground.

I attended a Vex competition a week or so, which my nephew was competing in. I had signed him off on the Robotics Merit Badge and thought it would be a good idea to come check out how Vex works. It is similar in some ways and different in others to how the Lego Robotics works. With Legos, there are many more intricate tasks to perform. The precision required is pretty crazy. With Vex, the tasks are more gross motor, picking up or pushing around plastic rings about the size of a donut. Also with Legos, only one team is on the board at a time. There are two boards side by side running concurrently, and there is a part where you can drop something on the other side of the field, but it is very minimal interaction. With Vex, you're on the same board so can run into each other, but you actually work in cooperation with each other for part of the challenge. Legos is completely autonomous, while Vex has both autonomous and remote control modes.

Tuesday, January 30, 2018

Pseudocode

Last Thursday we had our 10th Robotic Dudes meeting. It started a bit slow with people running around again, and we had another discussion regarding the need to focus. I think it may be starting to sink in that they're not going to be able to continue coming if they aren't actually working on something.

We are supposed to be getting another helper, a USU student with some programming background, who will be coming to help with crowd control and answering questions. At this point, we really need to get going on programming. Of course, that wasn't helped much when we showed up and all the computers that are normally in the STEM Lab were gone. So we talked about pseudocode, which is a way of stepping through the logic of a program without actually writing code.

I had the boys grab their notebooks and write out how they could logically work on certain tasks. I think it was good, but they needed to be a bit more detailed in their pseudocode. They would write things like drive forward and lift the lever, instead of how it would know how far it had gone or what type of motor would be activated to lift the lever.