Here’s the deal, I think I’m having an early midlife crisis. Although in this case the outcome has been positive.

I was an overweight kid, I ate all the wrong things and too much of them. Finally, in 6th Form, I’d had enough and I started following Weight Watchers. I managed to slim down from a size 14/16 to a size 12, I’d hit 9st 10lbs and I was happy. I maintained that weight for 5/6 years, which I was proud of as maintenance is far harder than the initial loss. Then I had a particularly hard bout of depression to deal with and slimmed down further through not eating (I didn’t want to). Once I’d got back on my feet I unfortunately developed entirely the wrong relationship with food and piled on almost 2 stone. That weight hung around for a long time. I was back to following WW, and managed to get back to an okay place. After a few months I’d pushed through and was back to my good weight. And then piled a stone back on again. That’s been me for the last year, and I’ve hated what I’ve seen. I’ve slowly been peeling away the pounds, and I was back to a decent 10st 3lbs a few months ago.

Then something happened. I’ve suffered from anxiety / depression since I was 14, but it’s stayed mostly in the realms of mental health with only some physical symptoms. I’ve never suffered from panic attacks. Then about a month ago I suddenly started developing all the symptoms of stroke. Numb left side, couldn’t speak, searing headache, a sore eye and so on. The thing is I have high blood pressure, which increases the risk of stroke, I’d even had to recently change birth control due to the risks, so when I called NHS 111 they sent an ambulance. I went to A&E and it turns out I’d “just” suffered a full blown panic attack mimicking stroke like symptoms. I then went on to “float” for a day (one of the weirdest things I’ve ever experienced).

It scared the shit out of me! It felt like a wakeup call, like a warning of “what could happen” if you don’t care. It flipped a switch. I decided I wanted to focus on my real health and fitness. I was back to 9st 13lbs by this point. But I didn’t want to just be a good weight. I wanted to be fitter. I wanted to be better. Losing weight is easy, you need to expend more than you take in, and you should lose weight (things like medication, health conditions etc withstanding). I’m in no way saying having the willpower to do this is easy, but the formula is simple. My developer mind likes that, a proven algorithm. In the past I would, of course, follow this rule. But the thing is chickpeas can have the same amount of calories as a packet of Quavers, but one of those is much better for you.

I’d never cared about that aspect of food in the past, though. Not until around 9 months ago when I became a vegetarian. I’d made the switch for ethical reasons, but was naturally introduced to a world of healthy recipes upping my intake of beans, pulses, legumes, nuts etc. Part of my long term lifestyle change had already been completed, little to my knowledge at the time. If I hadn’t have made the switch back then for ethical reasons, I’d have made it now for health reasons. I wish I could go all the way and commit to a vegan diet, but that’s much, much harder. Becoming a vegetarian (asides from sorting out things like a parmesan cheese replacement) has been a breeze for me - it was probably easier for me as I wasn’t a big meat eater / fan anyway.

I’m not saying being a vegetarian automatically makes you consume a healthy diet, but most people will start to explore a world of things like chickpeas, kidney beans, pinto beans, lentils etc once meat is removed - and those are all incredibly good for you.

After that night Cam and I vowed to start eating “right”, i.e. not just eating less calories, but caring about what was behind them. We wanted to eat clean. We’ve cut out 90 - 95% of the refined / processed foods we ate; we cook dinners religiously now; we don’t treat fast food / takeaways / meals out as a regular part of our life, they’re treats now; we try our best to do it at home (homemade pesto, falafels etc); we have one treat day not 2…3…4 (our lifestyle was a mess).

I had weeks where I might consume a McDonalds, a Dominos and a meal out (or 2) in one week. Looking back I’m very ashamed with myself. Not just because of the filth I was (regularly) putting inside me, but because of the sheer amount of money I wasted.

So that was nutrition / diet sorted. Which left the other monster in the room, exercise. I’ve never bothered with exercise before, daily dog walks were as good as it got. The rule is roughly 80/20 when it comes to diet / exercise and the effect on weight loss, i.e. diet is far more important for just losing weight. But, to improve your overall fitness and health exercise becomes very important. To build muscle, tone up, lower blood pressure, lower the risk of heart disease / heart attack / diabetes etc exercise becomes ever more paramount. This time around I didn’t want to just be slim-ish, I wanted to be toned, I wanted to look good, I wanted to be fitter and I wanted to be stronger.

