skysight-inc/HackerNews huggingface dataset:
Steam lets you buy games from multiple publishers, and a lot of times they have very good sales. I wouldn't call Steam a company, isn't the company Valve?

I'm not sure about other companies, but don't they only sell their own games? And they get a bad rap for being a publisher, not as a game-store. They might not be a good game-store, because they don't have games from other companies, only from themselves.

You are right that Steam's policy is to not offer refunds, and that is a horrible policy IMO, because you may buy a game, but your computer may not run it (if you're on the border of required hardware for example). But ease of use and deep discounts probably are more important than the refund issue for most honest customers (those who aren't interested in finishing game in under 7 days and returning it). Android offers two hour refund policy, which I think would be good.

In my opinion it's hard to compare a store such as Steam to a publisher such as EA. Even comparing Steam to EA's store, I don't think EA's store offers games from other publishers, so it's still hard to compare. This means Steam has far more games offered, some with deep discounts.
Fraud
California Dealers Fraudulently Overcharging Vehicle License Fees
A car purchase contract is a rather complicated document. It is hardly possible for an ordinary consumer to comprehend all the information. This is the reason why some dealers have managed to insert fraudulent terms and charges.
Find us on www.calemonlawinfo.com
I wrote a short blog post for work about this http://blog.cloudflare.com/making-code-better-with-reviews/

Simply put: we use git and developers can't commit to the master branch. They commit to their own branch, the build system builds/tests that branch and the developer makes a pull request and gets the code reviewed.
I've lost track of everything we're meant to have stopped using in JS by now
Why Wave Race was Nintendo's most elaborate tech demo ever
Journaling or storing incremental backups (perhaps offline?) of validated/verified checkpoints may address this, although it sounds like something you wouldn't be happy with since it's not a 'built-in' feature but an additional backup & maintenance process that a system administrator would need to implement.

I guess you're asking whether there exists a distributed fault-tolerant with a form of version control (similar to git/cvs/perforce) as part of the native feature set.
There's lots of tutorials out there for this kind of thing, and looking at other people's project logs (like this submission) is good. I like to use OSHPark to get my PCBs made, but some people also like ITead Studio. Personally, I rarely simulate stuff if I'm just hacking around unless it's a filter or maybe an amplifier. For that I use either MultiSim (not free) or LTSPICE (free). An oscilloscope is good for debugging stuff like the PWM output to your servos. In general, it's a good tool to have, and you don't need a very expensive one for most applications. If you live near the DeAnza Electronics Flea Market, you can pick one up for probably a $20 bill. Otherwise, there's plenty on eBay. As someone mentioned in another comment, the control theory for a UAV like this is usually just a PID loop or a subset of that. It's nothing fancy, but it works quite well.
How are you allowed to drink beer on a construction site?
Many things that I don't agree with:
https://github.com/cockroachdb/cockroach/

MySQL: Weak consistency

Cassandra: No availability or weak consistency with datacenter failure
You can revoke all pairing trusts (on ios8, at least) with:

Settings > General > Reset > Reset Location & Privacy

AFAIK there is no UI for individual pairing management, but I think the full reset is completely safe/non-destructive otherwise -- just re-pair on the machines you do trust, and everything continues as usual without data loss or huge resync, etc.
If you think your data is safe on either device, with or without Office, then you are deluded.
"Stop writing prescriptive articles about software development when you're speaking from a position of ignorance"

There are many reasons to keep on using `new`, the biggest one is probably performance, `new Foo` will always outperform `Object.create(FooProto)`.

Really though, this kind of article just grinds my gears. There are so few absolutes in software development, articles like:

"You should always X"

"Stop doing Y"

almost always really mean

"I don't actually understand X or Y"
The Four Steps to Mediocre Success
The linter would catch the missing new
With software goods, the best downward force with regards to price is piracy. We have seen this force in effect in the movies and music. Movies used to take two years to go from box office to rental. Now movies only take 6 weeks to go from big screen to DVD. The big change here is that piracy was the downward force. And it served as a great effect to bring materials to market quicker.

Admittedly piracy is illegal, but also very effective. Considering the small amount of bandwidth needed to pirate software, it would be negligabe to get at will.

The best plan, though, it is to use open source software. But in cases of market capture, one must use the de facto software.
Also, to add, Steam doesn't check system requirements to even suggest that the game may not run on the PC. I had received a beta invitation and downloaded the game, before finding out it's 64 bit, sadly my PC still has 32 bit OS.
CoreLogic Reports Home Prices Rose by 5.6 Percent Year Over Year
Yes, 80% is considered a bit extreme. We have cultural clustering in the US but you won't find people advocating for it or describing this scenario as ideal. The initial poster was asking why he was getting downvoted.

An example of how this plays out is demonstrated in the article itself. The author says '80% asian-american' rather than 'asian neighborhood.'

From a political correctness perspective, people in the US don't want to be seen perpetuating anything that could be considered a form of segregation. Simultaneously it is considered negative to be seen as 'gentrifying' a neighborhood, i.e. disrupting the traditional demographics of a neighborhood.
Good job pendoers!
Do you believe it's reasonable to assume that AES performance will remain constant over the same 5-7 year timeframe? That's at least a couple of hardware generations for an improvement they could make in the current generation if there was a market for it.
I guess my definition of going nuts was a bit more conservative. Both x86-64 and ARM's AArch64 currently only use 48 bits for virtual addressing.

Still, even if you design for computers with 256GB (2^38) physical memory, you still have a virtual address space that's 2^9 times larger (assuming addresses with the MSB bit set are reserved for the kernel's memory space). This is opposed to 32 bit systems where the physical memory space is close to or larger than the virtual address space. E.g. high end smartphones sold in the last few years have 2GB RAM and only 3GB of virtual address space.
FWIW, from the post:

> A disclaimer: this post focuses on how things typically work on modern consumer operating systems (especially Linux and Windows), rather than trying to cover all possible obscure systems. C doesn't have to work like this. It just normally does in practice.
Well, if we're getting into the realm of should and shouldn't, that's a different story. :) No, I don't think anyone should have to put up with that sort of living arrangement. At the same time, I don't begrudge people that choice if they want to make it. While I wouldn't make the same choice, I respect it.

I would never advocate miserliness without necessity. There's no reason to torture oneself, just for the sake of living hard. But I respect the decision to live as frugally as possible, especially while bootstrapping a company. If that means living in one place with three buddies, then so long as all four people are cool with the living arrangement, so be it. It's far from ideal, but it's a legitimate choice.

There are plenty of alternatives to crashing with a bunch of people in one tiny place in SF. But if you've done the cost/benefit analysis, and you truly believe you need to be in SF, then, well, SF is expensive. Deal with that as best you are able. If you are willing to make some significant sacrifices, that's great. You shouldn't have to, but there's a difference between the world of "shouldn't" and the world as it is.

Case in point: I know of two co-founders who moved out to SF, couldn't afford an apartment, and instead, lived on a boat in the marina for half a year. Would I have the grit to do that? Not at my age, at any rate. But I respect it. We shouldn't glamorize it, but we shouldn't rush to cast aspersions on it.
Steve Jobs' jobs [video]
>third of Microsoft’s revenue during its last fiscal year — about $26 billion of $87 billion in total.

Wow, I know it was high, I never realized it was that high, I'm guessing that includes Exchange and administration app costs.
(Jonny the author here)

I plan to write this up more completely, but here are some more technical details:

Most of the bits (the foam plane, servos, speed controller, radio modules, IMU, barometer and GPS) came from eBay or HobbyKing. I started off with a little USB development board with an Atmel SAM7 on it, and then moved to the PCB and a newer Atmel SAM3 (partly after discovering how cheap prototype PCBs are from ITEAD).

