Riley MacDonald
developer ...
About
I'm a Lead Software Engineer at Salesforce with 12+ years experience writing embedded software libraries and native mobile applications for Android and iOS. Aside from programming, I'm a student pilot pursuing my PPL, a sanctioned CCS and BCA billiards player, an IFPA pinball player, and the keyboardist of the original hard rock band Elektric Mistress.


Projects
Atlantic Technology Summit - Founding Team Member
The Atlantic Technology Summit is Atlantic Canada’s first general technology conference. The conference is designed for the purpose of fostering our regions technology community by bringing globally recognized thought leaders and technology companies together while highlighting key technology innovators within our region.


Books
I'm Currently Reading:
Black Hat Python - Python Programming for Hackers and Pentesters - Justin Seitz
Ideally this book will strengthen my python programming skills while enhancing my server and operating system security / knowledge.

Objective C for Java Developers - James Bucanek
Looking to strengthen my C skills and be more effective working with legacy Objective C app code.

I've recently read:
Learn Vimscript the Hard Way - Steve Losh
I use VIM everyday as my primary editor, usually via the keybinding plugin for IntelliJ. Hoping to learn some tricks about further customizing VIM.

Kali Linux Revealed - Raphael Hertzog,‎ Jim O'Gorman
While I already feel comfortable in Unix type environments I hope to learn more about the Linux kernel, customizing programs and security as a whole.

Grokking Algorithms: An illustrated guide for programmers and other curious people - Aditya Bhargava
A great introduction to algorithms, logarithms and Big O notation using visuals and examples written in python.

Writing Effective Java 2nd and 3rd Edition - Joshua Bloch
While the 2nd edition was published in 2008 near the Java 6 release, the 3rd edition has been updated to include Java 8.

Clean Code: A Handbook of Agile Software Craftsmanship - Robert C. Martin
An excellent guide to enhance your refactoring, writing, testing and maintenance skills for software development.

Pro Git - Scott Chacon
While I already felt very comfortable using git primarily via CLI I was able to pickup some additional skills which I've incorporated into my existing projects. See my post on lesser known git features.

Head First Design Patterns - A Brain Friendly Guide (Updated for Java 8) - Eric Freeman, Elisabeth Robson
A head first dive into design patterns for aimed towards Java Software Developers.