Some Bits: Nelson's weblog

The Year of Linux on My Desktop

For the first time in about 25 years I’m running a Linux desktop. It’s great!

I used to use Linux all the time. But even back in the early ’00s all I was running for work was ssh terminals and a web browser and Windows did that just fine. And for gaming you had to have Windows. I had a few years of using a Mac, then switched back to Windows once WSL got good enough to have a local Unix.

But I liked to try Linux out every couple of years. Last month I installed Bazzite on an external drive to test it out. I liked it so much I’m now converting entirely. I even bought a new computer and monitor for it.

A key factor in switching is that Bazzite is a particularly well-engineered consumer product. It installs simply with a bunch of codecs and drivers so that my fancy HDR monitor simply worked. Bazzite is a gaming-oriented OS and it only exists because Valve put a lot of effort into making Linux gaming work with the Proton compatibility layer. These days Linux plays most games better than Windows itself does and thanks to the success of the SteamDeck, a lot of devs are testing on Linux.

KDE Plasma is another key part of my good experience. It took 27 years but Linux finally has a pretty usable desktop environment out of the box. Multiple monitors work, display scaling works, HDR even works! There’s still some rough edges but all in all it’s pretty good. A lot of things work better than they do on Windows.

I’ve been having a lot of fun tinkering with stuff. Quieting fan noise, getting wake-on-LAN working, streaming Plexamp to my Sonos... Some of these things are probably doable in Windows too but it’s sure a pleasure figuring it out in Linux. Having AIs to ask questions of is a big help too, I wouldn’t have found this so easy two years ago.

Bazzite was a great first date but I’ve since switched to Nobara Linux. They’re very similar, both Fedora variants. Bazzite is an immutable OS which is great for an appliance like a TV PC but not so good for tinkering. Nobara is a more traditional “install what you want” setup. I could also just use Fedora directly but the extra customizations and drivers add enough value add I am glad to have it.

AI enhanced search

LLMs are good search helpers. Here’s three search tools I use every day. All of these use an AI to synthesize answers but also provide an essential feature: specific web search results for you to verify and further research. I use these for conversational inquiries in addition to more traditional keyword searches.

Phind is an excellent free LLM + search engine. The AI writes an answer to your query but is very careful to provide footnotes to a web-search-like list of links on the right. I use this mostly for directed search queries, things like “what’s an inexpensive TV streaming device?” where I might have used keyword search too. The Llama-70b LLM that powers the free version is quite good, sometimes I have general conversations with it or ask it to generate code.

Bing CoPilot has a very similar output result to Phind. I find it a little less useful and the search result links are less prominent. But it’s a good second opinion. Bing has been a very good search engine for 10+ years, I’m grateful to Microsoft for continuing to invest in it. CoPilot results are sometimes volunteered on the main Bing page but you often have to click to get to the ChatGPT 4 Turbo enhanced pages.

Kagi is what I use as my general search engine, my Google replacement. It mostly gives traditional keyword search results but sometimes it will volunteer a “Quick Answer” where Claude 3 Haiku synthesizes an answer with references. You can also request one. I think Phind and CoPilot do a better job but I appreciate when Kagi intercepts a keyword search I did and just gives me the right answer.

Google has tried various versions of LLM-enhancement in search, I think the current version is called AI Overviews. It’s not bad but it’s also not as good as the others.

Not mentioned here: ChatGPT or Claude. Those are general purpose LLMs but they don’t really give search results or specific references. In the old days they’d make up URLs if you asked but that’s improving.

8BitDo Game Controllers

8BitDo makes good game controllers. A wide variety of styles from retro to mainstream, with some unusual shapes. And wide compatibility with various systems: PC, Macs, Switch, Android. They’re well built, work right, and quite inexpensive. A far cry from the MadCatz-style junk we used to get.

The new hotness is the Ultimate 2C, an Xbox-style wireless controller for the very low price of $30. But it works great, doesn’t feel cheap at all. The fancier mainstream choice is the Ultimate 2.4g at $50 which includes a charging stand and extra reprogrammability.

But what’s really interesting to me are the odd layouts, often small or retro. The SN30 Pro is particularly interesting as a portable controller. SNES-styling but a full XBox style modern controller with two analog sticks, easy to throw in a suitcase.

There’s a lot of fiddly details for this class of device. Controller type (XInput, DInput, switch, etc), wireless interface (Bluetooth or proprietary), etc. 8BitDo makes good choices and implementations for all that stuff I’ve tested. They seem to work well with Steam. They’re a popular brand so well tested. It helps that PC game controllers have mostly standardized around the Xbox layout and XInput. Steam can patch over any rough spots for older games.

