Sandbox Articles

We’re curious people by nature. And we love to teach others what we’ve learned. So explore our blog to gain fresh insights from our expertise in areas ranging from culture to AI.

SEP Wins TechPoint’s 2024 Innovation Service Partner of the Year Mira Award

SEP Recognized as Indiana’s Top Innovation Service Partner, Winning TechPoint’s Prestigious Mira Award Westfield, Indiana - SEP has been named the Innovation Service Partner of the Year by TechPoint at the 25th annual Mira Awards. The Mira Awards, Indiana’s largest…
Read Full Post
teal and blue wall tile

Tiledriver – Making Wolfenstein 3D Levels with Machine Learning

This is the second post in my series on the value of personal projects. See the first one for more context. Marrying the Old with the New Tiledriver was an attempt to create levels for the classic 1992 game Wolfenstein 3D using machine learning. I thought this would be a fun challenge since I didn’t […]
Read Full Post
close up of various craft supplies

The Value of Personal Projects

Personal projects can be a great way to explore ideas, concepts, or frameworks before you use them on an actual work project. As somewhat of a staple of SEP’s Hackathons, I’d like to highlight some of my philosophies around personal projects and the value I’ve gotten out of them. I worked on all the projects […]
Read Full Post
health app vector icons

Analyze the Crap Out of Your Apple Health/HealthKit Data

As a recent iPhone + Apple Watch convert (see ya, Android and FitBit) my fitness tracking data lives in Apple Health. I want to make charts and graphs and see trends over time (you get the idea, I’m an engineer, I wantneed to engineer and analyze my fitness data). Problem is, there’s not a great way […]
Read Full Post

Announcing PlanetEx: an open source blog aggregator written in Elixir

A long time ago, a few developers at SEP built a program to aggregate employee’s personal and internal SharePoint blogs. They called it Planet, after planet.rb, the Ruby gem they used to build it. Unfortunately, our old Planet met its inevitable demise after an upgrade to our SharePoint instance that broke some compatibility. I decided this […]
Read Full Post

Building with Elm at SEP Makes

Preface For the last few months, I’d been working on my side project Contact, a JSON REST API written with Elixir and Phoenix, designed to be the backend to an instant messaging platform. I thought that SEP’s semi-annual hackathon: SEP: Makes, would be the perfect time to make a front end application for Contact, but […]
Read Full Post

From Terrible Things Come Innovation

As a software architect, I do what I can to stay abreast of the world around me. As new technologies, design patterns, and so on emerge, I try to learn enough about them to make informed decisions on where they might prove useful or if I can safely ignore them. I think about their relevance […]
Read Full Post

Code Analysis: Methods

We’ve already gone through a lot of different programming language constructs, however we haven’t really talked about a very highly used feature.  How do we think about methods using these diagrams. So there’s a lot we could talk about methods in general, but I want to avoid any specific digression into what object oriented and […]
Read Full Post

Code Analysis: Exceptions

void Function() { try { RunOtherFunction(); } catch { Log.Error( "Problem" ); } } void RunOtherFunction() { if ( a_okay() ) { OtherFunction(); } else { throw new Exception( "Error" ); } } Exceptions are a thing that we tend to use for signaling error conditions such that the error will be dealt with in […]
Read Full Post

Code Analysis: Global State

Global mutable state by itself can make a program harder to work with because instead of  having a call tree that’s simply a tree structure, you end up with more of a graph structure.  Any given point in the program that interacts with the global state can be effected by any other point in the […]
Read Full Post