skysight-inc/HackerNews huggingface dataset:
You can get a commit log (PC, inst, write-back address, write-back data) from Rocket to compare against Spike's commit log. It's not documented because the verification story is still in flux, and the commit log is fairly manual (since there will be many false positives).

Comparing a real CPU against an ISA simulator is VERY HARD. There's counter instructions, there's interrupts, timers will differ, multi-core will exhibit different (correct) answers, Rocket has out-of-order write-back+early commit, floating point registers are 65-bit recoded values, some (required) ambiguity in the spec that can't be reconciled easily (e.g., storing single-precision FP values using FSD puts undefined values in memory, the only requirement being that the value is properly restored by a corresponding FLD).

We also use a torture tester that we'll open source Soon (tm).
The perceived "if you're keeping quiet, you must have something to hide" aspect of anonymity fascinates me.

Does anybody know if you might actually be safer from, say, a theoretical surveillance program by "blending in" as a typical Internet user vs. using Tor, where just one mistake might trigger a red flag?

I guess this technique wouldn't applicable if you do have something to hide, though... Hmm!
Why We Need Scholarships for Women in Tech
"The Invention Secrecy Act of 1951 is a body of United States federal law designed to prevent disclosure of new inventions and technologies that, in the opinion of selected federal agencies, present a possible threat to the national security of the United States.

The U.S. government has long sought to control the release of new technologies that might threaten the national defense and economic stability of the country. During World War I, Congress authorized the United States Patent and Trademark Office (PTO) to classify certain defense-related patents. This initial effort lasted only for the duration of that war but was reimposed in October 1941 in anticipation of the U.S. entry into World War II. Patent secrecy orders were initially intended to remain effective for two years, beginning on July 1, 1940, but were later extended for the duration of the war. The Invention Secrecy Act of 1951 made such patent secrecy permanent, though the order to suppress any invention must be renewed each year (except during periods of declared war or national emergency).

The decision to classify new inventions under this act is made by "defense agencies" as defined by the President."

https://en.wikipedia.org/wiki/Invention_Secrecy_Act
> 1,100 megawatt hours of energy per year, enough electricity to power up to 150 homes.

That doesn't quite add up, that comes to only 837 watts (average use) per home. For perspective, a microwave oven uses 1500 watts while it's on. A rough estimate for a central AC system is 3500 watts.
http://www.senicaair.com/blog/how-many-watts-does-an-air-con...

Maybe they don't tend to have central AC in Portland, but electric heating can use even more.
Its that microbenchmarks are useless. If it was worth my time, I could come back and use any of the available python tools (cython, numba, etc.) to compile that function to native code from python syntax and achieve native speed. Or I could write a D implementation of {{some relatively complex matrix algorithm}} and compare it to numpy, showing it was slower.

You could then respond by saying that I wasn't using D optimally, and I'd agree.
You must not hang out with middle aged women much. My wife is on there all the time, planning my daughter's birthday party or getting ideas for her next craft project. My sister-in-law is the same.

I think someone said it elsewhere in the thread, they're replacing all those magazines suburban housewives used to read, and they can advertise more efficiently than those magazines because they have better data about you and can get between you and the transaction.
I like this line:

> Heroes only exist in comic books keep that in mind! There are only young heroes and dead heroes.
I could give two shits about the X1, but the new X260 can take 16GB of RAM and has an onboard ethernet port. Yes, please.
I couldn't have said it better myself.
Creating a "standard" text-representation UI widget and markup that works universally sounds like a much larger engineering effort compared to adding some code points to an existing standard, with a much larger room for errors and differences in the implementations. Perfect is the enemy of... something that (already) works :)
Does RISCV also specify privileged instructions? Or only the instructions an application would use?
There are fun patents there from all kinds of areas -- antenna design, database search, sorting, splitting data out of an optical fiber but also ... child car seat ( http://www.google.com/patents/US5224756 ) and game board design? Was NSA concerned about child safety. Are the workers that bored there they design child seats and game boards... so many questions. Also rifle holding tool: http://www.google.com/patents/USD681766 -- who are they shooting at?

Also wondering how these contradict with compartmentalization. Is there one department in charge of monitoring public patents and then notifyng USPTO? I would imagine there is a designated person from each department in charge perhaps. What if a system is part of a top secret program? Can't imagine anything patent related conflicting or allowed to jeopardize that.

Then can you troll the NSA by filling ambiguous or broad patents in certain areas to try to see if they'll think you've matched one of their patents and then publish any of their patents?
19 truths about launching a startup
Access Path Selection in a Relational Database Management System
Another here as well...I was excited up until I saw it wasn't self hosted, I had wrongly assumed it was aimed at running a personal/internal web server/site.
I released a short book on unit test. I am focusing it towards embedded software, and try to be agnostic to any particular unit testing tool.

I started it about 6 months ago on Leanpub and iterated it openly. Interesting journey so far.

https://leanpub.com/successfulunittest/
'It is quite clear to me that the parent's intention was to challenge the ritualistic "Why not MIT/BSD?" type of argument.'

It seems plenty possible, hence my explicit note that I was assuming otherwise. It doesn't seem clear - I've encountered people asking that question honestly and I tried to give an honest answer. To the degree that I'm a partisan in this discussion I am pro-GPL, but I think it's worth acknowledging the legitimate points raised by reasonable people on the other side.
Hey, where do I find the two PHP files for uploading to my server? Can't seem to find it on your site...
Also, this callous attitude will run afoul of labour protection laws in most civilized countries that aren't the US.
Probably recruitment. It makes a lot more sense when viewed from the perspective of a researcher who's considering whether to join the NSA.

None of us want patents, and the whole system is absurd. But at one time, it was considered prestigious to be named on a patent. And prestige is a powerful force. Part of the burden of working at a secret agency is that your work is secret.

E.g.
This employee will be able to take credit for this work after they leave: http://patft.uspto.gov/netacgi/nph-Parser?Sect1=PTO2&Sect2=H...

(Better not try to convert any programs that use loops into a program without loops.)
My first choice was Clojure, but eventually went down the JavaScript way. If there are more supporters for a lisp like language I will add support for it in the future.
Leaders are humans, not god. They have their weaknesses. When we want to ask for something special from the great leaders, we need to tolerate their special tempers. They can change the world because they have an unique way of thinking that we cannot understand.

Of course, being a jerk does not make you a good leader.
Ask HN: How does turning off my ad blocker help?
Websites often say things to the effect of “our site looks better with ads, turn your blocker off, you monster” and “please help feed our starving families by not blocking our ads.”

To me, this sounds as if a TV show or station would be asking people not to mute the commercials.

How does me not blocking ads help the “good guy?” Is it just the fact that I could click on an ad, even though I don’t intend to?
I ate the beating heart of a snake in Vietnam. What I did was wrong
3 Differences Between Fear and Phobia
TL;DR summary:

1) tell anecdotal story about a somewhat-misinformed (or even a bit nutty) advocate of some element of cleaner eating;

2) ridicule that advocate;

3) repeat until word quota of article is filled.

