skysight-inc/HackerNews huggingface dataset:
Perhaps the future will be a mix...downsized offices that can accommodate a max % of company-wide employees at once? 50%?

A place where the CEO/csuite/salespeople can have meetings and others can really come and go as needed.

If I recall, WeWork was getting into this market/model whereas they'd sublease space for a smaller number of companies, sometimes even just one enterprise.
see

https://www.wolframscience.com/nks/p231--four-classes-of-beh...
The USDA’s Economic Research Service estimates that 31% of food is wasted[1] while 1 in 8 families are food insecure[2]. About half a million people are homeless any given night[3], while 16 million homes are vacant [4], many of them perfectly liveable. Where's the scarcity?

[1] https://www.usda.gov/foodwaste/faqs

[2] https://www.ers.usda.gov/topics/food-nutrition-assistance/fo...

[3]https://endhomelessness.org/homelessness-in-america/homeless...

[4] https://fred.stlouisfed.org/series/EVACANTUSQ176N
Coming from python/js I found it to be high. Mostly because of the memory management/ making sure I call free correctly etc. In many cases where I would plow ahead in programming, with C I had to stop and would feel dread. A lifesaver for me was using C/C++ Repl environments where I could quickly prototype or sanity check things I was doing.
Do you think that static analysis is a valuable tool for security research? Do you recommend static analysis software to a single developer with a limited budget or an amateur?
It's not "statistically irrelevent", but the risk is being overblown. There's a lot of availability bias being introduced by the media right now.
Rust has a package manager while C and C++ don't (as far as I now). This alone make Rust more attractive for some projects. I hope C and C++ get one.
PeopleSoft's PeopleTools and nVision might be one of the worst out there. Randomly hangs and crashes
>completely removing the need for tests

That would be formal verification.
A more chill question for you - What's your favourite string library?
> Proper array support (which passes around the length along with the data pointer).

I second this one. One of the best things from Rust is its "fat pointers", which combine a (pointer, length) or a (pointer, vtable) pair as a single unit. When you pass an array or string slice to a function, under the covers the Rust compiler passes a pair of arguments, but to the programmer they act as if they were a single thing (so there's no risk of mixing up lengths from different slices).
The only person who would (incorrectly) answer "no" to the title question I assume is someone who only ever wrote javascript, and used tests as a way of preventing screwups with types, such as using undefined data or passing the wrong type of data to a function. Which is of course a pretty useless way of spending your day.
I've been thinking about this and my conclusion is that paying me money for my time is a good way. If you really have a good reason, it should be worth for you to pay for my time. Price can be decided through bidding, if more people want my time.

I think this is a fair way to go about the problem of being unable to reply to a few million emails every single day, if you're really famous.

If someone isn't willing to put their money where their mouth is, then they can't have a genuinely good reason to reach out to me, I figure.
My guestimates were indeed for the world and I expect most deaths to occur in less developed countries.

Economic slowdowns cause some states to fail, leading to civil wars, refugee cities, and famines and other diseases spreading. Thats where most of the deaths will occur.
Go, probably.
What is the class of problem that can be solved by computers of a certain size (compute density metric)? If a computer is basically instantaneous, but has to communicate over vast distances, it still couldn't solve large problems.

Couldn't we have already made 100k core single image OSs running over RDMA?
Sapiens - Yuval Noah Harari. If you have not given this a read yet it gives a good overview of how humanity (and civilization as a whole) developed.
I have been wondering why the US doesn't make a trial crypto dollar. If it doesn't work out what is the cost? Relatively nothing. If it does work out? it would strengthen the USD position as the global settlements layer and give the US control over a new monetary domain.

For examples of this see LIBOR/"Eurodollar"
What is your vision of C, its future and its past?
What was it supposed to become and did it become that thing?
What is it now? What will it involve into in the near and far future?
I recall getting partial refunds from health insurance for a few years after the ACA was first enacted due to regulations about how much they can charge.
> And devs need to take on more responsibility, broaden their non-technical skillset,

I've been trying to obtain more non-tech skills within various companies for years now, but I get nothing but more JIRA issues. At this point, I've come to the conclusion that the non-technical workers who deal with the business requirements, revenue, customer interaction, etc. do not want the tech folks to have any control over their domain.

What would they be needed for if we could do both the business functions and also write the code they depend on?
The good news is that we do not have to sacrifice our (digital) human rights to fight the virus. I was recently made aware of a really simple but effective way of tracking infections without storing data centrally or using positional information (GPS): https://ncase.me/contact-tracing/
This can only be done at compile time in very specific cases. The huge problem here is the compiler has no way of knowing which cases of undefined behavior are bugs in the program and which cases of undefined behavior are just examples of unreachable code. If the compiler aborted compilation when it detected undefined behavior, you’d be getting a lot of false positives for unreachable code, and you’d need to solve that problem (figuring out how to generate sensible errors and suppress them). This is not even remotely easy.

If you are concerned about safety there are ways to achieve that, like using MISRA C, formally verifying your C, or by writing another language like Rust.
> In Execute Program, we always write tests around subsystems that either (1) are critical to the product or (2) contain a lot of details that can't be statically checked.

This is one of those things that sounds good when you're in college, and sounds, well, horrifying is too strong a word, but it will definitely set off the warning bells for anyone that's been programming for a decade or more.

My team has a simple standard: every single user-facing requirement is verified by automated testing. We don't have 100% coverage, but it's damn close, somewhere like 98%. The remaining untested code is generally weird branch paths that are hard to trigger, and "shouldn't" be seen in production.

But this goes beyond code coverage or TDD: firing up the debugger and executing a unit test is the simplest way to add a feature, period. I cannot fathom building and starting our application so that I can hand test every time I change a line of code.

Unit and integration tests aren't punishment inflicted on inferior developers: they'd an extremely useful tool that makes your life easier and your team more productive.
Or they did but they didn't have a way to move the equipment, the people needed to use it, or simply they didn't have the spare equipment at all.
Because of the lockdown, Old Mysuru returns to barter
I agree that the answer is obviously yes, as types and tests do different work. However "types" in dynamically typed languages are not the same thing as types in statically typed languages. One difference is that one causes an error at compile time and one causes an error at run time. Types in statically typed languages can replace tests, but types in dynamically typed languages cannot (unless you believe program crashes are a desired response to code errors.)
I think an important problem with cars, e- or not, is size and weight. Moving two tons of car to move 100kg of passengers and baggage is just excessive. Compare cars with bicycles where less than 100W sustained are enough to navigate city traffic about 80% as fast as in a car. There must be a better trade-off point of comfort, safety and efficiency than a modern car.
No, it is just helicopter money distributed (to some) by the Federal Reserve.

"Whatever it takes" to backstop the stock market is apparently working.
1) The "FBI emails changed the election" narrative is a thesis, not a statement of fact. I seriously doubt the average person knew or cared about this. This sounds like the news media over-emphasizing their own relevance.

2) I don't think it really matters for the point I'm trying to make. Even if Hillary had won, the election would have been close, thus showing that the support for Trump's platform was still widespread. If he lost, we'd probably just see a different right-wing populist candidate arise in 2020. The issues that led to his rise would still exist, which is precisely my point.
You have ignored my point that I was precise and did not confuse the issue. Also not answered was why I was supposedly "off track" when I was not.

Which is exactly how so many CCP supporters argue.
I love how small of a language C is and get concerned when people recommend adding feature x,y and z.

What's the plan for C over the next 5 - 10 years?
To clarify, do you mean functions like c_isalpha (part of Gnulib) which is like isalpha but only matches 7 bit ASCII characters?
I'm also doubting that but before I knew Shape CPU, I believed because FURISC seems to be based on HEROIC, which is claimed to be the first processor emulation over homomorphic encryption.
https://past.date-conference.com/proceedings-archive/PAPERS/...
I think FURISC is more like HEROIC than ShapeCPU.

By the way, I feel sad for there is no publication of ShapeCPU. I guess that this is one of the causes of FURISC paper is lacking reference for ShapeCPU.
Funny you should mention that, as that feature has come up recently in mailing list discussions. We have not seen an actual proposal for adopting it yet, but features similar semantics are being discussed as a possible idea (no promises).

FWIW, I don't think it would wind up being spelled with attribute syntax because we would likely want programmers to have a guarantee that the cleanup will happen (and attributes can be ignored by the implementation).
Woooooooooooooooooow. I could be downvoted, but I can't say nothing other than that. WELL DONE !
Hello, I coded in C as a high schooler. Now, 16 years later, I have to code C again semiprofessionally after a very long break.

Big question, how to start programming in C on a high professional level for somebody self schooled in it? Is there a way to cut the corner, without having to go through 10+ years trial and error to gain experience?

Anything for somebody ready to sit, study, and practice for a few hours a day?
Good question, but not at all! I've been working as hard as I can for the past 15 years to improve C Language security as have other security-minded members of the committee. Generally speaking, we are in the minority as performance is still the major driver for the language. Any security solution that introduces > 5% overhead, for example, is a nonstarter. I think we all understand that are jobs are completely safe no matter what security improvements we can get adopted.

