RSS Amplifier

Blog

Adam Canady's blog

adamcanady.github.ioRSS feed ↗11 posts

Latest posts

Video Degradation Through Compression

Lossy encodings of media have tons of advantages - smaller file sizes, more portability, decreased bandwidth usage, faster buffering, etc. But one of the oft-tossed-away downsides is that videos lose a ton of quality upon encoding into lossy codecs. To demonstrate this, here are a couple videos that show a source file undergoing compression on multiple iterations. It’s easy to see the…

How to Migrate Your WordPress Blog to Ghost

It’s very straightforward to migrate your WordPress blog to a Ghost blog. First, we’ll start off by exporting everything out of WP, then we’ll set up Ghost, import everything, and finally tweak the setup so our old URLs are supported. Get data out of WordPress Install the Disqus plugin and export your comments to Disqus. Install the Ghost plugin and obtain a .json file containing…

Why Does It Seem Like All the Threading Projects in Node Are Abandoned?

I was recently looking for a threading solution in Node and, to my surprise, many of the projects have been abandoned! Looking at Threads a go go , and webworker-threads , for both of which the last commit was at least 6 months ago. It seems like there’s no demand for a solution to running long running or blocking tasks in node (aside from fibers or child_process). I can’t even get…

Opening CSV or Excel Files in Python

A recent project of mine has involved being very flexible with input data, transforming it to a standardized format, and putting it into a database. This is commonly referred to as ETL , or Extract, Transform, Load. In doing this project, I’ve gotten familiar with an awesome Python Data Analysis framework called Pandas . To install Pandas, simply pull one of these in the ol' command line:…

Why Does the Development Flow Suck?

After writing about my idea for an Integrated Design-Development Environment , it occurred to me that there’s a lot of unnecessary hassle in all stages of development and deployment of web applications. It takes hours to get a development environment set up before you can even start working on a specific piece of code. Then, when launch-time arrives, it takes at least as long to get…

Integrated Design-Development Environment (IDDE)

Ever since my freshman year Data Structures class when I was introduced to interfaces in Java and the Eclipse IDE, I could instantly see the power behind abstracting how code works behind the scenes. You could develop now with the belief that certain functions did what they said they would, only to actually implement them later or use them out of a library. This is the kind of forward-thinking…

A Developer's Interlude Into Science

This post is a work in progress Science is great. It’s awesome to see the ways people use math to describe the world and how clever abstractions help us understand nature better. This term, I’m in a couple physics courses and a chemistry course. As someone whose courseload has been dominated by computer science courses, it’s hard not to relate everything back to CS. A few notable…

Whiteboards

Note: this post started off as a contrast between real whiteboards and digital whiteboards, then I got distracted by a specific idea for code organization. I split this post up into two separate ones since the conversations were distinct enough. You can find the code organization piece here . Hope you don’t mind! Whiteboards are awesome because a bunch of people can get together and connect…

Reverse eBay

I recently saw this idea on r/CrazyIdeas : A reverse-ebay: Buyers post something they are interested in buying, and vendors compete to offer the lowest bid. Internet shopping would suddenly get so much easier--instead of searching different websites and online markets for the lowest price on an item, you could make a single post and have the lowest price come to you. Additionally, it could be…

How I Use Nginx and Node.js

As I mentioned in the piece on my web stack , I currently use Nginx to manage requests on a server and set up different hosts. Here’s how I do it. Nginx is great because it’s extremely fast and very configurable. Here, I’ll share a basic configuration that works well for me to host a few sites on the same VPS. Basically the idea is to figure out where the request is coming from,…

My Web Stack

This summer, I've had the great pleasure of learning how to use some of the most amazing technology. As someone still relatively new to software development (~4-5 years of informal experience, 2 years on the job), I don't consider myself a senior developer, however, I have learned quite a bit about how to lay out projects and what tools will be the most effective. My background was mostly in…