Writing code is a craft. Practice your skills and sharpen your tools to be the best programmer you can be.
If you’ve spent any time working in or learning about software development, chances are you’ve heard of the classic book The Pragmatic Programmer by Andrew Hunt and David Thomas.
You likely know a lot of the stories and terms from the book. Hunt and Thomas introduced the world to rubber duck debugging and code katas. They also popularized ideas like don’t repeat yourself (DRY) and early iterations of what would come to be known as agile development.
So, you probably know the book or at least some of its contents. …
Building a REST API in Django is so super easy. In this tutorial, we’ll walk through the steps to get your first API up and running.
(This post is part of a series where I teach how to deploy a React front end on a Django back end. However, nothing in this post is React specific. Whatever your API needs, read on!)
[Just want to see some source code? My pleasure: https://github.com/bennett39/drf_tutorial]
Before we get to the code, it’s worth considering why you would want to build an API. …
If you love Vue, you might be thinking about using it with your static sites. But there are so many options between VuePress, Nuxt, and Gridsome — how should you pick? Here’s why I chose Gridsome as my Vue framework for a recent project.
A little background for anyone who doesn’t know. If you already know about static sites, feel free to skip this section.
From Wikipedia:
A static web page (sometimes called a flat page or a stationary page) is a web page that is delivered to the user’s web browser exactly as stored, in contrast to dynamic web pages which are generated by a web application. …
Adding Vue to an existing Django app is super easy, and a great way to enable more complex front-end features. In this post, we’ll see how to do it the easy way.
We’ll get to the code in a minute, but first it’s worth asking — “Why add Vue to your Django project?”
If you just want to add some effects or dynamically render something on the page, vanilla JavaScript is probably a better bet. Just add a script
tag to your page and try to do the manipulations from there.
However, if you have a whole section of the page that needs to share data and re-render often when the user interacts with it, then you probably have a use case for a JavaScript framework, and Vue is a great choice! …
As a developer, most of your job is updating existing code. However, there aren’t many guides or tutorials to teach you how to successfully refactor and what to look for.
In this post, I’ll share a simple set of guidelines that have served me well when I have to refactor.
It’s amazing how quickly a code base can become unintelligible. It’s not that the original writers were bad coders. The requirements just changed, and things got added on the fly.
The decisions seemed reasonable back then. Rule #1 of refactoring: blaming someone else won’t help anything.
So why refactor?
As a developer, you’re the first line of defense against data breaches. You should know what to look out for, and you have a responsibility to your users to follow best practices.
Luckily, there’s an organization dedicated to providing you with up-to-date guidelines for how to secure your web applications. Every web developer should know about the OWASP Top Ten.
The Open Web Application Security Project (OWASP) is a nonprofit dedicated to promoting security on the web. They’re an awesome organization, and they do a lot of research into the threats and exploits facing modern applications.
According to the experts:
Using the OWASP Top 10 is perhaps the most effective first step towards changing the software development culture within your organization into one that produces more secure code. …
NumPy is an awesome tool that you should be familiar with if you’re a Python developer, data scientist, or just somebody interested in doing things with data.
But maybe you haven’t tried to use it or have been intimidated by its apparent learning curve and differences from standard Python data structures.
In this post, we’ll take a look at NumPy, what you can use it for, when you definitely should use it, when not to use it, and why it’s so popular.
When you work on data-intensive applications, long-running tasks can seriously slow down your users.
Modern users expect pages to load instantaneously, but data-heavy tasks may take many seconds or even minutes to complete. How can we make sure users have a fast experience while still completing complicated tasks?
If we want users to experience fast load times in our application, we’ll need to offload some of the work from our web server.
Most people who are new to coding (and perhaps most developers, period) have a poor understanding of the work that went into the foundation beneath today’s complicated applications.
In this post, I’d like to argue that understanding fundamentals is key to building new things. I’ve argued this point before, in my most popular (and controversial) Medium post.
Don’t get me wrong. I’m not telling you that you should write assembly, build a compiler, or design your own OS from scratch.
But I will say that understanding the core concepts of computers and how they work will take you much farther than just understanding a single language, web framework, or library. …
Blasting your resume out to hundreds of companies is soul-sucking, demoralizing, and largely ineffective.
But in the current job market, it can be difficult to find other ways to find opportunities. This is especially true if you’re new to the industry, recently graduated, or trying to relocate to a new city.
I’m currently starting a new job search in New York City, and I want to take as much pain as possible our of the process. So, I’ve spent the past few days reading dozens of stories from other developers about how they landed their dream jobs. …
About