skysight-inc/HackerNews huggingface dataset:
I sorta agree. A lot of place do these very wrongly. I think goal-setting is a waste of time because project work usually sucks up all your bandwidth no matter what. Anonymous peer feedback can be very helpful. Really, you and your manager (or reports) should know what's going on pretty constantly and never been surprised by a year-end review. I think the formal processes are less about getting new information and more about giving HR a paper trail for handling complaints.
Chinese Taipei is Taiwan, an independent nation. As much as China would like to claim otherwise, Taiwan is not China.
A members-only contract wouldn't be able to be negotiated as the employer wouldn't come to the table unless strike was a risk.
Washington Post has been hammering that nail intensely:
https://www.google.com/search?q=china+totalitarian

Perhaps others have not, considering the Post's dominance of the Google front page.

https://www.quora.com/Is-China-a-totalitarian-state

makes a good point:

> Authoritarian yes. Totalitarian, no.

> The difference between authoritarian and totalitarian is that in an authoritarian state, what is not banned is allowed. In a totalitarian one, what is not banned is required.

and that China is so much better than it was in the 1950s, that is deserves a better evaluation.

Still, from the perspective of a mostly-free society, the distinctions between Authoritarian and Totalitarian are blurred.
The biggest reasons for performance reviews in my mind are to serve as a mechanism for everyone to get a cost of living/merit raise at the same time and to leave a paper trail for when you need to fire someone. Having 2 years of "below expectations" will save a corporation's ass when an unlawful termination case pops up.
Self-teaching can be measured through asking probing questions about what the candidate does to keep up with new developments in their field. Self-motivation is harder to get at, but sometimes it helps to ask about what the candidate looks for in a role.
Yea, the idea that individual workers somehow benefit in these types of situations if there's no union in place is weird.

The Worker Vs. Company conflicts that come up always favor a Company because they have more time, resources, and connections than an typical worker. The union's goal should always be to represent the needs of most workers most of the time, but there obviously will be situations where that puts an individual worker and their union at odds. This doesn't seem like a fatal flaw in the system any more than people will be elected to federal office who don't share your worldview.
This is Mi Max 2 in India. I can see the option to disable those notifications blocked. There was no need to say the "do not cry wolf" part but I guess some people don't know how to be civil and uncover facts before jumping into conclusions.
Centralized planning and standards sound like a non-free market to me; and also exactly what an inflexible demand market for critical utility services needs.
Mapping unsolved murders in major U.S. cities
Mailchimp: Possible GDPR Related Dark Patterns
I've been handling a GDPR process for a mailing list which had approx 14k subscribers. The list is for a niche website notifying them of new articles (free).

We used mailchimp's suggested process[1] of sending an email with an opt-in link taking them to a form with a consent checkbox. Subscribers failing to opt-in actually remain on the list for billing purposes, but without a GDPR flag set.

My task, to save costs was to remove around 8k subscribers...

I created a segment to filter using their newly created GDPR fields, but whenever that segment is used it takes several minutes to load. Cycling through the pager takes a similar time too.

There is no way to easily delete all users in this segment, There is only a select visible checkbox, not a select all checkbox, at most you can only select 100 email addresses at once. It does retain the selection if you go to the next page, but it does take a long time to do so.

Once you trigger the delete action, it adds it as a background task, this makes sense but it affects the pager in an unpredictable way, the safest way is just to wait, go back to the list screen and reapply the segment. It's easy to get stuck on a page that says there is no results when there are.

I've found the only way to do it with my list is to break the segment down so the result is less than a thousand (I started with accounts not changed in x years, then get more recent), then I go through those pages deleting those users.

It's taken me a couple of hours to delete about 3,000 so far.

Funnily enough, when using segments that don't relate to GDPR the UI is much snappier. Is this poor database optimisation for a rushed feature, or a dark UI pattern to dissuade people from using this?

Why no Select All button?, I vaguely remember them having one in the past, when I was doing research on how to handle selection of large numbers of records, but I cannot be sure about that.

[1] http://eepurl.com/dqP8Bb
The advice given in this article is bad. Reducing the length of the copy by one will still fail to null-terminate the string if the source exceeds the destination length. You need to add

dst[sizeof(dst)-1] = 0;

or memset the array to zero beforehand. You are not guaranteed to have a zero at the end of the input buffer otherwise (neither local variable arrays nor malloc’d arrays are guaranteed to be zeroed).

strncpy sucks for a second reason: it writes n bytes no matter what the source is. That means if you write

char buffer[16384];
strncpy(buffer, “hello”, sizeof(buffer)-1);
buffer[sizeof(buffer)-1] = 0;

this will fill 16K of memory with zeroes despite only needing to copy a 6-byte string.