PreSonus Eris speakers

PreSonus makes good computer speakers. They’re marketed as “reference monitors” but at $100 for a small set I have my doubts about their referenceness. Fortunately I have a tin ear and they sound just fine for my computer playing YouTube videos, compressed music, games. Wirecutter agrees.

The specific ones I have are these 3.5" Bluetooth speakers for $150. Inputs are RCA line-in, balanced, and Bluetooth, also an Aux-In and Headphone jacks on the front. Decent amplifier, plenty loud for an office. There’s 100Hz and 10kHz equalization knobs and a Bluetooth pairing button in the back. The “Gen 2” version includes an optional standby mode for power savings which seems to work fine. The cabinet is MDF and while it’s light it doesn’t have that hollow sound of cheap plastic. The website only promises 80 Hz so these are not the speakers for bass thumping.

Fifteen years ago I recommended the M-Audio speakers. IIRC their quality went downhill, maybe they went to plastic enclosures? I also had some Creative Mackie speakers but they have a manufacturing problem that causes them to fail after a few years. We’ll see how long these PreSonus ones last.

I’m self-conscious how this post looks like a spammy marketing affiliate page written by an AI. It’s not! I just like the product.

Phanpy, a Mastodon client

Phanpy is good software for reading Mastodon or other Fediverse posts. Astonishingly it’s an open source passion project from a single developer, Chee Aun. Its quality is extraordinary, better than most commercial social media software.

There’s so many good things about Phanpy that it’s hard to know where to start. It has several innovations for reading social media. My favorite is the Boost Carousel, a way to collapse the ordinary spammy boosts / retweets so they don’t overwhelm original posts. There’s also the catch-up UI, a novel approach to the problem of helping you read the last 12+ hours of posts quickly.

Mostly I like Phanpy because it’s just very high quality. All the little things work so well, like the post UI and the image display and the notifications. The account switcher is great too. So many software products are full of rough edges and bugs and annoyances. Phanpy is immaculate.

It’s easy to get started. Phanpy runs as a PWA so there’s not even really an install, you just visit the website, approve the login from your main Mastodon host, and you’re up and running. I use it that way in my browser on desktop but have it installed as a formal PWA on my phone. Works great, including notifications.

Honestly surprised a product of this quality is an open source project. AFAICT Chee Aun has worked full time on it for at least a year and he is very good at what he does. He has a modest request for sponsors but I hope somehow his work ends up paying him very well or compensates him in some other way.

Kagi is a good search engine

Google search is overwhelmed with spam these days. Back in January I switched to Kagi and have been happy with it. It’s not free but there’s a limited trial to check it out. I pay $10/mo for unlimited access. Turns out I do about 50 searches a day.

I’m unclear on how Kagi works or why it’s better than Google. It seems to be returning more quality results and less SEO-churn old-but-look-new pages. I see some AI-padded content on the results at times but mostly better stuff. I assume under the hood it’s mostly Bing. Whatever they’re doing works for me, a bit of a surprise since the similar DuckDuckGo has never succeeded for me.

Kagi is ad-free. It has some interesting advanced features but I don’t use them often. Honestly most of my queries are navigational. Kagi does have a new sidebar LLM feature where it generates a synthetic answer with references, much like Bing, sometimes I find that useful.

My biggest annoyance is Kagi’s local and maps search is nowhere near as good as Google. It’s Apple Maps; their cartography is good these days but they don’t have the local search data with user reviews. Also Kagi doesn’t work in incognito mode because I’m not logged in. They have a workaround for it but then you lose anonymity.

I have a feeling I’m going to be changing search engines several times in the next few years. It’s a shame Neeva didn’t make it, I feel like now is the best time ever for serious search competition. I’m grateful Bing is still viable. And maybe Google will finally get its act together.

Restic

Restic is good backup software. It’s a command line tool for backing up filesystems to various local and remote options. It is well documented, easy to set up, secure, and quite fast. It’s a very professional product. I am now backing up all my Linux systems with it. Note it’s a sysadmin tool; I don’t think there’s a friendly consumer GUI.

The underlying data model is its genius. Backups are stored in a repository, some complex hash-index blob store that I don’t understand at all. But it seems able to quickly store blocks of data and de-duplicate them so incremental backups are efficient. It’s encrypted and the blobs in the repository are stored in a simple filesystem. That makes it easy and safe to backup to all sorts of places including untrusted remote stores. I’m doing remote backups to BackBlaze’s S3-like filesystem for about $1/month.

