Live data from Hacker News

Where have all the hackers gone?

morepablo.com

141–150 of 351 posts

Re: Where have all the hackers gone?

#141
post #80

Earlier quoted context omitted.

There are just a lot more programmers today. All the same hackers and stuff who used to be there are still there, but there's a lot more of everyone else. If Harvard started admitting 50,000 students a year, the density of Zuckerbergs would be a lot lower. They'd still be there, but harder to find.

> They'd still be there Unfortunately. Not sure the concentration of Zuckerbergs and the concentration of hackers is particularly related, except maybe the latter attracts the former. Zuckerberg's no genius, he was in the right place at the right time near the right people. He's competent, but no more than most of the people here. His morals (or the flexibility thereof) were what made him rich.

I really wish I was so brimming with self-confidence as to say that I'm just as competent as the guy who founded the eighth or so most valuable company on Earth, and he was just in the right place at the right time.

Zuckerberg is clearly a not-great guy in some ways, but the reason we're all posting on Hacker News during the workday and he's running a centibillion dollar company is because he's an immensely intelligent and talented and focused man and we are... well, the kind of people who post on internet forums during the workday.

Re: Where have all the hackers gone?

#142

Sorry if this is off-topic but I often see in HN (either in articles posted here, or in the comments) lack of empathy. He talks about a "friend" and then proceeds to say things like "To be honest, I suspect he didn't know or think much about them" or "This was not a fruitful conversation". How is that supposed friend, who might very well be aware of this person's blog, going to feel after reading this? Is it a cultur…

It's an interesting notion that you can't disagree or find faults in your friends, especially if we adapt the Anglophone definition of a friend as a loose sorta sustained contact. Would people rush to criticizing in this manner if someone truthfully wrote that their friend has problems hauling 20 kg weights up four floors of stairs?

The description is undiplomatic, could be written in a more roundabout way, but this could be read as even more haughty and rude. I'd say that as human collectives we need to maintain a grip on reality, and it is wasteful and dangerous to live in a web of polite lies.

Re: Where have all the hackers gone?

#143

Maybe I’ve just fallen out of love with the nitty gritty of programming but this blogger sounds insufferable. If I’m wearing a duck duck go shirt and someone comes up and wants to talk about how DDG uses/used bing I’m not going to engage in this conversation. Who the fuck wants to talk about the Golang GC just because you have a Golang shirt on? Also, how condescending to assume the person doesn’t think about it at a…

> Who the fuck wants to talk about the Golang GC just because you have a Golang shirt on?

ummmm me

(I mean I hate Go but in a hypothetical world where I liked Go, me)

Re: Where have all the hackers gone?

#144
I like the author's division of the issues into soil, surface, and atmosphere. I've definitely made project choices on all three.

Ruby is not great, not terrible. I enjoyed learning the language. I didn't find much in its runtime or its constructs to recommend it over Python. But I haven't used it in years because the first medium-scale project I wrote in it I put down for two years, came back and found that Ruby on Rails had changed so much that my project wouldn't build; every dependency had gone through a major revision and Rails' preferred package manager had changed. The prospect of doing a lot of work to re-tool a build environment that had worked perfectly fine soured me on further activity in the space. This was nothing wrong with the language and everything to do with the ecosystem being so young that "the adults were not (yet) in charge."

Contrast C++. One of the most supported languages on the planet; adequate performance for my needs. I can't stand the constructs in the language itself. The templating system couples badly with other language features and they "fixed" it by cutting firebreaks in the parse process via newly-required keywords and template parse rules (all taxonomies are broken, and there's a touch of atmosphere here too; I got to ignore all those changes for a decade because MSVC basically told the standards committee to pound sand until 2017). It's a Turing-complete language, you can do everything with it any other language can do... But doing it by having a template resolution hinge on the implicit typecasting of an integer constant `0` makes my skin absolutely crawl.

Re: Where have all the hackers gone?

#145
post #53

His comment regarding preemptive vs cooperative scheduling, so which is it? Does Go have preemptive scheduling or not? I was under the impression that it did get that somewhat recently? Could anyone point me in the right direction?

It's preemptive, I just tested. Spawning an infinite loop inside a green-thread while limiting the program to 1 core does not freeze the program. This will output "hello" and exit normally as expected:

    package main

    import (
        "fmt"
        "runtime"
    )

    func infiniteLoop() {
        for {}
        fmt.Println("world")
    }

    func main() {
        runtime.GOMAXPROCS(1)
        go infiniteLoop()
        fmt.Println("hello")
    }
For more information, see Go's source code which is exceptionally well commented: https://go.dev/src/runtime/preempt.go

Re: Where have all the hackers gone?

#146
I feel like many developers completely misses the point(s) of Go. It is not perfect, but it has a few nice properties:

* Simple use of concurrency is simple to use, easy to get right and very useful. Like WaitGroups.

* Go was written partly to solve the issues that Google had with C++. Dependency trees that grew too large too quickly was one of these issues. It may be annoying tha Go disallows unused imports, but it helps to keep the dependencies under control.

* Go is a simple language with fewer keywords than C. It is easy to parse and the build times are excellent, even for larger projects. Short build times is not only nice to have, but it changes how developers iterate and work with code, in a good way.

* Arena allocators can be used, and the (unusually efficient and fast) garbage collector can be paused. Unwanted garbage collection can be avoided.