strlcpy/strlcat do the right thing (copy up to n-1 bytes and null-terminate); shame they aren’t standardized. In their absence, I suggest snprintf instead:

snprintf(buffer, sizeof(buffer), “%s”, src);

Because snprintf returns the number of bytes that would be written, it can be used to detect overlong input strings, reallocate the buffer as necessary, and also to implement efficient concatenation. It’s also surprisingly fast in most implementations.
That's only the case if someone pushes up a commit like "Addressing comments" or "Fixed bug". If you rebase locally and force push the branch to maintain the clean set of commits after addressing review comments, Github does not provide a way to see the diff between the previous branch head commit and the current head commit.
It's worth noting that strlcpy and strlcat are quite small, very stable, and can be brought into any program that needs them. Yes, it's an extra step but not an onerous one. Of course it's nice to autoconf them if practical.
He talks about not to add in features you think would be “cute” because they are always a mistake..

Then a few minutes later says “I thought being able to specify URLs in import statements would be cute..”

Uhh...Houston, we have a problem with this one.
for very good reason though.

Without these buffers, going on strike is basically impossible.
I'm not sure I understand this rebuttal, do you want to expand a bit? Everyone getting 1% richer would not affect the Gini nor the absolute gap, or at least not as much as you imply. So I must be missing something.

In any case, you are not necessarily addressing my rebuttal of the elephant graph. What I'm saying is that the elephant graph is an interesting conversation starter, but, by itself, it does not convey enough information to make a conclusion about fairness. To make an extreme example, if I have literally $0 last year and I have $1 now, my growth rate in the elephant graph is infinitely higher than the richer 1%. I'm still going to starve to death, though. Absolutes matter.
We cannot send C to the farm and keep UNIX like OSes around, due to their symbiotic relationship.

I really would like that something like SafeC or CheckedC would win the hearts of C devs
Criterion.
Loved reading your summary, it was valuable to me. Thanks for taking the time to write it out!
Tolkien 2019
The humour of the front page got me interested. Looks good (y)
> given that everyone thought that C was "going to be sent to the farm" a while ago

For certain definitions of "everyone," maybe... I am no longer primarily a C programmer, and haven't been since around the end of 2013, and I'm still firmly in the "C isn't going any where" camp. I just happen to liken this stance to reality.
Yeah, and they still support OpenGL. The most popular iphone by a long margin is the 6, which is not exactly a graphics power house.
Electricity finds the path of least resistance.

If that power cable would be completely cut, the electricity would spark from one of the pole of the cable to the other, until some breaker shuts the thing off.

Even at great energy, the impact would be minimal.
Someone who "needs" a review is typically not a good fit for my management style.

If your organization gets large enough, then out of necessity, you will have many different managers with many different styles. That is usually the point when a performance review system needs to become more formalized - it's important to be sure that in some ways, all managers are treating their reports similarly, even if it means some of them changing their default management style.
Yeah, I know about bangs, but on mobile they are cumbersome to use: I have to tap my screen 7 times to change from DDG to Google:

1. tap DDG search bar
2. tap space
3. tap shift key
4. tap "!"
5. tap shift key
6. tap "g"
7. tap enter key

If DDG included a simple button, it would be 1 tap. Of course, I can't blame them for not linking to Google, but this way I will stick with Google.
I have only been a member in one union, it was during a summer job where the hourly employees were unionized. There was some special deal where I didn't have to pay the annual dues but got a prorated cost.

However, I did have to sit though the day long session where the union told everyone how they were there for the members and what that meant in terms of their interaction with the employer. Most of it was around insuring that I knew what things the union had negotiated and that I should not feel bad about demanding the employer honor their commitment when that happened. For example there were two 20 minute breaks (10AM and 2PM), there was 50 minutes for lunch including time to get to and from the lunch area, and if I was asked to work more than 40 hours a week it had to be paid at 1.5x my hourly rate, weekends at 2x my hourly rate, and holidays 3x my hourly rate. There were medical benefits that I pretty much ignored, and a formal grievance process if I felt I was being asked to do something outside my job scope.

The big message was that if my manager didn't live up to their obligations, the big union would make sure that the manager was made to understand what they could and could not do.

Every other job I've held I was not in a union. The difference in experience was pretty stark. Managers at non-union companies had no problem with intimidating employees to work additional hours to meet an unreasonable deadline that they had set, I've known managers who played head games on their direct reports to instill confusion and obedience, and have known managers who have gotten away with grossly unfair pay discrepancies between people they liked and people they disliked with little to no regard to their performance at the company.

Is it all managers? No of course not. And I have been extremely fortunate that if things were ridiculous and I couldn't influence change within the company I could leave and work somewhere else. That is much easier in the technical/engineering world than it is in a more trades oriented type of job.

