skysight-inc/HackerNews huggingface dataset:
It is my understanding that once an app has access to full X11, it can do everything you can do with your keyboard and mouse[1]. Like open terminals, cat files, it won't even have to parse the result from the screen if xsel or a text editor is installed since it will be able to copy their content from the clipboard. Or it could run wget or netcat or similar to download a binary that will connect to a server to upload your files.

I suppose that normally you're able to see these activities. But the app could observe periods of inactivity so as to wait until it thinks you're away, then quickly open a terminal, enter the command to wget then start the binary in the background and close the terminal again; that might be like 1/10 second of flickering. Or it might even be possible for it to act similar to a window manager and open the window where it wants, like off-screen or behind other windows, so you wouldn't see anything.

Since it directs the window manager or panel program to open the terminal instead of starting the binary directly, any SELinux properties that say that commands exec'ed by Skype don't have the permission to do stuff will not trigger. You can't stop the panel from opening programs of course unless you're fine with preventing yourself from doing the same. (I don't think SELinux is able to track which X connection leads a panel app to start a binary; that would require it to be able to track code execution and understanding the logic of the program, which seems too complex to be feasible. Cooperation between panel and SELinux might solve this. But then this seems more like a cat&mouse game, will you not have missed other ways in which a program can be started? What about terminals that you opened, they would have to cooperate as well. In the end what you need is a replacement for X11.)

[1] it is possible to inject keyboard and mouse events into the X11 event delivery system; although it might be possible for programs to differentiate between those and real keyboard/mouse events (I know that the events are tagged as articial or some such, but can the programs ignore them without ill effects, and are they doing it?) Here my knowledge is getting spotty, so perhaps it is still possible to get a (somewhat?) more secure situation than what I've depicted above. You'll have to ask someone who knows better. In any case it seems to me that entities that are willing and able to use Skype to break into people's computers will also have way more funding than you to find any obscure ways in which X11 can be used to break out. X11 (at least its normal, trusted mode of operation (and as I said, Skype won't run in untrusted mode)) isn't designed to provide security.
That almost certainly implies you're not working on anything that requires horizontal scalability. That's a luxury not everyone can afford. Scalability, in almost all cases that actually require it, is the first priority.

It's like saying it's more important that the car drives reliably rather than everyone that needs to travel fitting into the car in the first place.
JavaScript: Explain It Like I’m a Java Developer
Uphold the VAT Exemption Threshold for businesses supplying digital products
That's what should be questioned in the article, not the open source nature. Hortonworks is in the consulting business, but they don't seem to suffer from the perennial consulting problem of variable revenue. So why aren't they printing money?
The VATman Cometh, Destroying Businesses – Cheryl's Mewsings
I think there are probably way too many people out there doing scaling before they're doing "getting things right". It's premature optimization that causes a lot of problems.

Naturally, there are plenty of people who do need to scale a lot, too, but presumably by the time they need to, they have a good idea of the problem and exactly how best to scale it.
This entire blog has loads of really interesting material on image manipulation with python. This blog was pretty interesting, it would have been cool to go the whole 9 yards and read the barcode though (maybe this technique isn't precise enough?)
Samsung EYECAN+: Next-Generation Mouse for People with Disabilities
OCaml and its ecosystem are becoming so enticing day by day I feel like I am running out of excuses not to dive in NOW :-)

Obviously it's extremely powerful in many different domains. But one particular area I am interested in is mobile app development. Google search shows OCaml indeed has libs/tools for writing and compiling apps. I am curious about what's the current status and experience in using OCaml in Android/iOS development.
Replying to myself, but: this makes it sound like creating Lemmings using the HTML, CSS, and JavaScript of 2004 ("DHTML", as we sometimes said back then) wasn't an impressive achievement in its own right - clearly it was.
Is Harvard Unfair to Asian-Americans?
> Because the limiting factor isn't code generation speed, but pattern recognition. Also, having spent too much time staring the mangled junk produced by optimizing compilers that concentrate on speed of compilation, I'm naively hoping that dedicating more processor time to optimizations will produce better code.

You wouldn't need to care of the actual generated code. It would be generated just and only for the currently running processor and memory subsystem.

> I'm wondering how feasible it would be to "rewrite" series of scalar instructions to a smaller number of SIMD alternatives either as part of the front end decoder or as something that continually optimizes the stream of opcodes in the cache.

Right. First you'd need to have available instruction encodings -- for x86, they're in very short supply. Secondly this would increase the amount of state that needs to be stored to memory and restored when context switching between threads and processes, unless the support would only be available to the operating system and opcodes are shared by all thread contexts.

You can achieve this by JITting already, without the context switching overhead.

On the positive side, this would ease instruction cache pressure.
Nginx and JavaScript?
It looks like they're also spending money developing stuff. If you want to optimize for profits, you need to let other people actually work on the free code and crank up the billable hours.