So we joined the gym, and I love it. I love the burn, the feeling of beating my personal bests, the progress I can already see and the fact that I’m challenging myself. So much of my success in life has come from doing things on a computer, this was something I could throw myself into that didn’t involve any technology. With the countless mental health problems I have, I’m not exactly one for feeling mentally strong. But workouts let me challenge myself mentally and physically, and power through. Normally when my mind would tell me “no” or “stop”, it tells me to carry the fuck on and get it done when I’m working out. I leave the gym on a high, and can assure anyone the endorphin rush is very real.

I want to tread carefully here because a lot of people seem to think depression can be cured with exercise / diet, and that’s absolute bollocks. But, it can certainly help out along with all the other countless things we do to try and stay on the good side of our mental health issues. I’ve brought meditation back into my regular routine as well by way of the Headspace app.

All of these things combined have allowed me to take the “edge” off of my issues for a bit. Just prior to the “incident” my anxiety / depression had reached a big low, and I was really losing grip on reality. I tend to go through these cycles where a “big thing” can get me back on a less destructive path, but inevitably the cycle goes back around again. I don’t know when the big-lows will hit again, but right now I’m happy to ride the mid-lows wave.

I’m always dubious of my own success, the last time I thought I was well and truly on a road to eating well, I ended up falling off the wagon 6 months later. I learnt to cook that time, but then started cooking all the wrong things…

This time I genuinely feel like a life change has been made. I never want to experience something like that again, and in reality nothing had even happened. Whilst our nervous systems don’t know the difference between internal and external, and every physical symptom was completely real, I knew it’d end eventually and I’d return back to “normal”. When it’s not a drill, you don’t get that luxury.

Everyone knows one of the best ways to commit to something is to make long term goals, and we now have several:

  • Once we’re both happy with our bodies we’ll get married (finally!)
  • We’re going to do Tough Mudder in 2017

We’ll also be joining a martial arts club of some description soon. I loved Karate back when I was younger, so that’ll likely be what we pursue. I’ll also be posting month by month progress pictures on Instagram. That’s huge! The mere thought of a holiday bikini picture sends shivers down my spine, so to post something like that is a big deal to me.

Don’t get me wrong, I’ll still have my treats. But they’ll have a place in the week now (not 6 places). The cravings for naughty food are gone, and last weekend we opted not to have a cheat at all. They say it takes 66 days to form a long term habit, so in around 4 weeks time I hope I can say the habit has been well and truly made.

6 weeks later

I’m really happy to report, zero falling off the bandwagon. We’re still hitting the gym 3 times a week. This week we’ve bought the roof rack for our new mountain bikes, and next week I’ll be buying the bike (Cam gets his through the Cycle to Work scheme). Getting back into Karate is also on the horizon now that I’ve found a suitable club.

It’s insane how different food tastes now. I’d never eaten “clean” before, I’d only ever eaten to satisfy the Weight Watchers gods and lose pounds, but I would thoroughly recommend it to anyone. There’s a stigma with healthy food that it’ll be boring or horrible, but I love everything we eat (I wouldn’t eat it if I didn’t). The thought of something like a McDonalds now repulses me. Of course, I’m not perfect, I do crave the odd naughty thing. But not “dirty” things anymore. If I fancy something it’s along the lines of a freshly prepared creamy pasta sauce, a homemade cake, or pizza prepared from fresh ingredients. You can have a lot of fun with cooking; at the weekend I had pancakes, but really nutritious pancakes made from nothing but bananas, oats and egg (and a little honey on top).

My blood pressure has dropped from high, to healthy. I’ve gone from averaging 145 / 100 to 117 / 77 at the last reading.

