• Facebook security and privacy

    I’ve had a number of friends on Facebook suffer the annoyance of having ‘fake’ accounts using the same name and profile picture to impersonate them and contacting all their friends asking to be friends.

    It’s frustrating and annoying for everyone concerned. The victim who is being impersonated often also wonders if their Facebook account “has been hacked!”. Usually this is not the case, but I thought it would be helpful to write down some suggestions to help reduce the risk and help you feel more safe using Facebook.

    Topics in this series:

    • [Setting your Facebook privacy and sharing]/2017/04/setting-your-facebook-privacy-and.html)
    • [Securing your Facebook account with Two Factor authentication]/2017/04/securing-your-facebook-account-with-two.html)
    • [You just received a friend request on Facebook from someone who’s already a friend]/2017/04/you-just-received-friend-request-on.html)
    • [You just found out someone is impersonating you with a fake account on Facebook]/2017/04/someone-has-created-facebook-profile.html)

    Let me know in the comments if there’s anything else I should cover.

  • MVP Community Connection 2017

    Microsoft SignageFriday morning I took the day off of work so I could fly over to Sydney to take part in a gathering of Australian Microsoft MVPs. Friday afternoon there was a networking/”unconference” event held at Microsoft’s North Ryde campus.

    Microsoft, North Ryde

    Later we travelled back to Darling Harbor to have some fun at Strike, trying out their Escape Rooms (lots of fun).

    Darling Harbour

    The next morning we gathered for breakfast followed by a full day of speakers and workshops. Everyone got these really nice cards of appreciation with personalised Lego mini-figures. Not sure that my hair is brown, but then I’m not really sure what colour it is – the days of being blonde, or even ‘dirty’ blonde are well behind me 😀

    Card with "Thankyou for being awesome"

    During the afternoon, I was asked to do a short presentation about running a user group. I can tell you I was more than a little bit nervous getting up in front of such an experienced group of people, but I think it went ok.

    Early Sunday morning, I flew back home. All in all a great time catching up with friends and learning a lot.

  • Richard’s Technical Debt

    These are my notes from listening to the recording of Richard Banks’ talk The Technical Debt Prevention Clinic that he gave recently at the Microsoft Ignite Australia 2017 conference.

    TL; DR - This is a really compelling talk. Go watch it, and share it with your colleagues!

    My notes and highlights follow. These are not a substitute for watching/listening to the talk, and the best thing (if you ever get the opportunity) would be to see Richard deliver this in person.

    Technical debt

    • Is design complexity + cognitive load. Is NOT quick & dirty code
    • Bad code is not technical debt, it’s just bad code
    • Quantifying – look at trends over time
    • Don’t
      • do a “technical debt sprint”
      • Rewrite
    • Do
      • “Boy Scout Rule”


    • Micro-refactoring – do anytime
    • Macro-refactoring – plan and only do one at a time to limit disruption to team
    • Both should have tests in place – ideally behavioural tests (so you’re testing the behaviour not the implementation)

    Feature flags

    • Really useful
    • Still need to be managed properly


    • Be Professional – you don’t need permission to do your job properly
    • Have a Definition of Done and stick to it.
    • Automate everything you can
      • tests
      • code styles/rules
    • Change Team Culture

    Code Reviews (suck)

    • Traditional code reviews often don’t work well for a number of reasons
    • Try doing peer refactoring
    • Or pair programming when it is “strong-style” where both people are engaged.
      • Put the mouse away!
    • Mob programming – maximise team intelligence
    • Experiment and find out what works for your team

    Other tips

    • Avoid branching if possible. If not possible make it short-lived. This is because merging is costly
    • Premature optimisation
    • Resist temptations
    • Shared learning
    • Run hackathons
    • Adhere to that Definition of Done


    Technical debt can be a good thing, but bad code never is.