skysight-inc/HackerNews huggingface dataset:
There's a lot of dplyr code out there, and a lot of people who know most every part of the tidyverse by heart, making breaking changes like this so far into a frameworks life would cause a lot of unnecessary work in re-coding old code as well as requring people to re-learn syntax.

IMO for such a small adjustment the benefits don't outweight the costs.
and it's short and a bit befuddling
Please read again, it doesn't work for everyone. The TLDR from our own experience is that it's hard to make it work for juniors.
It is a very odd title which carries a connotation it probably didn't mean to.
Well, the strategy/all over the place, is something that can be argued.

But "Also, they're hiring, but they don't do equity, and they want you to be physically located at their office?". Well, it's up to them. You don't have to go work there.
I call bs on this.

HN #1 don't generate millions of views. You don't need manipulation to get #1 often, OCaml posts do it often even if the language is not used by anybody. Anyone can be rejected from YC. Anyone can struggle to raise funds. There are two
many vc to raise from all of them. How could stripe launch and post about a feature in a few hours? Sequoia is not the most powerful vc in the world, it actually doesn't mean anything. Same for YC.

I feel like nothing is true on this thread
TL;DR if you're feeling out of the loop: last week, a hospital group in Wisconsin (Thedacare) successfully sued to stop 7 employees from quitting and going to another hospital (Ascension), essentially forcing them to keep working against their will. The PDF here lays out in painfully hilarious detail why the restraining order was bullshit, and it was duly overturned today.

Longer version at NYT: https://www.nytimes.com/2022/01/24/us/thedacare-lawsuit-wisc...
A long way, indeed. In 2019, even zombies drink chardonnay.
https://www.youtube.com/watch?v=pRbjGwdcGxs
That must have been quite a fun ride! It really boggles my mind how you can get such cheap light high quality monitors now. And now we just waste them displaying these ugly orange web pages and Skittles colored TypeScript code.

I remember hearing about the Sony News Unix workstation, and being dismayed that it didn't run Sun's NeWS window system. ;)

https://en.wikipedia.org/wiki/Sony_NEWS

https://en.wikipedia.org/wiki/NeWS
I like how Nova is getting solid updates regularly. It must be tough to write a new code editor from scratch knowing that you are up against VSCode, Sublime and Jetbrains apps. I think it's going to fit in nicely though, for a large enough group of Mac users to be a sustainable venture.

I'm not quite ready to replace my existing apps but it's getting there.
They won in the end.
Yeah this is probably not too far from my daily routine, except replace coffees with energy drinks. Though I oversleep significantly on the weekends (normally aided by the effects/after effects of shit that’s worse for my brain).

It very obviously has major negative effects, but I just can’t bring myself to change it. I’ve tried once or twice, but I always return to this.

If life was a little more flexible, I think I could pull off biphasic sleep and be ok, but when I want to sleep I usually have meetings and when I’m wide awake it’s usual the middle of the night (writing this at 3:25am).
just being egalitarian isn't communist. small scale human society is quite equal, as i understand it. that kind of equality in a global society would be communism.

so, do we know dolphins aren't organized in one mass global society of equals? can any dolphin be trusted?
> I think Sublime HQ showed that making a multiplatform editor is not much more difficult, but hey...

The developers of Sublime have a different view on that:

https://news.ycombinator.com/item?id=29638810
The definition of "simple" and "complex" is very vague here.

If we use Clojure's philosophy of simple, Python is by no means a simple language, even without classes. There are a lot of special syntax like `with` `as` `elif` `for .. else` and concepts such as `nonlocal`, not even mention generators, decorators and lots of fancy stuffs, although it is easy to learn...

I don't agree with the author that static type makes things more complicated... Instead type make things much simpler and easier to reason about.. In the Python's example, the author indeed like to reason about static typed systems...

And about classes, it is just a leaky abstraction legacy we have to deal with now..
"so they would have accidentally re-introduced classes"
definitely no.. We can use structs, traits, interfaces or much better ways for abstraction than classes, which was introduced with ideas for inheritance.
Cocaine was isolated long before current drug laws, so I'm not sure I buy the argument "if it were invented today". Cocaine wasn't invented today and was banned.
I used to love Panic, but since I became a professional developer, I switched to better tools.

They seem to cater solely to amateur freelance. It's not a bad audience, I'm just not a part of it anymore.
Is the score what makes a student a winner, though? That is what parents have to learn to curb.
To me those nested sub sub sub SQL queries come from a similar place as beginner coders who tend to make nested IF statements - a lack of experience with the language.

For very complicated stuff, SQL does become very hard to read compared to e.g. tidyverse + targets in R.
I did the same thing when I played this game a long time ago. Also, I used Fwiffi a lot, because the same kind of tatic.
They are forced to participate in the consequences.

