Blog
  • Albert Banks
  • Alex Runde
  • Brett McCoy
  • Caleb Loffer
  • Daniel Parker
  • Eddie Paik
  • Elliott Antal
  • Liz Hill
  • Mallory Starnes
  • Mark Conachan
  • Michael Chatten
  • Myjive
  • Ron Edelen
  • Shelton Clinard

Posts by: Albert Banks

Are you bold enough to believe or even say “The PC Is Dead”? You might want to get used to it. All evidence is pointing to that statement as a truth for consumers, and sooner than you’d think.

To understand how this is even plausible, we first have to look at the decline of dumbphones. You know, those mobile phones that don’t run advanced apps or have a touchscreen. In the U.S. we’re already halfway through the dumbphone conversion cycle – the transition of consumers from dumbphones to smartphones.

Why the rise in smartphones? There are the obvious additional features: touchscreens, multi-touch, millions of apps, internet connectivity, etc. But we all know consumers care the most about price. The average smartphone handset price has now dipped to $135 and often that cost is subsidized by a mobile service provider. As a result, the demographics of smartphone users are expanding beyond young adults and the wealthy.

What does this mean to PCs? It means they face legitimate competition from mobile devices. For the first time in history, smartphones outsold PCs in the 4th Quarter of 2010.

This market trend is expected to continue with the addition of tablets to the mix. The number of mobile-connected tablets tripled last year to 34 million. Led by Apple’s iPad, researchers expect nearly 120 million tablets will be sold in 2012.

In fact, tablets may be an even greater and more immediate threat to PCs. They already outsell netbooks 2-to-1 and some forecasts have the tablet market alone exceeding that of PCs as early as the fall of 2013.

The PC is dead in the Mobile Future.

Additional References:
The Future of Mobile

In an effort to exercise the left side of our brain, this week I’m covering some programming fundamentals.

Syntax
In computer science, the syntax of a programming language is the set of rules that define the combinations of symbols that are considered to be correctly structured programs in that language. All of the examples shown are in PHP.

Variables (declaration)
A Variable is a symbolic name given to some known or unknown quantity or information, for the purpose of allowing the name to be used independently of the information it represents.

$x = true;
$y = 7;
$z = 8.5;
array $a = array(2, 4, 8);
$b = "hello";

Data Types
Boolean: A TRUE or FALSE value.
Integer: A whole number (no fractions).
Float: A number (usually not a whole number) that includes decimal places.
Array: Stores a number of elements in a specific order.
String: A series of single characters.
There are many more data types, but the above are the most basic.

$x = true; // $x is a Boolean
$y = 7; // $y is an Integer
$z = 8.5; // $z is a Float
$a = array(1, 5, 9); // $a is an Array
$b = "hello"; // $b is a String

Conditions
In a Condition, a comparison operator (>, <=, ==, !=, &&, ||) is used to determine a boolean value.

$x == true
$y > 5 && $z < 10 
$y > 5 || $z < 5

If Statement
An If is conditional statement that perform different executions depending on whether a specified boolean condition evaluates to true or false.

if ($x == true)
	// consequent statements

If Else Statement
The Else statement provides an opportunity to perform alternative executions when the If statement is evaluated to false.

if ($y < 10)
	// consequent statements
else
	// alternative statements

Else If Statement
The Else If statement allow for additional conditions to be checked. Only the statements following the first condition that is found to be true will be executed. All other statements will be skipped. The statements of the final else will be executed if none of the conditions are true.

if ($y >= 10)
	// consequent statements
else if ($y > 5 && $z < 10)   
	// different statements 
else if ($y > 5 || $z < 5)
	// alternative statements
…
else
	// other statements;

Switch (Case) Statement
A Switch (or Case) statement is a type of selection control mechanism that allows the value of a variable or condition to control the flow of execution via a multiway branch.

switch ($y) {
	case 7:
		// statements
		break;
	case 8:
		// different statements
		break;
	default:
		// other statements
}

For Loop (Iterator-based)
A For Loop is a statement which allows code to be repeatedly executed. Distinguished from a while statement due to use of an explicit counter or variable used in loop.

for ($i = 1; $i <= 3; $i++) {   
	// statements; 
} 

foreach ($a as $key => $value) {
	// statements;
}

While Loop
A While Loop is a statement that allows code to be executed repeatedly based on a given condition. The while loop can be thought of as a repeating if statement.

$c = 0;
while ($c < count($a)) {
	// statements

	if ($c == 1)
		break;

	// other statements
}

