skysight-inc/HackerNews huggingface dataset:
> test and integration tests are (bad) substitutes for good and modular design, which should piggyback on a strong type system

This sounds completely hand wavy. If the design is in fact modular and built of autonomous components then it should be relatively easy to test and should be tested. Types are no substitute for testing and are completely orthogonal to testing.

> Test code is brittle code

If this is the case then the code being tested is more than likely brittle as well. Test code reflects the system under test more than anything else.

> You need tests because you're using a dynamically typed language

No you simply need tests in any language.
If you don't have tests for everything, how do you check that everything's still working fine? Because the only alternative I see to not thoroughly test code is to check the app by hand to make sure nothing's broken, which is, well... Not as robust as having it checked by a machine.
When I was working with CompCert, I had no problems producing a formally verified compiler that miscompiled its (meager) test suite. Tests are necessary for "formally verified" systems! You might mess up parts of the specs or the model you are verifying against. You can only catch these problems through testing.
Inability to consider higher-order or longer-term effects is more or less the hallmark of McKinsey-style thinking, which Google has now embodied with their choice of CEO.
"You throw 'em, We blow 'em"
Robert's upcoming book has a survey of a few popular IDEs.
Hi, I'm curious how you designed the app? Did you use the existing application as a base and try to duplicate it in the web or was it a completely different beast? Do you have any book recommendations or even blog posts for how to upgrade legacy UI? It's a topic I'd love to dive more into and I don't hear as much success stories as I would like.
Yeah, it doesn't necessarily have to be all negative ! Thanks for sharing your point of view :)
Spent a few minutes trying to decipher why Bloomberg would go through such hoops to silence his own wife.
UK Government has misled public over UK deaths being lower than France
The killer app was supposed to be DAOs, ICOs, and decentralized finance/web 3.0. Instead we got another asset bubble. This is why we can’t have nice things.
Golang gets this wrong. It should be scope-level not function-level (or perhaps there should be two different types, but I have never personally had a need for a function-level cleanup).

Edit: Also please review how attribute cleanup is used by existing C code before jumping into proposals. If something is added to C2x which is inconsistent with what existing code is already doing widely, then it's no help to anyone.
IIRC, all of Einstein's papers were just a not-so-subtle advertisement for gaia.com
Matthew Winkler, the editor that recommended the action, is a baby boomer. its odd to see someone who lived through the McCarthy era and the cold war so eager to appease what throughout his lifetime was branded the enemy.
Yes, but that is essentially what QUIC is, a new transport layer protocol andHTTP/3 is then ran over QUIC. QUIC is right now implemented in user space but nothing prevents it from being implemented in the kernel.
I think the difference is that for you, many of those same things can be accomplished by choice. You can still have an absolute start and end to your workday, you just have to be proactive about it. You can still take the same amount of time to read or think to yourself. Perhaps the requirement of a commute makes doing those things easier, but its entirely possible to do the same thing by simply being more mindful about it.

For those who hate their commute, being forced into the office every day doesn't offer the same latitude for adjustments to their personal lives. And many of those things you enjoyed are only possible via public transportation. Given the woeful state of public transportation in much of the US, many commuting are doing so in cars, which don't afford the same opportunities for peaceful self-reflection and unwinding.
Not sure what you mean but would

s8 buf[enoughspace];
snprintf(buf, sizeof(buf), "%f,%f,%f", your, three, values);
sscanf(buf, "%f,%f,%f", &your, &three, &values);

Do the job?
> become the opposite of inferior (ferior?)

"superior"
No it's not, the infection fatality rate keeps going down. This is just media hype and the risks are being overblown due to the many biases in human judgment (availabiltiy bias, survivorship bias, social bias, etc).
Nah, you made it up.

