skysight-inc/HackerNews huggingface dataset:
These proposals feel like shuffling the deck chairs around on the Titanic. I get the goal of attempting to increase accountability via tweaking expectations of package managers, but that ignores the deeper problems limiting software quality that cause this whole situation in the first place. Consider this quote:

Packages that wantonly broke their consumers would "gain a reputation" and get out-competed by packages that didn't [...]

This quote illustrates a host of fallacious assumptions in the article:

1. That there's a large enough competitive field for any given package that one that publishes a "bad" release can be "punished" by being overtaken by competitor(s). This is weird on so many levels. The costs to switch to a competing library can often be quite high, more than just fixing the current one. Related, there's often only one viable library choice in a given domain, which implies both zero competitors and a high cost of using an alternative (whole-cloth rewrite).

2. QA is expensive: time to maintain automated tests, time to run any needed ad-hoc testing, time and experience to develop the library in a really robust way. But this proposal seeks to put in a competitive incentive that would fragment efforts to solve the same problem. So there's this assumption that the publisher is only ever just incompetent, not starved for resources to implement great software quality. A major success of open source packages is that they enable consolidation of effort (i.e. a community of contributors).

3. Sometimes a library is used in contexts that weren't foreseen by its authors, so a "breaking" change for some consumer is accidentally introduced. This may have happened before a package consumer strongly adopted it. This dashes up against an implication in the article that breakage is only ever introduced, vs. already existing. Packages are never in some pristine state of function and concept. Except for some kinds of simple packages, they're often ongoing, living exercises in understanding the real-world problem domain and applying software techniques to the solution.

Overall, I think saying that modern package managers "default" to unpinned is a straw-man: no sane package manager is intended to be used this way except for a few minutes after setting up a new project. "bundle install" that first time and now you've got a Gemfile.lock. The next time, you get the same packages as the prior install. Likewise, "bundle update" is an operation that should be dirtying your source tree, requiring the usual passes of building, testing, and other software quality process before it lands. AFAICT, nothing in this proposal would ever change these steps: initial package adoption, and software change evaluation. If there are problems with upstream package quality, those root at deeper issues of "why software quality is hard" rather than being the fault of current package managers. It's difficult to see how our package managers could influence this real-world social problem at all.
Mobile Price
There are some interesting conflicts that architects must resolve. Technology driven design is not great, but I feel things like CQRS fundamentally alter business expectations. Think about read-after-write usecases that customers are accustomed to because we used an RDBMS. If now we are forced to rearchitect because of scale and complexity, we have to change the product behavior. Try sell that to PMs and customers.

I believe the systems should be built ground up for scalability, but does not necessarily mean it has to be a complex implementation.

Ultimately, more commoditization of building blocks will make a lot of such decisions a moot point
Yes but that's not what's going on on Facebook. You aren't isolated like that.

It's an oversimplification of how the algorithm actually works as there are plenty of non-political interestest involved too.
“To begin with, it's weird that versions are strings.” - what else would they be? An audio tone at a particular frequency? A vibration pattern? It’s written communication. Perhaps he’s just confusing data types with how they are communicated. But then, you’re free to use any data type you wish. If I’m not mistaken, Ubuntu & Jetbrains both use date fields in their versioning. Still communicated as a readable string.

He proposes tuples, but doesn’t care for semver. So what would the tuple mean?

As a human race, I’m sure we can do better with versioning semantics. Perhaps I’ll put some more spare personal time into that semantic schema kit I was designing. Ultimately it’s about data types, containment and meaning. And his proposal ignores most of that.
I bought a preflashed phone direct from them and didn't have to follow those steps.

Even so, it's probably not for everyone but I think it deserves a shout-out.
I’m heavily involved with production at my company including mechanical design and electronic fabrication.

In what quantities are you planning to order? How long do you plan to support this product? Are you cost sensitive?
> a major version conveys no more information

I understand where you're coming from: a complete project name change is something very different. I also think this is something that's commonly misunderstood.

From the article:

> conveys no more actionable information

The key here is actionable. What will change in what you as someone who consumes this third-party code will have to do if you adopt a major version bump versus a new library? Unless the new version is API compatible with the old one, you're likely going to have to do some major work in incorporating the new version; if the API is backwards compatible, it's not really a major version bump. The further a different library is from the one you're currently using is of course going to require a different level of rework, but that's part of what a major version bump signifies. I see what you're getting at with respect to some arbitrary new library, but if the new major version (with a new name) is from the same maintainer, Rails2 vs Rails v2 isn't so different from what you're going to need to do in your code.

