Posts

  • Working With PHP's Output Buffering Functions

    Header PHP provides a series of functions that allow you to capture any output that should be sent to the browser so you can do something else with it (or ignore it). In this article, we’ll go over a couple use cases for how you can use PHP’s output buffering.

    Read More
  • Asynchronous Book Group: "Refactoring 2nd Edition" by Martin Fowler

    Refactoring: Improving the Design of Existing Code (2nd Edition) Cover Book cover copyright Martin Fowler

    Why an Asynchronous Book Group?

    As a team bonding and educational process I try to get the programming teams I’m part of to read a book together every quarter. As I’m currently a team of one, this process has been more difficult. I thought I would take this process to the Internet so at the very least I would have to think critically about the book and write up my thoughts and the things I found most interesting.

    Why This Book?

    I’m a follower of Martin Fowler and his work and if you’re not already a follower of his blog (https://martinfowler.com/) you should be. I’ve been slowly working my way through his books but a couple months ago he posted that the 2nd Edition of Refactoring: Improving the Design of Existing Code (Amazon Link) had been finalized and would be available soon. I immediately ordered the book and was happy to see it arrive just before Christmas. I’ve been slowly working my way through the book (the holidays and small children make it a slow process sometimes :-)) and it’s been enjoyable and full of helpful information so far.

    How is This Going to Work?

    The book contains 12 chapter so for the next twelve weeks I’m going to post a new post on Friday. I will write down the one thing I found most interesting/helpful and then anyone who wants to can add a comment with something they’ve found interesting. The plan is to complete the following chapters on the following dates.

    1. January 11th - Chapter 1: Refactoring: A First Example
    2. January 18th - Chapter 2: Principals in Refactoring
    3. January 25th - Chapter 3: Bad Smells in Code
    4. February 1st - Chapter 4: Building Tests
    5. February 8th - Chapter 5: Introducing the Catalog
    6. February 15th - Chapter 6: A First Set of Refactorings
    7. February 22nd - Chapter 7: Encapsulation
    8. March 1st - Chapter 8: Moving Features
    9. March 8th - Chapter 9: Organizing Data
    10. March 15th - Chapter 10: Simplifying Conditional Logic
    11. March 22nd - Chapter 11: Refactoring APIs
    12. March 29th - Chapter 12: Dealing with Inheritance

    I hope you’ll join me in this process.

  • Link Post and Podcast Roundup: January 2019 Edition

    Link Post Logo

    January’s links.

    Read More
  • Looking Back at 2018 and Looking Forward to 2019

    Looking Back at 2018 and Looking Forward to 2019 Header Image

    Happy 2019 everyone! As I normally try to do this time of year it’s time take a little retrospective on what’s been done over the last year and what I want to accomplish in the coming year.

    Read More
  • Working With PHP's Date and Time Classes

    Header Ever since version 5.2, PHP has provided the amazing DateTime class that makes it a lot easier to work with dates and times. This article will provide an overview of the class and how it can be used and show some of the other classes that are related to the DateTime class.

    Read More
  • Maximizing Your Efficiency in Sublime Text - Copy/Paste

    Header

    Sublime text provides two helpful features that will make pasting text a lot easier.

    Read More
  • Link Post and Podcast Roundup: December 2018 Edition

    Link Post Logo

    December’s links.

    Read More
  • Fixing Jekyll (and Other Ruby Gems [maybe]) After Mojave Update (10.14)

    Jekyll Logo

    I’m not a huge fan of installing the latest and greatest version of anything until it’s had a chance to bite other people when it breaks. So I was a little annoyed when I finally updated to Mojave (10.14) and received the following error:

    /usr/local/bin/jekyll: /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby: bad interpreter: No such file or directory

    This post exists to hopefully provide help to other people when they run into this issue.

    Read More
  • Using MySQL's INFORMATION_SCHEMA to Find Large Tables

    MySQL Logo

    Every so often it’s a good idea to see where your server’s used hard drive space is going. You can use df to troubleshoot but it’s also nice to have a quick query to see which tables are using the most space. With this information you can determine what to do to fix it (if anything).

    Please note: All examples in this article were written using MySQL 5.5 and done in a development environment. Please do not try this in a production environment unless you are sure of the ramifications.

    Read More
  • Link Post and Podcast Roundup: November 2018 Edition

    Link Post Logo

    November’s links.

    Read More

subscribe via RSS