News for hackers. Stuff that matters.

random32840

> take it easy and do whatever makes you happy

Great advice if what makes you happy also happens to be lucrative. I did this, and it was a huge mistake I'm still paying for 7+ years later.

1. A large (and growing) chunk of the industry considers object oriented programming to be absolutely terrible, but that's what they'll teach you in college. Learn functional programming and data-oriented programming in your spare time before your mind has completely set into OO. Make each of the three approaches intuitive. It will be way better for you down the road, and it will help you actually evaluate which approach is best. There's a lot of dogma on each side.

2. In my opinion it's cliche to say "social skills are more important than just the ability to program". Totally depends on what you're actually doing. If your job is to optimise server farms, they're going to pay you based on how many CPU cycles you save, not your ability to present to management. If you measurably reduce power consumption, you could be completely mute and it would be fine. You'll earn crazy money.

Play to your strengths. If you have poor social skills, find a niche where that doesn't matter. A good heuristic is whether performance is measurable. If it is, it matters less that you have trouble communicating it.

3. "Minor in Something Fun" is common advice & fine if your degree was cheap. It's terrible advice if you're going into $150k of debt. If something goes wrong in that situation, you're screwed. Minor in something that you can fall back on.

What if you develop RSI and lose the ability to type large volumes of text? That's the point of a minor, it's a backup plan. Life is unpredictable, when you have $150k of non-dischargeable debt it's much better to have a minor in "engineering" than "ultimate frisbee".

According to this chart[1], less women than Amazon, Facebook and Apple, more than Microsoft. When you normalise for tech workers only, it climbs to 77% men, which is about average for the industry.

[1] https://cdn.statcdn.com/Infographic/images/normal/4467.jpeg

Companies in general try to seem like they care about more than money. "Grey Goo Ltd. We care." Diversity rhetoric is an easy, pre-constructed set of Things to Say (TM) that you can use to project empathy - notably, without doing anything significant to back it up. Google is still 70% men.

But bear in mind San Francisco is incredibly liberal, SF programmers even more so. Companies based there will make overtures toward diversity & inclusion rhetoric to keep their workforce happy.

