Chit chat


Allegedly works to make a bootable usb (not tested) try at your own risk,

sudo cat XXX.iso > /dev/sdX && sudo sync

Thought I might get a free used computer for the hollidays but that did not happen.


Silverbullet media casting

Actually what I am talking about is the Google chromecast. Chromecast allows you to throw the video or other media from the Nexus 7 to an hdmi enabled device such as a newer tv or monitor. So now you can attach a larger monitor to your nexus 7 via wifi and the Chromecast. Setup is fairly easy and you should be able to do it all via the Nexus 7 using the Chrome browser with internet access. You will also need the Chromecast app from the playstore to be installed.  I now carry the Chromecast and a specially setup router with me. That is the Router is only set up to take the mac addresses or speciel identification of the devices to connect to the router. Also use wpa or better wifi encription. Not completely secure but not half bad.

Personally wish I had had it when I was teaching. For home I would probably prefer to use the Raspxbmc or the like.

Screenshot from 2014-01-02 14:00:51


While back I have made a cheap teleprompter, but you had to use the internet to take advantage of it. This software would probably work great with a touchpad as it is basically a web page that does not take up nuch room. you can find more information at:

Screenshot from 2013-12-28 21:03:41

Example code:


body {
font-family: Helvetica,Arial,sans-serif;
font-size: 2.4em;
line-height: 1.4;
background: #000;
color: #fff;
overflow: hidden;

#speech {
position: absolute;

p {
margin: .5em;

.slide {
text-align: center;
margin: 0;
<script type=”text/javascript” src=”teleprompter.js”></script>
<div id=”speech”>

<strong>From Basic Forms to Shopping Carts</strong><br><br>
An electronic shopping cart is a critical aspect of an e-commerce business. The shopping cart is the software (or series of scripts) that allows users to select products from your Web site, save them and check out when they are done shopping. In the early stages of electronic shopping, the shopping cart was usually a basic HTML form from which a customer selected the products he  wanted to purchase. Long before using a credit card over the Internet was widely accepted, it was common to find that you would need to print the form and mail it along with a money order or credit card information to the company. Over time, as e-commerce grew and online stores began to offer hundreds, if not hundreds of thousands of products, obviously a better method for storing a customer’s purchases and placing an order was needed.</p>
The shopping cart acts as the user-interface for the customer to shop. It allows users to place items in a “shopping basket”. The cart remembers these items for a predetermined length of time, usually 15 to 30 days unless the shopper removes the items from the cart. Today’s shopping carts are really designed for the ease-of-use of the shopper. Extra features such as different color or size options, quantity of order, and matching item links can be integrated into the shopping cart. Once a shopper enters her shipping address, taxes and shipping costs can also be tallied from within the shopping cart. For the merchant, the shopping cart also provides important information, which is often transparent to the shopper, including a cart number to track the order, and even a cookie to provide you with some limited tracking details about your customer.</p>



/*global document, window, event */

var scroll = function(element) {
var scrolling = null;
var inc = 1;
var wait = 50;
var getYpos = function() {
var ypos = element.offsetTop;
var thisNode = element;
while (thisNode.offsetParent &&  (thisNode.offsetParent != document.body)) {
thisNode = thisNode.offsetParent;
ypos += thisNode.offsetTop;
return ypos;

var doScroll = function() {
var y = parseInt(getYpos(),10);
y=y+”px”; = y;
scrolling = window.setTimeout(doScroll,wait);

var toggleScrolling = function() {
if (scrolling) {
scrolling = null;
} else {

element.onclick = toggleScrolling;

// ‘keys’ code adapted S5 (
//    which was in turn adapted from MozPoint (

var keys = function(key) {
if (!key) {
key = event;
key.which = key.keyCode;
switch (key.which) {
case 221:    // ]
if (scrolling) {
case 219:    // [
if (scrolling && inc>1) {
case 10:    // return
case 13:    // enter
return false;
document.onkeyup = keys;

var init = function() {
if (document.getElementById && document.getElementById(“speech”)) {

window.onload = init;


Recieved stuff via family from Google the last two years. Last year it was the Nexus 7 and this year it was the Chromecast. The nexus seven is fairly useful, thoughI have not taken full oadvantage of it. Loaded dosemu on the unit so I could use my old qbasic programs such as an editor, spreadsheet, and database. Was using a Daap client but removed it so I could use our mpd (music)  server. instead. .Upnp seems to work well within the same subnet. Will probably set a server just for the google stuff on a separate network so it will not be a problem with what connects to the internet. was able to cast from the nexus 7 to a vga an hdmi ready monitor. Donot like to have an extra app on machines to do that. I see security iissues there,


There was a discussion about the new portable equiment such as the Chromebook and other offerings.this was my responce:

If I got a chromebook, linux would be automatically installed. As for m$ being ethical, I guess that is why both here and in the EU, it was judged a monopoly among other things.  I can tell you of countless stories that never hit the news (MSnbc) where things were allegedly anything but kosher. Still suspicious of Gary Killdall’s death. Too convenient. People also forget the shrinkwrap agreement days which was eventually found to be unconstitutional in the US. Now computers come without separate backup media which is a crock. Real smart MS. The proprietary computer industry is “so ethical” that you are not allowed to modify your equipment with breaking some stupid (s/b unconstitutional)  law. I bought it and I am NOT renting it, so I will do what I please with MY equipment AND software.

I will not purchase an item where you get locked into the techmology. That goes for Sony, Apple, MS, Google, and  or whomever. The most recent hardware offerings tend to do that and support dissipates quickly if you have not bought the latest toy,  Companies have forgotten what ROI (return on investment) means to a customer in these tight times. Planned retirement of equipment seems to be the norm. I will not mention the name of the company, but I remmember as a tech we would order replacement parts just before the warranty went out, because 99 times out of a 100 the equipment would fail as soon as the warranty expired.

Lastly, With linux and bsd, I can still use equipment that I bought over a decade ago. You can not do that with most proprietary computing devices.  Thank god they are not under the new insane licensing agreements. To that end, Software patents are a crock.


Got out the old mythtv box and updated it. made a few tweaks and all was well.



Old hardware can be used for doing electronics.


You can use the joystick port for analog input just like the Arduino. (less accurate though).



“Bad block messages” usually happens when drives will not mount or boot completely.

Checkout error for sure

dmesg | tail

[ 4324.292510] sd 3:0:0:0: [sdb] Assuming drive cache: write through

[ 4324.292521] sd 3:0:0:0: [sdb] Attached SCSI disk

[ 4327.713599] EXT4-fs (sdb1): ext4_check_descriptors: Checksum for group 1536 failed (18982!=0)

[ 4327.713612] EXT4-fs (sdb1): group descriptors corrupted!

[ 4331.946594] EXT4-fs (sdb1): ext4_check_descriptors: Checksum for group 1536 failed (18982!=0)

[ 4331.946607] EXT4-fs (sdb1): group descriptors corrupted!

[ 4342.836612] EXT4-fs (sdb1): ext4_check_descriptors: Checksum for group 1536 failed (18982!=0)

[ 4342.836625] EXT4-fs (sdb1): group descriptors corrupted!

[ 4600.601626] EXT4-fs (sdb1): ext4_check_descriptors: Checksum for group 1536 failed (18982!=0)

[ 4600.601637] EXT4-fs (sdb1): group descriptors corrupted!

Get back up blocks (if any) so problem can be resolved.  sudo mke2fs -n /dev/xxx

$ sudo mke2fs -n /dev/sdb1

mke2fs 1.42 (29-Nov-2011)

Filesystem label=

OS type: Linux

Block size=4096 (log=2)

Fragment size=4096 (log=2)

Stride=0 blocks, Stripe width=0 blocks

15007744 inodes, 60001024 blocks

3000051 blocks (5.00%) reserved for the super user

First data block=0

Maximum filesystem blocks=0

1832 block groups

32768 blocks per group, 32768 fragments per group

8192 inodes per group

Superblock backups stored on blocks:

32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,

4096000, 7962624, 11239424, 20480000, 23887872

Run the fix. Takes an eon. Battery backup required. sudo e2fsck -b block_number /dev/xxx

$ sudo e2fsck -b 23887872 /dev/sdb1

Group descriptor 1825 checksum is invalid.  FIXED.

Group descriptor 1826 checksum is invalid.  FIXED.

Group descriptor 1827 checksum is invalid.  FIXED.

Group descriptor 1828 checksum is invalid.  FIXED.

Group descriptor 1829 checksum is invalid.  FIXED.

Group descriptor 1830 checksum is invalid.  FIXED.

Group descriptor 1831 checksum is invalid.  FIXED.

Pass 1: Checking inodes, blocks, and sizes

Deleted inode 10882413 has zero dtime.  Fix<y>? yes

Still several more passes to make.,


An idea for a computer controlledtv antenna:

Screenshot from 2013-12-28 22:08:01

EXT4-fs: group descriptors corrupted! Cannot mount disk using Ubuntu

Whaaa, Datageddon! My 2TB external just decided to stop working. “dmesg | tail” gave me the worst of the worst messages: “EXT4-fs (sda1): group descriptors corrupted!”, which translates to me as “kiss your data bye bye”…

After some searching I came across the magic terminal commands to solve the problem:

Check for backup superblocks, replace the x’s with your partition name
# sudo mke2fs -n /dev/xxx

Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208

Restore the superblock from the backup, again replacing the x’s with your partition name, and block_number with the first backup superblock
# sudo e2fsck -b block_number /dev/xxxNow just wait 1 million years for it to fnish, and you’ll have you trillions of bytes back.  :crazy:


EXT4-fs (sda1): group descriptors corrupted!
fsck.ext4: No such file or directory while trying to re-open
EXT4-fs (sdb1): group descriptors corrupted!
Error writing block 1 (Attempt to write block to filesystem resulted in short write). Possibly non-existent device?
EXT4-fs (sdc1): group descriptors corrupted!

– See more at:


Using bash oversumplified to create a web page so that you do not have to go to a bunch of web pages and therefore you miss the ads.. You can find similar code for the sub programs in earlier articles.


# daily journal

echo “<html>” > report.html

echo “<body>” >> report.html

echo “<script>” >> report.html

echo “var d=new Date();” >> report.html

echo “document.write(‘<h2> Journal for ‘);” >> report.html

echo “document.write(d);” >> report.html

echo “document.writeln(‘</h2>’);” >> report.html

echo “<hr>” >> report.html

echo “</script>” >> report.html

echo “<hr>” >> report.html


# weather

echo “<h3>The weather</h3>” >> report.html

echo “<pre>” >> report.html

# creates tw  20201 >> tw

echo “<pre>” >> report.html

cat tw >> report.html

echo “</pre>” >> report.html

# echo Journal for: $(date) >> report.html

# display weather map

echo “<img src=”; alt=”” width=300 height=450 />” >> report.html


# horoscope

echo “<h3>The horoscope</h3>” >> report.html

# creates h virgo > h

echo “<pre>” >> report.html

cat h >> report.html

echo “</pre>” >> report.html

echo “</body>”  >> report.html

echo “</html>” >> report.html

Screenshot from 2013-12-27 07:55:06

You may want to get a list of airport codes for the weather like below.

Airport Codes

Browse by selecting the first letter of the city name.

United States and Canada | International

A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | Y


  • Abbotsford, BC
  • YXX
  • Abbotsford Airport
  • Aberdeen, SD
  • ABR
  • Aberdeen Regional Airport
  • Abilene, TX
  • ABI
  • Abilene Regional Airport
  • Akron / Canton, OH
  • CAK
  • Akron-Canton Regional Airport
  • Alamogordo, NM
  • ALM
  • Alamogordo-White Sands Regional Airport
  • Alamosa, CO
  • ALS
  • San Luis Valley Regional Airport
  • Albany, NY
  • ALB
  • Albany International Airport
  • Albany, GA
  • ABY
  • Southwest Georgia Regional Airport
  • Albuquerque, NM
  • ABQ
  • Albuquerque International Sunport
  • Alexandria, LA
  • AEX
  • Alexandria International Airport
  • Alexandria, LA
  • ESF
  • Esler Regional Airport
  • Allentown, PA
  • ABE
  • Lehigh Valley International Airport
  • Alliance, NE
  • AIA
  • Alliance Municipal Airport
  • Alpena, MI
  • APN
  • Alpena County Regional Airport
  • Altoona, PA
  • AOO
  • Altoona-Blair County Airport
  • Amarillo, TX
  • AMA
  • Rick Husband Amarillo International Airport
  • Anchorage, AK
  • ANC
  • Ted Stevens Anchorage International Airport
  • Arviat, NU
  • YEK
  • Arviat Airport
  • Aspen, CO
  • ASE
  • Aspen-Pitkin County Airport
  • Athens, GA
  • AHN
  • Athens-Ben Epps Airport
  • Atlanta, GA
  • ATL
  • Hartsfield-Jackson Atlanta International Airport
  • Atlantic City, NJ
  • ACY
  • Atlantic City International Airport
  • Atlantic City, NJ
  • AIY
  • Atlantic City Municipal Airport
  • Auburn/Lewiston, ME
  • LEW
  • Auburn/Lewiston Municipal Airport
  • Augusta, GA
  • AGS
  • Augusta Regional Airport at Bush Field
  • Augusta, ME
  • AUG
  • Augusta State Airport
  • Augusta, GA
  • DNL
  • Daniel Field
  • Aupaluk, QC
  • YPJ
  • Aupaluk Airport
  • Austin, TX
  • AUS
  • Austin-Bergstrom International Airport
  • Avoca, PA
  • AVP
  • Wilkes-Barre/Scranton International Airport


Soup and shoe biscuits:


Good day.