Kubernetes Phase 1

I just uploaded to github a set of instructions and scripts that I’m using to install kubernetes on raspberry Pis. I’ve run into some weird funk due to the arm OS install on the arm64 processor, and that many containers assume amd64. But this is a start.

The next steps is simplify the install a bit more, and add in instructions to include heapster and kubernetes-dashboard that is compatible. I’m planning on updating to a kernel that is arm64 compatible so I can do more fun stuff.  (Mesos)


Easy-Bake Data Center

I cleaned up my office a few weeks ago. Collected the few raspberry pi’s that are unused. The odd switch; cheap, unmanaged, but efficient. Sure, I’m still in the process of making a game, but like most humans, I’m easily distracted. This distraction got to me when a saw the switch. And of course, when you see a switch, you think about deployment pipelines.

I work at Amazon, and the way we deploy software is fairly cool. When I write software at home, they way I deploy sucks. Its fine for me, but it ‘could be’ soooo much more. So a quick search on-line turned up the Netflix deployment pipeline they open-sourced called spinnaker. Spinnaker sounded like something I wanted to try. Which, of course, means I have to run it somewhere. And no, I’d rather not run it on my development desktop. Besides, having places to run little apps at home is nice, especially since I’d rather not have to keep my desktop on all the time. Raspberry pi’s are great for these types of things.

At $35 a pop, not including SD disk drives, they make perfectly fine compute nodes for a home environment. And there is an active community creating clusters of various sizes. So I looked at my switch and said screw it, lets build a data-center the same way Hasbro said lets build an oven. Here’s the initial play-list of goodness:

  • HypriotOS for the Linux installs. Raspberry pi meets Docker.
  • Kubernetes to manage the docker installs. Following instructions on this post.
  • NFS mounted file-system with one host using 1TB hard drives (For sharing/storing data like ab initio calcs I want to start running again.)
  • Spinnaker, which started all this for me.
  • And not a lot of money, considering

That last part is the interesting part. This is more of a learning exercise then anything else. For a few bucks, I get to build and play with an easy-bake oven version of a data center using modern techniques. I get a simple place to build my software, or run my old calculations 24×7, and the cluster is easily expandable if I so desire. No monthly costs beyond electricity once it’s setup. What’s not to love?

Google Home no longer using Google keep starting April 10

Google looks like its making a change in how it handles lists with Google Home. We use Google Keep a ton. Shared grocery lists are really great… and having you tell Home to add and item to the shared list is perfect. Well, was perfect. Starting April 10th, Google Home will instead add the item to a list in their Express shopping app.

Google Express has a list feature, but it’s not shared between people. It’s really intended only for your self to help with ordering online. This means that when my wife adds to the shopping list on Google Home, she can no longer view it later on her phone. Google Home is attached to my account so its only available to my shopping list on Express. And unlike now, she won’t be able to add to it when she’s away from home using google keep or any other app.

We have basically have three sets of lists that we use. Groceries, CostCo and ‘misc’. (Of course, I’m ignoring the holiday specific lists…) Shared lists is fundamental for us. This all makes Google Home slightly less useful to us. I’m still waiting for Wink integration like I have with Alexa. It is very disappointing.

Starting April 10th, I’ll only be using Google Home like an audio chromecast with speakers… for music or random questions. Most of my music is in my Google account, and I have chromecasts setup around my house. But I’ll end up switching to our Alexa for our and lists in addition to our podcasts and smarthome integration. I’d love to see Alexa support Google Keep, but I doubt that would happen. Any.do may be better for us though.

Crypto Library

I finally pushed my first version of paranoia crypto library. Its basically a wrapper around Bouncy Castle. It ‘expires’ keys so they don’t hang out in memory, forces AES-256, uses Scrypt for hashing, requires SecureRandom, and will include a proguard file to munge BC so it doesn’t get into classloader issues on Android. (Google mucked with BC… I’m doing this instead of using spongy castle)

This library avoids the 128 limitations provided by default JCE usage, so you are hereby warned to check your local laws for compliance. I’ll have to send out a post detailing why I had to make this library. If you want to use it, start with the SecuredParanoidManager and run from there. I’ll work on some better examples of how I intend it to be used.

the Farmer…

