Sunday, May 22, 2016

IoT Idiot!

One of the reasons I went with a Raspberry Pi for my little project was the claim that it ran Windows 10 IoT. Now I had no idea what IoT was, but I knew Windows 10 and I could program for it. I quickly found out that I would need some new ideas though if this was to work.

Once I had read that the Pi supported Windows 10, I had started writing my code, but I quickly learned that IoT, the Internet of Things, did not have a Windows desktop. This meant that my desktop application would not run on it. I would need to rewrite my code as a Windows Universal application.

Now I had wanted to try my hand at Universal apps for a while now, think of them as the Windows Store applications, or applications for what they once called Windows Metro, but had never had the reason to try. So, when I read that, I made a tentative start at rewriting my application as a Windows Universal app, but never got real far. The learning curve into Universal apps is a little steep for those of us who have only written desktop or web apps in the past. Also, I knew that anything I wrote was a temporary measure as I had read that Windows 10 IoT came with its own version of Visual Studio and that you should create the application on the device, so the work I was doing was more or less getting a feel for the environment.

I was told that Windows 10 Iot came on the NOOB (New Out Of the Box) tools that would ship with the Pi, but this was not so. When it arrived, the only OS my Pi came with was Raspbian, one of the many flavors of Unix that run on the Pi. I would have to download Windows 10 and have it installed on my SD card in order to run it, only, I didn't have another SD card and I didn't want to destroy the only OS I was sure ran my Pi, so I ordered a new SD card from Amazon and went back to the waiting game.

In the mean time I hooked up the Pi, as it was, to my new monitor, used one of the USB ports to add the Touchscreen capabilities and played with it a bit. For a $39 computer the Pi is pretty awesome. I could play games, surf the web, do all kinds of things on it.

Finally my SD card arrived and I burned Windows 10 IoT onto it and booted up Windows 10 on my P1! Yay! Or so I thought.

It didn't seem to do anything but show me a static page with non-functioning links. Where was the Visual Studio I had been promised? Where was, hell, anything?

Seems the article I had read about VS being a part of the OS was, how shall we say, bullshit. Not only was the OS not included, IoT could not run it as...wait for it...it's a desktop application!

This was when I learned the real limitations of IoT. Seems it has no program loader, which means in laymen's terms, you can't point it to an application and have it run it. Seems the OS has to boot into your application and it is the only application that will run. I could see the serious limitations beginning to show in trying to run Windows IoT on the Pi.

Can I work with Raspbian?

Friday, May 20, 2016

Can I have some Pi with my Havoc?

So the first thing I needed to do was figure out from an engineering standpoint, what I was going to make my calendar out of.

First, let's be clear here; I am not making a product to sell, I am making something for my home. Given that, money is not really an object here, so I don't have to look at the economics of building something that I can market at a price that would attract buyers, which is a good thing because my first hardware decision was to use a 21-inch touch screen. Anyone want to guess how much a 21-inch touch screen cost? Go ahead, Google it; I'll wait till you are done.

See? Not gonna be selling too many calendars when the price of admission begins with one of these guys. I was able to secure a refurbished 21-inch HP monitor for a little over $200 with tax and shipping. It is an oldie, still has the Compaq name on it, but it works fine and has a very nice picture.

Now you may wonder, why a touchscreen? Well, no keyboard or mouse required. "But how can you enter items into the calendar?" you ask. Well, I had a plan for that, but more my plan next time.

Second, I know that for around $600 I could have just gone out and bought an HP touchscreen computer and been done with it, but where is the fun in that? This is not a road we even need to consider going down.

So given that, I needed to find something to drive my big monitor and I looked to the new version of the Raspberry Pi to do that. The Raspberry Pi, for those who do not know, is a small computer that costs $39. Now there is some real cost savings!

I had been looking for an excuse to work with a Raspberry Pi for a year or so now and this seemed like a good opportunity to do so.  The latest version had just come out and it was faster, had more memory, built-in Bluetooth and Wi-Fi, four USB ports, Ethernet, SD card slot, and HDMI. Best of all the new version supported Windows 10 IoT.

Also, considering that it would fit in the palm of my hand I figured it was small enough to tuck in somewhere back behind my monitor. Being a Microsoft programmer by trade, this seemed right up my alley, so I ordered one.

Wednesday, May 18, 2016

Days of Wine and Havoc

Years ago my wife bought this calendar holder, a wooden base that attached s to the wall of our kitchen and into which she can slide a new calendar each year. Not an earthshaking concept, but one with a few flaws in it.

