Right-sizing Minecraft (A Whirlwind Exercise in Scientific Notation)

Tags

, , ,

This post is part of a series that Leo and I are developing about teaching math through Minecraft. The topics of this post are (a) estimation, (b) giant numbers, (c) binary [as in computer representation, and powers of 2], and (d) thinking in scientific/exponential notation. You can see some of our other posts related to Minecraft math here, herehere, here, and here, and we’re working on two big ones that will be posted soon.

Leo has been playing a lot of D&D recently (somewhat instead of Minecraft, which is probably a good thing). He likes to play the role of DM, but he’s not great at creating concise, solvable challenges with good clues, so the players end up wandering around in an infinite space, wondering what to do next. 

I hypothesized that he prefers this of world because this is how Minecraft works; The size of the Minecraft world is indirectly constrained by the 64 bit arithmetic limits of the computer. The worlds are 60M blocks wide in each of the X and Z directions (the ground coordinate space in Minecraft is XZ; Y is up and down; it’s only 256 blocks in the up and down direction, Y). Actually the world only goes to 30 million blocks in each direction, not, as one might expect, 2^63, which would be 9,223,372,036,854,775,808. The reason they limit the world to only 30M in each direction (60M edge to edge) is that graphics and physics algorithms, which depend upon real value math start to break after that point, and weird stuff starts happening, like the hit boxes surrounding blocks are anomalously separated from one another letting you you fall through invisible cracks, and such like nonsense.

Regardless, a 60M block squared space is plenty big. Too big, in fact! Each world is so big, and there are so many possible worlds, that Minecraft should probably be called Wanderworld instead! 

So, how big should Minecraft be? How would we figure this out?

We started with the hypothesis that Minecraft would be more interesting if the density of “interesting” worlds was high enough that the community of ~100 million active players could effectively explore the entire universe, and share interesting findings with one another. One way of approaching this is to ask: If every active Minecrafter was in the same world, how much space would they each have?

Mojang claims that there about 100M active Minecrafters. We’re not going to worry about what “active” means, and just take Mojang’s word for it. That’s 1e8 players. And the world is 60M^2 square blocks (sqb), which is ~6e7*6e7 = ~3.6e15sqb. Divided by 1e8: 3.6e15/1e8=3.6e7sqb/player, and the square root of that is 6e3, or 6,000blocks. So if every active Minecrafter was spread across a single world, each one would have a 6k-by-6k space to explore and build in. The maximum flight speed in Minecraft is about 10 blocks/second, so it would take you ~6000/10=~600sec=~10 minutes just to fly across your space, much less do anything in all that space! Why would anyone need more?!

Unfortunately, the Minecraft universe is WAY bigger even than that, because the world generation algorithm is controlled by a 32 bit randomly generated random number seed. So there’s actually ~4.2e8 (precisely: 4,294,967,296) of those 3.6e15sqb worlds, so the total Minecraft space is ~1.5e24 square blocks! 

Since a Minecraft block is supposed to be about a cubic meter (sq. meter since we only care about surfaces here), it’s interesting to think about how to compare this with the REAL Observable Universe (ROU), but it’s not entirely clear what the right comparison is. The radius of the ROU is ~4.5e26 meters, so its 3D volume (using 3 here for pi in all cases) is (4/3)pi*(r^3) = ~3.6e80 cubic meters. But that’s not quite the right comparison because every Minecraft world is the same size, so it’s really more like you have a giant cylinder of the radial ROU circle. That radial circle is pi*(r^2)  = ~4e15 square (1 meter deep) blocks, and stacking 4.5e26 of those on top of one another is ~2e42 cubic blocks. This  cylindrical ROU is about 2e24/2e42 or about 18 orders of magnitude larger that the Minecraft universe, including the random seeds. Okay, so it’s not even close to the size of the Real universe, so it’s not THAT ridiculous, still….

