skysight-inc/HackerNews huggingface dataset:
Canonical should consider dropping Unity and getting the Gnome people to drop Gnome 3 and then get them to come out with Gnome 4 based on Gnome 2 with some very small Ubuntu twists. Oh right, that would be all Ubuntu versions up to 11 which were successful.
Ask HN: Anybody actually making money with Salesforce’s AppExchange?
I'm exploring a new start up and one of the distribution channels could by Salesforce.com's AppExchange. However, I've read some articles (although somewhat dated) that indicate there are not a lot of people who actually make money on AppExchange. Can anyone share their experience, or point me in a direction where I can find out more?
Flingo Raises $7M In VC Funding
I honestly thought Apple's behaviour with the 3G was shameful. I wouldn't have minded if they hadn't released the update for the 3G, but instead what they effectively did was brick a load of people's phones and then offer poor options for downgrading. It's really not what I expect from a premium brand.
He almost certainly is either playing dumb or is dumb. If you're not dumb, you have to play dumb, because otherwise you'll be crucified.
Not really, as I am a law student and quite interested in first amendment issues. However, the question of whether porn is obscene is at the outer limits of being relevant on HN to begin with, and I'm reluctant to spend a whole afternoon writing an extended argument with citations and so forth. If you're interested in why I think the utility argument is a dead letter, look up the work of Edward De Grazia, a leading legal writer and litigator in this area.
Hey, watch it there. All WP7 devices support all the updates thus far and for atleast the next year or so.
Nice collection. The weird concatenation, I suspect, is a part of the grammar. It's frequently used in C code as well, when the format string is too long to fit in one line.

printf("%d ... blah blah blah"
"%f ...", 1, 1.2);
Okay, here's one that I've been stuck with. What does Ctrl-Z do in vim, and how do I "undo" it? I always have to kill -9 the vim process, and it sucks cleaning up where I was.
I'm an autodidact.

Isn't it part of being self-taught to find mentors - in books, online, and if you're lucky, in person?
Hey, I use almost exactly the same system, except that instead of evernote I use backpack (http://backpackit.com/), and instead of the three sections being day, week, and month, I have "Next", "Soon", and "Backlog". Also, I have two todo lists - one for work, and one for non-work.

I like backpack because I can reorder and drag items between lists easily. There is even a checkbox beside each item, which I get an unreasonable amount of satisfaction by clicking.
Workers will continue to work under worse and worse conditions until consumers say "Stop--there's no justification for doing that, not even for profit!"

True. And the craziest thing is that the consumers and the workers are mostly the same population. It's not like dirt poor people in China produce and rich guys in Malibu consume. Most consumption if from ordinary families, workers, the middle class etc.

The problem is that people think in "modes", so when in "consumer mode" they go for the cheapest stuff. This would make sense if price paid was all there is to it, but they forget that by doing so they also alter the balance with regards to work and wages, something that will in turn affect them as workers.

From fewer factories being built in their country, to office jobs getting worse conditions, to the disappearance of the middle class, to the economy tumbling down. Henry Ford is said to have said: "If I don't pay them [his workers] more, who will buy my cars?".
Codesonic will turn you into a faster, smarter, more knowledgeable programmer.
quoting a comment I read here a few months ago, the MPAA has a combined market cap of $250 billion.

http://news.ycombinator.com/item?id=3245520
Less recurring, but still recurring. Those tapes wear out eventually.
Normally Ctrl-Z will pause a process and it will be kept as a background job.
Type 'jobs' in your prompt to see running jobs.

If there is only one a '%' will bring to foreground the last job, otherwise you can do 'fg x' where 'x' is the job number.
In my opinion this is pathetic and intellectually lazy writing. Don't like him? don't use his shit but for the love of sanity can we all stop pretending that we were born fully aware, mentally and emotionally developed adults who made no missteps of character in college? I certainly wasn't perfect and I doubt you were either. People grow up and mistakes, both big and small, are a part of that. I've grown enough between college and now to allow others the room to do the same.
> I never bothered installing plugins and spent all my time instead learning

This wisdom should be shared with everyone learning vi/vim, since this leads directly to the largest payoff.
I find it mind blowing that (in the comments of the blog post) someone asked the Path CEO:

> Why wasn't this [sending all the contacts to your servers without users knowing] an opt-in situation to begin with? Isn't that against Apple's own T&Cs?

and the Path CEO replied:

> This is currently the industry best practice and the App Store guidelines do not specifically discuss contact information. However, as mentioned, we believe users need further transparency on how this works, so we've been proactively addressing this.

Really guys? REALLY? This is why developers need explicit guidelines, because as they just demonstrated if there are no guidelines companies default to the thing that exploits the end user! (incidentally, its unfair to pick on Path too much as almost all social networking applications do exactly this also.)

I actually cringed when I read this "however, as mentioned, we believe users need further transparency on how this works" ... which is why it took someone running a proxy and writing a blog post for you to suddenly be transparent about it. Mind blowing. Why even say that?

Btw, times like this? You destroy any and all credibility when you say you are trying to build a company that is built to last or one that is going to follow in the footsteps of Apple.

Apple would never do this to their users.

(do not make this a discussion about the evil and good sides of Apple. Apple has repeatedly not bowed to companies desires for owning contact information and I expect they will fix this contact hole in the near future.)

It's sad because I respect Path and their love of design. But design isn't just about how it looks. It needs to resonate through the entire vision, company, product, and how you treat people.
I once found this site with lots of interesting projects:
http://www.sparkbangbuzz.com/
Competition in the field of smart watches is exciting, and we should expect much more to come in the field of smart wearable devices.

I've been playing with the WIMM device for a while (developed their News Reader app) and, for those who appreciate, it is am impressive piece of technology. Your watch tracking your bike ride, telling you when the next bus arrives, or the number of push-ups you've done so far is pretty cool.

The big drawback is, as we're all used to already, battery life.
Well that's the whole problem isn't it?

If they had asked up front for permission this article would not have been written.
How to Get Started on Social Media: Take It One Network at a Time
A postdoc in my lab published an academic paper that did exactly this: automated static analysis of iOS compiled binaries for privacy violations.

As far as I know Apple was not interested.

Here's the paper if you want to take a look:
http://seclab.cs.ucsb.edu/media/uploads/papers/egele-ndss11....
Congress Gives Commercial Drones Takeoff Clearance for 2015
But to be fair, everyone gets a cheap phone every two years, so what's 1% today will be 100% in two years. Remember, the G1 is three-ish years old, and it's mostly gone now. The Nexus One was released on January 5, 2010, and so only the earliest of early adopters (with a standard contract) are just now gaining the ability to upgrade.

Two years is a long time, but if IE 6 went away after two years, we wouldn't even remember that it was once a thing :)
It backgrounds the running process. Type 'fg' to bring it back to the foreground. This isn't actually a vim thing, it's a shell thing
Thanks for the recommendation for Epistle. I use Dropbox to sync my TODO.txt between my phone, home computer, and work computer. The Dropbox default editor is mostly adequate, but is a speedbump when I just want to jot down a quick note.
I'd love some explanation as to why someone downvoted this comment.

Not only is the X- prefix draft topical on Hacker News (as it was less than a week ago that it first got posted here, despite having been published in 2011), but it is from another standards body that is addressing the same underlying issue as this link to the W3.

As an example of how the content has severe overlap:

IETF: "Creators of new parameters to be used in the context of application protocols: 1. SHOULD assume that all parameters they create might become standardized, public, commonly deployed, or used across multiple implementations."

W3: "Steve: Suggest that group establish a goal that members who introduce experimental properties submit a description to the WG"

IETF: "Although in theory the "X-" convention was a good way to avoid collisions (and attendant interoperability problems) between standard parameters and non-standard parameters, in practice the benefits have been outweighed by the costs associated with the leakage of non-standard parameters into the standards space."

W3: "tantek: Once it's on the open Web, it's not proprietary...it can be considered experimental, but claiming it is proprietary-only is inaccurate ... plinss: Thing we need to spend some energy minimizing the escape of prefixes into the wild"

IETF: "The primary problem with the "X-" convention is that non-standard parameters have a tendency to leak into the protected space of standard parameters (whether de jure or de facto), thus introducing the need for migration from the "X-" name to the standard name."

W3: "tantek: One possible proposal is to only parse other vendors' prefixes in conjunction with parsing unprefixed. e.g. with -webkit-transform. We wouldn't parse that until we also parse transform. Thereby giving authors option to just use unprefixed, hopefully biasing new authors to using that instead."

IETF: "Furthermore, often standardization of a non-standard parameter or protocol element leads to subtly different behavior (e.g., the standard version might have different security properties as a result of security review provided during the standardization process). If implementers treat the old, non-standard parameter and the new, standard parameter as equivalent, interoperability and security problems can ensue."

W3: "macpherson: If we change the spec after implementation, you'll need to return the value in the old form as a prefix. ... szilles: What do you do if the values changed between property versions? alexmog: We'll adjust the output to match the syntax of the given version. Rossen: I don't think that's right. Today we only have aliases."

IETF: "We have already seen this phenomenon at work with regard to FTP in the quote from [RFC1123] in the previous section. The HTTP community had the same experience with the "x-gzip" and "x-compressed" media types, as noted in [RFC2068]:"

W3: "glazou: [clarifies his understanding, and asks about prefixed values as well] ... florian: Now, for prefixed values. I say just return the one you got. plinss: Agreed. TabAtkins: Agreed."
Ah! Good question. So, previously, we'd do support ourselves. It doesn't take more than 45 min - hour a day total, most days less. Part of why it's fast is we use our own custom-rolled tool (coming soon to a public launch near you: http://charmhq.com).

This time, we have part-time help in the form of an international business major at a local university. She's not an expert on our app, BUT for hard q's, she'll just let the folks know we'll get back soon.

Last summer, we had hired 2 full-time staff to do this and a variety of other things, but that was a major mistake for many reasons and we had to let them both go this fall (soooo stressful; now I am anti-hiring).

The other reasons our support load is so fast/light:

It's a mature product, without many bugs.

If things do go wrong, it's a time tracking tool, not the end of the world.

The UI of the product is really quite amazing, if I do say so myself; and that creates less confusion.

The look & feel of the app, our name, our marketing materials, our philosophy, our feature set attract and groom a certain kind of customer who is much more friendly and laid-back than the average SaaS customer. We get a tenth of the angry emails of friends who have a similar number of customers.

Finally, we ourselves are chill. Lots of folks with a business act as if the customer is a gunslinger shooting at their feet to make them dance. We do not. Early on in Freckle's life, we totally abandoned it for a month or two at a time, support included. Nothing terrible happened. I wouldn't do it again, but it puts it in perspective.
Because a) there is a large body of case law delineating the boundaries of what is copyrightable, and questions of utility (as distinct from obscenity) have been litigated to death already; and b) Wong' argument is that the porn in question is non-copyrightable because it is obscene, rather than because it lacks utility.