The repo format means you need a working copy of restic to restore your files. I’m OK with that, it’s open source. And the tool is great. It has options for bulk restore, individual file restore, interactive restore via a FUSE filesystem. Also a check command you can use to verify subsets of the backup on your own schedule.

The basic command line tool is good but limited. I’m using resticprofile as a frontend. You set up a single config file and it takes care of running restic for you, even scheduling itself in cron. It’s a bit idiosyncratic but seems to work fine once set up. backrest is another frontend, I haven’t tried it.

Shout out to rsnapshot, I’ve been backing up with it for 18 years now. Time for something new. rsnapshot is pretty slow on lots of little files and remote backups were awkward. Years ago I said 5 minutes to do an incremental backup of 165GB was good; that takes more like 5 seconds in Restic now.

Proxmox

Proxmox is good software for a home datacenter. It’s an OS you install on server hardware that lets you easily run multiple virtual machines and LXC containers. It also manages disk storage and has some more complex support for high availability in a cluster, distributed storage via Ceph, etc. But even with a single small server running a single VM Proxmox offers advantages.

my home server

I’ve had a Linux server in my home for 20+ years now. Every few years I have to rebuild it, often from the ashes of failed hardware, and it’s always a tedious manual process. Now my server is truly virtualized, a nice tidy KVM/QEMU virtual machine with a disk I can snapshot and back up. And migrate an exact copy to new hardware in minutes.

Right now I’m mostly running my stuff in one big VM under Proxmox that I migrated from the old server. But I’m slowly moving services to separate VMs and LXC containers. So now my SMB server for Sonos lives in one container, and my Plex server in another, and my Unifi router manager in a third. All running isolated from each other. This feels tidier, more manageable.

Proxmox does a lot of nice things for home-scale servers. It handles ZFS for filesystems, including snapshots and backups. It has a nice web GUI for managing things, even graphical consoles where needed. And I like how it supports both VMs and containers as a first class things. There’s other ways to manage guest systems, like Docker (containers only) or VMware ESXi (proprietary, VMs only). Proxmox feels the right scale for me. I’ve spent about a month tinkering with it and like the software quite a bit. It’s usable, well documented, and seems well designed.

Obsidian

Obsidian is good software for taking and organizing notes. There are many apps for this task, Obsidian is my current favorite. In the past I’ve used a text file, SimpleNote, Standard Notes, Joplin. I never used emacs org-mode nor Evernote. Obsidian works reliably and is simple yet powerful.

The core Obsidian data model is “a folder of markdown files”. That’s it, really basic, and the files are easily usable as ordinary files. There’s natural support for links between notes. There’s also a metadata option I don’t use. I appreciate it’s easy to move files in and out of Obsidian.

But where Obsidian really shines is the plugin ecosystem. I don’t actually use many plugins, just HTML export and system tray. But I appreciate the power. If you check the reddit you’ll find an enthusiast community that does a lot more complicated stuff, turning their Obsidian archives into 1000+ article infobases. Me, I just write grocery lists and blog posts.

Obsidian is not open source. They’re thoughtful about why not. (Logseq is a popular open source alternative). The core product is free and works great. I am paying $96 per year for syncing. It’s pricy but it works well and I want to support the company. You can do your own free sync but none work as easily.

I want to give a shout-out here to Simplenote, an excellent and venerable free product. And after a brief lull development started again in 2020. Kudos to Matt and Automattic for supporting that tool. I like Obsidian’s fanciness but Simplenote is pretty great.

Cronometer is a good food diary

Recently I switched to a new calorie counting app, Cronometer. I’m quite happy with it. It’s a huge improvement over MyFitnessPal (MFP) or Lose It and is not exploitative like Noom.

The key improvement with Cronometer is accuracy, particularly good data sources for nutrition information. MFP offered obviously wrong entries from random people, sapping my confidence. Also it’s quicker to log things from a trusted database.

And the app works well. Cronometer’s UI is modern and easy to use. It doesn’t display extra distractions. MFP’s insistence on scolding me about things I don’t care about was a bummer. The data sync is fast. And they have a good data export, something MFP won’t do.

I have some minor complaints. Cronometer is very excited to track macros and every single obscure nutrient (threonine, selenium?!). I really only want to track calories. Fortunately the other things don’t take up too much space. They also display ridiculous calorie precision in the diary. But that feels like a rare UI mistake, not a general design ethos.

