Ads have never sat well with me. For a while I have had them on this blog, because it gets a lot of traffic. However, inspired by Troy Hunt, I have decided to remove the Google ads and instead start a Patreon page where anyone can pay a monthly amount to “sponsor” me.
By no means are you under obligation to sponsor me. I realise the economy isn’t so kind to everyone, but for those who see the value in my content and would like to see more created on a regular basis, this is your chance.
Update: Site is operational and working again.
The last couple of months this blog has grown tremendously. Even though I have caching and other performance tweaks in place, the server my site runs on is surprisingly barebones.
The traffic to this blog is around 100k visitors per month, the single core CPU just wasn’t cutting it anymore and a dreaded memory leak with caching that seemingly wouldn’t go away no matter how many times I tried to fix it.
When you think of the new version of Angular, you think of it as Angular 2. Every article you read about the follow-up to Angular 1.x refers to it as Angular 2.0.
Well, this might come as a surprise to some, but the Angular team released their December 12th meeting notes and contained within them, are some interesting tidbits which could have massive consequences.
The Angular team are dropping the version number. From here on in, Angular 2 will be known as Angular. They’re releasing two major versions per year. I believe this was mentioned a while back, but in all honesty, most people probably aren’t aware of the change.
When it comes to frameworks and libraries, developers have never had so much choice. So understandably, it can be hard to convince a developer one option is better than the other.
Most front-end developers who have been around for at least 4 or 5 years most likely have the same backstory, going from jQuery to Angular, then possibly ReactJS shortly after.
Admittedly Aurelia isn’t supported by a mega-corp with endless troves of cash, but that doesn’t mean it isn’t worthy of being at the top. The Aurelia framework is backed by a company founded by Rob Eisenberg which funds itself through consulting, workshops and paid training materials.
Update: I am working in recovering the site. I moved servers and some data was corrupted. The site will be down until it’s fixed.
Since early 2015 I have been blogging about Aurelia. It’s crazy to think Aurelia is already almost two years old.
In that time my blog has become known as the Aurelia blog. While this isn’t a bad thing, I love blogging and I want to feel comfortable to blog about non-Aurelia related things, non-code related stuff.
I love Firebase. The power and flexibility of using it alongside my favourite client-side framework Aurelia, unrivalled. Recently whilst building the Built With Aurelia website which uses Firebase, I wanted the ability for logged in users to vote on particular submissions.
My Firebase structure is literally the following:
submissions: { pokegorun: { added: 1470919840796, category: "website" description: "Pokego.run is a Pokemon spotting map where you ..." name: "Pokego.run" repoUrl: "https://github.com/Vheissu/pokego.run-public" url: "https://pokego.run", votes: { TPdM9feOrbgNHVGHebBT7TBZ8Xj1: true } } } My submissions object contains submissions keyed by their name. Then inside some basic object properties for this submission and an object for votes which are keyed by the username (so the same user can’t vote twice).
In Aurelia if you have a parent/base class and one or more children that inherit from this class AND the parent class has some injectables via Aurelia’s dependency injection container, you have most likely encountered an issue with needing to import and pass the dependencies back to the parent.
You might have done something like this:
import {inject} from 'aurelia-framework'; import {Router} from 'aurelia-router'; @inject(Router) export class Parent { constructor(router) { this.router = router; } } import {Parent} from './parent'; import {Router} from 'aurelia-router'; @inject(Router) export class Child extends Parent { constructor(router) { super(router); } } Gross.
If you’re a developer, then there is a very high possibility that at some point, you’ve needed to Google an issue and you encountered a StackOverflow question and got the help you needed.
Personally, I hit StackOverflow a few times per week, sometimes on a daily basis if I am tackling something I do not fully understand.
All of the developers I know use adblockers (I use uBlock Origin in Chrome) and by default blocking advertisements everywhere. But if there is one site that deserves to be whitelisted: it’s StackOverflow.
Switching banks is a big deal. I have been with ANZ since I was about 14, it was my first bank that my first job salary went into.
But times change and now I’ve switched to Westpac. Whom I also got a mortgage through as well.
There were many deciding factors, but a couple of biggest ones were:
I was stuck on a legacy account
Even though my bank was Visa Debit enabled, I was told at the bank I was on a legacy account they stopped offering years ago.
If you’re not familiar with Gimlet Media, they were famously founded via the StartUp podcast where season one detailed the highs and lows of a couple of seasoned guys experienced in the podcast world to form a podcast company.
As Gimlet Media grew, so did their roster of shows. One such show I enjoyed listening too more than anything else was Mystery Show.
I thought StartUp kind of tapered off a little after the explosive first season, as Gimlet started to become bigger and its show roster grew, something was bound to give.