I’m getting stronger, my personal bests are improving all the time. When I first attempted Russian Twists I managed about 3 and then had to stop. Now I do sets of 20 with an 8kg exercise ball. Tonight I upped my leg press game to 73kg. It’s incredibly addictive! I have definition in places now that I didn’t know could have definition, and I’m starting to tone up under the fat that’s left. I was 9st 7lbs the last time I weighed in; but that means very little to me nowadays, what means a lot more is things like dropping 3 inches off my waist.

I know that this is a permanent lifestyle change now. If I go back to my old ways it’s quite obvious things like my blood pressure will just creep back up. I won’t have this abundance of energy. I won’t feel this good. I’m glad, I don’t want to return to the constant yo-yo of being on a diet. Whilst I am counting things currently as I’m still getting rid of fat, eventually this will just be “life”. I want to enter my 30s at the top of my game.

I guess a picture says a thousand words, and this was my progress after 4 weeks. I can’t really post the picture from the start as I’m in my underwear and in all honesty it’s probably enough to scar people for life. Sure, there’s fat to go, but I’m in the best shape of my life (the bar really was that low). I’m looking forward to the next picture.

(No idea why I have such strange ribs, because there’s definitely no cheating in that picture)

Dear Rupert,

Today you turn one. You came in to our lives at 8 weeks old, and the last 10 months with you have been incredible. It feels like you’ve been here forever.

You’ve changed my life in so many ways. From meeting new people to being able to cope with my anxiety and depression just that little bit better. It’s been a pleasure having you to keep me company whilst I work, and to offer cuddles no matter how stupid the reason.

I’ve loved seeing you grow up from a pretty shy and wary young puppy, to a confident and friendly teenager. I couldn’t ask for a better temperament - your love of people, dogs and children makes me happy all the time.

Even through your adolescent wobbles it’s been hard to be angry at you.

From the first time we saw a picture of you…

to the journey home

to those first few days together

to the awkward stage with your ears

to your first proper bed

to realising you were not so small anymore

to being in awe of your sleeping positions

to finishing your puppy classes

to your first bath

to trips to playgroup

to your very first group walk

to trips to the pub

to mastering posing

to pure happiness

to realising you really were growing up

to first holidays

to being one of the gang

to getting “girlfriends”

to meeting family for the first time

to our first camping trip (at Shepfest no less!)

to becoming a very handsome boy

…it’s been an absolute pleasure (apart from the time you pooped in the ball-pit). And whilst you can’t read or understand any of this - just know I’ll be here forever; through the good bits, the bad bits, and the frustrating bits. I’m proud of you and I love you buddy :)

In this tutorial we’re going to deploy an ember-cli application to Divshot. Divshot offers fully-featured Static Site hosting, backed by a CDN, CLI deployment and different environments.

1) Head on over to Divshot and click ‘Sign Up’. When you’re done you’ll be redirected to your dashboard.

2) We’ll install Divshot’s CLI tools by running npm install -g divshot-cli.

3) Run divshot login to authenticate with Divshot. You’ll be redirected to a webpage, follow the on-screen instructions.

4) Create an Ember app by running ember new <APP NAME>.

5) cd in to your project’s root and run npm install --save-dev ember-cli-divshot to install the ember-cli Divshot addon, this is a wrapper around Divshot’s CLI tools.

6) Next run ember generate divshot, this will create a divshot.json file. You can either set the name property in this file equal to the name of your Divshot app, or you can just auto-generate a new app on Divshot by running the command in the next step.

7) Deploy the app by running ember divshot push. This will also generate an app for you if it doesn’t exist. By default the development environment will be used, but you can specify another environment like so: ember divshot push staging. The production environment is used for the build step by default, this can also be changed like so: ember divshot push --environment=development.

8) You’ll receive output that looks like this:

Application deployed to development
You can view your app at: http://<APP NAME>.divshot.io

Great, that’s the app deployed. Feel free to navigate to that URL to see your application. You can also use a custom domain, but that’s out of the scope of this tutorial.

This writing has kindly been sponsored by Pootsbook and Ember Watch.

I want to read more articles like this:

In this tutorial we’re going to deploy an ember-cli application to Firebase. Firebase is a Backend as a Service provider that makes storing and using realtime data easy. They have libraries for all of the popular web and mobile platforms, failing that you can always fall back to the REST API too. We’ll be using ember-cli-firebase-hosting in this tutorial, which is a wrapper around the official firebase-tools package.