The free version is pretty complete. The $55/year paid plan adds a bunch of stuff, the one I care about is dividing your diary up into individual meals.

I have a long history with food diaries, more off than on. Having a good app that I trust and is easy to use is important.

Windy.com is good weather

I’ve found a mobile app for weather I finally like enough to be happy about paying for. Windy, best known for its website. The mobile app has extra phone features like notifications and home screen widgets. Also its UI is a little more understandable.

Windy makes a strong first impression with its colorful animation of winds. But wind speed is not that interesting to me. Windy also does an excellent job displaying radar, air quality, current thunderstorms, etc. Even weather station observations and webcams. All displayed beautifully and uniformly; that’s not easy!

But my favorite thing is the forecast view, hidden away in the website but a bit easier to find on mobile. It’s a lot of detail packed into a very small tabular display. I appreciate that it shows the full forecast by hour going out for days. Also the choice of forecast models; their website explains the options. It’s all very nerdy in the way I want. It’s not great at “weather at a glance” but is good for a deeper understanding.

Their business model seems to be a $19/mo yearly subscription. Their privacy policy is clear they won’t sell your data to third parties. The app says “we do not store your location on our servers”. Most weather apps are sleazy and sell your location to advertisers and data brokers.

Sadly they have nothing like Dark Sky’s unique microforecasts. Nothing to say “it will rain where you are standing in 7 minutes”. But they do have excellent presentation of large scale traditional forecasts.

Liftmaster 87504-267

This is gonna sound silly but one of the nicest home improvements we've done recently is install a new garage door opener, the Liftmaster 87504-267. It works so much better than my old insecure garage door!

Internet access is the surprise best feature; I use it all the time. Mostly to walk in and out of the garage door without my car. There's also a keypad remote I can mount outside so someone can punch in a code to open the door. Setting this all up was easy and reliable. There's even a way to give Amazon access to open your garage for deliveries.

The opener also has a camera. I would have skipped that if I'd known, saved some money. But it's actually quite useful! If I get a notification the garage door opens I can easily see on my phone what's going on. Basic live views seem to be free, there's a subscription if you want stored video.

Ken's favorite feature is the motion sensor that turns the light on. The lights on the unit are bright, it's enough to light the whole garage without having to flip a switch. I also appreciate there's a battery backup built-in so if the power goes out I can still easily open the door. The drive itself is smooth and quiet too, belt drives are a real improvement.

The #1 upgrade you should do for an older house is a dishwasher; they got a lot better about 15 years ago. But #2 may well be the garage door opener.

Cloud service data dumps

After my Goodreads disaster I went and got dumps from every cloud service I care about that I could think to try. 13 in total, Twitter and Facebook and others. I'm impressed with the results.

The best of the data exports comes from Google Takeout. They were a pioneer in making a proper product out of data export and the Google Data Liberation Front did a lot of activism both within Google and externally to sell the idea. It's not an obvious thing for a company to do; letting customers download all their data opens the door to competitors. But it's the decent and right thing to do and it allows your power users to do complex things without much support.

Data export is also increasingly the legally required thing to do. The GDPR enshrines a right to data portability in the law governing businesses in the EU. California's CCPA also has a data access right. It's a little weaker than GDPR's but a lot of sites seem to just provide GDPR to everyone, or at least to Californians. These are excellent regulations; they protect consumers and enable competition. They do put a regulatory burden on the companies implementing them but it's not too huge and the technical infrastructure has other uses too. (Imagine, Goodreads could have backups of user data!)

One thing I hadn't appreciated is how hard it is to build something to use the data. Recreating a product like Goodreads or Gmail is a lot of work! In practice the exports seem most useful when some other commercial service is designed to import them. There's not a big ecosystem of open source tools to work with export data. Some of the data exports I got are pretty rough, low level dumps in CSV or JSON format. Then again Twitter has a whole working live webapp, you can browse and search nicely formatted tweets right from the files.

My Google data is the most valuable to me; I wrote up notes on what I found in my 67GB export. It's impressive; Takeout covers some 50+ Google products, many of which have done a thoughtful job making their exports another designed product feature. Not only did the Data Liberation Front get the company to export the data but they created an infrastructure and culture of supporting and improving those exports. It's a good thing.

Starlink advice for interested customers

Starlink is good technology. I’m posting this blog entry from space. By which I mean Starlink, SpaceX’s new LEO satellite Internet service. I’ve been beta testing it for six months and using it exclusively for two. It is terrific. Some notes from a United States perspective.

