Air Con Game

I was going through some old emails and came across this gem from when we worked in the office. 

Hi all
We are aware that the air conditioning is not working correctly and that it is too hot upstairs. Unfortunately the cupboard where the controls are is locked at present so there is nothing we can do about it.
The key is being located and brought across but even then, the A/C has been set up in zones but we don’t know which zone is which. The person who does know how to control it is on holiday for a couple of days.

How can you have that many levels of failures? The person who controls the Air Conditioning is on holiday, the key is in another building, but even if they managed to find it, the controls can’t be understood. It sounds like some convoluted sequence of puzzles for a point-and-click adventure game.

Employee Profiles: Gerald

Although I always got on with Gerald, his programming skills were a bit lacking. He was definitely one of those software developers that may have been good in his prime, but the languages he has used are now obsolete and he struggles to learn new things, so was a poor C# developer. 

One trait he had is that he seemed focussed on his own work and didn’t pay attention to what anyone else was doing. So there could be well-known employees at the company and he wouldn’t know who they are. So there were plenty of conversations like “go and ask George for assistance” and he would be like “who’s that?” or “what does he do?” much to the derision of team-mates.

There were several times where he was working on items that had been picked up by others, or had completely misinterpreted the requirements.

A few examples of bad programming

Declaring a boolean is easy; it’s just true or false, but Gerald created a string “False” then used the parse function to convert it to a boolean.

IsSelected = bool.Parse("False") 

There was a simple stored procedure that he needed to write to set a boolean flag. So normally you would just write one procedure that took a boolean parameter and set the database field to that value. But Gerald wrote 2 stored procs. One to set a bool value to 0, and another to set it to 1. 

So some weird solutions to some primitive problems.

A few examples of Lack Of Awareness

We were doing a project where we made the main feature. There was a requirement for the user to be able to write custom searches to generate reports, so another team was adding the new options into our Searches module. We were about to wrap up the project and Gerald was surprised that another team had been checking code into our project branch. 

There was one time Gerald volunteered to help out with software testing. He managed to pick the item that the actual tester was testing; so he didn’t help out at all – no time was saved. When we asked him how it happened, he said he thought Rob’s name was on it because he was the last person that worked on it. Even though that would have a developer’s name against it and not a tester; so that’s exactly the reason why he shouldn’t have chosen it.

A few weeks before that, he did something similar on three occasions. So he completely wasted a week by looking at things other people were working on.

Another time, Gerald was struggling with his work and asked me to help him. He said he was struggling with how to change the behaviour of pressing the spacebar to select an item in the tree view. I thought that behaviour sounded odd because I’d probably expect Enter to select, and maybe spacebar expands the nodes. I read the requirements and it was about toggling radio buttons, and nothing to do with a tree view.

A funny exchange on one of his code reviews: 

Rich: Do we need to update DateInserted and UploadAttemptCount when these are just the same as the defaults? 

Gerald: Ah, of course - think Rich said that too, but I didn't quite get what he meant. I'll drop them.

Gerald: What am I on about - you are Rich. D'oh!

Employee Profiles: Philip

I was going through some old chat logs and was reminiscing about a former employee called Philip who was a Senior Software Developer in his 50’s and had an attitude problem. In addition to being flippant and unprofessional, he seemed to have the common attitude with some older developers where they seem annoyed that the programming language they specialised in has now essentially become obsolete and are very reluctant to learn new things.

We were coding in C# and SQL, but he has experience in some old specialised languages like MUMPS and had C++ experience in his Commodore 64 days.

My employer always seemed reluctant to sack anyone, so would just leave them to it and hope that they quit one day.

Philip never seemed to ask for help so would just write comments on the Work Items that he couldn’t do it, would spend hours procrastinating at his desk, and sometimes fell asleep.

When he did socialise, he would come up with random stories that seemed far fetched.

Chilling

Our software is large and complicated so we have a batch file called BuildCompleteSolution which used to take about 40 minutes to complete. You only needed to run it when there’s major updates/breaking changes, but Philip seemed to run it everyday just to procrastinate.

