Nick Klepinger

Programming, Gamedev, Gaming, and other nerdy nonsense.

© 2018. All rights reserved.

Nick Klepinger's Blog

Apr 06, 2018

Taking React in Context

Last month saw the release of React v16.3, and with it the much talked about new context API. The official docs have some great examples of how the new API works and even has a brief description of why you might use it. I'd like to take a moment to clearly lay out exactly how and why I've been using context in my applications, and why I'm so excited for this new API. New App, Who This? Most applications have some concept of a currently logged in user. Apps can then use that…

Apr 01, 2018

Announcing Fire-Fetch 🔥🐶 and Chore Tracker

I'm excited to announce the release of two new projects that I've been working on: Chore Tracker , a simple web application for families to use to track chores, and Fire-Fetch , a library of declarative React components for Firebase . Chore Tracker Growing up as an only child, chores were pretty easy to keep track of. I didn't have any siblings to fight with over whose turn it was to do the dishes. Being a parent of two kids, it seems like every time the dishes need to be…

Jan 11, 2017

Firebase Auth with React Router v4

Firebase is a really cool Backend-as-a-Service (BaaS) similar to the now defunct Parse. They have a great free tier that I think is quite generous. Firebase offers a real-time database, storage options, hosting, and many other nice features worth checking out. One feature that I really like is Authentication. Firebase Auth allows you to use a bunch of different auth providers (Twitter, Google, Facebook, etc) for your app. It's quite simple to set up if you follow the docs…

Jan 02, 2017

Thinking Critically About Redux In Your Application

When someone new to React asks online how to handle state or passing of props in their application, the answer often includes using Redux. While I think that Redux is a fantastic library and love using it, this post will hopefully illustrate why it isn't always necessary or even a good idea. Hammer Time.....Stop When I first started learning React, nearly every blog post, article, or tutorial I read also included Redux. Many places refer to the two as React/Redux, as if they…

Jun 21, 2016

Angular 2 Tour of Heroes Tutorial With the NGRX Suite

Update: 09/26/2016 Updated repo to Angular 2 final. See the repo for more info. I recently was tasked with starting a brand new project at work that would be used for taking some simple internal surveys. Something like SurveyMonkey was overkill for what we're looking for, but using the built-in survey features in SharePoint (I know, I know, ugh) weren't going to be powerful enough. I originally planned on writing the application in Angular 1, but after going to a local…

Apr 13, 2016

Xamarin vs Native Swift for iOS Development

I will preface this post with the statment that I have very, very little experience working with Xamarin or native iOS development. Nothing I say here should be taken as anything more than a quick, face-value judgement. At my job we're very much a Microsoft shop. Almost all of our code is C# and written for ASP.NET and its various frameworks. Recently management made the decision to switch to iPhones from Windows phones. This was mostly done because it turned out to be hard…

Feb 07, 2016

Adventures with Node Callback Hell

I've been playing around with creating a simple web API using NodeJS and Express recently. I've found it to be a lot of fun to work with, however, I'm still fairly new to Node. In particular, I'm still trying to figure out how best to structure my code. This has led to some seriously ugly and over-indented code. I've been working on a simple login endpoint for the API that would return a JWT for a valid user. I've been refactoring this piece of code for quite a bit today…

Dec 29, 2015

Angular 2 QuickStart in Visual Studio 2015

On the 15th of December, Angular 2 finally hit beta status. I immediately wanted to run through the QuickStart tutorial and take it for a spin. On my Macbook at home, this went swimmingly. Following the directions worked exactly as it should. The next day, I thought I'd take a crack at using it in my work environment. We're a Microsoft shop, so that means Visual Studio, ASP.NET, etc. I thought I'd try a simple WebAPI 2 project with an Angular2 front end. I dummied up a simple…

Apr 01, 2013

Indie Games vs Indie Movies

With some of the recent big game releases and game convention season being underway, I've been thinking a lot about the difference between big release games and smaller indie titles. I can see the difference between the tremendous amount of work, money, and manpower that goes in to making something as big as Bioshock Infinite, but I also understand that the simple design of a game like Fez takes a large effort as well. However, my ability to recognize the tremendous amount of…

Oct 27, 2009

The Great Code Divide...Follow up

Joel Spolsky posted this article yesterday afternoon at his blog, Joel on Software. Looks like there is some hope for the future after all! And then I also found this article , by Mark Dennehy, defending the current academic process. While I agree with Mark's premise that university courses are meant to teach fundamentals, it seems that those fundamentals have changed while most curricula have not.

Oct 26, 2009

The Great Code Divide

Disclaimer: I don't have a CS degree, so maybe things are different in a true CS program. Update Feb 4, 2016 - I have since this post received a B.S. in Computer Science. Roughly two years ago, I finished up my associates degree in Technology with an emphasis on computer programming. I had always been a self-taught programmer. I started by teaching my self BASIC using QBASIC on MS-DOS back in the early 90's. I tried my hand at a little Pascal, and learned C and eventually C…