Comments

You ever get this one? { Error: listen EADDRINUSE 0.0.0.0:8080 at Object.exports._errnoException (util.js:1036:11) at exports._exceptionWithHostPort (util.js:1059:20) at Server._listen2 (net.js:1252:14) at listen (net.js:1288:10) at net.js:1398:9 at _combinedTickCallback (internal/process/next_tick.js:77:11) at process._tickCallback (internal/process/next_tick.js:98:9) code: ‘EADDRINUSE’, errno: ‘EADDRINUSE’, syscall: ‘listen’, address: ‘0.0.0.0’, port: 8080 } Or something like it? Here’s a one liner to kill that process. kill -9 `lsof -ti tcp:8080` This gets you the process ID of the application listening on port 8080 and passes it as a parameter to kill. Read on →

At GRT, we recently built a React web client for a small educational startup. Once this web app was feature complete, we decided to do a do a port to React Native as a learning experience and proof of concept. We definitely learned some stuff. What is React Native? React Native is a set of tools that lets you build Native Android and iOS apps using JavaScript and React. This is not a webapp run in some webview in a native wrapper. Read on →

So you’re learning to code? There first think you should get familiar with is the Terminal and the command line. Let’s discuss some basics. What is it? I’ll keep my comments confined to OS X and Linux, since those are the environments I’m familiar with. The Terminal is an application that provides you a window through which to enter commands into the Unix shell of your choice, most systems default to BASH. Read on →
Comments

WalmartLabs has recently open sources their cloud management platform OneOps. You can dive into the documentation here or examine the source code here. As a OneOps user, I’d like to offer a quick spin around OneOps and an overview of what it does. What is it? OneOps allows you to configure VM clusters using a GUI or a RESTful API in a way that is cloud provider agnostic. Meaning, you can use cores from AWS or any other cloud provider or a private cloud. Read on →

NVM is the Node Version Manager, a bash script you can and should use to manage multiple NodeJS versions. As a Node developer, you’ll invariably find yourself dealing with Node version compatibility issues forcing you to switch versions of Node depending on what you’re working on. It would be nice if Node offered a command like use 4.1.1, well NVM does just that. First install the latest version from here Read on →

In this hypothetical example, you’re a programmer who has a project. In this project, you are using a bunch of dependencies, which you manage with NPM and are specified in the package.json file. Whenever you build this app, you install all the things using npm install. You continue to build the app and deploy it and your users use it. Except one day you build the app and it breaks! Read on →
Comments

Intro systemd is an init system that most linux distributions are standardizing on and a crucial tool for any system admin or devops engineer. In Unix and Linux, background processes are called daemons. systemd provides a syntax for creating objects that can be managed by the daemons in the form of units. You can see what units you have on a machine with the systemctl command. Here we’ll pass the parameter list-units. Read on →

Start with the webpack basics What is a loader? A loader is basically a preprocessor. It’s how you let webpack know that you’d like to transform a module in some specified way. For example, let’s say you are writing your code in ES6 and you’d like webpack to process that into ES5 so the browser can parse it. You’d define a loader for babel that looks for .js files being required and then runs them through babel before adding them to the bundle. Read on →

I hear this question all the time: "Which programming language should I learn?" My answer is always the same: "It doesn't matter. Let the project decide for you." A story When I first started my journey as a professional software developer, I got hired to work on an application written in a dying language on a platform that would soon be reviled the world over. This project was written in ActionScript 3, using the Flex framework. Read on →