Dean 11:45: 
he's moved to another team
but when i saw him the other day
he was building complete solution
Me 11:45:
what's he doing? back working with his old software?
Dean 11:45:
apparently he's working for Digital
we've never heard of it
our theory is that they've set up a dummy company to distract Philip
Me 11:46:
probably just a sister company they have made, then gonna announce redundancies
“this month, we have closed Digital and the Venezuela office”
Me 14:52:
I like how Philip often runs Outlook rules. It's like his new buildcompletesolution
seems to take an hour to process
Jim 14:53:
:D. He's very set in his ways. And very vocal about them.
Me 14:54:
looks like he is doing a noob c# course on pluralsight
he didn't learn from his years of experience with my team
Jim 14:54:
Really? He's finally stopped programming in the 80s?
How are you checking this?
Me 14:56:
I can see his monitor
Jim 14:56:
Ah.
Me 14:57:
seems to be going through data structures like dictionaries and arrays
and his progress bar on outlook has been there for a good 15 minutes and has gone from 80% to 95%
I often see him sitting there idle, watching the progress bar
Me 15:48:
looks like Philip is taking his time deciding if he should purchase some Nik Naks
Paul 15:48:
LOL
Me 15:48:
what do you think his favourite flavour is?
I reckon Scampi
Paul 15:48:
Nice and Spicy
Has to be
Me 15:49:
or maybe he hasn't decided
he will abandon the purchase and just buy Monster Munch
Paul 15:49:
Is he doing his online shop??
Me 15:49:
ooh I think there's Twiglets now
Paul 15:49:
Choices choices
Me 15:55:
I think he has given up coding, and shopping instead
Mary 15:19: 
look at Philip
HORIZONTAL!
Me 15:20:
just messaged Matt about it
he has readjusted now
Mary 15:20:
did u see him fall asleep the other day!? 😐
Me 15:35:
no
Mary15:35:
that was FUNNY
his head kept on falling LOOOOOL

Updates With Attitude

Matt: "Philip, so what did you do"
Philip: "CARRIED
ON
LOOKING
AT
IT
NEXT!"

“Argument with UX. They want the text to be sentence casing, so I said NO”

Philip’s standup update
Philip added a comment.
Technical Authors decided on some changes.
I need to find out how to change the text on the buttons for the dialogue box, if this type of dialogue can handle such.
Wouldn't it be nice if anything had any sort of documentation available. Guess we can all dream.

Philip added a comment.
Looks like another hijacked job.
The code has been moved around.
Thu, 01/10/2015 11:19

“I was constipated all day yesterday and the day before”

Philip

Tall Tales


Me 09:06:
because the Columbians don't want the world to know what their real coffee tastes like, each bag comes with 6 months jail sentence
#PhilipsFacts
Dean 09:08:
lol what?
Me 09:12:
Jim says he remembers Philip telling that story about 5 years ago
if you try smuggle their proper coffee out of Columbia, then you get thrown in jail
I wonder how many of his stories are true
might have to search Snopes for it
saying you can't take their "real" coffee out of the country, and the only coffee you import is lower quality
Me 09:44:
Philip is talking about curries again
rats and cats found in the freezer
Dean 09:45:
haha what
Me 09:49:
A takeaway got shut down for selling cat curries
#Philip'sFacts "most of the curries are Portuguese"
Philip's mate drank 2 bottles of vodka, took his clothes off and went to sleep in the hospital car park. His blood-alcohol level stopped him dying of hyperthermia
Dean 12:44:
haha
i have heard of that kind of thing happening before
Me 12:45:
I like how he went to sleep in a hospital car park
in the case that he does get in trouble, a doctor may save him
Dean 12:45:
clever

I wish I could remember more of his tales. There was one about a casino scam with the poker player stacking his chips comedically high. Then another about censorship in cartoons with characters headbutting each other.

Miscellaneous

There was a new communications platform we were trialling, and as a Job Role, Philip set his job title as “Low-paid grunt

“hope you’ve gone to a much better place”

Philip  written in Leigh’s leaving card

One time, IT updated our Desktop wallpapers and in my opinion was only marginally brighter than the previous one. However, many staff members complained, including Philip.

“So the attitude is to kick everyone in the head for the sake of a couple of people, not the least bit friendly.

I have a stigmatism in both eyes meaning that backdrop is physically painful to view and so has been removed.

Just this place has a Health Plan, not “Plan to ensure no health possible”.”

Me 13:46:
Philip came back from lunch completely bald. Now he is googling hairdressers
I wonder if he is regretting his decision
Daniel 13:47:
haha
Me 13:47:
“can you rollback my hair please?”

Complex Processes lower morale and encourage bad practice

I always find it interesting when people work in a particular job then get promoted into management. It’s a completely different set of skills and if it’s a fair promotion, the idea of getting so good at your job, that you no longer do that job anymore; is another illogical aspect of it.

One thing that always amazes me is when people make decisions that they know are a bad idea from their experience doing the job.

When I worked as a software tester, my view is that we were essentially there to find any bugs that exist. Part of finding them is to document how to recreate the bug so that developers could fix it. Extending this process so it’s more complex, more stages, or involves more people – causes people to not want to find bugs.

There were times where I witnessed people do the bare minimum and they would ignore bugs that didn’t appear severe to them.

One of the worst people I’ve worked with was an average tester who wanted to become a Test Manager, and he ended up trying to make the process more complex and often announced changes in a condescending way.

When testers found a bug and wanted to investigate it, they would often try to recreate it, sometimes under different scenarios to work out the scope and impact of the bug, then will tell a developer their findings and only then get it logged.

Therefore there was a delay between finding the bug and actually logging it. So we got an email from the Test Manager like so:

All,It is important that as soon as you discover a defect, you raise a defect for this BEFORE you speak with the developer. Any defects raised can easily be closed if they have been raised in error or discovered by the developer to not be an issue. We run the risk of releasing with defects that could potentially cause serious issues for our customers.

I understand his point that – if managers are checking the system to see what bugs are outstanding and they don’t see them all, then potentially, the software could end up being released with bugs. However, the process started getting worse from then on

Please can you include myself and Becky on any emails that are discussing a defect with a developer. This is so that we are both kept updated with any defects that could cause issues. Also for every defect you raise, I’d like an email to myself and Becky with the follow information :
-- WorkItem ID
- Title
- Area
- Any other information you feel relevant.

So now when we discover a bug, we had to log it straight away without the investigation, email two Test Managers, then copy in any further emails to them. Then as more information is known, update the bug report, and making sure we also had an appropriate workaround if the bug did get released (or is already released).

All,When you are filling out the SLA tab for a defect you need to ensure that if you’ve specified that there is a workaround available that the Workaround box is filled in with the Workaround.

If you’ve raised any defect that is a Severity 3 this MUST be fixed before the branch is signed off. This is our exit criteria, we do not sign a release off with any Sev 1, 2s or 3s. if the developer disagrees with this, escalate it to myself and Becky and we’ll deal with it.

Often when we logged a bug, he was either emailing you or comes to your desk to ask why you haven’t triaged it with a developer yet. Sometimes he did that within 10 minutes of you logging it. So he wanted you to log it before triaging, but would then demand that you triage it even if you haven’t had chance to contact an appropriate developer.

You’d also have other test cases to run which he was always on your back to give him constant status reports. It was hard to win because if you have tests to run and have found bugs, then he will want you to triage them but sometimes helping the developer could take hours which means you aren’t testing, so he will be asking why you haven’t run your tests.

That level of micromanaging and demanding updates wasn’t great for morale and also encouraged Software Testers to stop logging the bugs they found because it just added to their own workload and stress.

It seemed better just to steadily get through the tests, but I suppose if you didn’t want to log bugs, then what was the point in actually running the tests? I did suspect some people just marked them as passed and hoped there wasn’t an obvious bug they missed.

Colin As Manager

It’s been a long time since I wrote about Colin, a pretty incompetent software developer that seemed to be good friends with one of the high-ranking managers that seemed to lead to some bizarre promotions: to Senior Developer, to Principal Developer, then eventually switching to a managerial role. Talk about failing upwards. 

The thing is, he came across as a bit scatter-brained so couldn’t imagine him actually being a good manager.

Here are some random stories I found from my notes and chat logs about how he performed as a manager.

Salary

Mike said Colin began sharing his screen on a meeting, and had a list of salary changes in a spreadsheet. Interesting how they have salaries lined up BEFORE the reviews which we haven’t had. Just as I have previously suspected. I suppose other managers have messed up in the past when a promotion was announced a week prior to the performance reviews.

I can imagine Colin eventually getting sacked for that type of mistake. It’s classic Colin, and as I predicted, the mistake did happen again a few months later. This time at a meeting I was involved in. We were trying to hire new developers for Colin’s teams. Colin was sharing his screen and had a list of employees that were leaving and their salaries.