I initially wrote the algorithms in python, using pyserial to talk to the built-in bootloader the chips come with, through which you can manipulate registers and control the peripherals. This made writing and debugging the C much easier. The chip runs TNKernel, a little RTOS, which handles the radio and IMU processes (and soon GPS and barometer).

Control is currently simple proportional control based on the IMU output, but I may add integral and differential terms once I'm more comfortable flying it, to see if can improve stability. It is remarkable how happy it is flying with the relatively crude algorithm it currently uses.

Launching it is still slightly nerve-wracking - you have to throw it quite hard and hope that it is going to go up rather than down. There's also the risk that it'll fly out of radio range and keep on going, but if this happens it automatically cuts the throttle, in theory at least!
You make a good point about needing more bits of resolution, but that's only a factor of ~10. I admit that I don't know the limits of the current sensors and rest of the system, but my guess is that they are not at the point where they are maxing out the bandwidth.

I expect that a full-bandwidth continuous surface-level brain scan would exceed traditional bandwidth.
From 0-day to exploit – buffer overflow in belkin n750 (CVE-2014-1635)
We do team based pull request reviews. (in github)

You need two other seniors to give you +1 to move on.
The number "two" comes from the fact that we are still a small team.

People can will still review stuff that has already two +1's but the commiter could already move on if needed.

The advantage of pull requests is less "teaching how to do it properly" but more "learning from each other" and "continous exposure to all parts of the codebase".

Thus it's not the job of the Team Lead to do this reviews but everyone's.

Pull requests reviews are done (asynchronously) done each morning (whatever this means for each person/timezone). This leads to the fact that you usually can expect PRs to be done within 12-36hours.

I could not imagine working in a team with different experience levels (not speaking of countries/timezones/specialisation) without pull request reviews.
There's no such warning displayed, because that would be a security hole.

This password security measure is a Chrome extension that's required by company policy to be installed on all corporate machines. It watches all input (to browser forms) and if it detects your password being typed anywhere other than an actual sign-on page, then the next time you sign on successfully you're required to change your password. I believe there's also an e-mail notification, but it's delayed.

This is actually a pretty good password security technique, specifically because people often inadvertently type their password into the wrong forms due to focus errors, lack of caffeine, etc.
If your timelines are such that you cannot institute a process for code reviewing pull requests and you have a team of developers, then I have to question the planning by the managers.
Google Docs have always been free, three weeks ago Apple's iWork suite went free, and now Office for mobile is free. Competition is a wonderful thing - hopefully it starts to bring down the price of Microsoft's cash cow, Office.
do a half day workshop with your team going through typical mistakes, how to avoid them, and how to write good quality code - after that there should be no excuses.

pull requests also essential but it's still admin overhead for you to review everything
The majority of the power of Office is only available on the desktop: COM, automation and integration.

This isn't a total give away, this is a loss leader which is just selling an editing front end for the files, not anything like the power of the full product.

However, I really think that Office on the desktop is a turd but it does make automation pretty easy but slightly awkward and painful. Perhaps this is bitterness from converting VSTO and Word interop to late binding all morning but I'm not a fan.

This is "meh" even to someone as embedded into the ecosystem like myself.
I think Dart client side development cycle is unmatched. Develop fast with Dart VM and Dartium Browser and deploy as JavaScript anywhere. Kind of a better GWT.

Language is good. Also they provide a lot of tools. Package manager, nice SDK, Profiler, Debugger, Code Analyzer, Formatter, Tree-Shaker and several editors. VM speed is close to JVM.. Dart is a very good server language as well. they provide nice command line support. You need to give a try and see to decide.

But there are places language and tools has not yet matured and community adaptation is still weak.
Interesting solve. I like it.
First off, you can't have CA in a distributed system, but I'm guessing that was a typo and you meant CP or AP. Given that it is based on spanner, and claims to have something close to linearizability, it is CP.
I enthusiastically second the suggestion to use pull requests. They make a huge difference in my experience, for a few reasons:

