TV Manufacturer’s HDMI-CEC Trade Names

TV Brand                        => HDMI-CEC Marketing Trade Name

  • AOC                          => E-Link
  • Hitachi                      => HDMI-CEC
  • Insignia                     => MHL (Mobile High Definition Link)
  • LG                             => SimpLink
  • Mitsubishi                 => NetCommand for HDMI
  • Onkyo                       => RIHD (Remot Interactive over HDMI)
  • Panasonic                  => EasyLink
  • Pioneer                      => Kuro Link
  • Runco International   => RuncoLink
  • Samsung                    => AnyNet+
  • Sharp                         => Aquos Link
  • Sony                          => BRAVIA Sync
  • Toshiba                     => CE-Link aka Regza Link
  • Vizio                         => CEC

The Embedded Linux Wiki defines HDMI-CEC rather well. Briefly, this HDMI protocol allows controlling multiple devices using one controlling device such as the ubiquitous remote controller each TV and other types of consumer electronic devices have had to supply with their product. The trick is all devices have to be compliant and some manufacturers have implemented the protocol slightly differently so results may vary.

Regardless the more the TV per se becomes a networked computing platform the more it has to support various communications protocols and as time goes on compliance with specifications will be ironed out as such concerns have with other communications protocols however obfuscating facts with marketing bullsh!t will likely be with us forever.

CSS Selector Usage Can Be Clear As Mud

I’m writing the code snippet at the top of this post for quick reference. Basically, what we are trying to remember is the different results when using Class Selectors and Descendant Selectors that appear to be the same when declared in our CSS but are in fact subtly different when declared in our HTML especially when names may be identical e.g. .warning as the use of the snippets in an easy test will clearly show.


.warning    { color: red;   }   /* .warning is a Class Selector */
h6            { color: green; font-face: cursive;}    /* h6 is a Type Selector */
h6.warning  { color: red;   } /* .warning is still a Class Selector */
h6 .warning { color: blue;  } /* .warning is a Descendant Selector */


<!—Type Selector –>
will be green</h6>
<!—Class Selector—>
<h6 class="warning">will be red</h6>

<!—Descendant Selector—>
<h6><span class="warning">will be blue</span></h6>


<h6>will be green</h6>
<h6 class="warning">will be red</h6>
<h6><span class="warning">will be blue</span></h6>

The W3C CSS Level 4 Selectors documentation is notoriously terse but as of late the authors have been providing examples which is a good thing especially when forgetting how to correctly use some forms of declaring selector usage such as E.warning which has been difficult to learn the name of the usage type so we can search on the name of the usage and learn how to correctly use two of the most common confusing forms of usage:

E.warning {…} and E .warning {…} are similar forms but the space on one form separating the Type Selector from the Class Selector produces different results and I often forget the subtle difference that produces the different results.

Strictly speaking the form of E.warning is –neither—a  Compound Selector nor a Complex Selector selector  because E is a Type Selector and .warning is a Class Selector. When the form of E.warning is used (no space) it meets neither definitions for Compound nor Complex Selectors because the dot (.) is not defined as a CSS Level 4 Combinator either.

We’ve looked at the documentation for Class Selectors and we learn the dot (.) separating E.warning is defined as a full stop (. U+002E)  and is syntax used to define a Class Selector named .warning noting the dot (.) is a syntactical part of the Class Selector’s name when declared in CSS such as .warning { color: red } noting again the dot (.) is omitted when the name of the Class Selector is used in the HTML such as <h6 class=”warning”>.

The subtle difference when declaring the CSS is learning how to correctly use the  Descendant Selector where the form of usage includes a space to separate selectors as in the form of E .warning.

Turning A New Leaf – Becoming a WordPress PHP Developer

What does a guy do when he’s been designing and developing websites since 1995? Well, one answer to that question was finally deciding to learn to code using PHP and developing with WordPress. This post is my first attempt learning how to use a source code syntax highlighter plugin. Click the ? mark in the source code to learn more about the plugin.

Here’s some of the first lines of PHP I learned to modify…

