Development
How to approach legacy API development
Development

How to approach legacy API development

Legacy APIs are complex, often incompatible, and challenging to maintain.… April 3, 2024
The benefits of open source technology for businesses
Business Development

The benefits of open source technology for businesses

March 29, 2024
Web app vs. mobile app: How to decide which is best for your business
Business Development

Web app vs. mobile app: How to decide which is best for your business

When considering whether to develop a web app or a mobile app for your… March 26, 2024
Between the brackets: MichiganLabs’ approach to software development
Development Team

Between the brackets: MichiganLabs’ approach to software development

February 12, 2024
Advanced Tailwind: Container Queries
Development Web

Advanced Tailwind: Container Queries

Explore some advanced web layout techniques using Tailwind CSS framework July 28, 2023
Make Your Website Shine Through Shareable Meta tags
Development Web

Make Your Website Shine Through Shareable Meta tags

Improve the web site preview used by chat apps, websites, and social media with… June 20, 2023
The 5 Minute Accessibility Strategy
Android Development iOS

The 5 Minute Accessibility Strategy

We discuss how you can make a plan in just 5 minutes to provide accessibility… May 18, 2023
Make an AI Art Generating Slack Bot in 10 Minutes
Development

Make an AI Art Generating Slack Bot in 10 Minutes

David shares how easy it is to create your own AI art generating Slack bot… February 3, 2023
Why Use Flutter?
Business Development

Why Use Flutter?

We discuss Flutter, a framework for building Android and iOS apps with a single… January 18, 2023
Why I use NextJS
Development Web

Why I use NextJS

Is NextJS right for your next project? In this post, David discusses three core… December 21, 2022
Cross Tab Navigation in Jetpack Compose
Android Development

Cross Tab Navigation in Jetpack Compose

Using Android's Jetpack Compose to navigate from a screen inside of one… October 4, 2022
Quickly Prototyping a Ktor HTTP API
Development Web

Quickly Prototyping a Ktor HTTP API

Whether it’s needing a quick REST API for a personal project, or quickly… August 18, 2022
Chicago Roboto 2022 Retrospective
Android Development

Chicago Roboto 2022 Retrospective

Scott Schmitz shares some notes of interest from talks at Chicago Roboto 2022,… August 11, 2022
Kotlin Multiplatform
Android Development iOS

Kotlin Multiplatform

A brief look at Kotlin Multiplatform Mobile, a newer cross-platform mobile… July 14, 2022
Application Architecture with SwiftUI
Development iOS

Application Architecture with SwiftUI

An overview of mobile application system architecture using SwiftUI June 15, 2022
“Learning To Code” Actually Means Different Things To Different People...And That’s Okay
Development

“Learning To Code” Actually Means Different Things To Different People...And That’s Okay

Depending on whom it is coming from, the phrase “I’d like to learn how to code”… October 15, 2020
Putting a Kettle On: Server-Side Swift with Vapor
Development

Putting a Kettle On: Server-Side Swift with Vapor

One of my goals this year is to make a concerted effort to try out Vapor for… March 23, 2020
How to Build a Better App UI Architecture - Part 2
Development

How to Build a Better App UI Architecture - Part 2

Following up on the importance of consistency and reusability in Part 1, let's… November 19, 2019
App Architecture Series: Building a Better User Interface
Development

App Architecture Series: Building a Better User Interface

At Michigan Software Labs, we don’t simply write code to satisfy requirements.… October 21, 2019
Simple, Responsive CSS Grid Page Layout
Development Web

Simple, Responsive CSS Grid Page Layout

In this new blog post, Jeff Kloosterman shares his approach to creating a CSS… June 25, 2019
Time Check
Development

Time Check

Read Karl's blog post about an interesting development challenge related to… June 6, 2019