I’m in the middle of quite a large project at the moment using server-side Swift (via the Perfect toolkit) that talks a lot to the Shopify Admin API. After writing the same code several times to format dates to the RFC3339 standard like Shopify quite rightly desires, I face-palmed and refactored.

### DateExtensions.swift  
nw360Core

While developing a macOS app that needed a lot of file & directory access, as well as a number of curl and command line operations, it struck me that integrating the Perfect framework in my app was a no-brainer idea… this is how.

#### Some background  
In June of this 2016 I joined the team developing Perfect,

We’ve all seen the ads ‘Free website’, ‘Build your own Website,’ ‘Easy Websites,’ ‘Websites from $99’. These ads infer two things: one, that the construction components of a website are cheap; and two, that the time of the person to build it has no cost. **FREE ALWAYS HAS A COST SOMEWHERE**  
What these sites don’t

Being concerned for the performance of your code should be important to you… but if you’re not using a dedicated profiler, getting metrics isn’t something well understood. Here are some basic techniques to get you equipped with the tools to improve the responsiveness of your code. Isn’t this just a matter of pride? Everyone should

The strength of the Net isn’t just what you put on it – it’s also how you interact with the world around you. According to the great oracle Wikipedia: An application programming interface (API) specifies how some software components should interact with each other.

Lasso 9’s new `web_request->param` behaves quite differently to `action_param` found in previous versions of Lasso. It’s lower-level, and a little more verbose, but significantly faster – which makes it an obvious tool to master. Simple usage: `web_request->param(‘myparam’)` … returns the GET or POST param “myparam”. However, it returns it as a “bytes” type, which for

Appropriate error handling is essential to any code – and yet it’s often included as an afterthought to systems large and small. I’m going to cover some basic Lasso 9 techniques for handling errors in this article that you can easily add to existing code as well as use as you construct your systems from

JSON is the communications backbone of the modern data-responsive web. It is actually quite simple – and yet I’ve been surprised how many devs are daunted by it. So lets demystify it and make it simple 🙂 First, lets get out of the way the two most common questions I get about JSON: What is

A while ago my company experienced a weird problem where users were logging into a system we’d built for a client and yet - inexplicably - then told them they could not view their content because they were not logged in. The common theme: every affected user was using Internet Explorer, but that wasn’t the whole story.

When Kyle Jessup first introduced to me the concepts of Traits in Lasso 9, I thought “cool, that will be really useful”, then promptly forgot about the feature amongst all the other awesome new things in Lasso 9. Many months later I was getting tired of adding a delete method to every object on a.
