You want to work with D3, but you don’t understand how SVGs are rendered in the browser. This makes it very difficult to understand HTML code that D3 outputs. Let’s tackle some of these issues. The code we will be looking at today was generated by D3. However, in this example, we’re not looking at…
The Blog
The Simplest Guide to D3
D3.js does two things: (1) It adds HTML to a page and (2) it binds data to that HTML. That’s it. The simplest example of this you will ever see of D3 data are bar charts binded to pixel size. Most examples of D3 in the wild use SVGs or Path html elements. Understanding those…
The Importance of Linting
A linter is formally classified as a Static Code Analysis tool. It is usually a command line tool and it parses a project’s code to look for patterns. It then checks the patterns it finds against generally accepted standards (or custom rules you think are important). The primary purposes of a linter are to find…
How to Migrate a Hosted WordPress Blog to BlueHost
The initial problem: I wanted to add SSL to this blog The first obstacle: My Godaddy hosting is 15 years old and I don’t have the ability to add an SSL certificate. I don’t have access to cpanel or another means of adding an SSL certificate. The solution: Migrating this blog from Godaddy to Bluehost.…
Always Be Improving
You should always improving, but should you strengthen a strength or improve a weakness? Getting better is difficult. You need to make time to improve. I’m pretty good at that. What I’m not good at is picking an area to work on. On any given evening, I’ll think to myself, “Should I strengthen a strength…
Front End Architecture for Angular Applications
In my current role as Director of Product Engineering at FINCURA, I’m often thinking about our front end architecture. For our front end application, we use Angular, with our main concerns being: reliability, testability, and speed to develop new features. To address these concerns, we’ve developed the following architecture. Angular architecture comes down to three…
The Nuances of Well Named Boolean Methods
/Good naming is important. It helps developers read code faster. Hard to read code is the biggest impediment to moving fast. Developers spend 10x more time reading code than writing code. Well named methods are the easiest way to increase developer velocity. Good code should read like a story. One important part of this is…
The Magic Number Antipattern
One antipattern I see often is the magic number. The magic number antipattern is a direct usage of a number in a function. Here is an example that comes from Refactoring by Martin Fowler. function potentialEnergy(mass, height) { return mass * 9.81 * height; } What the hell is 9.81? Yeah, I don’t know either.…
Learning About Browserify and Babel while Contributing To Open Source
Yesterday, I had the opportunity to build out the test suite for an open source project called Tributejs. I had to learn about karma, browserify, babel and babelify. It took an entire day to figure out how front end build tooling works. Here are some lessons I learned. You can see my pull request here.…
I’m Leaving Liberty Mutual and Joining Fincura
Note: This article was originally published in May 2018 on LinkedIn articles. About a year ago, I joined Liberty Mutual. You may have read my post about it. My goals at Liberty were centered around becoming a technical leader. Over the past 12 months, I… 1.) Led a team of 5 developers through evolving priorities with…