Function
A function is a portion of code within a larger program that performs a specific task and is relatively independent of the remaining code. Often functions accept and return values.
Many programming languages have common “built-in” functions.

function totalArray($array) {
	$total = 0;

	// loop through array
	foreach ($a as $value) {
		$total += $value;
	}

	// return from function
	return total;
}

$arrayTotal = totalArray($a); // $arrayTotal gets the total of the values in $a

These are just a few of the basic concepts of programming. Understanding conditions, loops and code execution very much requires the logical, Left-side of your brain. Practicing even these basic concepts will exercise this half or your brain, and perhaps even give you a great appreciation of developers...

Sources:
http://us3.php.net/manual/en/
http://en.wikipedia.org

There is no Cord

Lately there has been a lot of chatter in tech and advertising circles about “cord cutting.” Cord cutting commonly refers to the act of eliminating traditional television and movie providers such as Cable and Satellite TV companies. Individuals who do so are referred to as “Cord Cutters.”

There are a few reasons this phenomenon exists:

  • On-Demand – consumers want to watch what they want to watch, when they want to watch
  • Portability – most traditional providers only offer the standard living room experience.
  • Cost – many consumers are paying hundreds of dollars to these providers, in addition to paying for broadband internet.

There are a lot of alternatives available for cord cutters:

  • Hulu - Hulu provides web based access to non-HD television shows via web browsers and a desktop application. Cost: Free or $7.99/month for Hulu Plus
  • Network Websites & Apps – Most broadcast and cable networks offer most episodes on their websites. Some even have proprietary mobile and tablet apps. Cost: Free
  • Over the Air (HD) - Broadcast television networks are available with an indoor antenna. Cost: average $23 for antenna
  • Netflix - Netflix offers Watch Instantly for a majority of their inventory of movies and TV series. Cost: $7.99/month
  • iTunes Store from Apple offers digital rental or purchase of movies and television shows as well as TV season passes. Pricing for movies and passes vary greatly.
  • Zune from Microsoft offers content, pay structures and platforms similar to the iTunes Store.
  • TV.com features videos from Hulu and CBS.
  • Joost has videos from Viacom (including MTV Networks, BET Networks and Paramount Pictures) and the NHL.

There is a lot of debate as to weither this phenomenon is actually taking place. The results are mixed.

Cable companies publicly say it does not exist. “The cordcutting that won’t go away won’t come either. It hasn’t arrived yet.” – Time Warner CEO Jeff Bewkes

Analysts expects the U.S. pay-TV industry to lose 200,000 subscribers in 2012. However, they credit downward trend primarily to belt-tightening among “economically-driven cord-avoiders.”

A survey from the advertising industry found that people were evenly split on whether they would be comfortable giving up pay TV for another premium option, such as Netflix streaming, Hulu or free streaming options on the web.

The really world numbers have a say as well. Hulu reached 1 million paid users well before they were forecasted to do so. Netflix’s streaming subscriber base is estimated at 22 million users.

What may be most notable are the “Cord Nevers.” Credit Suisse analyst Stefan Anninger said, “The real challenge to the pay TV business model are behaviorally-driven cord-nevers. These are tomorrow’s householders that are in their teens (and younger) today. They are growing up in an Internet-based video culture, in which the mantra of “why pay for TV?“ and “pay TV is a rip-off.”

In an effort clarify some of the “nerdy” terms our tech crew often uses, we’ve identified some common internet terms and defined them below.

Domain Name
A unique name that identifies an Internet site. Each Domain Name points to only one machine. Domain Names always have multiple parts, separated by dots. The left part is the most specific while the right part is the least specific. For example:
example.com
mail. example.com
imap.mail.example.com

IP Number (Internet Protocol Number)
Often refered to as IP Address, a unique number consisting of 4 parts separated by dots. For example:
152.215.17.2
Every machine that is on the Internet has a unique IP Numbers. Machines often have one or more Domain Names that translate to an IP Number, which makes them easier to identify.

URL (Uniform Resource Locator)
Synonymous with URI. In fact, URI has replaced URL in technical specifications.

URI (Uniform Resource Identifier)
An address for a resource available on the Internet.

The first part of a URI is called the “scheme”. The most commonly known scheme is http. Each URI scheme has its own format for how a URI should appear.
For example:

http://example.com/about.html

telnet://example.com
ftp://username: password@ftp.example.com