When it came to my reviews, Colin kept on saying I was doing a great job but then pointing out one thing that was holding me back. It always seemed like an excuse to not give me more money or promote me. When I did switch managers, my new manager promoted me within a few months and gave me a £14k raise due to how behind I was compared to my peers.

Arranging Meetings

Colin often arranged meetings then didn’t turn up, or turned up late. He was constantly saying he was busy all day with meetings so sometimes scheduled meetings at bizarre times.

I was particularly annoyed when he arranged a weekly update meeting during lunchtimes, then half of the time doesn’t even show up. The update was mainly for him to collate info then take it to his manager, but he said we had to give our updates to the other teams, much like an Agile Scrum of Scrums meeting. So regardless if he was there, he went ahead.

There were some other  meetings which he arranged, and where he was an important attendee and he turned up 25 mins late.

One time, I was about to leave for the day, and Colin said he had an end of year review meeting with someone in Chennai. That would be 10:30pm on a Friday. Indians often have a dedicated attitude towards work. I think just because they would agree to something like that, doesn’t mean you should actually book it.

An example of scatter-brained or panicky behaviour was when he started a meeting, shared the wrong screen. He declares he is “sharing the wrong screen”, but instead of stopping ‘sharing’, he leaves the meeting, then takes him a few minutes to actually rejoin the call, where he carries on like nothing weird happened.

Informing & Criticising

Colin: "he is coming in as a Solutions Architect rather than Technical Architect" 
Me: "what's the difference in the roles?"
Colin: "I don't know, I'm just telling you the news"

I thought it was funny when he gave an update on the performance of the teams he was managing. “Last week was pretty bad for us. You guys don’t know this“, then says there were 8 Major Incidents, which got escalated to the Directors. What made it more funny to me was that the CEO had given out bonuses to his teams for apparently doing a great job. It was a fairly small bonus like a £50 Amazon gift card but still probably a regrettable action. I’ve said many times that managers seem to reward the wrong behaviour and struggle to identify the best performers. That’s another example. How can you go from doing a great job, to creating 8 disasters in one week?

I often found Colin to not practice what he preaches. So might lecture people about needing to improve code quality, but when he was a software developer, he was constantly cowboying solutions. Another example was that he says we should never put-off taking our annual leave because it can hide problems (it would illustrate a reliance on someone if they weren’t in), and show higher output for months then would suddenly drop towards the end of the year when people take annual leave at once. Then after his lecture, he then admits he hadn’t even taken 1 day off and we were 75% through the year.

Colin complained that Rob and I haven’t handled the project well, and it overran by over a month. A week or so later, the team was on a call with other stakeholders and he said “you guys have done a tremendous job”, then said the delay was caused purely by scope creep and nothing to do with the developers at all. I don’t know what to believe there. Maybe he did believe it was our fault but didn’t want to berate us publicly so was deflecting like a good manager. However, not declaring that to us meant we got mixed messages.

Near the end of that project, Colin showed me the items we had remaining and was like “you only have a few left to do…surely you can complete it all quickly”. I told Rob and he was as annoyed as me:

Rob: Its things like that that really make me nervous
Blind hope without actually looking into the problems
SURELY you can do it quickly right?
If not you must be crap!
Thanks for the morale boost!

The problem is, the project has dragged on due to complications, so the remaining work is probably quite difficult, but Colin is just seeing simple numbers. “3 tasks left; that’s not a lot”. But each task could take a week or two to get right. So even between 2 of us, it could take 2 weeks. Then Colin is setting the expectation it can be done within the week.

Closing Thoughts

When people have done a job for a while, then become a manager of those people, you would expect them to be great managers because they understand the work involved, the process, and problems they have faced with previous managers. However, time and time again, it’s like people forget their experiences and end up becoming bad managers.

Flapjack Chronicles

When we worked in the office, I noticed a Developer Keith often ate flapjacks from our vending machine. I started some bantz with a colleague called Josh who had a wild imagination and then it became a bit of a running joke.

These conversations are from some old chat logs I found.

Me 10:39:
have you noticed that Keith likes Flapjacks?
Josh 10:40:
lmao
yeah I have actually
Me 10:40:
that's the worst thing I can come up with for him
Josh 10:40:
love Keith, such a pleasant man
i know that's like his worst feature
im convinced he's a sleeper agent for our government
and he's got a silenced pistol in his drawer
in the event of a terrorist attack he'll preserve the technical staff
Me 10:44:
good theory

