Archives, page 3

Feeds are back up
Date: 2018-Feb-07 05:36:42 EST

Spent some time tonight getting the Atom feed working again with my blog; it was pretty annoying because the terminology around field names and semantics for RSS and Atom differ a lot, and also the Atom library I decided to use in Go is underdocumented in places. Still, I think the Atom feed back then was more prominent and so it was important to replace it before clients timed out. Got it, and I set up an apache redirect rule to get the old clients plumbed to the right place. Feeling good about it.

It's taking me some getting used to to have this outlet again; for a long while I just had G+, and it didn't encourage casual talking about whatever. I guess there was twitter, but even now the brevity doesn't work so well for me.

Retaining Cyan
Date: 2018-Feb-08 00:19:10 EST

I've been a bit annoyed recently at the worry of database handle leaks in Go code. defer might not be enough. I'm hoping my most recent patch will help; as of the previous one, it looked like after about a day the server exhausts its supply. I wish the scoping rules for Go were saner. Go's kinda deceptive in that while it's more dynamic than C, it's not quite dynamic enough to be really civilised. The first glance is good, but in the long run it's meh. Title of this entry relates to this; when the handles are exhausted, the software's database needs are not met and it can't supply CSS to colour its entry screen cyan.

Today was full of meetings. Which is pretty cool when they're all about science, but rough when one lacks the background for some of that science. The machine learning reading group keeps challenging me, but the idea of turning Bellman equations into code led me down some interesting routes, among them thinking about how memoisation is made complicated by distributed systems. I think memoising is pretty much essential to making these things work well, but as a key idea in it is keeping access times for results faster than computation, we'd immediately run into the challenge of how to do that in a distributed system. Entirely separate per-worker caches? Doable, but that'd waste a fair bit of computation. Regional with mild access penalties? Workable. Global? Those computations had better be expensive to make that worth it. There is some smarts that one could work in there ; find some way to bias job distribution along lines where the caches are more likely to be effective. I've been thinking about ways to do that.

A few meetings back I started thinking about the relationship between fourier transforms (and variants on them) and factorisation of numbers. It feels strange that I think so often about factorisation and primes now; it never was a strong interest of mine before. Probably an effect of being around other science-y people again.

I don't place much stock in "brain training" companies, but this question and the nuanced discussion after it was pretty great at showing the distinction between narrow economic/mathematic understanding of a problem and bigger-picture views; "the best deal" for bulk buys of a product is in some senses fairly different from the best per-unit price, in that if it's something you don't need a lot of, storage (or discard) costs easily outweigh the transaction efficiency. A lot of people make this mistake in a lot of contexts.

I've been meaning for awhile to write about the evolution of how I understand political difference. I've come to think about politics as being abstractions on various spectra for positions on beliefs and styles of judgement, captured by tribes through identity and taboos. What this means is that people might naturally have a variety of beliefs on a lot of things, and each individual topic typically has a spectrum (or a space, if it's a complex topic) of positions possible. At least in theory people can have almost any permutation of beliefs, particularly but not only if there is no deeper philosophy involved in bringing one or another order to those beliefs and they don't generally try to make them consistent. Styles of judgement are also a big part of this, with a 3-polar model of issues capturing most variation. In this, one can:

  • neglect an issue - decide it is best handled in a hands-off way. When people are involved, we'd let them make their choice and deal with the consequences
  • nurture an issue - decide that offering resources, programmes, and positive support and possibly distractions are the best way to handle the issue.
  • discipline an issue - decide that penalising or blocking some behaviour on the issue is the best way to handle it
I think we often apply two to three of these approaches to issues. Finally, because most people don't like standing alone on issues and they find strength and comfort in holding them together, identities turn into tribes, and tribes lock off consideration on some issues by establishing and enforcing taboos. They often extend beyond the tribe itself, either through accident or through capturing of laws and rules in organisations. Tribes act to reduce variability on issues.

Still trying to get Tortfeasor to eat more food. I keep worrying about his rate of decline. Particularly bothersome is that for a long time he's occasionally walked around and theatrically plopped onto his side. I always took it as him being silly. His recent balance/strength issues and how he does that more nowadays recolours that past event in ways that make me worry I've been a neglectful cat-dad. The fading hours of a longtime companion are sad times.

Claiming Danger and its Context
Date: 2018-Feb-10 20:43:07 EST

On LinkedIn, a former contact posted a product their company makes that seems to have unfortunate specifics and phrasing to me. Although I don't think there's any actual racist intent there, so it's at least morally clear by my book. As a general principle I believe that intent is how we should view the permutation of somebody speaking and their speech (and I think this delicate phrasing makes it work out ok with the idea of "Death of the Author"). And that if there's no ill intent, then no matter what symbols are accidentally used, it's ok. But this reminds me of something in my upbringing that I heard to temper this slightly, with this caution being something that I believe in passing on alongside the general comfort with talking as one pleases:

So, I'm not saying what you said was racist, and in fact knowing you I believe it was not. I don't claim you shouldn't've said it or that it was wrong to say, or even that you should avoid saying it in the future, but rather letting you know that some people will possibly misunderstand what you said because those words or things like them have on occasion been used to say things very different than what you meant, and they're unable to understand them outside that context. Many of them are legit crazy and even if you explain your meaning they'll still find ways to come after you because they're trained like a pavlovian dog. If you want to push through all that and weaken these associations, I wish you luck as you'd be trailblazing a path for more careful thinking, but I want you to know what kind of thing you're signing up for.

(substitute sexist or whatever other word is appropriate for the word racist, and dumb it down for young audiences)

I think this kind of warning is something only people of specific political persuasions would give; it's a cultural marker of politics like mine on these issues. But I've heard people give other people warnings like these, so I believe it's not a tiny part of the population that's so careful about belief and speech. More broadly I'd tie it to the idea of some parts of our culture placing a lot of importance to living a creed (whether that's a religious one or not, and I know a lot of individualist religious folk really don't get spoonfed their creeds so much as treat it as a character-building adventure over one's early life).