You can't tell someone who is arguing for decreasing excessive use of air conditioning that "well if you don't like it, don't use it".
Folders have the weakness which you describe. But that weakness is also a strength - folders are a form of encapsulation which, for example, discourages or prevents processes in one folder from destroying data in another folder (accidentally or maliciously). With just tags, that is a bigger danger.
How about

shirt -stripes

That should work on eBay at least.
On Windows I use AutoHotkey to swap Caps Lock and Escape which makes Vim much smoother. I also set it up so that it automatically disables itself whenever a remote desktop window has focus.
Well, thanks for that. I hate this native behavior.
In the first semester of COVID my mind crashed. I could not balance between job and time with my family, my wife had lost her job the week before COVID and the real state into which I had invested before COVID was idle. All this had happened after taking a promotion in a different city in Germany. The ambitious thriving younger me turned to someone full of dispair and self blame in few months. Those harmful feelings drag me into a depression that lasted around 5 months. I told my boss, but I did not take leave. I took running 3x week as mandatory habit, found a long term tenant for my Airbnb apartment, and set a mid-term goal with my wife: moving to Berlin. That boosted me for the first semester 2021. We moved to Berlin in July, found a nice school for my 2yo daughter, and my wife changed her career from Graphic Designer to Software Developer. However, after all those changes, my mind crashed again. Depression tends to come back and I still lacked of proper self-awareness.

I started to broaden my reading topics: psycology and neuroscience to understand my behavior; philosophy to improve my thinking; and physics to make my environment more relative. Besides, I engaged into long term therapy.

I have learnt to understand myself better, to lower my ambitions, and most of all, to prioritize my family. Besides, I decided not to make my free time productive: just reading, going to cinema, and taking walks out. That has reduced my anxiety and I have hope that soon I could be a more sustainable professional with more settled ambitions. I am thankful I did not lose my job and my family.

Everyone has different needs. I just wanted to share my experience
Enabling reader mode on my already existing Firefox web browser makes this page perfectly readable.

So very low effort as it already exists :)
Relay and pocket are subscription as well though, no?
> it is the story of JavaScript itself: a bad language that only works due to its popularity

This is a profound observation that gets to the heart of the matter with both VSCode and Javascript, both of which I resisted as long as humanly possible. What gives them the greatest utility is that they're immensely popular, in spite of not being the best tool for the job. I came to VS from 10+ years in Eclipse, and to Javascript as a main cross-platform client language only with the demise of Air/Flash.

But the "network effects" or, let's say, the value of the community-driven ecosystem, is undeniable. In 2008 if you wanted to build 3D games for web, you pretty much had to use Flash - and there was a sizable community maintaining libraries. The environment was imperfect for its own reasons, although certainly no worse than cross-platform JS is right now.

Maybe another way to state it is: If you get enough good coders around even the junkiest tooling, they'll make good code.

But I can't think of any other industry that really works this way, that gathers around a bad standard like buffalo around a waterhole in the desert. I think it's a major flaw in software development in the 2010s-2020s that in order to dance between these walled gardens, independent developers so often have to use tooling that wasn't made for the job. Flash/Air was a breach in all their walls, and that was a reason it had to be made an example out of.
People hardly ever use restrict. Anyway that's not the only advantage FORTRAN has. It also has native array support.
So you agree it does nothing to address corruption?
There's a world of difference between "simple configuration needs" and "complex configuration needs".

I will take a kubernetes deployment manifest as an example that you would want to express in a hypothetically perfect configuration language. Now, eventueally, you end up in the "containers" bit of the pod template inside the deployment spec.

And in that, you can (and arguably should) set resources. But, in an ideal world, when you set a CPU request (or, possibly, limit, but I will go with request for now) for an image that has a Go binary in it, you probably also want to have a "GOMAXPROCS" environment variable added that is the ceiling of your CPU allocation. And if you add a memory limit, and the image has a Java binary in it, you probably want to add a few of the Java memory-tuning flags.

And it is actually REALLY important that you don't repeat yourself here. In the small, it's fine, but if you end up in a position where you need to provide more, or less, RAM or CPU, on short notice (because after all, configuration files drive what you have in production, and mutating configuration is how you solve problems at speed, when you have an outage), any "you have to carefully put the identical thing in multiple places" is exactly how you end up with shit not fixing themselves.