Of course, then the actual products don't get developed as quickly, so it's a bit of a paradox.

From what I've seen though, consulting is not necessarily a very good way of producing open source software.
I believe the 6502 was used as part of a keyboard controller in at least some Amiga models.
Roller bearings are old, but no one ever made a ball bearing until the bicycle era. They grew up together, and the first ball bearing equipped bicycles dominated competition about a century ago. Ball bearings were the carbon fiber of their era.

I don't think ball mfgr technology of a level of roundness and surface quality suitable for ball bearings was compatible with ancient technology. The metalurgy would be highly questionable but that aspect would be possible.

You are partially correct that roller chain could have been built by ancient craftsmen if they had the idea, but the invention credit is about a century ago. The metalurgy would have been questionable, the ancients would have ended up with chain links the size of your fist, which would have screwed up weight and power transmission making a v-belt a lot more likely. I'm surprised bicycles don't try v-belts.
Isn't there a petition for the EU as a whole? UK is (by far) not the only country that's severely affected by this new law.

Signed and upvoted though!
This just seems like a blatant submarine article [1] - anyone who upvoted want to share what they found interesting about it?

[1] http://www.paulgraham.com/submarine.html
It's hard in any case - yes - but it's even harder when you can't do the simplest thing, which is selling access to the software you've made.
App development for the sake of app development is unlikely to pay off except in better skills. It will be far more work than many other possible investments. That said there is a sort of serendipitous value to creative work. You'll eventually see benefit but maybe not in the way you expect.
27% is still a lot, and those would be the ones who could afford phablets.

I would guess that a lot of the people in the demographic we're speaking about make do with previous generation smartphones or the lower end ones you get with a contract, so smaller screen sizes are probably more common, as are older Android versions.

So one better uses features that the 2.3 Android browser understands.

I'm more surprised that feature phones don't play a larger role, but I guess this would be different outside of the US, in developing markets.
Sure! It's a combination of static and dynamic analysis. I have a jailbroken phone, which allows me to access any file on the filesystem and decrypt any App Store binaries[1]. The first step is to find in which binaries the functionality lives. I know from searching that AirDrop lives in Sharing.framework[2], which has a supporting daemon, sharingd. Then, I open the binaries in a disassembler like IDA Pro[3] or Hopper[4] to determine how they work. Running class-dump is also helpful[5]. If I need to inspect a process like sharingd at runtime, I use Cycript[6], which gives me an Objective-C REPL into the process, or LLDB[7].

[1] https://github.com/stefanesser/dumpdecrypted

[2] https://github.com/JaviSoto/iOS8-Runtime-Headers/tree/master...

[3] https://www.hex-rays.com/products/ida/

[4] http://www.hopperapp.com/

[5] http://stevenygard.com/projects/class-dump/

[6] http://www.cycript.org/

[7] http://iphonedevwiki.net/index.php/Debugserver
That may be generally true but those two things are not mutually exclusive. Scalability doesn't come at the expense of getting things right, it just might come at the expense of certain features which applies to most distributed system problems.
PlayerFM is also nice, and fits my $0 budget.
>The best thing about my time at Significance Labs was meeting incredible people like Jason and Angel. The most fun I had last summer was sitting in a room chatting to housecleaners.

This ending shows how hard it is to escape the "feeling/looking good rather than doing good" trap.
This motivation about meeting and relating to people and realities outside of your usual social network are legitimate, but dangerous. If you don't evolve pass through this phase, you will end up getting used to this alien world, and it will become routine. And you will see the problematic and boring issues about chatting with housecleaners and also the flaws of Jason and Angel.

This, in itself, is enlightning. You stop considering yourself disconnected from your users or the people you are trying to help. The time has come when you might actually create some impact. But you must find your motivating above this fugacious desire to be contrarian among your peers.
If your motivation ends when you feel you already have enough stories to share with your friends and that the "i am good people" stamp is already attached to your personality in your own and other's view; then you quit. And make no impact.
Muhammad Yunus took decades to create impact.

I don't want to doubt the author's motivation, or predict that she won't cause any impact. Just that defining meeting interesting people (who are just boring people you don't know enough, like the rest of us) as the best thing on a "what i learned" post is definitely a red flag.
With more and more teams moving their support to Stack Overflow, they should think about a way to show if the user is an official support person in their signature, rather than them writting "disclaimer I work at this" every time.
how many people does FB, Ms and Google need? Why not just start a scholarship program for high schoolers, boom more typists in four years. this h1b nonsense has been going on for at least the last twenty years.
I'm an upper-middle-class, white, software developer with a CS degree from a top university. I do not drink a drop; I do not "get high."

But I used to be a heroin addict.

Before then, I used Oxycontin - crushed up and snorted - which was a great kick and very, very easy to fall in love with when you first try it.

