Hacker Newsnew | past | comments | ask | show | jobs | submit | 2011-05-23login
Stories from May 23, 2011
Go back a day, month, or year. Go forward a day, month, or year.
31.Google Chrome Courgette differential compression algorithm (chromium.org)
71 points by dajobe on May 23, 2011 | 21 comments
32.Filter Hacker News by tags (70K past URLs and hourly sync) (archfinch.com)
70 points by drx on May 23, 2011 | 18 comments
33.What determines word length? Not frequency after all. (web.mit.edu)
70 points by ColinWright on May 23, 2011 | 27 comments
34.How I didn't take down the Internet (mixpanel.com)
60 points by carlsverre on May 23, 2011 | 4 comments

There is a good article from another software developer around here who told his boss he was taking a 3 month vacation. He made the point the business needed him more than he needed it; he was a competent developer and could easily get work, didn't have any living/large financial dependencies. At first I thought it was absurd, but the more I thought about it, he was absolutely correct.

Take a long vacation some time. Even if you do have a family, save up enough money and go travel for a while. Take some decent time off work (4+ weeks). Let them fire you if they want. That's (one of my) my goal(s) over the next 2 years: take an extended vacation (I haven't taken more than a week off since I graduated college).

36.The most important thing to understand about new products and startups (paulbuchheit.blogspot.com)
56 points by robot on May 23, 2011 | 6 comments
37.Andrew Chen's 2011 Blogging Roadmap: “Zero to product/market fit” (andrewchenblog.com)
56 points by ericflo on May 23, 2011 | 2 comments
38.Node.JS Help Sheet (gosquared.com)
55 points by SRSimko on May 23, 2011 | 1 comment
39.Annoying.js: How to be an asshole (kilianvalkhof.com)
53 points by kilian on May 23, 2011 | 10 comments

You guys are doing it again -- idealizing the other side of the fence as if everything was all rainbows and unicorns in Europe.

In Germany and many European countries, you pay for healthcare and it costs a lot -- you simply don't have the option of not having healthcare and the cost is proportional to your income rather than your health condition. Also note that the employee caries the full cost of health insurance as opposed to the employer usually covering it in skilled professions in the US.

The social security model is also somewhat similar: you pay (high) social security taxes and get money back based your contributions.

Unemployment, also like in the US, is pretty sane if you're a full-time employee and are fired. You don't get it for several months if you quit on your own and if you haven't payed unemployment taxes, you get put on unemployment that's just at the edge of livable (housing costs + about $500/month).

And note, those taxes come after the lower salary. A pretty common take-home salary for a European software developer would be $3000-4000/month.

And really, how many 20-somethings that complain about the cost of living are doing it because they're stashing away too much in their retirement fund?

Public transit is a valid one, but then, the two highest paid areas for software developers in the US, New York and San Francisco, also have quite good public transit. (Not to mention that a one-month pass costs $100-200/month depending on the area.)

The truth is that I've heard people say that while they eat out every day, have a new car every couple years, live in swanky places and spend money on a constant stream of new gadgets. Americans also have a weird fetish that you don't find other places about buying homes in their 20s. While there are some valid reasons that make the total cost of living in Europe comparatively lower, I'm really not convinced that's the core of the difference. It's just that people quickly grow into their incomes and start seeing things as essential that aren't.


Opening the projector alone involves security clearances and Internet passwords, “and if you don’t do it right, the machine will shut down on you.’’ The result, in his view, is that often the lens change isn’t made and “audiences are getting shortchanged.

DRM has now made movies suck even at the theater. If I was a director, I'd be cheesed.


Think about your choice of words up there, and you might just come up with your solution.

Force.

As in, my employer is forcing me to take shorter vacations. My employer is forcing me to work my vacations around their schedule.

That's not what he's doing. He's coercing you. It's different. He's implying that if you take the vacation you want, there might not be a job waiting when you get back. The answer to that is "fine".

If you truly don't care whether there's a job waiting on the other side, he loses all leverage. If you know for a fact that you could pick up another dev job inside of a week with a Facebook status update, he loses all leverage.

In other words, the only reason you think your boss can "force" you to do anything is because you've given him that ability. Quit thinking in those terms and you'll live a much happier life.


This was one of the major draws for me for moving to Europe in my early 20s (from the US). After working one year in the US and having one week of vacation, it was bordering on surreal to have 6.

That said, most Americans wouldn't like the European pay scales. While a developer gets 3-6 times the vacation in Germany, they make half as much money.

For me it was a great trade; I still had a middle class income and spent my 20s bouncing around the world visiting more than 30 countries on 5 continents, with zero gaps in my employment.

Now that I'm an employer, I still see it as a great trade: employees are a lot cheaper here, and seem to be happier. But again, while most American software developers would love to have more vacation, I've heard them also repeat ludicrous things about how they can "barely survive on $60k/year".

44.Gamifying Github (coderwall.com)
52 points by jamesjyu on May 23, 2011 | 30 comments
45.iPad Usability: Year One (useit.com)
51 points by joshuacc on May 23, 2011 | 22 comments