And you still haven't answered my questions. Because it's inconvenient.
On the grounds of article 7, referencing article 2, of the Treaty on European Union (this is basically the constitution of the EU).
Let’s keep hackernews away from politics.
Well, there are number of problems with this proposal. For example, if your implementation defines int as a 16-bit type (which is permitted for by the standard) and you pass an int32_t, the value you pass maybe truncated if it is outside of the range of the narrower type. When programming, it is best to match the type of the API of the function you are calling for portability.
> There are plenty of companies building awesome, successful projects in Clojure today with teams of fewer than 10 engineers in them

You can replace clojure with 10 other languages and it would still be a true statement. Clojure is just a tool.
Howie Young, Founder of Tico – Making Your Social Life Well-Organized
I can adapt to a hot poker in the eye, but I would never choose to.
;-)
This is actually a sequel to the first "Keynes vs Hayek rap battle"

https://www.youtube.com/watch?v=d0nERTFo-Sk
To concur:

It's not merely predicated on a utilitarian ethical viewpoint, it assumes that we've accurately accounted for costs of the options (eg, second and third order effects) when deciding rather than merely justifying our preferences with biased models.

Empirically, the second (biased models) happens considerably more often than the first (accurate accounting) -- to the point that even if you're a utilitarian, you have to admit it doesn't work in practice. You simply can't make the required benefit calculations for utilitarianism.

This is something businesses get wrong a lot: their numerical justification is actually a reflection of the biases of their staff, rather than an accurate accounting of the options.
I took a very short look at the Mac version. They made great progress, yes, but they aren’t there yet.

The menu bar seems native now, but save dialogs aren’t, and look out of place (and, IMO, ugly).

Also, clipboard support is limited. You can’t paste copied images into TextEdit, for example (the standard image format on Mac OS is PDF, so it should put a PDF representation of the copied data on the clipboard)

Does that make it unworkable? No, but there’s room for improvement.
Different quesion, what kinds of tests does TypeScript eliminate?

Also, does ReasonML eliminate other kinds of tests than TypeScript?
Covid-19: French court orders Amazon to limit deliveries to essential goods
Full automation of release for non-JS projects using JavaScript community tools
I've been thinking that it would make sense to make dedicated lanes for lightweight vehicles. That would mitigate some of the safety concerns w.r.t. smaller cars/motorcyles and incentivize a switch to smaller vehicles in urban environments.
Not the OP but we've last had a pandemic of such proportions 100 years ago, and back then the world was not as inter-connected and inter-dependent as it is right now. Even during WW1 and WW2 industry and the economy itself were working (sometimes at full capacity), a fact that it is not happening right now. We've never had half of the planet's population in some sort of lockdown, that is the definition of a "black sawn event".

Yeah, one could say that things could have been better prepared (I'm in that camp), but one can never truly prepare for half of the working population being put on indeterminate leave on such great a scale.
That's all true. The difference is in Idiocracy there's no fracture- everybody's an idiot and perfectly content to be one.

In our time, there's still push-back to any descent into idiocracy.
What is your favourite design pattern?
SalesHacker: Lead Generation Without Events
And hence, the availability bias.
Wait, doesn't this mean that the BSD sockets API is inherently dependent on UB, casing different socket types to each other and sometimes only using the first few members, or am I misunderstanding you?
Michael Bloomberg is no longer a political candidate. This is about journalism.
For violating their treaty obligations, which includes adherence to human rights, which includes democratic accountability and rule of law.

(I’m simplifying, of course; I’m no lawyer).
> - Which differences between the C abstract machine and actual modern CPUs/hardware have proven most difficult to deal with in the language?

For me, I think it's 'volatile' because, by its nature, you can't describe what it means in the abstract machine very well. For instance, consider a proposal to add something like a "secure clear" function for clearing out sensitive data. The natural inclination is to pretend that data is volatile so the optimizer won't dead-code strip your secure clear function call, but that leaves questions about things like cache lines, distributed memory, etc.

> - Are you planning any addition regarding modeling of how modern CPUs work (e.g. pipelines, branches, speculative execution, cache lines, etc)?

Maybe? ;-) We tend to talk about features at a higher level of abstraction than the hardware because hardware changes at such a rapid pace compared to the standards process. So we largely leave hardware-specific considerations as a matter of QoI for implementers.

