jkeisling/hacker-news-corpus-2007-2022 huggingface dataset:
> Quality > quantity (just because a language is widely used doesn't mean it's well designed)

I'm friendly to the argument that there are often better things than the popular things (and specifically things than notable advantages over PHP for developing software), but not to any pretense that PHP isn't "well-designed."

As far as I can tell, it's well-designed as a tool for moving in small conceptual steps from static web documents to dynamic documents to (nowadays, for those who want it) well-organized apps on easily available commodity hosting. There's little that competes with it here in terms of the deployment story and ease of the first part of the learning curve.

Moreover, despite the collection of warts and WTFs, it offers more or less the same commonly-used abstractions in its celebrated scripting siblings. Yes, yes, I know, there's all these differences -- you miss the syntax or Tennent correspondent blocks or monkeypatching or whatever is important to you. Rock on with that. Just don't be surprised when choosing PHP over Ruby or Python doesn't seem to turn out to make a difference between success and failure of a product/project.

> I'd suggest reading PHP: a fractal of bad design[4]

Like most good hit pieces, there's some truth, but it suffers from the focus illusion among other things.
I switched to this as well. I was running into problems with pages refreshing flash video ads causing memory to leak quite badly if a page was open too long. Once i switched flash to click to play, the problem went away.
http://en.wikipedia.org/wiki/New_York_Times_Co._v._Sullivan makes it very, very hard
I'm pretty convinced that this quote is meant to be sarcastic.
Black Mirror reminds me a lot of Jam, also by Chris Morris.
A mathnet reference, wow. My favorite show as a kid, I even show my kids it today.

Edit: Found the episode for you

https://www.youtube.com/watch?v=Tj-XMRu_q4s
> I honestly don't understand using a service to store bitcoins when a paper wallet using keypairs with offline-generated addresses is so readily available.

I honestly don't understand using a bank to store dollars when using a wallet is so readily available.

Do you not see the flaw in your thinking? People with large amounts of money don't want the responsibility of securing their own money themselves. Storing Bitcoin's despite what people may say, is not trivial for the average person.
Hitler probably seemed better at first than the group he replaced. I worry that with ISIS we have the same situation.
Matz: community members can deprive of the power of the
dictator, when he apparently loose his ability to make rational decision. After deprivation, the community will make up new rules, hopefully flexible ones. I don't want that situation, but the day will come sooner of later

I think that's a very disappointing point of view, and I say that as a someone who used Ruby in the past. In light of this I can say it will not be my go-to language in the future.

I feel like after a certain point of community uptake, a project surpasses any single developer and becomes a part of that community in and of itself. I understand wanting to maintain control of your pet project, but for community projects I feel like there should be community control. That said, you should have the freedom and the right to do whatever you want with your pet project. Maybe the solution is for the community to fork so they can make the changes they see fit.

Given the way the MRI devs and Matz in particular have responded, perhaps it's time for the community to fork Ruby if they don't like the way Matz insists on remaining the dictator. It's his project and he can do what he wants with it, but we don't have to use it.
What sorts of stuff do you guys have planned for indexing methods?

It looks like right now there's full text search which is already really useful. I'd be really interested to see some more structured search based on the AST of the code for example. Hoogle is a really good example of something similar for Haskell, admittedly that relies heavily on the strongly typed nature of Haskell and probably won't work for Ruby.

Very cool stuff guys.
At least one of the differences between flowcharts and these dependency charts is that dependency charts are nondeterministic; that is, at a given point in time, you aren't just at one state. In the example given, you can be both at "unlocked door" _and_ "found oil can". This is unlike a flowchart in that a flowchart explicitly has a single state pointer.

Ironically^1, this is somewhat similar to dataflow programming, where you have nodes, edges, and you can require multiple incoming edges to fire before the node does.

[1] The irony is that flowcharts are not the analogue to dataflow programming.
I kind of wonder what off-the-grid means?

