skysight-inc/HackerNews huggingface dataset:
Why does the author of D want to "fix" C by changing it into D? Concentrate on that D language.
My experience is kind of old roughly NetBSD 2. Unplugging your PS2 Keyboard halted the machine.

On the server side we had it on some old machine with a weird architecture just as a jump host.

The great thing is pkgsrc for package management. I believe you can use it on OS X by now, which was done by the people who make SmartOS.
Rust requires you to to explicitly mark individual blocks of code as unsafe, and you can only do unsafe operations inside of them.
On the surface, it does seem to somewhat prevent the proliferation of bullshit jobs as described by David Graeber. I don't have an updated figure on the number of employees at Valve, but it's usually in the 3 figure range.
XOR has 2 inputs and 1 output so cannot be reversible. CNOT is the closest reversible gate
Fascinating how the analysis gets wrong what becomes possible or doesn't (online shopping,...), but hits the nail on the head concerning the psychological and social aspects.

> The Usenet, a worldwide bulletin board, allows anyone to post messages across the nation. Your word gets out, leapfrogging editors and publishers. Every voice can be heard cheaply and instantly. The result? Every voice is heard. The cacophony more closely resembles citizens band radio, complete with handles, harrassment, and anonymous threats. When most everyone shouts, few listen.

> Then there's cyberbusiness. We're promised instant catalog shopping—just point and click for great deals. We'll order airline tickets over the network, make restaurant reservations and negotiate sales contracts. Stores will become obsolete. So how come my local mall does more business in an afternoon than the entire Internet handles in a month?

> While the Internet beckons brightly, seductively flashing an icon of knowledge-as-power, this nonplace lures us to surrender our time on earth. A poor substitute it is, this virtual reality where frustration is legion and where—in the holy names of Education and Progress—important aspects of human interactions are relentlessly devalued.
90% sounds great!

But---I don't know how anyone could study the drug properly.

If they used identical twins in their studies; I would be thoroughly impressed.
Blockchain and cryptocurrency comes to mind - especially given HN’s frequent dismissals and distaste of the two.
It seems he was close in some aspects but very far off in others.
Actually you do, depending on the location (and thus local laws). You definitely don't get an employment contract, and that means that e.g. in the whole EU, you need a business license (self employment or a company); some EU countries allow that from 16 and some (most) from 18; it's illegal to make an invoice if you don't have a license, and Upwork requires you to do so.

You're right that I could've worded that better, that's what I meant with the last part of my comment.
Hell, you don't even have to go to slicing for language-supported multidimensional arrays to make sense. Simply being able to index with a[i][j] is so much nicer than the manual flat addressing a[i*n+j] that you end up with in C. (a[i][j] does work in C, but only if the array dimensions are constants.)
That sounds like a fairly bad idea but both Java and C# let you access the stack and mess with variables from previous frames if you really want to. You can't access stack memory outside the heap hut I can't think of a use-case
This is also the method used for tattoo removal. Normally the ink particles (or most of them) are too large to be removed by the body. Tattoo removal lasers simply break down the ink pigments into smaller particles, which the body can remove.
Apple customers in Singapore hit by fraudulent iTunes charges
http://www.evanmiller.org/how-not-to-run-an-ab-test.html
حولى طفلك لشخص اجتماعى فى 6 خطوات
(2009)

See also discussion from 9 years ago: https://news.ycombinator.com/item?id=1014533 (47 comments)
There is some interesting work done with federated learning
https://ai.googleblog.com/2017/04/federated-learning-collabo...
Do you have a solution? I can’t thjnk of one. not like you can force fb to pay less.
Hey, I just updated the article with more content in the ending part. Can you take a look at tell me more? Thanks for the feedback! Really appreciate it!
How do recent studies compare to computer use in the era of the CRT screen?
Uh oh. Get the popcorn. The lumpers and the splitters are at it again.
McMansions are nothing but large track houses. The small house examples here are the track house. There are way bigger problems than articulated, like ecology, economics, egonomics, and more, but calling these houses architectural is pretending like architecture is actually a factor, when in reality, for McMansions and track houses alike, that's just not the case: it's all toothpicks and gypsum, stamped out of a design factory. There is no "architecture", because the buyers don't know shit, can't afford real design, and probably care less about the style than they do the suburb, neighborhood, policing, schools, etc.