1) You're more likely to catch bugs, security issues, and potential performance problems before they get into your main branch.

2) Your developers will get feedback on their code, which is hugely important to growth (you can't learn from your mistakes if you don't know you're making them).

3) Your developers will learn how to give feedback, and how to have constructive discussions about code by virtue of reviewing and commenting on pull requests.

4) I think there's some light, healthy social pressure when you know that other people are going to be doing code reviews. People seem to be a bit less likely to take the "easy" (read "hacky") way out of a problem when they know there will be eyes on their code.

My experience has been that most developers really like getting feedback and having these discussions. And I've definitely seen them pay off.
Can't edit anymore -- but if anyone was curious, the find and replace did the job as expected, and my other computer had no issues. The only difference was multiple drive designations -- the computer with the issue had the program installed on the C drive with the project on the D drive. For some reason, it decided the $USER_HOME$ was D:\ instead of my user directory, and 14.0 technically corrected that problem.
Yes, it is 100% plagiarized. The last sentence in the original text:

"It doesn’t directly address the OS overhead issue, but that can, to a large extent, be worked around without extra hardware."

Their modification:

"It doesn’t directly address the OS overhead issue, but that can, to an astronomically immense extent, be worked around without extra hardware."
Another interesting point of view about constructors:

http://www.2ality.com/2013/07/defending-constructors.html
> are there distributed data stores that can be configured to resist intentional destruction of data?

Well, Git has checksums on everything.
The article says there is timing data, with microsecond resolution. That's how the author's tool is able to provide "real-time" playback.
Apple might be running a web crawler written in Go
Many errors in go are simply:

var ErrFoo = errors.New("error doing Foo")

Sometimes if you want an error to have a specific type, but have a custom error message with context in it (like the name of the file that was missing, for ErrFileNotFound) you can do something like this:

type ErrBar struct {
error
}

Then you can return errors of that type thusly:

func Do(s string) error {
// ...
return ErrBar{ fmt.Errorf("failed to use %q", s) }
}

Finally, a lot of the time you just want to give the caller some information about an error you received from a function you called, so you just wrap it thusly:

func DoIt() error {
// ...
if err := parseConfig(); err != nil {
return fmt.Errorf("can't parse foo config: %s", err)
}
}

That'll give you an error with a useful message (adding context to the error from getConfig), but with an anonymous type.

And since errors are just regular values, you can check for them in all the same ways you would for any other value (== for errors that are static values, type assertions to check for the type, etc).

It's not super different from Rust's errors, except that with embedding and the implicit interfaces, you don't have to explicitly tell the compiler quite so much to make your error a valid error.

Rust's main difference is the ability to define some automatic conversions and the try! macro that will do an automatic return if the call fails... which are definitely cool.
Well I look silly don't I. It microbenched it and their solution actually faster.

If you have a golden hammer, every problem looks like a red thumb.
We do 1-1 peer reviews and make changes in real-time so that the developer can see the preferences for code style, naming, indenting, etc.

You should also lead by example. Your post includes numerous spelling and grammatical errors. If you want them to be precise with such things, you yourself must do the same. Sorry, not picking on you, but your developers will follow your lead with any form of writing.
It's the same reason I had to take online maths/reasoning tests and then sit new ones supervised at assessment centres when applying for grad roles - they want to be sure you can do it and not your friend.

For me, I like the problems in an abstract sense not to actually use in an interview but to just improve my ability to see/solve the whole problem. So I'll sign up for fun.
I can't reply to your reply, so replying here. What about Little Italys and Chinatowns?
An absolute yes to this! That's why my install of Audacious uses a Winamp 2.x skin--it just makes sense. The rectangles, the beautiful alignment of playing data, equalizer, and playlist... It can never be eclipsed.