Does it mean without any normal roads? Well you can find that in VA easily if you know where to look.

No power lines? Harder, unless you can accept that power line exist but you simply won't use them.

No water pipes? In a rural environment, having central water would be rare.
Everything is free if you don’t count the price you have to pay.

In this case, the price is working like a maniac 24/7 and living in a tiny shack without electricity.
I don't know much about metal-air batteries... Based on some quick reading, it seems most of them use water as the electrolyte solvent. Wouldn't they have issues with ambient temperatures north of 100˚C?
In general, because those languages essentially declared things were 'bad' that aren't bad at all. Sometimes you have to mung data. Pull it in off a serial bus, strip out the header, rearrange it for the next thing you are sending it to, and so on. Other times you really do need/want some kind of dynamic dispatch or duck typing. You can do that with void* and function pointers. Ugly, yes, and error prone to boot, but possible. These days hardware is a lot faster. Back then I was writing my own graphics implementations because Windows GDI was way too slow for what I was trying to do. Just for a pretty ordinary app. Today, I am still concerned with how my data lies on the CPU cache. I need to access cards with C api's. It is nice to think about things like rust, but in my current company we have 2 decades worth of C&C++ code. It works with everything; we know that if a new card comes out it will come with a C API, we know that we can hire C programmers. The debuggers are astonishingly good (seriously; compare Visual Studio's debugger to thrashing around with some open source debugger for some other language. It's a production language, for professionals, to get shit done. It's not going anywhere for a long, long time.

Not putting down the other languages - I use Python whenever I can, as it is such a joy to use. Anything other than C/C++ for most of my production code? Not in the foreseeable future.

If you feel the urge to quibble about that last sentence, recall how much existing code I (and by extension, the world) already have. Never, ever, can we afford to throw that away. Shall we write some horror show of Haskell, Erlang, Javascript, and Clojure interfacing into 'legacy' code that in fact would need to be updated all the time? No thanks. For all the hand wringing about memory management, between smart pointers (rolled my own before there were library versions) and RAII I can't remember the last time I spent a serious amount of time chasing down a resource leak. Maybe early 90's? I dunno, but it seems that I spend more time debugging Python code where I am passing in a variable of the wrong type and Python just silently spits out the wrong thing in response.

Would I like a 'better' language than C? Absolutely! Do I see one in my future? Not really. Because it is actually awesome at doing the kinds of things that need to be done.
It actually exists and you can use it today (note: mac only for now):

https://www.coscreen.co/getstarted
=> Gets you to the download page, download the DMG, launch the app, collaborate...
My philosphy is decentralization, in large part because of the nature of information flow.

But in the context of the system we have now, it really is silly to say that an entity as large as FB "knows" something.

And further, in the context of the lawsuit, trying to say that one company should be responsible for the internal financial situation of another enforces centralization -- and will ultimately favor large companies.
>Should an Art Teacher get copyright rights on all their students' work?

In quite a lot of cases they do (or at minimum the right to reproduce and distribute such at will without compensating the originator of the work).

https://www.trademarkandcopyrightlawblog.com/2012/05/bear-an...

https://designobserver.com/feature/who-owns-student-work/126...

https://www.huffpost.com/entry/who-owns-student-artwork_b_64...
Sorry for letting you all wait for the Windows client. We'll work on it but we had to start somewhere and coin-flipped on Mac, kind off. As mentioned further below, CoScreen is built mostly on an platform-agnostic stack so we hope it won't be a gargantuan effort to support Windows. But stay tuned (and sign up if you want to stay in the loop).
If demand for spectrum is low in a certain area and there is plenty available for these pirate stations, then just have an easier process to become legit. There obviously needs to be some sort of process to make sure everyone is playing fair, you can't have total anarchy on the spectrum but there could be less burdensome application process for lower power stations that can prove they are operating for the common good. If you are just playing music and running used car dealer ads, you can go through the normal registration process.
I have not found a startup that would be willing to pay that much plus equity, or even paying that without it.

I would be okay taking a ~40% cut with good equity if I felt the startup / team was extremely solid. I have a friend who did that who made the same as I did. My friend does not regret the decision as the company is doing very well.

(I did not consider joining because of location - north bay vs south.)
> The Usona Phase 2 trial plans to enrol 80 subjects, randomized to receive either a single active dose of psilocybin or an active placebo containing niacin.

Blind testing in this case seems silly. It’ll be obvious to both patient and doctor pretty quickly who got the high dose psychedelic and who got placebo
Probably not... there’s plenty of things that don’t really need to be mobile first.
That "100k hits" figure you quoted surprised me, so after going over their page, I just wanted to add here that that's "100K hits/day", which translates to just 1 query per second, which is unreasonably conservative.

In a post [0] from last year, Expensify tell how (with some modifications) they managed to get sqlite to 4M qps on a single powerful server running 192 cores. That's 20K qps/thread for their huge table, and they got over 200K qps/thread for a table with a single row (demonstrating how little overhead sqlite has).

[0] https://blog.expensify.com/2018/01/08/scaling-sqlite-to-4m-q...
I worked with some guys once who put every HTTP REST request in to AMQP. And every response. There were temporary queues all over the place to allow for communication between the front end and back end servers.

It was a complete joke of a system.
Here's the actual patch (http://marc.info/?l=linux-kernel&m=128978361700898&w...), with a bit of a summary of what it does.

I don't have enough context to fully follow it, but it sounds like it sets up a better hueristic for grouping related processes into task groups in the scheduler.
Generally I have two browsers -- chrome for google apps, and safari/firefox for everything else. The latter is logged into my normal gmail account.
How did Apple screw up?

Did they produce any PR besides the one teaser page on the iTunes site, which ran for a day?

Is it their fault that the tech media ran wild with it?
I was amazed to see someone say yesterday that 3/4ths of music is still sold on CDs. I can't remember the last time I even considered buying a CD.
Hooray, another URL shortener! The web is becoming a better place every second.
It's gonna be more huge!
But sometimes I hate the guns :(
CD sales still account for a greater proportion of sales than downloads (though likely to change shortly).

I think the end of the end is still some time away. Vinyl has supposedly been dead for some time but they still seem to sell a fair amount of it.
Thanks for the correction. I assumed my general statement wouldn't be universally correct, but I didn't expect the number of exemptions to be nearly that high.
This is a clear shot across the bow of Dorsey's empire. Given Square's huge portion of their revenue coming from readers, things have to be looking bleak over there.

Square is down 61% since October.
For whoever downvoted me, calm down! dang@ and I had a conversation over the weekend on a different post about the HN community. I didn’t leave a comment today about it.

I asked him to show me data that confirms that the HN community is not what I think it is. I partially believe this is why he added the link in his comment since he added a similar link in his reply to me over the weekend.

And his comment today was basically what I said in the other post. The HN community is going to behave themselves on the millionth hate post about Electron or Amp urls. But they’re going to show their asses on these sort of posts.

dang@ basically agreed with me but then said “But still, no the community is fine.” You can’t use silly Electron posts to prove that point.
On Android there is an app called Delta Chat which is similar.
Thank you for highlighting the need for electoral reform, and pointing towards the "winner takes all" nature of most US elections as being the poisonous tree from which these fruits keep falling.

A proportional voting system would both allow new parties to emerge and prevent extremist or divisive candidates from leading those parties. That in turn would give people more options and make them more likely to vote (and less likely to excuse bad actors within their own party).

I would be careful about directing the blame at "single member districts", though. In the US, the most popular type of reform seems to be Instant Run-off Voting, which has its flaws, but avoids the potential criticism that multi-member districts face, namely that a voter's elected representative may end up living much further away from them. (Personally I'd rather a representative who is closer to my political viewpoint than to my physical residence, but I think that much of the criticism for multi-member districts are in bad faith anyway, and thus not amenable to reasoned debate).
They aren't really though. There's nothing particularly special about DC. The same sentators and congress can meet anywhere to do their job, and just ignore these folks
1. You don't swipe your vote every time you go to the gas station

2. You only get to vote once. Unlike credit cards.

The comparison is such an insane false analogy as to render the rest of your comment meaningless.

You clearly have no clue how the system actually works if you think that comparison is reasonable at all. Go read up on why voting is secure instead of Googling more doggrel that fits your confirmation bias.
There are no customers. If you’re not paying for it, you’re not a customer: you’re the product.

Whatever WhatsApp/Facebook do to “take care” of the “customers” is just like pig farmers taking care of pigs.
Your timeline is wrong. The hiding of the tweets and the account lockdown happened after the police had already begun to re-take the Capitol; I want to say several hours later.
If Slack data isn't important, then it would have been fine to use one's default low-value password, right? So now some attacker has thousands of copies of the word "dragon".
You're not at all alone, many people describe the same experience.
tar czf ../foo.tar.gz *

(GNU tar can do it all in one command)
People have some funny ideas about the "explosive detector" machine. It can rightly be called an "explosive detector" in exactly the same sense that the TSA clown who takes everyone's regular-sized liquid containers and throws them away can be called an "explosive detector."

There might be an explosive there, but there almost always isn't, and the whole thing is for show.
How many are there? AFAIK the last technical issue was a NASDAQ break during the FB IPO, which was a little over a year ago. One severe error per year is not a lot, I think.
Meta (sorry): The fact that title submissions keep getting editorialized is reducing any desire to contribute to/visit HN. Mods, if you're going to edit submissions, remove the attribution/don't attribute your title to me.

For those wondering, this article is written by Bruce Schneier, and this is indeed "terrifying".
And if convicted it would move onto "at least he wasn't summarily executed, he can appeal"

"The system working" here in the UK unfortunately can mean serving only 16 years in prsion before a conviction is overturned: http://en.wikipedia.org/wiki/Birmingham_Six

Relevent bit is under the Trail section:
"On 12 May 1975 the six men were charged with murder and conspiracy to cause explosions."
"Forensic scientist Dr Frank Skuse used positive Griess test results to claim that Hill and Power had handled explosives"
Maybe it's a stupid question, but why they don't hire two guys to work 10hrs for $80k instead of a one working 16h+ for $160k? Especially since you mention working on multiple unrelated projects simultaneously. This is just insane for me.
Every time I visited the US I was subject to so called "secondary" checks that looked more like interrogation, so I understand the author's feeling very well. Last time I was denied entry at all. I'm just a regular remote IT contractor living in Canada who happened to have a passport of an Eastern European country. I don't want to come to the US anymore because of this humiliating experience of crossing the US border. I'd better focus on serving customers in Canada. Canada feels much more like a country for people .
The poorer you are the less choices you have.

No, the poorer you are the less attractive choices you have. But you still have the ability to weigh your choices and pick the one that poses you the least risk, all things considered.
This is a fantastic interview, and highlights the most common mistakes that I see early stage companies making:

1.) Seeking someone in their own image who is willing to work 18 hour days, including an unwillingness to look at candidates who have a different (or non-startup) background or are a missing a few buzzwords from their resume.