As for which name you change, I think that's where the rubber meets the road. What's the name the code is referred to in your application? That's the one that really matters, and where a name change is warranted. If the language affords module namespacing, the new library is just a new require/import. Major versions aren't drop-in replacements. If the libraries are namespaced, you can conceivably use them side-by-side in the same codebase as you migrate. This is potentially very powerful. As a practical example, in one Java library I've been working on that has a long history, it's able to use various versions of JUnit in the same testing suite exactly because the different versions are namespaced.

Another example at a different level is being able to install more than one version of, say, python or sqlite, on the same system. Some packages name the binaries with a suffix, e.g., python27 or python3, so you can include and have both of them on your path without conflict. When you install current versions of sqlite, the binary is explicitly sqlite3 so as to not be confused with older, incompatible versions.
I don't (on the first point). Everyone with the background to understand the problem under discussion and appreciate the explanation already understands that Gaussians are parametrized. I challenge you to find a counterexample. The specifics of non-isotropic parametrizations are even less relevant to the discussion than scalar parametrization.

On the second point, I agree that the approximation deserves a mention.
Good one. I will use it too. When I can't find what I want in Google, I'll search "bing" and click the first link.
There's the externality of pollution you didn't consider.
Find Array Sum Pairs – Programming Interview Question
> I think people are confusing two things: Facebook and its first and main product, the News Feed…

I think that's naive and misses the forest for the trees. You may be technically correct (as you would be saying "people are confusing Google and its search engine"), but none of that structural pedantry relieves Facebook of any responsibility over its obliviousness about how it's affecting society.

> Facebook changed their core values over what happened during the campaign.

No, Facebook's change of heart has been slow, incomplete, and didn't begin until well after the campaign ended.

> Facebook is not responsible for Trump’s election…

They (obviously?) are to some degree, so I find that a very bizarre thing to say. It's likely that even Facebook doesn't yet understand the full scope of their election influence.
I didn’t delete my account but removed the app on my smartphone last month which is as good as. My feed became infested with commercials posing as friends likes and posts. Also the last 18m people have been using a lot facebook to voice their political views. I am not opposed to reading views diverging from mine when they are argumented and constructive. However argumented and constructive articles isn’t what people post on facebook. The whole thing became obnoxious more than anything else. My humble opinion is that facebook could disappear as quickly as it appeared.
> I would find it annoying to use this scheme because you have to hunt around searching in a different way to look for major upgrades compared to what you do for minor ones.

Either way, a major upgrade would mean a significant change in the way you use the API in your project.
An example of such tool https://github.com/paypal/autosklearn-zeroconf

There are many more including genetic algorithms. Some are discussed here:
https://www.reddit.com/r/MachineLearning/comments/6efs8u/d_a...
One other way to look at this problem is to see that in most other disciplines, impactful resumes are results-oriented rather than methodology-oriented. A sales resume says how much revenue they brought on. An operations resume might state ways they created new customer value or efficiencies. A management resume talks concretely about growing a team. A Java developer’s resume says they did stuff in Java.

It shouldn’t be enough. Software engineers have a duty to identify and inventory the value they create for an employer, rather than just listing all of the tools they use. And if those engineers can’t talk about the value they create, they should take a big step back and ask if they’re actually adding value at all.

By the way, employers should share the burden of identifying software engineering value as well, and have a similar responsibility to demand an accounting of effectiveness when screening candidates. Most of the time that’s from a code test or trivia questions about some language or technology, but that still doesn’t mean you’re effective and valuable as a result.
I think Snap is doing the best pure "Social Media" experience of any service right now. Whether or not that can really be monetized without becoming another Facebook is a different story.
Ask HN: Help installing C on Windows?
Matt Levine had a good take on the second point (as always): an underwriter used to lend its name and authority to an IPO as a gatekeeper, back when IPOs were rarer. Now they will sign onto just about any deal, and while they still do some due diligence, it means very little to investors that Morgan Stanley or UBS is underwriting.

“Nobody bought Snap because of Morgan Stanley's imprimatur. In this world, the underwriters are mostly just service providers. Certainly they have due-diligence obligations -- they really aren't supposed to take companies public if their financials are fraudulent -- but they don't have much leverage to insist on things like voting stock or forward-looking earnings guidance. The market decides stuff like that, not the underwriters. The underwriters just shut up and execute.”
3 fps?
I generally consider myself to be favorable to those outside any kind of 'establishment', but I'm honestly baffled how anyone could be even remotely positive about Trump.

I'm also honestly curious though. Care to elaborate why you're not as negative towards him? And if not in public, I'd really love to continue this by email (mine's in my profile).
Why do you think there is no open and free search engine? I don't think it's because of hosting costs, because a distributed search engine could be run with local hardware.
>>> Few people use technologies just to play with them when something serious is on stake (or so I hope).

