Miyerkules, Hulyo 29, 2015

Android

Was it only a few years ago that lines snaked out of Apple's store? Times change. While the iPhone and iPad continue to have dedicated fans who love their rich, sophisticated UI, the raw sales numbers favor Android more and more. Some reports even say that more than 70 percent of phones sold were Androids.
The reason may be as simple as price. While iOS devices maintain a hefty price, the Android world is flooded with plenty of competition that's producing tablets for as low as one-fifth the price. Saving money is always a temptation.
But another factor may be the effect of open source. Anyone can compete in the marketplace -- and they do. There are big Android tablets and little ones. There are Android cameras and even Android refrigerators. No one has to say, "Mother, may I?" to Google to innovate. If they have an idea, they follow their mind.

Mobile Web apps

Let's say you have a great idea for some mobile content. You could rush off and write separate versions for iOS, Android, Windows 8, and maybe even BlackBerry OS or one of the others. Each requires a separate team speaking a different programming language. Then each platform's app store exerts its own pound of flesh before the app can be delivered to the users. Or you could just build one HTML app and put it on a website to run on all the platforms. If there's a change, you don't need to return to the app store, begging for a quick review of a bug fix. Now that the HTML layer is getting faster and running on faster chips, this approach can compete with native apps better on even more complicated and interactive apps.

Martes, Hulyo 28, 2015

Single-page Web apps

Remember when URLs pointed to Web pages filled with static text and images? How simple and quaint to put all information in a network of separate Web pages called a website. New Web apps are front ends to large databases filled with content. When the Web app wants information, it pulls it from the database and pours it into the local mold. There's no need to mark up the data with all the Web extras needed to build a Web page. The data layer is completely separate from the presentation and formatting layer. Here, the rise of mobile computing is another factor: a single, responsive-designed Web page that work like an app -- all the better to avoid the turmoil of the app stores.

Game frameworks

Once upon a time, game development meant hiring plenty of developers who wrote everything in C from scratch. Sure it cost a bazillion dollars, but it looked great. Now, no one can afford the luxury of custom code. Most games developers gave up their pride years ago and use libraries like Unity, Corona, or LibGDX to build their systems. They don't write C code as much as instructions for the libraries. Is it a shame that our games aren't handcrafted with pride but stamped out using the same engine? Most of the developers are relieved -- because they don't have to deal with the details, they can concentrate on the game play, narrative arc, characters, and art.

Almost big data (analysis without Hadoop)

Everyone likes to feel like the Big Man on Campus, and if they aren't, they're looking for a campus of the appropriate size where they can stand out. So it's no surprise that when the words "big data" started flowing through the executive suite, the suits started asking for the biggest, most powerful big data systems as if they were purchasing a yacht or a skyscraper.
The funny thing is, many problems aren't big enough to use the fanciest big data solutions. Sure, companies like Google or Yahoo track all of our Web browsing; they have data files measured in petabytes or yottabytes. But most companies have data sets that can easily fit in the RAM of a basic PC. I'm writing this on a PC with 16GB of RAM -- enough for a billion events with a handful of bytes. In most algorithms, the data doesn't need to be read into memory because streaming it from an SSD is fine.
There will be instances that demand the fast response times of dozens of machines in a Hadoop cloud running in parallel, but many will do just fine plugging along on a single machine without the hassles of coordination or communication.