It might work for your first few engineering hires, but scaling it becomes incredibly difficult and brings with it huge lost opportunity costs. The faster you move out of your comfort zone, the better.

I know one well known start-up who has been trying to fill a role for over 4 months, and has gone through two dozen candidates, simply because of a strongly held philosophy by the founder who mandates 80-hour work weeks which effectively eliminates anybody who is married or has kids.

2.) Using fizzbuzz technical coding challenges as a proxy for how effectively someone will contribute to the team & your company hitting its product roadmap goals.

3.) Accurately & honestly assessing where you stand, and realizing that if you're a 7, trying to hire a "10" can be a recipe for failure. This is especially true if you're trying to pay below market rates.

4.) Moving with a sense of urgency and speed. If hiring is really your #1 priority, being willing to skip lunch with your monthly lunch with mom in order to make time for a hot candidate. In general, working under the assumption that anybody good is going to have multiple paper offers in hand, is a good philosophy.

5.) Decisiveness. "Making the offer when you've found the right house" vs. changing your mind because the color of the window boxes is wrong. Avoiding decisions by committee.
It's 1/10 of a cent. So $6.94 means there are 6,940 people using it.

http://pinboard.in/help/fee/ (normally in a "why?" popup when you would make a new account)
the system was actually quite a bit larger than they ever talked about. millions of users, etc.
It's number of users * $0.001.
Completely unusable on my Macbook. It's a 4 year old machine though and not a Pro.
So sorry to hear this, but maybe this could open up new opportunities in the bookmarking market. To quote Seneca: "Every new beginning comes from some other beginning's end."
I friend of mine wrote on that spot, but regarding rants.
If your want to rant on something its likely someone else already did
http://devnull.li/~jerojasro/blog/posts/rule_no_36/
Sorry for the delay in replying, I was away.

