From AIN Conference 2017.
As part of analyzing my 18 months as a nomad, I wanted to look at how many pictures I took and analyze some of the metadata to determine photos by state, photos by trip, and more.
I assumed this was going to be an easy task, all I wanted to do was download flickr metadata to a csv file. I figured I would just use some type of export feature in flickr. It turns out it’s not so simple mostly because flickr doesn’t include a feature to export metadata to a csv file (why flickr? why????).
I did a lot of google searching (and soul searching to see how important it was to have this data) and eventually came upon this post by Joshua at HunterTrek who created python script for getting metadata using the Flickr API.
Part of me felt like giving up as there are quite a few steps involved in getting it to work, namely downloading a few programs so you can run a python script. Ultimately the allure of data was too much, and I followed their steps.
So here is how to export flickr metadata to a csv file:
- Downloaded ActivePython for Mac.
- Downloaded Flickr API vPython 2.7.
- Installed the Flickr API following these instructions.
- Downloaded Flickr Metadata Python script from Joshua.
- Requested a Flickr API Key for non-commercial use and got one.
- Determined my Flickr ID (top right corner).
- Opened the Python script, added the API, secret, and ID for my photos.
- Ran the Python script and got an error, “flickr.get.token.part.one”.
- Googled and found this solution to error, “flickr.get.token.part.one”.
- Ran the Python script successfully.
- Exported the database to CSV using a terminal command flickr_photo_metadata_download.py -export.
- Opened the CSV in Excel.
Now ideally this is where the story would end. And it almost did, but unfortunately the data exported from the Python script does not include Album (aka Photoset) information. That’s one of the pieces I wanted to analyze. So I looked for a way to modify the script and (eventually) was successful.
A bit more google-action helped me determine how to grab photoset information from the API. Weirdly it’s not in the getinfo call like everything else is but rather via flickr.photos.getAllContexts.
Through trial and error, I got it working by changing / adding the following lines to the Python Script:
In dedup_photos added the bolded text to
db.execute("CREATE TABLE temptable (id int, photo_title text, photo_origformat text, photo_media text, photo_description text, photo_date_posted text, photo_date_taken text, photo_url text, photo_album text)")
In export added the bolded text to
outputwriter.writerow(['PhotoID', 'FileName', 'FileFormat', 'MediaType', 'Description', 'UploadDateTime', 'CreatedDateTime', 'URL', 'PhotoSets', 'Tags'])
In connecting to the database I added the bolded text to
db.execute("CREATE TABLE IF NOT EXISTS photos(id int, photo_title text, photo_origformat text, photo_media text, photo_description text, photo_date_posted text, photo_date_taken text, photo_url text, photo_album text)")
In querying flickr for photo metadata I added the following lines after photo_url
photoalbuminfo = flickr.photos_getAllContexts(photo_id=id)
photo_album = photoalbuminfo.find('set').attrib['title'] #gets the first album set
And the bolded text to the
photo_all_info = (id, photo_title, photo_origformat, photo_media, photo_description, photo_date_posted, photo_date_taken, photo_url, photo_album)
And an extra question mark in
db.execute("INSERT INTO photos values (?,?,?,?,?,?,?,?,?)”,photo_all_info)
If you want to do the same thing, you can download an updated copy of Joshua’s python script here: Flickr Download Photo Metadata with Photoset Information
I had the privilege of speaking at TEDxOhioStateUniversity in February of this year. The video is finally available online:
You’d think with 94% of Americans having the option of Broadband Internet that things like site loading and page speed wouldn’t be that important. But given that 24% of all Internet traffic comes from Mobile, how long it takes your site to load is still a big factor of user satisfaction (and Google rankings).
Here’s how I improved my Google PageSpeed score by 40 points in 5 minutes.
1. Check your PageSpeed score
First, check your score by going to http://developers.google.com/speed/pagespeed/insights/
2. Make 2 tweaks to your .htaccess file
Add the following to your .htaccess file (assuming you are on an Apache server such as Dreamhost):
# Enable Caching for Speed
ExpiresByType text/html M3600
ExpiresByType text/css M3600
ExpiresByType image/bmp M3600
ExpiresByType image/gif M3600
ExpiresByType image/x-icon M3600
ExpiresByType image/jpeg M3600
3. Install W3 Total Cache
Install W3 Total Cache and enable the following options: Page, Minify, Database, Object, and Browser, and then hit Save All Settings.
4. Check your PageSpeed score again
Submit your site again and see your improvements. You can also read the other tips provided by Google on how to make your site even faster.
And just like that, you’ve increased your PageSpeed score.
One of my most popular requests is setting up websites for actors, comedians, and improvisers. The process to do so is usually pretty quick (assuming the person has the copy for each page, I can turn it around in a day or two) and is mostly painless.
If you’re an actor looking to set up your own site, here’s what you should look to include:
1) Static Home Page
Unless you plan on updating your site daily or weekly, you should have a static homepage that has a picture of your beautiful face, a welcome message, and links to the other pertinent stuff on your site.
2) Bio Page
People searching for you want to know a little bit about you. What’s your story? Where are from? What have you done? What are you doing now? The bio is a chance to tell the world about yourself in a more personal, and humorous, manner.
3) Resume Page
In addition to the Bio, you should let people know about the awesome work you’ve done in the form of a Resume page. Include both an webpage and a downloadable PDF version so people can print out your resume if they need to.
Note: Do not include your home address on your resume; your home city / state is good enough.
4) Media Page(s)
Visitors want to see you in action, so it show them in the form of images and video. If acting is your thing, they want to see you act. If comedy is it, show a clip of you making people laugh. You can choose to have all of your media on one page or separated into images and video if you like. Either way, make sure people can see what you have to offer.
5) News Page
A simple News section of your site (done via a blog) gives you a chance to update the world on current / recent projects you’ve been working on. This shows you are a working professional and can also be great to send out to casting directors to keep them posted on the awesomeness you are creating.
6) Contact Page
After a visitor realizes how great you are, you want them to be able to get a hold of you. Your contact page does just that. You can either include your email (or embed an email form), or post the contact info for your representation.
Note: If you post your email, I recommend creating an email account (with your domain name) specifically for these inquiries.
Last year I published my very first book, 50 Quotations on Humor, mostly as a way to learn about the self-publishing process. After tons of research and actually doing it, I’ve boiled down the process to these steps.
Note: This assumes you already have a book idea / content ready. Also this is for self-publishing a physical copy of the book.
10 Basic Steps for Self-Publishing a Book
Step 1: Purchase Your Own ISBNs
Most book-publishing services will create ISBNs for you, but if you do that, you lose control over who the imprint is. If you want a more official publisher name, and not SELF-PUBLISHING-COMPANY X, you can purchase your own ISBNs and define the imprint (maybe something like “DREW’S PUBLISHING HOUSE”).
To purchase ISBNs, I used myidentifiers.com. I bought 10 ISBN’s for $250 (and you’ll want to buy in bulk as you should have different ISBNs for digital and print versions of your book).
Step 2: Assign Your ISBNs
After you’ve purchased your ISBNs, you’ll have to assign one to your print book. Using myidentifiers.com, you fill out the pertinent details such as Title, Author, Summary, etc. This information is used when booksellers are listing your book.
You may not know all of this information until after you finish the other steps, so you may have to come back to it. The important step right now is assigning the ISBN to this particular book.
Step 3: Choose a Publisher
There are a number of great Print-On-Demand publishers out there, including Lulu, LightningSource and Blurb. However I personally went with CreateSpace because of it’s direct connection to Amazon. With CreateSpace, as soon as you approve your book for publishing, it gets listed on Amazon.com, as well as a few other places.
Step 4: Create a Book / Choose a Size
One of the first things you have to decide on with your publisher is the size of your book. There are number of standard sizes but CreateSpace also allows you to create your own.
Note: If you create your own size your book won’t be distributed to bookstores, it’ll only be available in the eStore and on Amazon.com.
Step 5: Design Your Interior
Once you have the size, you can design the interior of the book and fill it with content. Another advantage to using a standard size is that CreateSpace has templates you can download so all you have to do is Copy/Paste and format the text you want (no messing with margins, etc).
If you decide to go with a custom trim size, using a program like Adobe InDesign might be easier to use for formatting.
Step 6: Design Your Cover
Once you have your interior set, you can create a design for the cover. Once again, standard sizes have templates, custom sizes require you do some math to get things right. Be sure to leave the correct space for where the barcode will go and pick print-safe colors for the cover.
Step 7: Upload Your Content
Once you have the interior and cover completed, you’ll save them as PDFs and upload them to the publisher. CreateSpace has an electronic checker that will review for any formatting issues such as incompatible fonts. Be sure to clear any errors (or actively decide to ignore them like I did when an error about spacing came up).
Step 8: Order a Proof
Once everything looks good in the previewer, it’s a good idea to order a physical proof. This will take a little bit of time as every time you submit something to be available as a proof, it takes a day or so to be reviewed by a human to make sure everything is OK. Then you can order the proof (which is usually pretty cheap although they get you with shipping costs, especially if you want it rushed).
Step 9: Publish Your Book
After you’ve received and reviewed your book, it’s time to make it available to the world. You can approve your book on the site and also enter your distribution details: price of the book, distribution outlets, etc. Be sure to also go back to myidentifiers.com and update any information you left out earlier.
Note: For pricing, CreateSpace will tell you the minimum you can sell the book for. Anything over that minimum is how much you make on the book. The price varies from book-to-book based on size, number of pages, color or black & white interior, etc.
Step 10: Fill Out Your Amazon Author Information
Once you approve your proof it’ll take 5-7 business days for it to show up in Amazon. Once it’s there, you’ll want to make sure you fill out your Amazon Author information so people can learn more about who you are (and you can add your blog, twitter, etc).
BONUS: Publish to Kindle
If you also want to publish to Kindle, CreateSpace now has a conversion tool that will get you started. Whether you use that or create a new document yourself, you’ll manage the Kindle version of the book at kdp.amazon.com. More tips on this process in a future blog post.
There you have it, the 10 Basic Steps for Self-Publishing a Book. Got questions? Leave ’em in the comments.
I recently shared a post about how to move a tumblr blog to a new owner. Unfortunately that only works for secondary blogs. It may be the case that either on your current account, or possibly a new one created specifically for your blog, you want your secondary blog to actually be your primary blog.
Sadly, this isn’t possible from tumblr’s perspective (nor does it seem like they’ll be changing it any time soon). However, you can “trick” the system into treating your secondary blog as your primary blog.
Note: This process renders your current primary blog pretty much useless. This is a workaround to get as close to the functionality as possible. Make a backup before you start and proceed at your own risk.
I recommend transferring your secondary blog to a new account before you begin.
How to Make a Secondary Tumblr Blog a Primary Tumblr Blog
- Log into your tumblr account and go to your current Primary blog.
- Click on Customize theme, then Edit HTML.
- Right after where it says <head> put the following code, where “http://inserttumblrurl.tumblr.com/” is the address of the Secondary blog that you want to be the Primary blog.
window.location.href = “http://inserttumblrurl.tumblr.com”
- Click Update Preview, then Appearance, then Save, then Close.
- Your old Primary blog will now always redirect to your Secondary blog. That means whenever you follow someone or ask a question, they’ll be directed to your Secondary blog if they click on your name.
- Optional: You may want to change the URL of your old Primary blog to something similar to your Secondary blog so that the name that appears when following people seems related to your blog. The easiest solution is adding a hyphen (‘-‘) in the name.
- How to Make Your Secondary Blog Your Primary Blog – A tumblr post explaining the details.
While I’m mostly a WordPress guy, I have helped some friends set up sites on Tumblr.
Unfortunately, when I first started, I knew very little about tumblr before starting and as a result created the comedy blog as part of my personal account, thinking I could just move it later. Well with tumblr, moving a blog isn’t all that easy to do (and if you ask tumblr support, they’ll tell you it’s not possible at all).
But, there is a way to “move” a secondary tumblr blog. Here’s how:
How to move a tumblr blog to a new owner.
- Create a NEW tumblr account (you have to use a new email address).
- Log out of the NEW tumblr account.
- Log into the OLD tumblr account and select the blog you want to transfer from the Dashboard menu.
- On the right hand side, click where it says Members.
- Add the NEW tumblr account as a member by inviting it using the new email address.
- Log out of the OLD tumblr account.
- Check your new email address inbox for an invitation from tumblr to join the OLD blog. Click join and log into the NEW tumblr account.
- Log out of the NEW tumblr account.
- Log into the OLD tumblr account. Go back to the Members page for the blog you want to move and change the NEW account to be an admin.
- Log into the NEW tumblr account and confirm you can post, change settings, etc. You’ve now transferred the blog to your NEW tumblr account.
- Optional: From the OLD account, you can choose to leave the blog now if you’d like, your posts will still remain on the blog.
- How to Merge Tumblr Accounts – The last answer on this stack exchange question shares how to transfer owners.