Building Custom UI Components with SwiftUI for Reusable and Consistent Design

by

In modern app development, maintaining a reusable and consistent design is crucial for creating a seamless user experience. SwiftUI, Apple’s declarative user interface (UI) framework, provides developers with a powerful toolset for creating custom UI components that can be used throughout an app to ensure consistency and streamline the development process. In this blog post, we’ll explore the benefits of custom UI components, how to create them using SwiftUI, and best practices for maintaining a consistent design across your app.

Updating React Native Firebase from v5.6.0 to v14.2.0

by

The software developer’s job is not done once an application is created. As device operating systems are updated, apps must be updated as well to remain compatible. To demonstrate a typical app upgrade, this post goes through an upgrade I recently performed on a React Native mobile app. 

Introduction to Digital Forensics

by

If you’ve turned on the television at all in the last few years, you’ve no doubt encountered at least one show about forensics. However, one of the fields of forensics that is rarely depicted is the ever-growing field of digital forensics. In a world where we are more and more dependent on our technological devices, digital forensics is becoming ever more important. 

Professional Grade Mapping Basics for Developers

by

We interact with consumer grade mapping products on a regular basis, like when we search for directions on our phones, or when we get bored at work and browse Google Earth to see what our houses look like from space. As mere consumers, we have exceptional mapping software at our disposal – but, have you ever wondered what professional mapping products are capable of? 

WebAssembly: The JavaScript Killer?

by

The hype around WebAssembly could easily lead you to believe that it has the potential to replace JavaScript. Here, I will explain both WebAssembly and JavaScript, and why I think their future looks more like coexistence than competition. We will specifically be talking about browser-based WebAssembly.

The Power of Genetic Algorithms

by

Genetic algorithms (GA) are directed search algorithms based on the mechanics of biological evolution. They are powerful tools capable of generating solutions to complex optimization and search problems that would otherwise be extremely hard or time consuming to complete by human trial and error alone. 

Web Development Automation Trends

by

As website developers, automation can increase our capacity to do more, reduce the time and cost of our projects, and allow us to skip the boring parts of our job (let’s be honest!). 

I began developing at a time when there were no helpful tools like frameworks, user interface (UI) kits, application programming interfaces (APIs), or software development kits (SDKs) to speed up our processes. Over time, I’ve seen innovations like these change the pace and possibilities in web development. And now, with the creation of cloud services, we can even do our work from the comfort of our homes rather than relying on dedicated server racks at the office.

Elixir LiveView Countdown Clock

by

Pushing a Boulder Uphill

If you’ve ever worked on a large application, you know that it is easy for it to become very complex very quickly. You’ve likely found yourself building a javascript single-page application in React, Angular, or Vue. Using Webpack to bundle your distribution. Adding  NodeJS to an existing backend infrastructure to expose an easier-to-use GraphQL application programming interface (API). Then, adding pre-rendering to optimize your front-end.

Internationalization and Localization for Mobile Applications

by

Grio was recently asked by Soundwater Technologies to add Spanish and Portuguese translations to their iOS and Android mobile applications.  The app pairs with Soundwater’s hardware to use ultrasonics to measure water flow. This project was a large undertaking, but it could have been avoided: if internationalization and localization patterns had been used during the initial app development, the process would have been nearly instantaneous.