Mark Gritter's Journal
[Most Recent Entries]
[Calendar View]
[Friends]
Below are the 20 most recent journal entries recorded in
Mark Gritter's LiveJournal:
[ << Previous 20 ]
| Saturday, May 26th, 2012 | | 9:34 pm |
Birthday Dinner
Marissa and I went up to the city for my birthday (observed) tonight. I had requested a trip to Prohibition, the lounge at the top of the Foshay Tower. This proved to be something of a disappointment. I had expected that it might be crowded (and, in fact, half of the floor was reserved for a private party.) What I hadn't expected is that little of the furniture was arranged to make use of the view--- and the views were mainly obstructed by the concrete railing/decoration/thingies around the building perimeter anyway. My blackberry mojito was decent (if expensive) but I don't have any desire to return. We said that we might go back to visit the 30th-floor museum. For dinner we went to Zelo which was a much better experience. It's got fairly standard Italian offerings, but a very interesting selection of salads. Marissa had the heirloom grain salad (for an additional dose of barley!) and I had the Brasiliana, which had palm hearts and a very nice lemon vinagrette. Her risotto was well made, as was my chicken "under a brick." It's definitely an option for when we're downtown but probably won't become a favorite. The chocolate budino and blueberry cobbler were tasty. | | Monday, May 14th, 2012 | | 12:45 am |
Rewards Over on Google+ I ask whether a badge in a puzzle game actually causes people to retry until they win the badge--- or just to look up the solution on the Internet. | | Saturday, May 12th, 2012 | | 11:51 am |
True but Unproven
Somebody finally corrected all the flawed answers to this Quora question (Is there anything in mathematics that holds true but can't be proven?), by pointing out that Godelization doesn't say anything about our ultimate ability to prove something. We can always adopt a new axiom schema that permits us to prove the statement of interest, or adopt informal but "convincing" methods. But I think Alon Amit's excellent answer still suffers from viewing proofs as mathematical constructs. If we view them as computational processes then it is trivial to demonstrate that there are true statements which we cannot prove--- because no compact representation of the theorem can exist in our universe, which has less than 2^(10^100) bits to work with. | | Thursday, May 10th, 2012 | | 11:29 pm |
Avengers
My tradition at Tintri is to invite the team out for a movie. In previous years we watched "Iron Man 2" and "Thor". This year it was "The Avengers", and we had a good turnout--- 24 people. (Unless I play a lot more poker in the next year my slush fund probably won't stretch to cover next year's expedition.) I had fun, perhaps because I am just a bit too fond of Robert Downey Jr.'s Iron Man. (I think the first "Iron Man" is still my favorite of the Marvel movies, though.) Mark Ruffalo as Bruce Banner was pretty good, too. I liked seeing that female SHIELD agents are allowed to dress professionally. For the most part. ( Spoilers ) | | Sunday, April 15th, 2012 | | 11:36 pm |
Google Stock Split [mirrored from G+]
Despite lots of anguish over the "political" implications of Google's stock split into new non-voting shares, I have seen little analysis of the financial impact. What would you expect the price difference between a voting and non-voting share to be? (If you were an employee, would you be upset that your stock is the non-voting variety, and demand extra shares to make up for it?) Will index funds buy both types of shares? | | Monday, April 9th, 2012 | | 3:20 pm |
Cargo Noir
Kevin brought "Cargo Noir" to our Easter celebration, and we played it as a 5-player game. It's a reasonably simple auction game built around a "smuggling" theme. Unfortunately that is about the limit of player-to-player interaction--- no trades or conflict. But it goes reasonably fast. We had one rule question which BoardGameGeek forums say is answered in the printed rules: when you're out of tiles (trade goods) the discards are recycled back into the draw bag. So there is a limit to the benefit of card-counting, but no way to prevent random draws on the last turn. (We had a ton of people sitting in Macau on the last round since they were out of coins.) The setting is supposed to be 1950-ish. I was sort of bothered by the stereotyped depictions of all of the "player characters"--- Italian, Arabs, Mexicans, Chinese, and Indians. I'm not sure where the line between "lighthearted" and "racist" is here, but I think the "Ti Pot Tong" card was over it. But I was also bothered by what was "OK" to smuggle and what got left out. #1 thing that gets smuggled in the real world? Drugs. But we can't have a game where kids play drug smugglers. So we got ivory, Blood diamonds (OK, "jewels"), alcohol, cars, weapons, gold (?), art, uranium, and cigars. Because all those are *perfectly* ethical things to trade in. Cigars seem very American-centric, but tobacco certainly gets smuggled--- even within the U.S. (Also missing: human trafficking and counterfeit goods.) Due to a failed bidding war I was the last person with any amount of coins, so I was able to snap up three locations on the last round and almost stage a big comeback with a large "run" (group of all different commodities.) But Kev had booked a big set a couple rounds earlier, and his lead proved unassailable after that. | | Sunday, April 8th, 2012 | | 2:57 pm |
Minnebar 2012
This was the 7th Minnebar, the 4th I've attended, and the third I organized a session. Minnebar is an "unconference" with content driven by the attendees, although it's a bit more structured than most Barcamps with a schedule created ahead of time. But there was a whiteboard open to schedule some of the empty rooms at the last minute. The past couple years I've given tech talks, but I wanted a more discussion-like session this year. I decided to talk about the challenges of scaling a startup to larger numbers of people--- not money, but organizational and social issues. I pinged a couple people to try to get them on a panel with me, without success, but fortunately I got two very enthusiastic and articulate people from the audience at the last minute! (That's more in the BarCamp tradition anyway.) I had prepared about 6 questions and expected to spend about half the time taking audience questions. We had such a good discussion on the first couple questions that I skipped the rest of the prepared ones, and even so we only got a couple audeience questions. I asked about building company culture, and about the challenges of "releasing control" as a technical founder. There was one question from the audience about money (of course), and another question going back to the first topic and tasking about how to build a diverse company. I'm really happy with how the session went; I got some compliments afterwards and there was a reasonable amount of twitter traffic. Photo from my session. There was a video recording as well--- I hope those come out OK, because there are a lot of sessions I couldn't attend but would like to hear. The first session I attended was about a reference implementation of a RESTful Android application pattern. The core idea is to put REST requests (and responses) into the persistent database to access them, rather than just a background thread doing a synchronous request and returning the data directly. This helps deal with interruptions and avoids duplicate data transfer. Some of the implementation choices seemed a bit odd (like finding the appropriate action for a response by comparing it one-by-one with saved request IDs) and I'm not sure I understand the value of all of the levels in the stack described. Mike Horwath from ipHouse led a session on cloud hosting which had an interesting discussion, but unfortunately he was depending on Wi-Fi to get at his slides. A talk on "Every HTTP Status Code" was fun. It's surprisingly difficult to track down the complete list, as there are several in common use that aren't in the standard--- and some in the standard that are never used. Twitter, famously, uses "420 Enhance your Calm" instead of the standard 429 to tell a client to back off. Nena Street presented on a "Global Robotics Innovation Park" she wants to build in Minnesota. The idea is to create a robotics campus with one or two major tenants (like ReconRobotics) as well as space and shared facilities for startups (or an incubator) in the robotics space. There might be an educational or government partner as well. Ms. Street was looking for input from robotics entrepreneurs as to what they would want, but there were unfortunately not many in the audience. The session was thus sort of unsatisfying on both sides--- the attendees wanted to get a picture that wasn't really there yet. My question on other (successful!) examples of this sort of model that she could point to didn't get a great answer. She mentioned a robotics research park somewhere in the South (Alabama?) and a couple successes, not named, in nanotechnology. The session before mine was a 3-D printing demo which was very cool and well-attended. He said that his printer required at least 6x the time building it spent on fiddling and tuning. He brought a bunch of samples, including this bracelet which was one of his experiments on finishing pieces to look less "printed", by sanding or dipping in acetone. The last session I attended was on NoSQL and while there was some interesting stuff, the large number of panelists and the long day were taking their toll, and I left a few minutes early. One of the panelists talked about Redis and how once you had an in-memory database it was easy to start reusing it for other purposes, like memoizing generated HTML pages, or adding work queues, using the same back-end. If you combine this with the features that many NoSQL databases have of replicating to other machines (using filtering) you have the basis of a pretty sophisticated distributed system. The discussion sort of bogged down in normalization and denormalization, though, without a compelling example of why the denormalized version was better. (Somebody tried to claim that often you split a table in SQL for performance reasons?) Lunch this year was pretty good, catered by ChowGirls instead of the usual stack of pizzas. There was a salad, some pesto pasta, and the choice of chicken salad or BBQ pulled pork sandwiches. One negative I heard is that there were a very large number of no-shows. There were about 1300 people registered but a few hundred did not attend. Since the number of tickets was limited, this means many people who would like to have come did not. It would be nice to keep Minnebar as a free event--- perhaps they could charge a $5 ticket fee and hand everybody who comes in a $5 bill. :) Or, with better tracking of attendee numbers they could oversubscribe. (However, many of the conference rooms were already packed!) | | Tuesday, March 20th, 2012 | | 7:32 pm |
Air gaps and private networks
Bruce Schneier asks Why not improve security by "[taking] those critical electrical grid computers off the public Internet?", and the discussion that follows is reasonably good. But I think there is a false dichotomy here. In the long run, a private network isn't feasible nor even secure--- the difference is between networked and non-networked devices. Power grids, arguably, need to be networked. It is possible to imagine humans covering the "air gap" and flipping switches in response to market demands and load-balancing decisions. But humans have error modes that are just as severe. Disconnection is not a risk-free alternative. Once you have a networked system, what does it run on? Power companies may well have the resources to run their own fiber. But they don't necessarily have the expertise to run a continent-spanning IP-based network reliably. Companies that specialize in telecommunications do. The engineering effort required to keep a network up and running is nontrivial, so there will be strong pressures both financially and operationally to run over somebody else's infrastructure. You might have what looks like a "leased line" but in reality it's a packet-switched virtual connection that shares infrastructure with the public Internet. Even a "private" network must exchange information with public networks in order to be relevant. You might ensure that the only link is a human, but remote attacks are still possible by convincing the human to act in the way you want. That doesn't mean all your SCADA systems need globally routable IPv6 addresses that any hacker can connect to. But it does mean that private systems will tend to look more and more like public systems, and depend on the same set of technical expertise and physical resources. A system that doesn't use off-the-shelf public-Internet infrastructure and technologies will be more expensive, less reliable, and less secure than one which is based on the public Internet. The question is not whether networked systems will be connected to the public Internet, but how. A similar trend toward commodity solutions drives adoption of virtualization. While a VM may not be a "dedicated" resource, virtual infrastructure can be more reliable than its physical counterpart. Exchanging specialized infrastructure for general-purpose, flexible infrastructure improves both availability and security. | | Monday, March 19th, 2012 | | 9:51 pm |
Wall-mounted Life displays
Evil Mad Scientist Laboratories has released a kit for a 8-LED module that implements Conway's Life. You can plug larger numbers of modules together to create a large display. I've thought on and off about building a similar design (and even did some prototyping) based on LED matrix displays, so I think this is a very cool project. Unfortunately, the cost for the kit is rather steep, at $36.75 each (or $22.25 in volume.) Part of the expense is that this is an interactive kit with an IR sensor per pixel. Adafruit has a similar module that's a 16-LED display for $17.50, or $14 in volume, but that's still nearly a buck a pixel! So I was curious how much it would cost to use commodity components to achieve the same effect. It looks like you can get a 1024x768 full-color flat screen for about $150. If you can drive one from a Raspberry Pi the compute power costs just $35, so that's just $0.00023 per pixel. Operational costs might be somewhat more expensive--- and video walls that minimize mullion seem to command a premium. But there's a lot of headroom there. For example, the 24" display I'm using now has about a half-inch bezel. It's 22" wide by 17.2" tall according to the specs. So if I used half-inch "cells" with inch separation I can fit 15x11 pixels on the display and accommodate the bezel width. And anything less than $450 per monitor would still put me below the cost of the EMS kit--- it looks like similar-sized TVs are available from $200+. | | Sunday, March 11th, 2012 | | 1:12 am |
British Spy Fiction and Class
Marissa and I watched the first couple of Sandbaggers episodes today. Although Burnside himself seems to be well-connected (his ex-father in law is the Permanent Undersecretary) at one point his superiors ask about the background of the Sandbagger he put in charge. And the defector in the second episode is a touchy issue in part because of his class as well as his position. It brought to mind Len Deighton's "Berlin Game" series, which is definitely very class-conscious, although I think I didn't pick up on it much when I first saw the serialization on TV. Bernard Samson is an army brat who grew up in Germany; his superiors have the old school connections. (Does James Bond count as upper-class? I think fictionally he has the right background--- and certainly the tastes--- but not all the actors can pull it off.) And it's been too long since I read any le Carre... It seems to me that the fiction of this sort, class distinction is often blurred with the operation/political distinction between the political appointees and the professional spies. I will have to ask Marissa whether this is a theme in MI-5 as well. | | Friday, March 2nd, 2012 | | 2:06 pm |
Project Skyway 2nd Class
Project Skyway revealed the members of its second class today. They picked a smaller group, only four companies this time. YumZing ( http://www.yumzing.com) "find the best dishes" rather than just finding a restaurant. Seems plausible, but the challenge will be making it distinctive from sites that *do* find a restaurant--- and building up a big enough network that people want to use the site. Political Harmony ( http://politicalharmony.co): help voters find candidates that match their opinions. Also help political campaigns poll and target younger voters. This doesn't seem like a winner to me. Should be feasible to launch for the 2008 cycle--- but, the area where I find I need the most help is local races where I end up having to visit candidates' web pages. How much value can they really add for state and national races? Two dominant parties tends to devalue the benefit of finding a good match, unless you abandon strategic voting. Energy Resource Insights: might be promising. "Westlaw" for energy programs, collecting scattered information on conservation, energy production, etc. The founder has some background in business and energy consulting; it might be a challenge to switch to SaaS without some strong technical leadership as well. HypeSpark ( http://hypespark.com/). Deals and freebies for endorsing companies to your social media network. I hated this idea in the form of ImDorse last cycle and I don't feel any better about it this time. It's bad enough Google and Facebook want to monetize my social network--- I'm supposed to do so as well? Rest assured that if I promote a link it's because I'm genuinely enthusiastic about the product, and not receiving any kickback. | | Tuesday, February 21st, 2012 | | 8:20 pm |
Local Mesh Networks Are Not the Internet
The most recent Scientific American has yet another article extolling the wonders of mesh networks and their ability to route around censorship (and damage.) As usual, the article ignores the uses people actually have for the Internet. Ask a random passerby what sorts of things are "on the Internet", and you'll get a wide variety of answers: E-mail, porn, Twitter, Facebook, Wikipedia, games. Very few will say "all the computers in my neighborhood", because virtually nobody cares about that aspect. And the former list are almost entirely hosted in data centers. No application but Bittorrent and botnets cares about talking to others in your neighborhood. They want to talk to a rack of servers living in a carefully air-conditioned room, usually in some other city. So what good does it do to build a mesh network that is independent of ISPs, when the other side of the applications that people use all live in data centers connected to ISPs? Possibility 1: Build new applications. Good luck with that; market discipline will quickly teach you the benefits of centralized (but clustered) applications vs. trying to run your application in a peer-to-peer fashion. Possibility 2: Connect all the data centers in the city to the mesh network. A good start. Too bad that you need DNS to find them, and you probably don't have any TLD nameservers in your city. So you implement a new distributed naming system. See point 1. Possibility 3: Build mesh networks large enough to cross the Rockies, or develop cheap homebrew trans-Atlantic links. (Kickstarter a few communications satellites?) At least this doesn't require a whole new protocol stack! Back in the real world of hierarchical network routing, though, we really could use a new protocol stack that handles multiple connections well. For all the talk about the Internet supporting redundancy, multihoming (having two or more IP addresses) is handled very badly. I have had friends with redundant links through two different ISPs (DSL + cable, for example) and you can make this work--- short-lived HTTP connections load-balance pretty well. But sustained sessions (remote desktops, VPN, etc.) can't be switched from one path to the other, because that TCP connection state is tied to an IP address, which indicates a particular ISP. There is virtually no way to change your route (as an end user) without changing your identity as well. Large enterprises are able to negotiate service agreements and run VPN connections in such a way as to tie their internal networks together despite this. But the end-to-end argument tells us that reliability, security, and availability are properties that can only be achieved by endpoints working together. IP addresses as endpoint doesn't cut it--- but until that problem is solved, mesh networks will continue to be local-area toys, not censorship-robust Internet access. | | Wednesday, February 15th, 2012 | | 10:30 pm |
Dimensional Politics
I had to untangle a particularly hairy calculation during a code review a couple days ago, and did dimensional analysis to make sure I believed it. Which brought to mind a political rant. Let's eliminate "create N jobs" from the political vocabulary. The correct quantity is the job-year. Suppose the state is considering building a new stadium. Will this stadium "create up to 8000 jobs"? The statement is meaningless. The new Twins stadium had 3500 different people work on it, but a peak task force of about 800. It's like saying your family's budget is $20,000 but neglecting to specify whether that's per year or per month. Constructions projects are particularly bad this way. Hiring 10,000 people to build roads and bridges for a year is just 10,000 job-years. You could get the same job-year benefit by hiring 2,500 additional teachers on four-year contracts. Or by a policy that brought in a 350-employee company that stuck around for 30 years. (Obviously if you want to consider the fiscal benefit it should take into account some discount rate, so if your goal is stimulus spending 1-year employment is better than 30. But normally policies should favor long-term effects.) At the Project Skyway kickoff party, Cem Erdem joked about wanting $1b for startups instead of $1b for a stadium. How would that compare in job-years? Well, venture-funded startups tend to grow at 1.5x-2x per year until they mature or go bust. Most go bust. Suppose the state of Minnesota puts $300m into 300 startups, each of which start out as a 3-person team. Let's make up some numbers: Year 1: 300 startups remain, 3 people each, 900 job-years, 15% go bust Year 2: 255 startups remain, 6 people each, 1530 job-years, 30% total are bust Year 3: 210 startups remain, 12 people each, 2520 job-years, 40% total exit by end of year Year 4: 180 startups remain, 20 people each, 3600 job-years, 45% total mortality Year 5: 165 startups remain, 30 people each, 4950 job-years 13,500 job-years total, easily beating the construction project even without looking farther into the future! Startup numbers are tricky to find. SBA says 69% of new businesses survive 2 years and 51% survive 5 years. TechStars claims only about 10% mortality after three years--- and about 15% successful exits. Google's corporate history has: Sep 1998: 3 people (The third guy quit last week. I had him as a TA at Stanford.) Feb 1999: 8 people Nov 1999: 40 people Mar 2004: 800 people I don't mean to make a serious argument that VC is a better use of $300m of taxpayer money than a stadium. But if our focus is "creating jobs" then we need a long-term metric, not how many different construction people would work on a project. | | Tuesday, February 7th, 2012 | | 5:39 pm |
OK, OK, not "finished", I get it.
I completed the main storyline in Skyrim last night. It was OK but I should have dialed the combat difficulty up so that the main boss fight was something of a challenge. (Also I regret not trying to swipe anything from Shor's Hall when I was inside.) What annoyed me, though, is that more than one character felt it necessary to tell me that I could keep playing! "You have accomplished your destiny, but you could go on to accomplish other things too, I'm sure other glories await, control your own fate, blah, blah, blah." I get it. Sandbox. Don't have to quit. | | Monday, February 6th, 2012 | | 3:37 pm |
VCs, Alpha Becoming Beta, and Cashout Deals
Venture capital funds have a lot more money than they did in the 1990's (pre-boom.) That could mean more money for a wider variety of investments. Or, it could mean more money chasing the same opportunities. It seems likely that, like any other investment strategy, good ideas get copied and great returns can't scale to large amounts of money under management. Even if there are still a ton of great investments available, more money available means that entrepreneurs have somewhat more leverage (they may have two or three funds interested in them). This is combined with a secular trend that lowers the amount of money needed to build a IT startup. So VCs may be feeling a little bit of squeeze, although it appears angel investors may actually be taking the worst of it... But, if we think about it from the VC's point of view, there are a few things he or she can do to prop up returns. The VC either needs more winners, bigger wins, or a bigger share in the winners. And I think that last option explains a recent trend towards founders (partially) cashing out during funding rounds. (I am not sure this is actually a trend or just a series of anecdotes. It seems more common now than during the boom.) ( math on a hypothetical example )So, if there is more money chasing deals (giving the VC less leverage on valuation) and less money is needed (giving the VC a smaller piece of the pie), then giving the founders a partial exit looks like an efficient way of leveraging the additional cash. Traditional VCs can't really do 20x $5m deals instead of 10x $10m deals, although there are some funds that are trying the former approach--- the math above works even better for scenario C if you assume there is some cost per deal/company. | | Thursday, February 2nd, 2012 | | 1:31 pm |
Negative yields on U.S. treasuries WSJ reports that the U.S. is considering changing its auction rules to allow negative yields. The secondary market yield for short-term treasuries has gone negative a few times over the last few months, providing a quick arbitrage opportunity--- the government would obviously like to capture that for themselves instead! (Historical bond prices are hard to find--- I'd like to find some information on the secondary market but I suspect I'd have to pay for such. Yahoo search shows a couple treasuries with negative yields, but they have payment dates in the past.) Why would this occur? Funds might be obligated to keep some percentage of assets in securities, and want Treasuries due to low risk--- even though it's a guaranteed losing proposition. Even without this constraint, if you have a billion dollars sitting around, the risk that your bank will go under has got to be worth at least a fraction of a percentage point, so keeping it in "electronic" cash is not free. And physical cash costs even more! There may also be some speculators who see the high demand and play the market even though the yield on the security is negative. There seems like a market opportunity here (even if the arbitrage disappears)--- how could you keep money safe for a low enough cost that people can park cash with you, instead of taking a guaranteed loss on treasuries? Become a bank and double-pinky-swear not to do anything with the money? For that matter, what sort of budget would you need to take advantage of the arbitrage opportunity here? | | Monday, January 30th, 2012 | | 5:26 pm |
Mini-WTF
Encountered today:
if ( stats.readOps > 0 ) {
averageReadLatency = stats.readLatency / stats.readOps;
}
if ( stats.writeOps > 0 ) {
averageWriteLatency = stats.writeLatency / stats.writeOps;
}
systemStats.averageLatency = 0;
if ( ( stats.readOps + stats.writeOps) > 0) {
systemStats.averageLatency =
( ( averageReadLatency * stats.readOps) +
( averageWriteLatency * stats.writeOps) ) /
( stats.readOps + stats.writeOps);
}
return systemStats;
I don't think that the effects of integer rounding were a desired side effect here. So we can probably safely assume that a / b * b = a. | | Monday, January 23rd, 2012 | | 9:35 pm |
Wut
Livejournal has a Google+ page. The tagline they use is "There's no such thing as TMI on LJ." ... | | 4:42 pm |
Past time for a new game computer
I'm looking at the following: Shuttle XPC R4 6100 G Intel i5-2500 quad-core @3.3GHZ 8GB memory Geforce GTS 450 1GB I can get this from Shuttle for about $1250, which is considerably cheaper than the $2000-ish system I spec'ed out last time I looked. So I'm about ready to pull the trigger. (It looks like I could do a little better by buying all the components on Newegg and assembling it myself.) Only thing I'm not sure about is whether I ought to spring for a better card--- buying the Geforce GTS 560 instead would add a bit more than $200 to the cost, including the necessary power supply upgrade. I guess I'm also unclear on the difference between the various Shuttle lines, and what benefit I'd get from an Intel H67 chipset vs. an Intel H61 on the motherboard. | | Saturday, January 14th, 2012 | | 1:40 am |
GCD
"Best Writing on Mathematics 2011" is a mixed bag; some neat articles on art, Escher, and Rubik's Cube. When it turned to mathematics education and philosophy of mathematics--- areas I consider myself at least somewhat interested in--- I started skipping through, because the articles were close to unreadable. (But not uniformly so.) One of the interesting ideas I came away with, was mentioned peripherally (so much so that I can't find the exact reference.) Basically, the Euclidean Algorithm requires just repeated subtraction and ordering. So you can apply it to mathematical structures other than the integers (and the reals, as Euclid did.) Wikipedia mentions a batch of applications in this area: polynomials, gaussian integers, noncommutative rings. You can even turn it around from "this is an algorithm to calculate Greatest Common Denominator" to "GCD is defined to be whatever the algorithm produces" and show that it behaves like GCD ought to. |
[ << Previous 20 ]
|