How to Create an On-Demand Feature for Your Alexa Skill

Submitted by Danny on Fri, 07/02/2021 - 13:18

As 2020 was coming to a close and 2021 was just around the corner, I was finishing development of a new version of our skill for the Alexa smart speaker. It was a total re-write, and it changed the skill from being able to perform only a single intent (play our live stream) to providing a dialog-based menu of many intents to choose from. With the new skill, listeners can choose to either play our live stream, play our HD2 live stream, play the latest newscast recording, or play an on-demand. (One day I would like to add another intent: make a donation.)

Building a battery pack from LG Chem li-ion pouch cells - Project Dream-e part 3

Submitted by Danny on Sun, 02/07/2021 - 13:06

Here's how I took ten 4p modules of LG Chem pouch cells and turned them into a 20s2p pack for my 1967 Honda CA160 classic motorcycle that I am converting to electric. I'll need a 72v battery back that can continuously supply around 50 or 60 amps to my 4kw QS hub motor. These used li-ion cells should to the job!

How to use versioning with AWS Lambda and Alexa Skills Kit (ASK), a step by step guide

Submitted by dannix on Fri, 04/05/2019 - 14:15

I learned a valuable lesson on the morning after submitting my latest Alexa skill for certification. I had an email from the Alexa certification team letting me know that their tests had failed. I thought that was odd because everything was working perfectly fine when I left work the previous day. I was using AWS Lambda to host the back-end code (within a Node.js environment) and hadn't set up the versioning system because I didn't know about it. [update: I'm now using the AWS CLI to locally host my code and push it to Lambda, which is what I recommend.

The wooden garage floor saga: How I rebuilt the wooden floor in my work shop to support a small car

Submitted by Danny on Fri, 01/25/2019 - 10:37

With the house remodel finally finished after two years, I really wanted to use the work shop as a garage for a project car. But the problem is that the work shop, although it has a garage floor and concrete driveway leading up to it, has a wooden floor that absolutely could not hold up even a small car. I decided to change that!

 

This Old Fixer Upper, Part 8: The Kitchen!

Submitted by Danny on Wed, 09/26/2018 - 14:45

How to overhaul a kitchen, from floor to ceiling. Or, "how to polish a turd." Everything we did in 6 months: All new plumbing. All new electrical wiring and outlets. All new ceiling lights. All new appliances. New flooring. New cabinets and countertops. New garbage disposal and added a switch to control it. The interior doors where all renovated. Backsplash tile and paint. Removed the ugly AC unit that was in the wall (not the window, the wall) and patched up the drywall. Added a heater duct from the furnace to the kitchen (it used to be heated with baseboard heaters). Knocked down a closet that was taking up space for the kitchen table. Range hood vented through the roof. Custom cubby in the wall for the fridge. New baseboard trim. And more....

diy kitchen remodel renovation old home low ceilings modern wooden countertops

Project Cherokeeper: Blown Head Gasket! Time to Rebuild the Jeep 4.0 Engine Top-End

Submitted by Danny on Thu, 07/19/2018 - 11:06

An overheating issue really had me stumped for a very long time. It had the characteristic of a mild blown head gasket (it would only run hot on the highway, no other problems), but non of the physical symptoms - no coolant visible in the oil, no oil in the coolant, no smoke in the exhaust, compression was great on all cylinders (cold engine), it passed the combustion "block test" both with the rental kit from a parts store and when I took it to a local garage with an emissions test machine, and it passed the cooling system pressure test. Finally, I sent an oil sample to a lab and they said there was signs of coolant in the oil - not a lot but enough for concern. Off with the head!

jeep cherokee 4.0l engine head rebuilt top-end restoration blown head gasket

This Old Fixer Upper, part 6: Restoring the Antique Douglas Fir Floorboards

Submitted by Danny on Tue, 02/13/2018 - 15:17

When we bought this house last winter, we did it assuming that there was a hardwood floor underneath the carpet. We were right: antique douglas fir planks! But repairing and refinishing them was not easy. We made a few mistakes, and one of them I can honestly say was the biggest mistake we've made yet during our renovation.

How to: Jeep Wranger TJ mirrors on a Jeep Cherokee XJ

Submitted by Danny on Mon, 12/11/2017 - 16:05

I've always hated the mirrors on my 1997 Jeep Cherokee XJ. They're too small and they look dumb! A rugged, manly vehicle deserves rugged, manly mirror. Right? I got these mirrors from Amazon for less than $40 for the pair and I'm really happy with them. They're for a TJ Jeep Wranger but they also look like YJ mirrors. 

installing wranger tj mirrors on a jeep cherokee xj

Booger welds galore! I made a homemade skid plate for Project Cherokeeper

Submitted by Danny on Wed, 11/22/2017 - 15:16

Project Cherokeeper -- my 1997 Jeep Cherokee XJ -- needed a little protection for its soft belly. The aluminum transfer case is totally exposed and if it hangs up on a large rock, it can crack. And if that happens, neither axle is moving and I'm going nowhere. Here's how I built my own.

I Made a Bike Barn

Submitted by Danny on Wed, 10/11/2017 - 10:07

Johhny and I built this "bike barn" out of scrap wood we needed to clear out of the garage. I don't think we used the measuring tape once. We just slapped the boards together as quickly as possible. Sometimes we cut them to length and sometimes we didnt. Fun!

Project CheroKeeper: fender trimming & hood vents

Submitted by Danny on Mon, 07/10/2017 - 15:50

The technique for cutting the sheet metal is an old, tried-and-tested process in the Jeep XJ community. Just search youtube or any jeep forum and you'll see the same method each and every time. Trim the sheet metal up front, and "cut and fold" the sheet metal for the rear fenders. What I did was I tried to trim off just a enough so that there would still be a little tiny metal fender flare left. This meant cutting right along a bend in the sheet metal - which also meant the shape/profile of the fender arches would remain mostly stock - or, in the case of the rear, cutting up to that bend and folding the sheet metal over at that point. This also allowed me to keep the windshield wiper fluid reservoir hidden between the outer fender and the inner fender. After trimming the sheet metal, I cleaned them up with some truck bed liner paint, and the end result looks great and functions beautifully. 

Project CheroKeeper: cooling system overhaul

Submitted by Danny on Mon, 07/10/2017 - 11:30

This story, chronically my attempt to overhaul the jeep XJ's cooling system and overcome a mysterious overheating problem, was orignally posted to the website cherokeeforum.com. I ended up replacing the entire cooling system except for the heater core, and in the end it's vastely improved yet the motor still runs a little hot in the summer. 

How to install tongue and groove panels on a ceiling

Submitted by Danny on Fri, 05/26/2017 - 12:17

For my This Old Fixer-Upper project, we decided to cover the plaster ceiling with pine tunque-and-groove panels rather than try to scrape off the wallpaper and paint the ceiling. The original plan was to use 4' x 8' sheets of panels that looked like tongue-and-groove boards painted white, but we found the actual stuff at Menards for only a little bit more money per square foot. A pretty good deal I thought. All of the materials cost me a little over $400, including the brad nails, paneling adhesive, polyurathane, etc. 

how to install pine tungue-and-groove boards paneling on ceiling

This Old Fixer Upper, part 3: Garden and Landscaping

Submitted by Danny on Mon, 05/01/2017 - 16:47

With nothing but grass growing in the 1/3-acre yard - and massive amounts of perrenial flowers surrounding the house that we had no idea about until spring - we had a big canvas to do whatever we wanted with. I wanted lots of trees! And a big garden! No, bigger than a garden. A food forest! At least that was the plan.

Make your own conditional fields in Drupal 7 by "hacking" the hook_form_alter() function with JavaScript injection

Submitted by Danny on Fri, 04/14/2017 - 16:44

When I needed a conditional field for a Drupal 7 content type, of course I just googled "drupal conditional fields" to see if a module exists. One did exist, but its D7 release came with a big, red flag warning any would-be downloaders that it's not supported any longer and is vulnerable to security issues. Instead of risking it on the entrerprise-level website, I decided to code up a solution myself. And I would use JavaScript inserted by the PHP code. Easy!

Product Review: Sony NEX-6 + Nikon Nikkor AI-S lenses

Submitted by Danny on Thu, 04/13/2017 - 11:33

Unlike the other camera I tried to adapt to my small collection of old manual focus lenses - a Nikon J1 - this Sony NEX-6 camera body is perfect! With manual focus lenses, it's all about getting the focus just right. If it's not perfect, then it's blurry. And a blurry, out of focus image is trash. Same thing for exposure. Here's why the Sony NEX-6 is the perfect camera body for use with old, manual focus lenses.

sony nex-6 camera body with manual focus Nikon Nikkor AI-S F-series lense

How to remove bark from live edge walnut slabs

Submitted by Danny on Fri, 03/31/2017 - 14:00

I was gifted some walnut slabs. Actually, the truth is, my friend didn't want them and threw them into a bonfire, and before the flames could devour them I pulled them out and loaded them onto my trailer. You see: he considered them to be waste because they're not flat on both sides. One side is flat and the other is nothing but live edge bark. It's the side of the tree trunk, basically. But I knew that they were not trash, I knew I could find some sort of creative use for them. So I stowed them in my workshop, and waited for an idea to spring to mind. Then, one night while lying awake in bed unable to sleep, it hit me. I knew exactly what I would use these for—and you'll have to continue reading to find out. ;)