Anyway, utility for what? Is entertainment lacking in utility? If so, should music not be copyrightable, since people derive only aesthetic pleasure from it?
Is Path the Future of Social Media?
A newly updated social media service is pretty much perfect. So why can't it stay that way?
Why would the resistor help? It just lowers the impedance and what you'd really want would be a high impedance earpiece. Or is having a useful effect by reducing the damping factor of the circuit?
My .vimrc includes

map <UP> <C-U>
map <DOWN> <C-D>

which I find quite useful.
Poorly worded that's all, after all, you can't fix unknown vulnerabilities.
This whole idea of the self taught programmer is a little disingenuous, because while I fit the stereotypical mold of one (no college degree, no formal computer science education), I was anything but self taught.

To claim so would be to discredit my friend who explained pointers to me in high school, or my first programming boss who helped me transition from writing HTML to SQL.

While I didn't take a class from Hennessy or Patterson, Gosling, the GoF, McConnel they certainly 'taught' me from their books, as did the countless anonymous internet posters in #java, #c, and as of late, #scala.

The feedback I received from friends who reviewed side projects or the JBoss guys reviewing my patches was invaluable.

It may be fair to say I created my own computer science curriculum, or that I wasn't formally taught, but I'm quite hesitant to take on the label of 'self taught'. Unless someone grew up in a cave without the internet and emerged a programming wizard, I'd caution others too.
The Escape key on modern keyboards is a lot further from home row than it was on Bill Joy’s keyboard back when he designed vi. Hitting Escape is usually unnecessary; Ctrl+[ is a lot closer, and more comfortable.

That's not an "anti-pattern," that's an opinion. I think C-[ is uncomfortable as hell.
Heated hard drives could be hundreds of times faster than non-heated ones
Only reason I can think of is to traverse firewalls that block outbound sockets but don't block HTTP+WebSocket.

That aside, it seems a bit ridiculous, given that we already have sockets, to bolt on a protocol that exists almost solely to work around security issues involved in a browser opening a socket.
tl;dr: type `fg`.

One nice thing about this setup is you can "stack" processes in the shell.

Say you're working on file_x, but file_x depends on header_file_y and file_z. file_x makes sense on its own, so you don't want to split a new pane; you just want to leave your workspace as it is and come back to it later.

Hit ctrl-z, and fire up vim with the new stuff you want. When you're done, quit the current vim session and come back to your old context with `fg`.

The key observation is this stacks inductively, so you cant tumble down the dependency rabbit hole and always come back to the context you were at originally. This feature alone has made it impossible to ever leave console vi.

It really came in handy in my Operating Systems class where I could fly around the codebase an order or magnitude faster than everyone else.

If you really need to go back to a particular context %[num] lets you go back to the nth suspended process, but this will corrupt your stack of processes, so `fg` won't be in a clean order.
As a former member of the GTD and Seven Habits cults, I think the weekly list is more important than the daily list. If you are always heads down focused on your daily list, you will be stuck in fire-fighting mode. Weekly lists provide a chance to balance your personal priorities and see big picture opportunities when you start thinking beyond one day.
I truly believe that quality will win out over quantity in the long run. The race to churn out SEO-based, high-volume, crap-quality content farms represented the first phase in online journalism. It was a race to the bottom. Sure, that race had some early winners. But the race has been run. The bottom has been hit. There's no more profit to be reaped there, and besides, the model makes less and less sense vis-a-vis today's internet.

That's because the future of the mass content aggregation business now belongs to Facebook, and to other social networking services yet to come. Aggregation websites are going to look very anachronistic in the coming years, while content-specialist sites will have to differentiate on subject matter and on quality.

So what does this mean for content producers? Well, it's no longer about mass aggregation of cheaply produced crap. It's now about being a high-quality producer, whose content is more likely to get pickup up ("earned," in media parlance) by Facebook users, as well as by Google's increasingly sophisticated ranking algorithms. Thoughtful pieces will matter. Well-written pieces will matter.

It's not easy, and there's no guarantee that it'll be profitable. And unfortunately, the advertisers will be monetized by the aggregation layer (Facebook, most likely) on which content producers will depend. So that leaves pay-gates and subscriptions, both of which can be circumvented, and which are often loathed by readers. But however the winning business model gets figured out, quality will almost certainly play a crucial role in it.
Your Customer should Ignore You
Staying out of the Euro (for now) hasn't been so bad. They're on track to be admitted eventually, but their euro-skeptic government probably slows that down...
Its the same reason why I read hacker news, better curation then my rss reader.

If you want to take it one step further sign-up for my Hacker Newsletter (http://www.hackernewsletter.com) ;)
You'd be biased towards people ticked off about the experience, but it's an intriguing idea.
That's clever. You can then even improve the algorithm by only sending the hash of A:B for every phone number, where A < B (numerically). Then you don't have to worry about whether it's Friend:Local or Local:Friend.
I think the 'fun' starts when the vendor syntaxes and/or semantics are slightly different and/or have different bugs. For example, the syntax gradients in WebKit at one time were different from those in the HTML spec.
These kind of articles always have a few new things in them, even of most of it is familiar -- I guess everyone just has a slightly slightly different set of indispensable tricks.

The most most useful Vim trick I've seen recently is "set relativenumber". This makes Vim show line numbers relative to the current line. This is awesome, because it lets you easily jump to any line you can see. eg. you can get to a line marked "9" above the cursor by pressing "9k".

It can be slightly tricky to get used to if you're used to absolute numbers (have to use gg more), but for me it's worth it.
From what I have seen you can only remove those permissions "late". Ie you have to black list permissions, you cannot deny them right away. From my understanding this would not protect me fully since apps could do their thing before I disabled it.
Where do they get those stats from? Most people deploying or developing on linux will get the packages for all of those things from their distro.
Actually I think you can manually add SSL certs to the iPhone, so just add your own cert and the iPhone will trust your MITM.
I would be more concerned about the memory consumption (especially on mobile).

On ios in particular I recall[1] something about jpg taking up significantly more than their file size in memory, due to decoding the image. png's don't suffer from that (an ios optimization for pngs or something), but they tend to be overall larger for big files (retina size).

I would think webp.js would be even worse off than jpg in regard to memory usage for mobile devices. (note: this is just a guess/hunch though. I saw no data one way or the other on the linked post, nor on the libwebp site).

[1]: Maybe a fellow HN'er knows more about this particularity with regard to ios image memory consumption.

edit: found this: http://cubiq.org/testing-memory-usage-on-mobile-safari which appears to rebut the jpg/png memory discrepancy. Perhaps our particular app was doing something odd with the jpg images we were testing, that was causing the additional memory usage. Maybe it had to do with loading in the actual jpg decoding code itself (png perhaps already loaded?).

edit2: this article seems to confirm it: http://mobile.tutsplus.com/tutorials/mobile-design-tutorials...

subtext: test test test! :P
Already there my man :)
It's a huge problem and I'm glad someone took a crack at identifying how large retail chains can stay relevant. I think it's spot on.
I think it's the same reason you would want to use good old HTTP over raw sockets for a request/response API, even though with a native client you could just invent your own protocol.

If you want bidirectional communication to your app, it's much easier to make a server that uses the WebSocket Protocol (tornado, etc.) instead of rolling your own server and protocol.
How will the acquisition affect the release of the much-needed javascript exception tracking upgrades?
You really have no choice but to be somewhat autodidactic if you develop on the web, but I like to make that point that Tiger Woods has a coach. Michael Jordan had a coach. Coaching is important, because learning happens best with constant feedback.

Just read Moonwalking With Einstein, which touches on this.

Seems like this guy Dr. Ericsson in Florida is the go-to expert on mastery in general.

As working programmers I do think it's easily in our interest to spend time learning how to acquire new skills as well as we can.

Moonwalking With Einstein: http://www.amazon.com/Moonwalking-Einstein-Science-Rememberi...

Dr. Ericsson: http://en.wikipedia.org/wiki/K._Anders_Ericsson
And actually, non-Apple PC sales dropped 22%, if you take the Apple numbers out of the totals.
Making it Big in Software: Get the Job. Work the Org. Become Great.
Chrome for Android and the Prospect of Chrome for iOS
It's Easy to Criticize from the Stands
The last days of Dotcom's Megalife
I don't agree with this:

Reality directs your learning.

With or without a mentor you are still being forced to work in a particular direction. Do you read a book for your own benefit or for your employers or for both? Who appraises you? Are your colleagues impressed by what you've learnt?

Unless you live on a desert island you probably have constant feedback.