UX is Your Data Telling a Story

pinocchio

I just heard an interview this morning on NPR with a tech startup leader who said, “Data just sits there. We want people who can tell stories. Humans are story-driven creatures.” To me this statement cuts to the heart of the UX (user experience) vs. UI (user interface) debate. Some would say that the distinction is purely academic. I argue that it is very much not. People have their own definitions, but here is mine: UX is your data telling a story. UI is the movie.

Continue reading

What is a Business Logic Layer Anyway?

Pancakes

Most developers are familiar with the concept of N-Tier Architecture. It is a software pattern that separates components of an application into separate logical layers to establish code boundaries, promote flexibility, and allow reuse. Most commonly this is accomplished using 3 layers:

Continue reading

Why Static Code is Bad

static

Most object-oriented developers are familiar with static methods and classes. They are present in most programming languages including C# and Objective-C (where they are known as class methods). Here are some common cases in which they are used: Continue reading

Definition of a Great Agile Company

Agile

Last night I attended the inaugural meetup of the Great Agile Companies of NYC group at AppNexus‘ beautiful headquarters in New York. The event was moderated by Josh Grob, a member of AppNexus’ Agile Strategy & Execution team, with the intent of open-sourcing the definition for what it means to be a great Agile company. AppNexus’s own Agile team is less than a year old and has quickly grown to 11 full-time scrum masters. With over 500 developers building the company’s flagship online ad auctioning platform, the need for a dynamic and scalable software development process has never been stronger.

Continue reading

Hands-On: Building iOS and Android Apps with C#

Hands On with Xamarin

Last night I attended a great .NET Mobile Developer meet up at Microsoft’s NYC offices entitled “Hands-On: Building iOS and Android Apps with C#“. It was hosted by Greg Shackles, author of “Mobile Development using C#“. Greg also presented at Xamarin’s Evolve conference in Austin, TX this past April. At this meetup he conducted a hands-on demo on how to build a simple iOS and Android app using Xamarin Studio and C#.

Continue reading

Theory vs. Practice: Delivering Real World Software

Theory vs. Practice: Delivering Real World Software

On Friday I attended a panel discussion titled “Theory vs. Practice: Delivering Real World Software” at the New York Law School put on by CUNY TAP (Tech Apprenticeship Program). The event featured 6 speakers from the software industry who spoke about their career experiences to an audience of 100+ students and software practitioners. I was expecting a lively debate on competing methodologies and theories used in the industry (i.e. Waterfall, Agile, TDD, Scrum, Kanban, etc.). Instead, each panelist spoke from the heart about their most painful experiences that defined who they are today:

Continue reading