1) Head on over to Firebase and sign up (free for the ‘hacker’ plan). You’ll then be redirected to your Dashboard.

2) An app, ‘My First App’, will be sat waiting for you. Feel free to customise the settings on this app. If you’ve already developed your app using Firebase you’ll have all of this setup already.

3) Let’s make an Ember app, with ember new <APP NAME>.

4) First we’ll install the official Firebase command line tools, run npm install -g firebase-tools, which gives us access to the firebase command.

5) cd in to the root of your project and run firebase login to authenticate with Firebase, follow the prompts.

6) Run npm install --save-dev ember-cli-firebase-hosting to install the ember-cli Firebase Hosting addon.

7) Run ember generate firebase-hosting, this will create a firebase.json file for you. Running this is the equivalent of running firebase init. If the app name in your Firebase dashboard doesn’t match your Ember app’s name, go ahead and change the firebase property in the firebase.json file. If in doubt about your app’s name just run firebase list.

8) Now we run ember firebase deploy to deploy the app.

9) You’ll receive some output that looks like this:

Successfully deployed

Site URL: https://<APP NAME>.firebaseapp.com, or use firebase open

Sweet, that’s the app deployed. Feel free to navigate to that URL to see your application. You can also use a custom domain, but that’s out of the scope of this tutorial.

This writing has kindly been sponsored by Pootsbook and Ember Watch.

I want to read more articles like this:

I recently published ember-deploy-s3-index, an S3 index adapter for ember-deploy (Writeup). Whilst the documentation for ember-deploy is good, I thought I’d briefly talk about some of the things I found whilst building a custom adapter, to hopefully aid anyone building their own adapters.

Background

For context, ember-deploy is an ember-cli addon for deploying ember-cli applications. It has a nice architecture based on using different adapters for different deploy scenarios. You need to have two types of adapters, an index-adapter (which handles the index.html file) and an assets-adapter (which handles the other assets). Read more about it on the ember-deploy README.

Telling ember-deploy an adapter exists

At the heart of it all, you’ll need to add ember-addon to your package.json keywords section as always. Then in your module’s main index.js export we define the type as ember-deploy-addon, now ember-deploy will pick up on our adapter when looping through all of the ember addons in the project, .e.g:

var S3Adapter = require('./lib/s3-adapter');

module.exports = {
  name: 'ember-deploy-s3-index',
  type: 'ember-deploy-addon',

  adapters: {
    index: {
      'S3': S3Adapter
    }
  }
};

Defining the Adapter

When you define your adapter it makes most sense to inherit from the base adapter class. You can import this like so: var Adapter = require('ember-deploy/utilities/adapter');, this uses extend() syntax.

When your adapter is initially instantiated it’ll be passed a number of things. manifestSize if one has been defined in the config, this sets the number of revisions you would like to exist before older ones are purged. A taggingAdapter if one has been specified in the deploy.json file, this would mean a custom taggingAdapter has been specified, all taggingAdapters must specify one method createTag(), which you can use to tag your revisions in-line with the users’ needs. If a taggingAdapter isn’t provided you can use the built in SHA based taggingAdapter by requiring it like so: var TaggingAdapter = require('ember-deploy/utilities/tagging/sha'); and calling createTag(). Lastly a ui property is passed through that you can use to write out to the command line like so this.ui.writeLine('A tasty message');

Configuring Asset URLs

Another thing you’ll want to do when working with adapters like this is define a fingerprint.prepend property in your Brocfile.js. By default ember-cli will generate relative URLs, but as we’ll be storing our assets somewhere else these will be pretty useless. By defining this property our asset hosts’ URL will be prepended to the asset URLs within our index.html file.

var app = new EmberApp({
  fingerprint: {
    prepend: 'https://s3-us-west-1.amazonaws.com/my-assets-bucket/'
  }
});

Other than that, everything is straight forward. Use your adapter within your deploy.json file and away you go!

This writing has kindly been sponsored by Pootsbook and Ember Watch.

I want to read more articles like this: