skysight-inc/HackerNews huggingface dataset:
> It would be neat if we could decompose unsafe like so "unsafe[this_feature,that_feature] {}"

I sometimes feel the same way, but remember that the `unsafe` keyword only unlocks four additional features:

1. Dereferencing a raw pointer

2. Calling an unsafe function or method

3. Accessing or modifying a mutable static variable (and this might conceivably even be removed entirely someday)

4. Implementing an unsafe trait

It's unclear to me how to make this any more fine-grained such that annotating the "kind" of unsafe you're using would be useful and enforceable by the compiler (which is crucial, because otherwise why not just use a comment?).

In practice I think really the only "distinction" in unsafe Rust that I want is the ability to distinguish unsafe blocks that exist only to call external C code.
Seems like a cool idea! The article mentioned the drones were flying in hard-to-reach areas. These trees will be safe against harvesters.
Looks great.

Is the scripting language in the gif example Ruby?
COOL: FortiGuard Labs Threat Map
> "Yes, algorithm. The word you hardly knew until HBO's Silicon Valley focused an entire show about the immense power and responsibility that comes with creating one."

Hard to imagine, but possible.

Surely in 2017 the average person would know what an algorithm is, outside of any tv show. Right?
OCR excels at picking out digitally generated text, but it's not so great at "real world" text unless you help it by zooming in.

For example, it can't tell there's text in this clear image of a VIN:

http://1eask1khnn22hm3njx2dmz1a.wpengine.netdna-cdn.com/wp-c...

But I bet if you took a closer picture (like you would if you were using an AR app) it'd work
Keep the display at a level below eye level. Also look at something far away to give the eyes some rest.
Its not a tax loop. And if the laws were changed, the costs would simply be passend on to the tenants, be it directly vor indirectly.

Laws do no change market realities.
The Financial CHOICE Act and Banking Culture
> Another interesting "oh shoot" w/unsafe that I'm curious about: when I intentionally/unintentionally alias two variables in my unsafe block, this will invalidate assumptions made elsewhere in safe code. This is my unsafe block's bug, but it seems like something that could take a good while debugging to attribute back to my unsafe block. I don't think there's a good resolution to this one other than perhaps documentation/best practices.

As part of the unsafe code guidelines effort, there's been talk of adding an 'unsafe checker' mode to rustc, analogous to valgrind or Clang's AddressSanitizer, which would alter code generation to add checks that could catch many classes of incorrect behavior at runtime. (This would have a high performance cost and would be intended as a debugging tool.) One of the things it would probably do is keep a global map of all live references, and complain if references are created that break the rules, e.g. a mutable reference is created to something that already has a (mutable or immutable) reference somewhere else in the program. Thus it could catch the kind of bug you mentioned.

