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 readingIf you're thinking of engineering a solution that incorporates Amazon SQS, this overview will help you understand how to get started.
Continue readingPreviously, 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 readingI 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 readingI 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 readingYou 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 readingA 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
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 readingA 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 readingSoftware Patterns are very useful. They provide us with common solutions to related, but distinct, problems.
Continue readingAnalogies are often used when building or discussing the architecture and design of a system. I think there are two main benefits to this.
Continue readingImagine, 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 readingOne 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 readingThere 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