Sunday, February 27, 2011

Speculation: Android Phones and Tablets in 2011

Now that we've talked about what Apple has coming, let's talk about Android's 2011 phones.  Tablets are mentioned in the end.

Thinner, Better, Faster
Android phones are already heavy on features.  The bulk of the upgrades this year will be evolutionary.  Processors will be faster with the release of the dual-core phones, like the Motorola Atrix.  RAM will be increased; the Atrix and Samsung Galaxy S II have 1 gigabyte of RAM and it's reasonable to consider that 1GB will be standard by the end of 2011.  Screens will hopefully begin to approach the extraordinary resolution of the iPhone 4's Retina Display.  But even if they don't approach that excellent resolution, new Super AMOLED Plus screens (like the one in the Samsung Galaxy S II) are thinner, brighter and more efficient than the old SAMOLED screens (http://www.oled-info.com/super-amoled-plus).  Some phones will get thinner.  The Samsung Galaxy S II will be 8.5mm deep, a bit thinner than the iPhone 4's 9.3mm.  Video recording resolution will be bumped up to 1080p, like the LG Optimus 2X.  Cameras on the front and back will increase their megapixels.

The New Stuff
Front and Back Cameras: Is this worth mentioning?  The Nexus S, a dream phone in most other ways didn't have this, so perhaps it's worth saying that almost all Android phones will have this.

4G: A no-brainer (though also lacking from the Nexus S).  Pretty much all Android phones will have 4G (be it LTE, WiMAX, or HSPA+) in 2011.

Gorilla Glass: This ultra-tough glass featured in the Atrix and some other phones will make the screens difficult to break.

NFC: It's hard to say whether NFC will be successful in it's attempt to replace our credit cards as payment devices, but this hardware feature already on the Nexus S and coming to the Galaxy S II will most likely be seen on more Android phones in the future.  And even if it isn't used for payments, it could become a handy way to transfer information to and from the phone.  For example, you'll be able to pair bluetooth devices just by tapping them together.

DLNA: DLNA is a technology that allows you to stream media to your TV (or other devices) wirelessly, as long as both are on the same network.  This means, in short, streaming videos and pictures from your phone to your TV.  We're getting to an age where everything including your toaster is hooked up to your wireless router, so it's exciting to see this interconnectivity actually have a point.  Several phones have this already (Droid X, Droid 2, HTC Thunderbolt), so the only reason many phones may not get this in 2011 is because of seemingly slow adoption by TV manufacturers.

Cheaper Price: iPhone's have a rigid pricing structure, and unless you take your chances with eBay, you're gonna pay $200 for the cheapest iPhone with a new contract.  Not so with Android.  Secondhand phone dealers, such as Amazon.com and Radio Shack, have been knocking down prices on Android phones recently.  The Motorola Atrix is currently $200 from AT&T, but is $150 when you buy it from Amazon Wireless and $130 at Costco.  The availability of brand new, hi-tech, and less expensive Android phones will be the death knell of the iPhone.  When the iPhone 5 comes out this summer, every carrier will already have an Android phone that can do everything the new iPhone does, and for less money.  The iPhone will start to become a niche phone.

Ice Cream: In late 2011, a new version of Android OS will be released.  All signs point to it being a mix of the Gingerbread and Honeycomb versions of the OS.  All I can gather from this is that the beauty of Honeycomb's UI will make its way to phones.  It also might mean greater interactivity between Android phones and Android tablets.  But, if history is any indication, most 2011 Android phones won't receive the update in 2011, if they get it at all.

Hopes
Webtop: The absolute coolest thing about the Motorola Atrix is its "webtop" app that allows you to see your phone on a larger screen (laptop or TV) without simply stretching the screen.  Google would do well to build this functionality into its OS.  Even if it was a simple screen-stretching video out function, I can think of many uses putting your phone on the big screen.  Hopefully, Google will put something like this in Ice Cream, though I won't hold my breath.

Battery: With Android's already short battery life, more powerful processors will necessitate a larger battery.  Instead of making the phones thinner, let's make them a bit thicker with larger batteries.

Higher Resolution Screens: SAMOLED looks great and SAMOLED Plus should look even better, but it's hard to top the crisp, clean look of the iPhone 4's 326 pixels-per-inch Retina Display.  I want to see high-resolution screens on Android and the new big thing in Android screen technology--SAMOLED Plus--actually has a worse resolution per inch than SAMOLED (check the oled-info.com link above).

