skysight-inc/HackerNews huggingface dataset:
I live with a FB employee. Most of my close friends are FB employees. I've literally never heard this.
And if they did something more extreme like for example literally eat like a walrus? That wouldn't weird you out even a little bit? Nothing in the back of your mind would say "watch out for that guy, he seems a bit psychopath-y"?
You cannot imagine how many times I have caught red handed, people with that mentality "screw the policy, my friend needs a loan/credit card/etc". A a bank can and will drag you to court and rip you a new one. That said, not all banks are scummy to create cards/loans to clients without their knowing. Some actually play by the book.

Anyway, yes some people think that because they are good enough at what they do, they will be given a pass when caught. Unbeknownst to them, if any auditors catch them, then the "jokers" can start updating their CV.
POSIX is an open standard.
I agree with this for really large codebases, but I think you can get a surprising amount done before your program becomes "non-trivial" using a good dynamic language. For example, the website you are writing this comment on has been perfectly maintainable in lisp without any static typing for the past 15 years.
Cooking cooking cooking. You’ll eat probably until the day you die. Might as well figure out how to feed yourself in a way that sustains you and brings some joy to you and possibly to others.
What I meant was that if you focus on devops, likely you don't have to do other things that might annoy you.

Thx for the hint about the spelling. I corrected it.
Ethically vacuous doesn't mean stupid though, and I doubt they will jeopardize a lucrative career for a quick buck or bragging rights in front of their friends.
> Shocking

If you are so easier to shock, you will probably die from a heart attack at 30.

But seriously, it is an action of one bad employee at worst, this story (if it is even true) can happen in any company. Facebook gets spotlighted simply because it is large.
This has always been the case. Emacs could do all this decades ago. Genera/Lisp, Smalltalk, etc. to various degrees did this. And they all failed to make their case. Time after time. Hiding context has always been bad for understanding code. The same reason dynamic scoping went out of style the moment lexical scoping was invented. Or that GOTO is considered harmful. Or that we all prefer simple, small functions rather than multi-page monsters that do ten different things at once.
The number of votes on this post says otherwise. I find HN is good at solving these kind of issues and I find the stories behind these posts interesting.
Goodluck with that idea. I'll be sure to check back on this next year to see if anyone has made progress on it.
Clearly it's the same team working on all the projects...
Sigh... I’ll ignore the subtle dig and respond to this straight. I don’t want my daily driver phone that I rely on to do my real hacking to be a science experiment. I want it to be a tool that always works, and I want it to be somebody else’s job to ensure that. No one is perfect at this, not even Apple, but they are the best at it in 2020 and the App Store lock down is part of that. If Android didn’t exist, I might feel that a different balance would be optimal, but it does, and it’s thriving. I’ve developed for the App Store and while it’s a pain in the ass, I actually appreciate that There are standards that must be met and I can’t be undercut by a competitor who is willing to take shortcuts.
Crazy. I remember last year when the guy died from this thing. I live in the same area as The Fantasy Lake park where he got it, so it was pretty memorable. I wonder if this means that we are starting to see this virus more often. If we are why? Is this a result of global warming? Or is this just the availability heuristic? I hope it's just a mental bias on my part, because the alternative is terrifying.
I recently purchased a HP 48GX, and its portable IR printer buddy (printing out pixelated graphs onto a paper roll is oddly satisfying), because I always wanted one when I was a kid. I had an HP 48G that I cracked open and soldered extra memory into some 25 years ago, but I was always jealous of the 48GX. So, when it became clear the COVID-19 pandemic wasn't going to be even remotely short-lived I decided to finally splurge on a 48GX to satiate my childhood dreams (aim high kids!) and to see if I could get it to act as a probe endpoint for my company's Modality analysis software.