I wish that were true. For example, I bet the actual number is < 10% of people who use Kafka need it. There's nothing Kafka can do that SQL can't, it's a highly-specialized tool that drops 90% of database features for a performance gain. I suspect very few companies need Kafka. [Aside-- honestly, Kafka should exist as a storage engine within SQL and nothing else]

It's the whole "Mongodb is webscale" debate again.
Try searching for things like part numbers and datasheets for obscure electronic components, along with schematics and service manuals. That's one area where Google's search results used to be far better than now.

I've almost become accustomed to always putting my queries in quotes, just because it would otherwise mean completely useless results.

The other thing that's gotten worse results is... adult content, especially when searching for very specific terms; and even with "SafeSearch" off, which is supposed to mean no filtering.

To add insult to injury, repeating minor variations of a query, combing through "all" the results (or as many as Google is willing to show you), and in general trying to extract what you're actually looking for also tends to get you blocked with a CAPTCHA or just completely banned for a while.
> and it's got the sexual harassment aspect,
> too. Many many female friends of
> mine receive unwanted dick pics.

Same here. If I was in charge of Snapchat I'd be working on some way of automatically identifying and killing those images in-flight, and banning people who sent them repeatedly.
Facebook and Reddit are both great places to have a mature discussion on tech. But which groups you join matter a lot.

Neither highlights new things as well as HN, but I feel median comment quality is better there.
Somehow I am sure that some governments have already made contact with ET intelligence. This will be revealed in a few decades may be, when world is ready for it. A conspiracy theory but something unknown gives me the confidence and belief.
> All software comes with a version

Nitpicking, but this is not true. Lots of software is never formally released, and therefore doesn't have any version. Sometimes such software is useful enough to make its way into a software distribution, in which case distro maintainer has to invent a version number for it. Ugh.
Then your immutable log is actually mutable, and you spent all this time not building what you actually set out to build.
It's interesting that newspapers used (before they all went effectively bust or got bought by monsters) to make a big deal about editorial independence and journalistic integrity. This caused people to trust them (in time). How come Google doesn't appoint a board of editors and grant them independence ?
I'm still frustrated that Google took away using pluses in searches so they could try to recreate AOL keywords for Google Plus.
I still think Snap is a good long play because so far they are the only social network to "get" Augmented Reality. Google has already had multiple AR missteps (Glass, Tango, Pokemon Go via Niantic), Facebook is playing AR copycat, Microsoft's AR is targeting big industry.

Snap's entertainment experience puts the viewer in the center of the action, similar to VR 360° experiences and Spectacles is a direct expression of that understanding. Snap's AR advertising (sponsored filters) has been an overwhelming success. I don't think a real competitor has emerged for Snap yet, as long as they stay the course.
TPOT is also a good automl package that utilizes sklearn in Python. It's also actively under development. (I'm not affiliated, just an occasional user)

https://github.com/rhiever/tpot
Respectfully disagree from my anecdotal evidence. Someone sharing politics you don’t like? Unfollow or unfriend, leaving content in your feed that you want to see, reinforcing your beliefs regardless of the truth/facts.
Show HN: Ben.Demystifier – more productive .NET exception traces
In .NET Exception.ToString() still outputs stack traces for C#1 so all the new features from C#2 -> C#7.2 come out as a garbled mess.

Ben.Demystifier converts stack traces in the exceptions back into the source code signatures - rather than the compiler intermediary rosyln output methods.

Particular highlights would be async noise, iterators, lamdbas and local functions.

Feedback appreciated!

GitHub: https://github.com/benaadams/Ben.Demystifier/

NuGet: https://www.nuget.org/packages/Ben.Demystifier/
The keyword you are looking for is AutoML. http://automl.info/
I get 23 on a beastly desktop with dual GeForce 980Ti. Not bad for 1.8 million particles!
Yes, the latter.
The largest boards in our building look like they're around 5' x 8-10'.
Ask HN: How much did you sell your startup for?
I have a small site (about ~10k active user) that lets users watch movie trailers and create watchlists to get alerts. A buyer is offering $50k for the site. I don't know if this is a good amount or not. Its a decent chunk of money for me but not life-changing or anything like that.
For all the folks who sold their startups or sideprojects, how much did you sell it for and what was the experience like? How did you value your startups?
The proposal is to pin the major version and always use the latest minor version.

Assuming no accidental breaks of backwards compatibility in minor versions, this should work.
The economics of tokens
50k, i resubmitted with the correction. Thanks for pointing it out.
> One of the strengths that's getting overlooked here is that crowd-sourced news seems to be more reliable than news from any one source. Everyone is biased, but if enough people are talking about something the bias tends to cancel out.

I don't think that is true at all in general. If the opinions are divided like 50/50, perhaps yes, but what if it's 75/25 or 1-versus-the-rest?

