Author Archives: jsquaredz

Onkyo TX-SR706 Troubleshooting

A friend of mine has an Onkyo TX-SR706 receiver that had issues where the HDMI ports didn’t work.  All he gets through them is green artifacts.

After checking the interwebs, I see that there is a pretty common failure mode in these where the caps on the voltage regulators for the DAC board go bad, and lead to issues.  After probing the regulators with my Rigol DS2072A oscilloscope, I found a regulator with a lot of noise on the output indicating a bad decoupling cap.

Put a good cap across it, and viola, all good.  Decided to just go through and replace all the voltage regulator decoupling caps since I was in the equipment.

Here is a video.

Codecademy Review


Codecademy is a computer programming teaching platform “Made in NYC” by a group of about 20 young entrepreneurs whose mission is to “… rethinking education from the ground up.”  The company was founded in 2011 and has since had about “24 million users who had completed over 100 million exercises.”  This is an impressive impact they are having.  I was watching Jessica McKellar’s talk  “A hands-on introduction to Python for beginning programmers” where she taught a 3 hour class to introduce people to Python programming.  During the class she supplemented her talk by having people do exercises on the Codecademy  platform.  I liked what I saw on the Pycon 2014 talk so I decided to run through the Python Track.  Here are some thoughts.

Coding platform

I really like the coding platform.  You get stepped through a programming “track” from the beginning which starts with the basics, progressively getting deeper into the subject and all along the way you are doing something you can relate to in the real world.  An example of this is that when you are learning how to make functions in Python, its done by creating functions to compute the cost of a Vacation.  By the end of that section you have created separate functions to calculate the cost of a rental car, hotel, and airfare.  The lesson shows you how to pass parameters to the function and even call multiple functions within the function.  It’s a very effective way to keep someone interested and grounded in reality, and not just teaching the syntax in an abstract way.

On the left side of the page you get  stepped through a section 1 lesson at a time.  The site tells you what you are about to learn, there is a code example similar to what you are expected to generate, and some step by step instructions on how to do it.  Then in the main body of the page is your code file.  There are strategically places code comments telling you what the existing code is doing and sometimes providing hints like “don’t forget to have a colon after your if statement.  Finally on the upper right side there is a window showing the output of your program.


One of the really cool things is that as you go along through your efforts you earn badges similar to Khan academy. This is a fun addition and I always like getting surprised by a badge popping up after a certain point.  I think there is more that can be done on badges.  This seems to be a pretty nascent feature on Codecademy and should be further developed into something as robust as on Khan Academy.

Codecademy has recently done a complete website overhaul. I didn’t use it before, but the look and feel of the site is modern and fresh.  It is fast and I haven’t really run into any issues.  The site is written in Ruby on Rails and seems to run flawlessly.  As for the look and feel, I don’t think I would change a think.  Kudos.

Missing important languages and frameworks

There is only so much a small team can bite off and chew, but I think there are a couple glaring holes in the curricula at Codecademy.  Missing is anything related to mobile application development.  As this development represents half or more of the current computing worldwide it seems to be a big leave out.  I would like to see a Java track, which is arguably the most popular language and an Android development track which ,again, is one of the most popular mobile platforms.  In the same vein, I would suggest they add Swift programming and iOS framework development.

Also the most popular Python web framework has no track on Codecademy.  Django, which is powering sites like Pinterest, Instagram,

Another major part of programming is data storage and access.  SQL is a “coding language” that would be great to have on the site.  If a lesson track was put up on MySQL (or MariaDB preferably) the knowledge would be usable for pretty much any database backend someone ends up using, whether its MySQL, MSSQL, Oracle, IBMDB2, etc.  With these additions I am sure Codecademy would more than double the user base.

Missing social elements

Something that I find lacking is any social element on the website.  This seems to be missing everywhere on the site.  There are badges, so I would expect that some level of social interaction is in the cards, but even the most basic social interaction is missing.  Blog posts with no comments, no feedback area to suggest new features, no real place to post a bug, and the forums to have discussions with fellow students are hard to find. These items are all a big part of sites like Khan Academy and are a gaping hole in Codecademy right now.