* The tooling is excellent: cross compilation, profiling, tracing, testing, code formatti g, benchmarking, dependency managment and even fuzzing are all built in and available by default.

* The Go, GCCGO and TinyGo compilers are available. GCCGO can produce smaller executables and TinyGo targets embedded systems.

* You can (mostly) read source code just by looking at a single source file at a time. Errors are handled at the spot or returned, not catched elsewhere. Interfaces are used sparingly. There are structs instead of classes and they are not inherited.

* The main question in Java is "what IS it really?" while in Go it is "what does it really DO?". This is often a worse question for simulators, but a better question for getting things done.

* Rust is correct and nice, but may provide friction while programming, because it is strict. Go provides more friction than Python, but less than Rust, because it is less strict. For better and for worse. For anyone that think Rust is too strict compared to the benefits that Rust gives, Go may be a better choice.

* Go is a goos fit for servers. Look at the most starred Go projects on GitHub.

* Go has minimalistic origins.

I really like Go. I just wish it had an "in" keyword like Python does, and the ability to mark regions of code to have Rust-like strictness.

Re: Where have all the hackers gone?

#147
post #55
post #45

Earlier quoted context omitted.

The entire point of Go is that it's designed for less talented programmers, i.e. people who can't understand or don't want to put in the effort to understand those things. That's the whole appeal of many programming languages, they massively simplify the mental model (for a price). I've been a lot happier and more productive since I switched to a slow language (which younger me would have been sad to hear).

Sure if you consider programmers at Uber, Google, Docker/Kubernetes "less talented".

google hires thousands of out of college kids… i'm sure not all of them are as good as a seasoned hacker.

Re: Where have all the hackers gone?

#148
post #55

Earlier quoted context omitted.

Sure if you consider programmers at Uber, Google, Docker/Kubernetes "less talented".

I think they are referring to the famous Robert pike quote (though I disagree that it implies a lack of talent from its users, it just means that the language was designed to be practical): "The key point here is our programmers are Googlers, they’re not researchers. They’re typically, fairly young, fresh out of school, probably learned Java, maybe learned C or C++, probably learned Python. They’re not capable of und…

Yeah I knew it was referencing that. Thanks. It's just tiresome and lazy to use that misquote and I see that often.

I don't even code in Go these days but I hold HN to a higher standards.

Re: Where have all the hackers gone?

#149
Maybe they went to Shenzhen, after the US electronics manufacturing industry left the country in search of cheap labor and higher profits? Of course this is mostly hardware hacking:

https://www.thatsmags.com/shenzhen/post/8620/touring-the-har...

However, software hacking also requires access to the low-level components and as abstractions get more and more complex, unpacking them becomes too much work and people become architects, not hackers, expecting all their tools to work only as documented and building with only the pre-approved, security-tested Legos (note that many of the software hackers seem to have gone to work for the NSA and other state-sponsored hacking groups, and their exploits have escaped into the wild, leading to the heavy focus on security consciousness, which also discourages the use of hacks to solve problems).

Note here 'hacking' means using features of systems that aren't described in the manuals and documentation to achieve some goal, rather like custom modifications of automobiles - and with modern cars, that just gets harder and harder to do.

A better title might have been, where have all the experimental risk-takers gone? (A: most of them were eaten by the Borg).

Re: Where have all the hackers gone?

#150

Sorry if this is off-topic but I often see in HN (either in articles posted here, or in the comments) lack of empathy. He talks about a "friend" and then proceeds to say things like "To be honest, I suspect he didn't know or think much about them" or "This was not a fruitful conversation". How is that supposed friend, who might very well be aware of this person's blog, going to feel after reading this? Is it a cultur…

Yeah-- that's always been the case in more technical crowds from my experience. I switched to HN from Slashdot like a decade ago because the Slashdot crowd seemed to get overrun with folks like that. Recently, I most frequently notice it when people discuss potential job losses from AI automation. Regardless of whether or not this is good for society, it's absolutely bizarre how many folks around here (and some other…

It's been my experience that in conversations about AI, literally nobody actually wants empathy. People want to talk about empathy and deplore the people they disagree with as lacking it. The underlying assumption and implication is that a person experiencing genuine empathy would both display it in some legible manner and agree with the speaker's positions on things. In short, the idea of empathy is weaponized.

Perhaps unsurprisingly, this falls down on several points. It's just a disgusting way to talk about your fellow human beings when it's your own failures tripping you up. I imagine this is a cognitive limitation directly related to their own empathic limitations.

In conversations about AI, people usually want changed behavior and similar concrete shifts. Empathy is viewed as a lever to produce those changes. When the changes are not forthcoming, the conclusion people reach is that clearly it's because the emotional experience of empathy isn't happening. This avoids considering awkward and unpleasant questions such as if there may be other good reasons why those changes are not forthcoming from a person who may be experiencing sincere and genuine empathy.

I spent a lot of years as a professional software engineer. Many of those left me daily on the receiving end of people for whom calling on the empathy of others was their preferred means of shaping behavior. I had to learn to set aside those emotions in order to preserve my own judgment. Now I see, daily, the same kind of people deploring that the tools they taught me to resist are not working.

What I see in this blog post is someone relating a story in which an awkward encounter is anonymized. The anonymization is itself a form of empathy in action - the person is not called out specifically, only the conversation. There's plenty of room to criticize the author in what is presented, but we really have no idea who missed what cues in that conversation. It's not a kind comment on either person.

Post reply on HN