Not a question, just thought I'd throw out that I worked through Black Art of Java Game Programming when I was learning Java in 1997 or so. I still have my copy because I don't like getting rid of books. I found it really helpful for learning patterns for building medium sized software projects. I hadn't realized that you wrote that until years later when you mentioned something about it in The Startup Way.
No way! I would absolutely love to hear what you thought of that book. In fact, you may be the first person I've ever interacted with who actually read it!
I was in middle school at the time, learning programming. I think by that time, we had home Internet, but it was really slow, and so a lot of my learning about programming was either from the help files that came with the IDE (at the time for me learning Java, that meant Microsoft Visual J++) from books I convinced my dad to get me from Barnes and Noble as a reward for doing the "important" summer reading. I had a couple Java books before, but they were more focused on the mechanics of the language. Your book was the first that talked about how to put together a system.
As a specific example, I had never been exposed to much in the way of networking concepts before. Black Art has a chapter in adding networking functionality to a game which was my introduction to networking concepts and how to build networking software. Until much later when I learned about higher-level frameworks, I used the design patterns for network programming in several projects in school over the next several years.
Not OP, but within Amazon we have pretty good connectors around integrating with our task system (so you can pretty easily ask your GenAI tool "look up the next item in our sprint board, let me know if you have any clarifying questions, but otherwise start implementing it"). We have decent integration with internal wiki and search systems, so it's easier now to figure out the best Amazon way to do some coding task. And Amazon being a big doc-writing company, there are lots of great tools for helping improve all phases of writing.
I work at Amazon (standard disclaimer: just sharing my own experience, not an official spokesperson, etc.)
I can't say that this isn't happening, but at least the parts of the company I get visibility into, what the article describes isn't my experience. There is a lot of interest in using GenAI, but people are mostly getting kudos around creative uses for GenAI, not just for raw amount of tokens. For most scaled GenAI efforts, there is a lot of focus on output metrics (metrics like accuracy, number of findings, number of things fixed, and so on).
I also work at Amazon and my coworkers are playing 20 questions every morning to keep their metrics up. Like anything else there it depends on your org & managers.
I'm surprised how few comments are written with the prior that Amazon managers aren't stupid or uninformed about how incentives work.
My guess would be that someone created the leaderboard without a lot of consultation with managers, and that some employees feel a competitive urge to try to "win" the leaderboard by burning tokens.
Mmm, no, I don’t think it’s equivalent. I think they know that if you make the work hard, some employees will have trouble keeping up and will do things like peeing in bottles. And they’re OK with that, because they think there are enough people who can keep up that they can push the weaker people out. I think they believe that the peeing in bottle is relatively rare. I’m unsure whether that’s right or not. It’s been reported that it happens, but I have no sense whether it’s common.
Amazon is a massive company, your single experience is worse than an anecdote because there is no way verify.
What we can verify is how how Amazon already treats workers, they will surveil anyone within their systems regardless of the futility of said surveillance. Why are we suppose to not believe them using LLM systems as a means to further control their expensive employees from unionizing or seeking out solidarity with fellow workers? All LLMs do is enable tyrannical managers more power to hold over other workers, said workers are forced to engage in self alienation for fear of losing your job or forcing to do meaningless work as that is what's being tracked (and what LLMs excel at producing).
Hardly a good proposition for any worker.
I'm sorry but I fully do not believe you. This is a company that fires workers for taking too long of a bathroom break where said workers piss in bottles for fear of getting fired and you're going "hey guys, it's not too bad. Only some workers get whipped, others don't!"
The intentions of a government aren't enough. You need feedback systems. China doesn't have effective feedback systems, because the CCP actively destroys them. No one is "turning towards China" - they have negative net migration since 1968 (https://data.worldbank.org/indicator/SM.POP.NETM?locations=C...).
I am glad most places are getting rid of non-competes. But here is the best argument I've heard for them:
For many companies, a lot of their value is in their intellectual property. Non-competes exist not because the company will enforce it against employees (they might, but they usually don't), but more as a fig-leaf to potential investors down the line asking about the value of the intellectual property. The argument goes, if someone could easily leave the company with the knowledge earned and go to a competitor, then the investment wouldn't be as valuable.
Not sure if this is meant sarcastically or not, but it is - it helps reduce transaction costs of changing employers. Anyone who has ever signed a contract with wide non-competes knows that it is hard for an individual to negotiate against it on an individual basis, but they are rarely enforced in practice, which leaves open individuals to worries about "maybe I'm one of the unlucky few?" These clauses then primarily only increased transaction costs, so eliminating them aids free exchange.
The examples in the first paragraph, while not grammatically passive, are functionally passive. They would be stronger in most cases if the author wrote them with the actor as the subject. For example, yes "the bus blew up" is active, but does not answer who acted on the bus.
Being so pedantic, and then saying "but I'm not going to use the technical term voice" is particularly off-putting. If this is an article about grammatical pedentry, let's go all the way. Otherwise, the author should focus on providing useful advice.
For completeness, the transitive active might be "The terrorist blew up the bus".
In the intransitive case you can infer the reflexive case (agent acting upon itself), "The bus blew itself up". Some languages have a formal "middle voice" for reflexion.
English lacks a formal middle and there is a good deal of established literature on verbal aspects where the subject is not really the agent called "ergative".
There is utility in comparing "the bus exploded", perhaps unclear as to the agent, but language is not an agent game. It's trying to convey information, which is clear enough in these cases.
The whole point of the article is that there's no such thing like "functionally passive" and people will invariably twist themselves into knots if they actually try to give it a, let's say, functional definition.
You could simply say "You must be clear who did what" and it would be as good an advice as any, but people have to shove in "passive" into the advice, which serves no purpose and just makes things more confusing.
The author is a linguist where passive has a technical definition and implicitly wishes that people would use some other word for what they have an issue with.
No, the volcano caused the eruption. Who caused the bus explosion? You are fixated on the grammatical parse tree instead of the reality conveyed by the grammar, what happened in the universe and what information is conveyed.
Maybe this is just the programmer in me but it really feels like the difference between an abstract syntax tree and an IR is apposite here. You're evaluating at the wrong level. But also: who's to say the bus didn't decide to blow up all by itself? The bus can be the agent, the same way the volcano is.
If you think that couldn't happen, you never rode in my 2011 Audi A6 that blew up on the Ike, and that I parked in a CPD parking lot, flames jumping out from under the hood, and walked away from like a fucking Batman villain, clicking the key fob just to hear it go "beep-boop-beep" one last time.
There is a link right there in TFA that explains what happened to the bus. The bus was not your Audi. It did not spontaneously combust. The bus was involved in a conflict that was a hot-button issue even back in 2011, and the quoted headline "Bus Blows Up in <CITY>" was blatantly excluding information. Language exists in context.
When the commenter above says "functionally passive", he is getting at something that lies outside of any strict grammatical sense. It is not a matter of ASTs, IRs, or anything of the like. It might be less confusing to phrase this as "spiritually passive". We're using "passive" not in the technical sense but in the normal, colloquial meaning of the word.
Normal people often use the grammatical term "passive voice" to casually mean "this sentence does that 'passive' thing where it omits key info about agency and responsibility". This casual usage makes a lot of sense, because the technical "passive" is our most useful tell for the spiritual "passive". Granted, anyone who takes a moment to think it over can see that there are counterexamples, and that this tell is merely a loose correlation, not an ironclad correspondence. Normal people are okay with this sort of situation.
Pedants are within their rights to be annoyed by this usage (and perhaps genuinely confused, though I doubt that this is common). There is certainly no law against being angry or snide whenever a word has multiple, related meanings. But TFA is just plain wrong when it claims that the passive voice "has nothing to do with lacking energy or initiative, or assuming a receptive and non-directive role." It is entirely related -- by correlation. Correlations are not foolproof logical rules, but people can see them and use them.
Moreover, normal people can see when Orwell or Strunk & White point out a correlation. They can read intelligently to understand what Orwell and Strunk & White really meant, and how it applies to actual headlines and sentences. And finally, they can read Pullum here call Orwell's essay "overblown", and decide for themselves whether Orwell is overstating the dangers of official language, how it can serve to dehumanize and deflect, or whether, more likely, Pullum is overstating this stupid nitpick about what "passive voice" ackshually means.
I'm not appealing to them out of nowhere. I'm rejecting Pullum's dismissal of them at the end of TFA. You can learn a lot more from them, than from what I've seen of this blog.
As to this new link...what a load a willful misrepresentations. Misses the point entirely. The rules in PatEL are not literal laws. They are merely pointing the way toward something.
For example, from the very top:
> So, Orwell writes "it is generally assumed", which is passive. Why didn't he say "people generally assume", or "we generally assume", both of which are perfectly grammatical...
Beaver's proposed variants are also passive, spiritually, in my sense above. Who is "we"? A good author chooses between these not based on which one is literally passive, but on other considerations like flow and sound.
Maybe there are Orwell fans out there who have read PatEL too literally, and need to be disabused? Maybe this blog is good for those kinds of people? But from what I've seen so far of LL, it's a bunch of smug dunks that nobody asked for.
Sure, but he is packaging it in this superior snark. He is aggressively dismissing the very real thing that people actually mean when they say "avoid passive voice". A technical explainer on its own would be fine, but at least to my ears, this piece reads as narrow-minded and bitter.
Huh, I don't know much about this site. Maybe I should. From reading up on the author, it looks like this is where they invented the term "snowclone", which is pretty cool I guess.
But this particular article rubs me the wrong way, for whatever reason. It just seems to miss the point.
This isn't really just a big company problem, lots of start-ups fail too. It plays out a bit differently at big companies, as those failures tend to be more public but also done in a way that lets the company shuffle people around to the next project. There were lots of start-up companies that tried to build social networks or ERP systems or map applications that most people don't hear about.
Sure, in all cases, acquiring knowledge of what the (potential) customers want is difficult. The point of the article is that vendors of layer N tend to think they know what it takes to succeed at layer N+1, but they don't, because that customer base (N+2) is different.
The other (more important, maybe) thing the article points out is that building layer N-1 turns out to be easier, because layer N is the customer and understands those needs already.
reply