It's pure vitriol, has never made anything, has never practiced anything, revels in thought that the hours other people spent practicing a craft may be obsolete.
Sad person to be ignored.
im more surprised at the $145k salary for a junior dev.
Dhh is the creator of ruby on rails, here he's hiring a fully remote Jr position for his company 37Signals. The salary is in the top percentages for SF pay band for that LOE because he wants to attract the best.
Must be San Fran
Yea 145k/y is living in your car on the office campus standard of living in SF.
That means it's definitely a SF based job.
37Signals is famously a remote-only company, since long before COVID. This job isn’t based anywhere in particular. 145 does seem high for a junior eng, but should give him access to the top talent.
37Signals is famously a remote-only company, since long before COVID. This job isn’t based anywhere in particular. 145 does seem high for a junior eng nationally, but should give him access to the top talent.
Nope, remote worldwide
No it’s not
Simply untrue, clearly not someone who lives in the bay area
This was standard 5 years ago💔
maybe in San Fran but certainly not florida, the best junior role around these parts was 90k 5 years ago.
You get the benefit of living in a swamp land with weird old religious freaks tho.
mid level in las vegas about 10 years ago was 85k.
Nu-uh, that's bait.
The most open, best-kept secret management sincerely wishes you'd know:
No engineer is hired for their ability or skill or proficiency in a tool or language or whatever.
They are hired to solve problems.
If you want to be a good engineer, learn how to achieve outcomes by solving problems. Everything else is irrelevant.
this becomes apparent to most jr engineers the moment they sit at their new desk, expecting to dive into a codebase or CAD model or material sheet or test standards and instead see that their boss forwarded them a 3 month old, 15 reply deep email chain to their company inbox three days before they started from some contractor or employee from another department about some random shit they never touched in school and was never listed on the job description with the subject line "FWD: start on this" and no body text
I can’t wait to have a job like that tbh I revel in those challenges. I just hope they’ll still exist in a year or two when I graduate…
Did someone hurt you?
That's oddly specific
Lmao, that was me, only that the ticket was a months long correspondence from salesforce between managers of clients, third party software vendors, and us. I didn't even have half the access needed to successfully resolve the problem since I was just one week into the job.
They are hired to solve problems.
Sure, but I've met a large amount of developers that could "solve problems" very efficiently in a way that made them very popular with management and absolutely hated by their colleagues.
From a lead perspective, AI can produce better code than I’ve seen come from juniors in the real world. Does that mean I want to get rid of them and then have to do all the work myself? Absolutely not. Have I seen an increase in code quality and decrease in things I’m sending back to them since we started using AI? Sure have. Do I think they’re actually learning anything from it to improve themselves? Not at all. It’s a sad trade off. My life is easier, but I have doubts they are growing as actual programmers.
It’s exhausting reviewing it tho. Especially if they do not clean up after themselves using AI.
There's a way for them to learn. Have the rookies clean up the code so that they can learn some best practices.
Yeah my main problem with juniors was when they copypasted something they didn't actually understand but seemed to solve their problem.
AI hasnt changed that
My problem was when they copypasted something that didn’t actually solve the problem!
It could be worse. They copied code but never ran it themselves.
AI can produce better code than I’ve seen come from juniors in the real world
Juniors push a lot of shit but the amount of slop coming out of Ai is hands down worse
Deprecated methods, libraries that don't exist, any kind of algorithm is just a coin flip on if it'll actually work remotely close to what the aim is
Everyone keeps forgetting it's a language model, it literally can't think, reason or decide upon logic. It just spits out the most likely word that is to exist next in a sentence, the whole reason it can spit out code at all is a sheer coincidence in how language models work
It's ok at boiler plate, but that's mostly because of the insane amount of boiler plate esque code that exists online for it to be trained off
As a senior developer, the best thing it's done for me is being intellisense on steroids. Just a really advanced autocomplete. I only use it when I know what I wanted to write and it matches what I wanted to put anyway.
Yeah, that and if you use “agent mode” like Github Coplot it will find the exact place where some obscure business logic lives in a large code base.
I use AI plenty, but as a glorified auto-completer, syntax oracle, and for generating brain-dead stuff like obvious unit tests, CRUD methods, etc. like you said, boilerplate. Sometimes it gets it right, sometimes wrong, but overall a big productivity boost, and I suspect my code is on average better, mostly because it makes me less lazy.
I recently did an experiment where I asked Claude to build something decent-sized. It was a rule engine with a bunch of nuances, and needed the ability to fetch additional context from the database. Not rocket science and not huge, but not trivial either, like a day or two of solid dev work. I gave it about as good of a spec as I’d give a junior dev and let it get to work, with mostly functional-level feedback. It understood the goals and it produced working code. Like a lot of it. And tests! Then I deleted it all because it was a mess of unmaintainable garbage. Like just awful. No sense of design at all.
That said (and as you mentioned), junior devs all seem terrible to me too, and did even before they were human interfaces for AI slop-generation; before that they were SO copy-paste bots, and before SO they were lost puppies. You either need to go through several rounds of painful feedback with them or you need to build them the scaffolding and let them fill in the details, which is more or less what you need to do with AI. I’m sure I was terrible as a junior dev too; my point isn’t about kids these days. Instead it’s that I kind of get why people look at the junior devs and the AI junk and think “these are kind of the same but one costs 145k/year to act as a proxy for the other, why bother?”
What’s going to kill us is that those junior devs did actually become senior devs (although over astonishingly variable timescales), whereas I don’t think the AI is going to get there anytime soon. Somebody’s got to keep the pipeline running. And perhaps even that won’t work; how much are junior devs even learning if the AI does all the thinking? It’s going to get worse before it gets better. I hope I’m wrong about this.
I use AI plenty, but as a glorified auto-completer, syntax oracle, and for generating brain-dead stuff like obvious unit tests, CRUD methods, etc.
Yeah sometimes I'll have a good idea of what I want doing but can't quite remember how to go about achieving it without digging up bits of older code I've done (e.g. maps, folds, cats and other scala gymnastics) and it's pretty good for doing those one liners or basic functions
But I couldn't really use it for more than that. Even using it for JSON generation was a massive coin flip about if it would follow a schema
The only thing i use it for is for generating translations for my component whereever static value is used
Yeah they fuck up and create json where "continue" is written like "user_profile_edit_button_continue" despite already having a continue key added before
But hey, its less of a headache for me to manually write translations for it, sot he trade off is fair
I honestly still think, best way to learn something is to watch a video once, take notes with pen and paper, then turn off the internet and try to make what was in that video from memory, fuck up 10 20 even a 100 times but its a 100% guarantee you will learn more than just using Ai to fix your problems
Yup, was trying to quickly gen a JSON file for some testing and figured ai might be a great way of making a few different files with different scenarios very quickly
But nope it kept fucking up the field names constantly, it was just faster in the end for me to do it myself
The problem with this is that the amount of money being sunk into it isn't in the hopes that it'll be a slightly better autocomplete, but that it'll obsolete all programmers. At the moment it feels like we're dumping a trillion dollars into language server plugins for a handful of mainstream languages, and that is... not sustainable even slightly
I'll be honest there's some real limitations with language models
I have no doubt we'll get some insane ai in a few decades but it feels like all this money is being plowed purely into just wrappers around the same 4 language models
It's like people have forgotten anything other than LLM Ai's exist
The ai to replace computer based jobs isn't going to be a LLM in my opinion
From personal use, even my own coding skills have atrophied with it, but I was one of those people who could nail individual components a lot better than I could build a tech stack and this has increased my ability to plug and play and build more advanced projects.
If I were to compare it to chess, it’s like I’ve become a worse tactician in the microanalysis, but I’ve become a better strategist in the macro.
I’m surprised by the improved code quality. From my experience my coworkers have pushed a LOT of slop in the past few months.
Difference between a bad AI user and a good one I guess
I have a junior who is really smart but they have been using it as a crutch lately and it hurts that they are not learning anything. I just tell them what will you do when you move to a company which doesn't have cursor and gemini. That makes them think at least.
Shit, seen it produce better code than myself when given a quality enough of a prompt. It's an excellent tool, but I can't imagine what gets produced on purely non-technical prompts.
Do non-software developers/engineers/programmers even know what a server is? client? Do they know about race conditions? Event loops? Etc.
There are like key technical concepts you have to understand to really be effective with these solutions.
You can #yolo it and let the AI take what it presumes is the most popular stack of the time but like you can't really punch in "Create an MMO for me" and it just does all the work (in fact I think most models nowadays are good enough to where it'll just say it can't and spit out a bunch of information to help guide you on a more technical choice).
I think if anything it has raised the floor, pretty much any under-grad has access to a title engineer with domain expertise at their finger-tips; you simply just have to give it a good enough prompt + context.
I could see way more getting done with smaller teams (and smaller teams are more effective than larger teams anyway).
When I was at university, a lot of people learnt to code by just kind of fudging the code around until it worked, but without really developing the proper mental model of how to actually build programs from start to end that worked. Inevitably, they struggled a lot with programming, especially building projects on their own
AI feels like its encouraging that exact mentality, which is what prevents people who are learning to code from actually being able to develop strong coding abilities. I am incredibly glad that AI did not exist when I was getting into the game, because the pressure to use it to shortcut the actual learning process and produce something of business value must be crazy
We're asset stripping the future to get more profits now, as always
Friendly reminder from the early internet days: don't feed the trolls.
Junior at 145k?! The fuck I'm doing with my life......
A guy with a knockoff-nft avatar can immediately, easily be ignored
And seemingly into raceplay kink content. I’ve seen that spade emoji before…
Edit: typo
Hoo boy. Just want to preface with the fact that I’m not into this, but I have come across it because I’m way too online.
The spade is a symbol used in raceplay cuck fetish spaces, with the idea of being “blacked”: white women becoming obsessed with Black men because of weird stuff about supposed sexual superiority. It’s really racist and plays off of old tropes that depict Black men as violent or animalistic, and centres white men getting cucked. I don’t exactly know why the spade is a symbol for it, because I’m not into this stuff. But it stood out to me here.
ace of spades is also used by asexual aromatics
SAAR
Oh yeah they guy who created rails definitely doesn’t understand that AI can do junior level rails just fine
So many people are emotionally dependent on this idea that programmers’ days are numbered for some reason
They want people in jobs that require education to have to do the mind numbing shit they have to do for their 9 to 5
He is engagement farming
Every vibe coder I've talked to ends up with an unmanageable mess.
Sure, we're "cooked" 🙄
it's funny. i keep seeing people say programming is over. but they're all people that have never programmed anything. 🤷♂️
Someone's salty about others having good salary
JUNIOR programmer for $150k? Is that in AUD or something? I don't think anyone in my entire company is making €150k
It's usd. Dhh is the creator of ruby on rails, here he's hiring a fully remote Jr position for his company 37Signals. The salary is in the top percentages for SF pay band for that LOE because he wants to attract the best.
But how does "attract the best" track with "Junior programmer"?
Junior means fresh out of college, no work experience? I'm assuming now they mean "Senior programmer, but you'll be low-ranking in the company", but that still doesn't make sense with a "Junior" title
No actually dhh has clarified this in public statements. They are looking for truly Jr in terms of years of experience/new grad. They want the highly motivated, smart, passionate, coachable candidates with growth potential.
He has publicity stated they will not review resumes with actual experience for this lower level. They actually want someone newer who they can grow into a superb engineer.
There was a study recently where programmers were asked to estimate how much using AI improved their speed. They estimated on average that it improved their speed by 40%. In reality it made them 20% slower.
I’ve spent a lot of time unwinding/debugging agent mode generated code I didn’t ask for and logic decisions and error handling that is superfluous. At this point i have learned to scrutinized every new line of code using ask mode before accepting it. If i didn’t have experience in the first place I wouldn’t be able to realize the coding mistakes that agent mode injected. My prompts have become very detailed even mentioning specific lines of code to adjust along with variables etc. anyone who doesn’t understand coding is going to haven issues doing this.
My reply: Im not a psychiatrist buut your dunning-kruger syndrome is terminal and need immediate healthcare
Somebody bought that niqqas brain.
Moron can literally make $146k just telling an AI to write code and he doesn't take it. Is he stupid??
I’m not a programmer. But I tried to use ai to program a LISP for autocad. A very simple lisp.
It failed completely, made up commands, lied about its ability and told me i was the wrong one that was wrong.
If it can’t create a LISP, something what would take a bad programmer less than 30 minutes to make.
There’s no shot it can make anything complex at all.
I've seen what ChatGPT spits out. No need to worry just yet.
They don’t even know what they don’t know
I’m excited for a swarm of AI agents that can be unleashed against morons like this to keep them busy.
A one-trick merry go round pony...
not to disagree with the whole message but i'm pretty sure that's not what "hallucinate" means
Once you have 6 to 12 months worth of living expenses saved up you will have the peace of mind to continue doing what you love without having to worry about industry turbulence. This goes for all jobs, past and present. Pre and post AI.
There is a whole lot of people who were not smart or dedicated enough to learn programming, but now are all "You see, I was right all along, I was the smart one to not learn to program because it's a useless knowledge now!"
My salary is already less than 200$ a month so thats not an issue.
😆, this is the internet explained in one simple interaction
As a radiologist who keeps getting asked by medical students if I’m worried about my job, it’s things exactly like this that prove me right. My job is safe and will be safe. At the end of the day you must have a competent human to look at the shit AI puts out. A human must sign it off even if some day it’s mostly done by AI. That need will never go away.
And similarly, I’d be more concerned about hospital systems or insurance companies allowing FMGs to read US studies without completing training residency here and without living here.
But that’s for another sub. Stay strong tech bros
You don’t have to play chess with a pigeon
"Personally ☝️🤓"
ok but theyre hiring juniors at my salary level (senior engineer), which is the highest i’ve found in my part of florida. I’d happily take a junior role elsewhere for that kind of pay lmao
I hate people who talk in slang.
Ace Rbk go fuck yourself
very fitting that I get a promoted ad in the comments of this thread that says, "I just discovered how to build an app & website without any coding skills".
the fuck is this guy on
That's a troll.
Having talked to guys from that species in real life, I can imagine it also being his actual opinion, sadly.
Even if AI was there now to make new things well, I defy it to maintain a decades old C++ codebase that has the requisite amount of tech debt that entails.
Tech bros neither know what C++ nor maintenance is, so they’re safe.
Maybe its just me getting old, but I have grown to absolutely despise the term "cooked" being used everywhere to describe people being screwed. I know, people older then me used it that way, and now people younger then me are too, but my specfici age range doesn't, so it makes me irrationally mad.
Did they miss this story about some vibe codin' CEO who had his AI lie to him and basically fuck up as badly as any junior dev ever?
https://www.reddit.com/r/ProgrammerHumor/comments/1m4nbpn
The AI Agent or whatever deleted their database and then lied to them. Apparently they made the unit tests pass or something too because the vibe coder only noticed upon inspecting the tests or something.
Whenever an AI gets to the point of replacing developers, big corps will be screwed because anyone could just ask an ai to build the app they sell to make a profit and nobody will need them anymore
So tired of these people, always the ones who know the least that talks the loudest. How fucking dumb do you have to be to think developers will be the first to go. They are the last to go, they are the ones making the AIs.
Imagine how dumb you'd look if you claimed people who build robots would be the first to be replaced by robots. It doesn't take that many braincells to figure that one out. Yet here we are.
Well, he's not wrong, we are cooked, but nevertheless AI is not in a place to replace any of us.
Last Friday, our team was struggling with a problem, a team member asked if tried using AI. We did, but it couldn't solve the issue
TL said if AI could solve problems like us we wouldn't have jobs.
I reassured myself that AI won't take over not at this stage.
Can I ask what the problem was about?
I don't know the exact issue as I wasn't working on that but it was something related to Authentication not working as expected...
I want to round up all these guys and drop em at my work. Have em come in day one to our standup and give them tasks. See how long they last and make them explain their code.
Throw in some infra work too because I’m certain they would think they know AD or DNS after asking ChatGPT- what is Active Directory
This is like me thinking because I know how to change my oil I could drop a new engine in my car. You may know individual pieces of the car but have no concept of how they all work together. Car is a simple example too. Infra + DevOps takes a lot of knowledge about many things.
Good luck!
This bitch doesn't understand a damm thing.
My former boss used chatgpt as a crutch, and it got so bad she started having it read my updates and answering them in her place, giving me direction (terrible) and allowing chatgpt to lead the department. She never had any clue where we were on any project because she was letting chatgpt do all her thinking for her.
She willfully removed herself from all status updates and, in the end, was fired for her incompetence after trying to fire her entire team for "insubordination" (we asked her to read the damn emails herself).
I mean, there was more she was fired for, but the main reason she was so blindsided was that she refused to do any work herself, thinking that chatgpt could do it all for her(it could not).
I always get a kick out of non-devs thinking that tech jobs are going to be the very first jobs replaced by AI. I'm sure companies would love to cut costs by giving the highest paid engineers the axe and they sure are having a go at it, but they can also axe dozens, if not hundreds or thousands of employees that do tasks that could easily be done by AI.
If you're eagerly awaiting AI taking over dev jobs, you better hope like he'll your job is AI proof.
This Is such a blatant troll, lol. "Why hire one guy, when you can hire another, that takes more money, but knows less?"
Can someone in the field clarify for me? On one hand y’all are clowning on this guy, but im also hearing people doomposting that ai has basically wrecked the floor of the industry (internships, low/entry level positions). Whats real?
High-effort channeling their own uncertainty if their decision to not learn programming was maybe the wrong choice
I mean, DHH is pretty objectionable. But not because 37 signals is hiring a junior dev. Broken clocks and all that
Look I get the guy came off as arrogant and cocky.
But its delusional to say he is wrong. AI is already starting to get scary good at producing code, let alone what it will look like in 1 or 2 years.
In short, the guy is (going to be) right.
But it doesnt only concern programmers.
AI is already starting to get scary good at producing code
There has been very little real world improvement in AI code generation since the initial launch of Chat GPT.
I’m very skeptical of AI claims but this is demonstrably false, recent models are MUCH better at coding than those from a couple years ago. It remains to be seen whether they’ll continue on that trajectory. The shift towards “agents” which are 4x more expensive is telling me that model improvements have almost reached their ceiling.
And it's even more scary good at producing code that looks good but has a lot of issues. Programmers are safe from AI, we are not safe from dumb people who make decisions of whether AI can replace us or not
The perfect answer to that comment
Im sorry but I find this is just sticking your head in the sand. This train cannot be stopped. Certainly not by wishful thinking.
I mean I am just saying stuff from my current work perspective. No major LLM was able to give me satisfactory code consistently. It's good to do monotone and routine stuff where you would copy paste code from one part of the codebase into another because you are writing another generic payment adapter, but when you need to come with a new solution that's specific to the codebase it starts hallucinating out of its mind providing total nonsense that wouldn't even run/compile
At the end of the day it's only good for scraping either what's already on the internet or your codebase at the moment. I am not an expert in the field and definitely lack knowledge on the topic and latest developments, but I can't really see how any of the current implementations of "AI" could go beyond just that
Where are you invested, friend?
Assume AI can produce better code than a mid level programmer in two years. Why would that make programmers obsolete? A mid level programmer with a tool that helps them write the code is going to be better at judging which parts are good and which aren't than some manager that bought into the hype.
It's not "either pay a programmer or do it yourself with AI" it's "pay a programmer who uses AI or do it yourself with the same tools". Some are going to choose the cheap route and quickly find out why it's important to verify written code. Hope you're ready to tell ChatGPT to write an apology letter to your customers when the database is compromised.
Why would that make programmers obsolete?
Entirely obsolete? Probably not. But consider that agriculture used to require 90+% of all human labor and now only requires ~5%. AI will eat programmer's lunch. And unlike agriculture, it won't take hundreds of years to do it.
Between the first powered flight and the first man on the Moon it took about 65 years of finding better ways to make gravity our bitch. So of course now 55 years later we have FTL travel and teleportation. Right? Progress never slows down or reaches a plateau. /s
LLMs are just spicy autocomplete, they won't replace anyone that needs to think while doing their job. Though it might explain the jealousy and vitriol coming from people who don't think very much at all.
Let's talk in 5 years
But the trend is concerning...
5 years ago, just the thought of a service that produces functional code based on our requirements felt impossible.
But today it's normal to think of such a service.
Similarly, these services can get smarter... And become self-judging and self-correcting agents to the point that they produce a quality product with minimal input.
We've already hit some fundamental issues in how they work and it's hard to imagine them overcoming that. For example, you can't prevent AI from using as
in TypeScript to "fix" issues it receives from tsserver and ESLint. AI is trained on shit code, it outputs shit code, and there's no way to automatically tell what code is shit and what is not shit so it can be better trained.
const var: any = someOtherVar as unknown as string
Seen it a few times lmao
return thing
// Wrong type, it's missing this and that
return thing as Thing
// There we go, it's fixed!
Fuck you Copilot ಠ_ಠ
Bonus points if it actually leaves both lines in the code lmao
I completely agree with you. The current state of AI has its own set of limitations... But is it the deadend??
I am sure that the AI engineers can come up with some heuristics to reduce the slopiness of the code produced
Or they can selectively train the model on high quality code written by experienced professionals.
My point is that they have a way.
IMO the future of truly useful AI will be smaller, much more focus-trained models, made for specific workflows.
We probably don't neet yet another generalist chatbot, and I doubt they'll ever become anything like 'true' intelligence anyway.
I think we have hit a plateau.
The next improvements are going to be around generating faster and using more context. We could even see unconventional algorithms shoehorned into a LLM to see how that goes, like using Stable Diffusion to generate text. But that's going to be it for a little while, the rest are going to be techniques at the application layer like prompts and retrieval-augmented generation or whatever.
We're going to be stuck with those fundamental AI biases for a while.
I will be honest, I don't have a fomal education in AI and I don't fully understand the technical terms that you have used.
But I truly believe that we will discover a technique that fundamentally reshapes the state of AI like a paradigm shift and with that what we thought was unlikely becomes likely.
I don't know if that's me being optimistic or pessimistic.
Not really. 5 years ago no code platforms were the solution, now it's LLMs
Programmers also do not actually know what other people do if they think they can program a replacement, yet see themselves as irreplaceable by a programmed program.
Whatever you say, "PoopieButt".
Don't argue with idiots. They'll drag you down to their level and beat you with experience...
Feels like that line of thinking got the world into the mess it's in today. Idiots should be mocked and ridiculed.
I’ve increasingly subscribed to similar feelings.
A good laugh is a great first step to defusing the absurdity.
Defusing is the opposite of what i need. I need an intercontinental ballistic missile with a fact based warhead.
Growing up, we were taught that facts, objective truths, altruism and goodness would always triumph.
Which is a big part of what makes the current state of affairs so... insufferable
It’s largely the same generation of people that are responsible for both those lessons being passed on and the state of affairs.
Let the idiots build their vibe-coded SaaS. Let them court venture capital, and let them drown in spaghetti at launch. Let them fail to deliver on their promises to investors, and let them suffer the consequences of their hubris
The problem here is survivorship bias. A million venture capitalists giving money to a million idiots with vibe-coded startups will eventually stumble upon a functional SaaS. And then every asshole will point to VibeSaaS as an example of vibe-coding being successful, don't worry about the 999.999 other failed startups, this one made a gazillion dollars.
I feel like that is the service industry as a whole. And unfortunately, there always seem to be enough morons to pay for the subpar service. Like, you need to be godly levels of retarded to run something like Netflix or Spotify to the ground.
Hey, they're working on it as we speak!
Shame used to be an effective means to enforce social norms, but now that idiots can become shameless by selecting their own community of idiots, it doesn't really work anymore
Not only select their community but elect fellow idiots into the highest positions in the country in order to prove there's nothing wrong with being shameless idiots.
To your point, a leader that can free them of shame is vital for them, though they will never admit it
This is what they mean when they say Taco "tells it like it is"
They know the educated world is leaving them behind and this is a source of insecurity for them
but obvious bait should be ignored
Poe's law make it hard to see which is which.
Anybody have that comic with the exaggerated strawman wearing the stupid hat and stupid shirt, then a person actually wearing the stupid hat and stupid shirt shows up?
Err loudly on the side of bait and parody. If it's not and you've painted them wrong, that just means they'll have to work to pull their idea up to even the "No, really, I'm not joking! Listen to me!" level.
I do the opposite.
Well... don't. You're missing out on jokes, feedback-looping a negative worldview, getting unnecessary heartburn, and paying dividends to trolls and griefers.
I'm of the opinion that ironic shitposting is still shitposting.
And shitposting is a form of parody.
If you say something unhinged expect to be called out for it.
With LLMs it'll be easier to do that, just reply with "@grok why is this guy wrong?"
...and just stop when you get to the hamfisted tonal shift into racism nobody asked about.
This is what you do the moment you run out of arguments
You can’t shame the shameless
We already seem to have the first AI president.
And they look like a senior with 15+ years of experience.
Haven't heard that one in a while
Old but gold
Real stupidity beats artificial intelligence every time.