Wish List: What I Want
I am determined to get a new phone this year, after I see what the iPhone 5 has to offer.  Most likely, I will go with Android.  If I can find a 4G Android phone with 16GB internal storage, a pretty screen (SAMOLED Plus or something with a high pixel density), a way to show media on my TV (either DLNA or an HDMI port), and stock Android (or rootable so I can put stock Android on it), then I will buy it.  The Atrix almost fits most of this description and it was hard not to go out and buy it. The locked (or rather, signed) bootloader helped me save my cash.

Tablets
Tablets will get these features, slowly.  It's hard to say what will happen because the Motorola Xoom (the tablet I'd call the first real Android tablet) is yet to be released.  But just like with the iPhone and iPad, new features will appear in the phones first, then trickle down to the tablets.

That's it for Android.  If I have time, I'll write about WP7 and the other OSes.

Monday, February 14, 2011

Speculation: iPad 2 and iPhone 5

It's already February and I haven't listed the specs for all the upcoming gadgets.  My bad.  I'll start with the Apple products.

The Obvious: Thinner, Better, Faster
As usual, the next iPad and iPhone will likely be faster due to upgraded RAM or an upgraded processor (likely dual-core) or both.  The iPad 2 might be thinner, but the iPhone 5 probably won't because Apple already went through a major design change with the iPhone 4 after three phones with the same design.  They aren't likely to change it up again (except to fix that pesky antenna problem).  The next iPad will come out in April or May and the next iPhone will be released in June or July.

iPad
The next iPad should have a CDMA antenna so it can be available through Verizon.  Verizon has already promised a Verizon iPad, although the iPad 2 wasn't specifically mentioned.  The iPad will NOT have the rumored SD card slot if for no other reason than it would ruin Apple's tiered pricing for different amounts of storage.  Front and back cameras are rumored.   I definitely agree with the front-side camera because it would mean Facetime was available on one more device.  AppleInsider says it might have a mini DisplayPort.  A price drop is somewhat out of character for Apple, but it would help them compete with the cornucopia of Android tablets that will be release this year.  A price drop on the more expensive models is more likely than a price change on their cheaper models.

CrunchGear has a good article on what might and might not be in the iPad 2.  I agree with them on most of it, especially the thinner body and better speakers.  I disagree with the resolution.  Putting a retina-display-style screen on such a large screen would be expensive (though not impossible).  Upping the resolution slightly is more likely and could be done without "awkward" resizing of elements.

It will run iOS 4.3.

iPhone
The next iPhone will also be available on Verizon, so don't get that iPhone 4 yet.  Seriously, just wait 4 months.

The iPhone 5 is rumored to have NFC (near field communication).  Apple doesn't add features to their gadgets unless the features are implemented well, so if the phone does have NFC, you can bet that it will be set up to make payments.  There is little else you can do with NFC.  Apple will have partnered with credit card companies or perhaps worked out a payment system through Verizon and AT&T.  It wouldn't make a lot of sense to force users to pay their bills through iTunes.