Project CheroKeeper

Submitted by Danny on Fri, 03/03/2017 - 16:02

The Jeep -- which I'm now calling the CheroKeeper because it's a keeper ;) -- is finally in my hands! Just as suspected, it has the venerable Christler 8.25" rear end w/ 29 spline axles and np231 transfer case. The mechanicals are in virtually perfect working order. I took it on it's first ever off-road excursion and I was actually surprised at how smooth the jeep conquered those rather large ditches and mud holes. The 4wd worked flawlessly and there was even a little mud to play in.

jeep cherokee xj stock flex offroad 4x4

New project! A '97 Jeep Cherokee XJ with 244,000 on the clock

Submitted by Danny on Fri, 12/16/2016 - 11:24

I'm buying a site-unseen '97 Jeep Cherokee XJ for $1,500! This thing was owned and garage kept for the last 19 years by a nice, older lady who never abused it and maintained it religiously via the dealership, and the Jeep comes with a stack of service receipts as thick as pea soup. That's the only way I would buy any vehicle with 244,000 miles on the odometer...

Exporting/migrating a Joomla website to Drupal7, with code

Submitted by Danny on Thu, 05/19/2016 - 14:16

After building the new webiste for Kansas Public Radio using Drupal 7, I needed a way to export all of the old articles from our Joomla website to the new website. I could have experimented with the Feeds module for Drupal or another Joomla to Drupal solution, but our installation of Joomla was sooooo old and outdated that I couldn't trust anything. I decided to write my own bit of code.