Of course, you would have to remember to run the checker, and as a dynamic rather than static analysis it would only catch errors that are actually exhibited at runtime (so it probably wouldn't catch the MutexGuard example from the original blog post, unless there was some real code that raced on a MutexGuard). Still, in practice it should help a lot with ensuring that unsafe code doesn't break the rules.

Edit: Niko talked about this in a blog post in February. He proposes a somewhat more complex tracking system than the global list of references I mentioned:

http://smallcultfollowing.com/babysteps/blog/2017/02/01/unsa...
What Rock Climbing Taught Me About Engineering
Oh right. Either I'm not thinking right or I'm also confused now with what you're saying. I hope someone can respond.
From the article:

VISA Network Statistics

VISA's estimated annual electricity consumption (TWh)	0.54

Number of U.S. households that could be powered by VISA	50,000

Electricity consumed per transaction (KWh)	0.00651

Number of seconds the electricity consumed by 1 VISA transaction could power 1 U.S. household	19

Number of VISA transactions that could be powered with the electricity consumed by 1 Bitcoin transaction	20,983
`
Kickstarter or Patreon would seem to be the kind of thing made for this problem. Maybe those that donate more get their pet issue moved up the queue.
Eye Doctor Sues Iowa Over Law That's Kept Him Out of Business Since 2004
What programming language should a beginner learn in 2017 – 20XX?
No way. You know only 25% of Americans have college degrees right? And few know how things like search engines work. Maybe 25% of the population has a vague idea of that word meaning, 10% could accurately define it.
> Imagine if unions were strong and IT were unionized. How would you imagine the progress we've seen in information technology?

I imagine less bullshit businesses selling air castles built on top of an exploitative operation. I imagine better democratic processes inside companies. I imagine using collective power to protect underrepresented groups instead of fighting against each other. A net benefit to society.
These voids change moving up the distance scale - while our star system is visibly not inside a void, there is evidence that the Milky Way is inside a galactic-scale void.

http://news.wisc.edu/celestial-boondocks-study-supports-the-...

https://www.universetoday.com/135954/largest-scales-milky-wa...
Running SQL Queries Against Baby Names from Social Security Card Applications
Every single one of the projects that are on this site right now are super underpaid...

It's sad that even the highest bidding project is $500/mo.
Its really not that hard. Instead of blindly following rules someone else wrote, just read the code. Is it easy to follow? How many details do you have to juggle in your head? How many indented scopes are there? How much state is there? Can you mostly read it from top to bottom, or do you constantly have to jump around the file? If someone unfamiliar with the code (maybe you in 3 months) needs to make a change, how easy would it be for them to overlook some important detail and mess it up?

Best practices usually apply in general, but the smart person who coined them cannot know all possible situations and the parrots who blindly repeat them don't know what they're talking about. Think for yourself, know your tools, and use them effectively to make your code as simple as possible.
Thanks! The scripting language is Lua 5.2.
Where Facebook's first 20 employees are now
I'm sure most people would have a very basic understanding (e.g. they know what the word means but can't define/explain it to another person) but anything deeper than that I would doubt. I know it sounds ridiculous but as a self-taught developer I had released popular software and was still in the bracket above before actually taking more of an interest in CS.
This reminds me of Alex the Parrot [1], an animal that ostensibly learned to use the language, not just mimic language sounds (though that conclusion is disputed). Would it be crazy to imagine schools to teach parrots how to use language, like Alex, and then be able to actually communicate with many members of another species?

[1] https://en.wikipedia.org/wiki/Alex_%28parrot%29
> Growing so much at such a high quality, I can't imagine folk are importing it.

No, the Netherlands grows its marijuana domestically (and exports about half of what is grown domestically).

But to be honest, it's not a huge amount. The Netherlands grows about 270,000 kg of marijuana annually. To put that into perspective, about 17,600,000 pounds are grown each year in just five US states (Washington, California, Tennessee, Kentucky, and Hawaii).
Cool idea, but it seems like some of these are beyond the realm of a "side project". Like the News Aggregator one (https://www.demandrush.com/problems/news-aggregator-paywall). That one you couldn't really do without getting a lot of license deals with content providers. That already puts it out of the league of what most are able to do as hobby projects.
45 minutes? Are you incorporating stretching and mobility work into that?
opaque? have you seen the bitcoin dev mailing list? or the github issue list?
I don't understand the difference between 'sudo service nginx restart' and 'sudo systemctl restart nginx' and also 'sudo killall nginx' still works with systemd. So I'm not understanding the simple use example.

Whether SysVinit scripts or systemd scripts, you have to learn something to do either one. I just see it as a difference rather than which is simpler. But systemd can use SysVinit scripts anyway if you prefer it.
Captcha solving is expensive for spammers.
> The very idea of startup culture and arguably hacker culture was that that beaurocracy was unneeded cargo cult, and parasites making up justifications for their power.

It's ridiculous to consider Uber a startup in 2017. They are not. They are a corporate behemoth that cannot function without a sizeable bureaucracy.
Again, I don't see the problem, I don't get in a vehicle that I don't know how to drive and just start driving. To do so would be unsafe. The world and the Internet in particular is an unsafe place, there is some onus on the individual to take personal responsibility (in this case educate oneself about the dangers of the internet). If I leave 10 grand laying in the street and someone takes it is it their fault or mine? Did I have expectation of privacy and security for my money? If I leave my money in my house with a locked door, does the fault change? The Internet is a public place, if I take no precautions to secure myself on the Internet is it not the same as taking no precautions in public? In this cause, the precaution is simple, don't take cookies from untrusted sites.

Now I know there are the technically illiterate on the Internet but that is no excuse, if I get into a crane and start poking buttons (levers, hell I don't even know what controls a crane), I should expect the full ramification of injury to myself and the liability for injuries to others. Because I embarked on doing something that I should have gained at least a rudimentary education on before I just jump on.
I think the photoshop vs gimp is a bad comparison, mostly because throwing money at gimp to make it better is a bad idea. It would be better to start from scratch.

Now if you wanted to throw $400 for a photoshop like system to start from the ground up and work across all three platforms, I think you've got a great idea. You'd avoid the cruft, you could do subscription/pay-per-use cloud based filters, you could start with 32bits per channel from the start, instead of the slow transition to GEGL...
MachinaBot, the Smart Relay Gateway Designed for Bots
Hi everyone,
We are very happy to present MachinaBot, a smart relay gateway designed for Bots
MachinaBot accompanies developers from Dev to Prod.
Scaling your bot, Managing your users' sessions, Local testing, Multiple-integration, A/B Testing, Team Collaboration all of these tasks are difficult to setup and maintain. This is why we’ve created a powerful platform that combines all of these delicious features in one place. It’s as easy as clicking on a button.

Today we are opening our early access program and invite you to be a part of MachinaBot from the beginning! it’s fresh , it’s new and it’s free for developers forever
We still have some time before the official release and will be adding more goodies for you to try! https://machinabot.com/is
If i can be of any help at all, please don’t hesitate to reach out
not small at all. any substantial change needs buy in from users, miners and developers. not to mention companies.
The government is who has screwed you over. By offering student loans, the govt (perhaps accidentally) inflated the cost of college to insane levels.

Continuing the flawed system is not accidental, because having a generation in lifelong debt is convenient to those who control wealth.

But I doubt it's your parents who are to blame. It's yet another failure of our government to look out for the best interests of its citizens because it gets swayed by greed.
A systemd replacement is going to need:

- an integrated inetd that can launch non-root processes
- ability to chroot() any application at launch
- inotify capability (path units)
- consistent scripted application startup and control

Just about any UNIX could really use an init that can do all of that stuff (even if they don't have cgroups). If you can't, thanks for playing.
I agree. There's a wide range of possibilities here.

In the most basic implementation, you'd have 6 features, each with 14 possibilities, and you choose one option from each and combine them. That gets you 7.5 million combinations.

A more sophisticated implementation might pull from a larger number of features and options and apply complex transforms to produce nonformulaic output.

My guess is that what's actually cutting-edge here is not the algorithm or the designs, but the ability to print custom labels at all. My guess, though, is that it's only cost-effective as a publicity stunt. Printing 7 million identical labels is likely far less expensive.
CCC 007: How to Scale Content Creation, How to Make Money Podcasting [& More]
Ask HN: What's with the new dark td above the orange td?
You're right, support for cross-origin form POSTs isn't important for us. What is important, however, is same-origin requests, and Firefox doesn't send the Origin header with those. For us, the Referer serves its most important role by indicating where those requests originate from.

EDIT: when Firefox _does_ start sending the Origin header, we may drop the Referer - we'll see.
I don't see how this is a good thing? If what you are describing is true, it ends in those rich enough to buy the majority of nodes in the network, being able to control the entire blockchain. Pay-for-power doesn't seem like a good solution for governance.
Fully responsive online dual n-back game
I suppose you could post your project idea on there, and see if it takes off. Although it's not clear who makes the decision of who "officially" gets to tackle it, there's really nothing stopping you from tackling it anyway.
Yes, agree it is a bit messy now but still manageable as i wanna delay using Redux / Mobx as long as possible.
Also see: https://news.ycombinator.com/item?id=14549574
In Brazil reforestation is also used for criminal purposes. If you plant a certain kind of pine, it will, over time, completely overtake local species. In the course of a decade or two, you can transform protected areas into whatever you wish.
Also for what it's worth: https://news.ycombinator.com/item?id=14549574
I actually really like this idea. I was in Blender and thought about how mipmapping has some surface similarities with the way the world works. Detail is only apparent once you can observe it. Maybe fields and waves are faster to calculate, where finite particles are difficult.

I'm just spewing nonsense, but this is the sort of stuff that makes for a great talk over a beer.
This title made it seem like the algorithm was a proprietary piece of software that Nutella licensed for a limited time. It might have been interesting to discuss what it means to "hire" and algorithm vs a person.

But I think it just means they (the ad agency) wrote an algorithm.
Is it generally accepted that this is inevitable? Or is it going to be a SegWit/Unlimited sort of situation?
> Ubuntu snaps are not sandboxed yet [1]

That's quite a blanket statement: of course they are. Snaps are sandboxed by a set of interfaces requested by the snap in question. If the snap requests networking, it gets networking. If it wants to access the sound card, it gets the sound card. Some of these interfaces are more powerful/dangerous than others. If the snap requests X, it gets X. That makes that particular snap certainly less safe, but it says nothing about snaps that don't use the X interface at all. The user can also disallow access to X (though that probably makes the application less useful) by disconnecting that interface: snap disconnect <snapname>:x11
Zero tolerance is not a plan; it is a goal. That is far less concrete than the plans listed in this report.
Compared to my JQuery days, it is a big improvement in terms of maintainability now. No complaints!
As you say, none of the existing sanitisers catch Rust-specific problems, which is, I assume, what the parent meant by "for Rust". That said, they will likely catch many of the consequences of such violations, just not pinpoint the cause as precisely.
sounds like an approximation of a demand curve, which if opened up the developer would give them the option to choose how to segment their market quite nicely.
your second point, what are you basing that on?
So, I acknowledge there are breaches which started with XSS (Atlassian, etc), but even when you look at breaches that started with "client-side web bugs", how many of those are CSRF rather than XSS? Probably only a fraction, since they're shittier bugs.

And then, from the pool of "client-side web bugs", how many involve browser bugs?

This is just such a tail risk that it's hard to make myself care.
It's not an exact dupe, but the discussion in this other submission is very relevant https://news.ycombinator.com/item?id=14548898 (32 points, 18 hours ago, 19 comments) Short version of the comments: There have been a few similar works before and this is overhyped.
Good point, on Fedora 26 I see /usr/sbin/service is provided by initscripts-9.72-1.fc26.x86_64 and it's just translating the service commands into systemd equivalents.

[chris@f26h ~]$ sudo service smartd.service status
Redirecting to /bin/systemctl status smartd.service
Best invoice and billing software in India
Ok..given that's the case. There are lots of governments who run high debt levels and aren't in that quandry.

The debt isn't the problem. It's misuse of the debt that's the problem.

Even most companys run standard levels of debt every quarter, because borrowing is a very powerful tool IF USED CORRECTLY.

So, there's a significant distinction there, the I feel less educated and less economically inclined people fail to grasp....

Debt can be a very positive tool if used correctly.
What all entrepreneurs can learn from scaling non-profits
The time that went into Photoshop cost a lot more than $400k, I would guess between two and three orders of magnitude more. Even given that you would not have to start from scratch and that you know your target pretty much exactly and don't have to go through almost 30 years of evolution, $400k would not get you nearly close enough to Photoshop to make switching worthwhile. Also assuming starting with GIMP is a good idea in the first place, I know almost nothing about its features, architecture and code base.
Yeah, that's why i suspect it might be a a good use case for Redux but not very sure. Hopefully something better (Mobx, etc.) comes along when i decide to implement a state manager.
Why would spending money on a brand new system with no proof of success be better than a matured application with plugin support?
Some require a lot more understanding than others (for instance I'm not sure I'd be comfortable implementing a kernelized SVM from scratch, even though intuitively I know how it works) but basic neural networks (simple perceptron, simple feedforward network, simple recurrent network) are quite easy to grasp, and backpropagation is very intuitive. You can even use finite difference approximation [1] to bypass the derivatives when you're starting (at the cost of some efficiency) and figure out the rest as you go.

[1] https://en.wikipedia.org/wiki/Finite_difference
This presentation could use some navigation buttons.
If there's a new argument to be had here (I'm doubtful, it sounds like a re-hashing of governance issues that have played out over the last year), it's this claim:

"This rule-making is what we refer to as governance."

This conception of governance is the premise for the conclusion, what Lehdonvirta calls a "paradox":

"And this leads me to my final point, a provocation: once you address the problem of governance, you no longer need blockchain; you can just as well use conventional technology that assumes a trusted central party to enforce the rules, because you’re already trusting somebody (or some organization/process) to make the rules. I call this blockchain’s ‘governance paradox’: once you master it, you no longer need it."

My own analysis draws on a more expansive definition (from Introna; Saurwein et al.): http://iqdupont.com/assets/documents/DUPONT-2017-Preprint-Al...

This expansiveness is necessary, as Lehdonvirta recognizes. Contracts are not just enforcement, they also encapsulate the processes of making ("rule-making"), or better, negotiating contracts.

So, are we authorized to go from a rule-making notion of governance to the conclusion that once this is addressed blockchain technologies will be redundant? Lehdonvirta doesn't give us any analysis of this move, but I don't think so. Rather, we need to recognize the contested forms, which are the essence of governance, and then create a socio-technical structure around them. Consider: double-entry bookkeeping is just as much a technology for governance as blockchain technology (and, of course, they share a historical lineage). Does double-entry bookkeeping go away because we "address the problem"? Hardly. Rather, we need to recognize the ways that it has developed, and by whom, and for what use. Just like blockchain technologies.
Konkourse [Pre-release] Community for open source ideas and finding collaborators
The canonical counterexample to "who needs progress?" is medicine. I wouldn't want to be limited to the medical care from 1999 if all else is equal. Who needs to live with hepatitis C now that there's a cure?
Experiences using Terraform
> There is no intuitive way to extract percentile results from rolling a small number of d6s.

Here is an algorithm for rolling a single decimal digit using on average about 2.19 d6 rolls (which can be done in parallel if you have more than one d6):

function one_digit
d = roll()
while d == 6
d = roll()
if roll() <= 3
return d - 1
else
return d + 4

Do this twice to get a percentile. This seems reasonably intuitive to me.
"They're just going to trample over the landscape they're supposed to be foresting."

Really? Do you have a mental image of these people locking arms like a search party and marching around the forest deliberately stomping everything they find into a thin green paste or something? It is not actually that difficult for some people to walk into a forest without killing everything they see, plant some trees, and come back. The Evil of Man (TM) does not actually extend to laser beams of death coming out his eyes and striking down all living things within visual range.

I can't help but read this as just being contrarian for the sake of contrarianness, because this objection (being raised by some others in this discussion too) is fundamentally deeply silly.
Actually they buy supply from the hydro dam which is right beside them, at 125,000 volts they have their own substations.

There is also a windfarm about 10 minutes from there, and they also have access to the regular hydro quebec power grid.

That location in beauharnois was very strategic... cheap land, hydro dam right beside, near the hydro quebec main transmission line for US interconnect... only thing they were missing was fiber but they brought it in.
Nah. <anecdata>My wife is very technically minded (and has been married to me, a software developer, for over 10 years) and I just taught her (with more effort than I expected) what an algorithm is.</anecdata>
Yes, I'm talking about FIRRTL, which is used in the latest version of Chisel (Chisel 3).

There aren't official releases of this version yet, but you can get snapshots (if you don't mind some API breakage now and then). It works fairly well now and we use it in all our RTL designs.