Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror

Comment Occam's Razor (Score 1) 156

Tech has become infested by sociopaths and managing nerds is now a second career for people who fail out of Wall Street. So, there are a lot of shitty tech companies and the ethics of the industry have collapsed. It shouldn't surprise anyone that tech reporting is becoming more negative when tech reality has also become a lot more negative

Comment More ashamed of purpose than form (Score 1) 280

I'm not ashamed of my code. If anything, I've been criticized for being too careful, in a world where sloppy, quick, ugly work is celebrated.

Most programmers, in the corporate world, have no aesthetic sense and minimal mathematical knowledge. I prefer working with scientists and mathematicians and quants who think they're mediocre programmers, but don't try to do anything clever/stupid, over corporate coders who have to drag in 30 dependencies for some simple ETL task. Given the nonsense I've seen and occasionally been politically unfortunate enough to end up maintaining... no, I don't think I have anything to be ashamed of in terms of code quality.

I am, however, embarrassed (my attitude is more one of guilt than shame) by many of the companies that I've worked for, and many of the purposes toward which I wrote code. When I came into the software industry, I really thought that I would improve lives. In truth, we're mostly harmful, and the negative reputation that we are developing as "techies" are well-earned. No, we don't deliberately choose to unemploy and harm people, but we don't fight back against our masters and that makes us complicit. We create mass unemployment and the obscene concentration of wealth (that mostly accrues to nontechnical people, because we programmers suck at collective action). We sell pointless virtual "goods" and "social media" status that no one needs, and then we use "Big Data" "science" to help corporate fucks find addicts. We make "business processes", like rich people firing poor people, more efficient. Oh, and while it's arguable whether we "elected Trump", there's plenty of evidence our products have been to the benefit of demagogues elsewhere in the world.

I'm embarrassed to have been a corporate programmer. That cuts deeper than coding mistakes, which of course I have made as everyone does, but aren't in the same category. Missing an opportunity for tail recursion doesn't make you a horrible person. On the other hand, if you write performance monitoring/review software that results in factory workers getting fired, you're a fucking stain.

Comment Ageism starts around 29 in VC-funded software. (Score 1) 561

