Internet, Ownership

Republished from the April 2, 2018 Newsletter.

If I had a mission statement right now it’d be this: more people exhibiting more ownership over more of what they produce online. Right now we’ve swung almost entirely to allowing social media to own everything about our activity online: both in terms of consumption and production. Social media, however, interlaces consumption and production in order to extract the maximum value from the smallest interactions. I’m convinced that soon enough if you hover your mouse over a link for too long it could result in a post about how you’re interested in it blasted out to the world. Technically speaking that would be a very impressive feature! Shareholders love features like that because engagement goes up because everyone thinks that everyone else is doing more somethings on the site.

Your tools constrain what you’re able to create and how you create it. And the current landscape of widely available, easy to use, tools prioritize only a specific set of behaviors (primarily based around engagement). Imagine if instead of writing this newsletter it existed as a thread on twitter. I’m so tired just thinking of anyone trying to read that let alone writing it!

I’m all for the barrier to creation being lowered. I’m not for the control of the display of that creation to be ceded to a few large publicly traded companies. Again, I want more people to have ways to create and catalog the things they care about in their own space. Owning your own little corner of the internet allows you to do different things with it than trusting The Great Algorithm to sort it out for you.

Maybe you just really want to catalog the paint colors you used on your house so you can reference it later. Maybe you want to write a weekly newsletter. Maybe you want to have a place to post about your hyperlocal D&D zine’s progress. FB isn’t going to give you those tools unless there’s a measurable way for them to monetize it. And the second it’s no longer profitable for them you’re on borrowed time.

We have some good tools to do the making part, but we don’t have all the possible tools to do so. I want more ways to facilitate someone having an idea to the production of that idea. Ideally it doesn’t involve a lot of head scratching about terms like DNS, SSH, NPM, etc. No one in 2018 should have to understand server administration in order to have a website.

If this were a medium piece I’d now bring up how my startup is going to solve this. Alas, this is just a weekly newsletter. Talk to me in person if you’ve been thinking about these things too.

Posted in y

Tools for Diagnosing Domain Name Issues

Oftentimes when inheriting a web project you also inherit myriad domain name related issues. And, as always, the command line is your friend for finding quick information associated with that domain name. Here’s a few tools I’ve been using a lot lately:

Whois lookup

A simple whois lookup will give you basic information on a domain name. It’s a good way to check for availability or when a domain name is going to expire. Use it like the following:

whois chrissalzman.com

If you just want the line for when it expires you can grep your way there:

whois chrissalzman.com | grep "Registry Expiry Date"

This should print something like the following:

Registry Expiry Date: 2018-08-08T14:10:49Z

Redirect testing with curl

curl is one of those tools that I’m constantly finding uses for. Recently a tech I was working with showed me this trick:

curl -IL google.com

This’ll show you just the headers and the redirect path a domain takes to its final destination. It’s especially helpful for debugging redirect rules on your server. Or in a recent case it helped me diagnose an issue I was having with a forwarding service from an unnamed large registrar.

Anyway, running the above command will show you that going to google.com has one 301 redirect to www.google.com. This is a pretty standard setup (although fascinating to note they don’t redirect to https).

The -L flag asks curl to follow any redirects. Without it it will just return whatever is at the first page. Try a curl request on just google.com with no flags and you’ll see that it returns a terse page:

<HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8">
<TITLE>301 Moved</TITLE></HEAD><BODY>
<H1>301 Moved</H1>
The document has moved
<A HREF="http://www.google.com/">here</A>.
</BODY></HTML>

The -I or --head flag fetches “the HTTP-header only!”, according to the man page. This is useful when you don’t care about the page itself, but do care about the headers relating to redirects and IP addresses.

Combine these two flags and you’ll get the chain of redirects to the final resting place when you to to a site.

I also found out that it will give you a response of about any SSL issues you encounter. I was hitting one for my domain that required an nginx restart.

host -a

This allows you to request “all” which theoretically returns any records setup for that hostname. This is most useful on, say, a base @ record so that you can see any of the mx, txt, ns, or other records for it:

host -a chrissalzman.com

I’ve found that occasionally this doesn’t return everything to you. I need to investigate this more, but my assumption is it’s due to network speeds. If you run this and don’t get all the records you’re expecting it’s worth rerunning. Some nameservers deny this request, but most don’t. They should notify you if they are denying it

If all you need is A record for that hostname you can drop the -a flag.

dig

Shortly after publishing this post Benedict Singer showed me dig!

dig is powerful. From the man page under BUGS it says “There are probably too many query options.” That is true, it seems like it can do almost everything you need related to DNS.

Basic usage let’s you do a similar lookup to host. The result is extremely similar in terms of response time and output:

dig chrissalzman.com

Adding in any is equivalent to -a for host:

dig chrissalzman.com any

Drop any and add in +short to only return the IP address for the record you’re looking up:

dig chrissalzman.com +short

For my purposes one thing that looks interesting is that you can feed it a bunch of domain names from a text file using the -f flag.

dig -f dignames.txt

dignames.txt contains a list of domain names, one per line, and it quickly iterates through them. I could see this being useful for scripting purposes if you wanted to, say, periodically check if an IP had changed on a host record (sometimes these things get changed by maybe not evil, but certainly incompetent, registrars). Adding in +short will also strip out the boilerplate surrounding the response.

This one will show you the “delegation path from the root name servers”:

dig +trace chrissalzman.com

And this is great for reverse DNS lookups:

dig -x 1.2.3.4

A non-command line bonus tip: whatsmydns.net

After you make a change to your host records it can take a while for it to filter out across the internet. For checking to see the status of that change around the globe I like using whatsmydns.net. They have servers around the world that do an host name check and return the results.

This is also a very useful tool to see if your name server is using multiple IP addresses for your host records. Oftentimes if you use a forwarding service or have a parking page put up you’ll run into this.

Any others?

If I missed something you use day to day, please share!

Posted in y

Headshots

My wife and I are opening up a few spots over the next month for corporate headshots in or around Ann Arbor, Michigan.

Generally speaking this is for those of you who need to update the headshot on your website, your social media profiles, your business cards, or to have a photo on hand for any upcoming presentations or publications.

You can see a portfolio of our work over at our website.

Why You?

What we think we bring to the table is a focus on kindness. When someone sees this photo of you they should get a sense of you. We don’t prescribe you wear certain clothes, or that we do your headshots in a specific place. We’ll work with you to find a good natural pose, but you should be you and sometimes that means we won’t clean up your desk (entirely), or we might go outside because outside is where you feel more alive.

We’re not going to do crossed arms.

We’re not going to do angry looks (although we might for fun).

Gently put, if you need to be intense or intimidating we’re not the right photographers for you.

Money Stuff

We’re not the cheapest photographers (nor the most expensive) and we’re wholly comfortable with that. Our rate these days for one location and one person starts around $225 and goes up from there (rarely down, but let’s talk if you’re working for a non-profit).

Where does that money go though?

There’s a lot that goes into a good headshot and only a small fraction of it happens during the shoot itself. What you usually don’t see is all the work before we take the photos and all the work after we take the photos. There’s packing and setup and travel, then the shoot, then the hours spent afterwards managing files, deleting the bad ones, obsessing over the good, and generally making it as easy as possible for you to be very happy with the results.

Conclusion

All that to say, let’s talk. Send Chris an email or find us in person! If we’re not the right fit we’re extremely happy to point you in the direction of any of the other amazing photographers around Ann Arbor.

Posted in y