Thoughts on Bill Kristol
Date: 2018-Feb-10 23:12:35 EST

I eventually plan to do this kind of thing more in the reviews portion of my blog, but I need to keep developing that concept (and figure out if the current implementation of it is right). Kristol has long struck me as the kind of "loyal opposition" we need on the left - people who question and dissect our views and hopefully help cleave away the bad ones. A Republican party composed of people more like him would be no shame. Mostly. It's particularly important to have people like him on the right criticising populist trends (particularly Trump). I'm glad he's around. Except for a few things that really bug me. In particular:

  • I find his support for the Republican party's successful efforts to scuttle all of Obama's supreme court picks for the last vacancy to be unacceptable and bizarre, in that it goes against how the Constitution says our government should work. In terms of having neutral rules that we all agree to play in, it's a loss, and I can't help but believe he'd be outraged were Dems to do the same.
  • I really don't understand what he expects full-throated support for protestors in Iran to accomplish; in my view it'd actually be counterproductive in the same way that, say, Russia or some other geopolitical rival supporting protest groups here (Occupy? BLM?) would look. In my view, this is something they need to do for themselves, and we need to grasp that our words can't help them
None of this is meant to say that I approve of all (or even most) of his other views, just these I find particularly troublesome, and things that should be governed by principles that are at least in theory not all that political.

On Dershowitz's Argument
Date: 2018-Feb-11 04:01:03 EST

In these interesting times, we've had a lot of discussions on things that are pretty bad markers for the political health of our nation; we've had to look into what is impeachable, how much breach of decor is acceptable, why we have decor in the first place, and a number of other things. I've chatted on the first point with a few people who have a stronger legal background than I (I've read law books for fun, but mostly out of an interest in political philosophy and engineering), and I've come to see an interesting discussion on some points Alan Dershowitz has tried to make that when a particular topic is within presidential discretion, that discretion is absolute. The opposing view being that there are a number of reasonable implicit constraints in our system.

On first glance, this is both a large chasm in how different people might think about things and a difficult to judge debate. However, after chewing on it for awhile, I've come to believe that Dershowitz is wrong on this. The reason being that were we to consistently apply his line of reasoning on it, it would both be bad public policy and that the principal reason it's bad is it effectively neuters the idea of misuse of authority. It may be that a governor has broad discretion over a topic and can generally do what they like, and it may also be that people can generally accept payment for all sorts of things, but it does not follow that a governor can accept personal funds to grant people exemptions for laws. And it is undesirable for the law to need to spell out the endless permutations of similar kinds of corruption for it to consider them illegal. Our common law system is built on the idea that legal challenges, common sense, and debate are reasonable ways to deal with novel challenges to our institution, rather than explicit codification of wrongs. And while Dershowitz's concern about criminalising Trump's politics is valid, it doesn't work to apply that concern so broadly that challenges based on reasonable (if implicit, as per our traditions) limits to broad authority are prevented.

