RSS Verzeichnis - Holovaty.com
Adrian Holovaty's blog.
The Google+ / YouTube integration is a disaster.
Much has been written about this in the last few days, with people making great points about the value of anonymity and the poor new comment-ranking algorithms. Here's a good roundup of the various issues.
These are fantastic points, and I agree with them 100%. But they're fundamentally matters of philosophy. Whether real names are required in comments, whether a Google+ account is required to post comments/videos to YouTube, and how comments should be ranked/sorted â€” these are all judgment calls made by YouTube's developers and product managers. Though we may disagree with their philosophies, they have the right to build their products according to those philosophies.
Beyond that, it's important to consider that people don't like change. I've built web apps long enough to know that any time there's a substantial redesign or relaunch of a site, people will complain. They'll say "Version 1 was so much better than Version 2!" Then they eventually get used to it, and, ironically, when Version 3 comes along, they'll passionately defend Version 2.
But even accounting for these two things â€” people's normal resistance to change, plus Google's right to have its own philosophies/opinions on how their product should work â€” the YouTube changes still qualify as a disaster.
It's not that I'm upset things don't work in the same way they used to, or that I disagree with their philosophies on the product, it's that things don't work period. The implementation is just plain broken.
Here are three examples.
Connecting your YouTube channel to a Google+ account
I have a decent-sized YouTube channel, with 26,000 subscribers. (I post guitar videos.) I've spent several years building up this subscriber base and, naturally, I don't want to make any missteps that might mess up my channel or devalue it in any way. So I was super skeptical about linking my channel with a Google+ account, but I finally did it after YouTube made it too inconvenient/annoying not to.
Problem was, it didn't work.
When I bit the bullet and initiated the linking of YouTube/Google+ accounts, I got the following "YouTube is updating your channel" dialog box:
The dialog box contained nothing, and it was over a blank background, and...nothing happened. I initiated this several times, trying to narrow down the reasons it might be happening. I signed out of my other Google Accounts, I tried it in an incognito window, I tried doing it from the settings page as opposed to directly from the channel page. Each time, the same thing happened: only an empty dialog box with no response.
So it's some sort of cross-site frame problem. I looked in my browser's (Google Chrome's) preferences to try to disable whatever security setting was causing that, but I couldn't find anything. I finally tried it in Firefox, and it worked. Evidently Firefox (or at least my particular Firefox installation) doesn't care about that cross-site frame problem.
Google built something that doesn't even work in the company's own browser. And the problem is still happening, as of this writing, which means it's been like that for at least a week.
With my YouTube/Google+ accounts finally linked, I could finally post comments again. (YouTube is now requiring a Google+ account in order to comment.) I found a new video by one of my favorite YouTube guitarists, troubleclef, and I wanted to say some nice stuff. But commenting did not work.
I clicked in the "Share your thoughts" box. A new window popped up, immediately closed, and the page flickered a little bit. Nothing changed. Here's a video of the fiasco; it's begging to be mashed up with the Benny Hill theme song.
Chrome was telling me a pop-up was blocked, so I enabled popups for youtube.com. Same problem. I reloaded the page. Same problem.
I cannot post comments on YouTube videos now. It appears to be completely broken.
I get a fair number of comments on my videos (a handful each day), and I get an email notification each time I get a new comment. I haven't received a "new comment" email notification in a week or two, so I was wondering whether there was some new way to get comment notifications.
There's now a bell icon in the upper right of YouTube pages when I'm signed in, and it's the same icon they use on Google+ for its notifications, so I assume this is where I'll see YouTube notifications. I clicked the icon and got this:
"Please sign in to view your notifications"? Am I not already signed in? The fact that my username and avatar are being displayed in the upper right seems to indicate I'm signed in, no?
I have no way of knowing how many people are being affected by these three issues. But for me, using Google's own browser, it's resulted in a YouTube experience that's extremely broken. Beyond the social problems of requiring a real name, beyond the content problems of ranking comments in a bad way, the new YouTube simply doesn't work.
To me, that's the most unforgivable thing about this. Given Google's history with Google Buzz, we know they don't have a subtle view of real names and privacy, so the tone-deaf real-name requirement isn't a huge surprise. The comment ordering, though wrong in several ways, is ultimately their judgment call. But the one thing Google is good at above all else â€” technology â€” its failure here is disastrous.
Yesterday I saw some people online referring to my site Soundslice (a guitar tabs site) as "Songslice," so I registered songslice.com, with the intention of redirecting it to soundslice.com for the benefit of anybody who typed in the wrong domain.
In the past, I've done this sort of redirect at the web server level (nginx, Apache). But now that I'm on the nice Amazon infrastructure, I'm not actually using one of those servers -- requests are handled directly by gunicorn once they make it through Amazon's load balancers. So I needed to find another way of handling the redirect.
One option would be to tweak my application (using Django middleware) to detect requests to songslice.com and redirect them, but it seemed dirty to do it directly in my app.
Another option would be to use the domain-redirecting service provided by my domain registrar (Namecheap), but registrars don't always use proper 301 redirects, and I've gotten burned in the past by shoddy performance/downtime of registrar-provided services.
That left me with the option of doing the redirects directly within the Amazon Web Services world. I couldn't find a single document that explained how to do this, so here are my notes on how to set up a domain-level redirect with the current AWS tools. (Note that Amazon is adding new stuff seemingly constantly, so this may be out of date in a few years or months!)
The one-sentence explanation: point the new domain at S3 and use S3's "redirect all requests" feature.
Step 1: Create S3 bucket for domain
Go to the S3 console and create a bucket. For the name, use the exact, full domain, e.g., "songslice.com". (This is important!)
Once you've created it, edit its properties. In the "Static Web Hosting" section, select "Redirect all requests to another host name." In that section, enter the domain name to redirect to, e.g., "soundslice.com".
Step 2: Add DNS rules in Route 53
Go to the Route 53 console and create a Hosted Zone. The domain name should be your new domain name, e.g., "songslice.com".
Once you've created it, click "Go to Record Sets." You should see two records already ("NS" and "SOA").
Click "Create Record Set" and make sure the Type is "A". Leave the Name field blank, to indicate you're dealing with no subdomain. Change Alias to "Yes". Click in the Alias Target field, and you should see a dropdown including an "S3 Website Endpoints" section. Select the S3 bucket you created in the previous step. Save the record set.
Step 3: Give registrar Amazon's nameservers
Log into your account on the domain registrar's site (e.g., Namecheap), for the domain that you want to redirect (e.g., songslice.com). Find the place where you can change the nameservers for the domain. You might have to check something that says "Stop using registrar's nameservers."
Enter the four Amazon nameservers for your new domain. They're listed in the Route 53 record set you created in step 2 (next to "NS"). Copy and paste them from Route 53 into your registrar's nameserver UI.
Step 4 (optional): Do it again for www subdomain
If you want to support redirects for people typing in a www subdomain (I recommend this), repeat steps 1 and 2 using, e.g., "www.songslice.com" instead of "songslice.com".
The only difference is: in Route 53, instead of creating a new record set for the www version, edit the one you already created and add another "A" record. This time, type "www" in the Name field when you add it.
That's it! Depending on DNS, this could take a little while (a few hours?) to propagate across the Internet. Oh, and this will cost you around a dollar per month, for the S3 and Route 53 services, and there's nothing to maintain.
Some of you may know I moonlight as a guitar player on YouTube. I've been doing it since 2007, I've gotten millions of views over the years, and 25,000 people have subscribed to my channel (more than twice as many people as I have Twitter followers) -- but it's just a fun side thing for me.
I've often considered somehow supplanting my income through my YouTube videos, but the options have been limited. I was an early member of the YouTube partner program, which lets me include ads on videos and share revenue, but that brings in something like $50 annually, plus or minus.
I've thought about doing a Kickstarter, but the Kickstarter model of funding one-time, larger projects doesn't fit nicely with my workflow of posting a single guitar video every couple of weeks/months. I would like to do a Kickstarter campaign some day, but I'd use it for something other than my YouTube videos. Maybe an album.
Enter Patreon, which I just discovered at XOXO a few days ago. This site lets people be "patrons" for musicians/creators who produce new things on an ongoing basis. You can sign up to be a patron for my stuff and pledge $1 or more whenever I post a new video. This helps support my guitar-posting habit, and there are some nice benefits such as a blooper reel, guitar tabs of my stuff and even the ability to choose which songs I play.
I certainly don't expect to be able to live off of this -- I'm quite happy working on Soundslice full-time, and frankly I need computer programming in my life in order to be truly happy -- but every bit helps, and I'm already enjoying the fan interaction that Patreon helps make happen. The fans who like your music enough to pay for it are the best kind of fans. :-)
Have a look at my Patreon page, where I've recorded an intro video and written more details. Looking forward to seeing how this goes.
I'm excited that DjangoCon US is in my hometown of Chicago this year! And it's actually in Chicago, unlike PyCon in Rosemont a few years back. :-)
Whenever I travel somewhere for a conference, I try to get a sense of the city. Here's a quick guide to Chicago sights, sounds and tastes -- a guide I wish I had if I were visiting Chicago as an outsider. The focus is on stuff that's either near the conference hotel or is particularly worth a journey. And I threw in some Django locations for fun.
Food near the hotel
Frankly I'd avoid eating at the hotel, even the conference's free meals, if you can afford it. You're in Chicago, so get out and enjoy it! This is a curated list of places I can vouch for being awesome:
Fast stuff (lunch) near the hotel:
Dinner near the hotel:
Dinner in the neighborhoods:
Good coffee near the hotel
Avoid Starbucks and Caribou Coffee and hit one of these local places:
Night stuff for geeks
These places are in the neighborhoods, away from downtown but easily accessible by train ($2.25 one way) or cab:
Django Web Framework sightseeing
For the super-duper-uber Django fans, here are some notable Chicago locations in the framework's history (all several years old, because it's such an international project these days):
This is a tiny selection of my favorite places. If you have specific questions/requests, let me know in the comments or on Twitter. Also, fellow Chicago residents, feel free to chip in with comments or your own blog posts.
Just a heads up: I wrote a three-part series of articles for Source, which is the Knight-Mozilla OpenNews site devoted to covering the intersection of journalism and programming. Here are the links:
The series is about "sane data updates," which is a rather esoteric topic, but one that every journalist/programmer has to grapple with at some point or another.
It's all stuff I learned the hard way over the years, especially from chicagocrime.org and EveryBlock. I really enjoyed taking the time to write it down and formalize it into concrete advice.
Hope it's helpful to folks out there!