The committee works a lot lobbyist. A minority of people with a large financial interest in the technology (such as compiler writers) have undue influence because they participate in the process. I always encourage C language users to take a more active role, but they usually don't. Cisco is an example of user community that actively takes part in C Standardization.
So how do you know that the graveyards are locked? Care to share?
If you look at some of the biggest winners out of '08/'09 it was the institutions with large balance sheets and cash reserves. With earnings season just starting we are able to see the value of a strong balance sheet. Seems to me the macro economic system is rewarding those who bothered with risk management
My employer has just furloughed 30% of the company for 6 months. 6 freakin' months. And we were very profitable. This cut was not necessary to maintain neutral profit/loss...they want to keep profits up.

We're a software company backed by a brand name VC in SF. The board is in total meltdown.
Poland is very far from being a police state.
It sounds like the __attribute__((cleanup(…))) already offered by GCC is similar to this. I probably won't have time to investigate the differences while the AMA is ongoing though.
"habits and patterns to fix that"

Yes. Just as starting a new job/office has its own set of learned behaviors, practices, and norms - so does WFH.
You're not well informed about the book and that makes your comments pretty painful to read, a problem which the radio clip obviously didn't remedy. Although in fairness to NPR, it's just radio, it's not exactly the New York Times Book Review.

> The notion that 120+ years in the future the world will have changed so little that its still follows the same MSNBC vs Fox News script of today borders on hubris.

Agency, and its' predecessor The Peripheral, are set both in (a version of, or more precisely multiple versions of) the present day or the very near future, and in the future. There's no way to not take the present day into account. But the politics of Gibson's future are not reminiscent of "MSNBC vs Fox News," if that makes you feel any better.

Perhaps you should familiarize yourself with what you are writing about.
I don't think you're entirely wrong, but most corporations spend the majority of their specialization on the revenue generation side of things. In media, this means sales and ad tech. "Making a TV program" is something that has been outsourced to studios for a long time.

It's also a nightmare trying to hire for broad skillsets. Increased specialization is the only way to scale on the business side of the house. Even YouTubers have agents and managers who handle the money side of things. The influencer management companies largely act as a studio from a distribution standpoint, and most are owned by major studios at this point. There is no free lunch; those YouTubers have a huge centralized infrastructure with an army of specialized people, it's just funded by management fees paid by the talent instead of a corporate budget.

Don't discount the level of professionalism behind most YouTube content; this shit has been heavily controlled by established media interests (Comcast/NBC, Disney, etc.) for at least 5 years. It just looks different than the old media model, but it's all owned by the same players.
To those who advocate that the majority's right to live trumps the right to an individual's privacy, who decides ?

At present it is due the pandemic, next it will target some set of people because they are undesirable - because you know, that would supposedly make us safe. We know how that ended the last time. Whether it is contact tracing or wearing an arm band, underneath it is the same thing.

When an individual is compelled, for the perceived safety of the majority, it leads to slavery. It also destroys the majority. And technology accelerates this process.

Having seen rights being eroded, trampled, mocked, I have realized that we do not have any effective rights. They are a privilege bestowed by those in power.
Arent stable coins just an appeal to central banks expansionary policy? Bitcoin was created as an alternative set of values and seems like cryptos killer app to me
> ...which is something the Typescript compiler won't help you with (or any compiler probably)

Not so - there're languages out there in which you're able to encode your business logic within your program's types, at least to a certain extent, e.g. dependently typed languages. This can definitely replace some of your logic tests.
It's a Zonkey
Show HN: HookActions – Webhooks for Developers
I've been working in software for a while and at every company I've worked at I've always had the same problem: webhooks are hard to manage. Some third parties just have an API to create and view your webhooks and no way to actually test the webhook. Even when some do have a UI to manage them, I needed to keep a google doc of all the different places we had active webhooks.

I started building HookActions (https://hookactions.com/) last year and this past week felt that it was ready to release to a larger audience. The reason I built this tool is that I couldn't find something to solve this problem. The companies I worked at were larger and Zapier didn't fit our needs because we needed to write custom code anyways to do the integration and it was expensive as we scaled.

The larger problem I have with webhooks is that every third party service handles them differently; long term I want to unify and centralize the webhook ecosystem. Any feedback would be great!
Whoever paid for that grenade doesn't trust the soldier / mercenary they gave it to very far, that's why the network connection exists in the first place, hackers can exploit that.

At least that's the reason I just made up.
You can add 'set -o vi' to your bashrc to enable a sort of vim emulation. Pressing Esc will take you to command mode, where you can use commands like b, w, e, 5x, i. Ctrl-w and ctrl-y still work as described here.

More importantly, if fixes the ctrl-w behaviour. By default c-w will delete up to the previous space. With set -o vi however, it deletes the same amount that vi considers a word to be. So if you're doing cd /a/long/dir and want to change it to /a/long/other/dir, pressing ctrl-w will only delete the last 'dir' instead of deleting the entire path. The default behaviour is highly aggravating.
Pledging $100k to support the Drupal Association
You think the individual stockpilers have amassed more than factories world wide have/can produce? The people who stockpiled medical gear don't account for enough meaningful supply to justify your conclusion.
The advantages of being wrong on the internet :)