Port
A number that is part of a URL which appears after a colon (:) to the right of the domain name. All services on an Internet server listens on a specific port number defined on that server. Most services have standard port numbers. Web servers primarily listen on port 80. Services can also listen on non-standard ports, therefore the port number must be specified in a URL when accessing the server. For example:
ftp://username: password@ftp.example.com:25252
This URL will attempt to make a connection to the FTP service on example.com on a specific port (25252). This connection will only be made if port 25252 is defined on that server for FTP services.

ISP (Internet Service Provider)
Any organization that provides access to the Internet.

DNS (Domain Name System)
Translates Domain Names into IP Numbers.

DNS Server
A DNS server runs networking software and maintains records of Domain Names and IP Numbers for other Internet hosts.

DNS Record
DNS records are used for translating Domain Names to IP Numbers. They also contain the domain name’s name server and mail server information as well as any other domain name aliases. A commonly used alias is the “www” preceding the domain name.

Back from our adventure at South By Southwest Interactive Festival (SXSWi) below is a recap of one major takeaway from the event.

Browser War

We are in an era more chaotic that the browser wars of the mid-90s and mid 2000s. Announced around SWSW were new versions of Internet Explorer (9), Firefox (4) and Chrome (10). Add to the mix Apple’s Safari browser and you have a giant headache for web developers.

The partial inclusion of pre-standard HTML5 features in many of the browsers further muddies the water. You could sense the frustration of the Microsoft representatives when asked about the lack of some HTML5 features in the newly released IE9. After all, this is the same company that was vilified for not having a standards compliant browser (which IE9 is). Although IE9 is a leap in the right direction, user migration from IE7 and IE8 may not be a rapid transition.

Suffice it to say, supporting three versions of IE along with Firefox, Safari and Chrome will be a time consuming challenge.

Device War

New to the scene in recent years is the Device factor. In the past designers and developers were only concerned with desktop resolutions and browsers. With the advent of web enabled smartphones, the number of resolutions and configurations continues to expand. The success of iPad and similar tablets adds another class of screen that must be accounted for. Now applications and websites may available on consumer televisions (GoogleTV, Samsung Apps) and gaming consoles (XBOX360, Sony PS3, Wii)

It’s not simply the resolutions and browsers that differ. Mobile devices, be it phone or tablet, presents very different user-scenarios than desktops or even laptops. Many devices exclude the ubiquitously used Flash player due to performance concerns. Users now expect a unique, relevant experience when on-the-go. Even the mobile version of a website must now be defined, designed and developed different from the desktop version.

Those users camped on the couch expect high quality, user-friendly interactions with their TVs and consoles, yet they are 10 feet from those devices. A major problem is that the primary input devices remain controllers and remotes. It was speculated at a few SWSW panels that this may be solved with another external device. After all, 74% of those aged 18-24 are also using a second device (phone, tablet, laptop) when watching TV.

Content Strategy, UX Design and Technology choices must now be made about not just the browser or app, but about the target device as well.

Platform War

Beyond the web is the world of Apps. A Digital Experience Agency such as Myjive is deeply invested in App development to provide the best user experience. This space was once owned by Apple and it’s iTunes store. Now Android, Blackberry and even Microsoft are all involved.

While the browser and device wars mainly involve web technology, the platform war is much more diverse. Below is the breakdown of development by platform:

iOS: Objective-C and C
Android: Java, C, C++
Blackberry: Java 2 Platform, Micro Edition (J2ME)
WindowsPhone: .NET framework

It is rare to find a developer versed in two or three of these technologies. Thus, development cost for multiple platforms is exponentially more expensive than for developing with web technologies and supporting multiple browsers and devices.

Many panelists and attendees at SXSW also voiced their frustration over the lack of any kind of standards cross-platform, particularly when it comes to User Interaction. Apple set a precedent with most of their gestures, but they certainly are not standards.

Path To Victory

While no Panelist or Speaker had a golden bullet to solve these wars, there were a few possibilities that may ease the pain.

  1. Define the User: Determine the target audience, devices and platforms in advance.
  2. Use Web Standards: With IE9, all major browsers have a version that supports the current standards.
  3. Consider HTML5: In direct conflict with the above, this may be the only cost effective answer to build cross-platform.

SWSWi 2011

Myjive recently sent representatives to the ever popular South By Southwest Interactive Festival (SXSWi). As part of SXWS, the Interactive portion features presentations, keynotes and panels from leaders in emerging technology. Also included was the Trade Show and ScreenBurn arcade.

The amount of information and networking at this event can be quite extensive, leading one tweep to coin the term Exhilarausting (Exhilarating + Exhausting). This “word” accurately describes our experience at the festival.