It might have 4G.  There have been rumors that the next iPhone will have both a CDMA (Verizon) and GSM (AT&T) antenna since the Verizon iPhone 4 has a baseband chip that supports both technologies.  That chip also supports HSPA+ (AT&T's initial "4G" network), but it doesn't have anything to do with LTE (Verizon's 4G network).  If they add in support for LTE, then it would support Verizon's current 4G network and AT&T's future 4G network, while possibly supporting AT&T's current 4G network and both 3G networks.  In short, it would be a multi-carrier future-proof phone.  That would be great, but a bit out of character for Apple, who only puts the bare minimum of features in their phones, unless those features are shiny and pretty. But by then, most new Android phones will have 4G.  Hard to call.

Price will be the same.  No reason to change that.

There will be a 64GB model.

Some software updates to catch up with Android features.

iPhone Nano
The blogsphere has been awash with rumors of a smaller, cheaper iPhone ever since the Wall Street Journal posted this rumor.  It could be true, but it seems like a mistake.  Supposedly, the phone would have less storage, but MobileMe or iTunes would allow users to instead stream music from the Internet, or from their computers through the Internet.  Thus, if you're without Internet, you're without music.  It would also be "half the size of the iPhone 4", which would make Internet browsing ridiculously bad if this means the screen is half the height.  Currently, the iPhone 3GS is $50 on contract (and other Android phones are even cheaper), so I don't see the point of an iPhone Nano unless it is super cheap without a contract.  There are Apple fanboys that will buy anything with a fruit logo on it; perhaps Apple will release this just to test their loyalty.

That's it for Apple.  I'll post soon (hopefully) with Android and WP7 speculation.


Update:  The iPhone Nano didn't sound likely. The New York Times said today (2/17) that Apple is considering a cheaper phone, but not a smaller phone.  This won't happen either, at least not this year.  Old iPhones are already cheap: the 3GS is $50, and a used 3G will run you ~$150 with no contract on eBay.  The only way Apple could compete with their old phones and successfully release a new, cheaper "iPhone Express" would be to make a phone that costs around $200 and somehow isn't worse than a 3G.  They can't, so I don't think they will even try.

Wednesday, February 9, 2011

Code: Using JavaScript and CSS to Switch to and from a Mobile Site

There are many ways to detect an iPhone or other mobile browser on your website.  I chose JavaScript for my professional website because my webhost restricts the use of PHP.  (I'm not going to link to my website here because it needs some work.)

There are only a couple ways to set up a mobile version of a website.  Using two CSS files is the best method for small sites that don't have a lot of images to resize.  Alternatively, you can build a different site just for mobile browsers and redirect mobile users to that site.  Right now, I have one website with two CSS files, but eventually I will build a separate mobile site.

This guide is for users that have one version of a website, but two CSS files: one for the full site and one for the mobile site.  It shows you how to create dynamic links to the full site from the mobile site and vice versa.  I think it's really important for mobile users to have the choice to view a website's full site and the option to go back to the mobile site, but full browser users shouldn't be bothered with a link to the mobile site.  Surprisingly few websites do this.


Detecting Mobile Browsers Using JavaScript

This JavaScript code detects mobile browsers by checking the user agent string for the words "iPhone" or "iPod".

// Are we using iPhone or iPod to browse this site?
var mobileDetected = ( (navigator.userAgent.match(/iPhone/i) != null) || (navigator.userAgent.match(/iPod/i) != null) );



Selecting the CSS File

This code writes the code to select either the full site CSS file or the mobile CSS file based on whether or not a mobile browser was detected.  It also involves checking cookies, and I'll explain that later.

// If not on mobile or full site was selected, use full site css
if(!mobileDetected || getCookie("occSkipMobile") == "true") {
  document.write("<link rel='stylesheet' href='css.css'>");
} else { // else use mobile css
  document.write("<link rel='stylesheet' href='iphone.css'>");
}



Allowing Mobile Browsers Access to the Full Website

Now that we can detect mobile browsers and get them to use the mobile CSS file, we need a way to prevent our site from always doing this so that the mobile browser can also access the full site.  The way I do this is with cookies.  This HTML code displays the link to the full website:

<div class="mobileOnly"><br>
<br>
<a href="index.html" onClick="skipMobileSite()">go to full site</a>
</div>


Notice that this code is wrapped in a class called mobileOnly.  I ensure that only mobile browsers can see this text by making mobileOnly invisible in my full site CSS file:

/* Always hide this on normal site */
div.mobileOnly {
  display: none;
}


But in my mobile CSS file, mobileOnly is visible:

div.mobileOnly {
  display: inline;
  font-size: 25pt;
  font-style: italic;
  margin-bottom: 30px;
}


You'll notice that in the link to the full site, a JavaScript function skipMobileSite is called.  This sets the actual cookie:

function skipMobileSite() {
  // Skip mobile site with a cookie setting, no expiration date
  document.cookie = 'occSkipMobile=true; path=/';
}


Cookies with no expiration date expire when the user closes his browser.

So this link sets a cookie that tells us that the mobile user prefers to view the full website.  This means we need to check for this cookie every time this page is loaded.  That's what the getCookie function does in the "Selecting the CSS File" section.  When a cookie is found that states a user's preference for the full website, the full website CSS file is selected.  Here's an implementation of getCookie from quirksmode.org (paraphrased):

function getCookie(name) {
  var nameEQ = name + "=";
  var ca = document.cookie.split(';');
  for(var i=0; i < ca.length; i++) {
    var c = ca[i];
    while (c.charAt(0)==' ') { c = c.substring(1,c.length); }
    if (c.indexOf(nameEQ) == 0) { return c.substring(nameEQ.length,c.length); }
  }
  return null;
}


Let's look at that line for selecting the full CSS file again:

if(!mobileDetected || getCookie("occSkipMobile") == "true") {

So, if a mobile browser isn't detected, the full CSS file is selected.  Or if the full website cookie is set to "true", the full CSS file is selected.  Otherwise, we select the mobile CSS file.

Notice that the link to the full site links to "index.html", which is the page all this code is on.  It's just an easy way to refresh the page.  Alternatively, I could have linked to "#" and written a page refresh in the skipMobileSite function.


Allowing Mobile Browsers Access Back to the Mobile Website

Now we have two versions of one website where mobile users are automatically sent to the mobile version, but they can click a link that only they can see that will take them to the full website from that point on.  We just need to link back to the mobile site.

<script language="JavaScript">
<!--
  // only write this if we're on a mobile and deliberately selected full site
  if(mobileDetected && getCookie("occSkipMobile") == "true") {
    document.write("<a href='index.html' class='fullSiteOnly' onClick='allowMobileSite()'>go to mobile site</a>");
  }
//-->
</script>


document.write is only called when a mobile browser is detected and the full website cookie is set.  Just to be sure, the class is fullSiteOnly, which is invisible in the mobile CSS file:

/* Always hide this on mobile site */
div.fullSiteOnly {
  display: none;
}


but is visible in the full website CSS (there's no code in the full site CSS for this).  So this link is only visible to mobile browsers that have clicked "go to full site" and it calls a function called allowMobileSite before refreshing the page.  What does allowMobileSite do?  It simply removes the full website cookie by setting the cookie to an expired date:

function allowMobileSite() {
  // Just delete cookie by setting it to past date
  document.cookie = 'occSkipMobile=true; expires=Fri, 3 Aug 2001 20:47:11 UTC; path=/';
}



Result (click to enlarge pictures)



This is my website on a regular desktop computer. There are no links to a mobile or full website.
This is my website on an iPhone (two images have been combined to show the entire page).  By default, the mobile edition is showing.  Mobile-friendly CSS code allows for easy navigation on mobile browsers.  It contains a link to the full website at the bottom.
This is my website on an iPhone after clicking "go to full site".  It looks just like the website on a desktop computer, except for the link to the mobile site at the bottom.  If a user clicks that link, he will go back to the "mobile edition" of the site.

All the Code Together

Let's review the whole thing.  First the full website CSS file, css.css:

/* Always hide this on normal site */
div.mobileOnly {
  display: none;
}


Then the mobile CSS file, iphone.css:

div.mobileOnly {
  display: inline;
  font-size: 25pt;
  font-style: italic;
  margin-bottom: 30px;
}

/* Always hide this on mobile site */
div.fullSiteOnly {
  display: none;
}


And finally, the webpage, index.html.  First we define the JavaScript functions, then we detect mobile browsers, then we check the cookie and select a CSS file, and finally we dynamically create links to the full site and mobile site:

<script language="JavaScript">
<!--
function getCookie(name) {
  var nameEQ = name + "=";
  var ca = document.cookie.split(';');
  for(var i=0; i < ca.length; i++) {
    var c = ca[i];
    while (c.charAt(0)==' ') { c = c.substring(1,c.length); }
    if (c.indexOf(nameEQ) == 0) { return c.substring(nameEQ.length,c.length); }
  }
  return null;
}

function skipMobileSite() {
  // Skip mobile site with a cookie setting, no expiration date
  document.cookie = 'occSkipMobile=true; path=/';
}

function allowMobileSite() {
  // Just delete cookie by setting it to past date
  document.cookie = 'occSkipMobile=true; expires=Fri, 3 Aug 2001 20:47:11 UTC; path=/';
}

// Are we using iPhone or iPod to browse this site?
var mobileDetected = ( (navigator.userAgent.match(/iPhone/i) != null) || (navigator.userAgent.match(/iPod/i) != null) );

// If not on mobile or full site was selected, use full site css
if(!mobileDetected || getCookie("occSkipMobile") == "true") {
  document.write("<link rel='stylesheet' href='css.css'>");
} else { // else use mobile css
  document.write("<link rel='stylesheet' href='iphone.css'>");
}
//-->
</script>

<div class="mobileOnly"><br>
<br>
<a href="index.html" onClick="skipMobileSite()">go to full site</a>
</div>

<script language="JavaScript">
<!--
  // only write this if we're on a mobile and deliberately selected full site
  if(mobileDetected && getCookie("occSkipMobile") == "true") {
    document.write("<a href='index.html' class='fullSiteOnly' onClick='allowMobileSite()'>go to mobile site</a>");
  }
//-->
</script>



Just embed those code snippets in your respective CSS and HTML files, and mobile users visiting your website will be able to switch back and forth between the mobile and full websites with ease.

Although this article as a whole and the code on my professional website are protected by copyright, feel free to use and tweak any of the code examples written in this article.

Wednesday, January 26, 2011

Policy: Net Neutrality 102

What is net neutrality? In short, net neutrality is the principle saying that Internet Service Providers (ISPs) should not restrict Internet traffic.  The hardware and software connecting users to content should not discriminate; that is, the "pipes" of the Internet should be neutral.  For example, if I as a customer pay for Internet access through Comcast, Comcast (the soon-to-be owner of NBC) should not block ABC.com or slow ABC.com down, whether or not I can pay a fee to get access.

If you're new to the concept, net neutrality is best explained at Save The Internet: Net Neutrality 101.  They are by no means unbiased, but it's about as accurate an explanation you can get in a short article with a short video.

This article, "Net Neutrality 102", is intended to give you a more detailed definition of what net neutrality is.

Definition
Although it is referred to as one concept, network neutrality has several different definitions.  But all definitions have this in common: No blocking of Internet content or charging extra for Internet content.  "Charging extra" applies to the consumer (you), but it also can apply to the content provider (say, Facebook would pay AT&T so that Facebook will always be accessible, even on AT&T's cheap Internet plans).  However, opinions differ on net neutrality's stance on quality of service considerations (the speed at which you get certain types of content).  There seem to be three main definitions.

No blocking content
This means an ISP cannot block or charge extra for any Internet content, but they can throttle (slow down) different types of content and charge extra for fast access to that content. This would likely be used to throttle non-website content, like bit torrents or streaming movies from Netflix.  But they can't discriminate on the content provider--that is, they can't slow down streaming movies from Netflix, but make streaming movies from XBox Live fast.  They can only make all content of that type slow or fast.

No blocking websites nor throttling content for a fee
This means an ISP cannot block or charge extra for Internet content, but they can throttle different types content as long as they don't charge extra for that type of content.  So, they can slow down your torrents and Netflix content, but it will be the same slow data for everyone.

No blocking websites nor throttling services at all
This means an ISP cannot block, charge extra or slow down any Internet content.  You can browse the Internet, stream Netflix movies, and make VoIP calls (Internet telephone calls) all at the same speeds.  This is how the Internet has always worked.

What it doesn't mean
Net neutrality still allows ISPs to block illegal content (like child pornography) and still allow ISPs to institute tiered pricing for connection speed (e.g. $50 for medium fast access, $60 for really fast access).

Violations
You might say, "Is this really an issue?  I've never heard of ISPs blocking websites."


The picture on the left is a real marketing slide from a company that sells software that can identify types of Internet data.  If they are successful, they will be able to sell their software to an ISP, who can then implement a pricing scheme like the one shown.


Okay, okay, that's just a slide by a software company, and their stuff may never get sold to an actual ISP.  Let's look at real examples of actual net neutrality violations.

Comcast admitted to throttling its users' BitTorrent downloads in 2007.  Madison River Communications, an ISP in North Carolina blocked Vonage's VoIP service in 2005, presumably so that customers would instead pay to use Madison River's phone service.  Also in 2005, Canadian telecom Telus blocked Voices for Change, a website run by the Telecommunications Workers Union during a labor dispute.

More recently, AT&T and other mobile phone companies are charging customers a monthly fee to tether their smartphones to their computers (that is, let the users connect to the Internet on their computers through their phones).  The hardware and software are already enabled on the smartphone, but it costs extra to browse the same website on different devices.  I haven't seen much written about this, but it seems clear that these mobile companies are violating the definition of net neutrality.

Cons and Pros of Net Neutrality Laws
For the last few years, the FCC has been trying to define net neutrality policies and force ISPs to adhere to these policies.  ISPs and some legislators have been fighting back.  There are two sides to every coin, so I'll do my best to provide the arguments for both sides of the issue.  I feel this is a comprehensive list.  Because I'm pro-net neutrality, I shall refute the con arguments.

Con: Tiered Access Could Make for a Better Internet
"Cable providers who invest in their networks are against net neutrality, since they believe tiered access - paying for different levels of Internet service - could pay for more sophisticated infrastructure, which would benefit all the users of that network." ("The Pros and Cons of Net Neutrality", about.com)  A more sophisticated infrastructure means faster and/or more consistent Internet access for users.

Rebuttal: This argument posits that ISPs don't have enough money to upgrade their infrastructure and that if they did have more money coming in, they would use that money on upgrading their infrastructure.  I feel both of these statements are quite unlikely.

Con: Making Content Providers Pay for ISP Costs
If ISPs charged website owners and other content providers fees, large companies pay for upgrades instead of users.  They might not even need to have tiered access for users.  For example, they could simply block Netflix for everyone if Netflix doesn't pay up (like what Comcast is currently doing).

Rebuttal: This would be unfair to startup companies that don't have the money to pay off ISPs.  It also would be used to create monopolies.  Of course Comcast wants any reason they can to block Netflix.  Then Comcast Internet users (who are often also Comcast cable customers) are forced to stream movies from  Comcast's Movies on Demand.

Con: Do We Really Need More Legislation?
"Net neutrality legislation could do more harm than good, especially since Internet technology changes so quickly. Inadequate laws could actually hinder commonplace safety practices unless specifically excluded, and provide loopholes for unethical exploits." (about.com)

Rebuttal: Yes, we need more legislation.  If written correctly, a net neutrality law could be short, concise, easy-to-understand, and future proof.  And it's not really adding new policy, it's just codifying an existing standard of electronic communication.

Con: Faster, Cheaper Surfing for Some
By implementing quality of service mechanisms, ISPs can slow down Internet traffic for power users and speed up traffic for everyone else.  For example, they could slow down bit torrent downloaders--that are often downloading illegal content--and hardcore gamers, so that people who are streaming online movies or just checking their email can access the web faster.

Rebuttal: Although some definitions of net neutrality allow for quality of service controls (the first two listed in the Definition section of this article), I personally am against this.  Partially because I am a power user and partially I don't know if slowing certain means that all other types of traffic will be sped up.  I could also see this being used to create monopolies: by slowing down streaming movies from the Internet, ISPs that also provide television access will gain more money for their TV divisions when users just buy the movie on pay-per-view instead.

Pro: The Free Market Fails When Choices Are Few
The government doesn't need to intervene with how many businesses are run because when a business has bad policies, customers flock to a competitor.  But 96% of Americans only have access to two or less Internet service providers.  There aren't enough competitors for consumers to vote with their dollars.  The government must step in and make sure that ISPs play fair.

Pro: Protect Free Speech, Unpopular Speech
Net Neutrality is partially a free speech issue.  More and more, the Internet is becoming the place where people get all their news, find all their research and discuss what's on their minds.  By arbitrarily blocking or charging fees for ordinarily accessible, free websites, ISPs would be restricting information and shutting down important lines of communication.

Pro: Keep the Internet as It's Always Been
For the more conservative among us who think there is nothing wrong with the Internet as it is, net neutrality is the way to go.  There is some confusion among people who think net neutrality will change the Internet somehow, but the truth is that net neutrality just sets in stone the policies that ISPs have always adhered to until recently.

Pro: Startups
Net neutrality is pro-business.  If a startup web company can pay for the servers and produce good content, they can become the next Google or Facebook.  Without net neutrality policies in place, ISPs are free to make deals with the richest web companies and block upcoming competitors.  Net neutrality prevents website monopolies.

Pro: Data is Data
Data is data.  It doesn't cost ISPs one cent more when that data is coming from Facebook instead of Myspace.  ISPs should charge by data use and data speed, not by data type or data source.  Heavy users are more likely to slow down local networks.  Users that require speed can cost more because ISPs have to pay to lay down extra fiber. Users of certain types of data or certain websites could be heavy or light users--there's no way to know without examining their data usage.  It doesn't make sense to charge by data type or source, except to have an arbitrary fee that ISPs can change at their whim.

Saturday, January 8, 2011

Heads Up: 4G FAQ

One of the buzzwords at CES 2011 (the huge technology show going on now) is "4G."  Sprint, Verizon and T-Mobile have it, and AT&T is getting it.  Let's answer some quick questions about what and where and when is the wireless network technology known as 4G.

What is 4G? Just like 3G, 4G is a cellular wireless standard for sending data to and from cell phones, but it's the next step after 3G.  Accordingly, it's much faster than 3G.  This means 4G-equipped cell phones connecting to a 4G network can browse the Internet faster, download video faster, and do other stuff faster than 3G and 2G phones on 3G and 2G networks.

In order to be a 4G network, the peak download speed must be at least 100 Mb/s (megabit per second) for high mobility (like from moving vehicles) and 1 Gb/s (gigabit per second) for low mobility (standing still or walking). To give you an example how fast this is, the average speed of a broadband connection in the US is 3.9 Mb/s.  This means that a 4G cell phone's internet connection is at least 25 times faster when that cell phone is being used in a car and 250 times faster when the phone isn't moving (more at Wikipedia).

Different mobile providers have different 4G networks.  Each provider is rolling out 4G as fast as possible so that each can claim they have the fastest mobile data network.

Why is 4G? In this age of Internet video, music downloads, and networked gaming everyone wants a fast connection, even (especially?) for their phones.

How is 4G? By upgrading the hardware of cell towers, mobile providers can deliver a 4G network.  In order to connect to these 4G networks, consumers must have a 4G phone (a phone with a 4G antenna).

When and where is 4G? Currently, major cities.  As with everything, LA, DC, NY, SF, ATL, etc. will get the new tech first, and then it will slowly be rolled out to more rural areas.  Check with your provider for specifics.  By the end of 2011, most mobile providers will have some 4G in major cities.  By 2013, it'll be everywhere but the boondocks.

Who is 4G? Sprint currently has 4G through WiMAX, Verizon has 4G through LTE (though Verizon has no 4G phones yet to connect to their 4G network), T-Mobile uses HSPA+ and AT&T is currently building a HSPA+ network before starting work on an LTE network in 2011.

However, technically, none of these companies have real 4G yet*.  That's right, none.  True 4G maxes out at a minimum of 1Gb/s (stationary) while Sprint's WiMAX has a current cap around 10Mb/s, Verizon's LTE is at 12Mb/s, and T-Mobile's HSPA+ is at a theoretical 21Mb/s.  (Note: these are theoretical max speeds based on infrastructure; actual max speeds users are currently getting are much lower) AT&T has nothing yet, of course, but will get HSPA+ probably in 2011, and LTE soon thereafter.  So the "4G" cell phone companies are selling you is actually 3G, (but is often called 3.5G).

There are differences.  Eventually WiMAX and LTE will reach true 4G speeds as the technology is upgraded.  HSPA+ will eventually reach multiple hundreds of Mb per second, but will never achieve true 4G speed, which is why AT&T is building an LTE network in addition to their mostly complete HSPA+ network.

Also important is that phones that have WiMAX or LTE antenna still be able to connect to those respective networks when each one is upgraded.  But an HSPA+ phone can't connect to a LTE network.  Because of this, it may be smart to get a 4G phone from Sprint or Verizon, since upcoming "4G" phones for AT&T won't ever be able to connect to AT&T's LTE network when that network is eventually built. And if T-Mobile ever gets a true 4G network, HSPA+ phones won't be able to connect to that either.

(Wikipedia pages: HSPA+, LTE, WiMAX)

*Update: This article was written a little late. On December 6, 2010, the ITU (the organization that defines "4G") officially reversed their position and said that Sprint, Verizon, and even T-Mobile's '"4G" networks actually are 4G.  The reason: the term 4G, "while undefined, may also be applied to the forerunners of these technologies, LTE and WiMax, and to other evolved 3G technologies [like HSPA+] providing a substantial level of improvement in performance and capabilities[.]"

Tuesday, January 4, 2011

Commentary: 2010 In Review

One of my co-workers said something a couple of months ago about how 2010 wasn't a very exciting year gadget-wise.  On the contrary, I'd say it's the most exciting year so far.  Let's review what happened this year:

Tablets
2010 was the Year of the Multi-touch Tablet.  The iPad was released, sold millions, and inspired dozens of other tablets, most notably the Galaxy Tab.  We should see more and greater tablets in 2011, but this is the year where it all started.

Smartphones
The iPhone 4 was probably the most exciting ongoing tech news story this year.  First, a prototype phone was revealed prematurely on Gizmodo.  This may have taken some steam out of the official announcement of the phone, which was still exciting because of the new features: retina display, front facing camera (and FaceTime app), LED flash, sexy new design, and new OS.  Then the discovery of its antenna problems set the blogosphere on fire.  It was a big year for the iPhone.

It was also a big year for Android phones. The Froyo and Gingerbread OS updates were released, providing lots of cool features like full Flash compatibility, wifi hotspot capability and Near Field Communication support, but it also led to more accusations of fragmentation.  Hardware-wise, there were dozens of new awesome phones, such as the Nexus One, Nexus S, Evo 4G, the new Droids (X, 2, and Incredible), and the Galaxy S phones (most notably the Epic 4G).  4G was finally made available to Americans this year through Verizon and Sprint, and only Android phones can connect to these new faster networks.  Even with a shiny new iPhone 4 in my hands, this is the year I finally felt envious of Android phone owners.

Lastly, Microsoft upped its game with well-received Windows Phone 7 phones.  If Android phones aren't the iPhone killer, these phones will be.

Gaming
Video games are a lot like movies: every year has a bunch of winners and a bunch of losers, but most of them are just entertaining enough to keep you busy until the next good one.  However, this year seemed different for video games.  This year had an unprecedented number of huge releases (and, interestingly enough, all of them were sequels).  Mass Effect 2, Red Dead Redemption, Starcraft 2, Civilization 5, Fallout: New Vegas, Halo: Reach, and my new favorite game that has been eating up my free time over the last few weeks: Call of Duty: Black Ops.  I don't think that there were this many reasons in 2009 to call in sick and play games.

But if you don't care about games, you were surely excited about the Kinect!  I kid Microsoft--this device has great gaming potential, but so far it's just potential.  Until its potential is realized, I'll continue to enjoy all these videos of Kinect hacks.

3D TVs
3D TVs!  If you care about that sort of thing.


And there you have it, a crazy year of non-stop amazing gadget news.

Tuesday, December 7, 2010

Tech Support: How to Speed Up a Slow Computer

Occasionally, I provide tech support, and the most common issue my clients have is an excessively slow computer.  This happens to all computers over time (even Macs, but to a lesser extent I'm told).  Disk fragmentation, malware, poorly written software and memory leaks all can contribute to this problem.  What can be done to speed up an old, slow computer?  There are several options:

1. Free up disk space: Although some tech experts suggest this (e.g. Microsoft), I don't recommend wasting your time with this.  I'm mentioning only because it's commonly thought that this is an effective measure in speeding up your computer.  It isn't.  Unless you have less than, say, 10 GB of free disk space–a rarity in this day of obscenely large hard drives–this will likely do nothing to speed up your computer.  The only thing deleting files will likely do is speed up the time it takes to load whatever folder you have cleaned up, which I suppose could be noticeable if you have hundreds of files on your desktop that can be deleted or moved into other folders.

2. Defragment your hard drive: Freeing up disk space can only speed up your computer if you have very little free disk space.  However, disk fragmentation can occur even on large hard drives with lots of free disk space.  Unless you have over 50% free space or have recently defragged, I'd give defragmenting a try.

To find Windows' defragmenting utility, go to My Computer (Windows XP) or Computer (Vista), select your C:\ drive, and launch the disk properties by holding down Alt and pressing Enter.  Go to the Tools tab and press Defragment Now.  Defragmenting can take several hours.  I recommend defragging XP machines at least annually.  Newer machines with larger hard drives may not need defragging as often.

Or, for much faster defragmenting, use a 3rd party disk defragmenter, like Auslogics Disk Defrag.

3. Remove Extra Programs: The most likely cause for a slow computer is the footprint left by installing programs.  New services may be added, the registry is augmented, and new programs may run in the background, using up memory and processor time.  All these things slow the computer down.  The biggest offenders are malware and other programs that silently run in the background.

Whenever I remove programs to speed a computer, I always start with the web browser toolbars that are inevitably installed.  This doesn't do much to speed up the computer but can speed up the user's Internet browser and these toolbars are almost always unused anyway.  I then remove any other unnecessary programs, usually multiple copies of anti-virus software, anti-malware software, firewalls and other "helpful" programs.  A single computer only needs one anti-virus program constantly combing the hard drive (I use AVG Free, but I also recommend avast! Free Antivirus, Norton, or McAfee).  Other anti-malware programs are not as important, especially if you have Windows Vista or Windows 7, both of which have adequate built-in firewall and anti-malware programs.  However, if you feel the need to supplement your anti-virus program, I'd suggest Malwarebytes' Anti-Malware or something similar to scan your computer weekly or less often.  Having more than one program constantly scanning your computer is just going to bring your computer to a grinding halt.

There are other unnecessary programs that may be running in the background.  Special screensavers, custom cursors, ubiquitous hardware utilities (the things HP installs on your computer before you buy it), and other alliterative programs are all "fun" utilities that often run in the background and are launched at startup.  Check your lower-right  taskbar for these programs and uninstall them if you can, or at least stop them from running at startup.  Disabling programs from running at startup may require using MSCONFIG, which I don't recommend for anyone but advanced users.  Windows Vista and 7 can simply use Windows Defender to disable programs that run at startup.

4. Restart: This may be an obvious one for some, but I had one client who was having speed problems with his computer because he simply hadn't restarted or powered down his computer in months. PCs need to be shut down every now and then.  I'm not sure how often, but I'd recommend restarting weekly.

5. Add RAM: The problem with your computer could be hardware.  Upgrading to a faster (7400 rpm or SSD) hard drive or getting a faster processor would definitely speed things up.  However, these fixes are expensive, time consuming and sometimes difficult if you are trying to put new parts in an old computer.  The cost of getting the tech guys at Fry's to install a SSD and new processor can be more expensive than buying a new, low-end computer.  A cheap, quick fix is to simply install more RAM.  Simply find out what kind of RAM you have, buy more of it (512 MB – 1 GB is good for Windows XP, 4 – 6 GB is good for Windows Vista and 7), and pop that stick in your computer.

6. Fix your hard drive/registry: Other tech experts recommend things like scanning your hard drive for bad sectors and using registry cleaning utilities.  Most hard drives that I have scanned don't have bad sectors.  As for registry cleaning software, I've honestly never tried any.

7. Reinstall Windows: The nuclear option.  Sure, it takes a long time to back up all your files, reinstall Windows, update Windows, reload all your files, and reinstall all your programs; but this will make your computer run like new again, unless you have a serious hardware problem.  The older your computer is, the more noticeable the difference.  If this doesn't work for you, it's time to buy a new computer.