Tag: architecture

Cloud

Amazon SQS Overview (Part 2) - Security and Dead Letter Queues

2017-06-05

This is part 2 of my engineer's overview of Amazon SQS. This time we'll cover queue security and the concept of dead letter queues.

Continue reading
Cloud

Amazon SQS Overview - A Simple but Powerful Queue Service

2017-05-15

If you're thinking of engineering a solution that incorporates Amazon SQS, this overview will help you understand how to get started.

Continue reading
Cloud

Baby Connect Project - Design Considerations

2017-04-03

Previously, I wrote about my experience creating some automation to keep track of my baby daughter’s diapers and bottles using a service called Baby Connect. This time, I’d like to discuss some of the hurdles I faced and design choices I made. If you haven’t already read the original article, it would be a good idea to check it out first.

Continue reading
Cloud

Tracking a Baby with AWS and IoT

2017-03-20

I don’t talk about it much when I’m in a professional mindset, but I do have a family at home. My daughter, Aubrey, was born on May 24, 2016. For the first few months of her life, my wife and I tracked her diaper and feeding schedule meticulously using an app called Baby Connect. It allowed us to record data on our individual phones but have it synchronized through the cloud. Of course, being the technologist I am I couldn’t leave it at that. Using AWS services and their IoT toolkit, I was able to build some additional integration points for Baby Connect, allowing me to track diapers with the push of a button on the changing pad, or bottles with the sound of my voice and my Amazon Echo.

Continue reading
Software Engineering

Design, Art, and Science In the Context of Software

2013-09-08

I was listening to a recent Hanselminutes podcast where Scott Hanselman speaks with Natasha Irizarry about User Experience (UX) (you can find the podcast episode here), and a very interesting debate got started in my head.

Continue reading
Programming

Strong Typing Considerations

2013-07-31

You could also call this one “Why I Hate JavaScript,” but there are many popular languages today that do not employ strong typing. JavaScript was just the language I happened to be working in when the following code had me pulling my hair out for nearly twenty minutes:

Continue reading
Software Engineering

The Ambulance Down in the Valley

2013-05-27

A while back, I was discussing some of the nonsensical actions that people take in the software industry with my parents during a visit. my mom told me to look up a poem called The Ambulance Down in the Valley. I wrote it down and forgot about it for months because I was in the middle of the last semester of my Master’s degree. I finally got a chance to look it up, and it really is a beautiful illustration of the strange way we look to solve problems sometimes.

Continue reading
Software Engineering

The Danger of Building a Product on Someone Else's Service

2013-04-10

AppGratis, Recently Pulled from Apple's App Store

Continue reading
Technology

The iPad’s Retina Display Spells The End For Bloated Magazine Apps | Cult of Mac

2012-03-09

The Cult of Mac has an interesting article about how the Retina display is going to make it unmanageable for “magazine” apps that store all of their content as fullscreen images: The iPad’s Retina Display Spells The End For Bloated Magazine Apps.

Continue reading
Soft Skills

The Daily - Also Poorly Architected

2011-02-20

A few weeks ago I took a peek at The Daily (a “digital newspaper” app from News Corp.) and quickly decided that my time and money were better spent elsewhere when it comes to getting the news.  Bear in mind that I am more strict in my evaluation of The Daily because it requires a paid subscription.  In my mind, that raises my expectations significantly.  The initial version of the App performed poorly in a number of areas, including:

Continue reading
Software Engineering

Making Better Use of Patterns

2009-07-21

Software Patterns are very useful. They provide us with common solutions to related, but distinct, problems.

Continue reading
Software Engineering

Benefits of Analogies in Software Architecture and Design

2009-07-21

Analogies are often used when building or discussing the architecture and design of a system. I think there are two main benefits to this.

Continue reading
Software Engineering

Sinking the Titanic

2009-07-06

Imagine, for a moment, that you are Poseidon, god of the oceans. The RMS Titanic is sailing in your waters, and you don’t like that. You decide that you want to sink the Titanic and make an example of her for other sailors of the world, so you order your minions to construct a giant iceberg that will crack her hull and sink her.

Continue reading
Software Engineering

Abstraction in Software Architecture

2009-05-30

One of the important parts of the essence of software architecture is that it is an abstraction of the actual code of the software system. What’s interesting about that is that it means software architecture is an abstraction of an abstraction, since the code we write using modern programming languages is just an abstraction on top of machine code. Just how many layers of abstraction have we accrued over the years that Software Engineering has been growing up?

Continue reading
Software Engineering

The State of the Art

2008-11-02

There is an enormous discrepancy between our understanding of Software Engineering as it should be practiced and the ways that we actually practice Software Engineering on the job. We know that proper designs and methods can save tens of thousands of dollars down the line, yet we continue to make messes of our systems. Why does this happen?

Continue reading