Josh 10:41:
I'm a bit concerned about Keith
he came up to me yesterday outside my house and asked me if I was interested in a metric ton of those flapjacks
apparently he "knows a guy"
 
Josh 14:01:
is he writing out the ingredients listed on the back of the flapjack packet again?
Me 14:03:
one day he will work out the recipe
Josh 14:03:
hahahah
that 0.1% missing, but vital ingredient he can't pinpoint

Josh 16:36:
bumped into des
we were discussing our mutual theories of Keith's secret agent/sleeper government agent mission
we both can't be wrong..

Me 09:53:
just so you know, Keith has already ate his flapjack
Josh 09:53:
wtf
already?
Dude can you get together a Flapjack Crisis Meeting
?
I'll call in backup
Me 09:56:
looks like he has 2 coffee cups as well
something isn't right
Josh 09:56:
hold him down
im coming in right now with flapjack concentrate
i reckon 50ml in a pinhead syringe should do
do we have alcoholic wipes to disinfect the injection area?
something isn't right
lol
anyone looking at these conversations would think we're the odd ones, right heheh? idiots.... :^)
Me 10:00:
50% of our conversations start with Flapjack

Cutting Corners With AI

I’ve written about how Large Language Model AI is great for generating text but it’s not necessarily accurate when it comes to facts, because its essentially just plugging in grammatically correct words. When people don’t understand this, then there can be some embarrassing failures like lawyers producing case numbers that don’t exist.

A scary idea is students getting expelled for plagiarism because AI was asked to be the judge and claimed false credit.

Report of a teacher who seems to think running portions of a student’s essay through ChatGPT will allow ChatGPT to tell them if the AI wrote the paper. ChatGPT lies and will just give you an answer that may not be true!

https://x.com/paleofuture/status/1658227685548785665

Students need to be aware that if they use AI, then teachers can too.

Recently, we were using a third party API and realised it was accepting a message that it should reject because the content wasn’t using the correct digital signature. We were previously using the Sandbox environment which we thought should basically have no validation, but we were then sending the same message to the Integration environment and expected a Rejected status.

So we logged a helpdesk ticket with them and quickly got a reply back. It was a long-winded answer and basically agreed with us it was incorrect behaviour. The wording was clearly AI. But at least they admitted they had just used AI.

It might have been the case that their technical staff were unavailable so a manager made an attempt to deal with it without actually reading or understanding the problem at all.

I have just ran this through the chatbot and have had the following response: The details provided do not specifically mention the behavior of the Order endpoint in relation to the signature from the example request, especially in the context of different environments such as INT. However, it is common in software development to have different configurations for different environments such as development, testing (often referred to as int for integration), staging, and production.   

In many cases, the integration or testing environment is configured to be more permissive to facilitate testing and debugging, which might include accepting a static example signature for all requests. This would not be the case in a production environment, where security and proper verification of digital signatures are critical for ensuring non-repudiation and the integrity of the order. 

Based on standard practices, if the order endpoint is accepting a specific example signature in an integration environment, it could be by design for testing purposes. However, for a production environment, this would be a significant security risk and would not be by design. 

Since the provided documentation does not explicitly confirm the intentional behavior for the order endpoint in the int environment, it is advisable to refer to the specific implementation details or consult with the development team responsible for the API to understand the intended behavior.  

Can you confirm if this answers your query, please? 

Teapot

I was looking through the list of HTTP status codes and saw a strange one.

Error 418 (I’m a teapot)!?

Google have a dedicated teapot page:

Error 418 (I’m a teapot)!? 

If you hover over the teapot, his eyes open and he smiles. If you click it, it then animates.

It sounds like the origin was an April Fools prank.

RFC 2324 was written by Larry Masinter, who describes it as a satire, saying “This has a serious purpose – it identifies many of the ways in which HTTP has been extended inappropriately.” The wording of the protocol made it clear that it was not entirely serious; for example, it notes that “there is a strong, dark, rich requirement for a protocol designed espressoly for the brewing of coffee”.

wikipedia

AI Art 

The debate about generative AI for images is an interesting one because it’s clear it can easily take work away from human artists. A few years ago when AI was a bit inconsistent and drew obvious errors like humans with extra/missing fingers, then you couldn’t use these images in a professional context without editing the image, but then maybe you would need to hire someone with those editing skills to fix it.