The Oxycontin pill formula switch had ominous effect. In short, my pusher had no clients anymore and switched straight to heroin. Turned from kids snorting pills for highs into a shooting gallery almost overnight. The last "classic" Oxycontin I remember hearing about went for $160 a pill.

Like Scudo, I started with brown heroin. Snorting it also. And under the same delusion that somehow snorting it made me "not a heroin addict."

Nothing like the cognitive dissonance of a dozen middle-class white kids making their first casual acquaintances with heroin.

But drug has a noxious, subtle allure. One night, with only a few $20s in my pocket and the ATM just out of walking distance, I chased down a bit more rush. Someone showed me how to shoot it.

"You put the needle in your arm." Casually as ever. Like explaining how to pull a good espresso. "You're new to this so your veins are easy to find. Not like mine. When you pull back the plunger - like this," drawing blood, "you know you've found it."
Had it done for me, because I was scared and couldn't hit.

I threw up a lot and felt better than uninitiated will ever comprehend.

Months passed. Then something started happening, something I hadn't dealt with before:
People started dying.
Kids who had futures started dying.

I won't bore you with the howls of addiction and disaster that followed, nor with my own personal triumph of escape. But I will leave with one point:

This article is spot-on; the elephant in the room for many a community of parents who can't stomach much longer watching more of their kids die.

Heroin is not just in the underbelly of the world anymore. We need to stop treating it like a pariah and start actually trying to fix it.
You need it due to type inference, otherwise the engine cannot infer all the types properly.
(couldn't reply to the child comment)

>Only some minor points, for the rest I really like the interface and functionality:

Thanks :) Do you like what we did with the sources? (example: http://bit.ly/1va9Aj6. The favicons act like tabs if you didn't notice)

- it's a tad confusing that in a list with questions every question has 3 links. Two of them are the same (queston title itself 'See All Options') so I'd remove the latter as it doesn't really add anything useful imo.

Good point. I'll double check with the analytics in the morning and see if we can simplify.

- it's not clear to me what the 'Best' sorting option means

It's very opaque at the moment as I'm experimenting with various sorting algorithms almost weekly. Once I nail something down I'll work on the UI transparency.

- a built-in way to link questions wouldn't be bad. For example there's a 'What are the best over-ear headphones under $200?' but also a 'What are the best over/on ear headphones around $300?' and in the latter the Sennheiser HD598 wins while it doesn't in the former. Something like a 'This is Related To' button which then pops up something similar to SO's duplicate question window.

We're building this! Not only "this is related to" but the ability to easily sync/add pro's from one occurrence of an option to another. (Yep, I'm aware of the potential issues with changing context, it's not going to be an auto sync, more like "suggested pros/cons/sources")

- which reminds me: not sure if it can be done but eventually you'll probably need a way to remove or rather merge duplicates

This is part of the same flagging project I'm in the middle of.

- just figured that after adding a pro, I still have to vote for it. It would make sense to do this automatically?

I keep going back and forth on this. A lot of people add pros/cons to be good community members, not necessarily due to them personally agreeing with them. I think it will end up being a checkbox that's enabled by default.

Thanks so much for taking the time to help us out! I'll keep working away until you describe Slant as "amazing" instead of "ok" :)

(btw if you want to help us shape the product even further we have a meta.slant.co)
It's definitely true that many people on low income don't have a good data plan. That's why they sometimes have a smartphone they only use on Wifi as pointed out in the survey results.
Isn't this exactly what Pike and other did not want?
POJOs are not really components, you can't send them over the wire to something else, or split a system into subsystems with good security between. And CORBA did not work out.
You can probably not get something like Rust to run really well on the JVM (the latter has GC and Rust tries to avoid that) etc. You can still build great system with Java but you can already do that with many other things like C++, Go, C# etc.
I removed all the useless promises, yes.

The one remaining is the one after fetchData, which looks like it could be async and make use of a promise.

It only yields equal speeds in chromium (good to know), although if you try in firefox, imperative is still 4 times faster.
as someone who knows C++, but doesn't use it everyday, nor keep up with the latest and greatest in the community, I was surprised to see the "pipe" syntax. It looks like the author is using them like unix pipes, or like the `|>` macro in Elixir. When did C++ get this? Is it just functions overloading the bitwise-or operator, or is it 'official' syntax?
On PC, BIOS configures memory controller in such way as to hide boundaries of memory modules from OS. Resulting address space still contains some holes and stuff that is not physical memory, but OS gets map of this from BIOS. Originally (on systems with 36pin SIMMs) this wasn't the case and you had to match memory modules such that they produce continuous block of addresses.

In essence the situation is pretty much same as for user space program: you get big address space and list of memory regions that are mapped and usable.
Vero is here
$33M of revenue is unsuccessful when you spent $45 million in sales and marketing during the same period and when total costs were $114 million.

If you spent $114 million, could you make $33 million in revenue? I hope so.
Here's my guess about some of the most utilized/popular databases:

* SQLite - it's everywhere thanks to mobile phones.

* Oracle.

* Microsoft's thing has to have a big following.

* Mysql.

* DB2 is not as big as Oracle, but IBM isn't some lightweight, either.

MongoDB gets talked about a lot, and probably used among people trying new stuff out, but I think a lot of mostly silent people wouldn't touch something like that for their important data with a 10 foot pole.
Can anyone confirm that those numbers are approximately correct?
Everybody I talked to in Germany was complaining about the new regulations -- it's a PITA for every single online retailer and shop system vendor.

New rules will be in effect on Jan 1st and even accountants are still fuzzy on the details (fiscal authorities are still dragging their feet on providing implementation guidelines).

It's quite a challenge, and the administrative overhead is significant, particularly for SMBs (which fuels the existing notion that EU legislation tends to favor big companies).
[meta]

Nothing at all against OCaml, but it puzzles me where these HN micro-fads come from. There have inexplicably been a surge in OCaml posts on the front page over the past week.

Which is perfectly fine, except that I haven't gotten around yet to learning Rust (i.e. last month's fad). I'm still busy digging into Go (i.e. the fad from six months ago), having grown bored with Scala (i.e. ancient history, at least a year or two).

