HNHacker News
TopNewBestAskShowJobs

skimbrel

949 karma · joined March 25, 2011

submissionscomments
skimbrel··on Apple Says That You Can't Give Away A 'Free' iPad Or iPhone In A Contest
As much as Apple is prone to doing silly legal maneuvers, I really can't see this as anything other than massively out of context.

I can't find the original document that Techdirt is claiming to quote.

I would not be surprised if this is from an agreement between Apple and a retail partner, e.g. Best Buy. It wouldn't surprise me if Apple wanted to discourage Best Buy from offering up a free iPad with purchase of your new Shiny Gadget of the Week. In that context, this seems entirely reasonable. It's Apple's product, and they can tell third-party retailers of it how to sell it.

skimbrel··on School superintendent requests school be turned into prison
The University of California and California State University are facing a one billion (yes, that's billion with a b) dollar cut from their EXISTING level of state funding. That is not a lie. That is education funding being slashed.

http://www.ebudget.ca.gov/pdf/Revised/BudgetSummary/HigherEd...

skimbrel··on School superintendent requests school be turned into prison
> Oh really? Public employees are far more likely to have pensions than the rest of us. Public employees earn significantly more too and have greater job security. We blame them because they have a huge effect on who gets elected, which directly affects how much we have to pay for them.

So you're saying public employees are one of the few segments of the US population who have enough input on how they're compensated (via electoral control of their bosses). If private-sector workers are unable to negotiate comparable compensation for their work, then maybe we should blame labor practices in the private sector. Unionized industries aside, compensation is almost entirely at the discretion of the employer. Isn't that a little screwed up? Again, what I am saying here is that the solution to "hey, those public employees have a better deal" is not "take it away from them", because nobody wins in that case. Instead, demand the same deal from your employer. It really wouldn't hurt their bottom line that much.

> What's your method for determining whether children are learning? We tried trusting teachers and schools - that didn't work.

I will admit that I don't have a real answer to this. But I am a fairly recent graduate of the public education system (finished high school in 2006) and I can tell you that 90% of my graduating class managed to pass the tests but were still complete idiots who couldn't think for themselves. (Sadly, I could say this about at least a few of my fellow UC Berkeley 2010 graduates as well.)

Mandating testing gets you graduates who are good at passing tests. Tests are not the real world.

> The US govt collects about as much in taxes per person as the "high tax/high services" countries. (The US actually collects significantly more per person than Canada.) Yet, we don't get the services. More money can't solve that problem.

Okay, then how do we solve it? For one, we could stop spending a trillion dollars per year on our military. Beyond that, we could probably eliminate a lot of bureaucracy. My high school had a principal and three assistant principals for 900 students. Probably a little unnecessary.

Teachers are not the ones to penalize here, dammit. When I have kids, I damn well want their teachers to be well-paid and happy with their jobs. Forty hours per week for thirteen years is a huge amount of time, and there's a lot that can be done to screw up a kid in that time.

skimbrel··on School superintendent requests school be turned into prison
Really? Please don't blame the teachers for this.

This line of reasoning has never made any sense to me -- why does everyone blame the public employees and want to take away their (hardly that great when compared to the rest of the country) salary and benefits? The solution isn't to cut them off at the knees; the solution is to raise everyone else up to the same standards.

If you want someone to blame for this, start with the No Child Left Behind act that forces schools to waste their budgets on meaningless standardized testing, and then penalizes them for it when they do poorly, creating a vicious cycle where a failing school can never become successful because it loses more funding each year. Or you could just go back to the root of the problem and blame the robber barons who, through well-paid lobbyists, have convinced the federal government to dismantle itself and its services year after year since 1980 in the name of the free market. We forgot what happens when corporate influence runs unchecked; we're learning again, and we're learning the hard way. The American experiment is dangerously close to failure.

skimbrel··on Xen has been fully integrated into Linux kernel 3.0
A few years ago the Xen developers sent a massive patch to the Linux kernel developers and it got rejected outright because it got far too intimate with way more of the kernel internals than it should have.

The other blog post linked from the OP's link mentions this: http://blogs.oracle.com/wim/entry/linux_mainline_contains_al...

Here's one of the LKML threads where the Xen guys sent a pull request straight to Linus, got rejected, and there was a bit of a shitstorm: http://thread.gmane.org/gmane.comp.emulators.xen.devel/64085

Things seem to have changed now, though -- it looks like the Xen developers have cleaned up their code and the Linux devs were willing to merge it into mainline.

skimbrel··on Scala One Liners
Okay, here it is in Perl, the granddaddy of them all when it comes to implicit variables:

1. map { $_ * 2 } (1..10)

2. reduce { $a + $b } (1..1000)

3. scalar grep { /(scala)|(akka)|(play framework)|(sbt)|(typesafe)/ } "This is an example tweet talking about scala and sbt." # Pow, easy regex syntax!

4. open(my $fh, '<', "data.txt"); $/ = undef; my $text = <$fh>; open(my $fh, '<', "data.txt"); my @lines = <$fh>;

5. map { $_ => "Happy Birthday " . (i == 3 ? "dear NAME" : "to you") } (1..4)

6. @grades = (49, 58, 76, 82, 88, 90); @passed = grep { $_ > 60 } @grades; @failed = grep { $_ < 60 } @grades; # Sort of gross, might also do this: my (@passed, @failed); map { $_ > 60 ? push @passed, $_ : push @failed, $_ } (49, 58, 76, 82, 88, 90);

7. # I'm not even going to try, because XML::Parser is disgusting. I'll just point out that you'd probably have the same amount of verbosity and disgustingness telling Scala (or Ruby) to parse $arbitrary_data_format, so XML being a one-liner really isn't a huge win.

8. min(14, 35, -7, 46, 98) max(14, 35, -7, 46, 98)

Note: reduce(), min(), and max() are in List::Util, but that's in perl5 core, so they count.

skimbrel··on Unbreaking Web Development, One Loc at a Time
There are a lot of bold claims here, but "automated XSS protection" smells the fishiest to me.

And since when did ostensibly open-source projects have closed betas? Release it now and get more eyes on your code.

skimbrel··on Show HN: Hacker Typer [joke]
Is there any reason this shouldn't work on an iOS device? It's all Javascript. I just can't get my iPad to pop up a keyboard to start triggering keypress events.
skimbrel··on Dr. Stallman responded to my open letter
Okay, rms is officially being an ass here. That response is the grown-up equivalent of sticking your fingers in your ears and going "Nyah nyah I can't hear you!".

He is, at this point, no better than fundamentalist Christians who refuse to even entertain the smallest possibility of the notion that any piece of what they're doing is wrong.

Intellectual discussion requires all parties involved to be open to an exchange of ideas. Rejecting a source of ideas out of hand because it disagrees with your ideas is ultimately only going to hurt you.

skimbrel··on SEC Boots Up for Internet Age (may allow startup crowdfunding)
Is there a way around the WSJ's paywall? Seems to be not quite as easy to defeat as the NYT's.
skimbrel··on Brian Aker explains Memcached
"doesn't involving". That'll teach me to comment on HN at 8 AM.
skimbrel··on Brian Aker explains Memcached
The right way doesn't involving asking this question because you shouldn't be putting anything in memcached that you can't reconstruct from a canonical source. Here's what you do with memcached:

Find places where a result set or computed value takes 500 milliseconds to get out of the database (or to compute in your expensive Apache worker that could be setting up for a new request instead). Wrap the calls that get these values in a caching layer that first polls memcached to see if the result is there, gets the data from the database if it isn't, and then stores it in memcached before returning it. There are plenty of libraries that will just about automate this for you -- you call the fetcher function with the cache key and a callback to use in the event it isn't there, and it does the right thing.

skimbrel··on How Fucked is Muni
Another great suggestion! I've added all of these as issues in github, so as I have free time I'll start building out more features.
skimbrel··on How Fucked is Muni
Oops, this was not the comment I meant to reply to.
skimbrel··on How Fucked is Muni
It isn't the SFMTA themselves -- they contract with an operation called NextBus. NextBus installs GPS tracking devices on the transit vehicles, which radio their route, direction, and position back to a central system that then computes ETAs for all the stops on the route. That info is then exposed via a website, an SMS gateway, custom digital signs at the stops themselves, and via the API. It's incredibly useful to have, and there are half a dozen apps out for iOS and Android that show this info to you on the go.
skimbrel··on How Fucked is Muni
Awesome. Your site was my inspiration!
skimbrel··on How Fucked is Muni
Heh. Yeah, that's because a good portion of all the lines listed are rush-hour-only express variants of the main lines, or late-hours skeleton service (for the lettered LRV routes). I'm working on adding information on when each line is scheduled to run and what its expected headway is, so look for the inactive lines to disappear and for info on those that are running to get more accurate!
skimbrel··on How Fucked is Muni
Hmm, that's not a bad metric. Maybe I can write up a special function for the metro lines that computes headways in the Market Street Subway and incorporates those into the status calculations.

The main issue is that until I go through and rewrite the whole thing to do long-polling for every line, it's expensive to compute each route since I have to make several requests to ProximoBus to get all the necessary data. Caching for five minutes helps, but it's still less than ideal.

skimbrel··on How Fucked is Muni
Nice to see something of my own show up on HN.

For the curious:

The site is a very simple Dancer app running in Starman on an EC2 instance. The data comes from ProximoBus (http://proximobus.appspot.com/), a lightweight JSON-format wrapper for NextMuni's API.

Three things contribute to a route being "fucked": - Percentage of vehicles on the route marked as delayed by NextBus - Size of the smallest gap between vehicles running in the same direction ('bunching') - Size of the largest gap between vehicles running in the same direction (the other effect of bunching)

Code is up on github: https://github.com/skimbrel/how-fucked-is-muni Enjoy!

skimbrel··on How Digg is Built
Cassandra, Redis, MySQL, and Mogile as primary data stores? Good lord. And I thought my company had a complicated architecture.
← PreviousPage 4 of 4