Also, most people find themselves effectively in massive echo-chambers, and the amplification factor of resonant opinions may not be very predictable.
Apple just commoditized AR by adding it as a set of iOS APIs that anyone can use, so that's an awfully shallow moat for Snap to rely on.
I'll consider doing it for $20/day. Not just topics but comments. Maybe cheaper if a lot of others subscribe as well.
This explains a lot of fanboism in general. Like when I would argue about how Xbox > PS3 on forums as a kid because my parents certainly weren't going to buy me both.

I was stuck with the Xbox so I had to validate that reality to myself by defending it on the internet.

It's no different on HN.
A lot of it has to do with the "hype" cycle going on. If NY and some CIO magazine says "blockchain is the next best thing", everyone dives head first into it.

Then there are a lot online courses which promise to make you an "expert" with couple of hours in training. What people actually get is a very basic level of understanding. This step plays a particularly large role.

The next step is to build something using the just acquired knowledge. And once someone reaches this stage, it becomes a case of hammer and nail - To someone with a hammer everything looks like a nail. Solutions which barely meet the problem criteria are taken up because "blockchain" (or AI/ML)

Anecdote - We had someone after completing the famous Andrew Ng's coursera course ie novice in AI/ML proposed to build an ML library for data cleaning. The management was very happy with the revolutionary idea - at least he is thinking was what they said.
I've been buying from there since 2012. Early on, I would agree with you and say the quality of a lot of the products was pretty poor, but in the last few years, I've been really happy with all my purchases.

As well as getting really cheap stuff, AE is really handy for getting hard to find things. Especially if you live in a small town as I do.
> (Second one is that there is no way to make specific queries to return results only in a certain language

It's a little hidden away but advanced search can do this.

For example: https://www.google.com/search?as_q=猫&lr=lang_en
Yeah, the old name + a new version number does indeed convey information; there's going to be some common ancestry, anyway. It also means that the users of the library aren't forced to deal with a sea of cutesy names, we've already got too many of those.

"Well, we need to upgrade the Epic Flatuence server to Smelly Gangrene in order to stay compatible with whatever they're calling the next version of Wild Dingo --"

"Screaming Fist."

"The Russian version?"

"No, by a guy out of Vancouver."

"Right. Next, let's talk about Your Mother ..."
Not if you swap the log with a new one in an atomic operation.
Just because these languages died, doesn't mean we cannot take those lessons into GC languages where you can find people who know how to write it.

For example, all the work with System C# done in Midori has been being applied to C#, with .NET Native, ref returns, local ref variables, value tuples, regions with disabled GC, memory slices, with a few more down the roadmap, like effectively manual memory management presented at OOPSLA 2017.

Or the ongoing @nogc and BetterC improvements in D, Wallmart, EBay, Netflix, Remedy Games among many others, seem to be able to find people that know how to write it.
If they could tune the GC to enforce predictable pauses (which is common practice enough afaik), why would that shake your faith?

The JVM cannot know in advance if you prefer throughput or predictability.
That is a different issue. The article was about an external USB device.

Also I don't understand the concern with people not trusting Intel. By using their hardware in any form you are inherently trusting them. Unless you are able to check their design and fabrication process, they could easily hide something in there to disable protections in Windows or Linux based on certain patterns of network traffic.
Will this work with drums? It would be awesome if I could (poorly) beat box a rythme and get a drum loop in return.
kdb also allows you to do much more than SQL, since a select is more or less just syntactic sugar for a certain set of operations on columns as arrays. The full language is available in the context of the query, or you could just treat your table as a bunch of arrays in the context of a larger program.

It's a really elegant way of dealing with large amounts of data, although the downside is that you've typically got to build a lot of the nice-to-have dbms type infrastructure yourself.

It would be interesting if BigQuery or Redshift ever figure out that they could have a much more powerful system if they stuck an array language on the front of their storage engines.
If you look at the FB phone app after not using it for a week or so, you will have 1-2 notifications. A few hours after opening the app, 7-10 notifications will appear, creating a false sense of urgency to check the app so you don't miss something. Heroin dealers do the same thing when they notice customers not coming around anymore.

The psychological tactics facebook and others use trigger the release of dopamine just like cocaine, heroin, amphetamines, and gambling.
Do you have any revenues from the site?
I dig my heels in when new tech drops these days. Been burned too many times. Want to use it? Prove it works. Qualify it properly.

Conservative engineering builds better quality products and benefits the user the most.
Of course if you're buying the cheapest stuff manufacturers are going to cut corners. When you buy more expensive stuff that is well made, like Apple products which are also manufactured in China but much more expensive, of course you're going to get something that's good. Your problem is to not go for the lowest denominator and generalize.