This has inspired me to figure a way to get my Wine'd Foobar2K to look like Winamp 2. There's probably a helpful article on that somewhere.
This really bothered me in the article too, though I'd always assumed Reading was a city (it certainly _feels_ like one!) - thanks for the info on that
Scribd Adds Audiobooks to All-You-Read Library, Piling Pressure on Amazon
Detroit Hustle in Silicon Valley
Revolutionary ALMA Image Reveals Planetary Genesis
Steve McConnell's Code Complete might be a good resource. Could you buy a copy for each team member and take an hour each week to read and discuss a chapter? That might get you on the road to better coding practices.

http://www.amazon.com/Code-Complete-Practical-Handbook-Const...
Nuance's commerce site gave me a half-price offer when browsed from Chrome on Android that was not visible on the same browser on Linux and Windows machines. I suspect that it was some kind of error since it wasn't declared as a special offer, just shown with a lower price. I was actually quite surprised when the lower price held all the way through online checkout as I imagined the stock and checkout functions would be managed separately from the main site.
Each week, you take one of them to be your pair. Do pair programming for 2-3 hours each day of the week. Make a wiki page with code style guide and recommendations. Each common mistake you find your pair doing, add to the wiki page. At the end of the week, you and your pair review the commits you have done and from a couple of others from the team.
I commented this exact same thing on the last article about living broke in SF that made the front page. It's incredibly ironic. People often talk about talent pool and access to capital as being the main advantages of being in the Valley. These advantages exist to some degree, but are vastly overblown, and you will only be in a position to use them if you are already successful.

Further, even if you are funded and successful, moving to the Valley probably doesn't make sense in your early stages (and for most, it will never make financial sense). Most people would rather work remotely than go into your early-stage startup office in a bad part of town anyway. The tools to make scattered teams very productive and cohesive have existed for a long time. As far as access to capital, if you get funded by a major VC firm that wants you to move to the Valley, you'll have millions of dollars with which to do it properly.

There are exactly zero legitimate reasons to move to the Valley in the initial stages of a startup, and many legitimate reasons not to. In fact I would think that most investors would look at the irrationality of such a poor decision for the financial health of a company and decide against funding it. It's indicative of bad, emotional decision making. Being in the Valley doesn't make your startup any more credible or valuable than it would be anywhere else. Developing a great product that delivers value to customers is the only way to have a successful startup - regardless of where you start. Begin with that, then move wherever you want.
How I Choose Headphones
Spritz a RC4 stream cipher replacement in pure JavaScript
Personally, I think this makes it unclear what the code actually does--IMHO, forgetting `new` is not a real concern.

I generally just add a `create` method to the prototype so that you can do things like, `_.map(items, Constructor.create)`
Philly will launch #YesWeCode #MyBrothersKeeper hackathon on Nov. 14-16th
Transcranial magnetic stimulation (Brain-controlling magnets: how do they work?)
MVP vs. MVE – minimal viable experience
Yeah, I agree about wrapping. I actually usually try to avoid just doing return err, because you're losing some context that this code understands that the below code doesn't.... like if you return a FileNotFound error, the caller might not know why you were looking for that file, so you should wrap it and say fmt.Errorf("couldn't find config file: %s", err), that way if the user sees the error message, he'll see "couldn't find config file: open: file not found: foo.yml" instead of just "open: file not found: foo.yml".
It indicates that the project is worth a closer look rather than waiting or dismissing it outright.
As for books, "Clean code" by Robert Martin is an obvious choice. It covers the fundamentals of good, clean code.

http://www.barnesandnoble.com/w/clean-code-robert-c-martin/1...
Try having your team read these books:

http://www.amazon.com/Writing-Solid-Code-Microsoft-Programmi...

http://www.amazon.com/Practice-Programming-Addison-Wesley-Pr...

http://www.amazon.com/Code-Complete-Practical-Handbook-Const...

I know these are old books and are C and C++ oriented, but it helped me a lot during my formative years and helped me transition from being a decent programmer to being a decent engineer. They are short books which are well written and not very dense.