First, I don't know about you, but I get tired of seeing the same picture above the calendar for an entire month. This year it might be glasses of wine or fields of grapes and next year it might be puppy dogs or unicorns. This is not something I can't live with, but something that just mildly bugs me.

Second, my wife works in the medical field, which means her days working are scheduled months in advance. In order to keep track of them, she tacks another calendar to the bottom of her calendar holder and writes her work days there for the months in advance, then transfers them to the real calendar when the month rolls around.

Third. I have no idea what is on the calendar at home when I am not there and neither does she. We could use an online calendar like Google Calendar, but that would just mean reentering things twice.

Some may see these as a minor nuisance, but for me it was enough to see if I could build us a calendar that would eliminate all of these issues.

That was the germ of what is turning into Havoc, my latest obsession.

So to be clear, I set out to build a wall calendar with a touchscreen interface that is accessible from our phones. Not a small undertaking, but something that has morphed over the past few months into something much more.


Sunday, May 15, 2016

Reaking Havoc

Decades ago I was at COMDEX (the Computer Dealers Expo) in Las Vegas and I saw one of the earliest implementations of home automation that you could actually purchase. Over the years I have forgotten almost everything about the product I saw that day, but I clearly remember thinking it didn't go far enough. I thought though it was a good start, it needed to be voice activated and it wasn't. I envisioned my own product and what it could do and how it could work. Of those long ago musings the only thing I really remember is the name I had for my product: HAVOC, the Home Automation Voice Operated Computer.

Well it is now decades later and home automation is everywhere. I own an Amazon Echo and, if I wanted to, I could have it automate nearly every aspect of my home, that is if I wanted to spend the money on expensive wireless devices to replace cheap standard ones. For the most part, I don't want to do that.  But, that doesn't mean I am not always looking for something to automate, just for the heck of it.

OK, that is not quite the truth; it is not "just for the heck of it." I write software for a living. I've done so for over 30 years. I have lived in a small corner of Microsoft development for over 25 years and made a good living at it as there are a vast number of companies who do the same. So if it is Microsoft WinForms for your desktop computer or Microsoft WebForms for your website, I am all over it. But I like to grow as a developer and sometimes that means leaving my comfortable corner and venturing out to something else, or simply expanding the environ of my small corner, making it a little bigger. So, I have a real reason for doing this, it expands my toolkit for the work I have chosen as a career.

A few months ago I started looking at automating something I have been thinking about for a few years now and it is slowly morphing into a Havoc, though the acronym is not quite what I envisioned more than 20 years ago..


Sunday, March 22, 2015

Scrounge

Curt was one of those guys that just sort of fall into your life. We had enough in common that we could hang out and enough not in common that it wouldn't be a daily thing. But when we were both stood up or unattached on a Friday or Saturday night, somehow we would end up together, usually in my parent's den, watching TV and drinking my dad's cheap, and I do mean cheap, beer. He would get the generic beer from the store that came in a white can that said BEER on it, or, god forbid, those little 10 ounce bottles of Lucky or Schaefer. Curt and I would sit back there and drink that crap all night long, with an occasional stop out in the back yard to smoke a little pot.

We both drew, though Curt was more into the "high art of it all" and I was just trying to put together a comic book. We would watch bad TV, drink bad beer, talk about the ladies we were not fornicating with and draw stuff. We would fold an 8 1/2 by 11 inch piece of paper in half and then fold it again to make four 8 1/2 by 2 3/4 inch panels. One of us would start out and draw a character from their head to their shoulders, then mark on the next quarter page where the shoulders ended, then fold the paper over to the next blank panel and hand it off. The new artist would draw a character from the shoulders to their waist, mark the next panel and fold it over again. The first guy would then draw the waist to the knees and mark them and the other guy would draw the bottom of the legs and any foreground he wanted.

Then we would have an unveiling of our masterpiece. OK, we would usually go out and take a hit off the joint first, but we would eventually get back the unveiling. Sometimes it was real strange what we had drawn. It was a way to pass the time with no female companionship as it were. I kind of liked those times, even if I wasn't getting any. The only thing I didn't like was how cheap Curt was. OK, we were both drinking my dad's beer, but Curt would smoke my cigarettes.

"Hey man, can I bum a smoke?"

"Hey dude, you got an extra smoke?"

He stopped asking that one once I started replying, "No Curt, they only put 20 in this pack."

Strange good times from my youth that would have been a whole lot better if Curt was not such a scrounge.

Copyright 2015 Barry Keller. All rights reserved.