On your question of wages, of the unions I've been in direct contact with, and the ones we've read about their negotiations in the news (Transit, Teachers, SEIU, etc) the wages are negotiated. You get what you get. Although at least some people augment their salary with overtime (for example a member of law enforcement providing security for an event).

Unions can also create definitions of when someone can be fired, which would be different for tech workers in California. Most employment in tech is "At Will" which means you can quit for any reason at any time and they can fire you at any time for nearly any reason. Unions often replace 'At Will' with contractual terms which define what it takes to fire someone and what their recourse is.

One of the most amazing things about unions I found in my career is that talking about organizing one at a tech company will get you fired faster than having relations with the CEO's spouse. It is a really touchy subject.
Blockbusting
It's true that D allows all sorts of dirty tricks, like punning and unsafe casts, but only in code that is not marked as @safe. @safe code is mechanically checkable to be safe. This has the ergonomic feature of drastically reducing the defect surface, in that it saves my time because with C code I constantly am reviewing the array code for possible overflows, in D I don't have to.
How about a cli tool to cache and build those modules/native extensions all at once? We could call that Deno Package Manager.
C won because it came with an OS free of charge, with source code.
Show HN: MOV North, Helps Canadian companies hire global software developers
> Where is this confusion coming from? Are you suggesting there won't be colder water around the data centre?

If a fish is swimming in 24°C water, it can't simultaneously be swimming in 19°C water. Maybe its friend 10 meters away is swimming in 19°C water, but that doesn't help the first fish.

Maybe that fish feels more comfortable in 24°C water, because it needs a certain body temperature to keep its internal processes running (i.e., to not freeze to death), but it cannot harvest energy from the 24°C water, which is what you claimed above. I'm not nitpicking, this is one of the most fundamental and important laws of physics.
You're blaming facebook because people don't read ToS?

And then you try to tell people to be reasonable? That's like the pot calling the kettle black, isn't it?
> Furthermore, non-infantry arms (e.g. armour and artillery) might not have any regionally sourced battalions at all.

An aside, the Royal Armoured Corps in the UK is regionally source, and artillery is to a little extent.
> now I need you to do what I don’t ask you to

Now I need you to make me want to. And no that doesn’t necessarily mean you have to reward me, often it’s enough to feel like I won’t get in trouble for going the extra mile, or that at the very least it will be noticed when I do.

There’s only so often a person will give suggestions and extra effort to a lukewarm or negative response before they say fuck it and stop caring.
This link has nothing different to offer than "man 3 strncpy"...

Worse, some examples are invalid.
std::string isn't null-terminated. You need to use .c_str(), which allocates a copy that is destroyed when the string is changed (or is destructed).
I don’t think many if any Indian people actually paid for Whatsapp. Most people overall didn’t pay for it.
Smart speakers enrich user experiences with AI and hardware optimizations
> You're assuming gold / physicalvaluestores can be spent without shipping cost and exchange fees and that the volume traded reaches 0 in your comparison. Is the volume of any valuestore ever 0?

That's why gold isn't a currency there are definite transaction costs but the whole of the costs of transporting gold spent isn't required for my gold to be spent. With BTC the whole network supports all transactions and all transactions require the mining network for validation.

> mining doesn't have to be continuious, it's reward varies with volume to adjust the rate mined so you only wait a looong time if suddenly transaction volume spikes.

Mining has to continue as a whole though is what I'm meaning. Because it has not physical value and no ability to transfer without active mining the utility and value of BTC is inherently tied to the act of mining. There's also a hard minimum of active mining where the network remains secure against 51%/double spending attacks.
> In the US, unions have typically preferred to do #1, because it allows them to collect money from a larger pool of people, and it gives them a greater degree of control. In most other countries, unions either aren't allowed to collect fees from non-members or have to compete with other unions for representation of members, so they can't rely on exclusive representation laws to give them the right to represent (or control) people who decline to join.

a major difference between unions in the US and for instance, western europe, is that the political foundations of unions is far better represented politically in western europe.

in western europe, social democracy and socialism are political powers who can influence the goverment, and unions usually use that to their leverage. There is very little competition between unions, because they are all part of the same political ideology.
I vaguely remember the OpenBSD people started a rewrite of CVS at one point. I am not sure where that went, but looking at other things they have rewritten (NTP, SMTP, HTTP, ...), I would be surprised if that did not work out.
This is casual observation, but in the US, it seems like unions are much more likely to form when there are fairly egregious labor practices in a company. Though there are practical salary benefits to unions, it seems that safety and/or quality-of-treatment are bigger drivers of union formation. And I think a lot of news organizations are seeing them now, in part because of the decline of the profitability of those businesses leading to harsher labor practices.
AMD unveils product plans at Computex 2018
The people that worked in machines 10 years older than PDP-11 managed to have safer systems languages.