I absolutely love the 48GX, and playing around with it has been fun as I'd hoped (including the esoteric land surveying software expansion card), but if SwissMicros made its own version I'd buy it in a heartbeat. A 40 Mhz Cortex-M4F under the hood of a homage to the 48GX would be awesome!
I'd assume CS has the possibility to disable 2FA or change the phone number it's associated to.
I'm running "mvn install -DskipTests" w/ no files changed. It takes about 22 seconds and I see messages like

> Changes detected - recompiling the module!

> [INFO] Compiling 734 source files...

Perhaps we're doing something strange or dumb or somehow don't have incremental compilation turned on...
We have improved! You are correct. I was citing data from 2010-2012, when I was still wrong - we used to be 4th from the bottom.
30% of returned crabs die after they are returned to the sea? Have they ever determined the cause of death? Overdraw of blood would certainly impair a crab's longevity - even continued blood loss from technician error causing a fatal bleeding wound would do it. Analysis and care might dramatically reduce this loss. The new synthetic should be assessed and approved if it is OK for the use. Make me wonder if the current producer has lobbied to deny approval for crass purposes?
The types make those uis much more powerful.
https://en.m.wikipedia.org/wiki/Cloudbleed

https://news.ycombinator.com/item?id=13718752
Following your comment I think it is important to point out that it is not an either or type of scenario. Both could easily be true. There are powerful interests attempting to ensure that their business model remains viable ( if necessary, at the cost of other modes of transportation ), there are various ideological interests that see future as carless or largely the same ( just powered by different technology ), there are various cultural influences, decades of advertising and geographical considerations. In other words, people of America preferences ( if there is such a monolith ) are considered, but I am relatively certain they are not a primary driver. At best, they are one of many factors.
At this stage I would focus on understanding What people really do and what happens after one month so they drop off by interviewing a lot of them
We need a quick, cheap way of regularly testing all of this stuff at home. Vitamin D levels take a while to change, I guess people will want to know before they have a deficiency. Maybe the Series 7 watch will feature blood testing.
Then we would like an answer from FB about what occurred. The handwaving away about "nothing to see here" up and down this thread isn't a satisfactory resolution to the issue at hand. Someone alleges their IG was stolen and they allege that FB is batting away tickets about the issue. It would be nice to see FB respond to this. The urgency is compounded by the fact that Amazon had it's own little insider's ring of people providing "extra" services to people for a price.
The Facebook Oversight Board
Given the comments I've repeatedly received due to my accent, I'd disagree.

I'm a bit sick of being called an "ignorant hick" or a "fucking stupid redneck" just because everyone can tell where I grew up if they hear me speak.

Yeah, I can be outspoken, but being told that because I'm disagreeing about something technical in a professional setting really gets under my skin, and it happens a lot. People on the east/west coast really do hold it against you if you're not from the east or west coast.
> It's hard to build large monoliths without typing.

It's hard to build anything larger. In a microservice architecture one of the best things one can do is to define machine-readable schema (which is just a way to "type" RPC calls and messages) for all APIs/messages/events, and then auto-generate generate client code from it.

Most of the people who oppose typing must have been working on tiny projects, in small teams where they were co-authors of most of the code.
> click once to Mark as Spam and be done with it forever.

That doesn't always work.

I receive spam from a major US university to a Gmail account. Marking it as spam for over a year has done nothing.
Seconded. Duc is awesome. Thanks for your great work on it!
> Do you mind if I ask about the size of the systems/teams you've worked on throughout this process?

The "oh wow I'm never doing static typing again" bit happened entirely as a hobbyist, maybe working on a project with a friend or two. My early professional life was dominated by Ruby, mostly in smallish teams, that is, like, under 30 people. Then I got into working in Ruby open source, where the teams are much bigger, and aren't all working for the same org...

> occasionally start writing some C++ logic in an elegant functional way and realize that C++'s boilerplate makes it less readable

Not to be That Guy, but you should give Rust a try if you haven't yet. You may not like it, but it will make writing that style of code feel more like Python, often.

