skysight-inc/HackerNews huggingface dataset:
Question for someone experienced with Racket: does Racket offer immutable/persistent data structures?
I'd love to tell you but I'm working on it already.
Turkish minister claims “Holy wars will soon begin in Europe”
More jobless in America? [citation needed]
Can't reply due to depth by sibling comment is correct; Ryzen even needs 4.10 to work right (e.g. http://www.pcworld.com/article/3176323/linux/kernel-410-give... )

See also: UEFI, >4GB of RAM, booting GPT disks, booting from PCI-E devices (or heck, even USB or CD, though that's been supported for a while now, but boot floppies used to be the norm), AHCI (old SATA stuff would emulate IDE). This is nothing new.
Mobile tech platform for South African farmers
The 30 Second Habit That Can Have a Big Impact on Your Life
This seems like they have enormous pressure from on high to make sure Windows 7 doesn't become another XP that they have to support for 15 years By Any Means Necessary.

If circumstances were different, I might even be applauding them for taking strong corrective actions against another XP doomsday scenario, or for moving to rolling release, both of which seem like great plans.

The reason I'm not is that Windows 10 feels unfinished and buggy to me. I gave it more than a chance, I used it as my primary OS for a year and change - but even after all that time, I still felt like I was fighting the OS far too frequently, and when my laptop had to go out for service, I threw Windows 7 on the older backup laptop.

So while I advise people who ask me to use Windows 10 if they can tolerate it, I can't say that I'm supportive of their efforts to forcibly move everyone onto their latest platform.

(I'm extremely familiar with running Linux, before anyone jumps in to recommend it - the Windows installs are for running Windows-native software that doesn't run well under Linux and for doing things like lots of RDPing that are extremely cumbersome inside Linux. All machines in this story dual-boot.)
Top Medical Billing Software for medical, lab and clinics
If they know the vendor won't write them, it could be argued that they're just stopping the users from making a mistake.
> Use only standard features. Do not assume the platform is Linux

I'll decide what platform I am targeting, thank you. I don't feel any obligation to support obscure OSes if I am just targeting linux. I might as well use useful linux-specific and GNU userland features, they are helpful.
I'm sure you've already seen it, but using https://www.winprivacy.de/english-home/ helps alleviate some of these issues. I completely agree with you though, the whole thing feels dirty.
I think it most real code you're better off without the Optional monad.

A variable being null is not a condition you can always a have a name for. You want to use it sometimes, but not built your entire vocabulary around it.

You also don't usually want to pass wrapped nulls around, you just want nulls available in local state.
Cool idea, I think you can also install it in cabs and public transport. People spend more time in traveling in Bengaluru.

All the best.
I get into the car, surf the web and never talk to the driver. Occasionally if driver starts a discussion I give short answers so it stops quickly. My rating is fine and I enjoy no human interaction
What is insane? Windows 7 is 8 years old. Windows 8 is 5 years old. Microsoft is still providing security fixes for what are essentially now legacy platforms.

There has to be a cost in supporting these new processors. Windows runs on almost anything and the cost of testing updates across various platforms has got to be huge.

I also think it is a great way to reduce fragmentation. Windows 7 is supported till 2020. However you do not want to just cut people off. If you can reduce / stop new instalations before then it will greatly reduce the number of unsupported machines when Microsoft cut the cord.
*possibility (dang typos)
You're stating that they're not guilty until caught in the act.

What percentage of the population do you think scrutinizes every credit card statement line-by-line? Many people would not notice an unauthorized charge on their card. It's merely a matter of scale: some people will notice a single unauthorized charge for $5, while others won't even notice $500. Credit card fraud is rampant, and any company that willingly allows its employees to get away with it should be shut down. My experience shows that my city's taxi companies consider credit card fraud as something that doesn't even register on their radar. Drivers that operate in this manner should be criminally charged. It's not just fraud to the taxi company - it is a criminal act of theft for the customers.
Rolling release is sure the right way to go as you can't support all versions ever released forever, but the problem is, that MS doesn't provide viable alternative anymore after Windows 7. I paid for Windows 7 as the OS I own, so why should I accept some adware/spyware ridden bullshit known as Windows 10 instead?
Why does he even want to hang out with rappers? The majority of them sell delusion.
>I don't think you understand. At a minimum, you would need parsenumi, parsenuml, parsenumll, parsenumimax, parsenumu, parsenumul, parsenumull, parsenumumax, parsenumi8, parsenumi16, parsenumi32, parsenumi64, parsenumu8, parsenumu16, parsenumu32, parsenumu64, parsenumf, and parsenumd.

Fair. I still don't really see the value in this, though. The only real gain is from doing the range check, and that's niche enough that I'd just write a function for the particular project that demands it, and I'd only have to write one function because there'd likely only be one integer type it's relevant to.

>This is C, not perl. Features don't become "outdated" in a mere 10 years. And if there is a new standard library function which is useful here... well, (a) I wouldn't want to use it for at least 20 years

Fair enough.

>I'd probably be one of the people writing said standard library function

I hope not!
But apparently the CPU and chipset work well enough to run enough of the operating system that windows update can display a GUI error message with error code "Code 80240037", which is what the OP link to.

Who would design a chipset that is backwards compatible enough to boot windows and all its services in GUI mode, but not backwards compatible enough to run windows update?

If you run an old Linux or bsd kernel on these chips, do you get to login to X only to find a kernel error when you run apt-get update?
Optimize images for the web (for starters)
> I check the score and if they are below a 4.6 I text and inform them that THEY need to cancel and request another driver.

I'm amazed that doesn't backfire. Skeptical, in fact.
Do you have more advice you would give beginners to optimize their images for the web?
Is the table itself cached anywhere?
Adding a constant diagonal matrix indeed would not affect the equilibrium distribution. Mathematically, if the original transition matrix is A and you add a multiple of the identity matrix to it, then after normalisation by row sums, the new transition matrix becomes tA+(1-t)I for some 0<=t<=1. Since the Perron vector x of A corresponds to the eigenvalue 1, it must also be an eigenvector of tA+(1-t)I, because (tA+(1-t)I)x=tAx+(1-t)x=tx+(1-t)x=x. Hence the stationary distribution remains unchanged.

But as you said, the stationary distribution does change if the missing diagonal is not constant. And there is no reason to believe it is constant in the first place. In the end, what the author measures is still different from what he thinks he measures.
Sort by %: https://en.wikipedia.org/wiki/List_of_countries_by_unemploym... given there are several developed countries with worse conditions
They are. Mainly from Java, Python and PHP.

You may be reading the axes the wrong way around... look down the node column rather than the node row.
Pretty much just people using the term "brick" to mean anything from a crashing process, to something fixed by a re-install.

Example: "I just loaded a buggy web-page and bricked my Chrome. LOL!"

You know. How the term "hacking" has come to mean just about anything these days. There are no PC-bricks, despite people trying to claim the contrary.
The chipset can also contain bugs which software can't work around. See: https://en.wikipedia.org/wiki/Sandy_Bridge#Cougar_Point_chip... as the most recent example I can think of.
this is like saying the engineering sample for a brand new cpu is never going to replace normal cpus because it cost $1bn
You make a great point and I should have done a better job defending my vilification of the ICE agents. They violated his rights by even entering his home without a warrant. Not only that but as a student and being married to a citizen, he had rights that were violated. I don't think the ICE agents were merely "following orders" and do deserve some of the blame for the situation. I don't have great answers to your questions but I do think it starts by adhering to our constitution in situations like this (namely the 4th, 5th, and 14th amendments which apply to non-citizens) and then we can go from there.
A few people have been in solitary for more than 40 years.

http://www.nytimes.com/2013/10/05/us/herman-wallace-held-41-...

https://www.nytimes.com/2016/02/21/us/for-45-years-in-prison...
What exactly do you want in this new video service that YouTube doesn't have today?
> More to the point, why do they need to be maintainable? When was the last time you maintained the strtof function in your C library?

A few years ago. https://sourceware.org/bugzilla/show_bug.cgi?id=15744

Acting like you can get anything done right in C simply because it's self-contained is proven wrong every day. It's good practice, yes, but doesn't magically (we like this word now) make us immune to error. Everything needs to be maintainable, even if it is proven to be correct, for the simple reason that we can't just replace broken pieces of code with the same simplicity we can replace a broken fridge.

Also, if there's anything we know about code, is that we are constantly trying to invent new ways to expose it to a new interface - thereby breaking it.
I've lived in Austria for (almost) 8 years and Germany for a bit over 3 - I really like both for many reasons and neither could really be accused of being a developing nation.

Wheelchair accessibility is simply not a thing here, not even in Vienna and Berlin (let alone small towns or rural areas). E.g. you will often find the bathrooms in restaurants or cafes to not be accessible without going up or down a bunch of stairs.

Another example: get out of the big cities (and sometimes even just get out of the central areas of the big city!) and try to get vegetarian or vegan food in a restaurant. Sometimes the waiters won't even know what that means (when speaking in German, so not due to a language issue).
>Pretty sweet deal if your stock price doesn't go up and you only have to pay minimal interest.

So Tesla is shorting TSLA?
And those lean bootstrappers will take on the next round of VC financing [just because they can], starting the cycle over again!
True. He did live in social isolation though. And the theft fits with the cat burgler/jewel thief stories, perennially popular here on "hacker" news. Where "hacker" doesn't mean hacking into systems, but it does mean not doing things in the conventional manner.

In a previous story on him, there was some nice phrasing on his freedom, moon and season:

> Chris became surprisingly introspective. "I did examine myself," he said. "Solitude did increase my perception. But here’s the tricky thing—when I applied my increased perception to myself, I lost my identity. With no audience, no one to perform for, I was just there. There was no need to define myself; I became irrelevant. The moon was the minute hand, the seasons the hour hand. I didn’t even have a name. I never felt lonely. To put it romantically: I was completely free." http://www.gq.com/story/the-last-true-hermit?printable=true
I very much doubt they received an adequate explanation of the risks involved.

Not that any proper risk assessment existed in the first place.
Universal healthcare and other welfare reforms in most of the world came as a direct response to the total failure of charitable systems.

You are right: It's not proof that it can't work. However, despite extensive attempts, we also have no proof that it works, and plenty of proof that government welfare systems work far better than the charitable solutions that preceded them.
But it has DX12 which is what your games crave. Also, Linux subsystem is neat and you can get powershell (great for disabling all the spyware they include which doesn't have any GUI controls).
Made me think about the line in Full Metal Jacket: "C is my programming language. There are many like it but this one is mine." https://www.youtube.com/watch?v=nkGIxGdZoYY
> automatically downloading of Windows 10 by Microsoft and bricking devices

Downvote for falsely claiming PCs can be bricked[1], even more so by simply using Window-update, which at worst might require a reinstall if the install is botched.

[1] The definition of a brick is that something is now completely non-functional, beyond repair and thus "as useful as a brick". Something which can be recovered is by definition never a brick.
What would be some good books on colour theory you'd recommend?
The Future of Front-End Development: A Comparison [video]
why is there no brand of tofu marinated with actual chicken. there's no inbetween eating meat and not eating, there should be a "% meat" brand.
Scale only helps if you have high fixed costs, the ones you mentioned, and the marginal revenue - marginal costs is large. But if your marginal profit is small, scale doesn't really help.

People like to compare Uber to Amazon and how long it took Amazon to become profitable. The differences are:

That Amazon was putting money into expansion and could turn a profit anytime it needed to.

AWS is their most profitable division - a category with high fixed costs and high marginal profit.

They are already using a lot of automation for their warehouses. It will be decades before driverless cars are ubiquitous.
> GNU is a blight on this Earth, do not let it infect your code.

Can someone explain this sentiment to me? I know about licensing and philosophical criticisms, but are there any _technical_ faults?
DFBSD has substantial kernel differences from FreeBSD (IIRC the original reason for the fork was that the author disagreed about how to implement multiprocessor scheduling and went off to do it his way), such that the diff between the FBSD tree and the DFBSD tree would be enormous at this point. Drivers sometimes make their way between the two, I believe, but it isn't just a copy-paste operation.

Ubuntu and Debian's kernels, on the other hand, are kept as itemized patchsets against the same kernel, and it would be hard (but probably not impossible) to find drivers that build+work on a Debian kernel and break on an Ubuntu kernel of similar age.
EDGE does not.
I really don't understand the typical remote workers. Its like a normal job, often with the same attendance time completely ignoring the different timezones, plus the fact that you spend your free time changing places and/or getting to know a place other than relaxing.

Disclaimer: I met quite a few of those, and most did not seem particular happy with having fixed working hours.
I'm in the same boat - downgraded to 7 from 10 twice now, because 10 continues to be one of the most buggy MS systems I have used so far, with overall lack of polish in pretty much every corner, with UI taking top prize for how illogical it is(Metro design everywhere, yay!) - if you can't tell how something works by looking at it for 5 seconds, it's bad design. 7 is still the most stable, bug-free and clearly designed OS at the moment, with MacOS close second(although it's slipping away steadily with every iteration).
> Yesterday I received a Gigabyte Brix i5 and wanted to run Windows 7. The process was painful.

Allow me to rephrase that: "Yesterday I received quite modern hardware and wanted to run Ubuntu 9.04. The process was painful."

Would you sympathize with anyone who made such a claim? I certainly wouldn't. Does anyone even remember its "cute" codename? Nope. It's that old.

And Windows 7 is as old as Ubuntu 9.04. It's about as obsolete as it gets. It's time to let it go, man.
Are your analytics text-based or graphical? I don't see any screenshots.

Also (and I can't stress this enough), definitely get an Android app out as soon as you can. It's shocking how few good analytics apps there are available on Google Play.

Make a good Android app and you'll be printing money.

I'm currently using StatCounter and their service is good, as is their app, but there needs to be more choice out there.

Good luck to you!
When automation goes horribly wrong
i was going to post a comment along the lines of... and once again everyone has to have perfect colour vision....

what is it with these "experts" that think the way they see things is correct?

ever met someone with less than perfect vision... ever heard of someone with less than perfect vision?!?!
this is why you have high contrast modes on your operating system, and colour blind mode in some games (not enough of this)

ffs
Terraform 0.9 Released
> In retrospect I should have taken all the cash the bank wanted to throw at me and bought the whole house.

You made the correct decision with the information you had. In Ireland, people who made the opposite decision are still underwater after a decade. So it could easily have gone the other way.
I guess you never did any .NET development.

.NET 1.x introduced Managed C++.

.NET 2.0 replaced Managed C++ with C++/CLI due to feedback from C++ devs, regarding keywords and how GC types were declared. C++/CLI was submitted to ANSI C++ as standard proposal.

UWP introduced C++/CX, although it does compile to native code and interoperates with .NET Native instead.

Or Flash for that matter, which had a C++ compiler called FlasCC.
A 'batch' is how much of the data you put in memory at once while training the NN. To train even a small language model, you'll go through 1000s of batches, so the time difference is way bigger than it sounds. I agree a more practical example would have been nice -- maybe it'll come out in the paper.
Common for U.K.
I love my Linux :)
I spend 1/3 of the year in San Francisco and 2/3 in Turkey. Educated and lived in US for a long time previously.

I feel home at some aspects of each country: Respect for pedestrians (US), friendly warm helpful people (TR), diversity in food and people (US), a hometown where I'd love to live my last days on earth (TR), rich language (US), humble people (TR), startup and business culture and experienced people (US), paradise like vacations (TR), optimism and good luck surface area (US), family (TR).
> Microsoft is still providing security fixes for what are essentially now legacy platforms.

The article is about how they are explicitly not letting people download those security fixes.

> There has to be a cost in supporting these new processors.

To provide new support. There is no cost in letting the existing support that works just fine continue to run.
I think the author meant specifically GNU extensions to various POSIX functions, which can be a pain when trying to run code using them in non-GNU environment.
It can be one mov + cmp + je in assembly, but it's not always the case.

It's an instanceof check, if the class of the field is final (or can be proven to be effectively final by CHA) then it's a null check follow by a pointer check. Theoretically, the null check can proved to be unnecessary, be fused with another or be transformed to an implicitly nullcheck but in specific the case of an AtomicReferenceFieldUpdater, null is usually a valid value (by example, null is used as tombstone in many concurrent data structure implementations) so it's usually more than just a getClass() and a pointer check.
As a non American, for jobs where the service makes a significant difference, a service charge or tips seems reasonable.

I live in London. I generally pay the service charge. Once out of every hundred times I eat out, I ask them to remove the service charge as I spent ten minutes trying to get someone's attention to order, rather than talk to my dining companions.

Service doesn't make a huge different for transport though. It's either on time, clean, and takes proper route or not.
One of the reasons I love HN :)
I'll wade in a little.

