Easter Egg Hunt 2017
Posted: April 17, 2017 Filed under: Creations, DIY, Explorations, Getting A Clue, That Totally Worked, Uncategorized | Tags: chocolate, colors, Easter, easter egg hunt, easter eggs, fonts, logic, puzzle, puzzle hunt, puzzles 2 CommentsOh, we love our Easter Egg hunts.
Oh, we love our Easter Egg hunts. As the girls (now age 14) have grown from little kids, to tweens, to actual teenagers, what started as a simple find-the-hidden-eggs game has grown right along side them; it’s now a full-on multi-stage puzzle hunt. 2014’s hunt involved complex interlocking rules. 2016’s hunt involved cryptography and QR codes. Now, here’s how 2017’s puzzle unfolded…
Simple
The rules were simple: each girl would be assigned a couple of colors, and each girl could pick up any egg she found once she was certain that the egg matched one of her colors. Easy, right? Further ‘simplifying’ things, I announced that I had placed one giant colored egg on a pedestal with each girl’s name (and one for the parents), so all they had to do was look at the pedestal with their name, and they’d see their first egg color. I showed them all a picture (below) of how nicely I had set it up, and how easy it was going to be.
But when we got outside to start collecting eggs… quelle surprise! The wind seemed to have blown the eggs off their pedestals! How ever would the girls know which color was theirs??
Luckily, each pedestal contained a set of instructions for figuring things out in case of just such an emergency:
The girls retreated to the kitchen to pencil-and-paper this problem. After a few minutes, they’d worked it out with Rebecca offering supportive coaching (but not giving away the answers even though she’s great at these puzzles). The girls hastened outside to each crack open their correct-color giant eggs.
Inside each giant egg was a message… and another, smaller egg.
Inside the smaller eggs was some chocolate, which was immediate consumed as much-needed brain fuel. And there were also some scraps of cut up paper with writing across them — clearly they needed to be reassembled. The girls hurried back inside, and taped the paper back together, revealing four trivia questions about opening magical doors. (Full credit here: Three of these riddles were written by Ryan O’Boyle for Veracode Hackathon 10 & 5/7ths. His riddles were great, and inspired me to add one additional one of my own.)
It just so happened that the team included a Tolkien expert (Norm), and several Harry Potter fans (everyone but me) so the answers were quickly found. Bonus points to Abby for remember the spell “Alohomora”, and to Eleanor for remembering that the Ministry of Magic’s phone booth code was “M A G I C” on the telephone dial — and then using the Phone app on her iPhone to look up what numbers that was.
But now what? The girls still needed to know what colors of eggs they each were looking for, and all they had were these trivia answers — definitely not colors. Well luckily the third giant egg, the one for the parents, contained a “Helpful, Quick, and Easy Egg Color Key!” with some hand-wavey formula clues on it about how to transform the trivia question answers into numbers.
By considering a=1, b=2, etc., and adding up the letters in each trivial answer (and after I fixed a typo..oops), the girls arrived at numeric values… but still no colors. It was more or less at this point that Eleanor started invoking the word “patricide” in her running commentary.
Working through the formulas provided on the key, the girls had figured out that the variables k=112, j=250, x=147, and y=248, so, again, they had some numbers, but no colors. The key said that one color was y,y,x and the other color was k,j,k.
“But how are those colors?”, Rebecca asked, and there was a moment of silence.
“HEX CODES!” Eleanor exclaimed, and the chase was back on! Using an Internet color code converter, the girls converted 248,248,147 into yellow, and 112,250,112 into green. Colors at last!
Now with each of the girls knowing exactly which egg colors were theirs, they scooted out to the yard. Within just a few minutes, they’d found all of the (poorly) hidden eggs, collected them, and returned to the kitchen inside to savor the chocolate goodies within.
Then came the screams.
Then came the screams. For inside each egg not only was there a tasty bit of chocolate, but also… more sliced up message fragments. There was clearly another part of the puzzle. Madly, the girls sorted out all the pieces and assembled them:
The team stared at this for a while, and then started discussing the fonts: Papyrus, then a font that no one knew the name of, then Times, Comic Sans, and Helvetica (with a quick argument about Arial… ending with “Well, young lady, in this house, we use Helvetica!”). Could the five-letter word that the clue was asking for be made from the initials of the fonts? P_TCH? PATCH was considered for a minute, but when the girls hit on PITCH, the hints about “pining”, “note”, and “curveball” all clicked!
Using PITCH, they completed the partial URL and typed in http://tinyurl.com/2017EGGPITCH What came up at that URL was a photograph of the front of the house, with a big green arrow.
The girls practically flew out the front door, flipped over the flowerpot in the picture, and were rewarded with a glass jar filled with glittery treasure eggs, yet more chocolate, and a note saying VICTORY! CONGRATULATIONS on SOLVING the 2017 Easter Egg Hunt!
Happy congratulations were shared all around, and everyone enjoyed some of their hard-won chocolate.
With the puzzles finally solved, and chocolate fully secured, Eleanor finally stopped repeating the word “patricide” over and over, which she’d started saying nearly an hour before.
For the record, the total elapsed time was 56 minutes, 42 seconds — including the time it took for me to fix the typo in the math key (oops), and the time that Eleanor spent repeating the word “patricide”.
Maybe next year I’ll start making the puzzles hard.
#68: Clearway, For Inventing CDN
Posted: July 13, 2016 Filed under: Coding, Creations, Explorations, Getting A Clue, Reflections, That Totally Worked, Uncategorized | Tags: cdn, clearway, firesite, invention, inventions, patent, patents, startups Leave a commentBear with me here, because about 200 words from now I’m going to make a huge brag that I hardly ever talk about these days. OK, thanks. Let’s go:
In January 2001, “Web Hosting Magazine” published their “Top 100 Awards” issue.
Clearway Technologies, a company that I founded, shared an award for “Fastest Growing New Market: CDNs”. C.D.N. stands for “Content Delivery Network”, a system of helping deliver web pages, images, and videos faster over the Internet; the CDN that some people may be familiar with today in 2016 is Akamai, but back in the 2000’s, there were half a dozen CDN companies, all trying to get a slice of the CDN revenue pie.
On pages 42-43, Clearway, SolidSpeed, Speedera, EpicRealm, and Akamai were all called out for awards #5, 6, 7, 8, and 9, in the overall CDN area, and for developing this hot new marketplace.
And then, later on in the list of awards, we come to #68, given exclusively to Clearway, and to me, “For Inventing CDN”.
And you know what? They’ve got the facts right here. By the time Akamai was just barely getting started, I already had Clearway Technologies up and running, and we were already shipping our first CDN offering, and I’d already filed for the patent on our core technologies.
So while I’m a little too modest to be comfortable saying it, as far as I can tell, it’s true:
I invented the first CDN.
Now, while I do get to say that I invented the first CDN, “FireSite” and “FireSite.net”, I also have to say that I didn’t get rich from it. Clearway was initially a ‘bootstrap’ startup, and so grew very slowly at first. Here’s the entire company, in August 1996 doing our initial product launch at Macworld in Boston.
Later, we took in venture capital, and we grew Clearway to over 200 people. Here’s the team that helped do our ‘big’ launch at Networld/Interop 2000 in Atlanta.
So we grew the company and ultimately we sold it to Mirror Image Internet, another CDN company with complementary technologies and assets. And while Mirror Image is still around today, it, also, is not a success story. Mirror Image was never able to successfully monetize the union of their existing network infrastructure and Clearway’s advanced CDN technology, and so the company has never seen the growth that we hoped. (And thus I learned the meaning of the term “reverse stock split.”)
Other people have gone on to build bigger CDNs — most notably Akamai, who has become the dominant player in the CDN market, and they’re doing fine financially.
My original CDN patent (U.S. #5,991,809) was filed on July 25, 1996. In the U.S. the term of a patent is twenty years from the first priority date. That means my first CDN patent will expire in two weeks, on July 26, 2016. These twenty years have been a heck of a ride, and looking back, I’m proud of what I invented, and happy to see what it’s become.
-Mark Kriegsman, July 12, 2016.
Here’s the full text of what Web Hosting Magazine had to say about the invention of the CDN:
from Web Hosting Magazine, January 2001, page 77.
#68
Clearway
For Inventing CDNAkamai may think of itself as the grandfather of content-delivery network services, but let’s not forget the man who invented the idea: Clearway Technologies founder Mark Kriegsman.
Akamai’s business plan was entered into MIT’s annual $50,000 Entrepreneurship Competition in 1998, by which time Kriegsman had already received Patent #5,991,809 for his “web serving system that coordinates multiple servers to optimize file transfers.” The U.S. Patent Office abstract somewhat cryptically describes Kriegsman’s intervention as a “networked system consisting of one primary and at least one secondary server, both capable of storing static and dynamic content. In addition the primary server houses at least one look-up table, with which the system can use various criteria to search for specific data files and allocate transmission of each file between the primary and secondary servers based on these criteria.” (What can we say? It was 1997.)
Put in more modern terms, the patent covers intelligent redirection and intelligent optimization of compound web objects, such as HTML pages, JavaScript or streaming media metafiles.
So Akamai and Digital Island can sue each other all they want about patent infringements, but Mark– we know who really came first. Wink, wink ; )
FastLED for the Apple II: Hack to the Future!
Posted: February 16, 2015 Filed under: Art, Coding, Creations, DIY, Explorations, That Totally Worked, Uncategorized | Tags: APA102, Apple, Apple //e, Apple II, AppleII, arduino, art, blinky, CALL -151, DIY, DotStar, fastled, glow, glowy, LED, LEDs, light, LPD8806, retrocomputing, WS2801 6 CommentsThese days, I hack LEDs. I’m the co-author (with Daniel Garcia) of the FastLED library for driving tons of high speed LED pixels and strips using microcontrollers like Arduino and Teensy.
But back in the day, I hacked a lot of Apple II. I published a couple of shoot-em-up games (with Geoffrey Engelstein), all written in lovingly hand-crafted 6502 assembly language.
Finally I decided it was time to link the present to the past: to connect a hundred high-speed RGB LEDs to an Apple II, somehow, and ‘port’ our FastLED library to 6502 assembly language.
Well, I did it, and it works. My new creation, “FastLED6502”, can drive a hundred 24-bit RGB pixels at more than 30 frames per second from an Apple //e :
The Details
Here are the details of “FastLED6502”:
- “FastLED6502” is a lightweight port of FastLED’s core functions to 6502 assembly language for the Apple ][, Apple ][+, Apple //e, and Apple //gs.
- Supports APA102 / Adafruit DotStar LED strips, as well as LPD8806 and WS2801 (though those two are not fully tested yet).
- The LED strip is connected to the Apple II using the 16-pin DIP game port on the computer’s motherboard. The 9-pin DB joystick/mouse port on the back of the //c, //c+, and //gs cannot be used, as it lacks the TTL digital output signals needed to drive the LED strip.
- 24-bit FastLED Rainbow colors are included, along with FillRainbow, Random8 and a number of other useful functions from FastLED’s main library.
- Everything had to be re-written from scratch in 6502 assembly language. Luckily(?), I still remember how to do that.
- The assembly code knows the binary serial protocols for the APA102 (Adafruit DotStar), LPD8806, and WS2801 LED driver chips. Depending on which one you select, FastLED6502 transmits the LED colors in the correct protocol over the game port TTL digital output lines.
-
Considering that the Apple II sports a 1MHz 6502 so slow that even a “NOP” takestwo cycles, overall performance is pretty good: more than 30 frames per second for a 100-pixel strip.
-
Speaking of speed, or lack thereof, “three-wire” clockless LED strips such as the WS2811 NeoPixel are not supported now, nor will they ever be. The CPU is would need to be at least 20X faster to support them, and it isn’t. For that you want an Arduino or Teensy, and FastLED proper: http://fastled.io/

FastLED6502 at Veracode Hackathon 7
How’s it work?
So how does this all work? Well, you connect the CLOCK and DATA_IN pins from the LED strip to a couple of pins on your Apple II’s DIP game connector port, add power, and you’re ready to go. The Apple II’s game connector not only has inputs for joysticks, paddles, buttons, and so on, but it also has a few digital outputs — and that’s what FastLED6502 uses to deliver signals to the LED strip. On all the 16-pin DIP Apple II game ports (except for the //gs!), there’s even one pin that delivers a super-fast digital pulse; pin 5 is the C040STROBE line, which can pulse twice as fast as the other digital outputs. If you choose that for your CLOCK pin, the FastLED6502 code automatically shifts into high gear, and you get faster performance. FastLED proper does this, too, in a much fancier way; it’s amusing that ‘little’ FastLED6502 does some of this, too.
The Code
https://github.com/FastLED/FastLED/blob/FastLED3.1/extras/FastLED6502.s65And here’s the RainbowDemo.s65, as shown in video:
https://github.com/FastLED/FastLED/blob/FastLED3.1/extras/RainbowDemo.s65
This is Crazy
Iteration impels improvement.
Posted: July 19, 2014 Filed under: Uncategorized Leave a commentThis thing that I am casually holding up in one hand is an 7′ x 3′ LED tapestry, plus diffuser, plus controller box, plus all mounting hardware, plus power supply and extension cord (rolled up inside for easy transport). It’d fit in the carrying bag for a folding camp chair.
Now, truth be told, I’m not crazy about the layout of LEDs on it (too gridular)…
…so there will be at least one more iteration of this “small” one before I build the “big one” for playa. But. It feels good to have come this far: the previous incarnation had to be wheeled around in a suitcase, and required complicated mounting due to it’s own weight.
Next iteration will focus on making the layout more ‘organic’ (the way I like it), and continuing to rethink how the diffuser is held at the right distance from the light.
Lanyard-mountable LED throwies
Posted: May 25, 2014 Filed under: DIY, Explorations, How-to, That Totally Worked, Uncategorized | Tags: blinky, DIY, glow, glowy, invention, inventions, LED, LEDs, light, throwies, toys Leave a commentAt the last “HacKidThon”, we showed a passel of kids how to make LED “throwies”. Each one is a nothing more than an LED, a coin cell battery, and a magnet so the contraption can stick to metal surfaces, walls and buildings, and hang there glowing.
This week, someone asked me if we could modify the classic design somehow so that the LEDs could be attached to lanyards, instead of magnets. We wanted it to be as cheap and easy as the rest of the “throwie” recipe.
A little brainstorming with Eleanor, and we came up with this: plastic-coated paperclips!
The paperclips actually help hold the LED leads in place; we put tape around them as usual, though that’s not shown in the picture. The plastic coating keeps the paperclip from shorting out the positive and negative battery terminals.
The coated paperclips cost less than a penny apiece, and come in colors that match the LEDs. Victory!