(By the way, along the way to all this, we noticed a useful fact, which I’m sure is not novel, but is at least vaguely interesting. Turns out that because log(10,2) = almost exactly 0.3 (actually 0.3010…), by the trick for computing logs of random bases: log(b,x)=log(n,x)/log(n,b), if you use n=10, which is easy to estimate for any decimal number, turns out that the number of bits needed to represent any number is approximately the number of digits in that number number divided by 0.3 (or times 1/0.3 i.e., times 3.333…). So, let’s say that there are 80 million Minecraft players, being 1e8, or even better, using the first digit in the tenths place, and backing down one order of magnitude, that is: 8e7, and reversing those to 7.8 (because you care more about the order of magnitude than the first digit, which is actually just a correction), the number of bits you need to represent these uniquely is about 7.8 * 3.3 = ~25.75, or about 26, and in fact, 2^26=~67million, which is pretty prefect! Although in reality we’d want to err on the high side at 27 bits.)

Okay, so back to the question how to right-size Minecraft.

So, let’s say that the worlds are only going to be 6k square, and we’re going to make the topo generation algorithm always create interesting topographies and biomes in each of these worlds, and we want to allow, say, a reasonable number of players, say, 32, play each of those in order to explore it fully for it interesting properties. How big does the random seed need to be? Well, that’s 1e8 players / 32 (close enough to 33 that 1/3rding works well) = ~3.3e6 worlds, and by the above magical algorithm, that’s 1+(6.3*3.3) =21 bits, and just to check: 2^21 = 2e6 * 3.2e1 = 6.4e7 = 65 million, which is just about right!

Whew!

 

Understanding and Explaining Math, and My Teaching Philosophy

Tags

I think that I’ve done pretty well with Leo in math. Of course, I’m biased, so don’t take my word for it; We recently got back the results of a standardized nation-wide math test that Leo took at the end of last year — that is, at the end of 4th grade — on which he scored …well, without getting into too much detail, let’s just leave it at, pretty darn well, scoring well above his grade level.

Now, granted, being a US Standardized test, the performance expectations are not extremely rigorous. But off the strength of that confirmation that we’re doing something right, we decided to kinda go for a reach goal, and set Leo’s 5th grade personalized math goal is to get 80% correct on the real SATs (possibly including sitting for one at the end of the school year!)

Now, there are a few issues with Leo’s math. One is that although Leo can definitely do a lot of math that’s well beyond his grade level, he’s really bad a explaining himself — what’s sometimes called “showing your work”, or even just explaining it to me (so it’s not just a problem with writing things down in an organized way, although he definitely has that problem as well)! This is a problem, but it’s hard to tell whether this is a math problem; Explanation is in-and-of-itself a huge separate skill and a topic that I’m planning to write about separately.

A related question is whether Leo actually “understands” what he’s doing? That is, even if he can get the right answer, does he “understand” the underlying principles?

Like “explanation”, “understanding” is a huge and complex topic that deserves its own treatment. One way in which explanation and understanding are related is that you pretty much need to understand what you’re doing in order to give a coherent explanation. The opposite is a little more complex: It may be that Leo can’t give good explanations because he doesn’t really understand the math he’s doing, or it could equally well be that he’s not good at giving explanations, which is (as above) in-and-of-itself a complex skill. The fact that he gets the answers right is some evidence to the positive, but the question remains a valid one; he could just be very good at rote procedures.

Now, before going further, there’s another very difficult problem, that is, what does it actually mean to “understand” math? I’m obviously not going to deal with that here; I’m not even competent to deal with that; I’m not sure anyone is. That’s more like a matter for philosophy of math, not my areas of expertise, which are closer to cognitive science.

So, not dealing with either of the hard questions of what understanding or explanation really are, I think I can address the “Does Leo actually understand what he’s doing?” question pretty clearly in practical terms. At the same time, I’m going to explain something about my teaching philosophy, because these are closely connected.

In a previous post I wrote a brief aside about my “educational (or teaching) philosophy”. Here’s what I wrote there: “[O]ne of its pillars [of my teaching philosophy] is this: You only get people’s (esp. children’s!) attention for a couple of minutes at a time, so be sure to do tiny fun things, and build them up over days, weeks, months, and years to reach where you want to go.”

As stated, this is only “one of” the pillars of my teaching philosophy. Actually, a much more important principle is one that I was inspired to by an actor who I happened to hear interviewed on the radio (probably Fresh Air), many years ago. This particular actor’s family moved to France when she was a child. She did not speak any French, and the interviewer (probably Terry Gross) asked if that was hard? In response the actor said something like: “I’ve never thought that I needed to completely understand everything I read the first time through.” (Nb. I’m paraphrasing, of course, as I can’t remember the exact words. This is probably not at all what she said, but it’s the bit that I recall.)