> I wonder whether I've just set a standard so high for the health of a system that many of those who dismiss typing's value don't understand that those benefits are possible

I think the issue isn't about possibility, but about realization. That is, I also did know that more robust static typing existed, but in 2008 I wasn't going to be writing a web app in Haskell, but in PHP or Rails. So it felt pretty academic. And even knowing that it's possible in theory isn't the same as experiencing it in practice. One of the things that frustrates me about this particular Discourse (static vs dynamic types) is that many dynamic language proponents (myself included historically) will understand that testing is a skill that they need to practice with in order to succeed, but don't perceive types the same way. It takes practice! You won't just magically see benefits immediately. They're a tool. But in order to justify doing that work, you have to be able to see a real benefit. I don't begrudge people that don't see the connections here and so don't want to put in the time or effort to realize the benefits.
There is another possible reason the manager feels it is necessary to have everyone on camera so that they can watch you work.

It is possible that it has become obvious that the manager's position is not needed and that the employees are doing their work without the manager just fine.

So they feel it is necessary to do this to justify their position.
It's possible that the new owner is notified when an issue is submitted and is able to mark the issue as resolved, or IG notes that someone is using the account and assumes there is no longer a problem.
Narrowing the lines also helps.
Anti-intellectualism in programming is fascinating to me.

The variance in skill between individual programmers is immense, and languages act as force multipliers on that. There are huge opportunities that emerge from pushing yourself to explore new paradigms and domains.
Semiconductors Are the Closest Thing to Magic in the Modern World
Maybe it is against the terms of service? So it'd be a violation of a contractual agreement?

But no money changed hands, so not sure about that.
Thanks for the recommendation, it touches a number of hobbies including GA. What else should I read? Seriously.
ITT: Proof, how the smartest crowd can be so gullible. These are the same guys who proclaim "Ads will never work with me"
Should it be expected that all programmers use these text editors and have access to these tools?