That of course makes perfect sense now that I take a minute to think about it.
Actually there was no need to disenfranchise non-twos-complement architectures. Now that SIMH has a CDC-1700 emulation, I had planned on producing a C system for it as an example for students who have never seen such a model.
The field of moral philosophy has extensive literature on exactly this subject. The NYTimes has an 'ask an ethicist' column. Every hospital has an ethics board with prepared guidelines on patient triage in times of crisis.

That the accepted answer to this question has become "who has the most money?" is a victory for... well, the people with the most money, so I guess we can call this a sterling example of the effects of income inequality. The vast majority not only don't have the majority of the money; they don't even have the moral standing of "legitimate" need.
I answered a similar question in another thread: https://news.ycombinator.com/item?id=22866242
I don't think @rbanffy is claiming such a class of problems exist. I certainly didn't read it that way.
That depends on what kind of containers you are going to run, I guess. Personally, I use LXD for containers, so my hosts run a minimalist image of Ubuntu Server — as in, without anything that is not required to function.

With Ubuntu 20.04 around the corner, it is time to think about upgrading my hosts, so I am thinking about taking a look at Ubuntu Core and using that as a host server for containers. As it is tiny, has a read-only root filesystem, and LXD already run using Snap, it seems to be the perfect candidate.

In the end, go with what you know, but keep an eye on what you don't, I guess.
Beside optimization (as others have pointed out), disallowing wrapping of signed values has the important safety benefit that it permits run-time (and compile-time) detection of arithmetic overflow (e.g. via -fsanitize=signed-integer-overflow). If signed arithmetic were defined to wrap, you could not enable such checks without potentially breaking existing correct code.
A full list of proposals to WG14 can be found here:

http://www.open-std.org/jtc1/sc22/wg14/www/wg14_document_log...

These papers are usually quite interesting.
As there are a lot of C-masters lurking in this thread:

How can one process unicode (UTF-8) properly in C? As a CJK person, I wish there was a robust solution. Are there any standardized ways or proposals? (Using wchar doesn't count.)
Issue is that system in normal state favors "house of cards" companies. Both as simply value thing, but also in material financial terms.

In values, I have read a lot praise for risk taking over years and rewards for it. I have read comparatively less praise for prudent decision making or what happen when risk part of risk happen. People are said to get rich because they "took the risk" and are poor because they were either lazy or did not took risk. But the part when people take the risk and become poor is never said, as if we wanted to pretend it never happens.

In finances, companies that risk a lot and grow and now are about to fail are way more likely to be saved then a company that was more responsible.
> The causes of working-class angst against globalism and coastal centers of power goes back to at least the late 70s, with the offshoring of jobs and the subsequent death of thousands of towns in the now-called Rust Belt.

So .. how's that working out?

> the realization that your model of history was so flawed that a new, surprising event wasn't actually unpredictable, but merely based on data you were ignorant of.

Iain M Banks calls this an "outside context problem" in Excession.
On what grounds should they be kicked out? For people in those countries not voting according to the preferences of the Swedish media?
Could we instead just have standard-defined integer types which saturate or trap on overflow?

Sometimes you're writing code where it really, really matters and you're more than willing to spend the extra cycles for every add/mul/etc. Having these new types as a portable idiom would help.
I think this is somewhat funny since to think of this question at all really highlights the time people waste in JS/python etc.. Testing things that can be automatically checked by a simple compiler.

I do find that as some of these people migrate to TypeScript they write too much tests, as they are just not used to have some checks already done for them.

But to others that come from compiled/typed languages that's a question you'd never ask :)
I think individual rights should always trump the majority will. Individual rights are natural, unremovable, and should not be up to debate. It’s the reason why the US is a republic and we have a bill of rights > all laws or orders.
I thought the repo market was mainly due to regulation drying up liquidity in that market. It didn;t seem to me like a larger concern. What are your thoughts on it?
Read Bloomberg? They have several excellent free e-mail newsletters.
Hopefully it'd at least be syntactically similar, so we can have an

#ifdef __STDC_CLEANUP__
#define my_cleanup(func) stdc_cleanup(func)
#else
#define my_cleanup(func) __attribute__((cleanup(func)))
#endif

i.e. it would require that it at least goes in the same places as an attribute.
> no such feature has emerged in practice

Arrays with length constantly emerge among C users and libraries. They are just all incompatible because without standardization there is no convergence.
+1 for Varoufakis, he has a very deep understanding of the system, having seen its ugly details very close up in the eurocrisis, and he has an excellent clarity in explaining it all