Recreate React from the ground up

Matt Greer:

In this five part series, we will “recreate” React from the ground up, learning how it works along the way. Once we’ve finished, you should have a good grasp of how React works, and when and why it calls the various lifecycle methods of a component.

What a great way to get an understanding of how React works.

Angular developers sigh with relief

The AngularJS community have felt a little nervous since the announcement of Angular 2 and the intention for it not to be backwards compatible. But can now breathe easy. A couple of days ago the Angular team posted on their blog the announcement that there will be a path to incremental upgrades so Angular 1 & 2 can co-exist in the same web app.

What is a senior developer?

Matt Briggs gives some broad descriptions of the levels of developers.

A senior developer understands that everything in our field involves tradeoff, and will look for what that is for design patterns, libraries, frameworks, and processes.

Software development is all about compromises, and prioritising the right ones.

The Auckland Fibre situation

Cloudflare have now setup a data center in Auckland which is great news for customers latency.

It was interesting to read about the Auckland fibre situation.

The Auckland fiber situation is an interesting one. Auckland is situated around a harbour. Over this harbour is a bridge which most of the fiber in the city runs across, with a small amount running via a much longer path around the harbour (think 30km longer fiber runs). Purchasing fiber between the areas of the city separated by the harbour costs more than a Kim Dotcom political party (i.e. a lot of money).

Kiwis winners in phone plan price war

With all the recent plans announced from 2 Degrees, Spark and Skinny New Zealander’s are finally getting some value for money with the now available smartphone plans. They could all offer more data as the need for SMS and Voice services are needed less these days.

I myself have been on a pre-paid combo pack with 2 Degrees that fits my needs (developer working from home). Even with a small monthly data allowance I’ve racked up 5 GB of data for when I need it, plus 100’s of minutes.

Life After Cancer: How the iPhone Helped Me Achieve a Healthier Lifestyle

Federico Vitticci (@viticci) posted a great article on how the iPhone has helped him achieve a healthier lifestyle after cancer treatment. He outlines the apps that he currently uses to record his steps, calories, sleep patterns and even his coffee consumption.

I previously blogged about “self quantifying” before, and listed a few of apps I’ve used myself. It sure feels like the future when we can measure all these health stats, it will be interesting with the release of the Apple Watch what data we can gather.

Charles proxy is your friend

At work I’ve been updating some mobile apps (iOS & Android) that yesterday had their web service updated to pass me two parameters I needed (by one of the other developers). Me being a dummy I forgot to ask what those two parameters were called.

So this morning I remembered my handy dev tool Charles Proxy would be able to help in this situation. It’s very easy to setup Charles to act as your proxy for your phone so that you can inspect all the traffic on your computer.

  1. To get started grab a copy of Charles Proxy, it has a free trial.
  2. Open up terminal or your command prompt and type “ipconfig” for Windows or “ifconfig” for Mac.
  3. In Charles under Proxy > Proxy Settings enable Http Proxy by checking the box on the Proxies tab.
  4. Now open up your iPhone Settings > Wi-Fi > Wifi Network Name tap the “i” icon and scroll down to HTTP PROXY.
  5. Select “Manual” and enter the IP address from the terminal/command prompt and the port 8888

Now you should be able to see all the traffic from your phone in Charles Proxy and inspect the data. It will show data requested and responded from each URL. So in my case I was able to look at the JSON response and find the exact parameters I needed.

Working remotely from home for 6 months

I’ve been working remotely now for over 6 months with Monitor from home. Its been a tough but overall enjoyable time. Here are some points about my experience and some advice.

The good parts:

  • I’ve gone from novice to more than competent with Angular JS with majority of work to date been building an Angular web app that’s responsive.
  • Worked with iOS and Android, adding features to Monitor’s mobile apps.
  • Become very competent with building an API in .Net Web API.
  • I’m spending more time working on my Mac for app development, Windows 8’s UI is pretty horrible.
  • I get to see my wife for lunch when she’s not working. Plus I’m always home for the kids.
  • My cooking skills have improved as I’m always home first to start cooking dinner.
  • I’m not wasting up to an hour each day on commuting. Not having to drive for 10 minutes to get to work like I did previously is a big stress reducer.

The hard parts:

  • Communication is hard when working remotely, even with all the tools available now for it. I find I need to have face to face visits every month and constantly strive to keep my team aware of my progress and issues I come across.
  • I work a lot more hours working remotely, often I’ll put the kids to bed and whip out to the garage for a couple of hours “just to get some things done” or spend an afternoon on the weekend working. It’s “normal” for me to do 50+ hour weeks simply cause I can.
  • Working remotely can be lonely. I find I need to do activities to socialise outside of work like social beach volleyball and meetups. Some weeks I never leave the suburb of where I live.
  • Work and home life separation is difficult, it’s too easy to work in the evenings.
  • I’m putting on weight very quickly as food is always at hand in the pantry. I may be walking to work, but the distance isn’t very far.

My tips:

  • Make a space where you can work alone without distractions, I’ve made part of our garage into my office.
  • Get into a routine, start at the same time everyday just like going to a normal job.
  • Make sure you get outside the house to do social activities at least once a week.
  • Fast unlimited internet is a must, I’m eyeing up all the current deals on offer for fibre they have come down in price the short time I’ve been working from home.
  • Over communicate is the best policy I’m finding. I’m constantly updating my team members on Skype and email.
  • Read these two books Remote: Office Not Required and The Year Without Pants: and the Future of Work.

Overall the experience has been great. It allows me to do a very challenging job thats rewarding in learning experiences from the comfort of my own home without the stress of a commute to work. On top of that I’m able to maximise my time with my family, which is priceless.