All posts
-
Achievement Unlocked - February 2021
Grateful for last month Apple watch fitness competition with Georgie Trying some delicious Sichuan foods for the first time @ Spicy Joint Going to Canberra and spending time with family š (and we got to try e-scooters š“) Picking up a bit of Japanese - Iāve kept my Anki schedule...
-
Going carless: A six month update
As discussed on the post āGoing carlessā, we gave up our car in June last year. Admittedly, it has been a rough time since then, specifically regarding COVID.
-
Achievement Unlocked - January 2021
General notes:
-
Achievement Unlocked - December 2020
Welp, itās certainly all happening.
-
Achievement unlocked - November 2020
Itās been awhile since I did one of these posts. Gonna get back into it with a new and lightweight formula.
-
Animation on the web
Iāve learnt a lot about animations on the web in the past year since joining the product team at Qwilr. Iāve spent a lot of it thinking about how to distill what Iāve found hard about designing and building animations (or taking animations from a prototype).
-
This is not 'The Cookie' recipe (but it is very good)
Simply obsessed with this recipe from the food blog, Buttermilk Pantry. A designer who I work with at Qwilr recommended it to me, and Iām making it for the second time this arvo.
-
Day 5 of leave
Ah yes, it is day five of leave, the first day I have decided to sit down and write some code for a personal project. Thus far I have spent 3 hours debugging a series of esoteric dependency-related NodeJS bugs, and raised an issue with a library that updated one...
-
Attractive things work better (jnd.org)
Some interesting food for thought.
-
Pasta
Weāre doing some cooking challenges at work at the moment, and this last weekās challenge was to cook homemade pasta! We elected to bite the bullet and buy a pasta machine, because weāve made pasta from scratch a few times, and we already have a somewhat not very good pasta...
-
Yalc and fast feedback loops
As mentioned in one of my previous posts, Iāve been making intensive use of Slate, an open source Javascript project, which is developed as a monorepo and published to npm.
-
Space for BLM
It felt wrong to not use my own platform to speak out about Black Lives Matter, and ājustā post something about going carless this weekend when there is so much more important events occuring.
-
Going Carless
With the exception of a brief period when I first moved out of home, Iāve had a car of my own my whole life. At first, it was a necessity - living in the outer western suburbs of Sydney is not practical without a car. As Iāve moved closer into...
-
A fix for Slate, and on open source projects
Over the past few months, Iāve been helping out at Qwilr upgrading the version the core library underpinning our editor experience, Slate. Slate is a really cool library that I have a hard time explaining, so I recommend checking out their docs for a real explanation:
-
Sirius, etc.
-
Gifts from my Pocket archive
Over this long long event-less weekend, Iāve had some time to breathe and cull my Pocket archive (without much care for the stuff I cull; see the note on calling bankruptcy below). I thought Iād take this opportunity to share some of those that have been lingering at the bottom...
-
The Coal Loader
We took a trip up to the Coal Loader Centre For Sustainability a few weeks ago, as I figured it would be one of the more quiet and social-distance-able parklands around the inner city, and we had some spare time in the afternoon. Turns out it was going to be...
-
Park life
In the current climate, it has been hard to enjoy simple moments without feeling like we are trivialising broader happenings. I moved in with my partner a few weeks ago, and we now live opposite one of the best parks in Sydneyā¦itās been super useful now that weāre essentially always...
-
Spectre: Initial usage
Last weekend, I went for a little walk down to Blackwattle Bay, and spent some time taking some photos on my phone as the sun set.
-
Mushrooms are fun?
So I bought a mushroom growing kit as a gift for a friend last September. Being a lazy millenial though I havenāt actually gotten around to giving it to her (we have seen each other plenty, I just keep forgetting to bring it or we meet at times where it...
-
Room names @ Qwilr Sydney
From what I can tell, itās pretty on-brand to have clever or significant names for meeting rooms at trendy startups. As a trendy startup, Qwilr are no exception. Our new Redfern office has a few meeting rooms, and weāve named them after the different suburbs in Sydney that weāve held...
-
NCSS 2020
I had the fortune of participating at NCSS as a tutor again this year, from 3-12 January 2020. This yearās NCSS was held in two locations for the first time. I took a bunch of photos that captured my experience and wanted to share them.
-
š Books of 2019
What I read this year could loosely be described as āanticapitalist stuffā. It was enjoyable; a particular highlight was āHow To Do Nothingā as I alluded to in last yearās book compilation.
-
The awesomeness of Autoprefixer (and browserslist)
The rocky introductory days of CSS3 were where I cut my teeth as a web developer, and it was where I learnt how much I disliked prefixes.
-
Hey Jeeves
Everyone at Qwilr keeps a list of goals/things achieved the previous week, and itās distributed around the company through the āstandupā email thread each week. Iām not the first to have discussed the benefits of these emails, but I do regularly forget what Iāve done that week, so I took...
-
Building something small
This weekend, I took a Friday off and headed up to the coast to have a little holiday, and build something small on the web along the way.
-
Maintenance
A brief meditation of the cost of maintenance, and upgrading to Jekyll 4.0.
-
Sunrise
Woke up this morning and took some sunrise photos.
-
DevOpsDays Sydney 2019: The good, the great and the open spaces
A little bit about what made DevOpsDays Sydney 2019 (my first!) so great as an attendee.
-
Govhack 2019: The making of burra.town
What we did to make our Govhack 2019 project on suburbs and a Simcity visualisation.
-
PyCon 2019
This year was my second Pycon, and it was somehow even better than last year?! Read on for my notes about why it was so good š
-
Short note - Captions
After wanting them for some time, I finally added captions support to my blog post images. Hopefully Iāll have some time to go back and sift through all of my blog posts and add some captions to them.
-
Short note: Language agnostic scripts pls
Taking a look through the source code of Jekyll-Admin, I found a really good comment discussing the use of generalised scripts to do common tasks that are language-agnostic.
-
Short note - Ta-ku's Nujabes tribute
Just discovered Ta-kuās tribute to Nujabes; itās real good.
-
What I'm doing in 2019
What Iām doing to get stuff done at work and in life, in 2019.
-
Short Note - Analogue Time
A brief meditation on the power of analogue stuff.
-
š Achievement unlocked - May 2019
This month really just flew by, holy shit.
-
HomeKit Automation with a Raspberry Pi
Where Iām going with my little bedroom-bound Raspberry Pi.
-
š Achievement unlocked - April 2019
Wisdom teeth and food again
-
Talk is cheap, show me the working
Code is a representation of your program. Not-code is also a representation of your program. Both of these representations are fair and valuable. I donāt think thatās a problem. Peoples attitude towards which is more important is the problem - because you should be doing both.
-
š Achievement unlocked - March 2019
The month of March was full of rain and food. Damn good food.
-
š Achievement unlocked - February 2019
I wrote this post retrospectively on the 9th March 2019.
-
šļø Devcamp 2019 thoughts
After months of planning, deliberating over talks and hoping it would all come together, Campaign Monitorās Devcamp for 2019 is over. A great 3 days of sessions and hangs was had and Iām so glad we got to run it.
-
Things I Spend Money On 2019
Itās often said that a lot of your money goes out regular expenses. Especially if you set it to auto-renew a subscription, you never even realise that youāre spending (and missing out on) the money in the first place. I was recently fascinated at Hugoās post on things he pays...
-
š Achievement Unlocked: January 2019
Just before writing this, I was:
-
The surprising effectiveness of launch checklists
This week, our team launched a new user experience flow to a percentage of new signups. No big deal, except that it touched some critical billing flows. Weāre pretty risk averse to touching those. So I took the lead of one of the previous engineers on our team, and created...
-
š Achievement Unlocked: December 2018
Just before writing this, I was:
-
š Books of 2018
My reading journey in 2018
-
š Achievement Unlocked: November 2018
And thus another month is over - November was huge!
-
š Achievement Unlocked: October 2018
Just before writing this, I was:
-
š Achievement Unlocked: September 2018
Just before writing this, I was:
-
DDD 2018: A reflection
This past weekend I was able to attend DDD Sydney, an awesome non-profit inclusive developer conference. I had a great time catching up with some friends, make some new friends, and learn some new tech things that were outside of my periphery until this weekend. I always find myself reinvigorated...
-
The pitfalls of transpilation: class inheritance in Javascript
Itās 2018 and modern build pipelines have become quite standard across front-end projects. Having a transpiler like Babel to produce browser-agnostic Javascript is the default nowadays so you can write remotely sane Javascript. It can be easy to forget that the transpilation process can result in suboptimal results, where unexpected...
-
Achievement Unlocked: July 2018
Iām rebranding this monthly post to āAchievement Unlockedā to match what other people have, and cos it sounds more fun!
-
Month in review: June 2018
Just before writing this, I was:
-
AirPlay + Sonos
How I got my Sonos system to support Appleās AirPlay streaming, without buying a pricey Sonos One speaker.
-
Month in review: May 2018
Just before writing this, I was:
-
Month in review: April 2018
Just before writing this, I was:
-
Remembering to breathe
As part of my ongoing attempt to cultivate a better mindset towards my life, Iāve started to question some practices Iāve taken on at work. One of those is the need to be at oneās desk for a majority of the day.
-
Month in review: March 2018
Just before writing this, I was:
-
OpenLayers for new players
One really quick thing I want to write about today is OpenLayers and a common pitfall I come across when writing mapping code. I originally came across this when writing code for a GovHack project, but I keep forgetting and wasting many hours of my life to it, so hopefully...
-
Month in review: February 2018
Iāve been at a loss as to what to write on my blog lately, as I havenāt been doing a lot of code stuff that isnāt directly applicable to my work. Was chatting to Georgie, someone I work with, and she suggested I start doing a monthly blog post.
-
Top Reads for 2017
2017 was my first year out of full time education and into full time work. I learnt so much every single day, and read a ridiculous amount of articles. When I sat down to write this post, I was overwhelmed by the sheer volume of things, and assumed that the...
-
What I learnt about writing React in 2017
Over the past month or so, Iāve gotten some real world experience of React in a project, where Iām replacing existing front-end code with quite a large footprint and significant complexity. Iāve previously written about my experiences with React here, here and here, but this was the first time Iād...
-
Using the .NET HttpClient class more efficiently
On a recent piece of work, I was updating some code in our codebase which makes use of a HttpClient for fairly similar actions, repeatedly. During a code review, someone noted that I was repeatedly creating a new HttpClient instance for every time we were hitting a certain HTTP endpoint....
-
Auto-backed properties in C#: a quick primer
Iāve been excited and curious about the fancy auto-backed properties of C# since I first got into the language about three years ago. Iāll admit that, though Iām not a language nerd, the improved ergonomics made possible by these properties are great and Iād love to know how they work...
-
Top Reads for 2016
2016 certainly did become the year that was, with a series of unfortunate events leading to the internet becoming quite morose and anachronistically blaming an arbitrary timescale for their misery. Itās basically become The De-facto Most Unpopular Year On The Internet.
-
Digging a bit deeper into Angular 1.x components
Iāve been playing around with Angular components at work lately, and attempting to mentally map my understanding of Angular components against the concepts found in React components, which Iāve had some experience with now.
-
Trials and tribulations of writing my first serious Android app
This semester I took an Android development course. Iāve struggled with Android programming in the past, mainly due to my Web background. Most web apps have a different architecture and different API style, and I always found Android development quite difficult to wrap my head around due to its embedded...
-
Rapid embedded development with React and Node
As previously mentioned, this semester I enrolled in a new subject, Prototyping Physical Interactions, which involves learning how to utilize embedded hardware such as arduinos, to create flexible and iterative information systems and solve real problems.
-
I Migrated A Project To ReactJS For The First Time And Didn't Die
Before I start: a note on Javascript fatigue
-
KD-Tree fun in QuestionTime
This past week, I was working on QuestionTime, and needed to work out where the nearest points of interest were to the userās location in an expedient fashion. Now, the last time I did anything involving location data, my queries were ridiculously slow, and would not have held up to...
-
Documenting Your Schemas
Last week I spent some time reading about using message queues like RabbitMQ and Apache Kafka as stream data systems. In the process I found an awesome article on the reasons why LinkedIn built and open sourced Kafka. It has some excellent learningsĀ that can be applied to any event source...
-
Unit Testing From First Principles
So you've heard about the wonderful world of test driven development. Maybe you want to take advantage of continuous deployment options, which build on the confidence that testing provides. Or, perhaps you've inherited a messy system full of cross references and you want to do a bit of refactoring. Unit...
-
Things I Learnt From Android's Swagger Client Codegen
Over the past few days I've had a lot of struggles generating a Swagger-compatible QuestionTime API client for Android. Quickly for those who aren't aware: Swagger allows you to write API doc for your HTTP web API, and automatically generate clients for multiple platforms and nice HTML documentation for it. I've...
-
Name Shaker
This semester, I'm studying a new course, "Prototyping Physical Interactions", that's aimed at strengthening students' problem solving skills using the new class of IoT devices that exist around us. The first assignment is pretty simple - demonstrate the use of a physical sensor to provide input for a system, and produce...
-
Tutorial: Roll Your Own User Authorisation Management With Flask-Login
I'll quickly go through how I did user authentication and authorisation within Flask in this project, because it's annoying having to synthesise multiple best practices into one. There are other tools, like flask-bouncer, that do this for you, but I found them far too difficult to configure in my experience. First, create...
-
The Limits of LINQ
This week, I decided to tackle a particularly nasty piece of code in our code base: a repository class built on top of DynamoDB, that was written before we had much understanding of how the DynamoDB library in C# worked (and before I understood how DynamoDB worked, truth be told)....
-
Building my first production web app in Python
"Build a responsive web app with a basic CMS from scratch for the first time, with minimum understanding of user requirements, and have it production ready in two months? Sure!" This was me sarcastically at the beginning of June. I was incredibly skeptical, but the four of us interns (one...
-
Managing JavaScript in SharePoint (Using RequireJS)
SharePoint is a collaboration tool that developers and other IT professionals love to hate. It works to the point where businesses are happy to leave it as their main "information sharing and collaborating" infrastructure. It is, however, clunky, slow and painful to change or customize from an end user perspective. I've...
-
Python On A Mac
I spent the best part of this morning mucking around with Python configs, so I've outlined the best practice way of developing in Python on a Mac. You should do this if you don't want to run into troubles down the line with your development environments. Why this setup? Sure,...
-
The (r)Evolution of Public Discourse In The Internet Age
The internet has given us a wider scope for debate and public discourse than ever before, and with it the ability to further develop ourselves. As he sat down last January to write what would become a popular and controversial piece on social media usage amongst teens, Andrew Watts probably did not...
-
Loading Spatial Data into Azure SQL Part 3
Continuing on with my work in querying spatial data in Azure SQL, I got stuck on the creation of a spatial index, which has been pointed out as being essential to the performance of an application making use of any kind of spatial data. This much is obvious, since the...
-
Productivity, or: What I'm Using To Get Stuff Done This Semester
I thought I might write a bit about what I'm using this semester to get stuff done, and work smarter; it's a mixture of things I've been using for a long time, plus some tools I only picked up as of late. Sidenote: This article is being written during a huge bout...
-
Apple Is Bad For Education
Apple's newfound interest in harnessing the education potential of the iPad and by extension its closed ecosystem isn't a great deal for society at large. Here's why.
-
A Quick & Dirty Intro to RequireJS
Module loading in Javascript is still finnicky in 2015; here's a guide to making your life a little easier with the popular RequireJS library.
-
Top Reads for 2015
2015 This year I've logged most of the news, opinion pieces and feature articles I've read on the amazing Pocket service. It has a number of neat features, but gets out of the way *just* enough to let me save articles and read them whenever I need. Plus, I like the Pocket...
-
Reflection: Semester 2, 2015
As my second (and penultimate) year of university concludes, I am again indulging myself to a post on thinking about what I've done this semester, what I've learnt and what I can improve on for next semester. This semester, I studied comparatively less subjects, three to last semester's five, but one...
-
Careful Consideration
Today I was doing a bit of casual reading and came across an article discussing the inherent tension between wanting to try out new technologies in projects, and sticking to tried and tested frameworks and libraries that weāveĀ used previously. This article was really interesting, as it basically suppressedĀ the experimentationĀ of revolutionary...
-
Enabling continuous integration through Drone
Iāll just note before I start writing that I am pretty terrible when it comes to Linux. Iāll read a guide on how to build your own home server with a Linux distro, or how to get shiny graphics in Ubuntu, and miserably fail at around step three or four....
-
Loading Spatial Data into Azure SQL Part 2
I left off my last post uploading the polygons to Azure SQL, which took just a few hours. My next step was to be able to retrieve the LGA (LGA name) from the database, given a set of coordinates. This is a fairly easy task with the cool spatial datatypes...
-
Loading Spatial Data Into SQL Azure Part 1
I'm currently working on a university project in which we have elected to use a client-server architecture with an Android app on the front end and a web API working as the backend server. This server is being run on Azure's App Service as a .NET Web API project (since...
-
User Stories
Sometime in second semester last year, I had to design and document a set of user stories, and then present it in the form of a user story map. Documenting user stories is a fairly common task in the information technology world especially when dealing with projects. User story maps, and...
-
The Chromebook: a travelling tale
I don't think I've ever really written about ChromeOS properly before. I've come close to it and I've acknowledge the potential it could have in a future where native apps simply don't need to exist. After using a Chromebook almost exclusively as my main computing device for the past six...
-
Reflection
As the first semester of uni for 2015 concludes, I decided I’d do a little review of what I did well and didn’t do well this semester. I got this idea from Lachlan Harman (a.k.a. author of APixelShort) who does a similar thing every semester.
-
AngularJS + Flask
In the past month or so I've been endeavouring to make my first proper single page web application that I can describe with all those amazing buzzwords you hear about if you're at all involved in software development (e.g. RESTful APIs, MVC Javascript app frameworks, responsive web design).
-
AngularJS and You
One of the advantages of being a relatively fresh web developer is that I am yet to be burdened with the experience of using old development methodologies and bias that comes along with it. This meant that when I heard about Angular JS, a really neat Javascript application framework developed by...
-
Girder
I've been looking at web design and development more and more in the past few weeks, as it's a field that really interests me - the huge range of UX features that you can cover with a single medium is fascinating. But with this great spectrum of features comes an...
-
Git Init
As part of my internship, I need to learn how to use developer tools. Among the many Atlassian tools that software developers worldwide use, we use Bitbucket for source control, which is powered by Git. Git is an incredibly powerful based on some smart ideology that, despite the fact that it's...
-
A Day To A Half Page
I try to be productive as much as I can, filling in as much stuff I can, but at the end of the day I’m still a 19 year old uni student who hates trying to structure my life at all. Most of us have tried using a ‘to do...
-
Dumb Design Decisions #2
Mobile touch gestures have been a paradigm shift for user experience experts. They have revolutionised the way we can effortlessly manipulate computers in a relatable way. However, the danger we face with the potential of these gestures has grown significantly, as users become trained to standard actions that are performed...
-
CoffeeScript Says What?
CoffeeScript has some misleading syntax. Here's why.
-
Wordly & Backups
I started studying IT at university, wrote a neat word visualiser and talked about restoring AOMEI backup data.
-
iTunes Match Saved My Music
As of late, I haven't been keeping up with Apple and their software services. After all, I have no devices that can actually run iOS 7, and I recently purchased a Nexus 7 and a Nexus 5. Furthermore, I have discontinued my Hackintosh project for the time being as my desktop tower...
-
Foolish Software
Today, I write because I have a gripe with a certain piece of software that I installed the other day. Namely, the Facebook Messenger app for iOS, in it's updated incarnation that matches the UI design of iOS 7.
-
Mavericks & Files
Hey, just here to let you know that I have upgraded to Mavericks, and although it was a little rocky at first, I'm now up to speed - the multimonitor display is a massive productivity boost, although I haven't figured to come up with a practical use for tags...
-
'Back in Time'
Did you like that pun? I thought it was quite witty. Anyway, lets talk about Apple's Time Machine.
-
Small Update
Hey, just quickly updated my "Applications I Can't Live Without" feature; it hasn't had an update in around a year, and even longer than that since I've properly sorted through the content and set a new order based on how much I actually use these apps! Anyway, thought it might...
-
Don't Touch Those Drive Permissions!
So I had an unexpected shock in the form of a permissions error in Mac OS X, and I felt it highly necessary to share it with anyone and everyone. Also, in case I forget what to do if it happens again...lest that eventuates. In any case, we recently bought...
-
iTunes Match, A Year On
So it's been a year since iTunes Match was officially launched in the US, and Apple has had a year to tweak their newest addition to iTunes, dare I say the future of music. Simply put, I love iTunes Match. I'm hooked on how it works, how easy it is...
-
Apple's Lovely Closed Ecosystem
Tablet and touch devices are challenging the way we think about games, see games, and interact with them, and for one, I am definitely afraid of this eventuating.The iDevice model which has become very successful for Apple is an extremely closed marketplace, which means that a select few will gain...
-
Why my next operating system probably won't be Apple
I've been thinking a fair bit lately about the whole Windows vs Mac OS X battle that has been raging ever since both operating systems were released. Whilst it is true that Windows is more open and freely customisable than Mac OS X, this comes at a great cost to...
-
Python. Apps. & Stuff.
Hey, today I've decided I'll be writing not too much, and keep it fairly short and simple. Firstly, for all of those that live in the wonderful state of Australia, NSW, daylight saving begins on the 1st April 2012, so make sure your alarms are changed the night before, or...
-
Python Stuffs and MAFIA TALK!
Since I got kinda bored and am actually okay at coding (miraculously!), I decided to write a random role assigner for the Russian card game Mafia, which was rather popular at the National Computer Science School I went to recently. An awesome game, but I'll carry on. If you want...
-
My iPod Hates Me
Following on from my previous complaints, I was just updating my old iPod Touch to go on a trip with music and apps I'd forgotten to copy to it. So there I am, copying away and then when I sync it a second time, it comes up with this very...
-
Code Year 2012
Just saw on Lifehacker a website started by the web app that I've previously mentioned on my blog, Codeacademy, where they send weekly emails for their new interactive coding program. "Make your New Year's resolution learning to code. Sign up on Code Year to get a new interactive programming lesson...
-
iTunes Problems- Darn it iTunes!
I'm currently recently experiencing two major problems with iTunes that are sort of frustrating. Firstly, iTunes kept forgetting the window size I wanted it to be. This isn't that much of a problem, but it also kept opening on my main screen, which is useless when I have a second...