Why I consider myself a Liberal
Date: 2018-Feb-11 22:19:10 EST
{"DeVotchKa - The Common Good"}

Liberal is not a term I've worn for my entire politically-aware life. In childhood I took an early interest in political philosophy, and like a lot of younger geeks I wanted to squeeze complexity out of the system until solidity emerged. I think I lacked the safeguard against letting that shape my ends, but it's hard to project judgements like that back across so many years. In high school I was more outspoken than most in social studies and a professor labelled me libertarian; I looked into it and the label fit. I carried that forward into late college, hanging out with others who saw the world as I did, believing that its ideas could solidly solve all the problems I cared about while also being ecologically radical. Eventually this conflict came to a head after a formal debate where I represented libertarian positions, but my answers to some questions about ecological protections came to rang false in the weeks following the debate as I digested the discussion. My faith in its ability to solve all the questions broke my ability to feel that it stood over other perspectives in offering workable certainty, unleashing me from that perspective. And over time my values shifted, no longer bound to a unitary sense of right and wrong tied to libertarian ethics (although to be fair there were disagreements within libertarian camps, they were just relatively small and felt nonthreatening). I became a Trotskyite Marxist for a time, then abandoned it when I found I didn't believe in Marxian economics and I actually appreciated (constrained and nuanced and probably compatible with socialist intuitions) markets. I came to appreciate academic expertise and technocracy even though I also believe that values enter into it. And so I arrived at a kind of technocratic socialism, which has adequately characterised my beliefs for a good while now.

So why do I call myself a liberal? Are all socialists liberal? Maybe on a battlefield map, but it's a bit more than that for me. I have ideas of the shape of liberal thought that I think describe my thought reasonably well. Liberal is a broad label, but to me it indicates:

  • A belief that having fairly wide autonomy in life is valuable
  • A belief that a social safety net increases rather than decreases economic autonomy, in that it increases actual options (I have come to prefer tangible options for autonomy like this over a preference for lack of formal rules blocking autonomy)
  • A strong belief in freedom of conscience, and lack of rules directly blocking that expression based on the content of the expression (meaning artists don't get carte blanche to mess with things because they're doing art, but in an area where people can express themselves the content of their expression should not generally be grounds for going after them)
  • A belief that while there are good things about past forms of society worth preserving and there is always risk in upending a system, a better system is constructed rather than recovered from the past. And that the past is, taken as a whole and viewed across all my values, a shitter place than now and that we should aim towards careful improvement towards a new and better future.
  • I believe the purpose of the state is to, broadly, promote the public good
That last point was a fairly conservative expression of a liberal end. I have some conservative or centrist philosophical beliefs too, namely:
  • I believe in rule of law as a general principle and that one had better have a damned good reason to step outside of it on anything big (there's a lot more nuance to this)
  • I believe that we should try to make it so those that break decent laws do not benefit from their actions
  • I distrust grand narratives, and oppose them when they become too dominant even if I otherwise like them. I expect them to get ugly when they get enough power.
  • I believe in fairness and truth independent of my political ends, and I believe that until we get enough people directly believing in it and faithfully approaching it (and maybe even if that is attained), a vibrant political system is necessary to keep a society from going to shit. A permanent win by any one side is to be opposed.
  • I believe that societies are built through civics, good institutions, and inculturation. I am skeptical of things that lessen the civilising effects of these (including immigration)
All this taken together, alongside some of my market-socialism ideas, puts me in what I'd call the liberal camp. Not because of cultural affinity; I am not blue tribe and some of my leanings mean I'm going to continually be stepping in the taboos of that tribe. But at least so far I pretty solidly vote democrat or green, with only occasional centrist or republican votes. It's not hard to get me to decide not to vote for particular candidates though - if they seem corrupt, or they oppose free speech, or otherwise are objectionable in certain ways. I did not vote for Hillary (or Trump) in this past election, and I don't regret that (I think they were both incredibly shitty candidates, and the Democratic party lost my presidential vote over a few fairly non-negotiable choices they made).

Infrastructure and Size
Date: 2018-Feb-15 00:58:09 EST

I've been thinking a bit about my experiences at Dropbox and MongoDB, and other smaller places I've been ; most ex-Googlers I've know felt a little lost without all the tools they had available there, and similarly for ex-Facebook people. The same is true for me and Dropbox; while some of the tools we had there worked very poorly, others were really great and taken together they made a lot of things automatic that take serious effort to build elsewhere. While for now I'm done with being an SRE, I sometimes think about what I'd do differently if someone were to ask me to design an infrastructure for a smaller company, because geeking out over that stuff is fun. Particularly when one doesn't need to then go build it :)

I know that solutions should come from a good understanding of problems, and infrastructure is only semi-generic as a problem. There's a lot of custom need that feeds into decisions, but there are also some completely common problems and best practices are things that hold true (almost) whatever particulars a business has. At least in theory; they're often a bit overstated.

I think at least some common problems are shaped like this:

  • Ticketing - How to keep track of work that will/has happened, often used as communication
  • Source control - what version control software is used, and what systems for review are used around it? Git and mercurial are common for VCS, people often use things like Arcanist/Phabricator (the review system bits of Phab) or Github to manage higher-level review
  • Continuous Integration - A component that automatically tests every version of the software source control hears about
  • Deployment - How does software move from being built to where it is run?
  • Runtime - In what kind of environment does software run? (containers? virtualenvs? chroots? path/library munging?)
  • How does monitoring of production services/systems happen?
  • How does software log stuff?
  • What kind of hardware runs services? How does that hardware get OS images? What categories of hardware is there?
  • What kinds of network resources are attached to processes? How does software find other software?
  • What kind of storage is available to processes?
And so on. Thinking hard about each part of this is a big part of doing infrastructure.

Empathy versus Victory
Date: 2018-Feb-16 03:36:00 EST

I've been rewatching episodes of "Father Ted" recently, and while watching one of the episodes, I found myself reacting in a familiar but odd way to seeing a depiction of somebody losing their faith; I get a pang of emotional pain from seeing it. This is a bit odd for an atheist, but I've felt it before when a younger version of me started to make headway at convincing others of my views on the topic, no matter where they were coming from. To some degree I didn't want to establish a power relationship over their worldview because I think those are generally negative, but I think part of it is also just empathy; having occasionally changed my political views when I was younger, I remember how painful and disquieting that was and the struggle to make things make sense again. I think I regret seeing others dropped into that kind of position, even when I think in the long run it'll either do them good or expose them to the truth (these are not always the same thing; my commitment to truth extends to generally embracing unpleasant and destabilising truths when available over noble lies). And maybe occasionally I look at where my choices have led me, and make me worry that steps towards my views will make them unhappy.

Ethics and Coworkers
Date: 2018-Feb-17 17:56:56 EST

Had a slightly uncomfortable conversation at work recently over lunch; we were talking about upbringing and inequality, and I mentioned that I don't find it ethical to have servants (I think we got there from discussing jobs and Qatar and a past possible transfer I had to CMU's Qatar office). The table conversed for a bit about what it means to be a servant, whether certain kinds of labour are like being a servant/slave in some ways, how passports can bind an immigrant to a job, and so on, and eventually it circled back to literal servants of families. Another coworker comes from a wealthy family in South Africa that has a large estate and servants; I think he kind-of agreed that it's unfortunate that servantry exists, but doesn't see it as practical for his family to get rid of them because it'd dump them on the street, and also because their estate is too large to maintain without them. I suggested that it's problematic to have an estate that large to begin with then. And there was a fair bit more conversation, but it was steered away from that specific. I suspect this has put some distance between me and that other person.

Being someone who has consistently valued creed and expression over personal ties, this doesn't bother me too much, but I also generally like to try (despite how important ethics is to me) not to talk too much about politics at work. I don't succeed that often. I think often I feel provoked when others express their views in ways that might impact me. I have a tough time resisting a hook. I don't think this makes me a hypocrite, just someone who has a tough time living up to parts of their ideals. Doesn't mean I'll stop trying to advocate them (again, ideally not at work too much).

I suspect anyone who's exactly who they want to be, as liberating as it might be to have the "you really should" in one's head quiet, has ossified a bit. That tension is, I think, important for adults to have over most of their life.

Spring Cleaning
Date: 2018-Feb-17 20:15:41 EST

I think we should probably have different words for decluttering and scrubbing as types of cleaning (and these are not quite the right words). Spending a bit of time today doing a mix (usually I just do a bit of the former); realising how tough I tend to be on rugs. Or really, how tough my cats are. I think they contribute far more wear to my apartments than I do.

Starting to get mentally psyched for my coming move. Nice to have a 3-day weekend; dropped off my laundry yesterday so I could pick it up today. Might make a day trip to PHL Sunday or Monday. Probably Monday; would be nice to see that city on a weekday.