One thing this article does give away tho, is how much these houses are showcased exactly like hamburgers in commercials vis a vis what you get at the fast food chain:
everything in the commercial is pushed forward and jutting out the front: windows, awnings, decks, etc. That's why they call them McMansions.
It’s possible! Nobody has ever proposed it...
Don’t bart janitors make $200k?
(2016)

See also previous discussion from 2 years ago: https://news.ycombinator.com/item?id=12286724 (519 comments)
OpenBSD replaced strcat by strlcat, strcpy by strlcpy 20 years ago, in OpenBSD 2.4.

They are implemented in the C libraries for OpenBSD, FreeBSD, NetBSD, Solaris, OS X, and QNX.

They have not been included in the GNU C library used by Linux.
Twitch streamer secretly films passengers while driving for Uber and Lyft
Conflating pointers and arrays seem pretty minor and not the cause for many bugs.

The main source of bugs in C to me would be pointer arithmetics.
>With Bayesian experiment design you can stop your experiment at any time and make perfectly valid inferences. Given the real-time nature of web experiments, Bayesian design seems like the way forward.

Completely agree with Evan Miller here, thank you for sharing the link.
Netflix Takes a Crown from HBO
True, you can even macro it for more convenience. I'm more worried about things where some obscure edge case causes the compiler to optimise away something important because it's deemed to be UB.
Fixing Chrome's Invisable Checkboxes on MacOS X Mojave Beta
The problem with second-tier cities, as I see them, is that you have to move every time you get a new job, if you are maximizing your income/career. (I mean, not doing that is totally valid, but it's important to factor in the "I took a worse job because it was closer to the house that it would be expensive for me to abandon" thing into your expense/utility calculations. keep in mind that reduced job choice can mean increased stress and unpleasantness as much or more than it can mean simply getting less money.)

I think if you work in tech, silicon valley is pretty unique in that there are so many really desirable employers within a short distance. I'd be comfortable buying a house here even if it meant that it makes it really expensive if I want a job more than 15 miles out.
- You must choose the sample size BEFORE
- You must choose the significance level BEFORE (0.05 is not always the best choice)
Reading this gives me hope. It also makes me angry. That he had to fight at all. That for every Isaac there are many unknown innocent that were wrongfully convicted.
Diy Gift card idea
That was true in the past, but Pascal has had dynamic arrays for over twenty years. The current versions of Free Pascal and Delphi are nice to use.
> There are certainly not 3 strlen calls underneath a strcpy() plus a strcat() call.

No, but strcpy does need to check each char for NUL byte as it copies the string. And strcat will need to redo same check on the original strcpy'ied string plus the new one.

So "abc" length is effectively checked twice and "1234" once.

So there's some truth to the matter, even though they're not "true" strlen calls.
How much of the book requires Erlang or focuses on that language's features, and how much can be generalized to other languages?
Too much hassle.
Why would you want an iOS app for linkedin? Unless you are a recruiter it's just not a daily use kind of thing.

I don't really understand why most people use apps for things that are essentially websites that don't have unusual latency requirements. I mean, sure, maps and some of the other daily use things, those extra microseconds matter. I want to do more of it locally. But things like linkedin and facebook? the ios browser works fine for that (well, I haven't figured out how to make facebook messages work through the mobile website... but there's no way I'm installing that app)
I already tried that, but was disappointed that the performance gain was only 1%, which is why I didn't include the optimization in the post.
That preinstallation is key was widely understood, which is why Microsoft structured their agreements with OEMs to make selling machines with non-Microsoft operating systems very difficult.
Mitigate or incorporate?

- "We seem to have a problem with people seeking power and privilege for their own gain."
- "To prevent it, we should let some people exercise power over others in high-status positions."
What's the mistake? You pass a pointer and the number of elements, it's just the C way. At any point in time you have to pay attention. What is the proposal here? Make all arrays structures? Or add some weird un-C syntactic sugar?
> track houses...track houses... track houses

“tract houses” is the phrase you are looking for.
The main thing that he's right about is that it's a mess. There's so much noice and little authority.

When I was a kid in the 90s news and information was curated. If you read an opinion in the paper it was some guy who'd been writing for a long time, who'd done the background reading, and who normally presented things in a balanced way, whatever his leaning was. Nowadays you can find just about any extreme view, badly written in an aggressive or sarcastic tone, and ignorant of the history of the topic. It's not necessarily good to always have the sober and historically informed opinion, but it sure would be good to have it most of the time.

Not sure if he mentioned this, but it's also gotten a lot easier to find like minded uninformed people. I'm still undecided about whether flat earthers are all kidding, but if they aren't you can see how hard it's going to be to climb out of that intellectual hole. There's now conferences and loads of websites about the Bedford Level experiment, and all sorts of other flat earth tropes.
This article gives two examples where UB arguably helps you, and in each case the article itself mentions a cleaner and better way of doing it.

Magic behavior of "int" (but not "unsigned int") --> just use a type that's the correct size and better conveys your intention, like "size_t".

(And that one doesn't make your code "many times faster", in the example given it saves a single instruction.)

Type-based assumptions about aliasing (with a special case for char*) --> be explicit about your intention with the "restrict" keyword.
strcpy(s1,s2) does a strlen on s2.

strcat(s1,s2) does a strlen on s1 and s2.

Now, two of the strlen's can be replaced with byte-by-byte copies checking for 0 for each, but that tends to lose the efficiency that a memcpy would bring, so you're pretty much suffering from it anyway.

BTW, here's the strcat I wrote eons ago:

https://github.com/DigitalMars/dmc/blob/master/src/CORE32/ST...

It does do two strlen's (the repne scasb instructions). With the improvements in CPUs since there are probably better ways to write it, but that was pretty good for its day.

Here's strcpy:

https://github.com/DigitalMars/dmc/blob/master/src/CORE32/ST...

which does the test-every-byte method. I think Steve Russell wrote it, but I'm not sure.

If there's anything efficiently implemented in a C compiler, it's memcpy. Being able to implement string processing in terms of memcpy leverages that very nicely. strcat() and strcpy() don't leverage it.

Which do you think is faster (s2 is 1024 bytes long)?

strcpy(s1, s2);
memcpy(s1, s2, 1024);

I've dramatically speeded up a lot of my code and other peoples' by replacing the strxxx functions with memcpy. It's low hanging fruit and one of the first things I look for.
Details of “Superfast Lame”, a multi-threaded mp3 encoder
> there are circumstances where you need to be close to the metal and carefully resort to more complicated variations of such things. That's what C is fairly uniquely appropriate for.

You can still do that in a C dialect with fat pointers. You can have strings with 5 byte chars and use 0x1337 as string terminator if that's what your metal needs.

The point is, you don't have to, the compiler provides you with a sane array implementation that is adequate for 99% higher level algorithmic tasks.
See my other reply to this above.
I Wanna Go Fast – Load Balancing Dynamic Steering
It seems pretty delusional to just say these people would have spontaneously lost their minds even if they didn't do extremely powerful mind altering drugs.
An impressive implementation IMO. The author put the code on GitHub: https://github.com/enzo1982/superfast
The funny thing is that the mainstream media is often breathless over the possibilities of blockchain these days, but the nerd forums in the nineties for the most part understood and were excited about the impact of the internet and web.

Draw your own conclusions I guess.
I fear that you have only read about the rosy side of being a traveling and being digital nomad. You are unlikely to find problems in unfamiliar territories to solve as your savings dwindle to nothingness.

My advice is to stick with your well paying job and at the same time open your eyes to problems that you can solve or identify startups that can use your skills and at the same time inspire you more than you are at Amazon.

I would assume you commute to and from work - that is time that you could do some reading about non-technical stuff, e.g. social causes, challenges. I assume you have a life outside of work, so talk to non-tech people understand what frustrations they have in their lives, etc. There is no shortage of problems. Sooner or later something will "click for you".
> Normally being quite introverted, I found the experiences interesting but exhausting.

It sounds like you're still introverted, even while drug-induced into being more social (perhaps you're conflating shyness with introversion?). An extrovert would feel energized by the socializing, not exhausted, which answers your later question.
I love this site.
No, you'll get UB.
> Strcpy has to iterate through all the elements because it copies them. This would happen regardless. It doesn't do strlen.

Iterate all the elements and copy a fixed size is two very different things.

strcpy has to read, byte for byte, and check it for null (which is exactly what strlen does). A "real" copy would just blindly copy a chunk of memory with no other processing on it. The speed difference is huge.
The way any big corporation fails - there is that strange notion that Managers know better than Engineers and can make technical Decisions.

Good engineers, who love coding, can design a big system, are unlikely to rule over the Design. It'll be bad engineers, now Managers, with good political skills, that got promoted because its their only way to survive, being otherwise useless.

It is totally upside-down, hence the mess, unless you have Bill Gates at the top, true coder.
The end of May 2018 marked the emergence of three malware campaigns built on publicly available source code for the Mirai and Gafgyt malware families that incorporate multiple known exploits affecting IoT devices.

Samples belonging to these campaigns incorporate as many as eleven exploits within a single sample, beating the IoT Reaper malware, which borrowed some of the Mirai source code but also came with an integrated LUA environment that incorporated nine exploits in its code.

Investigation of these campaigns also led to the tangential discovery of some Gafgyt samples incorporating new Layer 7 DDoS functionality targeting a known DDoS-protection provider.
Two-factor auth and SMS hijacking
Fun tangent: This website[0] generates random crackpot-y phrases using buzzwords from various fields (specifically from things that Deepak Chopra has said). If you play around with it long enough you'll stumble upon a randomly generated phrase about quantum reality, or some such gobbledegook.

[0] http://wisdomofchopra.com/
"лове"* -->

Lovable Love as early as possible
Love as early as possible
Lovable Love as early as possible
Love as early as possible
Loving Love Loving Love Loving Love Loving Love
no preference one-to-one-to-no-first-time
jobseeker ascending
Company name ascending
First name descending
Last login Ascending
Descending Ascending
Descending Ascending
Descending Ascending
Lovable Love as early as possible
Love as early as possible
Loving for love as a lover as a lover
no preference one-to-one-to-no-first-time
jobseeker ascending
Company name ascending
First name descending
Last login Ascending
Descending Ascending
Descending Ascending
Descending Ascending
Descending Ascending
Lovable Love as early as possible
Love as early as possible
Loving for love as a lover as a lover
unborn love as good as new or oldest
first name or last name: Lovable Love
e-mail to the real estate model
as % of person read in author's name
spain number of years more than 1 year
old Lovable Love as early as possible
Love as early as possible
Loving Love as a Lovable.
Lovable Love as early as possible.
Re: the subjective nature of aesthetic quality.

> That's usually just something people say to dismiss art criticism.

Art criticism that is about good and bad art more than what effect art has (or what it communicates) and why/how it does so mostly should be dismissed. For exactly that reason.

So, while the fact that the subjectivity of aesthetic quality is frequently used to dismiss art criticism is frequently used to dismiss the dismissal of art criticism that it concerns, it's a legitimate reason for dismissing much art criticism, specifically, that criticism which is simply elaborate verbal camouflage for naked subjective preference.
With Pruitt gone, Trump and his allies continue to threaten the EPA
Defining data science in 2018
> You don't seem to understand heap vs. stack.

Please check who you are replying to.

https://en.wikipedia.org/wiki/Walter_Bright
I kinda gave up on Pascal 35 years ago when I picked up a copy of K+R :-)

The only thing I really liked from Pascal were the nested functions, which I put in D.
You're right. I apologize for using strlen metaphorically rather than literally.
That is why we have python type hints: https://docs.python.org/3/library/typing.html

Not as good as a real static type system with compiler, but still helpful for documenting the code and tools for static code analysis.
Freeciv 2.6.0 released
Just because something can't turn back the clock doesn't mean it isn't a cure.

I'm pretty sure it does...if penicillin only stopped you getting sicker rather than killing bacterial infections it would be barely useful.
I feel like this phrase rings somewhat true, even though he was off on many other things: " When most everyone shouts, few listen".

It's quite hard to know who to listen to, and who is telling something objectively true in this environment, since everyone's voice has the same weight. And there are too many of them to sift through, so many probably end up listening to people who pander to them.
Cyberpunk at its best. high5.
How to edit tweets with Covfefe so you don't embarrass yourself on Twitter
4 Invaluable Tips on Undertaking Successful Amazon Market Research
1. You chose a castle and the work of "the greatest American architect of all time" for your comparisons when the author clearly states in the disclaimer: "These principles are for the classical or traditional architecture most residential homes are modeled after."

2. "What this guy likes..." The author is a woman.
The worst thing about not having an explicit hierarchy is that it allows the emergent tyrants to claim that everyone had equal influence on the decisions, everyone was consulted, and everyone agrees. Then when things go wrong, it wasn't their fault.

I've run into this problem a couple of times. Ultimately it means you can't really discuss problems and you can't place responsibility.
Any predictions that pertains to the technological aspect of our lives is utterly futile.

Imagine you are in the mid 90' and you say to someone that in the next decade we will have a camera, a video camera, a radio, a music and video player, a voice recorder and much more in just one pocket. Saying it like this make it look insane.

On the other hand psychological and social aspects are linked to our brains that didn't change much in the course of the human recorded history.
If web browsers would start to interpret python directly, then maybe. Otherwise I fear it will be Javascript.
I'm usually one to lean on your knowledge, but looking at glibc's strcpy [0], I don't see a strlen. I do see two macros, CHECK_BOUNDS_LOW and CHECK_BOUNDS_HIGH, which get defined about here [1].

Am I missing something?

[0] https://github.com/lattera/glibc/blob/master/string/strcpy.c

[1] https://github.com/lattera/glibc/blob/master/sysdeps/generic...
I was quite young back then, but I started on os/2 and after about half a year we switched to nt4. I never used any windows before that, but nt felt much more mature. Unfortunately I don't recall the version of os/2 in use, but we mostly didn't upgrade the workstations when we switched and windows still felt "better", although I do remember some os/2 fans at our place complained about nt4 being a memory hog when the switch was announced. Iirc we had it running nicely on 8mb 486 even, and the visual basic 5 ide ran lightning fast.

Stability wise, my os/2 time was probably too short anyways, but I don't remember either os as unstable.
We aren't made of polymers.

Chemicals that don't separate from the plastic doesn't mean the chemicals used to make and color plastic are safe to stick directly into your body.
Now is the time for Walmart to strike at Amazon Prime
There are some papers from Prof. Braun describing experiments where he uses mutations from genetic / evolutionary algorithms to find the optimal structure of a neural net.
Define 'Linux'.

The kernel? Or a full-blown OS like Debian GNU/Linux? Official ports, or also unofficial ports?

If you're going for official Debian GNU/Linux ports, then no. If you mean Fedora (say you really wanna run Fedora), then no.

NetBSD isn't just a kernel; it is a full-blown, portable OS. The base system is practically the same on every port. So if you're familiar with NetBSD, the idea is that you can always run that familiar OS on another computer.
The only thing experienced programmers truely value is profiling- write it, run it, measure it.

Advice is nice and all, but at the end of the day, even that new method to write code, gets to perform on the profiling table of your manager.
OO ?
Use it, run it against procedural or functional approach, measure it, decide.

Everything else is politics, religion and that one irresponsible guy who gets high on new things and away with it somehow, while touring companys.