KHS Guitar Tuner Mobile App Case Study

Case Study: KHS Guitar Tuner Pro

Shaylee Webb Case Study, Flutter, Keyhole Creation, New Development

KHS Guitar Tuner Pro is an Android and iOS application that can assist guitarists with a variety of different tuning setups. The app can play notes within the selected tuning to use as a reference, and it uses incoming audio from the microphone to give musicians a visual indicator of what pitch is being played. It also contains a metronome with multiple timing options, making it useful for the whole practice session.

The application was written with Flutter to share a single implementation across multiple platforms. It was built in accordance with the Bloc design pattern for code organization.

CFSWater

CFS Water CFSWater is a mobile application that reports scheduled and current water release and power generations for Army Corp of Engineer Tailwaters.Overview A team of consultants architected and developed CFSWater, a cross-platform mobile application using Flutter. The result was a highly functioning mobile app that reports scheduled and current water release and power generations for Army Corp and Engineer …

tRPC: Building type-safe APIs with TypeScript

tRPC: Building Type-Safe APIs with TypeScript

Jake Everhart API Development, Articles, Development Technologies & Tools, GraphQL, JavaScript, TypeScript Leave a Comment

Over the years, we’ve seen many approaches to HTTP API design. While REST APIs are still very popular throughout the industry, they offer no inherent guarantees that the client’s assumptions about the response structures will be valid.

GraphQL fills this gap to an extent by allowing client-side code greater control over the resulting structures but at the cost of added complexity. RPC (remote procedure call) frameworks attempt a different solution by sharing generated type definitions between the client and server implementations. What if there was a way to achieve the type safety of RPC by simply inferring the type definitions from the server’s code?

Enter tRPC. Since JavaScript (and specifically TypeScript) can already span across client and server implementations, tRPC allows a client to directly consume structures defined by the server’s exposed procedures. Essentially, you import your dependencies from the server to access these procedures, their return types are inferred and checked at build time, and your client code can confidently consume the returned data.

In this post, we’ll look at how it achieves these goals and what limitations it places on your project stack.

Writing High Quality Code

Writing Quality Code: Practicing “Make It Work, Make It Right, Make It Fast”

Rik Scarborough Articles, Programming, Soft Skills 1 Comment

Kent Beck, a software engineer famous enough to have his own Wikipedia page, is quoted as saying, “Make it work, make it right, make it fast.” A quick web search will show you several pages discussing this quote, some in great detail.

So, I’ll write another, and hopefully, I’ll provide two things to build on the existing literature. First, I’d like to put this concept in front of some programmers that might not have heard it, or if they have, haven’t taken it to heart.

Second, I’ll provide my own philosophy on the subject. Maybe it will different enough that you’ll get something new from it. I do have a slightly different take on it. Although I don’t want anyone to change the quote, maybe we can instead think of it as, “Solve the problem, make it maintainable, and make it perform.”

React’s Unique Looping Tool For Beginners

John Dehan Articles, Development Technologies & Tools, JavaScript, React Leave a Comment

In the post, I’ll be talking more about the map() function – how it differs from other common loops, exploring its optional second parameter, using mapping in the return statement, and tracking with keys. By the end, I hope you’ll have a clearer understanding of how the map() function can be useful in your React projects.

Please note, this post is geared toward React beginners and new coders. Veteran users may not glean as much from the content.