skysight-inc/HackerNews huggingface dataset:
> If you're using a large genomic dataset, you shouldn't be sorting your results in text format anyway... it would take way too much time and temporary disk space. What you'd probably want is a row filter to extract out the rows of interest.

For repeated queries, this isn't efficient. This is why we have indexed, sorted BAM files compressed with BGZF (and tabix, which uses the same ideas). Many queries in genomics are with respect to position, and this is O(1) with a sorted, indexed file and O(n) with streaming. Streaming also involves reading and uncompressing the entire file from the disk — accessing entries with from an indexed, sorted file involves a seek() to the correct offset and decompressing that particular block – this is far more efficient. I definitely agree that streaming is great, but sorting data is an essential trick in working with large genomics data sets.
How Artsy Transitioned from Ruby on Rails to Isomorphic JavaScript
The Pixyll theme uses a different DOM structure for the templates and includes, so it would require some tweaking to work with Pixyll's stylesheets. Though, it would be feasible.
I am dreaming of something similar. I'd like to see a simple language wich looks a bit like python and compiles to C++. The central part of this language would be an integrated package manager / module system which replaces make / cmake. Why should I need make? I just want to tell the compiler the file with main() and then it should figure the rest on it's own.

The one thing which stops me from writing more c++ is all the setup you have to do to actually get an executable. In python I can just create a file, import some stuff and run it. In C++ I have to deal with makefiles, vs projects, paths and all that crap. Just give me a C++ where I can write "import boost.xyz" and the compiler figures out what that means.
The rocks are embedded in the ice. Imagine the rocks are wearing really large ice "skirts" which mostly float over a layer of water, but the bottom point of the rock still contacts the ground.

Edit: Nope, not embedded, just pushed.
http://www.nokiantires.com/winter-tires/nokian-hakkapeliitta... :)
The hard part IME is keeping your audience in mind.

Your future self? Your coworker who might be hired next month? Your past self who would have wished to read said comment?

Who is the audience for the comment?
It seems everybody is talking at a different level of abstraction. Reality is complex so the closest you're to it, the more complex your code will be (e.g. kernel supporting a zillion different hardware devices).

If the idea is to abstract even more in a simple and powerful way that more people can create more/better software, go for it. But don't dream that all that has been done until this day is complex because nobody cared about simplicity at all. I'm not saying the complexity is completely unavoidable but it takes a lot of work.
> ...they focus on ease of learning as the be-all and end-all of usability.

