August 7, 2022
Logging with Axiom on NextJS API Routes
I had to do a bit of extra work to combine a create-t3-app-generated application with Axiom’s backend logging feature, but I got it work. Here’s my approach.
August 7, 2022
I had to do a bit of extra work to combine a create-t3-app-generated application with Axiom’s backend logging feature, but I got it work. Here’s my approach.
September 26, 2020
I need to perform this series of actions every few weeks, but can never remember the commands.
April 12, 2020
I was getting lost in files in a project, and wanted to make sweet graphs with dependency cruiser to help me out.
March 26, 2020
I want to use eslint to fix things in my code without changing the eslint config that is committed in my project. Why? I’m not sure.
February 23, 2020
February 17, 2020
That was fun. Don’t be tempted by beanbag chairs after lunch, you will pass out. Here are my notes and links to videos.
September 6, 2019
Found on hackernews today
April 18, 2019
December 23, 2018
If you were going to do:
December 22, 2018
I have a 5 letter (not a word) .com domain I don’t use with minimal back links, so I decided to try selling it.
November 18, 2018
I thought these two lines would be equivalent, but they aren’t
July 2, 2018
I found a browser-based GUI to work with my local DynamoDB instance during development: dynamodb-admin by Aaron Shafovaloff. It’s the best I’ve found yet, because:
May 20, 2018
May 18, 2018
Say your all-powerful AWS_ACCESS_KEY_ID
and AWS_SECRET_ACCESS_KEY
have lost their AWS CLI powers because your Amazon Web Services account is now secured with multi-factor authentication. How are you going to automate wicked cool tasks restoring DynamoDB tables or creating Snowball export jobs that your application’s service accounts aren’t authorized to do?
April 8, 2018
A human I know came across code equivalent to this:
March 6, 2018
Let’s find out what this error really means and how to fix it.
February 17, 2018
September 28, 2017
Pivotal Labs hosted the React Toronto Meetup this month.
September 28, 2017
Flipp hosted and sponsored this Dev West Meetup.
September 4, 2017
So I can move from shared hosting to static file hosting with Netlify or Firebase and not have to maintain a WordPress site.
August 28, 2017
Freshbooks hosted us.
July 20, 2017
WealthSimple hosted us. I didn’t write down much.
July 3, 2017
Frank and Jay from Anomaly Innovations talked about their experiences with serverless APIs running on AWS Lambda. Check their site Serverless Stack for detailed tutorial on setting up AWS Lambda functions.
March 3, 2017
TribalScale hosted us for Let’s Make A Deal: Insiders’ perspectives on Salary Negotiations in Tech
February 28, 2017
February 11, 2017
Here’s how I fixed this error. It happened to me in this environment:
February 10, 2017
I think the location is a secret.
February 8, 2017
February 8, 2017
Want to use Git LFS without a Git-as-a-Service provider like GitHub or BitBucket?
October 30, 2016
https://ubuntuforums.org/archive/index.php/t-224748.html was very helpful.
October 30, 2016
How to assemble multiple image sequences and audio files into 1 video file.
May 13, 2016
I like tools that let me drag and drop a bunch of images into my browser, and generate CSS & a single image for me to integrate into my project.
February 28, 2016
September 2017 update: CircleCI 2.0’s config file format is different than what I describe here which is CircleCI’s 1.0 config format. The idea of getting a token from Firebase and using with CircleCI’s environment variables and config file still applies.
October 30, 2015
If you have a bower.json file, and running bower install
from the same directory appears to download packages, but not actually put them in your project directory or even create a bower_components folder, check the version number of your package inside bower.json. Sometimes a version number of 0.0.0 prevents packages from installing, but setting the version number to 0.0.1 will make it work.
October 2, 2015
One you’ve called iterator.next()
on an array iterator enough times to make it return the last item with the property done
set to true, you can’t make it go back to the first item. But you can grab a new iterator for the same array. I was surprised to find out in the node.js REPL that:
September 28, 2015
I choose to record 1 window as my region, and compress with the Camstudio lossless codec.
September 26, 2015
Bryson Gilbert presented techniques his team uses on Shopify’s main marketing site, shopify.com
September 10, 2015
Your ‘Order: xxxxxxx Complete’ email from RapidSSL includes links to a bunch of intermediate SSL certificates. Will you install the right one? I have seen installing the incorrect intermediate SSL certificate into the certificate chain cause Chrome on Android to declare a site insecure and block users from accessing it, while every other browser accepts it.
August 4, 2015
Don’t feel left out Windows users, you have a tree
command too! Tree documentation is here. I found I couldn’t use it from Git bash, but I could use from the usual Windows command prompt.
August 4, 2015
Today I migrated http://imakewebsites.ca from a home-made PHP and MySQL CMS to the Hexo static blogging engine. Moving content over was easy, but it took some time to rebuild my theme and figure out a few quirks when using Hexo for a site without a blog component.
August 2, 2015
Here’s a bash script. Put this into a new file, ~/install-nginx-rtmp.sh:
July 28, 2015
If you’ve mounted where your Raspberry Pi and camera in a place where you can’t plug in a screen and keyboard, you’ll want an easy way to see how its photos look. Try using a mobile app instead of manually transferring photos to another machine where you can view them.
July 28, 2015
Are your pictures coming out too bright or dark under reasonable lighting conditions? Check your timeout value (the -t
parameter in raspistill -t 100 -o cam.jpg
.
May 22, 2015
May 17, 2015
People talked about and hacked Task Runners.
May 5, 2015
Are you seeing 307 status codes in your network traffic inspector while debugging your site lately and feeling confused? Ask yourself:
April 21, 2015
Long story short:
April 16, 2015
I just transferred a directory full of audio files that I didn’t want to check into a project’s Git repository with this command:
March 27, 2015
Matias presented a static blog generator called Hexo with some Angular addons to the AngularJS Meetup. I liked what I saw, so I set up my own install and imported my posts with the WordPress migrator. The transfer went smoother than with Ghost.. Moving text content over worked OK, although I lose some friendly video and oembed features of WordPress. Moving images over will take more effort.
March 19, 2015
March 16, 2015
February 28, 2015
ever stream music from your home NAS to speakers in bar via a cellphone-tethered laptop? Patrick Schroen does!
February 24, 2015
February 4, 2015
January 31, 2015
This demo introduces lots of ES6 features while actually building something. I like it!
January 28, 2015
StrongLoop presented their tools for working with REST APIs. Slides are here, and my notes will soon be outdated because the platform is changing quickly. Also, nodejs 0.12 came out this week.
January 23, 2015
Got a bookcase with adjustable shelves? Want to see what using a standing desk feels like? Here’s an inexpensive way to try it out. You’ll need a separate keyboard and pointing device (mouse, tablet, trackball, whatever).
January 21, 2015
January 6, 2015
Here is the important bit about timestamping from Adobe’s ‘Digitally signing an AIR file’ documentation
December 16, 2014
December 16, 2014
The instructions worked me, and I installed WP’s DB and set up my admin user.
December 16, 2014
60+ of us met at One Eleven Richmond for 3 presentations and chatting
December 12, 2014
December 10, 2014
Composer.json often lists dependencies with version numbers that can point to a bunch of potential packages. Lines like this:
December 10, 2014
I was on the right track with breaking down the problem. I was ready to start looking for sequences of matching cards across the deck and 2 piles, but the hint suggested to break the problem down further to matching individual cards. With that hint, I was able to implement a good solution.
December 3, 2014
The Full Stack Toronto conference had a great vibe and useful talks. 2 weeks later, here are some themes that stick out in my mind:
November 29, 2014
November 27, 2014
I got most of the way. I needed MDN for checking the usage of:
November 25, 2014
I was stuck until the hint suggested swapping values was a legit way to solve the problem. I used JS and Mocha again, and my solution matched Interview Cake’s. Woohoo!
November 18, 2014
Cobi Druxerman from Taplytics presented his company’s software and answered questions about startups, products, and A/B testing at Bitmaker Labs.
November 18, 2014
@HenriHelvetica from Forge Media + Design presented “The Biggest Loser: (Web) Images Edition”, thoughts and techniques for shrinking images. Here’s me notes!
November 18, 2014
I signed up for Interview Cake and got my first problem as promised.
November 9, 2014
It’s late 2014. Here’s all the scripting languages I’ve tried/thought of trying out this year for backend web development.
November 9, 2014
I got tired of manually copying and pasting banner ad .swf files and backup images from my working directories into a deliverable .zip file, so I made a Python script to help me out by grabbing the right files and zipping them up. Take a look on GitHub
October 21, 2014
Our stack is a Python back-end with AngularJS for the front-end. We started with a pretty simple Django app using MySQL with scikit-learn for predictive modelling. Along the way we added Celery and Redis, statsmodels for forecasting, and we’re in the process of moving our data analysis into Cassandra with Spark. This talk will focus on technology choices and how we’ve grown the system from just a few stores to thousands in less than a year.
September 12, 2014
We met at The Score‘s office, and Nate Smith talked about ways to structure AWS-hosted applications for availability and consistency.
September 11, 2014
I see these over and over again in debates on Hacker News. Time to write’m down!
September 8, 2014
everything still works!
September 8, 2014
I stared into a Samsung U28D590D (who names these products?). It was nice, but not mind blowing. Is it for me? Well, none of my current computers can run at 3840×2160…
September 8, 2014
Taylor Otwell started Laravel, an influential PHP project with a fast growing community. It has its own forum, job bulletin board, and conference.
September 8, 2014
You’ve decided you want that SAYL, Embody, or Zody. Now how much do you want to spend? Lots of people blog about picking up Aerons for $200 during the dot-com bust, but supply and demand for high-end ergonomic chairs has changed dramatically since then.
July 29, 2014
Nick and Xiyang will discuss continuous delivery on a full-stack JavaScript stack and how today’s DevOps and Test-Driven-Development processes have enabled the seismic shift in best practices from frequent delivery to continuous delivery. Nick will present an updated maturity model for shifting to continuous delivery and Xiyang will share best practices learned on several rangle.io projects.
July 29, 2014
There are 3 ways of moving height adjustable desks up and down:
July 9, 2014
Organized by Barbara Bermes. Hosted at EventMobi. Blake Crosby talked about Google Page Speed.
July 7, 2014
Let’s compare monitor arms! I’ve been using a HumanScale M2 for 2 months now, and just purchased an Ergotron LX desk mount arm with a notebook tray to put my notebook closer to my face. Here are my thoughts so far.
June 3, 2014
These are my long lost notes from the presentation. They are missing lots of context.
April 27, 2014
I had to ride a train with sketchy internet connection this week, which meant it was finally time to try Bob Martin’s Bowling Game Kata. This is a simple walkthrough of building a system for scoring bowling games using Test Driven Development. It is simple (one class, < 10 functions, often less than 200 lines of code), short (50 code examples, less than an hour to complete), and puts you into Bob’s brain as he points out bits of code he doesn’t like and refactors them.
April 27, 2014
I need a new chair. My current no-name mesh back chair has these problems:
April 15, 2014
This one time I inherited a static website built with Middleman. Middleman has the best of intentions, but I couldn’t get it running well. Some of its gem dependencies could not run on Windows, and I couldn’t get the live reload functionality working through Vagrant‘s port forwarding. I made the decision to change stacks.
April 11, 2014
This one time I had to provide guidance on which web browsers to support on a future website. That means I need graphs and things!
February 10, 2014
Hosted by Kevin Cearns and Nick Boccone at Bento Miso. Paul Oude-Reimerink and Chad Tindel from MongoDB Inc.
January 26, 2014
A media buy on the Weather Channel website caught my eye. I want to see what makes http://www.thewagonunboxed.com/ tick.
January 4, 2014
nodemon vs forever? More like nodemon AND forever! nodemon is live reload for Node apps. When it detects a file in your application has changed, it will restart your application for you. It does not require much configuration, and will save you many keystrokes and mouse clicks. My typical nodemon command looks like:
January 3, 2014
A site I monitor saw 1185 requests from 94.138.x.x between Jan 01 05:32:41 & 06:21:09 UTC looking for non existent pages. This site runs on a small server, and WordPress tried to handle the errors in its slow and complicated way. As a result, Apache and MySQL were overloaded.
January 3, 2014
These are steps I took to help secure a NodeJS web application and keep socket.io running reliably on Ubuntu 12.04 on an Amazon EC2 server.
October 6, 2013
Dreamhost’s shared makes running Composer’s composer.phar challenging. Here’s I got it to work:
September 15, 2013
Here’s the steps:
August 29, 2013
All those member variables/fields you set while a user interacts with an activity are going to become null when the user rotates their screen. However, the views being managed by your activity will preserve themselves – whether they were visible, what text set in them, and some other properties. To preserve the info that will be lost to the screen rotation, store information by overriding public void onSaveInstanceState(Bundle outState)
, and restore it by pulling out out of the bundle passed into public void onCreate(Bundle instanceBundle)
.
August 27, 2013
This is a permissions issue. Linux, running in virtual machine, has tried to make a directory in the Windows file system and been denied permission to do so. This line from the npm logs is talking about a failure to delete a file that doesn’t exist since it wasn’t created.
August 3, 2013
Here’s the first fix I always try after W3 Total Cache starts serving blank white pages when I browse my site after updating WordPress. These instructions assume you know your way around the WordPress and W3 Total Cache admin areas.
June 17, 2013
These instructions assume you have some experience with Vagrant and using Ubuntu from the command line. It should take less than 20 minutes to get your own reddit install up to play with.
June 6, 2013
If you are using S3 as a CDN, you will need to give WordPress’ W3TC plugin access to your AWS account so it can upload files to S3 on behalf of you. The smart way to do this is to create a new AWS user who can only access what they need for W3TC to do its job. Who wants to store the keys to their whole AWS account in their WordPress based site? If that information is retrieved by a hacker, they could do tons of damage. If they only gain access to your site’s specific bucket, there is less damage to be done.
June 4, 2013
Depending on your USB connection, downloading the images from AirDroid in 1 archive may be faster than selecting them all in your OS’s file browsers and having them move over the cable 1 by 1.
April 30, 2013
The default settings for the Safari web browser block 3rd party cookies. This means that web apps hosted on https://mysite.com will not be able to set cookies when displayed within an iframe in a Canvas App (https://apps.facebook.com/myappdomain) or Page Tab. Problems ensue when the web app relies on cookies for sessions and CSRF checks.
March 12, 2013
Opinions based on spending less than an hour with each bundle:
January 28, 2013
This is useful for testing out REST services that use JSON, like ones made with Restify and MongoDB. This command runs in Linux, OS X, or even Windows if you have cURL installed and included in your PATH variable.
October 16, 2012
October 11, 2012
Check out the source code from SVN
October 4, 2012
Command line:
October 3, 2012
My steps:
September 30, 2012
This appears to only be a problem with Windows. If you see an error like this while using the asset compressor:
September 21, 2012
Need a list like this?
September 1, 2012
Just installed ffmpeg on Ubuntu 12 and tried running it only to see this error?
September 1, 2012
This is the most straight forward guide I know of:
August 29, 2012
Use a wicked one-liner last week, but forget what it was? Search your bash history with grep! If you remember part of the command, you may be able to dig it up.
August 29, 2012
Have a ton of classes in one file that need to be split up? Check out Matthew Turland’s class splitter script.
August 29, 2012
When the command svn status
returns too much information, filter the output with grep
. This line finds only modified files and leaves out deleted, missing, and unversioned files.
August 29, 2012
An error like this prevented my Jenkins build from completing. It was not a permissions issue. Jenkins was not configured with a master and slave.
August 29, 2012
Having trouble connecting to PEAR channels like pear.phpqatools.com
, pear.phpunit.de
, or pear.netpirates.net
? I frequently see this error:
August 29, 2012
Download something off GitHub and don’t need the included .gitignore files?
August 29, 2012
If you find “400 Bad Request” errors in the Unity console while testing out the C# Google Analytics Helper within the Unity IDE, try removing spaces from the “page” parameter passed to the LogEvent and LogPage methods. This may help and get tracking requests flowing through to GA.
August 29, 2012
Check out C# Google Analytics Helper at http://www.persistentrealities.com/code/