Is there anything else on there you’d like to see? Let me know!
A few friends have asked about how we handle our family’s photo safety. Since I have two kids, a wife and a DSLR, we naturally have TONS of photos. If anything were to happen to those photos, you know who would take the full blame of the loss! This is the system we’ve come up with.
- My iPhone
- My Wife’s iPhone
- The family DSLR
(Since we are both on iPhones, we make use of the Apple ecosystem. If you have an Android, Blackberry, PalmOS, WindowsCE device, YMMV.)
We each run Photos.app on our MacBooks. We do this so our iCloud Photo Library will automatically sync and download to the MacBook. DSLR photos are downloaded to Photos.app on my wife’s machine. (I wish we could put both photo libraries on one machine, but I haven’t found a way to get iCloud Photos to sync to two different accounts and iPhoto libraries)
iCloud: Both my wife’s phone and my phone are using iCloud Photo Library. We aren’t using the same account though. They are tied to our iTunes accounts. The bad thing about that is, we don’t have access to each other’s photos. We also pay the extra space fee on both of our devices (which stinks because the $2.99 plan on hers would easily cover the $0.99 one on mine). The good thing is that our photos are almost instantly backed up to all our devices. (http://www.apple.com/icloud/photos/)
Google Photos: I’ve also installed Google Photos on our phones and laptops. We’ve chosen the free unlimited size plan that downscales your photos a bit. I figured this was acceptable as a redundancy solution. Better to have a lower quality photo than no photo at all. (https://photos.google.com/)
Shoebox: I just recently started using them as yet another redundancy option. It works the same as Google Photos. I just have the app on our phones automatically upload as new shots come in. (https://shoeboxapp.com/)
Backblaze: In addition to an online photo service, we also backup our MacBooks via Backblaze. Backblaze creates online disk images of your machines and allows you to restore them or even have a thumb drive mailed to you if the machine dies. This backs up our local iPhoto libraries. (https://backblaze.com/)
Hope this helps out! Would love to hear your comments or concerns about our setup. Also, if you know how to get two iCloud accounts syncing to one iPhoto library, let me know!
I’ve written a bit about my usage of Webstorm in the past, but I haven’t lately. There’s good reasoning behind it, I’ve switched to Visual Studio Code! I’ve really been enjoying using it, especially since I started working in Typescript. It seems like more and more people are enjoying it too! With that expanded audience, comes community written extensions for VS Code. These are my current favorite ones:
- I’m a huge user of ESLint in my JS projects and this integrates it into VS Code. It will show you any errors or warnings of your code that fails ESLint validation.
- ext install vscode-eslint
- Document This
- This will easily generate jsdoc comment blocks for your code. Now you have no excuse NOT to document your code!
- ext install docthis
- My favorite feature is the “auto import” of typescript files. Use a class defined in another file and forget to import it? Just use this extension!
- ext install vscode-generate-getter-setter
- Git History
- One feature I used a lot in Webstorm was the ability to see the git log and blame of a particular file. This extension gives me that feature back!
- ext install githistory
- Angular 2 Typescript Snippets
- John Papa is back at it again with the snippets! When working on a new file in an Angular 2 project, the first thing I type is “ng2” and pick a snippet.
- ext install Angular2
Do you have an extension that you love that you think I will too? Reach out to me on twitter and let me know! @AdamWeeks
One of my most popular posts is Ionic Framework Introduction – Barcode Scanner. Apparently, people like making barcode scanners! Who knew!?!
Today, we’re going to do a little update to that post and get our Ionic 2 on! Since the previous app was so basic, I’m not going to actually upgrade the code, we’ll just start from scratch. Since we only have “15 Minutes” (YMMV) let’s get going! Continue reading
It has been a while since I’ve touched my Angular Blackjack project. When I first started working on it, I created a build process that used gulp-concat to simply merge all our application files into one. Let’s bring our application into 2015, ES2015 that is, with a modular loading system.
For this exercise I decided to use Webpack. I could’ve easily used jspm or browserify, but Kent C. Dodds‘s series on Egghead.io was easy to follow and very informative: https://egghead.io/series/angular-and-webpack-for-modular-applications
For a quick TL;DR, you can see the pull request of all the changes made: https://github.com/adamweeks/angular-blackjack/pull/2/files?w=1
(First off, sorry for the long winded post title. It is basically what I google every time I’m trying to remember the functionality.)
Let’s say you have a directive that allows a user to enter data. When that user is done entering data, the directive processes the data, then sends the result back up to the parent. If we were to do this with two-way data binding, we’d have to set up watchers to know when the values were changed. There is a way to do it without the watchers though. We can use the parent scope binding type: “&”.