How (not) to make a DIY seat for a motorcycle/ATV

Submitted by Danny on Tue, 04/19/2016 - 14:59

For my This Old Three-Wheeler project, a 1973 Honda ATC90, I needed to make a seat. I didn't care much about looks, I just needed something function and inexpensive. That's why I decided to try and make it myself. For my 1974 Honda CL200, I had a hot-rod upholstery shop make the seat and they did a terrific job and the seat is gorgous. This seat, however, is not.

homemade motorcycle atv dirtbike seat diy honda atc90

Chevy GMC Squarebody Trucks Service Manual Free Download

Submitted by Danny on Mon, 01/11/2016 - 12:22

Download it here, for free. I found a copy of the 1984 GMC Light Duty Truck Service Manual. It will of course work for Chevrolet trucks, not just GMC, and for years 1981, 1982, 1983, 1984, 1985, 1986 and 1987. It will also mostly work for years 1973, 1974, 1975, 1976, 1977, 1978, 1979 and 1980, though a few things will be differest such as windshield wippers, front sheet metal, interior, etc.

$50 paint job! or: How to paint your truck/car with Rustoleum and a Roller (part 2)

Submitted by Danny on Mon, 10/19/2015 - 15:30

There was no way I could afford a pro paint job. I gave myself an allowance of $1500 to restore this truck which included much much more than just a fresh paint job. So an expensive paint job just wasn't in the budget. Then I started looking at alternative methods, like plasti-dip. But when I did the math, a plasti-dip paint job would have cost $400 at least and would not be a real investment into this truck. Of course I could have gotten a dozen spray cans and bombed it, but I wasn't interested in something with basically no quality at all. Then I came across a youtube video of someone painting a small red car with rustoleum and a roller. And it looked great! I started watching and reading more and more. The rolled on version was much harder, shinier, and more durable than with spray cans. I was sold.

