<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>TheNPG.com - Official Blog</title>
	<atom:link href="http://blog.thenpg.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.thenpg.com</link>
	<description>National Photographer Group, llc</description>
	<lastBuildDate>Fri, 20 Jan 2012 18:26:48 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Photographer Websites: How to Improve them for Business.</title>
		<link>http://blog.thenpg.com/photographer-websites-how-to-improve-them-for-business/</link>
		<comments>http://blog.thenpg.com/photographer-websites-how-to-improve-them-for-business/#comments</comments>
		<pubDate>Fri, 20 Jan 2012 18:17:06 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Photography Projects]]></category>
		<category><![CDATA[rambling]]></category>
		<category><![CDATA[Technical Talk]]></category>
		<category><![CDATA[photographer]]></category>
		<category><![CDATA[photographer websites]]></category>
		<category><![CDATA[websites]]></category>

		<guid isPermaLink="false">http://blog.thenpg.com/?p=37</guid>
		<description><![CDATA[Photographer Websites When we&#8217;re not creating the next big thing for photographers and collaborating with clients and photographers, we are busy searching the web for the best photographers around. What I&#8217;ve found while performing this search of photographer websites is that it&#8217;s time consuming.  Here&#8217;s why. Photographer Websites: Why they are bad First off, I [...]]]></description>
			<content:encoded><![CDATA[<h1>Photographer Websites</h1>
<p>When we&#8217;re not creating the next big thing for photographers and collaborating with clients and photographers, we are busy searching the web for the best photographers around. What I&#8217;ve found while performing this search of <em>photographer websites</em> is that it&#8217;s time consuming.  Here&#8217;s why.</p>
<h2>Photographer Websites: Why they are bad</h2>
<p>First off, I should say that I understand that photographers want their websites to be creative and visually appealing, but it is a rare occasion when I find that a photographer has built in the idea that they&#8217;re actually in business.</p>
<h3>Photographer Websites: Load Time</h3>
<p>If it takes me 1-minute just to get the home page of a <strong>photographer website</strong> because I&#8217;m waiting for Flash to load, and upon reaching that home page I am presented with a nice image and an &#8220;Enter&#8221; button, then the chances are that I&#8217;m going to give up.  It is clear that you don&#8217;t have my time-interest in mind.</p>
<h3>Photographer Websites: Contact Information</h3>
<p>Every page of your website should have, at least, your email address, or a link to your email address, and, at best, your email address and phone number.  I don&#8217;t want to fill out a contact page; I don&#8217;t want to search your site for your phone number or email address. Make your page SCREAM &#8220;Contact me because I want your business&#8221;.</p>
<h3>Photographer Websites: Too Many Photos</h3>
<p>All it takes is about 20-images per photography genre portfolio for me to get the idea as to whether or not I like your style and think you will fit for a particular project.  If you have 100-images in each portfolio then you&#8217;re wasting my time by having my browser to download the thumbnail images for each of the 100-images.</p>
<p>Also, if you use an image hosting company to host your images, try not to make me visit your Flickr site to have me look at your photos.  There are many ways to display your images on your site without imposing great inconvenience to me.</p>
<h3>Photographer Websites: Tips to Improve Yours</h3>
<ul>
<li>Use Javascript, or HTML5, for your website.  Browsers are better equipped to handle either of these technologies than Flash.  Many times, with the various Javascript libraries available, you can mimic everything you can do for images in Flash, with Javascript.</li>
<li>If you must use Flash, embed it so that at least the header of the page is still HTML.  Then, put your phone number and/or email address in this header and then I can copy and paste it without difficulty.</li>
<li>Try to make your site load in under 10-seconds, because this is just enough time for me to click the link to your site, take a sip of my drink, and begin checking out your work.</li>
<li>Keep it simple.  Simple doesn&#8217;t mean that you have to lose elegance.   Remember the reason that people are visiting your site is because they&#8217;re either interested in your work, or interested in hiring you.  Make sure that you add function to your form.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.thenpg.com/photographer-websites-how-to-improve-them-for-business/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Method for Detecting Copyright Infringement</title>
		<link>http://blog.thenpg.com/method-for-detecting-copyright-infringement/</link>
		<comments>http://blog.thenpg.com/method-for-detecting-copyright-infringement/#comments</comments>
		<pubDate>Sun, 04 Dec 2011 16:14:38 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Copyright Infringement]]></category>
		<category><![CDATA[Technical Talk]]></category>
		<category><![CDATA[copyright infringement]]></category>

		<guid isPermaLink="false">http://blog.thenpg.com/?p=35</guid>
		<description><![CDATA[How to Detect Copyright Infringement Introduction: With all of the latest talk about SOPA and how many believe that it&#8217;s going to be the end of the internet as we know it, I was surprised to read that Google apparently doesn&#8217;t know how to detect copyright infringement.  I won&#8217;t say that it was easy coming [...]]]></description>
			<content:encoded><![CDATA[<h1>How to Detect Copyright Infringement</h1>
<h2>Introduction:</h2>
<p>With all of the latest talk about <a title="Software Online Piracy Act" href="http://en.wikipedia.org/wiki/Stop_Online_Piracy_Act">SOPA </a>and how many believe that it&#8217;s going to be the end of the internet as we know it, I was surprised to read that Google apparently doesn&#8217;t know <strong>how to detect copyright infringement</strong>.  I won&#8217;t say that it was easy coming up with the solution that I invented, but I will say that it seems that if Google wanted to figure out how to, say, transmute lead to gold then all they would have to do is put their minds to it.</p>
<h2>The Method for Detecting Copyright Infringement:</h2>
<h3>The Control:</h3>
<p>I view the detection of <em>copyright infringement</em> as a scientific test.  With this in mind, we set a reference, or control, and then every subsequent test results with a comparison to the control/reference.  The National Photographer Group has developed a system for detecting copyright infringement and has implemented a method to allow users to voluntarily create a reference for us to test against.  In other words, we authenticate their camera using our proprietary media authentication system and we register their camera with their account.</p>
<h3>The Test:</h3>
<p>Web applications can register to use our API and simply send an unmodified image or capture, complete with metadata, to our servers.  We perform an in-depth analysis on the media to attempt to determine who the media belongs to and then return a result as XML or JSON&#8211;user configurable.</p>
<h3>The NPG Media Authentication System:</h3>
<p><a title="National Photographer Group, llc" href="http://www.thenpg.com" target="_blank">The NPG</a> Media Authentication System can be implemented both remotely and locally depending on the demand the organization requires.  We offer affordable licensing of our technology, please contact customerservice@thenpg.com for an evaluation of your <em>copyright infringement detection</em> needs.</p>
<h3>Recommendations:</h3>
<ul>
<li>Do not allow users to upload media that does not contain metadata</li>
<li>Promote the use of licensing standards, such as <a title="PLUS Coalition, Licensing Standards" href="http://www.useplus.org">PLUS</a>, to clearly define who is allowed to do what with the media</li>
<li>Do not allow users to download content if they do not explicitly have permission to do so as spelled out in the PLUS license</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.thenpg.com/method-for-detecting-copyright-infringement/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Updates</title>
		<link>http://blog.thenpg.com/updates-11-16-2011/</link>
		<comments>http://blog.thenpg.com/updates-11-16-2011/#comments</comments>
		<pubDate>Wed, 16 Nov 2011 17:38:09 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Adobe® Lightroom® Publishing Plugin]]></category>
		<category><![CDATA[Barcode Labels From Lightroom®]]></category>
		<category><![CDATA[Lightroom Plugin]]></category>
		<category><![CDATA[professional image hosting]]></category>
		<category><![CDATA[rambling]]></category>
		<category><![CDATA[Technical Talk]]></category>
		<category><![CDATA[barcode labels from lightroom]]></category>
		<category><![CDATA[Lightroom]]></category>
		<category><![CDATA[Lightroom plugin]]></category>

		<guid isPermaLink="false">http://blog.thenpg.com/?p=32</guid>
		<description><![CDATA[Thank you! The response from the release of the Lightroom® plugin has been tremendous!  I&#8217;m glad that people are finding it useful and the hosting service of value, too.  If you have yet to download our Adobe® Lightroom® publishing plugin with the QRcode label feature, then get it here Corrections: Our hosting provider made an [...]]]></description>
			<content:encoded><![CDATA[<h1>Thank you!</h1>
<p>The response from the release of the Lightroom® plugin has been tremendous!  I&#8217;m glad that people are finding it useful and the hosting service of value, too.  If you have yet to download our Adobe® Lightroom® publishing plugin with the QRcode label feature, then get it <a title="Adobe® Lightroom® Publishing Plugin with QR Code label feature" href="http://cdn1.thenpg.com/TheNPG.lrplugin.zip">here</a></p>
<h2>Corrections:</h2>
<p>Our hosting provider made an oopsie and so some server configurations were changed so that the domain name for TheNPG.com did not properly resolve which caused the initial release of the Lightroom® plugin to fail.  Rather than change the server-side code, we thought it was best to standardize our URL and so the <a href="http://cdn1.thenpg.com/TheNPG.lrplugin.zip">latest version of the plugin</a> has this patch applied.</p>
<p>There have been other network issues that our network center has been working on.  These maintenance issues will hopefully be resolved soon, but please be aware that there may be intermittent times of a loss in service particularly in the early A.M hours.  While they are doing their thing, we are working on co-locating our services so that the newer versions of the plugin will be able to failover to another server that may be available.</p>
<h3>Remember to stay up to date with our <a href="http://twitter.com/thenpgcom">Twitter feed</a></h3>
<p>-Lance.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.thenpg.com/updates-11-16-2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Fierce Urgency Of Now &#8211; TheNPG.com Releases New Services</title>
		<link>http://blog.thenpg.com/the-fierce-urgency-of-now-thenpg-com-releases-new-services/</link>
		<comments>http://blog.thenpg.com/the-fierce-urgency-of-now-thenpg-com-releases-new-services/#comments</comments>
		<pubDate>Sat, 05 Nov 2011 22:32:37 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Adobe® Lightroom® Publishing Plugin]]></category>
		<category><![CDATA[Barcode Labels From Lightroom®]]></category>
		<category><![CDATA[Lightroom Plugin]]></category>
		<category><![CDATA[newsletter]]></category>
		<category><![CDATA[Press Releases]]></category>
		<category><![CDATA[professional image hosting]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[amazon s3]]></category>
		<category><![CDATA[barcode labels from lightroom]]></category>
		<category><![CDATA[file downloading]]></category>
		<category><![CDATA[Lightroom]]></category>
		<category><![CDATA[Lightroom plugin]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[press releases]]></category>

		<guid isPermaLink="false">http://blog.thenpg.com/?p=30</guid>
		<description><![CDATA[NPG Lightroom® Plugin Released My first job was as a DJ at an AM radio station.  It was one of those radio stations that is only on the air during daylight so every morning when the station goes on the air, and every evening when it goes off the air, the National Anthem is played.  [...]]]></description>
			<content:encoded><![CDATA[<h1>NPG Lightroom® Plugin Released</h1>
<p>My first job was as a DJ at an AM radio station.  It was one of those radio stations that is only on the air during daylight so every morning when the station goes on the air, and every evening when it goes off the air, the National Anthem is played.  I figured this would be the perfect way to kick off this round of service releases and so without further delay, I present, the National Anthem of the United States of America.</p>
<p><iframe src="http://www.youtube.com/embed/Vph-SZJJDX8" frameborder="0" width="420" height="315"></iframe></p>
<h2>The American Dream</h2>
<p>The American dream is one of prosperity and success.  This country is founded on the principles that if one works hard enough, and is persistent, then they will achieve whatever it is that they set out to achieve.  When I started the National Photographer Group, llc, I had a vision of a company that would help photographers become better at their business through developing technological tools and by facilitating connections between clients and the best photographers.  Today marks a very special day in history for me personally, and for the National Photographer Group, llc, in that from this foundation that has been set, we will grow; we will prosper; we will succeed; we will change the world.</p>
<h2>New Services</h2>
<p>Today is the first day of new services to be released.  There are a couple of other services that will be released over the next few days as we tie up a few loose ends.</p>
<p>Perhaps the biggest release is our new <a title="Adobe® Lightroom® Publishing Plugin" href="http://blog.thenpg.com/lightroom-plugin/" target="_blank">publishing plugin for Adobe® Lightroom®</a>.  This plugin will enable a Lightroom® user to publish images to TheNPG.com servers&#8211;powered by Amazon servers.  The plugin will also allow photographers to <a title="Barcode Labels From Lightroom" href="http://blog.thenpg.com/qrcode-barcode-labels-directly-from-lightroom/" target="_blank">create barcode labels for their images</a> in an effort to make their re-print service more efficient and professional-looking.</p>
<p>This isn&#8217;t just any plugin; this plugin incorporates a camera-to-user-to-image authentication system invented and developed by National Photographer Group, llc.  In an effort to simplify the installation of this plugin, we offer the following How-to video:</p>
<p><iframe src="http://www.youtube.com/embed/U5mu_IhsT-0" frameborder="0" width="560" height="315"></iframe></p>
<h2>NPG Lightroom® Download</h2>
<p>How much does all of this cost?  Image hosting with TheNPG.com is a pay-for-what-you-use service.  Unlike other image hosting companies, you won&#8217;t be charged a large monthly fee if you&#8217;re only storing a small amount of data.   Instead you pay 25-cents per Gigabyte-month stored and 25-cents per Gigabyte transferred [both upload and download].  There is also a $1 monthly service fee to cover our processing of the payment.  An initial payment of $1.25 is required to begin using the NPG image hosting service.  You will be presented with the opportunity to pay when installing the plugin.</p>
<h3>So what&#8217;s the catch?</h3>
<p>Here&#8217;s the catch: Your account will be billed on a monthly basis.  Ok, that&#8217;s not much of a catch.  How about this: what if you are a photographer and can&#8217;t make a payment or two, will you delete the images?  Nope, along with being a pay-for-what-you-use-service, NPG Image Hosting is also a pay-what-you-can service so if you have a bill of $20 and can&#8217;t pay the entire $20, pay whatever you can afford and we will defer the balance forward to next month.  If a payment is not made in 60-days, your NPG hosting account will be suspended.  Failure to pay *something* in 90-days and the data is purged.  Still not much of a catch?  That&#8217;s because there is no catch.  Here&#8217;s how I see it:</p>
<blockquote><p>When I was a photographer, I was the epitome of a struggling artist just trying to make it.  I realize that professional photographers aren&#8217;t always paid up front for their work, and sometimes it may take a few weeks to receive a check.  While I understand that not all photographers are in this situation, I am gearing our hosting service to all professional photographers.  If I can cover my expenses&#8211;redundant image hosting isn&#8217;t cheap&#8211;then I am OK with this payment system.</p></blockquote>
<p>If you have any questions about the <a title="Professional Image Hosting" href="https://www.thenpg.com/professional_image_hosting">NPG Image Hosting service</a>, or our publishing plugin, then please send an email to customerservice@thenpg.com and we will address your question.</p>
<h1>Download Link</h1>
<p>So be it:</p>
<p><a title="NPG Publishing Plugin Suite for Lightroom" href="http://www.thenpg.com/npg_lightroom_plugin_suite" target="_blank">TheNPG.com Lightroom Plugin Download</a></p>
<p>Enjoy!</p>
<h2>Closing</h2>
<p>In closing, I just want to thank everyone who has supported me over the past few years.  Also, this blog will be updated as our other services are rolled out this week.</p>
<p>&#8211; <a title="Lance Fordham, National Photographer Group, llc" href="http://www.lancefordham.com" target="_blank">Lance</a>.</p>
<h6>*Adobe® and Lightroom® are registered trademarks of Adobe Systems Incorporated.  National Photographer Group, llc, is not affiliated with Adobe Systems Incorporated.</h6>
]]></content:encoded>
			<wfw:commentRss>http://blog.thenpg.com/the-fierce-urgency-of-now-thenpg-com-releases-new-services/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>November 5, 2011 &#8211; Launch Day</title>
		<link>http://blog.thenpg.com/image-hosting-rss-media-streams-barcode-labels-from-lightroom/</link>
		<comments>http://blog.thenpg.com/image-hosting-rss-media-streams-barcode-labels-from-lightroom/#comments</comments>
		<pubDate>Tue, 01 Nov 2011 17:37:27 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Adobe® Lightroom® Publishing Plugin]]></category>
		<category><![CDATA[Barcode Labels From Lightroom®]]></category>
		<category><![CDATA[Lightroom Plugin]]></category>
		<category><![CDATA[newsletter]]></category>
		<category><![CDATA[professional image hosting]]></category>
		<category><![CDATA[RSS Media Streams]]></category>
		<category><![CDATA[barcode labels from lightroom]]></category>
		<category><![CDATA[Lightroom plugin]]></category>
		<category><![CDATA[rss media streams]]></category>

		<guid isPermaLink="false">http://blog.thenpg.com/?p=26</guid>
		<description><![CDATA[New Reasons For Photographers To Rejoice Here&#8217;s a sneak peek at the new offerings of TheNPG.com beginning November 5, 2011 RSS Media Streams - At the National Photographer Group, our photographers photograph A LOT of corporate events.  One of the most popular requests from event organizers is to have a slideshow of the images so [...]]]></description>
			<content:encoded><![CDATA[<h2>New Reasons For Photographers To Rejoice</h2>
<h3>Here&#8217;s a sneak peek at the new offerings of <a title="National Event Photographers" href="http://www.thenpg.com">TheNPG.com </a>beginning November 5, 2011</h3>
<h4>RSS Media Streams</h4>
<p>- At the National Photographer Group, our photographers photograph A LOT of corporate events.  One of the most popular requests from event organizers is to have a slideshow of the images so that the images can be displayed on a screen or other large video display.  Using an RSS media stream, the Audio/Visual folks can easily tap into the stream with their RSS enabled devices and overlay whatever music for the mood is required.  For the National Photographer Group photographer, creating the stream is simple and fully customizable.  Furthermore, because it is a RSS media stream, many devices such as WiFi enabled digital photo frames, Windows 7 and Macintosh computers, modern televisions and professional media displays can all access this stream.</p>
<h4>Professional Image Hosting</h4>
<p>- If you&#8217;re a professional photographer, then you want a simple interface; you want to be able to host many different image formats&#8211;and be able to display previews of the RAW formats; you want to be able to give your client access to the images you created for them; you want to be able to archive your images and be able to recall them quickly when a customer wishes to have an image reprint.  No other image host will do what we do at the price we will do it for.</p>
<h4>Photo Shows</h4>
<p>- You&#8217;re an event photographer and you want to be able to let event attendees to view the images from their event.  If they wish to print the images, you want their experience to be seamless and hassle-free.  Our Photo Shows are this, and will be more in the future.</p>
<h4>Adobe® Lightroom® Publishing Plugin*</h4>
<p>- What better way is there to upload images to our servers than through the same program that professional photographers use to process their digital images?  None.  This plugin creates seamless integration between Adobe® Lightroom® and <a title="Image Hosting, Event Photographers" href="http://www.thenpg.com">TheNPG.com</a> servers.  What&#8217;s more is that it integrates the very first user-to-camera-to-image authentication system invented by National Photographer Group.  This authentication system ensures that only the images that belong to a photographer, or are in public domain, are uploaded to TheNPG.com servers.  This plugin is under active development and will continue to evolve as the needs of photographers also evolve.</p>
<h4>Barcoded Labels Printed From Lightroom</h4>
<p>- This is a feature of our Lightroom® plugin.  Once the plugin is installed, a photographer can select the images from their catalog that they wish to print bar-coded labels for.  Then, with just a few clicks and selections, a PDF containing the information for each of those selected images in a printable format is created.  The photographer then prints out the labels and can adhere them to the reverse side of photo prints.  When a customer wants a reprint of a specific image, the photographer scans the QR-code on the rear of the print and Lightroom® searches the photographer&#8217;s catalog for that print.  Clever, huh?</p>
<h3>Closing</h3>
<p>These are just a few of the tools that we&#8217;ve been working on here at National Photographer Group.  TheNPG.com and the Lightroom® plugin are always under development as we find new ways for photographers to excel in their business.</p>
<p>We&#8217;re also working on new hardware solutions for event photographers that will bring a level of awe to their work.  Stay tuned.</p>
<p>If you have a suggestion for a hardware or software idea that you think will help the photography industry, please send your <a title="National Photographer Group, Suggestion Box" href="https://www.thenpg.com/suggestion_box">suggestion </a>to us so that we can evaluate it and perhaps work with you to make it happen.  We will always give credit where it is due.</p>
<p>Until next time, happy shooting!</p>
<h6>*Adobe® and Lightroom® are registered trademarks of Adobe Systems Incorporated.  National Photographer Group, llc, is not affiliated with Adobe Systems Incorporated.</h6>
]]></content:encoded>
			<wfw:commentRss>http://blog.thenpg.com/image-hosting-rss-media-streams-barcode-labels-from-lightroom/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>QRcode [barcode] labels directly from Lightroom®</title>
		<link>http://blog.thenpg.com/qrcode-barcode-labels-directly-from-lightroom/</link>
		<comments>http://blog.thenpg.com/qrcode-barcode-labels-directly-from-lightroom/#comments</comments>
		<pubDate>Mon, 19 Sep 2011 22:04:23 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Lightroom Plugin]]></category>

		<guid isPermaLink="false">http://blog.thenpg.com/?p=23</guid>
		<description><![CDATA[QRCode [Barcode] Labels from Lightroom® It&#8217;s simple: a photographer sells prints to an event attendee and that event attendee comes back to the photographer with the print with the intention to have reproductions made.  Currently, there&#8217;s no quick way to identify a photo from an image in Lightroom®, until now.  A day worth of work, [...]]]></description>
			<content:encoded><![CDATA[<h2>QRCode [Barcode] Labels from Lightroom®</h2>
<p>It&#8217;s simple: a photographer sells prints to an event attendee and that event attendee comes back to the photographer with the print with the intention to have reproductions made.  Currently, there&#8217;s no quick way to identify a photo from an image in Lightroom®, until now.  A day worth of work, and we added this nice feature to our soon-to-be-released Lightroom® plugin.</p>
<h3>How it works</h3>
<p>Simply select the images that you wish to create labels for and then go to the <span style="color: #800000;">File menu&gt;Plugin Extras&gt;NPG Label Maker. </span> A form is presented where you select the Avery® label size and up to four fields of meta data from the images, or from your account.  Click OK and your internet browser is opened where you are presented with a PDF form with properly spaced and formatted labels for the images that were selected.  There is a QRCode that contains the UUID identification number on each of the labels.  Simply load your printer with your Avery® labels, click print, and presto!</p>
<h3>How to find photos from the QRcode?</h3>
<p>We&#8217;re currently [as of Dec. 12, 2011] in the late stages of development of an in-Lightroom QRcode [Barcode] reader plugin.  This plugin will be part of version 1.1 of the NPG Publishing Plugin Suite and we plan to release it as a separate plugin for those who do not wish to use our publishing service.</p>
<h3>What else is required?</h3>
<p>An internet connection.  The Lightroom® API is simply not powerful enough to perform all that is required in order to produce these labels so we simply send the meta from the select photos, along with the label size selection, to our servers where we already have the framework to perform the complex operations in order to build these labels.<br />
<a title="NPG Publishing Plugin Suite for Lightroom" href="http://www.thenpg.com/npg_lightroom_plugin_suite">TheNPG.com Lightroom Plugin Download</a></p>
<h3>Conclusion</h3>
<p>There&#8217;s no more relying on memory and spending hours of searching through photos to find the exact one that a client wants reproductions of.  What&#8217;s more, because the UUID is used to search for the photo, Lightroom® will perform the search quickly so that you can move forward with ordering your prints.</p>
<p>We&#8217;re always looking for nifty projects like this to work on to improve the efficiency of  the photographer doing business.  If you <a title="Suggestion Box for the National Photographer Group, llc" href="http://www.thenpg.com/suggestion_box">suggest </a>a new feature, and we implement it, then we will share the profits with you.  Please use our <a title="Suggestion Box for National Photographer Group, llc" href="http://www.thenpg.com/suggestion_box">Suggestion Box</a> to inquire further.</p>
<p>Cheers!</p>
<h6>Lightroom® is a registered trademark of Adobe Systems Incorporated.  Avery® is a registered trademark of Avery Dennison Corporation. National Photographer Group, llc, is not affiliated with either Adobe Systems Incorporated, or Avery Dennison Corporation.</h6>
]]></content:encoded>
			<wfw:commentRss>http://blog.thenpg.com/qrcode-barcode-labels-directly-from-lightroom/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Android™ Application Development Started And Other Adventures</title>
		<link>http://blog.thenpg.com/android%e2%84%a2-application-development-started/</link>
		<comments>http://blog.thenpg.com/android%e2%84%a2-application-development-started/#comments</comments>
		<pubDate>Thu, 08 Sep 2011 03:47:39 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[newsletter]]></category>
		<category><![CDATA[rambling]]></category>

		<guid isPermaLink="false">http://blog.thenpg.com/?p=21</guid>
		<description><![CDATA[Is it a robot? In July of this year I bought my first Android™ device.  I sort of knew what I was getting into because I had played around with the Android SDK a bit last year, but it wasn&#8217;t until I held the device in my hands that I began to realize it&#8217;s full [...]]]></description>
			<content:encoded><![CDATA[<h3>Is it a robot?</h3>
<p>In July of this year I bought my first Android™ device.  I sort of knew what I was getting into because I had played around with the Android SDK a bit last year, but it wasn&#8217;t until I held the device in my hands that I began to realize it&#8217;s full potential.  I have since received the Nexus S phone by Google and have been completely fascinated by the two devices.  You know what this means: Homer has to build an application because it&#8217;s the cool thing to do.</p>
<h3>Does it require batteries?</h3>
<p>There are some thoughts being bounced around as to what this application might do.  Some have said that it would support one of our new products to be rolled out on November 5 of this year, and others have said that it would mimic the things that can be done on the website&#8211;at this time TheNPG.com isn&#8217;t very mobile-friendly, unfortunately.  Either way, the application will interface with our user API so perhaps it can do both.  Firstly though, it will support the new product that is to be rolled out on November 5.  My gosh I wish I could say what this will do because it&#8217;s just <strong>SO</strong> cool!</p>
<h3>Do we need a gender changer?</h3>
<p>Unfortunately, or fortunately, depending on how one looks at it, we will <strong>NOT</strong> be developing anything for Apple products, or any other mobile OS for that matter.</p>
<h2>What would you want a mobile application to do?  Please leave your answer in our <a title="National Photographer Group, suggestion box" href="https://www.thenpg.com/suggestion_box">suggestion box</a>.</h2>
<h3>
I made an oopsie!</h3>
<p>Homer, our lead programmer who looks a lot like a monkey, needed some help so we hired another to assist.  What happened on this person&#8217;s first day is that they accidentally sent out a mass email that was blank.  Or was it blank?  Apparently, there was a hidden message, and possibly some lottery numbers, but since you deleted the email, you&#8217;ll never know what it said.  At any rate, I apologize for this rookie&#8217;s mistake and let&#8217;s just be thankful that they don&#8217;t work at a nuclear reactor.</p>
<p>On the upside, I&#8217;ve decided to no longer use email as a mass communication method.  Instead, please follow us on <a title="National Photographer Group on Twitter" href="http://www.twitter.com/thenpgcom">Twitter  </a>for the latest announcements and updates.</p>
<p>Until next time, keep your umbrella handy and the ice cream cold.</p>
<p>&#8211;Lance.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.thenpg.com/android%e2%84%a2-application-development-started/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The wait is nearing the end</title>
		<link>http://blog.thenpg.com/national-photographer-group-delivers-more-services/</link>
		<comments>http://blog.thenpg.com/national-photographer-group-delivers-more-services/#comments</comments>
		<pubDate>Mon, 29 Aug 2011 23:22:45 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[newsletter]]></category>

		<guid isPermaLink="false">http://blog.thenpg.com/?p=19</guid>
		<description><![CDATA[New Developments: - National Photographer Group, llc is now a Co-worker-level member at Urban ReThink in Thornton Park, Orlando. Urban ReThink is a first of its kind hub for creativity, collaboration, and transformation located in Orlando&#8217;s historic Thornton Park. By day, the space houses enterprising professionals in diverse fields from the arts to technology. By [...]]]></description>
			<content:encoded><![CDATA[<h2>New Developments:</h2>
<p>- National Photographer Group, llc is now a Co-worker-level member at Urban ReThink in Thornton Park, Orlando.</p>
<blockquote><p><a title="Urban ReThink" href="http://www.urbanrethink.com" target="_blank">Urban ReThink</a> is a first of its kind hub for creativity, collaboration, and transformation located in Orlando&#8217;s historic Thornton Park. By day, the space houses enterprising professionals in diverse fields from the arts to technology. By night and on weekends, we welcome the community with a “What will I discover today?” assortment of talks, workshops, and gatherings.</p>
<p>&nbsp;</p></blockquote>
<p>- <strong>New services</strong>!  There are some pretty nifty services to be launched on <strong>November 5, 2011</strong>&#8211;mark your calendars.  I would tell you what they are, but wouldn&#8217;t that ruin the surprise? Ok, here&#8217;s a hint:</p>
<ul>
<li>There are 5-things, some old, some revolutionary to the photography industry</li>
<li>You may want to re-consider your image hosting service</li>
<li>Wouldn&#8217;t it be cool if you could&#8230;</li>
</ul>
<p>I&#8217;m trying to decide if I&#8217;ll have a formal launching party&#8211;something that I have yet to do for any of the new service launches thus far.  I&#8217;m leaning toward a &#8220;Yes&#8221; on the launching party because the services to be announced are simply worthy of such a party.</p>
<p>&nbsp;</p>
<p>- <strong>A-List!</strong> As one might imagine this is a V.I.P [Very Important Photographer] list.  As you work with us and we develop a positive professional relationship&#8211;as noted more by feedback from our clients and your work than from any personal opinion&#8211;we will begin to add you to this exclusive A-List.  You cannot pay to get on the A-List, and slipping me a $20 at the launch party isn&#8217;t going to influence me, but if you continue to provide exceptional service to our clients then you will be added to the A-List.</p>
<p>Being on the A-List means:</p>
<p>- The clients who pay to access the A-list will see your contact information above B-list photographers</p>
<p>- You will be given precedence by our project managers when estimating a project</p>
<p>- You will maintain this A-List status for as long as you are a member of the site and you maintain your exceptional client feedback and work.</p>
<p>&nbsp;</p>
<p>- <strong>Suggestions Galore!</strong> I&#8217;ve put together a very simple suggestion form at a special link on the website.  Only those who read this blog can access this link because it is not in the navigation on the Home page. <a title="National Photographer Group Suggestion Box" href="http://thenpg.com/suggestion_box" target="_blank">Go Here</a> to submit your suggestion.  Essentially what has happened is that I&#8217;ve run out of great ideas to develop and I&#8217;m at a point where I like where the site is&#8211;after the launch of these new services, that is. Here are some general subjects that I&#8217;m looking for:</p>
<ul>
<li>New online software tools/features.  Go nuts!  I can create anything!</li>
<li>Is there a hardware device that you wish you had in your gear bag? I&#8217;m not talking about a new lens, or a new camera; rather, I&#8217;m talking about devices such as high-speed triggers, multi-camera synchronizers and things like that, but are not that.</li>
<li>A new concept for monetizing on your images.  Anything is possible; impossible is nothing.</li>
</ul>
<p><strong>I want to be your R&amp;D team.</strong>  Give me suggestions on things that will help you manage your business, or perhaps a new product that you&#8217;d like to offer your clients.  I&#8217;m not kidding when I say that I can do anything. <img src='http://blog.thenpg.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>&nbsp;</p>
<p><strong>- Merging!</strong></p>
<p>Ok, I didn&#8217;t mean to scare you.  There is no company merger happening now or in the future, although I might entertain something like this if it means I could continue working on the company without needing my full-time laser job.</p>
<p>Anyway, what I mean by &#8220;merging&#8221; is that when I first started the National Photographer Group, llc, the vision that I had for the company is not the same vision that I have for the company now.  A few months ago, I asked the photographers for suggestions on improving the service and a couple of you said that you would rather have a lead that you knew you were going to get than to buy a cheap lead that you may not get.  This makes sense, and it is actually something an advisor told me early on, but I didn&#8217;t want to listen, until now.</p>
<p>What has happened is that I&#8217;ve removed the function to search for projects and here&#8217;s why:  Instead of buying leads, that may or may not work for you, I&#8217;m now working directly with the client to understand their photography needs and I, or another project manager, will contact you [the photographers] for an estimate.  This means that there&#8217;s a bit more competition for the photographers, but if you are on the A-List, then you will be given precedence during these estimate wars, if you will.</p>
<p>&nbsp;</p>
<p>- <strong>Philanthropy!</strong></p>
<p>Before becoming a professional photographer, I worked with the Library of Congress in putting books and magazines onto audio cassette tapes in a specialized format for the blind and physically handicapped.  Doing this work, I learned how important it is for those, particularly without sight, to have programs that will advance technology as it applies to blindness.  With this in mind, I am pledging to give at least 10% of the profits from National Photographer Group, llc to the <a title="American Foundation for the Blind" href="http://afb.org/" target="_blank">American Foundation for the Blind</a>. AFB is a great cause and I think giving to them brings our mission full circle.</p>
<p>&nbsp;</p>
<h2>Closing:</h2>
<p>In closing, I want to thank everyone for their continued support of National Photographer Group, llc and TheNPG.com.  Remember to mark your calendars for November 5, 2011 and those photographers in Orlando will receive a special invitation to the launch party as the date approaches.</p>
<p>If you have any comments, please leave them below.  If you would like to inquire about more information about National Photographer Group, llc, please <a title="Customer Service Email" href="mailto:customerservice@TheNPG.com" target="_blank">contact us</a>.  Thank you!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.thenpg.com/national-photographer-group-delivers-more-services/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Science Of File Download Management</title>
		<link>http://blog.thenpg.com/the-science-of-file-download-management/</link>
		<comments>http://blog.thenpg.com/the-science-of-file-download-management/#comments</comments>
		<pubDate>Tue, 22 Mar 2011 05:34:33 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Technical Talk]]></category>
		<category><![CDATA[amazon s3]]></category>
		<category><![CDATA[file downloading]]></category>
		<category><![CDATA[mod_xsendfile]]></category>
		<category><![CDATA[readfile]]></category>
		<category><![CDATA[wget]]></category>

		<guid isPermaLink="false">http://blog.thenpg.com/?p=12</guid>
		<description><![CDATA[Introduction: Over the years of developing TheNPG.com, I have had to learn about new technologies that I couldn&#8217;t imagine when I first started this project.  In fact, when I started coding the first version of TheNPG.com, I had no idea how to code Javascript and my knowledge of PHP was very basic, which meant my [...]]]></description>
			<content:encoded><![CDATA[<h2>Introduction:</h2>
<p>Over the years of developing TheNPG.com, I have had to learn about new technologies that I couldn&#8217;t imagine when I first started this project.  In fact, when I started coding the first version of TheNPG.com, I had no idea how to code Javascript and my knowledge of PHP was very basic, which meant my code was not efficient.</p>
<p>Efficiency is the key when programming a web service for medium-to-large-scale usage; often times the technology that we are most familiar with becomes the screwdriver when we really need a hammer, if you will.  However, if we take a moment to step back, invest a little time and research, we may find a better solution and we may just learn something in the long run.</p>
<p>Today, TheNPG.com, while it still has it&#8217;s drawbacks, is pretty darn efficient for as large as the script as a whole is.  Over 2MB of code make up all of the classes and external libraries TheNPG.com uses to perform it&#8217;s functions, that&#8217;s quite a bit, but thankfully it is not all run at once.</p>
<p>I rarely write about the back-end technology of TheNPG.com partially because a lot of the technology is proprietary and a core part of our business, but the past few days have unearthed some knowledge that I would like to pass on to others who may be in a similar situation.</p>
<h2>Overview:</h2>
<p>PHP is full of built-in functions that can perform just about anything a programmer would want to do, but often times there is a better way.  Case in point: file downloads.  It sounds easy easy enough: there&#8217;s a file on a server, somebody wants to download it, let them download it.  But, in reality, it is far more complex especially when factoring in efficiency and different technologies.  TheNPG.com uses Amazon&#8217;s S3 service to store files and there is the option to use Amazon&#8217;s Cloudfront technology to serve the files as a content delivery network.  It really is a fantastic service and it works well as a file hosting service, if you know the ins and outs of getting the files where they need to be, and making sure that the people who are downloading those files are allowed to do so.  We could have PHP do the bulk of the work by verifying privileges, fetching the file and serving it to the browser, but when we consider that PHP loads the entire file into memory, our efficiency is reduced and we have the potential of bringing our server to a stand-still.</p>
<h2>The Objective:</h2>
<p>The objective to our download service is to provide quick access to file downloads, which can be very large, while reducing the costs associated with transferring files between servers.  You see, Amazon S3 charges not only for storage of files, but also for requests to put and get the file, and the bandwidth required to move the file; it adds up!</p>
<h3>Why not just host the files on our web server that has unlimited storage and bandwidth?</h3>
<p>This was a question that the answer took a while for me to understand.  To better understand the answer, we have to consider the two different types of servers: the web server and the file server.  The web server is busy serving pages and dynamic content, it is not set up for redundancy, in other words, the disk could fail, but since the web server only has files on it that are required to generate a web page, it&#8217;s not a big deal because these files are generally small and easy to backup.  A file server, on the other hand, is built for redundancy; it might have several disk drives of a seemingly unlimited capacity where when one, two, or even three drives fail, there is still enough data on the others that the files can be recovered.  A file server is like a rock and a web server is like a race car; sometimes the race car crashes, but the rock will always remain in tact.  So, while using a web server as a web server/ file server is cheap, easy and really fast, it doesn&#8217;t make sense when you&#8217;re dealing with other people&#8217;s prized files.  For this reason, we have integrated Amazon&#8217;s S3 file service into TheNPG.com.</p>
<h3>So, how do you connect the two services efficiently while keeping costs down?</h3>
<p>Simple [of course I would say that since I've figured it out <img src='http://blog.thenpg.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ].  For each file that is uploaded to TheNPG.com servers, we create different sized images, if the file is an image, and then put them all on Amazon&#8217;s servers using a PHP class for S3.  During this upload, we set special request headers that, when called via HTTP, will cause the browser to open a dialog box asking the user to either open the file, or save the file.  Because our PHP class accepts an array of request headers as an argument, our code looks like this:</p>
<pre class="brush: php; title: ; notranslate">$request_headers = array(
&quot;Content-Type&quot; =&gt; $filetype,
&quot;Content-Disposition&quot; =&gt; &quot;attachment; filename=&quot;.$filename);
</pre>
<p>This sets two headers that will be sent to a browser if the file is called via a HTTP request.</p>
<h3>But why?</h3>
<p>TheNPG.com uses a caching system which works like this:</p>
<ol>
<li>User clicks on link to download the original file</li>
<li>PHP checks the cache to see if the file has been downloaded in the past 24-hours, or so</li>
<li>If the file has not been cached, we do 2-things simultaneously: we send a header to the browser that redirects to the CDN server, and upon the browser connecting with the CDN server, the aforementioned request headers are output which causes the browser to bring up the download dialog.  While this is happening, we use the following code to fetch the file for our cache:</li>
</ol>
<pre class="brush: php; title: ; notranslate">exec(&quot;wget -q -nc $location -O $store &amp;gt; /dev/null 2&amp;gt;&amp;amp;1 &amp;amp;&quot;);</pre>
<p>What the code above does is it executes a shell program &#8220;wget&#8221; with the options to be quiet [-q], and to not download the file if it already exists in the directory [-nc], then we pass the cleaned location of where the file is, followed by the -O option and the location we wish to store the file.  The next bit of code is the real gem as it allows the program to continue while freeing itself from the bounds of the PHP script that called it.  In other words, we&#8217;re really doing tw0 things at once!</p>
<h3>Why use exec and wget instead of readfile()?</h3>
<p>Readfile works really well for smaller files in PHP; however, if we were to use readfile for larger files, say 25MB, then we would have to wait for the file to be downloaded by PHP before allowing anything else to happen.  If we can quickly send special headers to allow the user to immediately begin downloading their file, then they don&#8217;t have to wait for the two servers to exchange communication before letting the user download the file.  Also, wget has many neat features built into it that give it advantage over any PHP function, including the -nc option.  Why use PHP to do such heavy lifting when we can use a program that is built for this purpose?</p>
<p>So, once the file is cached on the local web server, we have the same issue with deciding how to serve the file.  Do we let PHP do it since the file is local now?  Yes and no.  For small files, it&#8217;s ok to let PHP handle them, but for the larger files there&#8217;s another gem called mod_xsendfile.  This is an Apache module that is useful for handling larger file downloads.  Essentially, when this module is installed and enabled, the webmaster simply sets the XSendfile header and the mod_xsendfile module does the rest without tying up PHP.  Here is an example of how to set the header:</p>
<pre class="brush: php; title: ; notranslate">
header(&quot;Content-Disposition: attachment; filename=\&quot;&quot;.$filename.&quot;\&quot;&quot;);
header(&quot;Content-Type: &quot;.$filetype;
header(&quot;Content-Transfer-Encoding: binary&quot;);
header(&quot;Content-Length: &quot;.filesize($filepath));
header(&quot;X-Sendfile: &quot;.$filepath);</pre>
<p>And with that, PHP is free and Apache takes over with handling the local file serving to the user.  It&#8217;s just as quick as the first download request and just as transparent to the user.  If the file is popular, there can be significant savings in bandwidth transfer and request charges when using this method.  Of course, requesting the file twice means that there is a risk that if the file isn&#8217;t requested a subsequent time from the first then there is a bit of waste, but that&#8217;s ok because in the end, the savings outweighs the waste.</p>
<p>To keep the server clean, and the cache fresh, we setup a cronjob to run a script that checks to see if any of the files in the cache have been stagnant for the given amount of time.  We maintain a fetch-count along with a &#8220;last-requested&#8221; time stamp that allows us to maintain the cache so that our web host stays happy.</p>
<p>Also, with keeping in the quick delivery of files to the user, it was debated whether or not to use memcache, or a similar program, in order to maintain the cache index&#8211;or even the files themselves if they are small enough.  Ultimately, the decision was made to not use memcache at this time because it is something else that we need to install and maintain when we already have the ability to use MySQL memory [HEAP] tables without much extra effort, but with similar fetch speeds.  Our memory table simply keeps track of the file location, the original file name, the file MIME type, the fetch-count, time created and last accessed along with a hash index.  Keeping the table small, and using queries that use the index, the fetch time from MySQL is very quick, 0.000011 seconds, on average.</p>
<h2>Conclusion:</h2>
<p>There&#8217;s a lot of information here, and probably a lot more rambling seeing that it is pretty late at night, but hopefully this information is helpful to someone else wondering how best to manage file downloads.</p>
<p>In short:</p>
<ul>
<li>Use a local cache, but keep it clean and down to only the records which are required</li>
<li>Get files for the cache using exec and wget -q -rc behind the scenes</li>
<li>When files are put onto S3 servers, set the request headers to cause a download box to display when the download is clicked, then redirect the user to the S3 server where the file is downloaded directly from that server, use DNS to cloak the location of the file so the user cannot know where the file is hosted, exactly, OR use time-sensitive pre-signed URLS and only allow authenticated access to the files hosted on S3.</li>
<li>Use MySQL memory [HEAP] tables, or memcache, to maintain a catalog of the cache</li>
<li>Use mod_xsendfile to serve local files without tying up PHP and a lot of memory</li>
</ul>
<h2>EDIT:</h2>
<p>I have read in other forums/blogs the dislike of using mod_xsendfile because, so it is claimed, the programmer is letting go of control of the file so other things cannot be done, such as database logging.  This is not true if you use PHP as FastCGI; the FastCGi processes do not end once the file is passed to the user; rather, they continue to process until the script completes.  This method is superior to other methods, and that&#8217;s the bottom line.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.thenpg.com/the-science-of-file-download-management/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Progress in Photography Project Management</title>
		<link>http://blog.thenpg.com/new-progress-in-photography-project-management/</link>
		<comments>http://blog.thenpg.com/new-progress-in-photography-project-management/#comments</comments>
		<pubDate>Wed, 19 Jan 2011 18:18:25 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Photography Projects]]></category>

		<guid isPermaLink="false">http://blog.thenpg.com/?p=7</guid>
		<description><![CDATA[It has been a busy past few months at TheNPG.com office.  I&#8217;m trying out different marketing strategies and the business is continuing to evolve.  Aside from this, new projects are in the works, most notable is the Adobe Lightroom plugin which will allow photographers to upload and store their images at TheNPG.com site directly from [...]]]></description>
			<content:encoded><![CDATA[<p>It has been a busy past few months at TheNPG.com office.  I&#8217;m trying out different marketing strategies and the business is continuing to evolve.  Aside from this, new projects are in the works, most notable is the Adobe Lightroom plugin which will allow photographers to upload and store their images at TheNPG.com site directly from their Lightroom application.  Since it&#8217;s a publishing plugin, Lightroom will maintain a relationship with that image so that it can be managed directly from Lightroom.  In the course of developing the Lightroom plugin, there is also a REST API being created that would allow third-party developers to create applications ["apps"] for TheNPG.com thus opening up new opportunities for our users.</p>
<p>If you have any ideas that you would like to contribute in regard to the ongoing development of TheNPG.com then please send them to CustomerService@TheNPG.com.  Each and every email is read and will be replied to.  You can think of the National Photographer Group, llc as your personal web application developer without the high price. <img src='http://blog.thenpg.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.thenpg.com/new-progress-in-photography-project-management/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic page generated in 1.449 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2012-05-19 12:15:49 -->
<!-- Compression = gzip -->