Ageism for me started in the late 20s. (I'm 32.) These companies want large teams of commodity programmers that they can cram into open-plan cattle pens. They don't want actual elite programmers. They want average people with huge egos who think that they're "rock stars" and will work 14 hours per day to prove it: the macho-subordinate type. They don't want people who are experienced enough to spot bad management, much less people who know what to do about it.

Also, both the abuse of the H1-B program and ageism are rooted in an unspoken but powerful fear: unions. H1-Bs are attractive because they can be threatened with deportation and come from countries where unionbusting is a lot more aggressive (as in: in the Third World, you get killed if you're a union organizer, rather than just illegally fired and blacklisted) than here. H1-B abuse is more about union prevention than it is about wage depression. "Culture fit" is code for "we don't want to hire people who know that we don't have our employees' interests at heart". These companies fear that if they hire someone in his 40s, he'll let the young'uns know too much about how the world actually works, and it won't be as easy for employers to take advantage of them. So they put out a bunch of propaganda indicating that 40-year-old programmers "are resistant to change" and "can only write in COBOL". Anyone halfway intelligent can see that this is ridiculous, but it sticks, because a lot of the people in the contemporary startup scene aren't halfway intelligent.

The problem is that technical excellence, in 95 percent of these supposedly technological companies, does not matter. (If it did, these companies would value technical ability and experience, rather than young bluster.) The era when startups were small teams whose technical excellence gave them a 10-100x force multiplier against competitors (and, to be truthful, it often helped that these startups were attacking niches than larger companies didn't care about, but that later proved to be important) is over. These days, startups are VC-fueled built-to-flip insta-behemoths. They're not teams of 15 doing the work of 200. They're sloppily-built 200-person companies that didn't exist two years ago that run on this misplaced middle-class belief that these horrible "tech startups" are the companies of the future. (I mean, they might be, but if that's the case, I want no part in that future.)

I doubt that this particular brand of perversion is sustainable. The reason for technical excellence to be severely undervalued is that the effects of technical sloppiness usually take a long time to have a macroscopic impact, and the managers who impose horrible practices and sloppy hiring expect to be promoted away from their messes before anything happens that could be attached to them. Founders don't expect to be running their companies 10 years from now; they want to be cashed out, diversified, and working 10-to-3 jobs as venture capitalists or executives at Googly mega-corps. The sad thing is that, for several years, sloppiness has at least seemed (survivor bias?) to work. The managers who have shoved the perma-junior Scrum culture down our throats have been able to get promoted away from their heaping piles of tech debt.

I'm betting that, some time in the next three years, the tech bubble will deflate (it may be a "crash" and it may be a slower deflation) and that a lot of the bad actors will have egg on their faces. Right now, there just isn't enough dirt flying around, because even though there's a ton of unethical behavior going on, no one wants to expose it and become unemployable. That'll change when the easy money is obviously gone and people get angry. Y Combinator (also known as, "where founders learn how to be unethical, and how to get away with it") managed to miraculously escape blame for the Zenefits disaster. Very few people have even made the connection. That's easy to do when it's a one-off. When a large number of people realize that they've been lied to, that they've bet their careers on a fraudulent shell game economy, and that they're not going to be rich VCs inside of 5 years, I predict that the knives will come out. What I want to do, when that happens, is get up on a platform and say, "Hey, technology itself is really important and our society still needs it; these bozos weren't even technologists." We need to differentiate ourselves as true technologists, apart from the VC-backed bozos who'll be blamed (circa 2018-20) for wrecking the economy. Then, perhaps, we can create a culture where technical excellence and experience are actually valued.

Comment Re:He proves again... (Score 1) 830

He is a scientist. The problem is that being a scientist doesn't make a person an authority on philosophical matters. I'd imagine that Tyson mentioned this in passing. The idea's not original to him and I can't imagine him pretending otherwise.

To some extent, it's the fault of the public for buying in to the idea that high IQ or brilliance in science will confer authority on other matters. We tend, too easily, to create personality cults around people of obvious high intelligence.

Take Dawkins. When he's talking about biology and evolution, he's brilliant. When he talks about god(s), his arguments are weak. I'm not at all religious and don't find his atheism offensive or upsetting. In fact, I view it as obvious (although I tread lightly around theists on this topic) that the ethnic gods of ancient religions, including the monotheistic ones favored in the U.S., almost certainly don't exist in any literal form. However, I'm not going to learn anything by watching a Youtube video of him taking down a (usually, equally ridiculous and polarizing) theist in debate, whereas I would learn things by reading his papers and watching his talks on evolution.

Comment My last 12 months? Haskell. (Score 1) 358

I find Java to be an unfortunate but common step in a company's evolutionary history. You actually can make Python "scale" in many cases, but you need competent developers. Dynamic typing usually makes messes, but that's not inevitable. (You have to hire great engineers, often skilled in both statically-typed and dynamically-typed languages, to make it work, but it can be done.) Java's main "accomplishment" (good for it, bad for the world) in the enterprise seems to be that it can actually make mediocre "Agile" programmers marginally employable. The common evolution for a software company seems to be: you have your data scientists and idea guys code something up in Python or Ruby/Rails or Javascript/Node and you have your first-generation serious engineers write production code in a statically-typed language (sadly, often Java) and then you hire a bunch of commodity-grade ticket-jockeys (who only know one language, and often that's Java) to maintain it.

I like Haskell a lot and I'm glad to see its community growing. That said, the language that seems to be making the most headway as far as I can tell is Clojure (which I've also used a lot). Clojure has a great community; better than any other language, in my opinion. The JVM is an asset and a detriment (an asset in adoption, a detriment in the long term) and the only issue I have with it is that I generally prefer to have static typing, because if you don't have enforcement of functional programming within the type system, then you probably won't have functional programming at all... but I'd also rather have Clojure's dynamic-typing-because-it's-Lisp than Java's shitty static typing that doesn't help much.

Still, I'm a huge fan of Haskell and static typing and I'd like to go even further into dependent typing, because I'm a curmudgeon and I fucking hate bugs.

Comment Re:Really??? (Score 1) 358

I was at Google at the same time and observed, first hand, the weird and reactionary treatment that Gosling got in the wake of his departure. I don't think that it was Gosling's fault. Googlers are arrogant and herdlike, and there's a hard-core cult of At Google, by which I mean that if you did something and are a domain expert in a field, but you didn't do it At Google, your opinions are considered worthless. This might apply to the kid who's used to being top programmer at shitty companies and who's used to slapping off-the-shelf resources (which often fail at scale) together. Unfortunately, the At Google thing is applied even to people who know what the hell they're doing, and even in things that are outside of Google's core competencies. Google is largely a C++ company (excluding the Android ecosystem, as noted) and the attitude is that "the real code" will eventually be written in C++, but they tolerate Java because they acquire a bunch of shit and forcing every absorbed company to rewrite its entire codebase in C++. Python is there for the managers who want to pretend they still code to write prototypes in, before they tell their teams to build the thing for real in C++. Go is this horrible little language that is beloved within Google because it's marginally better than C++.

Comment Ageism was originally about unions, now "culture". (Score 3, Interesting) 362

I know that not everyone reading this is a fan of labor unions, and there have been a lot of corrupt, failed, and ineffective unions out there. All of that said, software engineers would be better off if they had some sort of collective bargaining option and representation (which may be more of a "lightweight union" like the Screen Actors' Guild). The tech barons (the VCs and their puppet CEOs called "founders") know this and the original purpose for driving out the older engineers was to prevent unionization. The pampered, socially awkward, and privileged (if disempowered) 25-year-olds who work in tech companies don't have the organizational skills or the credibility that would enable them to start unions, but older engineers could. That was the original reason to drive them out: a terror in the Valley that some sort of collective bargaining arrangement would form, ending the resource-extraction bonanza surrounding self-undervaluing talent. Most of the ageism is superficially about something else. Open plan offices and "Agile"/Scrum became big due to ageism-- older programmers, even if they're very competent, can't stand that nonsense-- but now they're about "culture", whatever the fuck that is supposed to be. Mostly, "culture" is about keeping the young male quixotry machine going, by driving out the people who might threaten it. This also means that the VC-funded startups are designed to run on large teams of mediocre programmers instead of the "10x" very good ones (who powered the first wave of startups in the 1980s and early '90s) who tend to be older and harder to manipulate.

Slashdot Top Deals

Pound for pound, the amoeba is the most vicious animal on earth.

Working...