> Dude, this is NOT theory. I watched it happen.

No, you thought you saw it happen. "git push" does not remove data, it can only add new commits (and their contents) and update refs (branch names and tags) so you were mistaken in what you saw.

> Sure, maybe the data was actually there

Yup, exactly. No data was lost. It was actually there.

> and a git god could have unwound whatever brain damaged state "git push" stuck the repo in

I like the "git god" moniker. Thanks! But it's not really that complicated. What probably happened was that "git push" added a new line of commits, and updated your branch name (let's say it was "master") to point at these new ones. The old ones were still there though, they just weren't an ancestor of your current "master" so you couldn't see them immediately with "git log".

If you wanted to get your repository back to its previous state, you just needed to look with "git reflog" and see what commit master used to point to, and then set it back to that. That's the only change you needed to make. The repository wasn't broken in any way, it just had a few more commits in it.

Now, you might say that "git push" shouldn't make it so easy to do this: and you'd be right, so it doesn't. You need to have used "--force" to get it to behave in this way. Really, if this is a happening regularly, you clearly have a broken workflow. Perhaps introducing some Code Review in there would help? Gerrit maybe?
But all of those criteria are already true in both the US and the UK. I think that was his point.
Honestly, if I'm walking down the street and I see a cop, I tend to ... behave ... better. (Not that I go around looking for trouble or anything.) If there's a cop watching, it doesn't really matter to me whether or not he's got a camera on his glasses; either way, I'm being watched.

If this cuts down on police abuse (and other wasteful crap), then I'd say the pluses outweigh the minuses.
I often read that Ruby (or Forth, for that matter) is great for DSL because you can "misuse" the language tokenizer/parser directly as parser for your DSL, as long as it's similar enough to ruby (e.g. tokens are whitespace delimited and such). Unfortunately, Ruby's macro power is nowhere near LISP.

I wasn't aware that this is possible in LISP, too. That's really great!
But that's not to sell to the end user, but to make the ability to put those Intel Inside etc. stickers on your product a valuable feature for OEMs when considering whether to buy from Intel or a competitor.
There is another bit of biological wiring that skews your analysis - proof of value. Two employees, A is loyal, B has a competing offer? Well loyalty is good but I'll wager that most managers would assume that B's competing offer means they are "better" and give B both the promotion and the raise, while A gets to go on being loyal (or in management-speak, a sucker) for another year.

Same reason it is easier to get a job if you already have a job.
I don't believe you need to be incorporated to have a merchant account. I've had a merchant account without incorporating (US). Get in touch with a bank directly for info on how they can help you.