I see people jump to this conclusion on pretty much every post of this type. In this case it is clear from the authors work (http://www.subtext-lang.org/) that his focus is not on making programming familiar/easy to non-technical users but rather on having the computer help manage cognitively expensive tasks such as navigating nested conditionals or keeping various representations of the same state in sync.

> ...you learn something once, but you use it continuously.

Empirically speaking, the vast majority of people do not learn to program at all. In our research we have interviewed a number of people in highly skilled jobs who would benefit hugely from basic automation skills but can't spare the years of training necessary to get there with current tools. There does come a point where the finiteness of human life has to come into the simple vs easy tradeoff.

You also assume that the tradeoff is currently tight. I believe, based on the research I've posted elsewhere in this discussion and on the months of reading we've done for our work, that there is still plenty of space to make things both simpler and easier. I've talked about this before - https://news.ycombinator.com/item?id=7760790
The Fate of Galt's Gulch Chile
A little puzzled by all the effort put into this. Some wind moved some rocks - call out the physicists? Where is this research going?
I have used HighCharts before for this. You'll want to look at their "Dynamic Charts" section: http://www.highcharts.com/demo/dynamic-update
Actually going anyplace at all that way would be hugely exciting.
I think you have a mistake in your analogy. We're more like mechanical engineers drawing complicated CAD diagrams. It's just that we don't need a whole factory to produce our product, because it's not physical. All we need is a compiler and copy the bytes of the output.

There are 100 decisions every minute that need very complicated thought processes to solve, this is as true in manufacturing as it is in software development. Do you make this button out of plastic or metal? What kind of metal or plastic? How big should it be? Should it click or not? Does it have multiple functions based on the state of the vehicle? Does it have a label? Where does the label go? What does it say?

You could write this all into a spec, but the spec would end up being the same as the CAD drawing / program. So you end up relying on the experience of the engineer to make all the decisions without it all being 100% specced out. Maybe it's a button on a top end Mercedes that gets pushed a lot, so it should be metal to complete the feeling of luxury. Maybe it's a button on a mid-end Nissan that gets pushed a moderate amount - make it a decent plastic, etc.
> Build compelling simplicity and performance will come.

Python and Ruby are notable counter-examples to this.

Both Python and Ruby were designed primarily for human-friendliness, as this essay advocates. Guido has described Python as "executable pseudo code". Matz has said that the primary purpose of Ruby is to make programmers productive and happy, and to design more for humans than for the machines.

People have tried to make the performance come. Python is well-loved which has led to numerous attempts to accelerate it (Psyco, Unladen Swallow, PyPy). Many of these efforts have made notable progress, but none have met the bar of compatibility and performance necessary to displace the relatively slow cPython. Ruby is getting faster, but it's still among the slowest compared with its peers.

There are other languages where the performance did come (JavaScript, Lua). But this is in no way a given.
I know people at both Uber and Lyft and will say that Lyft has just as many assholes as Uber. Given both companies have great people, this article is about Uber being the unlikable of both of them and there are reasons to not like either company...if you take some things personally. That aside, cab fares that used to cost $120 now cost $35, so the customer is winning here. If anyone has a right to complain then it's the drivers that are getting the cancelled rides.
yes, you have to have an answer for the chicken & egg problem if you want to be successful in this space. event discovery (of which this is a subset) is particularly littered with failed startups and small businesses. i have two friendly entrepreneurs in my area alone working on this exact same problem and i'm not sure either of them have really nailed it. understanding the true drivers of value are what gets you past the chicken & egg problem.

and yes, stats are interesting (...says the person creating a real-time stats app for amateur sports =)
Arcane in the context of the blog post might mean non-86* and non-ARM.

AVR developed by Atmel in 1996, you might agree, is less-well known than the above.
*cheap
Isn't that addressed in the additional notes below the video?

There are **infinitely** many 3D worlds stacked on top of
each other, even if in the Wall level the ground texture
makes it seem like there are only two.
But take OpenSSL as an example of a critical security program. Nothing in the usage practice suggests not upgrading the compiler, or even going to the next version of libc.
i.MX ships are ARM architecture no?

I just think it's a shame the 68k architecture didn't last at least into the Pentium age.
We didn't know exactly what was going on, which bothered some people, because it's just some rocks sitting in the desert and we should be able to figure this out. So they did.

That's it. They solved a problem because not knowing the answer bothered them. This is how most science works, it's just rarely this naked.
Yeah, let's not bother learning about the world around us...
Did you happen to take improv classes in Boston?
Natural language programming.
20 Awesome Beer Infographics That Cover Almost Everything About Beer
Its a volunteer organization if I am not mistaken. Do they have a board?
I'm interested in what is wrong as well, it has worked very well for us.
The article elides (through ...) the really really important first bullet point of the law they cite, which says:
"1) the aircraft is flown strictly for hobby or recreational
use; "

IOW the article says: "that the FAA’s Special Rule contradicts the intent of Congress when it passed the FAA Modernization and Reform Act in 2012, part of which states: “[T]he Federal Aviation Administration may not promulgate any rule or regulation regarding a model aircraft, or an aircraft being developed as a model aircraft, if . . . the aircraft is operated in accordance with a community-based set of safety guidelines and within the programming of a nationwide community-based organization.”"

The "..." is the part about it being strictly flown for hobby or recreational use. The is the only part elided in this quote

This is really shady writing, as the rest of the article makes a lot of arguments about how this law affects commercial use, that they want an FAA interpretation that doesn't exclude commercial use, and the lawsuits around this set of clauses, but leaves out the main problem for these folks: the law doesn't say what they want it to.
TeamCity and Octopus Deploy in Slack
As with any higher-risk higher-reward investment, there are almost certainly people who dove into it far too enthusiastically and lost more than they could afford to lose.

Most such reports probably won't end up in the comments here.
I use Savon de Marseille at home for this reason. It's a variant of traditional olive oil soap.

Aleppo soap or any of the other Mediterranean olive oil soaps should work just as well.
My pulmonologist after looking at my x-rays recommended I lose weight cause in my case my beer gut is taking-up room that my diaphram could expand down into and increase lung volume. You might have experienced that as well. Thank you for sharing the other info too and glad to read your success.
LendingClub reported $86.9 million of revenue in the first six months of the 2014, up 134 percent.

P2P is fundamentally shifting how people gets loans- banks should definitely be paying attention.
Twitter opens up access to http://analytics.Twitter.com to everyone
Does this example help?

http://markshroyer.com/2012/06/c-both-true-and-false/
In the case of Javascript, the performance came at great cost. Javascript engines are monstrously complex. The language might be "simple", but the implementation is not.

Lua on the other hand is probably fast because it is simple. There aren't many other programming languages like that. (C and Scheme maybe?)
Introducing Tacklebox for Fish Shell
> The RAZR succeeded on design, the software sure wasn't the key attraction of that device.
Yup. Synergy was probably fine for little B&W lcd screen devices, but they kept hacking onto it...

> Motorola's phone O/Ses (yes, plural) were all very underpowered.

More on this:
"What killed Motorola? Not Google! It was Moto's dire software"
http://www.theregister.co.uk/2012/11/29/rockman_on_motorola/
Similar ideas in Python with Generators and Co-routines:

http://www.dabeaz.com/generators-uk/
The biggest downside to the MSR method that I saw was the visual artifacts where small details like the rocks on the ground would pop in and out of existence. It's not that bad but for things that Instagram's method would smooth I'd prefer to use it. I think that a mixture of both methods would be most useful. MSR's method could be made less computationally intense with a good stream of IMU data giving it the camera path and Instagram's method could use some of MSRs frame selection algorithms.
Flashing a new ROM wouldn't be enough, malicious software can still live in the firmware and even the SIM card.
Actually I would have preferred the original title because then I would have known that I didn't want to click the link.
First pull request will hopefully be keyboard shortcuts for navigation.
The Fastest Legal Entity Identifier Lookup Site on the Web
> That's /why/ we have our programs and processes divided into boxes

http://db.cs.berkeley.edu/papers/cidr11-bloom.pdf - by unboxing distributed systems we can statically predict whether a given program is eventually consistent (http://arxiv.org/abs/1309.3324 - and automatically add coordination protocols where necessary)

http://db.cs.berkeley.edu/papers/dbtest12-bloom.pdf - by unboxing distributed systems we can use static analysis to more efficiently explore the space of message interleavings in unit tests

https://infosys.uni-saarland.de/projects/octopusdb.php - by unboxing storage, databases and application-side queries we can treat the entire pipeline as a single optimisation problem

http://www.openmirage.org/ - by merging the OS box and the PL box we can improve performance and security for server applications

I don't disagree with you exactly, but I would point out that a) boxes are a mean of dealing with complexity - less complexity means we can have bigger boxes and more opportunities for cross-layer optimisation b) the places we have drawn those boxes are largely arbitrary and shift over time - the existence of the boxes does not imply that we can't benefit by moving the lines around or by merging some of them.
What if men weren't allowed on Facebook?
Online death threats are very common.

The numbers are a bit confusing but English police recieve a lot of calls about this kind of stuff: https://fullfact.org/crime/college_policing_bbc_correction_a...

http://m.bbc.co.uk/news/uk-27949674 "social media 'at least half' of calls passed to frontline police".

I'm not trying to suggest that toxic online comments are acceptable; or that people who are the targets of such comments should just ignore them.
Nah. People still live in email.
http://www.mrmoneymustache.com/2013/02/03/the-lending-club-e... Might be of interest to you.
I get your point (and it's a fair one) but what happens when it goes the other way? A bit of code written (and working) in friendly C finds its way into a regular good old C codebase. Suddenly it contains a critical bug that may go unnoticed.

Or some coder is used to friendly C, uses aliasing, memcpy and wrapping arithmetic without thinking twice. Then he's asked to work on some project building with a regular C toolchain. Gun is cocked and pointed at the foot.

Those problems only occur because friendly C is a dialect of C, you don't get those drawbacks if you tell devs to use Rust or whatnot, because the difference between Rust and C is obvious, unlike friendly C and C.
If this topic interests you, you should definitely check "Imagining the Tenth Dimension" https://www.youtube.com/watch?v=zqeqW3g8N2Q
That's a pretty good argument that I don't think I've heard before.
At least one of the scientists comes from a xenometeorology background. Figuring out strange phenomenon on our own planet will hopefully help us understand what's happening on other planets, too.

> In 2006, Ralph Lorenz, a NASA scientist investigating weather conditions on other planets, took an interest in Death Valley. Lorenz was particularly keen on comparing the meteorological conditions of Death Valley to those near Ontario Lacus, a vast hydrocarbon lake on Titan, a moon of Saturn. But while investigating Death Valley, he became intrigued by the enigmatic sailing stones of Racetrack Playa.
Consider I get 10 files of size 3 GB every week, which I am supposed to filter based on certain column using a reference index and forward to my colleague. Before filtering I also want to check how the file looks like: column names, first few records etc.

I can use something like following to explore few rows and few columns.
$$ awk '{print $1,$3,$5}' file | head -10

And then I can use something like sed with reference index to filter the file. Since I plan to repeat this with different files, databases would be time consuming(even if I automate it loading every file and querying). Due to the file size options like R, Python would be slower than unix commands. I can also save set of commands as script and share/run whenever I need it.

If there is a better way I would be happy to learn.
Introduction to Dependent Types: Haskell on Steroids
When I did a 10-day vipassana meditation retreat last year, there is a rule that you can't talk or read or write or communicate in any way with anyone. Once we were allowed to talk again on the 10th day it surprised me how much I forgot about the way I saw myself. I realized that you see yourself through the way other people see you and the way they communicate this to you.

It was a really interesting and valuable experience and I highly recommend it for anyone. In case you're interested, you can find out more here: http://dhamma.org
(Sorry for the throwaway; I still work for the same company and we we still have various relationships with each other.)

I worked in like '04-'08 building third party mobile software for a large variety of manufacturers and devices. Remember, this was pre-iphone, so there was a big business in building component X for device Y on platform Z.

In my experience of device manufacturers:

Nokia was insanely arrogant; the google of its day. Sony Ericsson were quite good, it showed that they wanted to build a quality experience.

The Japanese manufacturers were absolutely insane. They would routinely produce P1 bug reports in the style of "we opened the X application repetatively. On the 1154th time it crashed on start-up. Sometimes."

We had a few projects with Motorola together with US carriers. They were total nightmares - the Motorola engineers seemed like they had been picked up from the streets of Hyderabad the day before. (This is not a racial prejudice: most of the Indian engineers I've come across in the industry have actually been remarkably talented. This is not valid for the Motorola engineers though.) Most of these device projects were very high profile in the US, and presumably important for Motorola; yet they couldn't or wouldn't muster better staffing.
The Lua interpreter is among the fastest of languages in its class, but LuaJIT is also among the fastest JITs. I agree that a lot of this has to do with Lua being a simple language.
You have extremely limited write access to my mind - text over the internet is not a particular high-bandwidth or invasive channel. Short of some kind of neurolinguistic programming (which AFAIK isn't really a thing), the worst anyone can do is offend me.

Direct electric stimulation is a pretty different beast. I am normally all for deconstructing arbitrary distinctions, but I don't think this one is arbitrary. There is a qualitative difference between reading text and having my brain internals directly manipulated by electrical impulses.
How  to increase your revenue using APIs
In a lot of cases, the fourth dimension is describe as space. But if you were looking into string theory, often times there are description of many spatial dimensions, say 11 spatial dimensions and then a single dimension of time.

We could also have multi-dimension time dimensions as well. The idea of parallel universes where at least one decision is made differently from our own could instead be different dimensions of time. Move to the left or right in time and experience different choices as opposed to only going forward as I assume most of us do now. :D
Yes, it would be better if they put more effort into a real problem, like building the perfect javascript framework.
I have never used ag, but in most instances where people thought they made a faster grep it is becuase it doesn't handle multibyte encodings correctly.

Have you rerun your tests in the "C" locale?
Definitely something we've thought about, and it's similar to what Upstart offers bootcamp applicants. Our only hesitation was that it's a debt-based solution, which is something that we want to avoid at all costs. Contributing to the growing student debt amount doesn't seem like the right move. Taking the step to change your life through empowering yourself with skills should be easier, and we want to reduce roadblocks as much as possible.
Actually, I don't actually see a copyright notice on the actual minecraft product. I haven't downloaded the actual zip (I don't have minecraft at work!), and maybe there are additional claims there, but the copyright string on the page is simply the required acknowledgement for the original Ordinance Survey data under the Open Data license that you linked.

Note that the Open Data license does not require that your products based on the data be open as well, just that you acknowledge the source.

The Minecraft world is built by the British Geographical Survey, not the Ordinance Survey.
The lesson from both of these is that performance doesn't magically come from simplicity but it is enabled by simplicity. A complex system is always hard to optimise. A simple system may be easy to optimise.

Building simple systems whilst keeping performance in mind is a delicate balancing act. Local optimisations tend to add complexity that may prevent later optimisations. Sweeping generalisations that reduce implementation complexity often inhibit later optimisation due to lack of information (eg http://lucumr.pocoo.org/2014/8/16/the-python-i-would-like-to...).
Jessica Alba startup The Honest Co. raises $70M
Interesting papers! I appreciate the links.

>a) boxes are a mean of dealing with complexity - less complexity means we can have bigger boxes and more opportunities for cross-layer optimisation b) the places we have drawn those boxes are largely arbitrary and shift over time - the existence of the boxes does not imply that we can't benefit by moving the lines around or by merging some of them.

I agree completely. However, the manifesto seems (to me) to advocate all-over unification as the end goal, which I think is naive. I read it as "if a program needs to be divided into separate boxes, perhaps you need to make it simpler", which to me seems like the wrong way to go about things.
It isn't so much that you ridicule the programmer; it's a question of telling the programmer "don't use these things that you see mentioned in old books, we have replacements for them now."

So, yes, comparing char*s is very different than calling strcmp; and if you want to use "==" to compare strings (so you don't have to remember to call strcmp), then use std::string.
Great article and very interesting comments. One big takeaway for me is the fact that Google retained ownership of all patents after they sold the business to Lenovo. It'll be interesting to watch Google utilize those across their entire business, not just on the mobile side.
You might be interested in Haxe [1] and Felix [2], although both have broader scope than you indicate.

[1] http://haxe.org/
[2] http://felix-lang.org/
And as an aside, your test for ethics is entirely asinine

To me, "if everyone did X, would the scenario be tenable" sounds like a less fancy way of saying "Act only according to that maxim whereby you can, at the same time, will that it should become a universal law."

That is to say, Kant's Categorical Imperative [1].

If you consider it asinine, I could introduce you to a lot of intelligent people you would think were asinine.

[1] https://en.wikipedia.org/wiki/Categorical_imperative