It could just be that the kind of people who knit are unlikely to enjoy writing dry, factual encyclopedias.
Re:UK government advisor caught out by Wayback machine on Tuesday May 26, 2020 @06:04AM (#23309150)
I'm really not convinced he's ideologically driven. I imagine he makes a lot of money for doing what he does, given his track record.
C has much more of an excuse to be difficult & fragile. It's surgical. Web tech is designed to be abstract. If your abstraction introduces too much fragility or complexity or cost or overhead then it isn't worth it. Abstraction is a tax, it has a cost. Save the disrespect, in my experience greybeards understand that a lot better than we do.
My reading is that people who are planning to move anyway put in remote work requests just in case.

You need more context to evaluate something like this.

That's why I specified flu.
Not always. Common flu has been evolving to become more & more deadly over the past few years.
The 1918 flu never mutated enough to become endemic and it dissapeared. Endemic mutation is not an inevitability.
Cambridge recently released a study estimating that 9% or so of the UK population already have antibodies. You only need to get to ~60% and (assuming it doesn't become endemic) you have herd immunity, it doesn't matter that the virus is here to stay.
Right - but you have the same value either way, you just have to apply leverage, right? The gig's up if you don't have to say yes to the lowball offer. What force prevents you just pitting two+ SF companies against each other in a bidding war?
Can anyone explain why companies do this, but still hire from the expensive areas? If they pay less for the same level of skill in Texas, why don't they stop hiring in SF full stop and only hire in Texas? Is it just a bluff and they'll cave if you challenge them?
Re:Why no one uses functional languages (1998) [pdf] on Friday May 22, 2020 @02:35AM (#23269251)
Lists like this strike me as somewhat meaningless. Those companies probably also use bash scripts, hardly represents a significant chunk of the product. How much of their codebase is in Clojure?
Is there an example of something like this, but trained on the actual abstract syntax tree manipulations that are going on behind the scenes?

That seems like it would be considerably more effective, because you're removing the noise/overhead of parsing the text and giving a much clearer model of what's being manipulated to the AI.

An AI like this can hold a hell of a lot more information in its head at one point than a human. Each decision it makes is based on way more context, it can manipulate the problem using much more information, much faster. The problem is that it can't think in abstractions.

If AI gets to the point where it has a reasonable understanding of the shape of the data & the basic spatial manipulations being applied (not far off IMO), I'd expect it to be waaaaaay better at discovering certain types of new algorithms than humans. It can handle thinking about algorithms that have millions of independently moving parts in a way a human can't.

Humans have the edge deriving algorithms that require a sequence of high-level steps on an abstraction. "Do this, then we get a thing, then we do some stuff to the thing, stretch it, squash it, massage it." AI sucks at that, it doesn't think in the same kind of flexible abstractions.

But imagine if you build an understanding of how the code will be compiled & how that will interact with the cache into the AI. That's very difficult for humans because you can't think about all those mechanics at once, we have to focus on one at a time. An AI that really gets it? I could see it writing a better sorting algorithm for a specific, complex datatype than a human could, or at the very least having the competetive edge because it can do it basically instantly.

That's not what I meant. I mean, it's unlikely that someone high up in the company decided to snipe this app. It's probably a low-level employee following the formal rulebook a little too much to the letter.
It may be automated based on frequency of reports, but either way this is unlikely to be company policy. The people who make these decisions are relatively low-level employees following a company guidebook. The guidebook says it has to go? It has to go. The employee doesn't want to get fired.

I doubt it'll stick.

More like:

> What Google is asking of Podcast Addict would be comparable to Google asking Google to remove all references to the websites and social media posts that reference the coronavirus unless the reference comes from an official government entity or public health organization.

Thanks for the answer.

What I'm really trying to fish out is: if a developer is significantly better than the competition relative to his years of experience, how is he supposed to communicate that? How does he actually get paid commensurate to that extra effort? In your experience is it even possible?

As far as I can tell the only way to really do that reliably is either work on a respected product & basically make an impression outside your company (crapshoot) or show what you can do via open source. I can't see how I could communicate it otherwise.

I don't think the problem is who they polled. The problem is that they're fishing out two-sentence platitudes that are not useful.
You're right, I misread. I apologise.
Both are problems. Our brains have a tremendous amount of compute and use complex, nuanced, adaptive strategies.

The clearest example is how much energy we spend modelling other humans' thought processes. We spend so much because a simple permutation of tit-for-tat isn't sufficient - it will lose. It's an arms race to use complex strategies, an outcome which is specifically precluded in the model. I'd argue the fact observable reality is so divergent from the model means we should be skeptical of the applicability of the model.

This is naive. If it's a bad library full of bugs, it's going to be garbage code. I'm not going to spend inordinate amounts of time & effort wrestling with shitty code to earn the right to say the library is bad. IMO that's not a good standard.
Text is ambiguous, overtly communicating that you aren't trying to be mean is a good idea IMO.
How do you differentiate between "reasonable developer, can deal with complexity" and "extremely good developer, will dramatically improve the codebase and produce less technical debt"?

Does the distinction matter at your company, or is the primary metric "good enough"? Is this industry standard, or does it vary by company?

Forgiving tit-for-tat rectifies that flaw.
Should be: "Iterated Prisoners Dilemma Contains Strategies That Dominate Any Evolutionary Opponent at a Game as Simple as the Prisoner's Dilemma"

You can write a perfect tic-tac-toe program with relatively simple rules, but an evolutionary strategy will wipe the floor at Go. This kind of modelling has value but real life is incredibly complicated, complicated strategies destroy simple ones as the rules of the game become more complex. Our brains are extremely expensive organs, and they're built that way for a reason. I think people are way trigger-happy extrapolating models like this to the real world.

Re:A first look at Unreal Engine 5 on Sunday May 17, 2020 @03:33AM (#23210347)
That's not a great example of what's possible. Research-land has some wild demos:

https://www.youtube.com/watch?v=i4KWiq3guRU

Older »