Does it work well? Hell yeah! It’s more like having cable Internet than satellite. Over the last month my average bandwidth has been 100Mbits/s down, 12Mb/s up. Average ping to 8.8.8.8 of 41ms with 0.5% packet loss. Bandwidth is highly variable (50-200Mbps) but latency is pretty solidly 30-50ms. The main failure is occasional outages of ~10 seconds. That got a lot better mid-July with a Starlink change and will only get better as they launch more satellites. The service is still technically beta and there are some rough patches but it’s totally usable.

Is Starlink for you? Maybe. If you can get wired service (cable, fiber, faster DSL) that is probably a better choice. If you’re in a poorly served rural area in Ajit Pai’s America and you’re struggling with ViaSat or Hughes or using cellular, definitely. For me it’s an upgrade to my 12/1 Mbps fixed wireless service.

Will Starlink work at your house? Probably! It requires a clear view to the north. The free Starlink mobile app has an augmented reality tool to show you whether you have a good view. A few small obstructions are OK but if you live in the middle of a bunch of trees you need to go higher on your roof or get a mast.

Can you get it? Probably not soon. They are enormously back-ordered; Starlink has a limited amount of bandwidth per satellite and they are slow to add new users. They just passed 100,000 installs globally and are rumored to have 500,000+ customers on the waiting list. The best thing you can do is pre-order and put down a $99 deposit. It may be a year. (I got super lucky.)

Is it nerd friendly? Totally. You can use your own router; Starlink provides one but does not require it. Dishy has an open gRPC interface for getting detailed stats. The Internet service is quite solid and not messed with in any way I can tell. They sorta support IPv6 already and promise more. The main drawback is that (at least in IPv4) the service is cgNAT, you really can’t run a server behind Starlink in any reasonable way. The cgNAT is for good reason: they’re doing some very sophisticated routing, your packets may be relayed through several base stations hundreds of miles apart and it’s remarkable you have a stable external IP address at all.

Will Starlink succeed as a business? That’s hard to say. The program is still beta and currently has no bandwidth caps or significant throttles. And it’s $99/month: a lot by US urban ISP standards but competitive for rural areas. The problem is the satellites can only handle so many users and it seems too early to tell whether it works out to be profitable. Launching thousands of satellites is expensive but SpaceX are experts at that. Also crappy companies like ViaSat keep suing to stop Starlink because they can’t compete. Amazon is trying to make up for being years behind by trying to get the FCC to harass Starlink. The legal attacks seem to be failing so far in the US but you never know.

What’s next for Starlink? They launched their first full shell of satellites earlier this year, then took a pause. They seem to be fine-tuning algorithms and transceiver power settings right now. The next major change is a plan to use laser links so satellites can route packets directly (currently everything is relayed to the ground). It seems like a very hard problem but they are serious about doing it; ultimately Starlink might be better than wired service.

I’m not an Elon Musk fan but I have to say Starlink is amazing. And audacious; I never would have believed it would work (remember Iridium?). But it does work and it’s been a significant upgrade for me, so thank you SpaceX. The hilarious thing is the whole idea of Starlink apparently is about Mars; the project started as a way to design networking infrastructure for a colony on a new planet. Oh and then completely upended Earth’s ISP market as a sort of proof of concept.

Ceptics travel adapter / charger

The Ceptics travel adapters are good hardware for American world travellers. They combine a USB charger with a passive plug adapter for AC. Carrying one of those is enough for me for a multi-week vacation, providing plenty of charging for my laptop, phone, tablet, etc. No need for extra chargers or adapters. They come in different models for European, Australian, UK, etc sockets. They also make a universal adapter kit but it’s a lot bulkier.

You’d think a passive AC adapter would be a simple thing but a lot of them suck. Ceptics’ solution makes for a plug that sockets reliably and firmly. And it has a reasonable workaround for polarization and universal 3 prong grounding. You may not get a true third wire for ground (ie, the Type C European plug is only 2 prong) but at least your laptop charger will physically plug in and function.

The Ceptics’ USB charging works well. USB charger quality varies greatly. I can’t really judge what’s inside the Ceptics charger except to say that it never gets warm and seems to provide the right magic signals to charge my iPad quickly.

Simplenote

Simplenote is good software. It’s a very simple cross-platform note taker with excellent cloud synchronization between devices. It’s perfect for drafting a few paragraphs of text, keeping a simple to do list, or jotting down an address while you’re on the phone. Under the hood it’s got some remarkably sophisticated features like version history, note sharing, etc. But all that is out of the way if you just want a box to type in.

