OpsCrash Episode #2 – SPDY is great, HTTP2 is greater
May 17, 2016
We’re back with Episode #2 of OpsCrash. This week we had some great conversations about a variety of fun topics, including: Why you should definitely store your passwords in Git; The GitHub master race; Everyone always follows the RFC spec, so lets add more cache-controls; Using SPDY because its better than HTTP2; and lastly the future of DevOps is literally yelling at your server. Some of these topics were a lot of fun for us, especially when discussions of SPDY led us to discussing the best browser in the world (Safari), so the run time comes in right about 32 minutes.
Simple and automatic Github deployment using PHP
September 11, 2015
If you’re like me, every project you work on worth anything gets put in GitHub. It’s safe and you get all the benefits of using Git. Of course those benefits include deployment hooks, if you’ve got the system setup for it. On small projects it may seem like it’s more hassle to setup deployment hooks, after all SFTP is simple enough, however it’s actually quite easy to do and only take a few minutes to setup. My use case is JonDavis.name (which is kept in a private GitHub repo) and this has made life much easier for me, even for a single-page website.
SocketIO IRC-style Tutorial – Part 3 – The server code
July 21, 2015
This is the 3rd post in a multi-part tutorial series on Socket.io. See Part 2 here. In today’s portion of the tutorial, I’ll be explaining the server side (NodeJS) code in a bit more verbosity than the comments. A fair portion of this will simply be explaining the “why” of each section of code. Additionally, since we haven’t discussed the client side code, I’ll be enumerating on the missing links between the two where necessary.
SocketIO IRC-style Tutorial – Part 2 – Getting started
July 17, 2015
This is the 2nd post in a multi-part tutorial series on Socket.io. See Part 1 here. As with all things in life, code is in a constant state of change. Eventually, this tutorial series will be improved, but so that we can all stay on the same page, let’s start with the same version of code. You can go to ShakataGaNai/socketio-sample/d9b7bcc132 to browse the exact working copy this tutorial is based off of. You should download version d9b7bcc132…zip file as well, to work with locally. The repository only has three important files; app.js — which contains the NodeJS server application, index.html — which is our client side (in browser) application, and package.json — which provides some basics about this app, including the dependencies.
SocketIO IRC-style Tutorial – Part 1 – Intro
July 16, 2015
1 One of the technology things that excites me the most is the use of Websockets to help power the “Real Time Web”. When you use a modern browser and use a web based chat system (like IRCCloud), it very likely uses websockets. Twitter feed constantly updating? Websockets. Facebook feed growing as you waste the day? Websockets. “Real Time” Google Analytics? Websockets. You get the idea, lots of cool things we use every day built for the real time web, many of which probably use websockets. The easiest way to use Websockets with NodeJS (which I’ve been spending some of my free time on over the last year) is a nifty tool called Socket.IO.
Making Of: The MFA Phone (Because Twilio is too easy)
April 16, 2015
Like so many others, I strongly believe that multi-factor authentication (MFA) should be a requirement for every website. It is a cheap and (fairly) easy way in which we can secure the sites of today, that use the authentication from yesterday (well, a few decades ago), until we have the secure authentication of tomorrow. Companies like Authy and Duo are making it faster and easier than ever before to adopt MFA into your personal workflow for “Everything”. That is, until you need to share a login with colleagues.
A collection of useful/nifty/cool ST2 Plugins
July 30, 2013
A little while back during my exploration of PHP IDEs, I evaluated Sublime Text 2. At that point I had found a number of nifty plugins for ST2, mostly for PHP development. Since then I’ve found even more plugins that I find useful/nifty/cool. They are not PHP specific and I do not use all of them on a regular basis, but I think they are all worth sharing. Of course, as my collection of shinies is always growing, I welcome suggestions (that’s what the comment section is for)!
Using Geckoboard with HelpSpot
February 14, 2013
Geckoboard in Action One of the cool tech toys I’ve been introduced to at my job is called Geckoboard. It’s a nice slick website that allows you (or your company) to have a custom web-based dashboard with whatever data you want. Geckoboard is cool, but the power lays in its ability to be used for custom widgets. With these custom widgets, you can push/pull data from any source you want and have it displayed on your dashboard. My IT department runs HelpSpot for ticket tracking and I really want to have a more visual feel for how things are going. Since Geckoboard doesn’t have built-in widgets for HelpSpot, this seemed like the perfect time to write some PHP and run my own custom widgets.
Initial publishing of Puppet scripts
April 24, 2012
Once you get to a certain number of servers (virtual, physical, or cloud), you need some manner of centrally managing the machines. Something that will let you install packages and configure them all in some standard way, so you don’t have repeat these steps a hundred times yourself. In my experience, the pay off was less during the initial setup phase (because you’re generally only setting up 1 or 2 machines at a time) and more in the “we need to change something that affects all the machine” phase. Regardless of what phase, Puppet does a great job of helping you out. The last company I worked for did not have much in the way of central management so I started to learn Puppet and deployed it.
The introduction of PDNSOps2
March 6, 2012
I’ve not made any mention of PDNSOps since the original blog post back in October 2011. This isn’t for lack of trying, it’s just that the holidays were a busy time and didn’t allow for a lot of programming time. We have made some progress dealing with a bunch of bugs, and we’ve also figured out our future plans for the project.