> Don't use macros.

> Don't use the inline keyword

> Never put code into a header

I disagree with these. It's often critical to avoid a function call in hot paths, and if you don't use macros or inline you have to resort to copy/paste, which is error-prone and hampers maintainability.

It's also the case that C is a rather inflexible language. Macros can be extraordinarily helpful in reducing boilerplate: in unit testing, for example. I won't argue that macro definitions are the easiest things to read (usually they're OK but they can get pretty arcane), but I do think something that cuts a file down from 8,000 lines to 1,000 is at least worth considering.

Macros can also help you maintain type safety. Colin Perciva demonstrated this a little with his elasticarray, but khash is another example of using macros to dynamically create type safe data structures. It can also help the compiler optimize your code.

> Don't use fixed-size buffers

Everything is a fixed-size buffer until you change its size. If you malloc a buffer of 1024 bytes and read 1025 bytes of user input into it, you overflowed anyway. The principle ought to be "check your bounds", which applies whether your buffer is stack/heap.

> Do not use a typedef to hide a pointer or avoid writing “struct”.

I'm with you on pointer hiding (looking at you FreeType), but "struct" is just far too verbose. You don't accidentally pass things by value because the compiler will tell you you're passing the wrong type. You won't think it's actually a scalar because you have a grand total of 3 scalars in C (bool/int/float), and if you don't know the types you're working with in your functions you should probably look them up.

You probably don't think this is a big issue because you don't adhere to 80 columns in your code (I looked @ your GitHub briefly), but let me tell you you run out of space real quick, and "struct" is practically meaningless.

I found a good example:

static void set_background(struct wl_client *client, struct wl_resource *resource,
struct wl_resource *_output, struct wl_resource *surface) {

vs.

static void set_background(wl_client *client, wl_resource *resource,
wl_resource *_output,
wl_resource *surface) {

These are obviously not ints, it's a lot easier to read, and it fits in terminals. "struct" is honestly just noise.

> GNU is a blight on this Earth

Come on now. I hate GNU indentation as much as any reasonable person, but I don't think we need to go this far.

---

Unrelated: aerc looks great! I've been thinking about moving off gmail and moving more of my life back into the terminal (I used to be all mutt and IRC and now I'm gmail and hangouts :/ ), and I really like aerc's well-organized code. Nice work.
As often as it happens with HDD, I think.

Anyway, with my SSD:

I unzipped a 300 MB Raspbian lite zip into a 1.3 GB image yesterday and extracted parts from a 8 GB video with mmpeg last weekend. I expect all of them to be sequential given enough free space on the SDD (same for HDDs.)

I also work with docker and vagrant and building those images at half speed can't be good.
Kinda like the Java VM, 20 years ago :-)
"Do not assume" doesn't really mean or imply "do not target", so stop being defensive. It's good advice.
Fractional reserve banking doesn't really exist any more in the developed world. Banks lend against their capital, not their reserves [1].

[1] http://www.bankofengland.co.uk/publications/Documents/quarte...
Tons in San Jose and San Francisco and Santa Cruz as well.