Simplenote is free software, a gift from the folks at Automattic. They’re mostly known for WordPress but they have a surprising number of other public good services they run, mostly for free or with value-add purchases. Akismet, Longreads, Gravatar, Cloudup; I had no idea these were all Automattic. Good for them.

Audi Driver Assist

I got my first new car in 12 years, a 2017 Audi A3. Happily I was able to find one of the few A3s that has Driver Assistance, the fancy adaptive cruise control and lane holding system. Love it, so glad I got it. The feature is more common on the high end Audis, but for the A3 you have to get the “Prestige” trim level which is not commonly stocked by California dealers.

The simple part of the system is adaptive cruise control. I set my speed to the nearest 2.5mph, then it paces the car in front of me using radar sensors. You can select how close it wants to follow. It will bring the car to a full stop if it has to. It’s great in heavy traffic on I-80, the only drawback is I’m now less aggressive about switching lanes to get around someone slow. If only every car had this feature, we could smooth out a lot of traffic jams as everyone drives a constant speed.

The other fancy feature is active lane assist. The car detects highway lanes with cameras. If I start to drift out of the lane it gives a bit of a nudge to the wheel. Ostensibly it’s to remind me to hold my lane, but the nudge is strong enough it actually sends the car back in the lane by itself. It’s very much not an autopilot though, the car complains after ~10 seconds of nudges. And the sensor isn’t reliable in the face of bad paint or unusually wide lanes, you really can’t rely on it all the time.

I like how both technologies are like little daemons helping me drive. I’ve written before about the dangers of full autopilots that expect a driver to take over if something fails. The A3 systems aren’t full autopilots, I’m still engaged in the task of driving at all times. Although it does require less attention. I’m still learning to trust the daemons, sometimes when the lane holding feature moves the wheel I instinctively try to countersteer away, the exact wrong thing.

All the other electronics in the A3 are very nice too. The virtual cockpit display is beautiful. The maps are good. The stereo plays plenty of audio formats, although the 10,000 file limit on SD cards is awfully dumb. I’m even liking Apple CarPlay.

I’m hoping the next car I buy will have a full autopilot. Although once that tech reaches mainstream it may no longer make sense to buy a car.

Discord: Slack for consumers

Discord is good software. It’s a sort of Slack clone aimed at the gamer market, with the marquee feature being group voice chat. But the non-voice features work well too and there’s no reason the product has to only be used by gamers. It’s particularly interesting because Slack is clear that it is an enterprise product. All those free-tier Slacks of 100s of people don’t work very well. Discord could capture the consumer market.

Discord works well and is free. The browser client, desktop client, and mobile clients are all solid and reliable. The voice chat is good quality. The login model works better than Slack if you are a member of multiple communities. It’s very easy to get Discord up and running as a Slack replacement and as a Teamspeak / Skype replacement for voice chat.

But the product still has some rough edges. The typography and design are not as beautiful as Slack. There’s no reacji, no custom emoji support. The API is not yet gelled, although the unofficial stuff works great. Discord is also not an enterprise product; there’s no message search, little file sharing support, fewer administrative features. But it’s a very good free consumer product.

Speaking of free, so far Discord hasn’t monetized. They say the core functions will always be free and they will sell “optional cosmetics like themes, sticker packs, and sound packs”. I’m a little skeptical that’s going to be enough but I appreciate they’ve at least not talked about ads (yet).

The company has $30M in venture funding from top tier investors. It was founded by the team that built OpenFeint, the iPhone gaming social system that Apple destroyed when it launched its terrible GameCenter product. I’m excited that this team is building something like Slack, but for consumers instead of companies.

Hover is a good registrar

I am a happy Hover customer. I escaped GoDaddy a couple of years ago and moved all my domains to Hover and have been quite pleased with the service.

What’s nice about Hover is it’s no bullshit. It’s a simple registrar with simple DNS service. And excellent support with questions answered by real, thinking humans. They’re not the fanciest registrar. They don’t offer all the TLDs in the world, their DNS services are limited, they’re not the cheapest. But they are simple and trustworthy. In a business as scammy as domain names it’s nice to buy service from someone decent.

I just had a terrific experience where I asked them why there’s no whois privacy offered on one of the new novelty TLDs. I’d seen a few domains registered there with hidden whois data but Hover wouldn’t do it for me. We went back and forth a few times and he finally explained that the TLD’s policy didn’t allow for whois privacy, but that other registrars might do it anyway and that if I really wanted whois privacy I should use them instead. I appreciated the frank answer.