As someone that likes to keep his editor simple (to an extent--I'm using VIM after all), I always get frustrated when people try to introduce policies or procedures that work for them and their preferred setup, and who look at me as an obstacle because I prefer a different setup.

I'm of the opinion that code should be written independent of the tools used to understand and modify that code. If there's anything about the code that needs to be communicated, it should be communicated via the code itself, whether through naming patterns, comments, types, or any other methodology that can be encapsulated in a text file.

Other than letting each developer have their own preferred processes and coding environment, it also makes it easier to SSH into a remote box and know what's going on. A quick google shows that VS Code does allow for SSHing and browsing the remote files via VSCode. That's nice, but I don't know how well it works, and how much I like the idea of allowing another program to run commands on the remote box. I like that I can SSH into a box and use the tools natively available there to read and modify the code, and that the code is prepared in a way that makes it as easy as possible.
TIL concrete and cement are not the same thing. The words are often used interchangeably, but that's apparently incorrect:

https://www.cement.org/cement-concrete-applications/cement-a...
If it wasn’t China it would have been Thailand or Brazil. If outsourcing never happened, automation would have brought us here anyways.

The forces that push manufacturing to find ways to lower the cost of production are relentless.
You have to do it.

Years ago, I only did software development and realized I was terrible at marketing. I tried reading and watching videos, etc. It didn't really change for me until I sold my consultancy and did developer evangelism at a little company. It was 25 people at the time but everyone was sharp and happy to teach and experiment.

Later when I realized I was terrible at sales, I tired reading and watching videos, etc. Again, it didn't change for me until I joined a company to do technical training to sales engineers & reps. After a year or so, via osmosis and following the best ones around, I picked up a ton and can now do the basics relatively well.

Yes, it takes times. Yes, it's frustrating. Yes, it's exhausting. But it works.
I need to have the public DNS anyways so I find this way to be easier. I'd have to use CNAMEs anyways since the .internal addresses have to resolve to different IP addresses depending on the context.
Returning to nature is relative. The presence of long-chain petrochemicals in layers where they don't belong, would last for millions of years. And is evidence of that asphalt road.
This is one of the symptoms of possible anticompetitive issues. Facebook has a lot more power now and really no meaningful competitors. The more you learn the more you realize that competition can be a good thing and facebook may be abusing their position.
There is also https://github.com/CrunchyData/postgres-operator which seems more mature.
> Without the annotations, you can't look at code and know what is going on.

In Rust, type inference is only inside the function, which I think gets you the best of both worlds.

> In addition to that, you get the pain in the ass of having the compiler always complaining.

This has stopped so many dumb errors of mine. My types aren't complex enough to guarantee that my program is correct, but they're complex enough to at least know that my program makes sense.
Critical thinking and evaluating evidence.
everyone in the gang is doing it and the party is so much more fun once you took some ...
> It’s actually not even evidence that the account even swapped hands!

Do you honestly believe a jury of average people would agree with this proposition? It seems contrary to common sense.

Keep in mind that there is a significant difference between what meets the relevancy bar in court, and what is logically probative. See, e.g., https://www.law.cornell.edu/rules/fre/rule_401
The art of learning and educating oneself.

Our world is changing faster than ever and the only way to catch up and remain relevant is to master the art of learning. Learning through failures, learning through experience, learning through active discussion or learning through teaching—doesn’t really matter the mode, but find one that works for you and master this art. I find myself learning best through application, so I constantly find small opportunities in daily life and at work to try new techniques.

I’m believe that formal education (the kind you get an education loan for) is no longer sufficient to get ahead in life. Learning to self educate is key.
Failure to appear rates are consistently under 5% in NYC. The cost of incarceration is approximately $500/night. The most common reason cited for missing court, approximately 70%, is childcare/elder care.

Failure to make bail more often results in job loss, homelessness, etc.

The very simple economics of bail, beyond the obvious injustice of incarceration before judgement only for the poor, is a complete and utter failure.

The only justification for the current system is cruelty.

The singular position of conservatives is, simply put, is that there must be out-groups for whom the law binds, but does not protect, and in-groups for who. The law protects, but does not bind.
Static typing is very useful to write self-documenting code.
People made a lot more stupid things for less
Even at a neutral tax, carbon use should go down since it becomes more expensive than non-carbon alternatives. There two obvious knobs:

1) tax rate: $/ton of CO2

2) wealth distribution: 100% goes to state vs 100% goes back to population or anywhere inbetween.

The two knobs are independent. You could crank tax rate of co2 way up while still equally dividing the revenue generated and heavily discouraging co2 emissions.
All this stuff about Elon Musk. Well, I hope you aren't gonna decide to buy a Ford (Henry Ford, who found time to distribute the world's largest antisemitic newspaper between his auto magnate duties), or Volkwagen (pet project of Adolph Hitler, later leader in emissions testing fraud) or any of those other nice companies that have lent their support and wealth to racism or joined that emissions fraud thing.

And as to social responsibility, if we're talking about buying a different car, let's not talk about this in a vacuum. I mean we're talking about companites who became wealthy by building all those cars that were "unsafe at any speed" while fighting safety regs, or that have been moving factories to low wage low worker protection locations while fighting labor laws, or have happily produced Humvees and their ilk while fighting environmental laws, all in cahoots with our oil industry as it spreads disinformation about climate change and political gifts to those who listen.

As to subsidies from the government for car companies rather than people in need, well, if that bothers you, best not look into any recent factory location decision of a big manufacturing company pretty much anywhere in the world.

So if you're taking the approach suggested in this article, you might want to consider it in context, at least before you feel better about buying on of those cars from one of those companies that hasn't gotten quite as much publicity recently about its leadership or way of doing business.

Or you can buy an inexpensive used car made by Volkswagen and feel good about that.
Diagramming.