// CSG: wp_title() hack
add_filter( ‘wp_title’, ‘csg_wp_title_for_homepage’ );
function csg_wp_title_for_homepage( $title )
if(empty($title) && (is_home() || is_front_page())) {
return __( ‘Home’, ‘theme_domain’ ) . ‘ &raquo; ‘ . ‘CGC Geotechnical Engineering’ ;
return $title;

// CSG: enable AJAX in WordPress
add_action(‘admin_enqueue_scripts’, ‘add_ajax_javascript_file’);
function add_ajax_javascript_file()
{ wp_enqueue_script( ‘ajax_custom_script’, plugin_dir_url( __FILE__ ) . ‘ajax-javascript.js’, array(‘jquery’) );}

The Obammunists Are Transferring Control of the Internet to Communist + Fascist Nations


UPDATE: this screen captured image that follows is –exactly– what all Americans and others that want freedom and liberty have to oppose when those such as a dishonest, biased Canadian Communist embellishes and makes false accusations to disallow information to be made known to others… the AngularJS group being referred to is a LinkedIn Discussion Group for software programmers such as myself –that use the Internet– to publish our blogs, our software products and other such developments.

Hence, because we are dependent upon that which we are at risk of losing the accusations of being “off topic” made by the Communist are foolish and typical of the kind of false accusations made by the cowardly whose inferior intellect leaves them with no other choice but to lie and cheat when confronted with that which they fear most: free speech.

As of today’s date, according to his LinkedIn profile Gert Grenander clearly a Communist of the type being described works for the Canadian government ( apparently using Canadian government computers and networks connected to the Internet while at work to monitor and censor “his” LinkedIn discussion group. Yesiree, here is an example of a real ethical guy when it comes to accusing others of not following the so-called rules that at least in this case Mr. Pious and Mighty determines to suit himself. Does it make you wonder if he gets to make all the rules for the use of the Canadian governments computers and usage of the Internet too?

Canada, a nation that most Americans know has increasingly become controlled by Communists and Fascists alike vying for power and control of freedoms and liberties are those that hate and repress free speech being well represented by Mr. Grenander. If anybody is –hateful– as I was accused it is he, Gert Grenander and his kind as his actions like those of other Communists and Fascists alike are a perfect example of how serious this issue really is and will become.

This is only the beginning my fellow Americans. Just imagine what more persecution will follow if we Americans allow the Obammunists and other collaborating Communists and Fascists to transfer control of IANA to these types who hate free speech if and when they are allowed to control who can and who cannot make information known…


ORIGNAL POST: The New World Order Communist as-of-yet unprosecuted criminal Barry Soetoro aka Barrack Hussein Obama is attempting to pass control of IANA [1] to Communist nations as well as other nations that claim to be "Democratic" noting none of which have, recognize or abide by our Constitution of the United States and all from which that Constitution both infers and implies.

IANA as I expect all of you to know (or to immediately learn) controls the assignments of Internet domain names which every website or web application requires to be accessed to make its content available when using the Internet as the means to transport the content to the devices being used to request and display the content. The control of the Domain Name System (DNS) is how websites and software that uses the World Wide Web are also disabled or otherwise blocked for access.



If allowed to transpire the transfer of IANA will in a very short period of time result in very little to no content that will be allowed to be accessed on the World Wide Web as the Communists and Fascists from other nations will be allowed to control “free speech” on the World Wide Web.

These other nations most assuredly will make their claims of this or that insult or this and that threat to their national security or this and that to whatever they whimsically assert as we have observed them doing since day one the Internet and the World Wide Web have been available to us. They will prevent our free speech because the dictator and his Obammunist collaborators are now handing over the control of the Internet to nations that disallow free speech.


Arguably, the Internet belongs to America. America created IANA to manage that which America created. We Americans built what was to become the Internet with our funds and our labors. Our American men and women lived and died to make it all happen and to keep it all operative. We Americans share the Internet with the rest of the world for many reasons none of which however have ever been a means to disallow our free speech from occurring.



What is at stake –NOW AT THIS VERY MOMENT– is the loss of our most valuable right –FREE SPEECH– and all that it entails which ONLY OUR CONSTITUTION OF THE UNITED STATES GUARANTEES AS LAW. All of which we stand to lose if the Obammunists and those that collaborate with them are allowed to transfer control of IANNA to other nations with other agendas.

It is now time for every man and woman in America to continue to sit on their @ss and say and do nothing to enable the Obammunists to transfer control of IANNA to others. After all, we do not need free speech anymore do we?

[1] Internet Assigned Numbers Authority (IANA)

Katie Couric Quirky Challenge Entry: The PairBeam Caregiver (sm)

Follow @virtualCableTV at Twitter

The PairBeam Caregiver (sm)
The PairBeam Caregiver assists caretakers to monitor the mobility of vulnerable persons

Using The PairBeam Caregiver
How The PairBeam Caregiver Functions

The Problem

The PairBeam Caregiver helps keep vulnerable adults and toddlers safe and cared for in their homes or within facilities solving a serious problem common to all caregivers; we can’t be in the presence of those we care for while busy elsewhere.

Aging adults called to dinner often leave their room without remembering to bring teeth or medications and can now be audibly reminded. Toddlers can hear a familiar voice causing them to pause long enough for a caregiver to respond.

The BeamBox controller may be configured to audibly inform or warn vulnerable adults, “speak” to toddlers and send notifications to caregivers who may respond to the circumstances. Caretakers now have a means to intervene when vulnerable persons move from safe areas to unsafe areas while staying busy elsewhere.

The Solution

The PairBeam Caregiver detects transverse movement across two pairs of Infra-Red beams controlled by a single board computer which emits audible messages at the point of demarcation and wirelessly sends notifications of the event to caretaker(s) when the beams are crossed from one direction and not the other.

Unlike conventional devices which detect movement within radial spatial zones causing high false alarm rates single direction break beam detection guarantees freedom of spatial movement until crossing a line of demarcation indicating movement in a direction into or out of safe or unsafe spaces providing care giving consumers peace of mind and the reliable assurance they may occupy themselves elsewhere until notified of circumstances which may require their presence.


Book Review – Learning Kendo UI Web Development

Learning Kendo UI Web Book CoverThis book authored by John Adams covers Kendo UI Web in a brief yet effective way for readers to use in actual applications. There’s not a lot of babble here as he focuses on nuts and bolts and helping to show how to git’ er’ done. His subtitle “An easy-to-follow practical tutorial to add exciting features to your web pages without being a JavaScript expert” can be taken seriously. This in my opinion is mostly due to Kendo UI Web itself which consists of innovative UI widgets for the web that are powered by jQuery, HTML5, CSS3 and wired up using a MVVM framework.

Telerik’s Kendo UI Complete actually consists of Kendo UI Web, Kendo UI Mobile and Kendo UI DataViz. As many of us know and others need to know, Telerik is a well known and highly respected developer of components, libraries and frameworks used by software developers to create many websites and applications many of us may be using each and every day.

This book by Mr. Adams covers Kendo UI Web –but– the interesting and useful fact to conclude is not one of any short coming but coming to understand once the reader uses this book to learn to integrate and wire up Kendo UI Web widgets the approach to wire up code for Kendo UI Mobile and Kendo UI DataViz is going to be the same experience using the same syntax and grammar.

I think now is a good time to review the Table of Contents and observe the types of widgets the reader will be introduced to. The book starts with understanding how to use the DataSource and gets right into understanding the Kendo MVVM Framework. In my opinion everything starts to fall into place after those two subjects are read and understood because  Mr. Adams writes in a lucid and well thought-out manner which results in working code examples.

Being a .NET developer Mr. Adams finally takes us on a short but useful foray into the use of the ASP.NET Web API, Entity Framework code first and OData showing us how to use Kendo Web UI to wire up the Kendo Grid and Kendo ListView.

I have acquired and have used several of Telerik’s products including Kendo UI Complete. Telerik has excellent support and writes extensive documentation for their products. It is my strongly held opinion and my recommendation to those interested in this contemporary approach to web development to purchase Learning Kendo UI Web Development and use the book or its e-book side-by-side with the trial download of Kendo UI Web itself as doing so will help you learn and decide if Telerik’s products are right for you. 

Using the hosts file as a Domain Name Server to host websites on Windows OS client machines

I’m going to explain a way to use a Windows OS client machine to function as a DNS (Domain Name Server.) These days I don’t see much mention of the use of host headers which we may create with simple text edits enabling us to use our Windows OS client machines to function as a DNS. 

Back in the day web designers and developers found it very difficult to run and test multiple instances of multiple websites running on their Windows OS client machine(s). Once Microsoft provided a free version of a web server such as the Microsoft Internet Information Server (IIS) with their Windows OS learning to use the hosts file has really become what seems to be a best kept secret. After reading these comments and trying out the configuration I think most will agree using the hosts file is the most useful way to load and test web pages and sites that run in a browser.

Well, some argue that point because vendors like Adobe and Microsoft et al. began providing rudimentary automated testing by allowing us to launch an instance of a browser from within their products such as Dreamweaver or Visual Studio. In time the vendors also began installing various types of “mini” client-side web servers like Cassini so we could load and test websites in browsers. For most using those capabilities is how they load and test their web sites and pages.

That being fine and well such rudimentary capabilities did not and do not generally allow us to load multiple instances of a website or multiple instances of a given web page in multiple instances of any and all types of different browsers so we may test our work most efficiently. In a world where we must design and test for multiple browsers learning to use the hosts file pays off.


  • enables a Windows OS client machine to function as a DNS server.
  • enables loading and testing as many sites or pages as wanted.
  • enables loading and testing using multiple instances of any browser.
  • enables loading and testing side-by-side in different browsers
  • enables rapid edit-and-continue testing
  • enables loading and testing independently of an IDE.


Make sure IIS is installed on your Windows machine…

Create a folder named hostsDemo anywhere on your file system that contains a default.aspx file with the following suggested contents…

<%@ Page Language=”C#” %>
<script runat=”server”>
protected String GetTime()
    return DateTime.Now.ToString();
    <h1>Current Date and Time: <%= GetTime() %></h1>

Launch an instance of a browser such as IE and request http://hostsDemo…


Now we’re going to learn why using the hosts file is so useful.

Launch IIS Manager and select Sites > Add Web Site…



Use Windows Explorer to navigate to C:WindowsSystem32driversetc and open the hosts file in a text editor. Note you may have to manage access to the folder and write permissions on the hosts file. Add the hostsDemo entry to the hosts file as shown and save the hosts file.


Now, let’s try to launch an instance of a browser such as IE, Firefox, Chrome or whatever browser you would prefer to request http://hostsDemo again. Ta-Da! If you used the sample code above you should be seeing a page displaying the current date and time.  Obviously we can do this with any host name we want.

You have now learned to use the hosts file as a DNS on a Windows OS client machine. Any version of the Windows OS which supports the installation of IIS will support using the hosts file in this manner.

Any number of browsers can now be used to load the same file for review when designing and developing web sites or pages to enable viewing the page side-by-side in different browsers.

Finally, when using Visual Studio for developing web sites or projects that require server-side code simply use this method to setup the folder as an application and use Visual Studio to select and use the new application folder to store its files as in my experience it is the most efficient way to perform server-side edit-and-continue which requires visual validation of what is displayed in a page.

gener8tor – The latest carpetbaggers to show up to “help” startups in Southeastern Wisconsin

In my experience these guys from gener8tor are dishonest disingenuous carpetbaggers especially Joel Abraham whom I’ve had the displeasure to be insulted and abused by for simply trying to help local startups here in Milwaukee only to learn he is what I consider to be a weasel.

When gener8tor hosted their first event down at the Lakefront I attended the event and approached Abraham with information known to be of help to startups. I also approached another of the so-called "founders" who would not identify himself telling me I should work with Abraham. The point being, as one working as a software developer myself I know many startups in Milwaukee and throughout Wisconsin are also using software to start and operate their businesses and many of such endeavors offer their product or service as software which has to be manufactured. Obtaining licensed software is quite expensive and while there is free open-source software there is nothing comprehensive and as widely used as Microsoft’s software products used to operate a business this being an arguable but irrefutable fact regardless.

Microsoft has a long history of supporting software development startups. Say what you will about the company’s motives but the facts are what they are and the facts are Microsoft has a long history of supporting startups. Through its Microsoft BizSpark Program the company gives away up to $60,000 of the company’s software products absolutely free with only two strings attached: the startup has to sign up with the program and the startup has to do so using a mentor which is also signed up with the program noting neither of which incur any monetary costs but for the few minutes required to fill out a form to register with the Microsoft BizSpark Program.

Wisconsin has no BizSpark Network Partners in Wisconsin as mentors such as a gener8tor are referred to. It is embarrassing to load the map in a web page to observe all of the pinned partners in Illinois and Minnesota. Hence, I approached Abraham and volunteered my help to provide gener8tor with the information he and others would need to assist startups.

BizSpark registrants receive operating systems for servers, desktops, mobile device software, office productivity applications, databases and much more including the venerable Visual Studio which is literally renowned throughout the industry having earned its reputation as the best of the best software development tool set. I am making a big deal of describing this opportunity as it is important to get the point across.

There are very few of the company’s software products that Microsoft manufacturers that are not provided to startups who have to pay the cost of simply filling out a registration form with a short description of themselves. Up to 25 people in the startup are granted free use of the dozens of free software applications for what I recall to be a three year term –which at no additional cost but for the asking– can be extended to five years, the thought being if the startup is not successful within five years it won’t really matter if they do or do not become customers of Microsoft or not. Microsoft wishes them well and takes its "loss" miniscule as it may be for a company with ~40+ billion in cash on hand.

At the lakefront event I advised Abraham and his colleague of this opportunity and handed them some notes I had prepared which included links to the Microsoft BizSpark Program. I also volunteered to collect more information and provide a step-by-step registration process to Abraham which I did over the following month using email.

Then Abraham stopped replying to me. A couple more weeks went by and I asked him why he was not replying. He sent me a blunt "too busy" to which I followed up asking if he was going to register with the BizSpark Program so startups in Milwaukee and those throughout Wisconsin could avail themselves of the benefits if they so chose to do so. His reply was "no" and he was never to heard from again.

This is the kind of person Joel Abraham really is. I must also presume such gener8tor birds of a feather flock together. Microsoft haters no doubt looking this gift horse in the mouth as their ill will towards Microsoft has most assuredly caused undue and undeserved harm to startups in Milwaukee and others throughout Wisconsin who may not know about Microsoft BizSpark Program and as a result fail prematurely for lack of resources they may have otherwise been very interested in taking advantage of but for the ill will and lack of simple cooperation from whom I again colloquially refer to as a weasel, too "busy" or not.