When I complained to an employer that it was too hard to request my vacation time (it's in my contract, they made it very hard to pick dates by always having an emergency deadline, etc) they replied "It's like that everywhere", as if it was a legit answer.

Many employers also lump in sick time with vacation time, as if that's a replacement since you didn't come into work. That would probably be okay, if you had an option to take unpaid vacation time when the time comes. Instead, you're often forced to take a shorter vacation, which doesn't do the job.

And forcing you to work while on vacation is unforgiveable. It shows that the company doesn't understand why vacation time is necessary. (I haven't had anyone do this to me, thankfully. It wouldn't have gone well.)

If taking unpaid vacations was an option, I would probably end up taking about 4 weeks worth of vacations, instead of 2.


It's a cease and desist letter. It implies that if Lodsys continues trying to enforce patents Apple has licensed, Apple will sue them.
48.Duncan Riley sells Inquisitr for $330,000 (startupsmart.com.au)
49 points by Finntastic on May 23, 2011 | 31 comments
49.How We Thought We Could Use Scala and Clojure and How We Actually Did (ontwik.com)
49 points by ahmicro on May 23, 2011 | 14 comments
50.California Startups: Your Company's Fate May Be Decided Tomorrow
48 points by kposehn on May 23, 2011 | 22 comments
51.Completely unfair comparison of JavaScript syntax highlighters (softwaremaniacs.org)
48 points by dchest on May 23, 2011 | 5 comments
52.Pictures of Earth 750 million years ago to the present (sites.google.com)
47 points by japaget on May 23, 2011 | 14 comments
53.Evernote Architecture - 9 Million Users and 150 Million Requests a Day (highscalability.com)
48 points by alisson on May 23, 2011 | 11 comments
54.North Carolina governor refuses to block anti-muni broadband law (arstechnica.com)
47 points by evo_9 on May 23, 2011 | 27 comments
55.Go at Google I/O 2011: videos (golang.org)
46 points by enneff on May 23, 2011
56.Google Claims 30% Latency Reduction In Chrome (conceivablytech.com)
46 points by peternorton on May 23, 2011 | 4 comments

A few thoughts:

1. Nothing in the letter commits Apple to defend the developers or to hold them harmless. Legally, Apple does not have to do this. One can only hope that its self-interest in protecting its app-store ecosystem will be enough to cause it to do what is right. For now, Apple is saying only that it will fully defend its "license rights." One can read more into this than is stated but that is all that is stated (of course, Apple's throwing its weight behind developers even at this level is no small thing).

2. The letter does not quote the license agreement in any way. Normally, if there is something definitive in such a document, it is put front and center in a letter of this type. This could mean that the license language is not as definitive as the tone of this letter might suggest. Only time, and a detailed review of the license language itself, will tell on this point.

3. It is plain that Apple wants to do the right thing for its developers. Yet the situation is trickier than that. As of now, Apple has no legal obligation to defend or hold them harmless, and that step is an order of magnitude greater than that of saying it will merely defend its license rights - and hence the hedging in the letter.

If the goal of the patent system is to promote innovation, then this case is Exhibit A for how it is failing. Thousands of patents are gathered up in a portfolio held by an IV affiliate and licensed in bulk ("monetized") to big players such as Apple, Microsoft, Google, etc., who in turn believe that they have clear rights to build systems around them. But the patents are "monetized" again to lesser players with shadowy relations to the original IV group, who in their turn try to "monetize" them further by attempting to double-dip with the original licensees based on limitations in the original licensing language. At each step, threats of lawsuits abound and nowhere can one find even one example of a patent developed by a company for its own innovative uses. Instead, we have the equivalent of shadowy trafficking in intangibles that are now being used, not to encourage innovation, but to attack the very developers who are trying to innovate. Positively Kafkaesque.


> I wonder why Linux distributions such as Ubuntu still download the entire new packages on an upgrade. A lot of upgrade time and bandwidth could be saved by only sending the differences. And it would reduce load on the mirror sites.

Speaking as someone who has worked on this problem for my own projects [1], I think I can answer this.

Fedora/Yum already supports downloading a binary diff between rpm packages to reduce download size, but this also requires keeping a cache of previous rpm's to run the patch against. There are multiple reasons why you can't rely on binary diffs against the files actually stored on the system, most namely for files like /etc/* that are more than likely modified since installation.

But the real problem with binary diffs is that unless you're doing what Google does to ensure that people stay up to date, the number of binaries you need to diff against grows very quickly, and there are a lot of edge cases to take care of.

For example, let's assume some package A has been released as version 1, 2, and 3. When A has a new release 4, you obviously want to build a diff against release 3, but then you also most likely need or want to build a diff against 2 and maybe even 1 to take care of people who haven't already upgraded to 3. And even if you build a diff against every single version ever released, you will still always need to provide a full version of the package as well for two cases:

1. New installations, or reinstallations, of the package.

2. When the user has cleared their package cache to save room.

And even beyond that, creating diffs involves a lot more effort and knowledge on the part of the packaging team because they not only need to know how to build those diffs, but they also need to keep track of old package versions to build those diffs against.

The end result is that you trade download bandwidth and time on part of the server and end users for a lot of effort, time, and storage space on part of the packagers and distro mirrors. For mirrors that are already encroaching on 50GB for a single release of Ubuntu and/or Fedora, adding a whole bunch of binary diff packages will most likely grow the repository size by at least 30-50%, if not more, depending on how many old versions you diff against.

The question then becomes: does this trade off actually make sense, or does it present further roadblocks for contribution from packagers and donated mirrors?

[1]: If you would like to see how I handled this sort of task, I have a Python library I wrote to handle the client side updating. I know it's not the entire piece of the puzzle because it doesn't cover generating the updates, but it might be useful for someone else. http://github.com/overwatchmod/combine

59.How Rapportive (YC S10) Designed Their New UI (rapportive.com)
45 points by rahulvohra on May 23, 2011 | 8 comments
60.Free book: The Architecture of Open Source Applications (aosabook.org)
44 points by Tsiolkovsky on May 23, 2011

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: