Mark Gritter's Journal|
[Most Recent Entries]
Below are the 20 most recent journal entries recorded in
Mark Gritter's LiveJournal:
[ << Previous 20 ]
[ << Previous 20 ]
|Sunday, July 27th, 2014|
|Oh, micro-stakes poker
I played a 0.01 BTC heads-up Razz SNG today. The opponent seemed fairly competent, but the final hand made me question my own judgement of him.
I have 3860 chips with (68)9 and he has 2140 with (xx)K, at the 30/300/600 level. I raise, naturally, and Villain re-raises. I three-bet and it takes a few more raises to get him all-in.
Is there any hand I can reasonably have here that makes him even break-even? He had (A2)K which is fine for a steal defense, but a shove? Why not wait until 4th? Perhaps he was just tired of playing.http://twodimes.net/h/?z=8922631
Razz (7-card Stud A-5 Low): 500000 sampled outcomes
cards win %win lose %lose tie %tie EV
Ad Kd 2d 185344 37.07 314538 62.91 118 0.02 0.371
6c 9h 8h 314538 62.91 185344 37.07 118 0.02 0.629
I would need to have something like (JT) or (Q8) down before he becomes a favorite.
|Saturday, July 12th, 2014|
|"The Avengers: Earth's Mightiest Heroes" Drinking Game
One drink if:
* Somebody holds Hornet in their hand
* Hornet is knocked unconscious
* Hornet's stingers have no discernible effect
* Ant-Man mopes about not wanting to hurt anybody
Two drinks if:
* Hawkeye runs out of arrows
* Somebody else brings extra arrows for Hawkeye
* Hawkeye's special arrows are easily ignored (not countered)
* Ms. Marvel appears out of uniform
Three drinks if:
* The Avengers forget that fake-Captain America betrayed the Hulk and he's still captive somewhere
* The Hulk changes back to Bruce Banner
* The Hulk is wearing pants that aren't torn
* Thor declares that something will "end now"
Four drinks if:
* Pepper Potts appears (extra drink if Tony's not in the scene)
* Iron Man wears an alternate suit of armor
* Iron Man refers to financial or emotional problems
* T'Chala shows up without his mask
|Friday, July 11th, 2014|
|Thursday, July 10th, 2014|
Marissa and I watched Ken Burns' "Prohibition" on Netflix. We were not impressed.
Some good bits: Carrie Nation, immigrant communities, and footage of Al Smith and FDR.
Things I did not know: there wasn't a congressional reapportionment after the 1920 Census, in part so dries (drys?) could maintain their hold on political power against the growing urban population.
Less good: pretending World War One didn't happen, or the influenza epidemic. No mention of heroin. Generally facile treatment and historical tone-deafness. Too many long, loving shots of drinks being poured.
(Every generation thinks it has invented debauchery, if not trying to live down the debauchery of the previous generation. It's amazing what a good job the Victorians did of convincing everybody that the Georgians didn't exist.)
|Monday, June 30th, 2014|
|Dealing With Government Inspectors and Other Gilded Age Flashbacks
linked to this NY Times story on Blackwater making oblique death threats against State Department investigators.
I was reminded of a story from "Empire Express" which exhibits a far gentler method of redirecting attention, from 1868.
Three inspectors each had been sent to examine the quality of the railroad line being built by the Union Pacific and Central Pacific. One of the Central Pacific inspectors was a silent partner of the railroad, and another a long-time friend of one of the founder. But certain parts of the road would not stand up to close inspection. So Charles Crocker resolved to "have them our examining culverts, ballast & bridges between here & Wadsworth--- so that they won't want to hear of culverts or anything of the kind beyond there." At the section that was most troublesome:
I said to the commissioners that we were approaching the point where the [Sacramento] Union has said it was unsafe to go over the road.... "And," said I, "Here is a tumbler of water which I will set on the floor of the car. Now, gentlemen, take your watches: here is the station, and from this station to the next is so many miles. Note the time we leave this station and when we arrive at the other, so that you will know the rate of speed at which you have gone." I instructed the conductor to the tell the engineer that I wished to go over that piece of the road at 50 miles an hour, and they made a little better time than that. The tumbler was still standing and but little water had been spilt.... and the commissioners all laughed and said that was the strongest proof that had been given. They did not ask for any more; did not want to get out and look at the culverts.
Another connection I made with recent news is Grant's election as the first national example of black votes being viewed as an "illegitimate" path to victory.
A lot of the book is told from Grenville Dodge's point of view--- probably because he has many extant letters--- and while he has lots of scathing remarks about Durant's profit-seeking maneuvers he sees nothing out of line about scouting for coal and staking claims to sell back to the railroad employing him. In another modern connection, the initial Pacific Railroad act of 1862 was immediately lobbied into better shape (for the railroads) in 1864 and modified again in 1866. The same strategy of "get something passed, then complain about how bad it is" seems quite familiar today too. On the other hand, some of the pre-SEC financial maneuvers are quite odd.
Overall, my re-read of "Empire Express" is a lot more depressing that I remember. There's really a lot of genocide, fraud, and incompetence. I sure miss the radical Republicans' support for railroads, though.
ETA: I totally forgot one! Theodore Judah totally tried to croudsource the Pacific railroad $10 at a time (as a first payment on a $100 share.) He ran into Collis Huntington who convinced him to do it with just five backers at $1,500 each.
|Monday, June 23rd, 2014|
|Why Mark is a Computer Scientist at Heart
So, I came across a question on Quora about showing that no reversible two-bit gates are universal. (NAND is universal for boolean logic but not reversible!)
My first thought was the CS one: well, how many 3-bit reversible functions are there? We could probably just do exhaustive search on combinations of two-bit gates and exhaust the space, there are far less than 8^8 reversible functions and that's only 16 million. (Hmm... how many are there? Must be something like 8! since each output must appear once and only once, so a reversible function is a permutation of the identity function.)
But the mathematical answer is the one I had to look up. All the 2-bit reversible functions are binary. That is, they are of the form f(x,y)=M(x,y)+(a,b) for some 2x2 matrix M. And the composition of linear transformations is always linear. But you can come up with a nonlinear 3-bit reversible binary function. (The Toffoli gate, which *is* universal, is one of them.)
If given enough time, I could probably come up with the second answer. But the first one is a lot more fun. :)
|Tuesday, June 17th, 2014|
|Who Knew Railroads == Better Tea?
I am re-reading "Empire Express", about the building of the Transcontinental Railroad. One of the proposals in the 1830s came from Dr. Harwell Carver of St. Louis (who really seems to be an also-ran who claimed that he came up with the idea after somebody else got famous for it):
The quality of teas would be much better coming to us in a few weeks of gathering. I suppose the flavor and quality of our teas now bear no comparison to what it would if brought directly to us, without crossing the equator twice. Methinks I can look forward, through the vista of time, and see countless thousands of our fair country women sitting of an afternoon leisurely sipping and drinking their tea, until they become intoxicated with the sweet aroma of this delicious beverage and cry out, in sweet and musical accents, blessed be God, and the projectors and builders of the Oregon railroad, now and forever, amen.
...Perhaps my tea just isn't fresh enough.
|Saturday, June 7th, 2014|
|Bad Analogy Night at the Orchestra
From the program notes for the Mozart symphonies we heard tonight:
No less impressive is their diversity, and the clarity with which, in three quite different directions, they define the possibilities of Mozart's art. Eric Blom puts it thus: "It is as though the same man had written Shakespeare's Twelfth Night, Racine's Phedre, and Goethe's Iphigenie within whatever period may be equivalent for the rapid execution of three plays as compared to three symphonies." -- Michael Steinberg
No, Mr. Blom, it's not like that at all, and please research your analogies beforehand. "It's as if he ran a hundred-yard dash in however would be very fast for that particular race!"
Mozart was the Shakespeare of music; and as long as the immortal bard is read, Mozart will live in the admiration of mankind. He has reached the passions through the ear as Shakespeare did through the mind... -- New-York Mirror, 1830
I'm pretty sure Shakespeare also reached the passions through the ear (and sight!) Perhaps my education is lacking.
Metaphors. I hear they're really bad for you.
|Tuesday, June 3rd, 2014|
|Saturday, May 31st, 2014|
|A brick-and-mortar distributed systems problem
On Friday we climbed to the top of the Witch's Hat Water Tower
. It's an old water tower (preserved as a area landmark and historic place
) whose observation deck is only open once a year.
The top of the tower is reached via an internal spiral staircase which is rather narrow. The tower guides had arranged a system for tracking the number of people in the tower--- they handed blue notecards to those going up and retrieved them from those exiting the tower, thereby limiting the occupancy. But, this still led to congestion on the stairs as groups traveling in opposite directions had to squeeze by each other. Is it possible to come up with a system which also limits the number of people using the staircase in opposite directions? Without cheating by giving the guides mobile phones to communicate. :)
Time-based multiplexing is a common technique. Allow upward traffic for 5 minutes, then downward traffic for the next five minutes.
The token-based approach could also be expanded in a couple ways. For example, use two colors of tokens. Allow a group of people to start upwards but give the last person in the group a special red token. Block all other ascending traffic until the red token returns. When the red token gets to the top, collect it from the carrier and permit a group to begin going downwards, again giving the red token to the last person waiting to go down.
Now, there may be some psychological issues here where people might not appreciate being told to wait to leave the tower! But the guide was already doing a rough-and-ready contention control on the top portion of the stairs.
|Thursday, May 22nd, 2014|
20 question for Donald Knuth
, of which I found Robert Tarjan's the most interesting. Knuth's response (in part):
In general I'm looking for more focus on algorithms that work fast with respect to problems whose size, n, is feasible. Most of today's literature is devoted to algorithms that are asymptotically great, but they are helpful only when n exceeds the size of the universe...
For instance, I've been reading about algorithms that decide whether or not a given graph G belongs to a certain class. Is G, say, chordal? You and others discovered some great algorithms for the chordality and minimum fillin problems, early on, and an enormous number of extremely ingenious procedures have subsequently been developed for characterizing the graphs of other classes. But I've been surprised to discover that very few of these newer algorithms have actually been implemented. They exist only on paper, and often with details only sketched.
I was annoyed at the recent New Scientist article making the rounds about a "proof" of how computers couldn't be conscious under Integrated Information Theory, so I'm glad Scott Aaronson took the time to show why IIT is bunk
and saved me some ranting.
My company announced support for storing Hyper-V VMs on the Tintri VMstore
bringing our total number of supported hypervisors to three, perilously close to the maximum possible. :) Only Openstack and Xen to go (well, and perhaps a few other KVM variants.) Chris Wahl posted a great review of Tintri at "Tom's IT Pro"
.Bruce Schneier points out that the NSA is not magic.
We've seen a lot of standard hacks carried out at industrial scale, or from privileged positions within the network, but not an Enigma-scale (or, well, Magic
) breakthrough. I'm not sure this is cause for optimism; rather, it speaks poorly about the state of communications security that the NSA doesn't need such breakthroughs to do its job.
And, finally, one of my own pieces of writing on Quora: What mathematical functions can convert multiplication to summation
? The previous answers were mainly literal-minded "only logarithms work among continuous functions" references rather than coming up with something that might be more interesting to somebody that's curious, like non-logarithmic slide rules.
|Wednesday, May 14th, 2014|
I fixed a bug this week which involved a subtle distinction in the behavior of
int f = open( filename, O_RDONLY );
fchmod( f, permissions );
chmod( filename, permission );
Can you guess what situations the latter handles that the open()/fchmod() combination does not?( SpoilersCollapse )
|Sunday, May 11th, 2014|
Both of the conductors I had at Gustavus are retiring this year. Doug Nimmo led the concert band ("Gustavus Band", now "Gustavus Wind Orchestra") for 27 years, and Steve Wright conducted the jazz bands for 24. I played alto saxophone for four years in the Gustavus Band and three (I think?) in the jazz bands.
The Wind Orchestra (which I found out to my horror is pronounced "gee-woh" by Dr. Nimmo) performed their spring concert today and made it a celebration for both professors. Dr. Wright composed and soloed in one of the pieces.
It was a rather emotional event for me. Two of the pieces performed were ones I had played. The first was David Holsinger's "Symphonia Resurrectus" (the third movement of his Easter Symphony); Gustavus commissioned it and I played in the premiere in 1995. It's one of the few times in college that my parents got to hear the Gustavus Band--- they made a special trip across Wisconsin. (The only other occasion, I think, was my graduation, although when the band toured Grand Rapids much of my family who lived there attended.) The piece requires a large vocal contingent (miked to compete with the instruments!) which meant that the concert had to be held in Christ Chapel instead of the usual concert hall.
Dr. Nimmo's conducting style hasn't changed much in the 17 years since I graduated, but I would be surprised if it has. :) He will signal sometimes with a hand held close to his body. But because we were seated on the side due to the chapel arrangement, I had a clear view of what he was doing. Here's the only picture I tried taking:
The second piece is an arrangement of the hymn "Nearer My God to Thee". Dr. Nimmo told the story of our Eastern European tour stop in Stara Tura, Slovokia
in January 1998. It's a small town and we played in the Lutheran church that evening. (It may be the same church shown in the Wikipedia entry.) The residents packed it full to overflowing, sitting even on the steps leading up the balcony. One of the staff members accompanying us had to sit on the organ bench next to Dr. David Fienen, the Gustavus organist who was part of our tour. We played "Nearer My God To Thee" in conjunction with a piece called "Heroes Lost and Fallen" by David Gillingham
. At the conclusion of our concert, the pastor (through a translator) interrupted us before the encore and said that while he knew we probably had another piece prepared, that hymn had a special meaning to the church--- they sang it at every funeral--- and could we please play it again? Since then, "Nearer My God To Thee" has been used to conclude every Gustavus Band and Gustavus Wind Orchestra concert tour.
But in addition to Dr. Wright's piece there was another new composition, a Jack Stamp piece called "Roulette's Deception", commissioned by a couple of Gustavus alums for the concert. I thought this was a fitting celebration of Dr. Nimmo's tenure at Gustavus--- he introduced us as students to a lot of new works. Some we performed, some we just played once or twice in the practice sessions. But it was fitting that the final GWO concert for Dr. Nimmo included new music, not just familiar favorites (and since it is many students' final concert as well, it did not rob them of the chance to had the same sort of experiences I did.)
Dr. Nimmo did pick a Sousa march (and told a story about being excoriated in the Grand Rapids newspaper for a tour concert that did not include any Sousa.) It was "The White Rose"--- not one I'd played--- but one with a Gustavus connection because it includes a percussion interlude arranged by a Gustavus student (in the 80's) which has been copied and used by other concert bands, after Dr. Nimmo lent the music out.
Between a couple of the pieces, Dr. Nimmo talked about the history of the ensemble going back to the first concert tour in 1882 (by train and horse-drawn carriages!), to the 1941 tour with Percy Grainger. He asked former members of the Gustavus Band and Wind Orchestra to stand. Unsurprisingly, there was more representation from the younger cohort--- I didn't see anybody I recognized. (But I didn't stay around afterwards to see if anybody recognized me, either.)
I was more than a little nonplussed when Jack Ohle, the outgoing Gustavus president, got up to make a speech thanking the directors and others. I felt he said some things that were unnecessary and exclusionary. It's definitely considerate to thank the conductors' wives, but he should have done so in a way that did not suggest single faculty could not do as good a job.
I am very happy to have gone. To this day I listen
differently because of my experience as a performer in Dr. Nimmo's and Dr. Wright's ensembles. I definitely reached my peak as a musician during those years; I have not since put the time and energy into practice and performance that's necessary to sustain excellence. But I feel like I am a different person for the time I spent in the Gustavus Band and the Gustavus Jazz Lab Band, and I will always be grateful that I had those opportunities.
|Thursday, May 8th, 2014|
|New Tintri Branding
Tintri made a couple big announcements today. We've gone through a rebranding and will position the Tintri VMstore as "smart storage that sees, learns, and adapts". We have a new logo and color scheme--- everybody else was also using blue and green, so we picked red.
We also announced our support for Hyper-V which will be shown at Microsoft TechEd.
Check out the redesigned website at http://tintri.com/
|Sunday, May 4th, 2014|
|Paying for celebrity speakers has nothing to do with free exchange of ideas
I've attended more than my share of college commencements. I was in the college concert band (I think they call it "wind orchestra" now), which played at the graduation ceremony, for four years. I attended my wife's graduation, and those of my three siblings. I can fairly say that despite speakers whose quality ranged from Elie Wiesel to Margaret Geller to random-college-donor-who-came-out-agains
t-smoking, commencements are not about the "exchange of ideas". Protesting about your college's choice is fairly pointless. But not quite as pointless as inviting a celebrity speaker whose message will soon be forgotten, particularly if you pay for the privilege.
It's marginally better to invite a (former) politician for a formal talk. But those events aren't about "free exchange of ideas" either. It's embarrassingly disingenuous for colleges to try to defend the visit of a controversial figure on those grounds. The speakers who get big fees to show up and defend their record (or, theoretically, speak about some other area in their expertise) aren't picked to represent a broad diversity of views. No struggling activist for an unpopular cause gets a $150,000 speaking fee, and are likely not even invited to the same forum. Lecture series are a tool of the establishment if ever there was one.
So while I roll my eyes at the recent controversy over Condoleezza Rice's speaking engagements (U Minnesota and Rutgers), the language of free debate being used in service of funneling money to ex-politicians leaves a bad taste in my mouth.
|Friday, May 2nd, 2014|
|I'm thinking of retiring this interview question
I have been experimenting with asking the following question during interviews:
Our file system compresses data before storing it to flash. In order to test this, we need to generate data that has a given level of compressibility. A block which has all the same byte will compress down to close to 0% of its original size. A block which has completely random data will stay at 100% of its original size. Can you describe a way to generate blocks that have a tunable amount of compression, within a few percent?
The experience has been one of mutual frustration so far. I thought I was giving a pretty big hint with my explanation of compression ratios. But I guess compression and traffic-generation techniques are arcane arts?( spoilers if you want to work on itCollapse )
|Monday, April 28th, 2014|
|The Problem With Moduli
So, I'm reading "Probability and Computing: Randomized Algorithms and Probabilistic Analysis" by Michale Mitzenmacher and Eli Upfal. In the first chapter there's an exercise that asks for a randomized algorithm that works around a corrupted lookup table for a function F:[0,n)->[0,m). F is constrained such that F((x+y) mod n) = F(x)+F(y) mod m. (I believe you're supposed to show that even with 1/5th of the values compromised, that for a given z, randomly picking x and calculating F(x) + F(x-z) gives the right answer with > 50% probability.)
But... how many such functions are there? Well, the definition given is that of a homomorphism, so F(0)=0 and the rest of the function is completely determined by F(1). Thus there are only 'm' different homomorphisms.
Unfortunately I don't think this insight leads to any better solution, other than perhaps noting that there's no point in using the lookup table for x=0.
|Thursday, April 24th, 2014|
|A fun programming game
Most of the challenges are not too hard. There were a couple levels where I gave up on trying to figure out what the level designer had intended, and used the capabilities of the language to create my own object types like "bridge" instead of implementing "jump" code. But that's the beauty of a programming-language based game, there is (and ought to be) more than one way to do it. Similarly, in some of the AI levels it was easier to code "follow what my player does" rather than script the robot to do what I wanted.
The game uses Gist to store your solutions to share with others, if you want. (Other people's solutions don't seem to show up in search--- not sure exactly what's going on, is "anonymous but private" really a valid Gist state?)
|Sunday, April 13th, 2014|
Here's how I spent my time on Saturday at the local 900-person "unconference":
Paul Cantrell, "Scheduling Minnebar with Simulated Annealing"
Great talk as is usual from Paul. He intro'd by saying that simulated annealing sounds very fancy but really the algorithm is very dumb. For Minnebar, the key metric is whether people can attend all of the sessions they have expressed interest in through the session web tool. So the function being optimized is the mean, over all attendees, of the percent of their sessions they cannot attend due to scheduling. This may mean it's possible to game the system by registering for fewer sessions. Somebody who registers for 6 will have 0.17/N weight for having two sessions scheduled opposite each other, while somebody who expresses interest in just 2 will have 0.5/N weight on their preference. Certainly you should not register for any you don't much care about.
I asked about whether it was possible to do better on assignment to rooms. Currently Paul just assigns time slots first, then greedily puts the session with the largest number of interested people in the largest room. But I think it may be possible to do better than this--- some recurring sessions are known to be very popular and yet do not get placed in the largest venues.
There were quite a few questions of the form "couldn't you find a better/faster solution with X" to which is response was (correctly) "no, we only run this once a year so we don't care very much.""Pack Your Own Chute - the Personal Decision to Join a Startup"
, a panel discussion led by Neal Tovsen, with Paul DeBettignies, Liz Tupper, Matt Hardy, and Todd H Gardner. This one was fairly depressing but a good conversation. They talked about the need to set boundaries and have clear communication with your co-founder when forming a startup. How much money are you willing to lose on this project? Where's your bail-out point? What is the worst-case scenario? (They also talked about some of the fun and freedom too.)
What struck me is that everyone on the panel was talking about creating
a startup rather than joining
one. Nobody talked about taking a smaller plunge by going to work for somebody else's startup first. (I know I found my time at Kealia very valuable when we started Tintri--- and I wasn't even doing the heavy lifting on the corporate/financial/HR side!) But just like you might save up money to make sure you could survive the 18 months it took to bootstrap your startup, it may make total sense to work for 2-3 years in another startup to build connections and experience for your own.
Another issue that was not confronted directly was moving. Relocating is a big cost and one that I totally understand not wanting to pay--- I didn't. But it should be asked: if the only way to make this startup succeed is to move to San Francisco, would you do so?
I learned about Track:js
Reed Robinson, "Lessons from a Failed Startup"
. The failed startup was Heroic, a local attempt at a recommendation service for home services. (His dad repairs garage openers.) He had a good list which I'll try to reproduce here, but I wish his slides were available:
- Validate your assumptions. (Like, "people care about my product", "the team can build the product", and "people will pay for my product.")
- Sell it, then build it. Heroic spent lots of time on UX but decided not to ask people to pay right away. For his next venture he wants to sell the idea and find people willing to fund the development. (I am not a huge fan of this model but VC looks like that if you squint at it correctly.)
- Acknowledge holes in your team ASAP. He talked about how Heroic lacked marketing, finance, and sales expertise. It's possible to go overboard as well here--- but you also don't want to dig a hole.
- See things to fruition. Reed gave an example of promotions that were tried and quickly discarded after only a week or so. Some strategic moves need time.
- Do things that other people don't want to do. His father gets ten emails a week from people wanting to partner with him. Very crowded space, maybe focus on something less "sexy".
- Intimately know your cash situation. Ties in with holes in the team.
- Have confidence, but don't take yourself too seriously. Celebrate successes.
Bridget Kromhout, Monitoring at a SaaS Startup
. Talked about her work in ops at 8thBridge, and a wide variety of tools. One thing the Tintri support lead emphasizes is that alerts need to be actionable--- don't wake somebody up in the night for something they can't fix. Bridget reinforced this message strongly. Nagios is old but still a good tool for ensuring alerts are what you want. Some of the newer tools like Sensu are so complicated that ops people fear they need monitoring on their monitoring tool.
She shared a couple stories in which 8thBridged goofed some by not using some of the information they had available. MongoDB's MMS was telling them about a global write lock problem but they weren't monitoring or alerting on it. Etsy has a very good monitoring team and tries to monitor even those things that don't seem to be moving, "just in case they make a run for it."
Tools: Graphite and StatsD for collecting and showing stats (they feed info into nagios from them for actual alerting), Whisper for storing time-seris data, Carbon for buffering and storing stats. Slides with more references here: http://www.slideshare.net/bridgetkromhout/monitoring-at-a-saas-startup
Maybe Tintri should look at providing stats directly into some of these tools. She talked about Logstache (?), Kibana, and ElasticSearch as some next-generation tools it might be worth looking into.)
Jeff Lin of BustOut Solutions, "Chasing Ninja Rockstars: Searching for Top Talent and Why We're Doing it All Wrong"
. I should have given one this a miss. The key problem, as Jeff admitted, is that he doesn't do much hiring
. His 13-person team is 5x smaller than the number of hires Tintri made last quarter
. So when we asked questions like how to source more diverse candidates, or how to get team buy-in to change hiring practices, he didn't have any suggestions.
He had some good points about team culture mattering, and creativity requiring diversity, but it was not very practical advice on how to get there.
Jeff told an anecdote that pissed me off. At a previous company (not BustOut) his boss took the resumes and filtered out all those with Master's or PhD degrees and said he basically didn't want to hire anybody who had spent too much time in the "ivory tower" because they were out of touch with technology trends.
I'm not sure what Jeff thought the point of this story was (I think it was in support of skills over credentialism) but it directly contradicted much of the rest of what he said about looking for good problem-solvers and people who were enthusiastic learners. Nobody goes for their PhD to get a better salary. (The same may not necessarily be true of MSCS.) I suspect a not-so-subtle side effect is that Jeff's old boss didn't want to pay more for developers.
James Renkin, "Building A Global, Privacy-Conscious CDN On $20 A Day"
. This talk was pure geeky joy. James located 11 sites throughout the globe that were willing to let his virtual server peer with their BGP (the Internet's routing protocol.) He was thus able to create a content distribution network on his own using BGP anycast to direct users to the "closest" (sort of) server. This is what the big guys do (some root DNS servers use it, Akamai might but usually just uses DNS redirection.) But he did it for an outlay of about $7000/year. About $500 of that is the IP address range (which you have to jump through multiple hoops to get--- he's got an ISP side business which he was able to leverage.) The remainder is running the servers and additional charges for injecting his route into BGP. I learned a lot of this stuff during my PhD work, so this talk made me really happy. I have no intention of duplicating his work, though.
The conference had a couple innovations that didn't work so well. Best Buy let us use their employee parking garage this year instead of visitor parking, but frankly it's a maze (not very well marked, poor traffic flow.) They only had one exit gate opening to leave and more than one person got into the wrong lane.
The organizers brought in food trucks to serve lunch but the lines were long and it was not all that warm a day to be standing outside. I think three trucks was insufficient; it didn't help that it was not clear there were three separate lines, and that one of the trucks opened late.
There was also a keynote from an agile coach that I didn't get much out of. I was amused that he emphasized subtracting things to get more productivity but he's usually called in as an "add" to the team.
|"Love and Math" vs "Flash Boys"
"Love and Math" is by Edward Frenkel. It tries to show the beauty of modern mathematics by taking the reader on an autobiographical tour of Frenkel's career, explaining the concepts and connections he's worked with over the years. Mathematical beauty, he says, ought to be accessible to non-mathematicians in the same way that beautiful paintings are accessible to non-painters.
"Flash Boys" is by Michael Lewis. It tries to show the workings of modern stock markets by taking the reader on a biographical tour of Brad Katsuyama's career and the founding of IEX. Wall Street, he says, is screwing the little guy (and big institutional investors) by delivering their trades into the hands of high-frequency traders.
Frenkel doesn't succeed in making the math simple. I had some undergraduate courses in "modern algebra" (not really modern at all), including Galois theory, and have maintained an amateur interest since then. I found myself flailing about halfway through the book, and never really developed a good sense what the Langlands Program
. The analogy he uses is a Rosetta stone tying together number theory, curves over finite fields (which he does a good job explaining), and Reimann surfaces (ditto.) Quantum theory comes in at the end too! But few of the conjectures that tie the different languages together are stated explicitly. Much of the mathematical meat is buried in the endnotes. This makes it harder for a somewhat-mathematically-sophisticated reader like me to follow the flow, but I can't see how somebody with less background than I comprehends the ideas and examples at all. There are a lot of concepts floating around that make me echo Enrico Fermi: "If I could remember the names of all these particles, I'd be a botanist."
Here's an example: I understand finite fields, and curves over finite fields. I kind of understand a manifold, and his glossary provides the definition "A smooth geoemetric shape such as a circle, a sphere, or the surface of a donut." He does a good job developing these ideas. Then later we get "manifold over a finite field" and I'm lost--- finite fields aren't smooth! Google or Wikipedia are no help, I just get dumped into reading about Calabi-Yau manifolds, whatever the heck they are.
That said, I applaud Frenkel for the attempt. I really appreciate having a book about what modern mathematicians are really doing. The sections on being a Jewish mathematician in the USSR are alone worth the price of admission. Antisemitism kept him out of Moscow University (and would have placed further roadblocks on graduate study) but the mathematicians of Moscow created informal networks that trained an entire generation of brilliant students.
Frenkel is also unabashedly Platonist which causes some hair-tearing. Perhaps pure mathematicians should be introduced to the concept of "confirmation bias."
Lewis's book succeeds where Frenkel does not. It not only tells a good story, but it also lays out very clearly how high-frequency trading works and affects institutional investors. This picture may not be accurate or complete--- but it's at least part of the story.
In brief, today's stock market is not a singular location. There are numerous exchanges each with their own rules, practices, and costs. When a broker gets a buy order he typically has to fill it from multiple exchanges (in fact a regulation requires him to go find the best prices!) But a high-frequency trader can monitor his activity on a subset of exchanges (or even one) and beat the broker to other exchanges, buy the available stock and re-sell it immediately at a slightly higher price. This is how high-frequency traders account for 50% of the shares traded--- they're not actually providing any "liquidity", they're just stepping in front of party-to-party sales that would otherwise happen anyway.
There are, of course, numerous criticisms of Lewis's account. Some claim this dynamic was already well known and published in books at the time his protagonist was puzzling it out. Or that the same was true before electronic exchanges. (This is not a positive.) Or that sophisticated investors were already deploying countermeasures before IEX, and IEX is a scam of some sort under the thumb of known insider traders. Or that Lewis is getting only the "buy-sider" picture of the world and HFT provides incalculable benefits in ways that only people who really know the stock exchanges can understand. That the whole book is nothing but an advertisement for IEX, who are less savvy and ethical than actually portrayed.
Some of these criticisms I think miss the mark. It's not important who was first to understand HFT or develop countermeasures; it's important to explain it in a clear and engaging fashion. Frankel likes to think that his mathematics is clear, elegant, and beautiful to an outsider--- but ends up, frankly, in a morass of jargon. Financial insiders like to cloud their basic operation in a cloud of strange terms and vague feel-good explanations--- but where their money comes from can usually be explained very simply.
The silliest criticism I hear is that individual investors ("the little guy") shouldn't care because their trades are so small that HFT can't exploit them. This is an out-and-out lie in two forms. The first is that some individual trades are certainly big enough to suffer. One of the telling anecdotes in the book is a trader with Bloomberg access performing a late-night trade on his personal account, and setting off a flurry of activity which he can observe. The second is that individual investors often put their money into mutual funds which are--- guess what--- big institutional investors who are
Michael Lewis told Salon that IEX has been flooded with resumes and would-be whistleblowers
since the publication of his book. Sadly, I think Frenkel's book is not likely to have a similar impact.