I’ve started writing a new game. I switched from my second version of ‘Pachinko Fever’ to this ‘pseudo’ RPG style game. We’ll see how it goes. I have the game-play in mind… but its not finalized. I’m making sure that it’ll be interesting and addictive. There is a way to level up and fashion (learn) new ‘features’ in the game easily enough. I’ll go over the game-play more as it solidifies a bit. The core concept is you don’t fight, but you create other creatures to fight for you.

I’m using tiled to create tile maps… and I’m basing the landsacpe on my old house in Wisconsin and the land around it. I had to pick somewhere so I figure’d I’d pick where I know. Its been fun so far to model the environment, both the real and the fantastical. This will take time to develop. LibGDX is the running engine, and gimp for graphics. (More on that later)

The first ‘zone’ is free. Unlocking the game via in-app purchase opens the other ones. First place is home and Osti… what we called the land my home sat on. Troy Village and Troy is on the second zone. The river, Arena, Mazomanie follows next. My goal is to get Osti up first. If I can do that by summer I’ll be a happy camper. Its a Lovecraftian theme but you may not notice that when it plays out. Least I’m hoping that it will be subtle. I’m listening strongly to Extra Credits on this one.

The code for this game isn’t too hard. The real work is going to be in the story and graphics. I’m creating the basic framework now for the game while doodling bits and pieces. Its pixel-art style graphics. That’s important because what I found is that doing pixel-art is easier for me then trying a cartoonish-style, or heaven-help me, realistic. And its simple enough using gimp to handle these graphics. I’m sure my design is going to be problematic to some, but I’m using this as a learning process too. I’m reading more and more about art design in games and looking for common pitfalls.

Matias Ergo Pro keyboard…

This review of the Ergo Pro keyboard from Matias is more then a thinly veiled exercise I dreamed up to test the keyboard… but not much.

The keyboard was delivered today from Amazon. Had to replace a failing ‘natural’ ergonomic keyboard from Microsoft that I’ve typically use on all my computers over the years. I’ve tried different ergonomic keyboards, but always end up with that one. I like mechanical keyboards, but you tend not to find them in an ergonomic styling. The Kinesis Advantage Pro is mechanical, but just a bit too wacky to use everyday. It’d be fine if every keyboard I touch was that one, but switching between keyboards would make that painful… and its too expensive to have everywhere.

So, Aaron at work got the Ergo Pro. It has ‘mechanical’ switches, but quieter then regular switches. Tried it and liked it for the most part. At $200, it was at a price point where if I needed a new keyboard I’d consider it, but too expensive just to buy outright.

Then the Microsoft keyboard on my main desktop broke. Opened up the Amazon app, and 10 seconds later the Matias was on its way. Its a truly split keyboard. Two half make up the keyboard, and you can separate them by any distance you want. The keys are mechanical, but as I mention, they went to lengths to make it quieter then other keys. They are like the MX Cherry Red keys, but a bit softer. Number pad is overlaid on the keyboard, so you have to press the function key and hit ‘U’ for a 4, ‘I’ for a 5… etc. That part isn’t great, but doesn’t bother me much.

Like any modern USB keyboard, it hooked up fine. OS be damned… And I find it fairly easy to get comfortable with. I’m not at the same speed I’d expect with my old keyboard, but I don’t think that will take long to get back to. The biggest issue so far is the Control key next to the ‘N’ on the right hand side. I keep hitting it when I mean to hit a ‘N’… but I think that’ll change as I get used to it.

I suppose the other issue is the height of the keyboard when you add the stands. You have three ways to set up the keyboard physically. Flat, inverse tilt or tented. Flat is exactly as it sounds… just straight on the desk. Inverse tile raises the front of the keyboard where the pads are, which is what I typically do. This puts your hands in a fairly comfortable position when typing for an extending time. Tenting is where the keyboard is lifted in the middle, and the edges are table-height. I’m using this now and I find it much better then the ‘inverse tilt.’ The reason I call this an issue is that the height could be taller. But so far its good enough for me.

So, five hundred words later, and I find that the keyboard is doing just fine. I’m still accidentally opening up new windows via the cntl-n I keep hitting, but it’s better now then at the start of this post. I’m completely enjoying the keyboard. Now it’s just a matter of getting work to buy me one for the office.