However, that doesn't mean we wouldn't consider proposals for more concrete things like a defensive attribute to help mitigate speculative execution attacks.
Ask HN: Ideas for a Funny REST API?
There’s no EC1840/41/42 or Poisk :(
I would think that the backdrop thing is mostly performative (look at me, I'm producing this under suboptimal conditions), but I am really surprised that these broadcasts aren't being produced asynchronously. Both audio and video would be much better if the person was doing a local recording of their side of the call, and afterwards both local recordings were stitched together instead of using the over-the-internet version. Doesn't work for live stuff, but most correspondent stuff is scheduled in advance and could accommodate this kind of thing.
A guide to Resample and Interpolate time series data in Python
Related to that: C++ standards body seems to be quite open allowing non-members to participate (outside official votes, while respecting them when looking for consensus) is it just due to my limited observation or is the C group less open? Any plans in that regard?
No need to carefully select participants. If you do random sampling with a large enough sample, the proportion of all subcategories should reflect the population at large.
Doug, the email address in your account is private by default, but you can make it public by putting it in the About field of your profile at https://news.ycombinator.com/user?id=DougGwyn.

ender1235, if you don't see an email address there, email hn@ycombinator.com and I'll put you in touch.
But it's never truly free, since someone will have paid for it at some point. Essential goods and services should be made freely available to those who need them, and are in a lot of places.
I became a teacher, so now I get to share the joy of programming with kids. I also manage the technology at my school, so I do some programming to enable that, which is enjoyable because I am pretty independent. I work at a great school with good kids, so my gig is not a common one, but it works for me.
These twitter accounts:

https://twitter.com/LukeGromen

https://twitter.com/LynAldenContact

https://twitter.com/darenpa72

blog:

https://www.lynalden.com/

Common thread is topics around currency dynamics, and US Dollar reserve currency affecting..many things: trade, markets, geopolitics.
What you want sounds a bit like a peer exchange group. I’m a member of one, /dev/color, and it’s great!

https://www.devcolor.org/
It’s challenging to do, but there is something to be said for having features you don’t advertise.

You don’t have to make them work for everyone. They don’t have to be safe in all possible scenarios. But they are there for Support to offer to users who are caught in a bind and need a solution.

The about: box is a bit like this. It’s there, if you really need it, but they aren’t going to flood their menus for all the 2% cases.
Layoffs are disproportionately impacting startup satellite offices
The eval isn't to help with the nesting. The {} stuff nests just fine, as we can see by changing the "eval mv" to printf:

$ printf '[%s]' file{,{.bak\;mv,.new},}
[file][file.bak;mv][file.new][file]

(Note: I took out the '\ ' from the original because I realized it is not necessary).

The eval is there because in bash text expansion occurs after ';' is interpreted, and we need that to be the other way around. Hence, the escaping of ';' in the input to preserve it for text expansion, and then the eval afterward to get ';' interpreted.
> Types are no substitute for testing.

I don't agree with the person you're replying to that types make tests redundant, but to claim that types can't substitute a large amount of testing can only come from inexperience.

Whatever property you can model successfully through a closed type, is a property you never have to test ever again anywhere it's being used. If you have 500 functions that take a NonEmptyString, those are 499 fewer property checks in tests (because you should have one test for the type constructor).
You make sense, unfortunately our "market" economy does not.

Many of today's incumbents WILL exist in two years' time, because they are the recipients of "helicopter money" to prop them up, even if they deserve to die.

The real losers will be small and medium businesses who will get some token (not enough to survive) help, so that politicians can claim that everyone was helped.
Head of Match Parent Navigates Social Distancing in Coronavirus Crisis
The thing is, Wolfram earned his stripes as a very competent physics prodigy, and is clearly very, very smart. But as far as I can tell, no one studies this stuff except him and hist acolytes and I think few established physicists would be inclined too, so it's very difficult to evaluate his ideas.

Is he a crank? For a classic definition of crank, no. Does this work represent a clearer understanding of physics than we had prior, or is it an interesting diversion? Harder question, but one has to assume, probably diversion.

On the other hand if time travel or teleportation IS ever invented, my money is that it will be Wolfram.
Her name is Ms. Placedmodifier
It would be nice if those of us who handle WFH under a pandemic very well have some leverage after it's resolved to continue a WFH schedule. I really don't care for the long commute to an open office. The combination reduces both my quality of life and my quality of work.
Yes, both :) There are a few in public domain that might be helpful to experiment with. Clang has had a static analyzer for a while and GCC 10 adds one as well (and the maintainer is looking for help with implementing checkers so that's a good way to gain experience with writing one).
Very slick UI. Also, very intuitive. I like the countdown...made me feel like "oh crap! I better get started on this task".
I spent the early part of my career bragging about how many programming languages I knew, and the later part of my career complaining about how I don't know any of them well enough.
Easy solution to this problem; find a new company to work for that does remote working well
The challenge to control for is that they used WebPageTest, which tends to have locations in data centers near where they do. Using the traffic shaping options can add latency but what you really want is random latency and packet loss to simulate real-world usage.
From what I've been able to ascertain, it's just not a _thing_ unless you want to roll-your-own migration tool. There's a few-years-old issue that's now closed: https://github.com/tootsuite/mastodon/issues/177 but links to this currently open issue, which mostly reiterates that this is problematic for a number of reasons: https://github.com/tootsuite/mastodon/issues/12423

From what I understand, it's fairly trivial to post to _multiple_ ActivityPub accounts, but true _migration_ just doesn't exist per se.
Dr. John Ioannidis: ‘More Will Die from Economic Collapse Than Covid-19’
Yeah, reading The Peripheral first is essential IMO, just like watching Star Wars is necessary before The Empire Strikes Back.

And who doesn't want Otaku denim made on heirloom looms ;-)

Personally, as a software craftsman, I appreciate anyone who dedicates themself to craftsmanship. Japan seems to have a great deal of very dedicated craftspeople (NHK Online videos rule!), and Gibson is definitely a word- and idea-smith, Otaku-grade.

[[And because people need things to watch nowadays, our family personally loves NHK Online's shows 'Design Talks Plus' and 'Trails to Oishii Tokyo', as well as Grand Sumo. We find them fascinating glimpses into a very different culture, one that seems to honor craftsmanship in a way we, as Americans, find beautiful.]]

As to the characters not having 'an impact on anything', that's really how it's always been, unless you're a part of the klept. The only question is, "How you developed yourself in your lifetime to fight oppression and seek to uplift the most disadvantaged?" Because, if you don't, you're just a poorer version of the callous bastards that run the power organizations that do have an effect, effects that have, for example, facilitated global heating for short-term profit at the expense of the rest of us and our heirs.

[ETA: To see the klept in action, check out the parallel HN story about Bloomberg killing reporting on CCP officials getting wealthy in office.]
In my extremely limited experience in hiring (very few people), I made multiple mistakes. One of the thing I discovered (we were hiring a junior and both of us gave approval) was that you can find a person who can solve problems but can't actually code (there were a lot of red flags that we ignored on purpose I guess).

It isn't until I read your answer that I realized this: we were both convinced because the guy was smart, clearly, however he didn't know enough of the technology we were using to develop anything meaningful with it.
While when hiring a senior developer, it's possible that they can pick-up a new language or framework very fast, this is highly unlikely with a junior (this is not something I have in numbers, just thought).

The real side of the problem is that is very hard to figure out if someone will be good with everything that's not "oh, you can code".
It's not well defined in the industry, so there is no objective methodology to evaluate the skills of a person.
As a developer, you can usually recognize if someone can code, but determining if they are sloppy, care for design, that's a totally different thing: you need to work with them to figure that out, this is probably why an interview is not enough.
Check this: http://utf8everywhere.org/

Basically store the text as char arrays, and convert them when needed. Meanwhile, you could use this single file header: https://github.com/RandyGaul/cute_headers/blob/master/cute_u...
Wolfram’s header image apart from the article is available in light and dark variants that can be pinch-zoomed more easily:

http://www.wolframphysics.org/visual-summary/

Based on this image alone, having not yet read the article, it looks like he’s taken his prior insights on cellular automata (Conway’s Game type stuff) and advanced them forward to quarks and Feynman diagrams.

I typically have a very rough time with Wolfram’s writing but the image is, at least, simple enough to follow. “What are the rules for particle timeflows?” is certainly a question that’s interesting though my phrasing is probably terrible.

EDIT: Yup, it’s definitely quarks X cellular automata. Clearly an extension of previous Wolfram work, still just as enthusiastic / savior-ish as ever. I hope it pans out somehow in pragmatic real world outcomes someday. Bonus link to diagram showing a fate decision tree behaving like a Conway glider:

https://writings.stephenwolfram.com/data/uploads/2020/04/040...
My accountants saved me enough money every year to be basically free, while I don't need to worry about all kinds of stuff. I did my taxes myself often as well, but I didn't like to do it (instead of doing billable work or having spare time).

Contracts: I really suck at them. I rarely do them. I got lucky so far, perhaps 2 clients that managed to pinch me but then again assholes will be assholes with or without contracts. But hourly work is easier than fixed price. Especially when it goes sour.

> Knowing what skill has high demand is less important than finding a team or business that likes you and needs you

True. I'm a specialist in mobile remote communication solutions which should be somewhat sought after right now but I can't find matching clients. I should have networked way more the last years than I did, and I don't consider myself a bad networker.

> Still, when freelancing picked up the problem quickly became burnout and setting boundaries.

The worst thing that always happens that after a slump in work I'm going basically YES YES YES YES YES YES to all work and I've never been in the situation that when one job finally came through at least two others I've YES'ed came at more or less the same time.

So going from 0 to 60 hours per week for a few weeks. Which after a week or four really starts to turn into 30 hours worth of productivity while being behind your computer for 70.
Why? What extra functionality does creating a cryptocurrency enable?
Scarcity forced people to drive to other states. Gouging is illegal in Louisiana and it's always outsiders who are completely shocked when everyone from the bleeding heart to the die-hard GOP supporter will call the cops when they see it. Anyone who gouges in the state can fully expect to receive a lawsuit from the state AG.
Semantically correct is important! What kind of semantics? I prefer denotational. Many programmers think in operational semantics. And how does one verify their code?

I'm trying to push our review guidelines to ensure developers submit their code/change with an argument as to why it is correct. I got this idea from E.W. Dijkstra who was having a hard time keeping up with his graduate students and colleagues. In order to save his time and sanity he asked them to submit an argument as to why their change was correct. Instead of validating their algorithms, Dijkstra was able to validate their argument and check their proof.

One can use unit tests to make this argument. The level of rigor depends on the task on how difficult it would be to convince the reviewer that your change is correct. One can go beyond unit tests and write property tests, make arguments based on the type information, embed proofs in the types, or make more formal arguments by proof if they feel it's necessary.

Making unit tests required is a good minimum case I think but is often not sufficient.
I started creating courses in Scratch to teach my daughter programming.

I was making clones of arcade games from my days as a kid in the 1980's. This really awoke a joy inside of me to do this.

Scratch is such a cool concept for kids.
And OP's point is that you don't necessarily need to have representation for all of those occupation/age group combinations. It's highly unlikely there isn't high amount of overlap in perception among those occupations. There's going to be supersets of those occupations that are fairly homogenous. So you really don't need a huge sample of respondents and coverage of all of those possibilities. You just need the makeup of the sample to be reasonably representative, and that's the problem with this poll. Seems like it was conducted in a way that the respondents are not representative.