Your long Twitter thread should be a blog post

Every once in a while someone on my various timelines shares a link to an interesting thread of posts on Twitter and every time I click on it, its all like “hmm, this is interesting…ugh I sure wish this was posted literally anywhere else with a better reading experience” and then I stop reading because for a site designed to maximize “engagement” Twitter sure isn’t a pleasant place to actually engage with.

Twitter really isn’t a good way disperse large amounts of interesting information, its threaded design is meant for conversation and not blog post sized self-reply threads. Arguably, it isn’t very good for actual discussion either but I digress.

So this is a plea from me to you, potential long Twitter thread poster, please consider collecting those thoughts and posting it on your blog. If you do not have a blog, please consider getting one. I like WordPress but there are other options like Write.as or Medium. I have a lot of reservations about Medium but again I digress. If you really do not want to use a blog for whatever reason I have seen people use a service called TwitLonger to post long posts that are not suitable for threading.

So in conclusion I reiterate – Your long Twitter thread should be a blog post.

Auto playing videos

Usually don’t do posts like these but..

Twitter, Facebook, $SOCIALNETWORKINGSITE:

Auto playing videos are stupid.

  • You are wasting my bandwidth and yours
  • If I wanted to see the video, I would you know..click it and watch it. What a novel concept.

Stop. doing. them.

I do not care if it is the cutest cat video this side of the Milky Way or a horrifying video of a journalist being shot. Just stop.

Thanks,
An Internet user who knows how to click things he wants to watch.

Ubuntu 14.04 Server and IPv6 Temporary Addresses

So, as we all know Ubuntu 14.04 was released today. I downloaded the server ISO to test in VirtualBox.

Let us see what we have here:

ss@trusty-testing:~$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=14.04
DISTRIB_CODENAME=trusty
DISTRIB_DESCRIPTION="Ubuntu 14.04 LTS"

ss@trusty-testing:~$ ip -6 addr show dev eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qlen 1000
 inet6 2001:470:1d:96b:70bb:7393:2071:faa2/64 scope global temporary dynamic
 valid_lft 597675sec preferred_lft 78675sec

Wait what? Am I going blind or is that an IPv6 temporary address [0] on a supposedly server image?

Investigating further:

ss@trusty-testing:~$ sudo sysctl -a | grep tempaddr
net.ipv6.conf.all.use_tempaddr = 2
net.ipv6.conf.default.use_tempaddr = 2
net.ipv6.conf.eth0.use_tempaddr = 2
net.ipv6.conf.lo.use_tempaddr = 2

What the hell? Not only did they leave temporary addresses turned on, they set the sysctl value at 2 which means that the system will prefer temporary addresses over standard ones for making connections. [1]

I asked around and apparently this is the case on Ubuntu 12.04 server as well.

ss@ubuntu-testing:~$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=12.04
DISTRIB_CODENAME=precise
DISTRIB_DESCRIPTION="Ubuntu 12.04.4 LTS"

ss@ubuntu-testing:~$ sudo sysctl -a | grep tempaddr
net.ipv6.conf.all.use_tempaddr = 2
net.ipv6.conf.default.use_tempaddr = 2
net.ipv6.conf.eth0.use_tempaddr = 2
net.ipv6.conf.lo.use_tempaddr = 2

So that is two LTS server releases with IPv6 temporary addresses turned on and set to 2.

Why are temporary addresses bad on a server?

Unpredictability – anything depending on source address validation. Even SLAAC addresses are more predictable because they can be calculated given the MAC address of the NIC.

Ideally, you should be configuring your server’s addresses statically. Leaving temporary addresses turned on on a server image is just a bad default.

References:
[0] – https://tools.ietf.org/html/rfc4941
[1] – http://ipv6int.net/systems/linux-ipv6.html#privacy