Building Android Apps with MVVM and Data Binding


Great Design Pattern for Great Work

Most app development cannot avoid being composed of three parts: database/model, UI and the business logic associated with them.  There are already many design patterns that allow for more structured communications between model and UI; for example, MVP and MVC.

IoT Today


After January’s Consumer Electronics Show in Las Vegas there was a great deal of talk about the future of the Internet of Things (IoT). On the whole it was a far cry from the good-natured hype that had characterized previous years’ reporting. There was a new note of caution in the optimism.

Prototyping with Interface Builder


With the acquisition of Next in 1997, a new tool was initiated into the Apple family. Originally known as an enhancement of OpenStep, called NextStep, it caught the attention of the developer community under the name of Interface Builder, as part of the XCode suite. Now about to celebrate its 20th birthday, Interface Builder represents the most powerful IDE to design user interfaces in a development suite. It doesn’t matter if you are writing an app for iOS, Cocoa, tvOS or watchOS; when carefully used, it will save you hundreds of lines of code. For this and other innumerable reasons, many developers, like myself, love this tool.

Keeping an Eye on Code Knowledge


In growing companies, as software systems become complex and extensively engineered, maintenance can be a challenging problem. Moreover, when high profile bugs arise and/or a lack of system availability arises, it can have disruptive consequences on a business. Hence there is little room for mistakes in these crucial systems.

Mastering the Art of Client Communication


At some companies, designers and developers have little to no interaction with clients or customers. It’s not uncommon for the people working on a project to be walled off from clients by account managers or customer service. At Grio, every designer and developer is client facing, and everyone ends up doing some of the work that is traditionally done by an account manager, such as managing day to day contacts, relationship management, and responding to problems & issues.

Late Subscribing and Polling APIs with RxAndroid


Howdy, lazy bum! Enjoying the ReactiveX magic? Want to take a look at polling?

I’ll be walking you through a solution I put together for one of our up and coming apps! It works rather well, I learned a lot, and so far no complaints…although there are no users yet either!

Feeling quite charitable, I’m going to let you in on some useful bits and pieces as we build up to polling: threading, late subscribing, replay, manual re-triggering and error handling (a must for preserving replays).

Prototyping with P5


When I wanted to create a proof of a concept project for one of the game ideas I had, I found many tools and gaming frameworks. However, most of them had a steep learning curve which required a significant time investment before the game could be played. Then I discovered P5, a Javascript library inspired by the Processing language, which made it very easy to get started.

Benchmarking Intel i5 & i7 Processors


What is benchmarking?

Benchmarking is the process of measuring performance for a piece of technology against other pieces of technology. Typically, processors are benchmarked by running programs and software that heavily taxes the system. This allows the processor to truly shine (or, possibly, the opposite). For the purposes of this post, the i5 and i7 processors’ performance were measured in five different categories, each using one test:

SQL & NOSQL: A Brief History


The Relational Model & SQL

The relational model was proposed in a paper published in 1970 by Edgar Codd, a computer scientist working at IBM. In previous years, some storage systems had already emerged, but the relational model was first proposed with a strong theoretical basis.