The tone is utterly dismissive of those who face proven adverse reactions to generally-accepted Western foodstuffs (be it insulin sensitivity, Crohn's disease, diverticulitis, allergies), lumping everyone who bothers to look carefully at ingredients and processes into one common nutjob wastebin. Sure, many claimed "gluten insensitives" are self-misdiagnosing, but even then, whom exactly are they harming?

We should rejoice in modern requirements for detailed labeling of manufactured food items in terms of ingredients, nutritional values, calorie counts, etc. and encourage people to learn, and care, about what they are eating.

Despite the authors' general sense of denial (and given their lack of scientific higher education), there are ingredients that should be avoided: artificial transfats, mechanically separated "meats" (I think if everyone learned what that really is, they would make it a deal-breaker in shopping), HFCS, etc.
Everything That Rises – on Russian Cosmism
Don't forget that many ads / networks pay per impression not per click. You are blocking an impression, therefore 'depriving' the "good guy" site owner of income. (That's not judgement, just an answer to OP's question.)
You could try some of the challenges at hackerrank.com : https://www.hackerrank.com/domains/ai/machine-learning (you may need to sign up)

Also there's kaggle - https://www.kaggle.com/
Dijkstra would agree that programming is hard, but not that those who program should suffer. Quite the contrary, I'd like to add, as he would often point out that programmers currently suffer because of their leaky abstractions and continuous bug fixing.

He wanted to bring programming back to mathematical fundamentals, so it is simple to reason about. It is my personal opinion that this ethos is the drive behind the renaissance of functional programming.

Programming is hard. I've been programming for 25 years now and if anything, it never gets easier. To find the right abstraction, so only the correct things become simple, is one of the hardest tasks.
I love my Nest Thermostat, and I know they've got "Protect" as the smoke/CO detector. I'd LOVE if Google would release an "Assist" product that was the Echo form factor powered by Google's agent engine, and I could mount it on the ceiling in each of my rooms similar to how smoke detectors are (hard wired to mains with battery backup).

Too much to hope for I suspect.
621+ Programming Resources
If the patents are secret, doesn't that kind of defeat the whole point of them being patents? The only real reason I can see for them to be patents at all is so that way if someone else invents the same thing and tries to patent it, then the NSA basically gets to swoop in and say "nope, that patent is ours, we get all the patent licensing fees instead of you", which seems, well, pointlessly greedy. If the NSA just wants to be able to claim later on that they invented it first, why go to the bother of actually creating a secret patent systems? Seems like all they really need is a safe store for notarized descriptions of inventions that the patent office agrees to accept as prior art (and the only reason to even care what the PTO thinks is so the NSA doesn't have to pay patent licensing fees).
"Hire Doers vs Tellers". I agree with the statement, but I disagree with the method.

You can separate doers from tellers by how they talk about the work and how they (non-verbally) react to certain questions. However, separating them by creating a totally artificial and unrealistic "doing" situation, be it via role playing or coding tests, will result in a lot of false negatives.
I can tell you're a voter.
> If I set my DHCP server's lease time as you suggest, I would often have to wait several seconds for my laptop to reacquire an address after waking up if there was any packet loss in the DHCP handshake...

Odd. My non-systemd machine gets an address long before I'm able to unlock the lock screen... and I'm a fast typer. It's entirely possible that my machine is an outlier, tho. :)

> ...and if I happened to get a different IP, my SSH sessions would die.

You don't have "static leases" for all of your known devices that live in a range that's not served to unknown devices?

Anyway. Here's hoping that I hear from pbhjpbhj. :)
Not a section for Swift :( One of the newest and popular languages.

Here are a few for swift:

Swift Tutorials: http://ios-blog.co.uk/tutorials/swift
Swift Monthly: http://swiftmonthly.com
Somebody has to make the pizza and latte runs.
TV commercials work differently to ads online and have different goals, mostly driven by the fact that it's vastly harder to measure the effectiveness of a TV ad. Coke, for example, largely advertises because they want brand awareness rather than an immediate action.

IIRC, YouTube ads pay out after the ad has rolled for 15 seconds. I'm under the impression they're some of the only ads that are largely based on impressions rather than a measurable action like a click or referral.

You might not intend to click on an ad, but people do things they don't intend all time. Some forms of online advertising are vastly more effective --- retargeting being a notable one --- and you may find yourself clicking on such an ad to go back to a merchant's website, for which the publisher is paid.
> I think Netflix also still uses caching boxes in a few locations, but they are being phased out.

Proof? I don't see any indication at https://openconnect.netflix.com/ that their appliance is being phased out.
> Creating a "standard" text-representation UI widget and markup that works universally sounds like a much larger engineering effort compared to adding some code points to an existing standard

However, it would arguably be far more useful.

> Perfect is the enemy of... something that (already) works :)