With how creative these AI models can be, it has the likes of JimllPaintIt fearing for the future. Images can be generated in a famous artist’s style, so what happens if people can just generate ones in the style of JimllPaintIt?

In a now deleted thread, he stated:

“My attitude towards AI “art” has – in a short space of time – gone from mild disinterest to acute irritation to absolute despair for the future of humanity. The most depressing thing is seeing artists embrace it. Talk about turkeys voting for Christmas.”

JimllPaintIt

Some others raised a good point, that the person typing the prompts still needs to be creative:

“The irony I have seen so far is that the best results from it come from talented artists. I don’t think it’s the awful thing you think it is. Talent is still needed for vision. I think it just opens up art to more people who have vision but not necessarily the physical skills.”

The animator Cyriak then chimes in:

I’m sure musicians have great record collections as well. The idea that “skills” and “talent” are magical properties some people are born with is rubbish. “talent” is just being bothered to keep trying, and skill accumulates as you keep trying.

Cyriak

Which I think isn’t correct. It’s more like a combination of what you are born with, then learned skill, (nature/nurture) as someone else points out:

In that case, if you kept practising you could run faster than Usain Bolt? or is he just naturally faster than you?

Matt_Francis

“I don’t draw pictures by running in a straight line with pencils tied to my shoes. I’m not sure anyone does”

Cyriak

Not sure what Cyriak’s response even means. Is he saying it’s a completely different skill so art is from practice, but physique is natural?

People keep talking about how AI will take away Software Developer’s jobs but at the moment, I think it can be used to take away some of the tedious aspects, and also give a good starting point (boilerplate code) to then enhance with your skills. You also need to understand how to ask the AI to realise your vision. I think there are comparisons in the Art world, but I think it’s easier to understand how their jobs are impacted more directly. ie Hiring an artist for one (or a few images) when you can use AI – versus hiring a developer for a few weeks to get a fully working program/website.

Github copilot

We recently had staff from Github Copilot do a presentation on how their product can be useful to Software Developers. I found their answers to be a bit wishy-washy. I think it’s a really complex topic and having what I think were essentially sales managers trying to pitch something technical to us was a challenge. They didn’t have a full understanding of how it actually worked.

Someone asked a question to clarify if Copilot just looked at your open documents, or if it had the permission to see all the other files in your repository. Their answer was vague, along the lines of “it might do. Could come down to chance“.

For it to be effective, it really does need to look at your codebase to see what your product does, what features are already developed, and for bonus points, your coding style.

When it needs to suggest calling third-party code and installing additional libraries, does it understand that you may need to abide by a certain licence (pay some fee, or not use it in open-source etc)? and does it know that you may be limited to a certain version of it due to other dependencies? when features and the API (required parameters etc) can change drastically between versions, does Copilot understand that?

It’s probably the same scenario as what Wolfram Alpha were talking about when they came to our company to do a presentation on AI. They were emphasising how standard language models often suggest some text which reads like it makes sense, but it’s actually nonsense. They gave an example where it quoted a real journal from that country, stated the title of a chart that exists, quoted some figures and years – but the figures were fictional.

I saw a news article about how a lawyer presented some documentation to a judge about similar cases, but it turns out the lawyer had used ChatGPT and it had made up the case numbers and years.

The way those models work is that it knows some related words, and knows sentence structure, but the likes of ChatGPT doesn’t understand that something like that needs to be accurate and you can’t make stuff up. So Wolfram were saying their plugin can be combined with ChatGPT’s conversational structure to plug in actual figures to make accurate essays. TEAMWORK.

I would imagine there’s a good chance Copilot has exactly the same issue. It knows a bit of structure, slaps in the correct programming language, but it has no idea that it’s from a different library version that you aren’t using.

From what I have seen of Copilot, it is very impressive but does often give you code that doesn’t quite compile but gives you a good template and inspiration of how to progress.

In the past I have seen people blindly copy code from the internet, or just do what a colleague suggests without actually thinking about it. I think we are gonna be seeing this more from now on, but it’s gonna be the AI’s fault.

I am not against AI in programming because it can speed up development in certain tedious areas, but it always comes down to the idea that the best programmers are ones with a certain mindset of quality, and I think AI is gonna produce more developers with the wrong mindset because it’s about speed and cutting corners.

I’ve heard people suggest that the next wave of developers can be so dependent on AI, that they will be unable to come up with a solution when the AI doesn’t get it right.