Ubiquiti: prosumer wireless networking

The Ubiquiti NanoStation loco 5M is good hardware. It’s speciality gear for setting up long distance wireless network links. All of Ubiquiti’s networking gear is worth knowing about if you’re a prosumer-type networking person. I will probably buy their wifi access points next time I need one.

I’m using two NanoStations as a wireless ethernet bridge. My Internet up in Grass Valley terminates 200’ from my house. I couldn’t run a cable but a hacky wireless thing I set up was sort of working. So I asked on Metafilter on how to do a wireless solution right and got a clear consensus on using Ubiquiti equipment. $150 later and it works great! Kind of overkill; the firmware can do a lot more than just bridging and the radios are good for 5+ miles. But it’s reliable and good.

The key thing about Ubiquiti gear is the high quality radios and antennas. It just seems much more reliable than most consumer WiFi gear. Their airOS firmware is good too, it’s a bit complicated to set up but very capable and flexible. And in addition to normal 802.11n or 802.11ac they also have an optional proprietary TDMA protocol called airMax that’s designed for serving several long haul links from a single basestation. They’re mostly marketing to business customers but the equipment is sold retail and well documented for ordinary nerds to figure out.

I still wish I just had a simple wire but I’ve now made my peace with wireless networking. It works well with good gear in a noncongested environment. I wrote up some technical notes on modern wifi so I understood the details better. Starting with 802.11n and MIMO there was a significant improvement in wireless networking protocols, it’s really pretty amazing technology.

A small UPS

The CyberPower CP350SLG is a good small uninterruptible power supply. Its only rated for 250W and it only has a few minutes of battery life. Not suitable for a big computer. But it’s perfect for backup power for network gear, like a router or a modem or the like. And it’s pretty small, just 7x4x3 inches. I made a mistake and bought APC’s small UPS first and the damn thing is ungrounded, which is ridiculous and dumb. I’ve had better luck with CyberPower UPSes anyway and this small one is exactly what I needed.

I’m a big fan of small UPSes. I don’t need something to carry me through a 30 minute power outage, I just want some backup that will keep my equipment running if the power drops for a couple of seconds. Because PG&E, you know? It’s a shame there’s no DC power standard, I bet you could make a DC-only UPS 1/4th the size with a lithium battery. But instead it’s all lead-acid batteries and producing 110V AC just to be transformed back to DC by all the equipment its powering. (That APC UPS does have powered USB ports, a small step towards DC UPS.)

Some day I should look into whole-house UPS units. A quick look suggests it’s about $2500 for 2.7kW, plus installation. This discussion suggests $10k is more realistic if you really mean a whole house.

Jupyter Notebooks: share exploratory coding

Jupyter Notebooks (née IPython Notebooks) feel like an important technology to me. It’s a way to interactively build up a computer program, then save the output and share it with other people. You can see a sample notebook I made here or check out this gallery of fancy notebooks. It’s particularly popular with data scientists. If you’re an old Python fogey like me it’s kind of a new thing and it’s exciting and worth learning about. I’m focussing on Python here, but Jupyter is now language-agnostic and supports lots of languages like R, Go, Java, even C++.

The notebook is basically a REPL hosted in a web browser. You type a snippet of code into the web page, run it, and it shows you the output and saves it to the notebook. Because the output is in the browser it can display HTML and images; see cells 6 and 7 in my sample notebook. There’s excellent matplotlib support for quick data visualization and lots of fancier plugins for D3, Leaflet, etc if you need.

Notebooks are made to be shareable. My sample is basically a static snapshot of a program’s output, there’s no Python running when you view it on GitHub. But you can also download that file, run the Python code on your own computer, and modify it however you want. That makes it an incredibly useful pedagogical tool. There are complex notebooks you can download that are effectively whole college courses in computing topics. And you can keep your own notebooks around as documentation of the work you’ve done. It’s a very powerful tool.

Behind the scenes what’s going on is the browser window acts like an attachable debugger. There’s a headless IPython server process running somewhere and the browser connects to it. It’s easy to run IPython yourself on your own machine or there are other options including cloud hosted live notebooks. Most of the display magic works by having objects define their own _repr_html_ methods, that’s what lets Pandas show that nice HTML table in cell 6.

