Our lives are built on abstraction. It is what allows us build things much faster than we previously could. A person, or a group of people, decides that everyone else shouldn’t need to think about the gritty details of a problem — and voila, a new layer in the stack!

This is great until someone comes along and builds on that new layer, then discovers it obfuscates a lower level detail that they need. The abstraction that was intended to be, and in many cases is, an enabler has suddenly become a hindrance. There are a few options for how abstraction builders can choose to handle this trade-off.

The simplest solution is to decide that they are targeting a narrow audience, acknowledging that they won’t be a good fit for everyone. In reality, nearly all technology is optimized for some subset of the total possible consumers. Even the most ubiquitous products are disliked by some, and don’t fit the requirements of others. Choosing where you want to exist on the spectrum from a narrow audience to a broad one is critically important when designing a product.

Another option is to break the abstraction layer into a set of smaller, modular abstractions that can be assembled in a variety of configurations. This typically enables faster iteration, and when exposed to end-users, widens the audience for the product. The downside is that you are also pushing more cognitive burden onto the end-user, forcing them to understand multiple components and how they should piece them together.

Like any early-stage company, we at Golioth have wrestled with where we fall on the “audience spectrum”. Historically, we have leaned towards a more opinionated platform, prioritizing simplicity and ease of use over letting customers adjust all the knobs. There is good reason for this approach. Golioth connects two fairly disparate technical domains, firmware and the cloud, and many of our customers have deep expertise in one, but not both. The tricky thing about this strategy is that making the firmware highly customizable and the cloud opinionated, or vice versa, results in half our users having an experience that is not catered to their current capabilities.

We could take the simple solution and decide that we are only really targeting half of the total potential audience. Perhaps we could build an incredible platform for firmware engineers who don’t want to think about the cloud. Unfortunately, our users are building products based on connecting hardware to the internet, which is no simple feat. In the early stages, they typically want to shrink scope as much as possible. If functionality is not absolutely necessary, it can wait. But down the line, their team may grow, their product may expand, and they may decide that a domain they were previously happy to consume abstractly is now an area where they need fine-grained control. Golioth needs to serve users along each step on that journey.

Over the next few weeks, we are rolling out significant updates to Golioth that give you more control over the platform. But don’t worry, the simple, streamlined experience you know and love isn’t going anywhere. Alongside these changes, we’ll also give you more insight into your usage, and if you don’t want to think about managing custom configuration, we’ll provide reasonable defaults that allow you to keep using Golioth as you always have. With these new capabilities, from prototype to production, we can’t wait to see what you will build!

I’m a car guy…well sort of; more of a gearhead than someone who obsesses over the luxury amenities or posh and circumstances of the high-end brands. My fondest memories from childhood are of working in the garage with my dad on whatever clunker he had recently brought home and was determined to get running again. At 10 years old I was spending my free time wedged under a car changing oil and checking grease fittings. At 16, I rebuilt the engine in my first car – a 1970 Ford Maverick with a straight 6 250 and 250,000 miles on it. 

 

What I loved then about working on cars, what I’ve always loved, was the feeling I got every time I took something broken down, sometimes well beyond operational, and brought it back to life, as good or better than it was. The beauty of the modern automobile (pre-electrification) is the simplicity and elegance of interchangeable parts, shoutout to Henry Ford! Is your oil plug stripped? Get a new one! Brake pads worn down, exhaust manifold cracked, head gasket blown? Just break ‘em down, rip ‘em out, and replace them with a new part as good or even better than what was there originally. 

 

These days I’m rarely under the hood of a car. Not because I can’t be, or because I don’t love it, but because there are other things in my life that I love more. Spending time with my family, being outdoors, volunteering, solving hard problems at the office, all of these things are simply more important to me now than the time I spend in the garage. It’s a simple question of utility – every minute I spend working on my car is a minute I can’t spend doing something else important to me. So just this morning, even though it hurt me a little inside, I scheduled my wife’s car for some routine maintenance with the local mechanic. 

 

Now here’s the kicker, the mechanic has an operation purpose built to service my vehicles. He has all the tools, the lift, the garage space, not to mention the thousands of hours of expertise working on my car and countless others like it. So not only does taking my car to the mechanic save me time and allow me to focus on what I care about most, I’m also getting better quality maintenance from someone fully equipped to look after a resource my family and I depend on. 

 

There’s an allegory here to Golioth and the conversations I have nearly every day with our partners and customers. Golioth is the mechanic down the street, there with the right tools and experience to manage your IoT devices and, when necessary, help strip away the old bulky code and replace it with some upgraded aftermarket cloud services. It’s not that our customers CAN’T build their own IoT management layer, it’s just that there are more important things for them to be spending their time (and money) on. 

 

