Friday, April 22, 2011

The Kinect Driver Controversy


Over the years, video game console technologies have improved dramatically for the player.  I grew up playing Centipede on the Commodore 64, Jungle Hunt on Atari, and then came my classic Nintendo, the system I played most throughout my childhood years.  Since then, Genesis, Super Nintendo, Playstation, Xbox and Wii among many others came out.  With the graphics and ways to control the games we see today, it is amazing.

In 2006, Wii came out with a system that uses a wireless controller that detects movements in three dimensions.  In 2010, Kinect for Xbox was launched with a very similar idea to the concept of Wii and improving upon that by making it controller free.  You could play a game by simple hand gestures and voice commands.  A webcam-like device was used to track a player's movements.
In November 2010, Adafruit offered a bounty of $3000 for an open-source driver for Kinect.  Microsoft was upset about this because they did not want any modification performed on any of its systems including Kinect and Xbox.  Microsoft did not want someone hacking into their system to retrieve the code used for their products.  With the original bounty offered by Adafruit, hacking was not what was being asked for.  Microsoft later stated that they do not warrant hacking of the console itself but that the USB port was left open for design.

Within the same month, a winner was announced by Adafruit.  The winner, only 19 years old at the time, published the first Kinect open driver.  He created a Linux driver that allowed both the use of an RGB camera and also depth sensitivity functions of the system.  Interestingly, it seems that an individual who was a key player in the Microsoft Kinect development team also went after the bounty offered by Adafruit. 

Since the controversy between Adafruit and Microsoft, many companies and developers have since released their own open source drivers with various capabilities.  Since the start of creating an open source driver, a team was able to control a browser with hand gestures, another was able to simulate playing a piano by simply tapping their fingers to a surface and even NASA has shown interest in the technology after seeing a live 3-dimensional videoconferencing.

I feel that it is awesome that Adafruit initially came up with the idea to offer a small prize for creating the first Kinect open driver.  It seems obvious to me that if Microsoft had the brains and capability to do what the teams mentioned above are doing, they would have done it already.  I give a lot of credit to the young man that won the bounty and was able to produce the advancements to the system. 

As stated before with the Cathedral vs. Bazaar blog, Microsoft is in it for the profit and nothing else. There are only so many developers on the project team, meaning fewer ideas and less overall "eyes" to develop and enhance a project in addition to fixing bugs.  I think having this open source driver will allow advancements with many technologies.  Whether the advancement is intended for education, science, the military, or just simply for gaming experience pleasure, it will benefit all parties I believe...even Microsoft.

Saturday, April 16, 2011

What is "Net Neutrality"?


Net Neutrality is basically a guiding principle stating that all internet traffic is equal.  When you are on the internet and access a website, you are both sending and receiving "packets" across the World Wide Web.  If using DSL for example, these packets of data flow across the copper phone line.  With Net Neutrality, the packets sent from your computer at home should get the same amount of equal importance as packets sent from your neighbor or even packets sent from a person across the United States.

Network Neutrality has been around since the beginnings of the internet.  Those involved with the creation of the internet, including Vint Cerf, Robert Kahn and Tim Berners-Lee, designed the internet with full expectations that it would be a neutral network.  Although the internet is considered self regulating, the Federal Communications Commission (FCC) watches over Internet Service Providers (ISPs) to ensure they are operating within legal guidelines.


In 2006, Comcast, the largest home internet service provider in the United States, was reported as using hardware called Sandvine that sends forged TCP RST (reset) packets which prevented most Comcast users from uploading files.  In 2007, a peer-to-peer file sharing site called BitTorrent, said that Comcast was not allowing its users to send files.  In 2008, the FCC ruled that Comcast has broken the law by blocking the bandwidth of come customers.  In 2010, the court ruled that the FCC lacks the authority to force ISPs to maintain networks open to all types of content.  The FCC has since approved new rules that Republicans in Congress plan to reverse.

I feel that Net Neutrality is extremely important in making sure ISPs do not discriminate between various types of content online.  The major cable and phone companies of the United States, including Comcast and AT&T, want to have full control over how fast a website goes or cause the site not to load altogether.  They will control what you see content wise and discriminate so you see their own websites and not their competitors.

With cable television, for example, you can choose between various packages.  There is generally a Basic package where you get perhaps a half-dozen channels you like, if you are lucky, and the remaining channels are fluff like the Home Shopping Network and the Jewelry Network.  In order to get the channels you want, you have to upgrade to the Premium package.  Even then, you may not get your favorite channel like History or Animal Planet to where you must then upgrade to Super Premium.  With even the highest Super Premium package, you are still missing kid-oriented shows to where you must add-on additional Family packages.  You then must pay for additional add-ons if you want any movie channels. 