Installing and starting IPython is pretty simple, just install it with pip and run ipython notebook. You’ll also want %matplotlib inline for inline plots. Notebooks seem particularly popular with data scientists; if you want a full Python data environment with Pandas, scikit-learn, etc then the Anaconda distribution is an easy way to get going.

Astound cable internet in SF

Astound is a good ISP. I started getting Internet from them a few months ago, upgrading from a $50 6Mbps DSL link to a $70 100Mbps cable link. And it’s like I can see through time. The difference in usability is astonishing. Equally importantly, Astound has been entirely reliable and trouble-free.

The key thing is Astound is not Comcast. Comcast is an evil company with a long history of breaking TCP/IP in various ways that harm customers. Astound just provides pure, sweet, clean bits. Installation requires they bring their own coaxial from the pole to your house. They also offer phone and TV packages. The customer experience is a bit squirrely, I wouldn’t count on them for email hosting or tech support. But the basic Internet service is terrific.

I’d previously been a very happy Sonic DSL customer. They are also a terrific independent ISP with fantastic service. Unfortunately DSL is limited by the technology, the best they could deliver to my house is 12Mbps and that would have been significantly more expensive than Astound. Sonic is now working on fiber-to-the-house, including San Francisco, which should be terrific if they can do it.

We’re very lucky in SF to have a competitive ISP market. We have two DSL providers, two cable providers, and a surprisingly robust fixed wireless provider in MonkeyBrains. Most of the urban US only has two options and large parts of the rural US don’t even have that. The Sonic CEO’s 2011 blog post about broadband duopoly is fantastic background for how we got to have such crummy service in the US.

Ancestry.com; researching uncertain data

Ancestry.com is a good web site. It’s a tool for researching and maintaining family history, genealogy. It’s also a remarkably sophisticated database, data repository, and user interface with a lot of lessons for people who design webapps. I’m particularly fascinated that their target market is older people, your grandma who’s not so good with computers but has gotten interested in family history. But in no way is Ancestry dumbed down.

The web UI is great. The primary view is a visual family tree, a refocusable graph view that’s not much like a web page but works great in the browser. You then click through on a name to get to a person’s profile page that’s more like a normal document view. From there you do extra research, add information, etc.

The facts and sources tab on a person’s profile is my favorite part of Ancestry. They don’t just track a fact like “Born on 29 May 1917”, they also track the source of that fact, like “birth certificate” or “census record”. With a link right to a scan of the source document with the relevant information highlighted. Most people’s genealogy is full of bad data. (No, you’re probably not related to that 16th century king.) Ancestry provides a model for establishing the veracity of the data you record. Crowdsourced databases like OpenStreetMap and Wikipedia would benefit from more explicit attribution.

Ancestry is particularly useful because they have a fantastic collection of American genealogical records. The census records are the ones I use most frequently. Meticulously transcribed images of 100+ year old handwritten pages, completely searchable on fields like name, address, age, etc. They’ve collected all sorts of other data too: immigration records, social registers, railroad payrolls.. All this diverse hand written data, presented in a uniform computer search interface. They even proactively find hints for your family members for you to review and add to your data.

The app has some problems. Most of their data collections are only useful for researching Americans. Grassroots genealogists complain about Ancestry being too commercial and proprietary (see GEDCOM). Some people snark about the site being so grounded in Mormonism, although that criticism seems unfair to me. I’ve enjoyed doing a bit of family research in Ancestry. Mostly I’m impressed with the usability of the web app given how complex the data is.

TCPINC

IETF has an interesting new working group: TCPINC. “TCP extensions to provide unauthenticated encryption and integrity protection of TCP streams”. Practically what this means is “make it harder for third parties to eavesdrop on your Internet traffic”.

In theory IPsec was going to solve this problem for the Internet, but it is a failed technology. Right now the best we have is HTTPS for some websites. But wrapping every network protocol in an SSL layer is stupid, why not just encrypt the network? TCPINC is making a lot of compromises. “Unauthenticated” means they are punting on the harder half of the crypto problem and will leave users vulnerable to man in the middle attacks. It’s TCP only, and has to be NAT-compatible at that, so it won’t be a complete clean solution. But compared to the status quo of a lot of traffic not being encrypted at all, it’s a good choice. Making it a TCP extension should mean it can be deployed incrementally without a lot of pain.

There’s a few related draft specs already, such as draft-bittau-tcpinc-tcpcrypt-00.txt. tcpcrypt.org has more info as well. The mailing list archives go back to March 2014. The IAB just came out with a statement in favor of encryption, which is nice support.