Adam O'Grady

Dev

JavaScript Event Loop

Mon, Feb 12, 2018 | 600 Words

A lot of people talk about JavaScript as an asynchronous, event-driven language but don’t dive further down on what that means or how best to take advantage of it. Even more important is to be wary of the pitfalls that this can involve which I’ll cover in later posts. The most common asynchronous code you’ll find in JavaScript is usually Ajax (asynchronous JavaScript and XML) requests when dealing with client-side requests, or API calls/database access when dealing with server side systems like Node.

PHPUnit And Guzzle For Testing APIs

Fri, Jan 19, 2018 | 400 Words

Testing code is important, but can often feel like a burden or task, especially if you have strict deadlines. It doesn’t help if your unsure about what tools to use to implement testing on new parts of a project. PHPUnit is the gold standard framework for testing PHP projects and there are many testing platforms that work directly with it. While it’s perfect for writing small, composable unit tests it can also work perfectly for integration and functional tests.

Setting And Fixing Email In Git Commits

Tue, Sep 12, 2017 | 500 Words

Setting email in git commit When you first set up a new dev environment, you’ll want to set the name and email you use for Git commits. The easy way to do this is with two commands: git config --global user.name "Adam O'Grady" git config --global user.email "chunkylover53@aol.com" This means all future commits in this dev environment will use that name and email address combination. In some cases you may want to use different details for a particular repo.

Coding Standards

Sat, Sep 2, 2017 | 600 Words

TL;DR: Readability, followed by consistency. The Eternal Arguments Tabs vs spaces Braces on same line or next line camelCase or snake_case variables These are just a few of the positions at the centre of ideological arguments in developer communities that run the gamut of friendly banter to vitriolic ALL CAPS flamewars. Each side has it’s merits and can present solid arguments for it’s use. But all these debates do is cloud the actually important factors behind coding standards.

Not Reinventing The Wheel

Wed, May 31, 2017 | 1000 Words

We all have those personal learning projects that inspire pride in us. Many are our own takes on existing frameworks and tools such as content management systems, math libraries, billing systems, layout frameworks, game engines, etc. Attempting such projects is a vital part of learning to code, picking up new languages or approaching new ways of thinking. I’d be remiss not to encourage people to take on such tasks as a method of improving their skills and a liar if I said I hadn’t done it hundreds of times over myself.

Code Review Excuses

Sun, Feb 26, 2017 | 500 Words

We’ve all heard the term, we’ve all seen spiels about it’s importance, but we also have so many excuses why not to do it. The place I’m currently working at ran into two of the most common reasons I’ve seen and here I document how we overcame them for the benefit of anyone who thinks code review might help (hint: it will) but feels they can’t justify it. No proper tools Whether the answer is no budget for Crucible or not enough time to set up Phabricator, this is an incredibly common cop out.

Watched Webhooks

Fri, Apr 3, 2015 | 300 Words

For a recent project I realised I would love to be able to set up webhooks for repositories I watch (and don’t administer). So to overcome that I’ve created a Node.js script, WatchedWebhook. You pass it a GitHub username as a command line argument and it polls the “public received events” feed (including your watched repositories). Any new events that match the event type and repository of rules you specify (in rules.

ChernoBravoBB

Fri, Mar 13, 2015 | 200 Words

Woo, finally a new post and a pretty decent occasion to make one, I’ve released a new project! ChernoBravoBB is minimalist forum software designed for ease of access, navigation and utilisation by it’s denizens and carrying an ethos of openness, transparency and pseudonymity. You can check it out on my GitLab where I’m currently hosting the project (might duplicate it to GitHub soon). It’s based on Node.js with MongoDB backing, utilising the ExpressJS framework (with LocomotiveJS providing better MVC capability) with Jade templating for the views.

Advanced Personal Site

Wed, Feb 25, 2015 | 400 Words

I’ve been wanting to redo my personal site for some time and desired something a bit more involved then a one-pager with my contact details. I was also starting to suspect that my Google search results may be taking a hit since I hosted two of my blogs on subdomains of http://adamogrady.id.au and the similarities in topic, authors, etc might appear spammy to the Google algorithm. Rather than look towards the high-tech side, I was eventually swayed into trying out a static site generator given their current popularity.

re:mind Journal Project

Thu, Oct 16, 2014 | 500 Words

On the weekend past I decided to see if I could build a small project I had in mind and get it into production on the World Wide Web before I started at my new job. I decided to try building a journal system that reminds you to update on a daily basis by sending you a nightly email with a link to the latest entry for that day. I ended up getting it working in a very basic format (with user accounts/authentication) which I uploaded to some hosting I have through Digital Ocean.
1 - 2 - 3 - Last