Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
Mawr
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
53 ms
·
871.
▲
by
Mawr
3y ago
Macros are a lazy design cop-out. They subvert the entire point of having a language in the first place - a shared understanding.
872.
▲
by
Mawr
3y ago
Marketing, lol. Erlang is a functional language. Functional . That alone has prevented its widespread adoption.
873.
▲
by
Mawr
3y ago
Is that more or less ironic than Java copying Go's goroutines and still struggling to add value types?
874.
▲
by
Mawr
3y ago
> Yes, there are people who create a mess with abstraction. This happens in every language, in Java people create FactoryFactories, in Haskell people play type tetris, in Ruby, people abuse metaprogramming and in Go, I assume some people
875.
▲
by
Mawr
3y ago
> I've never seen anyone argue that allowing unused variables is good for production. It's always been about facilitating the development process and debugging. Yes, I am aware now there are unused variables, but please just le
876.
▲
by
Mawr
3y ago
A tree map is just an example. More compelling ones are sets, ordered maps, a generic sync.Map, optionals (nulls suck!), abstractions over channels - badly needed! I wouldn't consider any of those to be academic.
877.
▲
by
Mawr
3y ago
The way you use the language has everything to do with the language. It is the language. A language is a product, and the programmers writing in it are its users. The same way any other product works. Would you be okay with buying a Tesla
878.
▲
by
Mawr
3y ago
From my experience, such type inference systems are awful in practice. Rust designers tried to do something like that initially but quickly realized understandability suffered greatly. You really do want to specify types manually, at least
879.
▲
by
Mawr
3y ago
> Even back when Go first came out, anyone who knew anything about programming languages rolled their eyes at pretty much everything about Go's type system, including the inference. The fact that it was even a point of concern shows
880.
▲
by
Mawr
3y ago
> In the final analysis, the relationship between the success of a language and any intrinsic qualities is very hard to qualify. Not at all. It's the same as with literally any other product. If it's good, people will use it. O
881.
▲
by
Mawr
3y ago
Horrible overhead. If the loop does something simple, like summing integers, 99% of time will be spent switching between goroutines. From TFA: "Because scheduling is explicit (without any preemption) and done entirely without the opera
882.
▲
by
Mawr
3y ago
I see. Hypothetically, if there was no fly-by-wire system on that airplane, both pilots' input controls would be coupled to each other, eliminating the possibility of confusion as to what inputs are being made. In fact, all potential U
883.
▲
by
Mawr
3y ago
Ah, the dual input nonsense, see my other comment on just that: https://news.ycombinator.com/item?id=36729484 . Here's the dual-input moment of this crash: https://youtu.be/e5AGHEUxLME?t=2876
884.
▲
by
Mawr
3y ago
Unless the plan is to remove pilots altogether, this line of thinking is just going to lead to more incidents. See https://news.ycombinator.com/item?id=36725176
885.
▲
by
Mawr
3y ago
> Would an input monitoring and control system like on large airplanes have avoided the crash? Not at all, for example Airbus aircraft "helpfully" average out the inputs. There's a dual input warning, but warnings are weak
886.
▲
by
Mawr
3y ago
Probably a better video from MentourPilot: https://www.youtube.com/watch?v=Dl-Fl66Jfao
887.
▲
by
Mawr
3y ago
That's fine, just be aware that the way you phrase your question is indirect and smells of the typical interview BS. If you'd like to find out how the candidate handles bugs, ask for that directly. Otherwise you're no longer
888.
▲
by
Mawr
3y ago
If anything, we've seen that the memory overhead of threads is unacceptably high, that's why everything these days uses thread pools / green threads / async. Multiprocessing is a niche - way too much memory usage, way
889.
▲
by
Mawr
3y ago
> Most commonly it's a question like "tell me about a time when you encountered a bug in production, how you discovered it and the steps to resolve it". And instead of answering the question, they tell me about what they _
890.
▲
by
Mawr
3y ago
> Do you think you perform well as an astronaut even though the selection process would have culled you? Yes, and it's not even remotely close. It shouldn't really be surprising, "code up an algorithm that some genius need
891.
▲
by
Mawr
3y ago
> An operator is either a function call or some simple built-in operation. In theory, yes. In practice, an operator is a simple built-in operation 99.999% of the time, which lures programmers into thinking that's how it always is. I
892.
▲
by
Mawr
3y ago
Consistency is table stakes. It doesn't override the need for good decisions, it's just the baseline. A consistently applied bad decision is still a bad decision. Tabs vs spaces is a great example, since tabs are just better ( :)
893.
▲
by
Mawr
3y ago
> But after some meditation on the matter, we’ve reasoned that ORMs do not suck. They are simply an abstraction with a quintessential pro and con—they abstract away some visibility and occasionally incur some performance hits. That’s abo
894.
▲
by
Mawr
3y ago
> People would ask "isn't immutable data expensive to reclaim and allocate". And his reply was always that the JVM's GC was just that good that the benefits to be gained from immutable data outweighed the marginal per
895.
▲
by
Mawr
3y ago
> and even English speakers do have a lot of silly typos and mistakes in their writing all the time Interestingly, the mistakes non-native English speakers make are different from the ones native speakers make. Thus, excluding non-nati
896.
▲
by
Mawr
3y ago
Because great care was taken for the 1.0 release to be a complete design. Most language changes since then have just been fixes. That's why Go 1.0 code is basically the same as Go 1.21 code.
897.
▲
by
Mawr
3y ago
Yep: "variable append has same name as predeclared identifier (predeclared) go-golangci-lint"
898.
▲
by
Mawr
3y ago
> Are humans limited to low-risk applications like that? Yes, of course. That's why the systems the parent mentioned designed humans out of the safety-critical loop. > Because humans, even some of the most humble, will still asse
899.
▲
by
Mawr
3y ago
This is a tough one. Efficiency is what tends to be the ultimate goal of any venture, and getting 5 things 80% done instead of 1 thing 100% done is incredibly efficient. Moreover, no matter what course of action you choose, it will have dow
900.
▲
by
Mawr
3y ago
Because whenever you want to store or transmit a string only the byte count matters (the size of the string). All the fancy unicode stuff on top of bytes is for the display layers to handle. The default should be grounded to the reality of
More ›