The (in)famous $50 paint job! or: How to paint your truck/car with Rustoleum and a Roller (part 1)

Submitted by Danny on Thu, 09/03/2015 - 13:28

The idea is that oil-based enamel paints from your hardware store can be ROLLED onto the vehicle if you thin heavily with mineral spirits and use a high-quality foam roller. The mineral spirits help it level out while it's drying and its supposed to make the paint cure faster so you can wet sand the next day. A glossy, flat, durable (relative to, say, a rattle can paint job) finish can be achieved with a very small amount of money. However, it's very labor intensive. 

Chevy K10 truck restoration Phase 5: Suspension and Wheels

Submitted by Danny on Fri, 08/21/2015 - 13:54

What I'm about to do is not going to be incredibly popular with the chevy squarebody community, especially the off-road bunch. I'm going to remove the 4" suspension lift and drop it down to stock height. This was the plan all along with this truck. I'm not into mudding. Since buying this truck I tried a few times and it was just alright but the most fun I had off-road I could just as easily achieve with 33" tires and no suspension lift. In addition, the gear ratio in my GM 10 bolt rear end was only 3.42, much too small for 35" tires even with a SBC 350 engine. I live in a hilly area and on several occasions I got in a jam while going up hill in top gear at 30mph, and the truck did not like that. Smaller tires will make it muuuuch easier to drive around town with the Muncie SM465 transmission, although it will lower my highway speed. 

chevy k10 squarebody front suspension

The Reviews are In: Functional Programming in JavaScript "is AWESOME"

Submitted by Danny on Thu, 08/06/2015 - 12:57

From the very beginning, the goal with Functional Programming in JavaScript was to strip the veneer off the language to expose its inner beauty and functional roots, a necessary step in helping the reader to fully understand both the language and the functional programming paradigm. And now that some reviews are coming in, it appears that the goal has been met.

How To Restore a Guitar

Submitted by Danny on Mon, 07/27/2015 - 14:23

While it was one of my most admired possessions in middle school, the first guitar I ever owned had seen better days. It originally came in a satan black finish, but over the years it became shiny in all the normal wear spots which made it look terrible. And it's all around just a lame guitar to me now. So.. time to reinvent it! Here's how I did it...

painted guitar body

Creating Podcast XML from Drupal content

Submitted by Danny on Thu, 07/09/2015 - 13:11

I needed to create some podcasts for Kansas Public Radio, which uses the Drupal Content Management System (CMS). I couldn't find a satisfactory Drupal module that could create the RSS data that iTunes needs, so I had to come up with my own solution. IIRC, Drupal Feeds would have worked great but iTunes needs specific XML tags (i.e. <itunes:description>, <itunes:category>, etc) that Drupal Feeds couldn't provide. I also dried Drupal Views PHP but it was too buggy and I also couldn't get the code to output outside of the template.

Chevy K10 truck restoration Phase 3: Front Clip Swap

Submitted by Danny on Thu, 05/07/2015 - 10:06

I'm swapping front clips. Going from the square headlights to the round headlights. Why? Because I like it better, that's why. This is my project, I have a design goal in mind, and this is what I must do to achieve it. I want to turn my 80's truck into a 70's truck, make it more of a classic, more retro. Cooler. Honestly, it's about more than the round headlights. Mainly I want the older style fenders that allow for the really cool chrom trim.

There are no photo-documented tutorials for how to do this swap. None online that I could find. Therefore, I hope this information can be added to the collective knowledge of the squarebody community. 

Chevy K10 truck restoration Phase 2: Body Work and Rust Removal, Part 2