One of the reasons that this idea spoke to me is that I have had exactly the same experience with every math course I’ve ever taken! I floundered the first time through pretty much every advanced math course, but the second or third time I encountered the same topic, I understood more of it, and then even more of it, until I pretty much got it entirely.

From these two thoughts — First, that you shouldn’t expect to understand every concept involved in what you are doing in detail the first few times you encounter them, and Second, that you only get people’s (esp. children’s!) attention for a couple of minutes at a time — comes my entire teaching philosophy: Grab kids attention by working interesting and challenging problems from very early on, and don’t worry too much about whether they understand everything about what’s going on, and repeat a lot. If you can get and keep kids attention as they encounter the same concept 10 then 20 then 30 times in 10 then 20 then 30 different interesting settings, they’ll understand a little more at each level, until they pretty much understand everything there is to understand about it…or at least enough to count as a high school or undergraduate “understanding” of math.

Importantly, this isn’t the same theory as “throw ’em in the deep end and they’ll sink or swim”; it’s closer to scaffolding, but a version of scaffolding where you do interesting problems, no matter how hard they are (or almost no matter, anyway), and work them together, and eventually, after doing 10 or 20 or 30 problems that conceptually overlap one another, they’ll have got it all figured.

The key is to keep it fun, and, frankly, early math just isn’t all that much interesting. So instead we mostly work AoPS AMC 10 and 12 contest problems,  SAT practice problems, and as many math puzzle books as I can get my hands on. (Yes, the ones from Martin Gardner, of course, but there are so many more, and his are good, but actually aren’t actually the best!)

Returning the question of whether Leo actually “understands” — whatever that means — I want to give an an example that came up just this morning, which I think points this out perfectly. We were working this problem from an SAT practice test:

Screen Shot 2019-11-06 at 4.35.41 PM

Which comes from here: https://cdn.kastatic.org/KA-share/sat/2-5LSA08-Practice3.pdf

The SATs, or at least the SAT practice tests, are apparently intentionally confusingly written. The extra “a” factor, and using “c” and “d” to represent the vertex, are just extra confusing pointless noise. I was even having trouble figuring this one out, even though, as you’ll see in a second, it’s actually nearly trivial. (There’s another problem in this same test that’s even more confusing; I showed it to a mathematician and even he was confused by it!)

I tried to talk Leo through turning it into vertex form, and a couple of other over-complex approaches. It was simple enough to approximately plot the parabola, and find the zeros, esp. as they give you the factorized form, so you can just read the zeros off!, But the “a” was throwing us off … how does the “a” play into it? If you had the polynomial form, you’d have an “a” in every element of the polynomial…what role would that play?