If we were to live in a world without Net Neutrality, the internet would be completely different from what it is today.  Just like ordering cable service as described above, you would be ordering what content and applications are available.  If the content is not offered by them, then you are out of luck.  They may offer YouTube but in order to access it, you must pay more, like a premium movie channel.  Your favorite news website, say The Huffington Post, a site you frequented daily, may no longer be available if Net Neutrality was taken away.


If you would like to remain in control of what websites you want to see, perhaps visit savetheinternet.com, a coalition of 2 million people with one common goal: to protect Internet freedom.

Wednesday, April 13, 2011

A Career in the Linux Field



There are many job opportunities throughout the United States that list Linux as an important skill required.  The demand for IT jobs has increased dramatically over the years.  More and more IT jobs are now requiring knowledge of Linux and including it in their job description.  Many companies are moving towards a Linux-based system and those job candidates knowing their way around the open source world are in high demand.




A career in specifically Linux is not as common as one where knowledge of Linux is one of many requirements.  Many jobs available now require not only Linux, but also Java, C++, Oracle, among other skills.  The minimum degree specified for various jobs in the IT world where Linux is used is a Bachelor in Computer Science.  Fields such as Computer Programming or Web Development now require at least intermediate knowledge of Linux or other open source software.




The pay range varies widely for jobs requiring Linux, based on location, job title, education level and level of experience with not only Linux but also programming languages and database design.  With researching PayScale.com for jobs requiring Linux as a skill, I found that a System Administrator can make nearly $55,000 a year while a Sr. Software Engineer can make upwards of $97,000 a year.  Both jobs listed above do require much more extensive education and experience and knowledge of many other skills.




There was an interesting job at HP that looks more specific to Linux.  The title of the job is Linux Administrator – Linux Clusters.  It is a part-time job in Omaha, Nebraska requiring a Bachelors Degree and 16+ years experience.  They want 3 years experience working with clusters, a strong expertise with RedHat Linux, Cluster Management Utility, Linux operating systems and networking, among other skills.  There was no mention of needing to know various programming languages like many of the other jobs I've seen posted.  I did not see a salary posted for the job but indeed.com shows that a Linux Administrator in Omaha, Nebraska would make about $67,000.  The same job title here in Reno would have a salary of $78,000 a year.




With what I have seen online, most jobs that require Linux also require a higher education and many years of experience.  With just starting out in the field, it would be beneficial I think to look into finding entry-level jobs or work as an intern.  There is a job for a Linux Desktop Support Intern in Chicago, Illinois for DRW Trading Group.  The requirements seem to be more suited for just starting out in the field after perhaps an associate's degree.  They require a strong experience supporting Linux with strong Ubuntu skills a plus.  That was interesting to actually see what we use in class, Ubuntu, as a skill desired among the company.  Other skills include basic support for various operating systems, desktops, mobile devices, etc. 




After researching the many jobs available out there, I believe the best one for me would an internship.  Although there is little to no pay involved, there are many benefits.  For example, the job listed above in Chicago offers fully furnished apartments, medical insurance, 401k, tuition reimbursement among other things.  I feel it would be an excellent way to get your foot in the door and also make invaluable networking connections.  With the economy still hurting leaving many without jobs, those jobs still left are competed for by highly qualified individuals.  With that, I think an internship sounds like a smart move.

Sunday, April 3, 2011

The SCO vs. Novell Trial


SCO versus Novell was a lengthy lawsuit battle that lasted nearly 6 years.  Novell, who owned the rights to the UNIX source code, entered into an Asset Purchase Agreement (APA) with the Santa Cruz Operation, which later became the SCO Group (SCO) after Caldera Systems acquired it.  SCO wanted Linux users to start paying them for software license fees claiming that Linux had code that SCO owned.  SCO also claimed that they were the owners of UNIX.


SCO (who was known to file lawsuits against many companies including HP and IBM) filed a Slander of Title lawsuit against Novell requesting that all UNIX copyrights be given to SCO and also forcing Novell to give up all claims to the UNIX code.  The case was eventually dismissed and Novell filed a counter-suit against SCO claiming Slander of Title and Breach of Contract among other things.  This legal battle lasted for years and went through many different court systems.


For the most part, the lawsuit battle seems to be over.  In June of 2010, Judge and jury ruled in favor of Novell on all issues and was thereby closing the case.  They ruled that Novell did indeed own the copyrights to UNIX.  Although SCO appealed the court judgment to the US Court of Appeals in July of 2010, it seems that this case is indeed finally over.  This was a major victory for the entire open source community, including Linux.