This is a site with a huge potential to help countless millions of people to learn how to program.  The site and company are only a couple of years old at this point so I’m sure there is still a lot to do.   Computer programming and Web represent a huge opportunity for people.  The barrier to entry to creating your own web business is so low.  Codecademy helps to lower the barrier further by reducing the slope of the learning curve.  Programming gives us the language to speak to computers and use our imagination to create anything.  Codecademy is a good example of this as the founders, both from Columbia University, pretty much dropped everything and build a site that went from 0 users to millions in just a couple of years.

I will certainly be taking advantage of the resources, and hope to see Swift/iOS and Java/Android show up on the site sooner than later.

What is an air gapped Computer?

An air gapped (aka Air Walled) computer is essentially a technique for keeping a computer or network secure.  This is usually done by keeping the computer off the network physically.

This can be done to keep sensitive data on the Air gapped computer or network from being compromised, but can also be done to keep another network safe from an unknown network.

Examples from wikipedia follow:

  • Military/governmental computer networks/systems;
  • Financial computer systems, such as stock exchanges;
  • Industrial control systems, such as SCADA in Oil & Gas fields;
  • Life-critical systems, such as: Controls of nuclear power plants;
  • Computers used in aviation, such as FADECs and avionics;
  • Computerized medical equipment;
  • Very simple systems, where there is no need to compromise security in the first place, such as: The engine control unit in an automobile;
  • A digital thermostat for temperature and compressor regulation in home HVAC and refrigeration systems;
  • Electronic sprinkler controls for watering of lawns.

This Air gapping was discussed on the HBO series The Newsroom during the first episode of the third season, called Boston,  where some whistleblower trying to give Neal classified documents asks him to get an “air gapped computer.”  In the show they describe this as a computer that is not and has never been connected to a network. While this is not inaccurate, you can see above that there are other scenarios that qualify.


Filtering a range of IP addresses from Google Analytics

In order to exclude false site visits from my Google Analytics, I have implemented a filter that excludes everything from an IP address range.

First, I check my IP address.  I used my “WAN” ip address since that’s what Google sees when I visit my site.  I don’t have a static IP so this will likely change over time.

Screenshot 2014-10-27 17.13.01

Now that I know my current IPaddress… what is the IP allocation range for ViaSat? Lets look at ARIN (American Registry for Internet Numbers), for the answer…

Screenshot 2014-10-27 17.46.29

This gives us a nice range of 131,072(2x256x256) IPv4 addresses.   I decided to just filter out anyone who is coming in over ViaSat’s ip range.  Sorry ViaSat visitors but your only being filtered from Analytics, so this isn’t such a big deal.

Log in to your Google Analytics account, then click on Admin.  Click “All Filters” then click “New Filter.”   Give it a name, then select “Custom” filter type.

Select “IP Address” in the Filter Field if it’s not already.  Then in the “filter Pattern” text box, you put a “regular expression” that suits the range you want.  In this case I am doing


This should exclude the range from to

I used the free IP address range regex generator from

Hope this helps someone.

“Hell Skull” print with Colorfabb XT

I saw this “HELL SKULL” 3D print from Thingiverse and immediately knew it would look awesome printed in Colorfabb XT Clear filament.


HELL SKULL by Sculptor featured on Thingiverse

Colorfabb XT

For those that haven’t seen it before, Colorfabb XT is an amazing Polyester blend that prints as easily as PLA, with really high strength and transparency.  I buy my Colorfabb stuff (all of their filaments are great) from, their US importer.

Although you can pretty much just use your printers ABS print settings, it is ideal if you can set the printer specific for this filament.   After much playing around I have come up with these settings as giving very good transparency and finish quality with XT:

Slicer software settings

  • Layer height .25mm (large layers with Colorfabb XT for better transparency
  • Shell Thickness 1.2 (3x my .4mm nozzle)
  • Bottom/Top thickness : 1.25mm (5x Layer height)
    speed 30mm/s (slow speeds give better transparency with Colorfabb XT)
  • Fill density to 0% (ie no fill)

On the Ultimaker 2:

  • Colorfabb XT clear filament
  • Extruder temp 260ºC
  • Fans at 25% (off for the first few layers to get good bonding to the bed)
  • Bed at 70°C

 The results

This slideshow requires JavaScript.

Hope you like it.  Let me know below if you make one, or if you have worked with Colorfabb XT.  I am always looking for feedback.