Submitted by Danny on Thu, 04/30/2015 - 14:21

More body work! I'm swapping front clips because I like the round eye headlight style and the fenders that go with it will allow me to use the older style chrome trim. But the front clip I found off a 73 or 74 c20 has a lot of rust and will need work. The learning experiment continues, this time I learn how to weld patch panels with a flux-core, wire-feed welder.

Chevy K10 truck restoration Phase 1: Acquisition & Engine Rehab

Submitted by Danny on Mon, 04/27/2015 - 14:54

After completing my book, I needed some mental rehabilitation. Something therapeutic and relaxing. I also had a (small) wad of cash from the deal so I decided to buy an old truck! I found this old guy, I've named him Hank, someone's old hunting truck. It belonged to an older gentleman in Wyoming and he gave it to his grandson who was entering the marines. The grandson drove it to Missouri and sold it to the guy I bought it from. I have no idea at what point in the truck's life that the engine was swapped out for a 350 and it was converted from 2wd to 4wd! The VIN shows it's a 2wd truck but it is most definitely a 4wd. So it was either converted to 4wd, or a cab with the exact same color scheme was swapped (unlikely). Someone put a lot of money into this truck, and it's kept it's value pretty well. Only a loose bolt and little bit of rust here and there (I'll soon learn just how "little").

I think I wrote a book: Functional Programming in JavaScript

Submitted by Danny on Thu, 04/23/2015 - 14:56

You never know where life will take you. It may take you rock climbing in Argentina, it may take you to a farm in Nebraska, it may take you to a high-rise building in San Jose. Starting in October 2014, life took me (or, my name at least) to a publishing company in Birmingham, United Kingdom. A colleague of mine, Trent Hauck, wrote a book for the same publishing company and asked me to be a technical editor. I said sure! Little did I know that the experience would end up with me writing a book of my own.

Functional Programming in JavaScript by Dan Mantyla

Free! Honda CB200 CL200 Owners Manual and Workshop Service Manual free downloads

Submitted by Danny on Thu, 04/23/2015 - 14:00

Don't know why I didn't share this sooner! The Factory Service Manual (FSM) is a MUST!! It's also called the Workshop Service Repair Manual. The owners manual is nice to have too. It's also fun (for lack of better word) to find that the two documents contradict each other on a few things. For example, the owners manual says to tighten the cam chain by putting it in TDC first, while the FSM says to do it while the engine is running. I do as the FSM says.

DIY guitar pedal board

Submitted by Danny on Wed, 01/21/2015 - 00:54

DIY effect pedal board for stomp boxes, homemade from a suitcaseWhat do you do with an old suitcase and a pile of stomp boxes and patch cables? Turn it into a pedal board! This was a really fun project, one that doesn't require a whole lot of planing and can be made with things laying around the house. Here's how I made it.

Evaluating Old Honda Twins - Six Easy Steps

Submitted by Danny on Thu, 01/15/2015 - 12:27

I am reposting this gem of information for HondaTwins.net. The origintal article is here - http://www.hondatwins.net/.../evaluating-old-honda-twins-six-easy-steps.html - but as you can see is has been removed. It was an invaluable piece of information for me as a beginner, so it is my hope that other beginners will find this and get the help they need. Below is the transcribed article, all credit goes to someone by the name of Bill (who, I believe, was badly injured in a wreck and he deleted his account, very sad.)

Using Javascript/jQuery to check if offsite file exists with given URL

Submitted by Danny on Thu, 10/09/2014 - 15:30

So I needed to see if an MP3 was successfully uploaded to our streaming server, and display the status on our website where our user's access the upload form. However, I ran into some issues with Access-Control-Allow-Origin access headers and with just how to acquire the status code. It always fails, whether or not the file does exists, because the browser doesn't allow XMLHttpRequest from a different domain to try and prevent cross-site-scripting. The solution? Using the JSONP datatype, a sort of consensual cross-site scripting hack!

How to add Google Web Fonts directly to your stylesheet

Submitted by Danny on Mon, 05/19/2014 - 12:15

If you're using a CMS such as Drupal or Wordpress, it's not possible to add the link tag for the css file that google provides you&ndash; i.e. <link href='http://fonts.googleapis.com/css?family=Oswald:400,700,300' rel='stylesheet' type='text/css'>&ndash;without installing a module that would allow it (and who wants another module to maintain?). Here's a quick workaround I discovered that makes it really easy to simply add the css code you need directly to your stylesheet.

Photoshop Tutorial: Foggy Stage Lights

Submitted by Danny on Thu, 04/24/2014 - 12:00

I set off to create a background image for a website I'm making for a friend who wants to host his pod casts about the band Nine Inch Nails. I came up with a good idea, after finding some inspiration, but I needed to create it myself pixel-by-pixel to get the resolution I needed. What fallowed was an experiment with fog and light effects, and the end result came out pretty good!

Inspect and save apache request headers

Submitted by Danny on Tue, 04/22/2014 - 13:07

I wrote this function because one of our web apps that was communicating with our web server suddenly began receiving Error 406: Not Acceptable (The requested resource is only capable of generating content not acceptable according to the Accept headers sent in the request). So I inserted this bit of code to capture exactly what that accept header was and see if we could fix the problem. It writes the output to a file on the webserver.

Product Review: Nikon J1 with Nikon AI-S manual focus lenses

Submitted by Danny on Thu, 03/27/2014 - 19:56

I bought a Nikon J1 mirror-less camera to use with my old manual focus lenses. This review will focus on the camera's ability to use old manual focus lenses. I'll explain how well the camera body pairs up with lenses, and if they're easy to use with it. Long story short: they're not. And here's why...

Vintage Scrambler Build, part 1

Submitted by Danny on Sun, 02/09/2014 - 19:21

I love my 1974 Honda CL200, but some features are just... dorky. And what they're doing in Japan with old Hondas and Yamahas inspired me to do the same with mine. So what started off as a mild, stock-ish restoration project, began to steer in the direction of darkness when I decided to add some bratstyle/tracker styling cues. One thing led to another, and the next thing I find myself doing is bobbing the rear fender.

Motorcycle Side Cover Repair

Submitted by Danny on Sun, 02/09/2014 - 14:57

I'm no expert in automotive body repair, just an amateur with a camera and a desire to do things my way. Sure, I could take it to a pro, but I like the idea of learning how to do things myself, which provides me with confidence and gusto. Or I could try to find one on ebay, but they're so rare these days that it will cost a gigabuck and it's likely to be just a cracked, brittle, and broken. What fallows is my attempt at repairing them with a few supplies from the hardware store and willingness to learn and take risks.

How to refinish aluminum

Submitted by Danny on Sun, 02/09/2014 - 14:20

While restoring my CL200, all the aluminum had to be refinished: the engine side covers, wheel hubs, and fork tubes. Honda originaly covered them in a clear coat to protect from oxidation, but over the years that clear coat turned yellow, and any scratches and nicks allowed oxidation to creep in and crawl around. The result was a very ugly, very tarnished surface. Here's how I cleaned them up.

Whelp, I found her, my dream bike: Honda CL200 Scrambler

Submitted by Danny on Sun, 02/09/2014 - 13:18

For as long as I can remember, I've had my eyes peeled for a sweet old motorcycle. Not a Harley, not a crotchrocket, just a nice, standard motorcycle. And from the 60s or 70s. Well, I think I finally found her: a 1974 Honda CL200 Scrambler. Turns out it's a rare bird–it's the much less popular, "scrambler" twin to the CB200. 1974 was actually the only year they made them! It features high pipes for better off-road clearance, the moto-style bars, and off-road styling cues. I dig it!

Why You Should Not Use WYSIWYG Website Editors

Submitted by Danny on Tue, 12/03/2013 - 15:20

I built a perfect, beautiful, wonderful website using the Drupal CMS, Amason S3 and CloudFront for Atipa Technologies. Everything worked flawlessly and looked amazing. After I left the company, they decided to duplicated the work of a real web developer with one of those WYSWYG website editor (Adobe Muse by the looks of the source code). The result, as you can see, is pitiful. An uninspired child could make a better website than that. For shame...