var gform;gform||(document.addEventListener("gform_main_scripts_loaded",function(){gform.scriptsLoaded=!0}),window.addEventListener("DOMContentLoaded",function(){gform.domLoaded=!0}),gform={domLoaded:!1,scriptsLoaded:!1,initializeOnLoaded:function(o){gform.domLoaded&&gform.scriptsLoaded?o():!gform.domLoaded&&gform.scriptsLoaded?window.addEventListener("DOMContentLoaded",o):document.addEventListener("gform_main_scripts_loaded",o)},hooks:{action:{},filter:{}},addAction:function(o,n,r,t){gform.addHook("action",o,n,r,t)},addFilter:function(o,n,r,t){gform.addHook("filter",o,n,r,t)},doAction:function(o){gform.doHook("action",o,arguments)},applyFilters:function(o){return gform.doHook("filter",o,arguments)},removeAction:function(o,n){gform.removeHook("action",o,n)},removeFilter:function(o,n,r){gform.removeHook("filter",o,n,r)},addHook:function(o,n,r,t,i){null==gform.hooks[o][n]&&(gform.hooks[o][n]=[]);var e=gform.hooks[o][n];null==i&&(i=n+"_"+e.length),gform.hooks[o][n].push({tag:i,callable:r,priority:t=null==t?10:t})},doHook:function(n,o,r){var t;if(r=Array.prototype.slice.call(r,1),null!=gform.hooks[n][o]&&((o=gform.hooks[n][o]).sort(function(o,n){return o.priority-n.priority}),o.forEach(function(o){"function"!=typeof(t=o.callable)&&(t=window[t]),"action"==n?t.apply(null,r):r[0]=t.apply(null,r)})),"filter"==n)return r[0]},removeHook:function(o,n,t,i){var r;null!=gform.hooks[o][n]&&(r=(r=gform.hooks[o][n]).filter(function(o,n,r){return!!(null!=i&&i!=o.tag||null!=t&&t!=o.priority)}),gform.hooks[o][n]=r)}});
/* = 0;if(!is_postback){return;}var form_content = jQuery(this).contents().find('#gform_wrapper_1');var is_confirmation = jQuery(this).contents().find('#gform_confirmation_wrapper_1').length > 0;var is_redirect = contents.indexOf('gformRedirect(){') >= 0;var is_form = form_content.length > 0 && ! is_redirect && ! is_confirmation;var mt = parseInt(jQuery('html').css('margin-top'), 10) + parseInt(jQuery('body').css('margin-top'), 10) + 100;if(is_form){jQuery('#gform_wrapper_1').html(form_content.html());if(form_content.hasClass('gform_validation_error')){jQuery('#gform_wrapper_1').addClass('gform_validation_error');} else {jQuery('#gform_wrapper_1').removeClass('gform_validation_error');}setTimeout( function() { /* delay the scroll by 50 milliseconds to fix a bug in chrome */ }, 50 );if(window['gformInitDatepicker']) {gformInitDatepicker();}if(window['gformInitPriceFields']) {gformInitPriceFields();}var current_page = jQuery('#gform_source_page_number_1').val();gformInitSpinner( 1, 'https://joemcnally.com/wp-content/plugins/gravityforms/images/spinner.svg', true );jQuery(document).trigger('gform_page_loaded', [1, current_page]);window['gf_submitting_1'] = false;}else if(!is_redirect){var confirmation_content = jQuery(this).contents().find('.GF_AJAX_POSTBACK').html();if(!confirmation_content){confirmation_content = contents;}jQuery('#gform_wrapper_1').replaceWith(confirmation_content);jQuery(document).trigger('gform_confirmation_loaded', [1]);window['gf_submitting_1'] = false;wp.a11y.speak(jQuery('#gform_confirmation_message_1').text());}else{jQuery('#gform_1').append(contents);if(window['gformRedirect']) {gformRedirect();}}jQuery(document).trigger("gform_pre_post_render", [{ formId: "1", currentPage: "current_page", abort: function() { this.preventDefault(); } }]); if (event && event.defaultPrevented) { return; } const gformWrapperDiv = document.getElementById( "gform_wrapper_1" ); if ( gformWrapperDiv ) { const visibilitySpan = document.createElement( "span" ); visibilitySpan.id = "gform_visibility_test_1"; gformWrapperDiv.insertAdjacentElement( "afterend", visibilitySpan ); } const visibilityTestDiv = document.getElementById( "gform_visibility_test_1" ); let postRenderFired = false; function triggerPostRender() { if ( postRenderFired ) { return; } postRenderFired = true; jQuery( document ).trigger( 'gform_post_render', [1, current_page] ); gform.utils.trigger( { event: 'gform/postRender', native: false, data: { formId: 1, currentPage: current_page } } ); if ( visibilityTestDiv ) { visibilityTestDiv.parentNode.removeChild( visibilityTestDiv ); } } function debounce( func, wait, immediate ) { var timeout; return function() { var context = this, args = arguments; var later = function() { timeout = null; if ( !immediate ) func.apply( context, args ); }; var callNow = immediate && !timeout; clearTimeout( timeout ); timeout = setTimeout( later, wait ); if ( callNow ) func.apply( context, args ); }; } const debouncedTriggerPostRender = debounce( function() { triggerPostRender(); }, 200 ); if ( visibilityTestDiv && visibilityTestDiv.offsetParent === null ) { const observer = new MutationObserver( ( mutations ) => { mutations.forEach( ( mutation ) => { if ( mutation.type === 'attributes' && visibilityTestDiv.offsetParent !== null ) { debouncedTriggerPostRender(); observer.disconnect(); } }); }); observer.observe( document.body, { attributes: true, childList: false, subtree: true, attributeFilter: [ 'style', 'class' ], }); } else { triggerPostRender(); } } );} );
/* ]]> */
Joe Howe says
Good to have lots of storage. Just remember to have redundancy off site. Peace of mind if there is fire or theft
DJ says
Hey Joe. Do you guys also back up in the cloud somewhere? Thanks for sharing what you’re using these days!
Adrian Lyons says
A word of advice, stick with Seagate, that’s fine. But source your hard drives from multiple vendors instead of all from one place.
Buying all the drives from one place means all the drives will be from the same batch and all the same age. This similarity increases the chance of a multiple drive failure at the same time. Even better, vary the drive vendor as well. Backblaze has invaluable data on HDD failure rates and the most reliable vendor/model in their inventory over the years.
Just having a RAID NAS doesn’t mean you can’t lose stuff. Get a second one and sync the two together.
Joe McNally says
No, not full backup. We have lots of select material up on PhotoShelter, but that is not a dupe of our entire storage system. We do an off site backup for sure, based in physical hard drives.
Joe McNally says
Thank you Adrian….excellent advice and I appreciate you checking in. All the Best, Joe
Joe McNally says
You bet…we do that religiously….
Mikey says
That’s a beast of a drive. Much jealous.
Marc Lebryik says
You are going to LOVE your Synology. I made the jump from Drobo a few years ago, and have scaled it a few times since then. I wish my SHR-2 transfer speed was a bit faster over the network, but that is by far the ONLY complaint that I have had. Once I had 4 drives fail all at one time. Thinking it was a fluke (and in a panic) I contacted Synology support, who remoted in and fixed it in no time flat free of charge (and definitely out of Warranty).
Best support in the business beyond a shadow of a doubt! Congrats on the new System!
Joe McNally says
Awesome, thanks for the heads up! We are def. pleased with this addition to our studio at this point…..all the best, Joe
Joe McNally says
Thanks for the heads up! We are very happy with this new addition to the studio….helping our workflow a lot!
Adrian Malloch says
I’m at that particular crossroads myself but I am cautious about putting all my faith in a relatively slow NAS system. How do you find the access speeds; that is, with a raw file working from a Lightroom catalogue? How much more laggy is it compared to when the same file is located on your scratch SSD disk or an externally (TB3/USB-c/USB3) mounted hard drive or RAID array? I get no lag with internal and external SSDs on the above ports and likewise with RAID5 external hard drives. I’m concerned that the relatively slow speed of the NAS data-connection will be a choke point. Looking at the specs, the sustained write speed (for a 1MB file) is about 40MB/s – less than 10% of the speed of my current setup.
Joe McNally says
Hey Adrian….I’m going to cut and paste the above question and push it over to Cali who is much, much more attuned to the specs you are discussin above than I am. Cool with you? He’s on vacation right now, but he will get back….Joe
John Thomson says
Nice post!
fabtexbaler says
fantastic , really useful & thanks for the post