Is your code slowing you down?

Welcome to!

Code Counselor is an idea conceived of as a result of over a decade of work in the software development industry. The purpose of this site is to offer pragmatic insight and advice to anyone tasked with delivering production quality software.

About the Author

I am the father of three wonderful children and husband to an amazing wife. If it was not for their support I would have missed out on a number of great experiences throughout my career, which has led to the launch of this initiative.

My technical background is in enterprise systems on JVM technologies. I no longer am apt to call myself a ‘Java Developer’ because I have discovered that a a great software craftsman must be capable of learning and deciding when to use the appropriate tools; including a diverse set of languages. I am drawn to the challenge of finding, evaluating, learning, and leveraging the right technologies across broad problem domains.

By my observations, there is no better time than now to be in the field of software development. Our field is one that values openness and sharing, as demonstrated by the plethora of Open Source Software projects. I believe our field is relatively unique in this regard, and with such a strong ecosystem it will be one that sustains itself for a long time.

Thanks for visiting, and please reach out to me and share your own thoughts or ideas!

Disclaimer: This site is owned and maintained by Nate Good. The opinions expressed on this site are that of the author and do not represent those of any current or former employers.


Speed up your development with a RAM disk
30 Aug 2016 . Technology . Comments

Optimize your development environment and save your SSD at the same time In a quest to tune IntelliJ one of the bits of advice I came across was to setup a ramdisk for build artifacts. Note: this is specific to OSX but the same can be done on any linux environment Master of the obvious: this is an ephemeral disk because its in memory and any contents will not survive a machine restart The application I primarily work on runs on Tomcat, directly against the IDE build artifacts which are targeted under WEB-INF/classes. For this reason I also had to enable the allowLinking feature in my Tomcat Context. Here are the steps I took for setting up my ramdisk: Create a ram disk... continue reading

Progressive Web Applications
15 Aug 2016 . Technology . Comments

Google Progressive Web App Roadshow Notes from NYC roadshow on August 15th, 2016 This page will be updated once Google publishes the slide presentations. Keynote Some stats 80% of mobile user’s time is spent in 3 apps The average mobile user installs zero new apps per month 60% of connections world-wide are 2G Why does no-one open their browser when they know they are offline? User Experience needs to be Reliable - When we had dial-up modems everyone in the house knew if the house was online or offline. - In the age of broadband we just expect connectivity; but what if its not there? - Native apps don’t just break when there is no connectivity, why do webapps? Performant... continue reading

View more posts


  • September 2015 - February 2016

    Consultant / Scrum Master at Celerity

  • September 2008 - September 2015

    Application Development Lead at JPMorgan Chase

  • May 2004 - September 2008

    Software Engineer at Nielsen working on Web Based Analytics Platform for consumer spending


Send me an email if you would like to sign your code up for counseling.