Since the number of panels and subjects are too numerous for this post, we’ve narrowed our focus to a few takeaways from the event. We’ll soon be posting recaps of those takeaways.

For now, check out the swag acquired throughout the week:

SXSW Swag

We’re big fans of WordPress here at Myjive. Over the years WordPress has evolved from a simple blog management tool into a robust Content Management System. All the while, it has maintained it’s open source philosophy and community of contributors.

Recently, WordPress reached a major milestone with it’s 3.0 release. There are a ton of new features, but here are the highlights:

  • First new official theme in years, Twenty Ten takes advantage of the newest features of WordPress.
  • WordPress and WordPress MU have been merged. Manage multiple “sites” from within a WordPress installation.
  • Custom menu management feature, allowing creation of custom menus of posts, pages, categories, tags, and links. Menu items may have parents/depth and the new theme has support for drop down menus.
  • Define custom header and background images.
  • Define both the admin username and password during install.
  • Full support for bulk updating of themes and plugins.
  • Official support for shortlinks that maintain your site’s brand.
  • Improved custom post types and custom taxonomies including hierarchical (category-style) support.
  • Specific author templates in the Template Hierarchy.
  • 1,217 bug fixes and feature enhancements.

While these changes may not be noticed by the visitors of WordPress powered sites, the new functionality should increase efficiency and management by developers and administrators.

A new study by TubeMogul reveals that 4 out of 5 users abandon a video if it rebuffers during playback. Most people seem to expect the initial buffer, but rebuffering is a deal killer.

The study references the five CDNs covered, with Limelight having the least amount of slow loads. The study does not appear to factor in factors out of a CDN’s control. Time of day, video encoding and client connection speed certainly influences the play back experience.

But one thing is clear. Video viewers are a demanding bunch. They expect video to start quickly and continue without interruption.

yelp-monocleIf you haven’t heard of Augmented Reality, here’s the scoop. AR is a live view of the physical world merged with virtual digital information and/or imagery. The concept has been around in the military and industrial applications for years.

You’ve probably seen the technology in use without realizing it. Those first down lines on field during the television broadcast of football games? Yep, that’s AR!

Recently, this technology has gained popularity in many consumer settings.

Advertisers are using it to promote new products via cool interactive experiences. Service providers are using it to present relevant location aware information. Many cities, museums and theme parks are using it to add virtual objects to their existing  physical environment.

Like any technology of the brink of popularity, we have to question if it is fad or future. Fast Company recent addressed this exact question. Myjive believes this one is here to stay. All you have to do is look at the many potential applications already being explored.

Yelp’s iPhone App Monocle feature
Augmented Reality Contact Lenses
Canon’s MR Aquarium
Jack’s Links Living Sasquatch

As we like to say here at the office, “The future is going to be so cool.” And with AR, the future is here.

This year, the World Wide Web Consortium’s (W3C) released it’s HTML 5 proposal. HTML 5, is a significant update to the prominent web presentation specification. The changes focus on web application development, ones that might even make proprietary plug-ins such as Adobe Flash, Microsoft Silverlight, and Sun JavaFX irrelevant.

Below are the most significant new features and their current browsers support:

Video and Audio Tags

The long awaited video and audio tags that would standardize how we include these elements in websites. With HTML 5,  including video to your webpage would not require utilizing third-party plug-ins (ie. Flash, Quicktime) or video codecst.  Developers would also be able to manipulate videos and built-in video controls.
Browsers: Firefox 3.5

Canvas

Canvas is used for rendering dynamic bitmap graphics on the fly, such as graphs or games. Invented by Apple, this technology could replace complex charts currently generated by Flash, Silverlight or Java.
Browsers: Safari 4, Chrome, Firefox 3.5, Opera

Web Workers

Separate threads would now be used for processing so to not affect the performance of a webpage. This is very important among the ever increasing number of AJAX based web applications (ie. Gmail).
Browsers: Safari 4, Firefox 3.5

Application Caches

Cache adds the ability to store data locally and access it without having to connect to the internet or install an external application (ie. Google gears).
Browsers: Safari 4, Chrome, Firefox 3.5

Geolocation

Defining location information using a high-level interface (GPS) within the device hosting the browser (ie. Safari on the iPhone). This feature most likely could be turned off in a particular device or browser, but is very useful information when used properly.
Browsers: Firefox 3.5

So, when can we expect to see these features? Some are already supported in current browsers and many are slated to be in the newest versions including Internet Explorer 8. The cog in the wheel may be developers, who will need time to digest these new features and include them in websites they are creating.