Wednesday, March 11, 2015

Impressions

Growing up I was always breaking things, so much so that I considered myself to be a real schlemiel and I was so unlucky I felt like an honest schlimazel. Of course, not being Jewish, I never used those words to describe me. No, I just felt I was the focal point of bad luck and the epitome of clumsiness and it embarrassed the hell out of me.

I remember my parents bought a glass-top table for the dining room and one day I was leaning on it and the glass shattered. I felt mortified and I remember going to my room and crying for what seemed like hours about it, my mother coming in every now and then to say it was not my fault, just an accident. But I knew. I was so embarrassed, it was my bad luck.

I remember later playing whiffle ball at a friend’s house where we had made a baseball diamond in his side yard, with wooden bases and how I hit a home run and in running the bases I cracked home plate in two when I stepped on it. They called me a cloddish, clumsy oaf. I was embarrassed, but I didn't cry in front of them, I waited till I went to bed that night for that. I was a schlemiel and a schlimazel, and it seemed like my childhood was a long list of embarrassing events strung together, a gauntlet of humiliation that I had to traverse to reach adulthood.

I remember the first time I met my fiancé's parents. It was at a high-end restaurant and they had gotten there first. They both stood as we approached the table and Tina said, "Daddy, this is Tony. Tony, my Father." He had one of those firm let's-just-see-what-the-hell-you-are-made-of handshakes that try to crack your fingers, but I was prepared for that and gave as good as I got. I think he was impressed.

Tina's mother was a rare, stunning beauty, almost regal in looks and demeanor. "Momma, this is Tony. Tony, my Mother." She had a presence about her. I almost felt I should take her hand and kiss it, but I didn't. Instead I bent slightly at the waist and shook her hand gently and as I did so, I broke wind.

Copyright 2015 Barry Keller. All rights reserved.

Thursday, February 26, 2015

Boudreaux

“I’m not sure why I’m here. I dint do nuthin’”

“Well sir, if that proves to be true, you have nothing to worry about.”

“When can I leave?”

“Once you prove that you, as you say, ‘dint do nuthin’’.”

 “Sure, it be your show. Wha’chu wanna know?”

“Mr. Hebert, you want to talk about the Simonson girl?”

“Not sure what there is to talk about, I dint do nuthin’ to that girl.”

“But you know her?”

“Sure man, dat girl been on the block since she was jus’ a little wee one. You know, all dem kids they play in da street and in da empty lots. They even got themselves a fort over on Elm in dat big oak tree in the field ova’ by Chacharee’s place.”

“So you do know the Simonson girl?”

“Sure, I know her. She dat little pretty one with the silky brown hair, goes down her back in a long ol’ pony tail. She a real cute one dat girl.”

“Mr. Hebert, how well do you know the Simonson girl?”

“Call me Boudreaux, we may not be friends but dat no reason to not ac’ friendly. Marie Simonson, her daddy may not be Cajun, but her mamma be a bayou girl through and through, and little Marie, she take after her mamma, don’chu know.”

“How so Mr…”

“Boudreaux.”

“Boudreaux?”

“She got the olive skin and the dark eyes, and she already takin’ afta’ her momma, you know what I mean?”

“How so…Boudreaux?”

“Dat little girl got the fire in her blood dat make a man take notice. She what, only 11 I guess, but she already got her some woman titties, you know? She run home from the bus stop every day an’ I see her bouncing down the street. I think her’s gonna be bigger than her mamma’s and dat is sayin’ a lot, you know?”

“When was the last time you saw Marie Simonson?”

“Cain’t really say.”

“Oh?”

“Don’t rightly remember the exact day, the exact time.”

“Did you see her come home from school on Friday?”

“Ooh, yea sir, I do believe I did enjoy dat show on Friday. Bounce so nice they do, don’chu know? She was wearin’ her little shorty pants. They was so tight it was almost obscene, the way her little butt was showin’ out the bottom of her shorty pants. Little girls like dat, they shouldn’t be teasin’ dat way. They should be taught better at home than to prance around with their big woman-like titties and their cheeks showin’ out their shorty pants. The kids these days, they jus’ don’ know how to act anymore. I blame’s the parents.”

“Certainly.”

“She had to be taught some manners don’chu know? Cain’t be teasing a man like dat.”

“Of course not.”

“Man can only take so much teasin’, then it be time for action, you know?”

“Sure, I hear ya.”

“I’m getting’ tired. When can I leave?”

“Not for a while Boudreaux, not for a while.”

Copyright 2015 Barry Keller. All rights reserved.