I'm serious.

The more I (as a developer trying to master design) delve into the product design space. The more I see that there is no more fundamental skill in design than that of constructing 'information architectures'. Essentially, mapping (or diagramming) the most important pieces of a design that you are making.

It is literally the key to creating a great design.

I wrote more about this in a guest post here: https://simpleprogrammer.com/information-architecture-develo....

Think about the design of Apple products, is it really just the way they look that makes you love them. Or is it more subtly, the way the work (of which UI is a component), and how that makes you feel?

Definitely worth thinking about.
>I see a lot of comments on HN the last few years that just assume the dynamic vs static debate was settled at some time. It never ended. Static typing merely became trendy because dynamic typing was the trend for many years.

Not always. If you examine history not everything is a cycle, depending on what you look at human efficiency improves as well.

Society goes through natural selection. The cultures, methods and behaviors that help us survive live on while methodologies that aren't as good tend to get eliminated.

The cycles in the process occur in areas not under selection pressure. It's called genetic drift and mutations in this area can occur willy nilly in random steps or even cycles if it doesn't have an effect on survival. The pressure in this case is survival of a business.

There's not enough cultural data on dynamics types vs. static types, but I feel in general the dynamic type thing was a mutation. Dynamic types were natures trial at a baby born with one kidney instead of two because one kidney is more energy efficient to maintain. Now it's being naturally selected out.

We'll never know for sure unless you live long enough to see what happens to programming in the far future. For something to be truly called cyclical it must be adopted by huge amount of businesses and eliminated and recreated multiple times.
I'd reference https://carsgenius.com/are-new-high-tech-car-safety-features...
If the Beatles Used Computers
i think it's pretty telling that this comment seems to have gotten the same reaction as any comment suggesting people commute by biking, walking, public transit, or any other method beyond personal vehicle.

most of the objections people have to giving up their car (my suburb was designed for cars...) would be perfectly solved by something like this. but the rabid defense of cars is out in force anyways.
Nominally-typed interfaces are still clumsy in some circumstances. For example, if I consume a
library with

namespace ThirdParty {
public sealed class Foo { public void Do() { } }
}

and I want to hide it behind

namespace MyCode {
interface IFoo { void Do(); }
}

the compiler does not accept ThirdParty.Foo as an implementation of MyCode.IFoo so I must define a wrapper

namespace MyCode {
sealed class ThirdPartyFooAdapter : IFoo {
public ThirdPartyFooAdapter(ThirdParty.Foo instance) {
_instance = instance;
}
readonly ThirdParty.Foo _instance;

public void Do() => _instance.Do();
}
}

which only gets more tedious as the number of methods and implementations grows.
On a related note, I would appreciate suggestions on how to regain my Facebook account, shut down without explanation a year ago. Despite its age (15 years) I barely used it, let alone for anything "controversial", but did regularly log into it. I have repeatedly tried to verify my identity by submitting an image of my driver's license, without any response.

I don't want to create a fake new Facebook account. I want my own back.
Science shows watching cute animals is good for your health
> IDE generated "type safe" code too often is simply "a class for everything" and bad abstractions
> Most of the time when I review code my remarks is: it should be a 10 lines function, why did you write 10 classes with 10 getters and setters each?

Java is an extremely poor example of a helpful type system. Consider OCaml, Haskell, Elm, and others which avoid much of the verbosity you describe.

Static typing is really helpful when doing refactoring. The fact that a statically typed program compiles gives you important assurances - especially post-refactor. It's not a silver bullet but it's also certainly not "playing tennis with the compiler" as you describe.
Dynamic tattoos promise to warn wearers of health threats
Personally, I prefer to use a variety of proven private ledgers with a variety of trust roots, independent audits, and insurance. Using a public ledger is not something I would invest in. I'm just saying Bitcoin is a wildly, incredibly inefficient public ledger service.
moving fast and breaking things are orthogonal