So, yeah, as much hate as it gets, BCL may genuinely be better than every other configuration language I have had the misfortune to work with. And one of the things I looked forward to, when I left the G, was to never ever in my life have to see or think about BCL ever again. And then I saw what the world at large are content with. It is bloody depressing is what it is.
Sorry, but if someone makes statements about HN or YC that I know to be false, I believe it's my job to correct them—especially since we can't treat this kind of post in the way we normally moderate HN (https://hn.algolia.com/?dateRange=all&page=0&prefix=false&qu...). What do you think I should do instead?
Are techbros aware of the “techbro” stereotype?
Is it known from inside the start-up world that there's a growing and general feeling of hostility from the general population throughout the world against what they do? Is there some awareness that Silicon Valley is perceived as a group of childish but dangerous villains?

What's your opinion? Are you a techbro? How do you reconcile the critique and mockery with what you do on a daily basis?
Generally, in such cases, he may be right / wrong. It doesn't really matter if you ask me. The way I see it he already has a successful business. He doesn't need to pick on stripe / YC.

Building a successful business is difficult. A great idea / execution / being resilient will always get you a good share of the pie. That's the beauty of free market. Just because 1 or 2 people don't like you doesn't mean the whole world doesn't like you.

I think the author is making Stripe / YC much larger / bigger than it is.

If the author is reading this. Just focus on building and shipping the best product. Everything else will work itself out.
Modern C# is way too complicated, and I really dislike that. On the other hand, as I've tested out the new features, I have to admit that most of them are good.

Part of what makes this work is that wherever possible, they made the features compiler-only, which means I can use them without having to update my application to use a newer runtime or newer libraries. This means I don't have to worry that updating my code will break compatibility for existing users.

The other key thing for me has been realizing that a significant portion of the new features enable me to replace old verbose/bad code with new concise code that has desirable properties - it's become easier to reduce duplication and easier to write efficient code that avoids allocations and better exploits the type system.

Some simple examples:

the addition of 'in' parameters which behave like 'ref' but are read-only, which enables the compiler to automatically pass values by-ref when appropriate - this means you can replace existing by-value arguments with by-ref arguments and not break any existing code. It's really great.

they added 'ref' locals and 'ref' return values, which means you can do a clean and efficient mutable version of 'list[i]' like in C++ but without any of the semantic issues (storing the ref is explicit and the compiler prevents you from accidentally introducing memory safety issues.)

generics were expanded to allow you to safely manipulate pointers, which means that high-performance code no longer has to use gross tricks and can now be type-safe. in modern releases you can now finally do arithmetic with generic types as well (though sadly this requires an updated runtime).

The addition of tuple types bothered me a lot too until I realized that the tuples were silently updated to value types, which means writing obvious tuple-based code is actually highly efficient and I don't need to hand-write record types.

the async/await features have some major downsides, but on the other hand the compiler and library design teams built in a bunch of really wise escape hatches to let you work around issues. The whole state machine can be customized to swap out all of the internals, you can define your own types with seamless 'await' support, and the compiler will (in release mode) aggressively turn the state machines into structs so there aren't any allocations. It's really nice and transitioning my code to it has been a huge improvement.

linq is notorious for bad performance, but they made it possible to provide your own implementation of all the query operators so it was possible for me to define my own methods and make my linq queries not allocate at runtime. really nice (though it comes with its own tradeoffs).
And neither is Ariane for Android.
Learning curve has two dimensions, a short and steep learning curve can actually achieve a lot.

And that's why we call it a curve instead of "learning time" or "learning content", which are two different dimensions.
Brand can affect this according to anecdotes on /r/modafinil/
I usually use pandas' styled output to show tables in documents: https://pandas.pydata.org/pandas-docs/stable/user_guide/styl...

Since it is programatically generated, I don't have to manually fiddle with the numbers when the report has to be refreshed.
You've reminded me of the Southpark with Magic Johnson where they discover large amounts of cash is the literal cure for AIDS.
Because "intent" rule was easy to abused and was in fact abused often. Directly by people seeking or enjoying to be "toxic" (in loose meaning). All you have to do is to pretend little bit you are clueless again and again, despite being told again and again.

And to shut up targets - "he/she does not mean that", "he/she is just insecure", "you know how he/she is". If you cant prove intent, you had no grounds to even talk about that that person is doing to you again and again.
They broke a promise; maybe they lied when they made the promise.

I might say I'll not sell my house until my kids graduate high school, but if someone offered me $20M that could change my mind.
I used to think RTFM is really rude.

Now that i've spent time answering support questions on a forum for an open source project i'm involved with...

I still think rtfm is rude and wouldn't say it, but i 100% understand why people would want to say it.
>If a mine or other weapon is detected, the dolphin returns to its handler,

but who places mines there?

are those animals actually having missions or they just stay prepared?
This is what Bitcoin was designed for:

> Commerce on the Internet has come to rely almost exclusively on financial institutions serving as trusted third parties to process electronic payments. While the system works well enough for most transactions, it still suffers from the inherent weaknesses of the trust based model. Completely non-reversible transactions are not really possible, since financial institutions cannot avoid mediating disputes. The cost of mediation increases transaction costs, limiting the minimum practical transaction size and cutting off the possibility for small casual transactions, and there is a broader cost in the loss of ability to make non-reversible payments for non- reversible services. With the possibility of reversal, the need for trust spreads. Merchants must be wary of their customers, hassling them for more information than they would otherwise need. A certain percentage of fraud is accepted as unavoidable. These costs and payment uncertainties can be avoided in person by using physical currency, but no mechanism exists to make payments over a communications channel without a trusted party.

> What is needed is an electronic payment system based on cryptographic proof instead of trust, allowing any two willing parties to transact directly with each other without the need for a trusted third party. Transactions that are computationally impractical to reverse would protect sellers from fraud, and routine escrow mechanisms could easily be implemented to protect buyers.

Nothing in there about corruption.
Is this the study? “The mood effects but not the physiological effects of intravenous caffeine were similar to those previously observed with cocaine in studies using similar methods and subjects.”

https://pubmed.ncbi.nlm.nih.gov/7714788/
The Hyperloop Will Never Work, and Here's Why
YC is orders of magnitude smaller. So far, from what I've seen, those principles still carry some weight.

Edit: I think I might have confused things by using the word 'principles'. I'm talking about YC's investment thesis, as explained here: https://news.ycombinator.com/item?id=30070101.
$2K electric powertrain would give you even better returns.
Leaving final judgement to human decision makers, like every other company does their user support, right... Ok that was sarcasm - I expect the bigger the company the smaller the chance to ever be able to reach a human to discuss reversal of the illogical ban you just received. AI will rule also this world, purely for stocks price reasons.
We have a shared support inbox through Zendesk which has been manned by one part time employee, just scaled that to two part time as we hit $1.5M ARR. We have a FAQ, also via zendesk, to answer common questions. Otherwise we steer most requests to the common mailbox. We have built some apps in Retool to allow customer support to handle common issues like refunds, cancelling subscriptions, updating users, enrolling users to courses, etc. Then there is a slack channel where we can discuss special issues that come up.

We do not fix reported bugs unless they are deemed to be critical, and rather focus on shipping features as we think that brings the most value for us and customers in the long run.

Things are running well!
Can you elaborate on the coup vs resistance thing? Sounds interesting.
What would you suggest as an introductory reading?
I personally balk even against sized vectors. It's too easy to accidentally find yourself writing out long proofs for arithmetic theorems that could easily be verified some other way (e.g. using a SAT solver). Although Idris 2 makes great strides here with zero multiplicity annotations on the vector lengths which makes bailing out a more feasible option.

Instead of

append : Vector n a -> Vector m a -> Vector (n + m) a

I'd prefer just

append : List a -> List a -> List a

and a separate theorem

appendSumsLength : (xs : List a) -> (ys : List a) -> length (append xs ys) = length xs + length ys

Sure it's wordier in the short-term, but I think it pays dividends in longer term maintenance.

To be clear though this is a minority position. Other programmers will argue that putting the size parameter in the data type itself makes a lot of proofs essentially trivial and that at least in the case of sized vectors, the issue of "privileging a single invariant" is less of an issue, because the only defining feature of a polymorphic list is its length. I personally disagree with the merits of this trade-off for most production code, but that's starting to get into the weeds.
I the only guy that when first time played Mass Effect, thought that they take a lot from Star Control 2 ?
Absolutely right, and you even provided a meta-example. Words like “feel” to describe thoughts would rarely be used, except to indicate a conclusion reached with minimal or no reasoning. “Think” vs. “feel” still rages today in some circles, and it mostly functions as a proxy for the person’s age.

I’ve always believed that much of emergent online behavior can be explained by innate human social processes seeking a path to goal when the more likely paths aren’t present. Absent the normal cues of physical aggression or dominance/submission signaling, emergent processes bubble up and get adopted by the group based on utility. Our brains are constantly engaged in ways to determine our place in the hierarchy. For better or worse, most non-topical subtext in forums falls into “I’m better than you” or “we’re better than them”.

As far as the internet being nicer now than it used to be, I’m not so sure. As someone active on BBSs in the 1980 onward to the internet, there is a lot more passive aggression these days, most of it via leveraging of unspoken community norms. The notion of an “online community” couldn’t predate the concept of “online”, and the early BBS/networking felt more like operating a radio in isolation. The fact that you were interacting with someone far away was still a novelty. e.g., “someone from Singapore called my CatFUR line!”.
"Semantic HTML" is just a means to an end, which is creating websites that many people can use.

Just make normal websites normally, and you'll get like 95% of the way there. Use button for buttons, links for links, etc. Actually put labels on form controls. The beauty of using HTML correctly is that everyone benefits from it.
The crop is super unusual for professional photos. No photographer is going to cut into the subject's chin
Yet you are clearly not ignoring it.
Can’t edit anymore but this more or less exists already: dhall-nix can convert from dhall to nix, but unfortunately not everything done in nixpkgs can be converted clearly into dhall (due to nixpkgs’s use of some non-strongly typed parts and general recursion)
I deal with it by not installing it.