skysight-inc/HackerNews huggingface dataset:
This is the direction we're moving on my company, we have group building a restful API, and then we have the front end team that are essentially their first client of the API. So far it's been an extremely positive experience, in the past the "front end" team was expected to dig in to the back end and build out the data collection themselves, now we can have multiple teams working on the same thing without stepping on each others toes because we know where demarcation point of the responsibilities are.
Def interested in story.glass. Hopefully open source in its future.
The Internet, CDNs and Bandwidth: The Roots of the Decentralization Movement
Depending on the language and context, an explicit method name like "findEventsFromLast6Hours" isn't that bad. If it's just a private helper method, I'd let it pass.

Empirically, I've found that methods with ambiguous parameters (e.g. "findEvents(6)") are a much bigger problem (event amongst senior programmers).
I hate paywalls.
Winamp was the only thing that I missed when I moved from Windows to OS X years ago. I tried to use VLC as a replacement, but it wasnt the same.
This tears at me. I lost my little brother to suicide just over nine years ago. We grew up in the late 80s/early 90s playing NES/SNES and Genesis games together. He was always the more competitive one, kicking my ass at fighting games like Mortal Kombat or Street Fighter, and beating me to the ending of Final Fantasy and Dragon Warrior titles by several weeks. He was always the jokester, the "Loki" of our gang of friends, and he would make up silly or perverted names for RPG characters whenever possible.

Later, after he got home from serving six years in the Air Force, he would still come by my place and want to play Final Fantasy VII and Soul Calibur together. Those were some of our strongest bonding periods in all those years of dealing with opposite personalities. We never got along one hundred percent of the time, but we loved each other the way all brothers should just the same, and enjoyed that time spent on our favorite pastime.

We still don't know why he took is life; he never left a note or any clues that anything was wrong. But he left a hole in our hearts that will never be filled.
> what qualities of a language make it designed for compilation?

That a language that compiled to good machine code was one of the main goals of the people who designed it. I was making a historical statement, not a qualitative one.
I "love" when those things break and the original author left the company a decade ago... ugh.
So, you're assuming that half of all ex-googlers were fired?
Otherwise, there aren't equal probabilities.
GnuPG scares me. In all kinds of ways.

And Werner Koch must be some kind of demi-god.
I still prefer LibreOffice http://www.libreoffice.org/
Nitpick, on the nothing can save me there part. This is arguably a failure of `your-class`'s API.

A file exposing a class SHOULD either wrap it: `module.exports = function () { return new YourClass(); }` or use `if (!(this instanceof YourClass)) return new YourClass()` guards in the constructor to stop users of a class having to worry about whether or not to use new.

At least this seems to be the convention many module publishers seem to adhere to.
I think the sentiment was "hard to kill" and/or become extinct due to its resiliency. But I agree, they should have picked something else.
A $100M Oops for Goldman Sachs in Its Advice on Vista-Tibco Merger
LibreOffice runs on mobile devices?
HTML5 Game Development Resources
How to Avoid Startup Premature Scaling
I'll admit to aggressive use of ctrl-F, but only because I too felt they should be a lot clearer about what the intended properties are.

From the intro page:

"Cockroach is a distributed key/value datastore which supports ACID transactional semantics and versioned values as first-class features. The primary design goal is global consistency and survivability, hence the name. Cockroach aims to tolerate disk, machine, rack, and even datacenter failures with minimal latency disruption and no manual intervention."

If we read 'survivability' as 'availability', then that would suggest they've gone for CA. Although closer inspection reveals that their architecture seems to be made of shards each of which is maintained with Raft/Paxos. An evaluation of this by the Cambridge Computer laboratory is here: http://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-857.pdf

That report makes two points relevant to this discussion. One is that a hard definition of C A and P can be difficult and that it's possible to achieve all three almost all of the time in real conditions. The other is from the conclusion:

"In particular, a [Raft] cluster can be rendered useless by a frequently disconnected node or a node with an asymmetric partition"
We're in the middle of a 4 year streak of findings stemming from archaic 1990s constructions embedded in TLS, from BEAST to CRIME to Lucky 13 to RC4 to POODLE.

It is unconscionable that the IETF would consider deploying a protocol whose modal deployment configuration will be PKCS1v15 RSA.

The I-D's with ECC options don't matter, any more than they mattered for the last 5 years with TLS 1.2. The protocol isn't even fucking deployed yet --- what we have today are pilot deployments. How could they possibly be fielding PKCS1v15 RSA in 2014?
Running a coding dojo to improve Python TDD skills – part 3
At work so I can't click the link--is that game still alive? I played it a little when I was in high school.
+1 for you, Good Sir :)
Start by watching "The Downfall of Agile Hitler" https://www.youtube.com/watch?v=l1wKO3rID9g
Tasty Imitation Keyboard (https://github.com/archagon/tasty-imitation-keyboard), a basic replica of the default iPhone keyboard written in Swift. Features include a close approximation of the keyboard appearance on all iPhones, entirely programmatic art and layout, auto-capitalization, a built-in settings screen, and easy extensibility. I've already used it to write a transliterating Cyrillic keyboard and get it into the App Store[1], and I intend to update it whenever I release new keyboards or patch my existing ones. Code is messy, but I needed to get it out the door.

In the grand scheme of things it's not much, but as my first "real" open-source project, I'm pretty proud of it! There are a few other "looks like the system keyboard"-type keyboards in the App Store, and mine knocks them out of the park.

(I'm also working on a blog post about the pains involved in building a 3rd party iOS keyboard.)

[1]: Translit Keyboard, http://translit-keyboard.archagon.net
Yes I loved the presentation. Got way more out of it than if it was just pictures and youtube embeds. Nice work!
Workday to put employees through a Big Data analysis
Nope, cause() returns an &Error, there's nothing you can pattern match there. And despite the documentation's claim, as far as I can see Error does not extend Any, which would be necessary for dynamic typechecking.

Also remember that cause() is recursive, you may need to traverse the whole chain before finding what you're looking for (not that you can find it at the moment)
How to Be the Next Uber: Getting to Your Series B and Beyond
I've seen golang mentioned in Apple job listings. I didn't think this was a secret.
To add to this "Postgres: Limited scalability". I wish someone told us before we ticked over to 31TB... 5 Months ago.
China Lifts Ban on Facebook, Twitter, YouTube at APEC event
ElectronCharge already gave a good answer, but I would like to add a little extra information. There already exists 64bit only processors, as in they have no 32bit instructions or registers. The reason they didn't take off in the consumer market is because they simply cannot run 32bit programs or any existing consumer operating system. Intel sells these 64bit only machines to labs were they can actually make use of the full memory addressing, as in putting terabytes of data into RAM, and also only need 64bit operations.

The 256bit and 512bit registers and instructions are reserved for specialty hardware, IE graphics cards were you need to do floating point arithmetic.

One more aside, the reason we call 64bit processors AMD64 is because AMD subverted Intel by releasing an architecture which had both 32bit and 64bit instructions, while Intel was creating 64bit only processors.

Also I love this question, because it was the first question I asked in my kernel development class, but the answer I got was "all will be explained in due time"
Yeah, that was what I meant, brain error. Thanks, I edited my comment.
Rap verse on current events
Storemapper: 50% QoQ growth by the numbers
Great idea! I will absolutely usw this
Network Operators Join MANRS Initiative to Increase Routing Security, Resiliency
That won't always work, because often there are OS specific files. E.g. different implementations of "mmap" for Unix and Windows or strlcmp and snprintf implementations for platforms that don't provide them their self.

Also often certain headers need to be generated by the build system ("config.h.in" for version information, "export.h.in" for export macros).
Sure, but it would make sense to found somewhere else and then move once you see traction.
Excellent news! Ed25519 signatures ftw :D
OK, I see. I'm a bit skeptical of anything that claims to be an enriching perspective but doesn't yield interesting results. This is similar to functional programming, which also feels beautiful and enriching to those who study it, but hard to show that it's superior in any measurable way.

I mean, I like Curry-Howard-Lambek as much as the next guy, but typed computation is mostly about constraining computation to make some things impossible, and I'd like the unifying perspective to be more about making new things possible. Somehow, the type stuff just feels boring and lifeless to me, in a way that e.g. algorithm design doesn't.
Without administering chemical tests to all of your students, you can't know with certainty which ones are using.

Sure, if a student has problems from it you will be able to observe that, but it's flawed reasoning to go from "I observe some students having problems" to "Using always leads to those problems".

And I don't naively believe that marijuana is harmless, but if you give me a choice between prohibition for everyone and (further support for) programs that reach out to students that exhibit sudden changes in behavior, it isn't very hard to decide.
I don't think Netscape demanded a "java-like" language.
SEC bias? Not in PitchBook’s VC college conference power rankings
Star-Tick’s Saliva Is Subject of Study to Find a New Cancer Treatment
"I like X, but i fail to see why Y and Z don't fit the bill as well."

Try repeating your point for any order of X, Y and Z, and you might realize it isn't really a valid reason for them to have used Swift or C++ instead.
Very, very cool.

* How much payload can you put on the vehicle?

* Are you planning on adding some sort of forward scanner / camera to check for safety while flying autonomously? ("Eyes" to accompany the brain)

* How are you using the feedback from the IMU and gyroscope? Does it have a kalman filter? Or are you just looking at the instantaneous IMU data and just reacting to it.

* Where does the stability code reside? You mention a stable platform .. I am curious as to what it is.
Stop Being Arrogant, Your Website Sucks
Don't worry. Companies are not your daddy or your momy. If there wasn't a project, they wouldn't hesitate to fire you right away. You cannot betray a soulless machine.
Name-dropping has been common since the first salesman.
This was based on an internal Google technology, so the "Ex-Googlers" label is actually quite relevant.
A Startup CTO's Take on Early Technology Tradeoffs
Try Vox. Not as good as Winamp 2, but as minimal as you can get.
Honestly, the things you describe are not that bad. If they are writing code that passes the test cases, move on and be happy. If you'd described things like circular dependencies and passing brittle "magic strings" through multiple layers -- things that will GENUINELY cause maintainability issues I'd sympathize more.

I doubt anyone named it the "...last6hours" but then parameterized the number of hours -- so you're changing that code anyway if the number of hours changes. If you have a requirement to parameterize that, do so, otherwise YAGNI, move on.

Hardcoded strings is another one. Frankly, unless you are using the string in more than two places or it's part of a "set" of values, where referencing the full set is useful, you may just be making more work to do it 'correctly'.

You reference timeline pressure. "Good, Fast, Cheap, pick two". If you don't have enough programmers for the timeline alotted, the powers-that-be have already selected Cheap and Fast. Deliver a product that does the job asked, a few maintenance iterations (if the product is one of the 30% that make it that far) will teach you want areas of code are touched a lot and need to be "made maintainable"
> So you are saying that the jobs building the Lincoln Tunnel in Manhattan and the Triborough bridge (among many other things under the PWA) were "economically inefficient make work jobs".

No, I agree that it is an essential function of government (arguably, the only legitimate function of government) to correct for market failures by shifting incentives or directly purchasing goods and services so that exchanges which are a net benefit but which the market fails to provide because externalized costs or benefits are not taken into account naturally in market exchanges (as is the case, for instance, when benefits or costs are particularly diffuse in space or time or both). And many public works projects fit that bill, and when labor costs are low because of a dip in private market demand, more of those projects have a positive cost:benefit ratio.

OTOH, the social benefit from an income support is independent of its tie to employment, and therefore it makes sense for the income support to be decoupled from any public works program. Coupling the two creates inefficiency, as individuals receiving the income support are then compelled to devote time to an economically-inefficient job that could, instead, be devoted to economically efficient activities, including working at an economically-efficient job with a lower wage (that would be inadequate income for basic living on its own) than is provided by the government make-work job but which provides experience which enables the individual to progress to better paying jobs and greater contributions to society.
SmartDataCenter and Manta are now open source
BITalino open sensor for ALS, and drones
Ask HN: How lacking speaking and writing could I get a programming job?
I have a Ph.D. in math and four years in CS (I drop out of CS because I began to study my Ph.D, luckly I was able to put together my studies in Math and CS and publish some papers about complexity of algorithms in top rank publications (I got tenure in a good university). I can program in many languages, python, ruby, lisp, scala, javascript, Mathematica, julia, R and others. But my main weakness is lack of experience developing any big project. I don't have a github account, it seems I am always learning and I, perhaps wrongly, believe that learning increase my opportunities more than developing, I have very little to show up for any prospective employer. Also, as I read English only sporadically and write a little bit, my speaking and writings skills are very weak.

What would you advice me to do to get better prospects to get a programmer job? I would prefer to do it remotely but that seems much more difficult.

On top of that, I am not so young, more than 30. Perhaps you could suggest another kind of job related to programming?

As I have never worked with a team, I imagine there are many unknown unknown, so I don't have any clue about how I would fit in any team. One day I was reading about advice to be a good data analyst, and P. Norvig words are etched in my memory: you need to have a lot of experience in big data analysis, It doesn't matter what or where you studied, you need to have a lot of hand experience with big data.

Perhaps is too late for me, to pursue this path and I may find a career outside of programming, but I enjoy learning and coding and I will try get a job in this field.

Added at 17:51, Madrid local time.

Thinking about all the difficulties, it may be an alternative to think about creating a start-up, but now the problem is what kind of product or service can I/my team/, provide that is of real value? But perhaps this problem is bigger than the first one, is a bootstrap.
If you own a cell phone, you already have.
I would disagree. There are much more co-founders, programmers and investors within 10.000 miles radius :-)

And if you have a family, LA is just impossible.
Show HN: whaatt? – a social quiz iOS game
Any idea how well LOCKSS would handle this?

http://www.lockss.org

http://blog.dshr.org/2014/07/trac-certification-of-clockss-a...
Great, I'll be busy prepping an Android VM appliance for this that I can install on every machine I touch. Probably a good idea to isolate Office code from the real OS anyway. Hope I can get printing to work.
Colorado communities secure the right to build their own broadband
I love this!

Any advice on finding people to work on projects like this with? I've tried to do electronics projects in the past and get bored when I realize no one cares about it :-(
I agree that Duke has done relatively well, considering their limited resources. That is to say, Comparing superlatives isn't entirely fair to Duke.

BMW makes for good comparison here because they make a lot of 3.0L inline-6 engines. Their N52B30 engine [1] was (mass) produced in a variety of specific outputs, the nadir of which was the 200kW (272 HP) version used in two of their sporty SUVs. This engine makes/made 90 HP/L. The most common variant (used in the mid-tier 3-series) was the 190 kW version, making 86 HP/L. Both of these engines have a better specific output than the Duke engine, but BMW has considerably greater engineering resources, as well as the benefit of nearly 100 years of development.

1: http://en.wikipedia.org/wiki/BMW_N52#N52B30
The total possible benefit to trade is fixed, at the area between the supply and demand curves wherever demand exceeds supply. This area is maximized, giving the greatest possible benefit to the economy, by setting the price where the curves intersect.

Then the consumers take the area above that price, and the suppliers get the value below. These are not necessarily equal areas; they depend on the econometrics shaping the curves.

In your example, the market-clearing price is $13. The consumer benefit is $3 to a and $0 to B, and the supplier benefit is $6. But no single party knows in advance what the market-clearing price is.

The easiest way to find it is for all 3 to engage in a reverse Dutch auction. A writes down "buy 1 @ $16". B writes down "buy 1 @ $13". C writes down "sell 10 @ $10". The auctioneer looks at all the slips and announces that the price is $13 and that C is the first (and only) supplier. Everyone leaves happy.
German airlines face ban on UK landings without passenger lists
May I know, how do you guys handle authentications and "cookies"/tokens?
> Little known fact, Gentoo's Portage almost became an internet-wide distributed decentralized public file system.

Am I the only person really sad that this didn't happen? after using apt over Tahoe-LAFS (over I2P - KillYourTV's PPA is on clearnet and I2P), I wanted this to be the default behavior for apt.
Lots of good advice, but I suggest having the whole team review each others' code 100% of the time. In other words, each commit gets a random or rotating selection of two people who review the code.

Reviewing other people's code is almost as valuable as being reviewed. Even if it's not perfect all the time, it builds a good culture of coding and gives your developers valuable experience.

The culture of the code review should be a careful examination with Q&A. You need to take as long as you need to get it right. This is a great investment in your product and your team that will pay off starting right away and extending into the long term.
From page 49 (emphasis mine)

> The Register further found that even if proponents had satisfied their burden of
establishing noninfringing uses, they nonetheless failed to demonstrate that video game console
access controls have or are likely to have a substantial adverse impact on such uses. Proponents
identified two broad categories of activities that were allegedly threatened by the prohibition on
circumvention, scientific research and homebrew software development.

So it looks like the EFF are going at it from the abandonment angle this time having failed with the science and homebrew arguments. I'd say they have a better chance of making their case this time.
Ahahaha, that was amazing; I got at least 7 words in before I realized I wasn't actually reading something meaningful!
> Instead consider them to be a team of people.

It's easy to tell when a manager thinks of you as a "headcount", and it definitely doesn't inspire hard work or quality work.

In the process of connecting with your team as people it should become much more obvious what they need to improve. Sometimes it's encouragement and building confidence (especially for inexperienced devs). Sometimes it's asking questions about what they're trying to do. Also, if you have trust with your team, then offering suggestions for improvement and constructive criticism will be more well received.

The most important thing is to avoid them becoming defensive, and back off or move on when it does happen. It may sound like coddling, but there's a lot of psychological benefits for getting people to see their mistakes and possibly even come up with their own solutions. When people become defensive they come up with reasons to defend what they did, and are blind to the fact that there may be a better way.
True, but if it overruns a buffer, it still needs to maintain a valid SCSI/ATAPI/whatever command packet format and submit the packet to the controller with repeatedly increasing block numbers - that's a lot of instructions, while something that clears the entire address space could probably be done in 1-2 assembly instructions (mov rcx, -1; rep stosq)
I was still playing with toy cars back then, but how did people lose those IPs? Were they revoked?
Large Bitcoin farm in Thailand burns down
Wow! This is so unexpected.

Congratulations (and thanks!) to all the people who made this possible. I am in your debt.
Maybe the poster expected Apple to eat their own dogfood? They have ObjC and Swift, and Google is one of their major competitors, in mobile space yes as well as pop-language space.

A /24 is also only 256 addresses, so really unremarkable. I think you are reading it backwards. MIT has an /8, that's the large one.
High Quality Web Hosting Services
It's a perfectly reasonable general purpose language. However, it doesn't have a low-overhead green thread mechanism, and the standard library has no particular emphasis on network tools.

Even as an outspoken critic of go, I recognize that it has quite a strong networking toolset.
So are Python and Ruby, but most people will agree that those are unsuitable for certain types of highly concurrent and performance sensitive network applications.

Using the right language for a particular domain can save you a lot of headache. Go is open source and a relatively proven choice, compared to Swift.
Accept authentication using HTTP-BasicAuth and create a token then use the token until it expires.
Contribute to the largest developer research
Smart move by Nadella and Co. I'm a sure they will see an increase in office 365 subscriptions in the near future to make up the ROI.
> And despite the documentation's claim, as far as I can see Error does not extend Any, which would be necessary for dynamic typechecking.

See http://www.reddit.com/r/rust/comments/2l98pn/error_interoper...