It is always exciting to see the fad spotlight shine on a mature language, since reaching production-ready status is usually the point at which languages stop being cool. However, the Haskell surge also rolls back around every few months, and they seem to think that OCaml isn't "pure" enough. So what to do?

Are these short-lived bubbles the result of coordinated HN ranking manipulation, or do brief convergences of interest just spontaneously bubble up by coincidence?

[/meta]
Show HN: QuaggaJS, a barcode scanner written in JavaScript
Generally in EU you charge consumers their home state VAT

No. That's what's changing in 2015.
Coming Soon: Calorie Labels For Popcorn Tubs Politics
Here you go:

http://en.wikipedia.org/wiki/Belt-driven_bicycle
eknkc has a point. Let me explain our needs and why we chose MongoDB over PostgreSQL (and I have been a huge fan of PGQL since before the MySQL/PGSQL flame wars).

Replication is not very easy to setup in PGSQL. Sure, I can do it, but our product is an on-prem product that our users are responsible for configuring and maintaining. Having them configure PGSQL replication would be something they're not willing to do. MongoDB's configuration of replica sets is quite trivial compared to PGSQLs.

I bring this up every time someone says "PGSQL > MongoDB", even on PGSQL threads where PGSQL devs participate and they admit it's not quite there yet, but that they're working on it.

And all that said, it is getting demonstrably better to configure replication in PGSQL, so it's going to get there some day and I can't wait.
People whose mother tongue is a romance language usually speak at least another romance language one fluently. Foreign language != English.
I don't think we're talking about the same thing. I'm probably not helping by being sloppy distinguishing between opcodes and µops. But I'm referring to the hardware decoded µop cache that mostly replaced the "loop stream detector" in Intel processors post-Nehalem. No context switching, no OS support, rather hardware optimizations targeted at the interface between the outward facing x64 (CISC) instruction set and the post-encoding (RISC) µop driven monster within.

It would be a box along the same path as the one labelled "uOP Cache Hit Logic":
http://pc.watch.impress.co.jp/video/pcw/docs/601/851/p16.pdf
I don't think you will find a mentor that way. Instead, I'd suggest you to go to stackoverflow or various programmers forums with your questions. Stackoverflow is more for straight forward questions ("I have this code, it's suppose to do this, but instead it does that"), and you can find other forums to ask more "abstract" question ("is this code good?", "what is the most efficient way to do X?", etc.).

Good luck!
I wish it worked that way in practice BTW

I wish it did as well! (I'm also based in Poland and make the odd purchase in London).

FWIW you can still claim back the VAT, so at least it's "just" a cashflow issue.
Choosing MongoDB isn't always about scaling immediately. It can be about ease of use and easy to configure replication. See my post here [1] here about our use case.

[1] -- https://news.ycombinator.com/item?id=8657458
Most of the SEO's I talk to would not advise paying for backlinks (directly, with cash). But most of their advice is intended for larger companies who have more invested in their website than just where it ranks in Google. So the downside of getting this kind of business a penalty is quite large.

There are people who make a tonne of cash buying links to websites (not just those who sell the links!) but these businesses set themselves up so that if a domain is penalised it doesn't really make much difference to them.

For a blog, particularly one you want to grow organically, I would not buy links as you build equity in the blog domain through other channels (recognition on HN for example). Buying links represents a risk in this case and for little reward.

Ethics doesn't come into it as long as you accept that spending money on marketing is ethical.