Most of our customers build connected products from end to end. They start with hardware selection and prototyping, develop their embedded software, work through testing, trials and validation and end at production ready connected solutions. They need purpose built tools and services made by people whose core focus and expertise lies in those tools. Like a mechanic in the shop, Golioth is that purpose-built solution with the team to match. 

 

I still love working on the family cars, but these days I trust the mechanic to do what he does best. The rest of my life is simply too important to spend my time under the hood. Just like I trust the mechanic, Golioth’s customers trust us to bring our knowledge and expertise to bear and be careful stewards of their connected fleet. We give them the peace of mind to know that the things they need are already taken care of, so they can focus on the more important things.

This is an excerpt from our bi-monthly newsletter, which covers our recent news and happenings around the IoT ecosystem. You can sign up for future newsletters here.

When building out the Golioth platform, we’re constantly examining the user experience. We ask ourselves why it would make sense to use Golioth over alternative solutions, whether in house or off the shelf. While we want to have the most engineers using the Golioth platform as possible, we prioritize the real goal of making it easier to build secure, efficient, and useful products. We want our users to use the best tool for the job. Let’s dig a little deeper into how we do that.

When comparing Golioth to an in-house solution, we ask our customers a simple question: Is building your own IoT platform helping you differentiate your product? While some of you may answer “yes,” the majority of folks find that focusing on the IoT infrastructure is a distraction. For them, using Golioth helps drive down costs while increasing organizational efficiency. Those are tangible metrics for us to target; they are manifested in our pricing, our seamless device on-boarding, and straightforward user management.

When we compare Golioth to off-the-shelf solutions, our outlook is somewhat unique. Rather than trying to be the last software product you will ever need, we look to be the best platform for managing devices that connect to the internet. To do that, we build differentiated device management services, such as OTA updates, instant device settings, and real-time logging—to name a few—and we heavily optimize network throughput and efficiency. For simpler IoT products, we also provide application services such as LightDB State and LightDB Stream so that you can move beyond device management to basic data storage.

At Golioth, we care about moving the industry forward without forcing our users to compromise. The IoT product landscape is complex and heterogeneous. It would be naive of us to think that Golioth would be suitable for every aspect of any one product. That’s why we curate a large ecosystem of partnerships to enable you beyond the realm of device management. Our latest partnership announcement will enable devices to talk to Memfault over a single, secure connection. We aim for Golioth to integrate with best-of-class cloud platforms and enable their usage without complicating the firmware running on-device.

Crucially, the best tool for the job may look different today than it does tomorrow, in 6 months, and in 2 years. The promise of Golioth is that as long as your devices are sending data using our firmware SDK, you will have the flexibility to change where that data is going, how it is being processed, and how it ultimately is presented to the end-user, all without changing a line of firmware code. Golioth Output Streams currently enables this, but over the next few months, we will announce an even more robust set of features in this area, starting with our Memfault integration, which you can sign up to be notified about here.

I spend a lot of time thinking about the folks that offer design services to others. I came from that space as a lowly one-person consultancy (dev shop? product development firm? what do we call these things?). It’s an interesting set of challenges, including offering opinions and expertise to others for money. Some days, I felt on top of the world, like I knew everything and could solve anything. On other days, I felt defeated and lost, trying to find a solution for my clients, who I served as best I could. I joined Golioth when I saw a solution to a problem I was trying to solve as a hardware consultant: I just created a beautiful piece of hardware; now, how do I connect it to the cloud? I was clueless about cloud capabilities, but that didn’t stop my clients from asking for them.

One of the key points in the design-for-hire game is that you need to understand your area of expertise well and deploy that knowledge confidently. That starts to get tough for IoT / connected products. Every day, there’s a new communication protocol, web technology, component, or other efficiency that could save your client money and make your dev shop look better. How do you stay on top of your game when doing so means you’re giving up dollars deploying the knowledge you already have?

We stay on top of these technologies at Golioth, as well. It’s why we maintain an active blog. It’s why we partner with silicon companies in order to better prepare you for the next generation of components (hint: there are some great products coming soon). It’s why we do free training and why we’re going to make it even better in the new year. The ground is shifting, and we shift with it. Even internally, we are making our SDK more efficient, and we’ll need to adjust to change by updating our examples, reference designs, content, and more. We will push these changes to all of you so you can have a starting point for your client designs and deliver better products faster.

IoT can be very challenging, and we’re here to help you cross every hurdle. You hopefully know (and love) our content, but the Golioth platform is designed to make you more efficient: read how the product development firm Ovyl based out of Nashville was able to prototype a solution 30 times faster with Golioth when they were building a Thread prototype.

Whether you’re a successful dev shop, or a brave solo consultant, we’d love to work with you. Golioth users often reach out to us for help, and we’d love to send them your way. We’d also love to create content both for you, and with you, the design-for-hire virtuoso. Sign up here if you’d like to partner with Golioth on content, joint customers, new opportunities, and more.