Still being sold today as Unisys ClearPath mainframes.
All of those suggestions have big downsides. I'm friends with the scientific glassblower that works at the university I attended and I'm somewhat familiar with the work he does.

A large part of his job is constructing custom equipment for specific tasks. A big part of this is figuring out what the user really needs or is trying to do. The glassblower has more experience than most of the people asking for equipment to be made. He'll often work with them to improve their initial design. You wouldn't get this if you were just sending off an order to a company to have custom glass made.

Another important part of his job is repairing equipment when it breaks. If you break an important piece of equipment in your lab are you willing to wait for it to be packed, shipped to China, fixed, and shipped back? Broken equipment may have been used to hold hazardous chemicals and there is often chemical residue on the glass. Most people in a lab wouldn't be able to clean the glass well enough to make it shippable without the equipment in the glassblower's office.

I don't think anyone has done any work on 3d printing glass. Even if you could 3d print glass that doesn't address the problems with poor design and repairing broken equipment.

It's possible to do without a glassblower but not a good idea for a top tier research university. If you can't get custom glass made then you can't do certain experiments. Not being able to do those experiments could lead to problems recruiting faculty and students that want to do them.
Ask HN: Startup Selected at big Conf. and meeting investors
My startup got "selected" to participate in a big upcoming conference. (we passed their interview process but still paid a fee, etc).

They have investor meetings and apparently Goldman Sachs and 500 Startups are interesting in meeting with us.

I'm sure they do a blanket invitation and meet with everyone (which is fine).

The meeting is 15 mins and I'm not sure besides an elevator pitch (expanding a bit) how should I focus the meeting. I doubt this is a meeting to talk numbers, raises, etc. My gut tells me is just a quick meeting, to see what has potential for later.

Anyone with some experience in these types of meetings that could share some insights?

Thank you.
So she got swatted. Let's call it what it is. She got swatted because some assholes decided to call the cops on her. Those assholes' intentions are irrelevant. If you call the cops on someone in America, you should expect the police to show up with guns and possibly shoot that person. That's what they do; that's mostly all they do. As a society, we've decided that the police should show up in many situations where they are not needed, like medical emergencies, and have also decided to give them the right to murder with impunity and without consequences (see qualified immunity). This is what happens when you give a bunch of bullies who barely graduated high school guns and power: complete abuse of that power leading to hundreds or thousands of unnecessary deaths a year; not to mention all the non-lethal violence they also cause being essentially the largest gang in the nation.

Americans need to learn that the police are not their friends and teach their children that. Police will not save you when there is a real threat. Police will stand back, hidden, away from danger just like they did in so many school shootings. They do not give a fuck about you, your kids, or your safety. They do not give a fuck about your life or anyone's life other than theirs (something they constantly talk about on every single cop show ever, in case you doubt this claim). I truly cannot think of a single positive thing police do in our society or any reason to call them, ever. Not one.
I agree.

There is also a lot you can do to decrease impact of novelty on the overall schedule and most people I work with do exactly nothing to reduce variability in the process and improve their estimation ability.

It is easy to claim every time you write code you are doing something new but, hey, every time they build a building they do something new. Yet buildings (except for extremely ambitious projects) typically can be delivered reliably by reputable developers.
It does exist and work. It's early days but you can now use it. Source: I bought a sticker using it. :-)
This could make the move to sf bearable.

https://www.bizjournals.com/sanfrancisco/news/2018/06/06/rea...
That's certainly MTA management's narrative when asked by, say, the New York Times.
Qualcomm Announces Snapdragon 850 Mobile Compute Platform for Windows 10 PCs
So glad I am now a contractor :)
>careful prose

Heh.
We split our onboarding into a few parts. High level below. This is iterative so I suggest you setup an internal wiki and share so it can grow and adjust to your company and policies.

Day 0: which we refer to as the internal check list of things that need to get done. That includes:
- preparing all legal docs that have to be signed
- purchasing required equipment
- setting up accounts like github, google apps, etc
- setting up workstation
- installing software on PC

The goal of this process is to ensure that there is ensure the employee is ready to begin training right away.

Day 1: employee familiarizes themselves with work space, people, office, emergency contacts, tools, the wikis etc.

Day 2: business training - reviewing in detail all of our products and services, our customers, our business model, our vision, divisions etc

Beyond this training is role specific.
> Or a park that remembers people that do not litter and greets them with a positive reinforcement signal when they walk in.

Sounds like a scene from a dystopian movie set in the future. Like a park in a city where the populace has lost its soul and everything is sterile and white and hopeless.

I would vandalize that positive reinforcement robot with some choice Newspeak words of my own.
Oracle broke compression in Tomcat 7.x in 8u151/152 and didn't fix it until 171/172 [0]. That was 6 months, so nothing Oracle does surprises me.

[0] Allegedly the fix was available in a non-public build of 8u162