...for creating cute text messages and not much else.
As always, licensing issues. Hollywood (just like music artists on Spotify) want more than their content is worth.

If its not on Netflix, its on your preferred torrent site.
> Also, this callous attitude will run afoul of labour protection laws in most civilized countries that aren't the US.

I can only speak for Germany, but here it's normal to have a trial period ("Probezeit") for jobs, it's specifically designed for employers and employees to find out if they can work together. Once that trial period (which can last for months) is over, there are additional protections for the employee, but you can still fire someone, it just costs more. It's not a bad deal (and I say this as someone who once had to fire an employee for what I would call malicious incompetence: we still had to pay severance, but after that both parties went on their merry way).
Some of us like to read those ancient documents online in the original form, not in the multiple translations of it, some of them not 100% like the original meaning.

Our culture goes all the way back to the first days stories were told around fire in caves, in cold winter nights, before writing was a thing.

Everyone should strive to preserve mankind's culture.
Why I Publish Content on My Website First
you're right. on reddit they would have answered his question instead of giving a snarky response like yours.
Well according to Wikipedia (https://en.wikipedia.org/wiki/World_human_population), world population in 1800 was estimated at one billion. It was estimated at 400m in 1000 AD.

So yeah, not sure where that 100 million comes from.
> I talk with a lot of programmers that think that abstracting everything is super important.

OOP languages basically back you into this corner once a problem becomes complex enough. As an example, DI is supposed to decrease the coupling so that tests can actually test units and not wind up performing integration testing. Low coupling results in a more agile codebase, but does not intrinsically lead to more understandable code.

What goes wrong is people think that you need to "DI all the things." Like any tool it can be used incorrectly and, from what I have seen, violating the single responsibility principle [when using DI] is what most often leads to unwieldy code. "Got a model class/object? That needs an interface too."

Abstraction is not to blame, it is the incorrect usage of abstraction that is to blame; which is sadly what you are taught in school and college. Spending even one day learning a functional language is enough to drastically improve your understanding of how abstraction is supposed to work in OOP languages.

> I mean like even if you had the source code it's so convoluted you could never make any use of it.

Some IDEs can help with this (VS2015 just added "go to implementation" for C# interfaces), as does the most reliable way to understand code: stepping through it line-by-line (or at least method-by-method) in a debugger - once you have a run-time itable the callee is no longer ambiguous.

TLDR; it's a necessary evil for OOP languages but is often taken too far due to bad theory that is taught to us all.
Anecdotal counterpoint: I develop java and python at work, C# and C++ at home, use / have used Eclipse, IntelliJ, ST + plugins, vim, Visual Studio Code, and Visual Studio for development. Of all of the above, I've found that Visual Studio is by far the most pleasant to work in environment (for C# and C++), hands down.
There's a setup script that will get RetroPie installed in Raspbian, so that you could start emulationstation (the game selection GUI) manually. The RetroPie SD image has a few extra features configured (http://blog.petrockblock.com/retropie/#retroimage) that I don't think you get when using the script.
I'm glad to know there are folks of the same mind. It exposes saola.create and saola.append functions to create and append to a file.
Right Steps to Market Your Pharmacy
Having an online presence is a must nowadays for business owners. Given the sheer number of people who use the internet the online site is definitely a great platform to attract customers.

http://ntheirface.com/
+ is a terrible operator for formating.

You got:

price = 18.8
date = datetime.datetime.now()

Now you want to save in a file:

"It's 18.80 and we are the 01/04/2016"

With +:

num, dec = str(price).split('.')
msg = ("It's "+ num + "." + dec.ljust(2, '0') +
" and we are the " + date.strftime("%m/%d/%Y") + "\n")
f.write(msg)

It is so long and ugly we have to break it on several lines to respect PEP8.

And it's a pain to write, or even worst, to read.

With print():

num, dec = str(price).split('.')
print("It's", num, ".", dec.ljust(2, '0'),
" and we are the ", date.strftime("%m/%d/%Y")), file=f)

A tiny bit better since we don't have to use that many concatenation tricks.

If we didn't have to format the float, print() would have converted it to string
for us which is nice (with + you have to call str() all the time).

With "%":

f.write("It's %.2f and we are the %s\n" % (price, date.strftime("%m/%d/%Y")))

Way better, but still hard to read.

With format():

f.write("It's {:.2f} and we are the {:%m/%d/%Y}\n".format(price, date))

Now we are getting sometwhere...

With fstrings:

f.write("It's {price:.2f} and we are the {date:%m/%d/%Y}\n")

fstrings have everything:

- easier / faster to type than any other versions;
- easier to read than any other versions;
- as expressive as any other versions.

It's reduce work by making you think less, type faster, read faster (for you and your colleague) and it's easier to spot bugs.

The only place where you don't want fstring are for l10n.
But 72 percent of statistics are made up on the spot.
Keep in mind that what you describe does not describe the effect San Francisco's Rent Stabilization ordinances have on the SF housing market. I've written about this at length, many times, but the summary of the most salient points:

* RS only applies to buildings built before ~1979.

* RS does not apply to buildings built after that date.

* RS only controls rent while one or more of the original tenants on the rent-rate-establishing lease occupy a controlled unit. Once zero of those tenants occupy that unit, rent can be set to any value.

* RS permits all sorts of passthroughs direct to the tenants in the building... city bonds, water bonds, capital improvements, maintenance cost increases, increases in the cost to service the landlord's debt...

The SF rent board's site has more details. [0] So does my comment history.

[0] http://sfrb.org/
Wait, so if I take my ugly iterative code and convert it to a pretty recursive one, I'm infringing on an NSA patent? -.-
The rift between Python 3 and Python 2 seems to be a fallout of the one-true-way philosophy. In fact, it almost stands the reason that Python 3.6 ought to be Python 4 if one-true-way needs to be upheld.

If Python 3.6 is going to introduce multiple ways to do the same thing, there is no good reason to not merge Python 2 and 3 together and have both set of behavior co-exist with each other (__future__ or __past__).

In one shot, you break the Berlin wall of Python.
I very clearly see this with 2 nephews of mine, both 14. One is in a highly competitive school district in the bay area, the other in a relaxed Texan school. One has no free time and is pushed into this or that class or activity all the time. The other has quite a bit of free time. The second nephew is very creative, street smart and communicative. He also managed to teach himself how to program and make games. The first nephew simply lacks that creativity.
I read that as "People did't care, as you can see by their choices"
Not a lot of verification that I could find.

The tests are not extensive. Just hand written assembly code testing one thing at a time AFAIK. As someone who used to lead ASIC verification projects for a living, I expected a lot more at a minimum.

I don't know what the Chisel stuff checks. Chisel doesn't do anything at the simulation stage I believe.

I guess if you are just playing around with CPU designs, you can use this stuff.

I would never sign off on going to tape out with just this stuff though. Apparently they've taped out over 11 times though!

You want to run the RTL and compare against the ISA simulator? I think you're on your own...
Explain how.
You're not running a microwave all day long, and you don't run much at all at night.

I'm not sure what usage is like in Portland, but where I'm from (outside the USA, but still first world) I'm probably running about 200 W at night, a couple of energy efficient bulbs, and standby power.

During the day, when nobody is home, I probably use about the same. So that leaves about 1800 W for 8 hours a day that you're at home.

Judging roughly by what my power bill is, divided by the hours in the month, I use about that amount of power, at least in summer. This is for an uninsulated house in a temperate climate with 4 students in it.

The power consumption in winter is significantly higher, which is in part due to the fact that 70 year old houses with no insulation at all leak heat like a sieve, and due to regulations, we can only use electric heating.

Central AC pulls 3.5 kW when it's running, but it doesn't run all day long, it only runs for maybe 10 minutes per hour or so, if you have a well insulated house.
In Brazil we have the exact opposite "loud" culture. It seems like people try to make as much noise as they can in an effort to get attention. Really annoying.

Did this bus story happen in Japan or Finland?