Leo actually figured this problem out before I did (although, in my defense, not a LOT before I did! 🙂 If you know the zeros (-4 and 2) then the vertex of a parabola is always half way between them. 🤦🏻‍♂️!!! From there it’s easy: Set a=1 to get it out of the way, then half way between -4 and +2 is … actually, we got this wrong at first … forgot zero! … it’s -1 (best to use the mean: (-4+2)=-2/2=-1), and then plug x=-1 into the equation, and, voila: -9. The “a” is just a scaling factor, so the answer is A: -9a.

(Just for fun — if you can call it that — we confirmed the zeros by cross-multiplying the factors into the polynomial form (aka. FOIL) and applying the quadratic formula.)

Leo made one other interesting observation, while we were considering this problem: For some reason we started talking about higher degree polynomials; I don’t recall why. I pointed out that when the degree of the polynomial is odd, X values less than zero go to  decreasing Ys (because odd powers of negative numbers are negative), whereas Xs greater than zero go upward (even powers of negative numbers are positive!), resulting in the famous twisty form of the plots of odd-degree polynomials, and the famous parabola of the even ones.

Pondering this briefly, Leo said, excitedly: “Oh, I can use that to figure out whether infinity is odd or even, by plotting a polynomial of degree infinity, and if it has the left-down shape, then infinity is odd, but if it goes up, then infinity is even!”

I’ll have to think about this, but not too hard. My sense is that there’s some bug in this thinking; a the very least, I’m not sure you can plot a polynomial of degree infinity (infinity isn’t really a number — that’s one of those concepts that Leo’s about half-way to.) But, still, even if his assertion isn’t completely sensible, at least it’s coherent. It’s sort of like learning French by just moving to France — you get a few words and phrases here and there, and you hook French culture to your own understandings, and build on them over time, and eventually, you’re French!

So, does Leo “understand” all this? Well, he realized how to find the vertex (shortly) before I even did, and is coming up with interesting, if slightly outlandish, hypotheses about polynomials of infinite degree. So, okay, maybe he doesn’t get some aspects of this area of math, but heck, I probably don’t either; I learn something new almost every time we work an advanced problem together!

All in all, I’d say we’re both doing okay so far, having fun with math!



 

The Three Best Science & Math Channels on YouTube; And One Video from each that will Blow Your Mind

Tags

, ,

Leo and I do a lot of our learning from YouTube (as does everyone these days, of course!) In other posts I’ve listed some of the channels we subscribe to, and I should update that. But I want to give a shout-out to three terrific science ed channels, and to one specific video on each that just blows my mind about how great scientific and mathematical explanation can be:

Vsauce

VSauce (which has several sub-channels now) is chocked full of terrific scientific explanations, but this one is just head and shoulders above anything that I’ve seen anywhere else:

 

3Blue1Brown

Although way less broad than Vsauce, the mathematical explanations in 3Blue1Brown are the best I’ve ever seen, anywhere. This one is particular mind-blowingly clear about a particularly mind-blowing part of the core of mathematics:

 

DR PHYSICS A

Much more boring in style than either the above two, and much much more detailed, Dr. Physics A does the clearest detailed physics derivations I’ve ever seen. He works through all the algebra step-by-step in what should be really really boring, but for some reason that I don’t get, it actually really really gripping. (Something about his “Queen’s English” accent adds to the fun; like you’re getting your physics from James Bond 🙂 All of his videos are great, but this little 5-parter that goes from zero to E=MC^2 is just so crystal-clear I can watch is again and again and just appreciate more and more how great explanation can be:

 

Honorable mention to PBS Space Time. Unfortunately, they’re a little long for their depth and detail. Even though it’s just pen-and-paper, compared to Space Time’s fancy CGI, Dr. Physics A wins hands down on coming out the other end understanding what’s really going on. (The Space Time guy also has a sort of cool accent; I think it’s also English (as in British), but not as “Queen’s” as Dr. Physics A, so not as much fun.)

 

PiWords (Magic Squares in Pi)

Tags

, ,

A “PiWord” is a sort of crossword puzzle/magic square where you can find the across and down digits in the digits of Pi. Because Pi is transcendental, if you go out long enough you’ll be able to find any number you like, so you can obviously create a PiWord that is as large as you like and containing any numbers you like.

But if you constrain the number of digits of Pi you’re allowed to explore, it get’s a LOT harder. For example, here’s one that is entirely within the first 1000 digits of Pi:

Screen Shot 2019-10-11 at 9.34.10 AM

The numbers along the right and left are the locations in Pi where each of these across or down 4-digit sequence is found (where the leading 3 is at location 1).

There are many non-trivial (i.e., not repeating the same sequence) 4×4 PiWords within the first 1000 digits.

If you go down to a 3×3 PiWord you can find 2 within the first 50 digits of Pi.

Here’s one:

Screen Shot 2019-10-11 at 9.43.00 AM

I’ll leave it as a challenge to the reader to find the other! (Hint: It uses some, but not all of the same 3-digit sequences as above.)

(Note: Of course, every PiWord solution has another using the same numbers just flipped across the main diagonal. That’s obviously cheating, and doesn’t count as a separate solution!)

Another interesting challenge is to write the program needed to find these. Finding 3×3 PiWords in the first handful of digits, like the challenge just above, can be (barely) done by inspection, but anything larger pretty much requires a computer! (I, of course, wrote a version to get the 4×4 above. I would share it with you…but where’s the fun in that!? 🙂 )



 

I Like Math (a poem)

Tags

,

(Leo had to write an essay introducing himself to his math teacher. We were reading “The Friendly Book”, by Margaret Wise Brown, to Ada, and got the idea to do a math poem in that style. Leo mostly wrote this himself, although I made some suggestions about rhyming and meter.)

I Like Math
   By Leo Armel
       (In the style of Margaret Wise Brown)

I like math

I like numbers
Big numbers
Little numbers
Rational and irrational numbers
Negative and positive numbers
Simple and complex numbers
Integers and reals
I like numbers

I like Pi
2pi
Root pi
e to the i pi
Pi r squared
Blueberry pie
I like pi

I like logs
Log base 2
Log base 3
Log base 10
Log base e
I like logs

I like shapes
Circles, squares and right triangles
1D 2D 3D shapes
Regular and irregular shapes
Fractals and monster shapes
Concave and convex shapes
I like shapes

I like graphs
Line graphs
Bar charts
Pie charts
Error bars
I like graphs

I like operators
Plus minus times divide
Roots and powers
Integrals and derivatives
Factorials and combinations
I like operators

I like functions
Linear functions
Exponential functions
Quadratic functions
Trig functions
I like functions

I like angles
Acute angles
Right angles
Obtuse angles
Straight angles
Reflex angles
I like angles

I like calculators
Programmable calculators
Graphing calculators
Wolfram Alpha and online calculators
Human brains
I like calculators

I like math



 

Physics Camp

Tags

, ,

After the moderately positive experience of Chem Camp, we decided to do a somewhat more abbreviated home Physics Camp, with Leo’s same friend, Connor in the two days before school started this week.

This didn’t go nearly as well as Chem Camp, mostly, I think, because Leo and Connor were significantly more distracted by one another, and so much less on task, mostly spinning off into MineCraft micro-conversations. (For some reason that I just don’t get at all, Minecrafters, and esp. Leo, are fascinated by the version history of MineCraft — what features/bugs got added/fixed in each version. Leo watches videos about this all the time, and for some reason loves bringing up old versions and re-living the bugs. Speaking as someone who spends a very large amount of my time squashing bugs in complex programs, intentionally reliving old bugs is about the farthest thing from fun that I can think of, short of self-inflicted physical pain! This said, Leo has learned a great deal about common causes of bugs from this fascination, esp. regarding floating point arithmetic problems.)

So, Physics camp included these topics:

  • Gyroscopic phenomena (via this terrific gyroscope kit)
  • Sound waves (via an electronic keyboard and oscilloscopic iPad app)
  • Minimal bubble surfaces (using shapes created with zoomtool; pic below)
  • Energy transfer (via Rube Goldberg Machines)
  • Dynamics (via normal and chaotic [double] pendula; pic below)
  • Optics (via lasers and lenses)
  • Work and Mechanical Advantage (via complex pulley arrangements)
  • Magnetic fields (via strong microwave oven magnets; pic below)
  • Electricity and magnetism (moving magnets creating current and v.v.)

I regret that I didn’t get to much formal computations, and also that I didn’t take as many pictures as I should have, but here are a few:

Building, and then running, the chaotic pendulum:

A great “hypercube” minimal bubble in a cube:

IMG_1692

Best invention of the week was microwave magnets on a PVC pipe separated by electrical tape:

IMG_1751

(Trying to demonstrate the Left Hand Rule for electromagnetism on our high power magnet apparatus.)

The tape and pipe keep the magnets from snapping together and breaking, or pinching fingers!



 

PyCraft Alpha 1.4.0_01

Tags

, , , ,

I think python camp ended up being pretty educational, even if we didn’t meet all of our goals. The curses version of Leo’s MineCraft-In-Python (aka. PythonCraft) actually ended up pretty well, and we did some actual pretty interesting algorithm coding, and even a little computational complexity. Unfortunately, we wasted pretty much a whole day trying to translate the game into pygame, which would have provided way better graphics. But that ended up being beyond Leo’s capabilities, and although I could have done it for him, that would have defeated the purpose, so we just fell back to the curses version.

Previous version (Alpha 1.3) had the basic world and player, and some pretty good terrain generation, and at some point we added survival mode as well. 1.4 introduced water and npcs (mobs, in Minecraft parlance). Each of these actually involved interesting new algorithm design. In the case of water, the blocks had to “flow”, so that would fill space “gravitationally”. How to do this is actually non-trivial, but after lots of experimenting we more-or-less got it to work. Here’s an image of how water ends up  sort of filling a valley. The waters are = signs, and the player is the *. All the water blocks in the valley were originally dropped in the same column, but moved to fill the valley. Notice that there’s room for improvement in the algorithm as it made a sort of pyramid:

Screen Shot 2019-08-16 at 2.06.18 PM

Mobs were also very interesting. Leo invented a nice mob placement algorithm so that the would end up mostly in caves (although sometimes on the surface as well), and then we did a nice mob movement algorithm that would make them move toward the player. Of course, there were failures along the way to this as well. Some shots of the results of various “approximations” (aka. major bugs! :-):

 

 

But the thing did work out in the end (here the player is being chased through the air by 2 zombies and a creeper — yeah, they can fly … minor bug!):

Screen Shot 2019-08-18 at 3.56.22 PM

As before, all the code is in the github repo.


2019-10-11: After much thought, we improved the water flow algorithm in a rather simple way, which ended up greatly improving it. Now water not only tries to flow downward, which is what was causing the pyramids, but also randomly left- or rightward, so that it’s always in a sort of random walk, eventually finding its lowest possible level. As you can see, this has greatly improved things; the water now seeks the lowest space and spreads out, filling space at the bottom, just as normal water does:

Screen Shot 2019-10-11 at 10.06.30 PM

This still lacks a bit of reality, in that it won’t hydraulically flow upward through a hole, as there’s no actual water pressure. But at least it doesn’t create weird waster pyramids!


 

Pycraft Alpha 1.3.0

Tags

, , , , , , ,

We ran out of camps this summer, so I decided to keep Leo home this week and do intensive programming “camp” (sort of like Chem Camp, but just with Leo.)  Also, I’m finally making good on my theory that kids should only be allowed to play computer games that they program themselves.

The rest of this post (with the exception of the * footnote and related content), is Leo’s own words:

Pycraft is a project I (Leo) have been working on with daddy. We started this about 2 weeks ago and it has gone very well! Here is a link to the github repo(*) with the code. Feel free to post issues, it would be useful! Known issues: If you click while moving it crashes, and you can erase the text at the top.

What I learned so far: Python programming, git-based version control(*), curses based graphics(*).

Coolest hack: Pythagorean theorem distance calculations(*)

Next steps: Survival, and eventually going to more sophisticated graphics(*), probably via pygame. 

Here’s a screenshot:

Screen Shot 2019-08-13 at 4.36.32 PM


(* Indicates were I (daddy) had to provide the correct name for something, so this is my (daddy’s) words, not Leo’s)


 

Saint-Saens, Python*, Bach

Tags

, , ,

Leo and I have started into some fairly concentrated programming practice. We’ve done some light programming before, but it’s time to get into it for real.

Because you only have a kid’s attention for a few minutes at a time, you need to take maximum advantage of that obvious truism of learning: practice makes perfect (“How do you get to Carnegie Hall? Practice practice practice”, “The power law of practice”, etc.)

When Leo plays piano, he does a few a warmup exercises. (A better way to say this might be: “…I make him do a few warmup exercise.”) His go-to pieces for warm up are Saint-Saen’s Danse Macabre and Bach’s “Little Fugue” in G-minor.

He also does (…I also make him…) do a couple of programming warmups, specifically, factorial written iteratively, and recursively.

(The actual program we’re working on is a learning version of the animals game, which is nicely recursive. I’ve blogged about this before, but this time Leo is writing all the code.)

It dawned on me this morning — during a discussion of how stack overflow differs from numerical overflow — that there is a beautiful, if accidental, alignment between his piano practice and his programming practice. To wit, the central motif of the Danse Macabre is the rapidly played dance theme, which is very repetitive. On the other hand, The Little Fugue is more complex and, as described in great detail by Douglas Hofstadter, in Godel Escher Bach, is fundamentally recursive (or more generally, self-referential, where recursion is a particular version of self-reference.)


* I hate python; Unfortunately, it’s more useful than Lisp, these days, and we do a little Lisp too, when the moment affords.


 

Conning the Con Men

Tags

While doing something more-or-less mindless the other day I got a call from one of those scams that tries to sell you, or refund you some kind of computer services. They claimed to be from Microsoft or Dell, I think.

Because the thing I was doing was pretty boring, I decided I would endeavor to keep the scammer on the phone as long as possible, as I feel that it’s my moral obligation to save other people who might not realize these are scams from them, even if just for a while.

This turned out to be quite fun and took extensive improvisational creativity.

The first thing he tried to get me to do is to open a desktop sharing application, which I obviously was not going to do, but I let him give me the URL anyway. He was reading from a script and carefully said (in paraphrase): “Type in w- w- w- dot- T- as in tomato, H- as in the house, etc.” (I’m changing all the URLs so as not to accidentally point you, dear reader, to anything bad — and I don’t actually remember them.) Of course I wasn’t typing in anything anywhere, but I diligently repeated back everything, but then told him that I was getting “no server found” errors.

He asked me to repeat back what I had typed in (I hadn’t!), so I repeated it exactly: “w- w- w- dot- T- as in tomato, H- as in the house,…” After several minutes of his trying to talk me through fruitless debugging I tried to give him a hint by asking whether “tomato” had an “e” in or not, because I might have spelled it incorrectly. It took my repeating this question a couple of time before he got that I had typed in (or pretended to type in) “www.tasintomatohasinhouse…” 🙂

Of course, he angrily corrected me on this, and we started again. And at about 15 minutes in, he realized (after my dropping multiple hints) that I was also (supposedly) actually typing out “d-o-t” instead of using a period!

Fun!

Having got all that figured, I was still getting “no sever found” errors (or so I claimed), and he finally devolved to asking me whether my internet was working.

“I don’t have internet,” I replied.
He was incredulous. “You don’t have internet, then how were you going to use our service?!” (or something to that effect)
“You asked me to open the web browser. I’ve never used it before.”

At this point, maybe 20 minutes of time saved from other poor souls, the call devolved into absurdity, as he first tried to talk me into turning on my internet (“But I don’t have internet at all.”) and then, amazingly — I guess not wanting to drop one of the only hot leads he probably ever had — he tried to talk me into going to a store and paying $500 for an LTE internet card to get internet so that he could continue the scam! “But why would I want internet?” .. and so no.

Okay, okay, so he gave up on the internet, and simply tried to talk me into going to a store and buying him a $500 Google Play gift certificate and he’d call back and I’d give him the number. (Yeah, right!)

It took a bit more creativity to get out of this. (Note that we’re up to at least 1/2 hour of saving other people from this scam!)

Me: “Okay, I can get that in about 2 weeks.”
Him: “2 weeks, how could it take 2 weeks?!”
Me: “I live in the middle of nowhere, I get to a store where I could do that about every couple weeks.”
Him: “You don’t have a gas station, or something nearby? Give me your zip code I’ll look where you can go.”
Me: “Okay, hold on, I have to look it up online.”
Him: “Okay” (Note that it didn’t occur to him that my looking this up online means that have internet! Nor was it enough of a clue for him that I don’t know my own zip code! What I was really doing was mapping some random zip code in the middle of Nevada.)
Me: “Okay, here it is….”
Him: “Okay, so do you know where <some random town> is?”
Me: “Sure (I don’t!), but it’s 100 miles away, so I get there about every two weeks.”
Him: “It takes you two weeks to go 100 miles? Why don’t you just go and come back later today and I’ll call you back.” (He was really pushing hard at this point!)
Me: “The tractor only goes 10 miles per hour, so it takes all day just to get there.”
Him: “Tractor?! What do you do?”

We’re up to, like 45 minutes now, and I’m getting so tired carrying on with the “Yes, and…” improv anti-scam bit that at this point I made a critical error, and, as they say in the con game, “cracked out of turn” What I should have said was something like: “I’m a miner.” (or a farmer), but I blew it:

Me: “I’m a computer scientist.”
Him: …. long silence …. then (screaming at me): “You are trying to waste my time!”
And he hung up on me.

But I feel like I saved some other poor sucker from being scammed…probably more than one, and it was fun!


(Ps. Bizarrely, he, or someone else from his “office”, called me back several days later and tried the same con. The reason I know it’s the same office is that at some point I gave a false name to the first caller, and the person who called me back used that same false name. They must not be very good at notating which phone numbers are cold leads. This time I just hung up on him.)