Anecdotal but here's how I described using the likes of Copilot to my sceptical colleagues (they were late to the party!):
It's like having a senior software dev over your shoulder. He knows pretty much everything about coding but he often comes to work drunk...
And that was the best analogy I could come up with: I think it's sped up my work enormously because I limit what it does, rather than let it loose... if that makes sense.
As an example, I was working on a C# project with a repository layer with a bunch of methods that just retrieved one or two values from the database, e.g. GetUsernameFromUserGuid, GetFirstnameFromUserGuid and so on. They each had a SQL query in them (I don't use ORM's...).
They weren't hard to write but there were quite a few of them.
Copilot learned after the first couple what I was doing so I only needed to type in "GetEmail" and it finished it off, (GetEmailAddressFromUserGuid) did the rest, including the SQL query and the style I used etc.
To me, that's where it shines!
Once you figure out where it works best and its limits, it's brilliant imo.
as a heavy user of vim motions and macros I'm thinking this is one reason I've not found AI code generation terribly useful.
Yes, it's good at boilerplate. But I've spent a long time getting good at vim macros and I'm also very good at generating boilerplate with a tiny number of keystrokes, quickly and without leaving my editor
...
or I could type a paragraph to an LLM and copy paste and then edit the parts it gets wrong? also I have to pay per token to do that?
> or I could type a paragraph to an LLM and copy paste and then edit the parts it gets wrong?
I think there's something you're missing in their description. They're not asking a model to do anything, it's automatically running and then suggests what should come next.
Also in editors like cursor I can ask for a change directly in the editor and be presented with an inline diff to accept/reject.
I don’t know if you’re a vim user, but what makes people like vim is that once you master it, it’s not about typing and deleting characters. It’s about text manipulation, but live instead of typing an awk or sed script. It’s like when driving a car, you don’t think about each steps like watching the speedometer, verifying the exact pressure on the gas and brakes, and the angle of the steering wheel. You just have a global awareness and just drive it where you want to go.
It’s the same with Vim. I want something done and it is. I can barely remind how I did it, because it does not matter. Something like duplicate the current function, change the name of the parameter and update the query as well as some symbols, can be done quickly as soon as the plan to do so appears. And it’s mostly in automatic mode.
It's a tradition to torture car analogies so let me do so, this is more like when you start to say goodbye to people at a party your car identifies the pattern and warms up, opens the door as you walk to it and then drives you home. If you sit and take the wheel to drive towards a hotel you booked nearby it spots that and starts doing that for you.
> Something like duplicate the current function, change the name of the parameter and update the query as well as some symbols, can be done quickly as soon as the plan to do so appears. And it’s mostly in automatic mode.
And with these things I might move the cursor to where I want to put the new function, and then it's just immediately suggested for me. One key press and it's done. Then it suggests the other two based on the type definition somewhere else.
Let's continue torturing the poor car. It'd be great if it works that way, but what I fears is when the AI chauffeur decide on a route that appears to go where I want, but instead it's a dead end, and you don't know the exact intersection for the correct path. Or it take a long sinuous dirt road ignoring the highway. Or it sends me off a cliff because it assumes it's piloting a plane. To manage those risks, you have to keep your hand on the steering wheel and know the route beforehand. In this case, I would prefer a GPS map and have something that is a bit less fragile.
I don't mind writing code, and if it become boilerplatey, it's a good time to rethink those abstractions or write a few functions. And there's snippets for shorter sections.
Depends upon the user. Are you fast (and confident) at evaluating the output and discarding the bad suggestions? This is why I think using AI hurts some developers and helps others, and the usefulness is best for those who already have a good deal of experience.
I don't ever use it for fire and forget, but I've been wondering how well that might work in small side projects where hidden bugs aren't a big concern. Like using a fire and forget to spin up a small javascript game. But never in production code that I might get a 2am Saturday incident call on.
This is something I've been working on for about 6 months now.
I often come up with simple projects, lots of which go nowhere, and I thought it would be good if I could just host stuff quickly with no configuration and after some time in the shower, I came up with Nervespace.
Anyway, the wires are still hanging out and you can't create an account yet but you can try it for free by dropping your zipped .NET app on the homepage.
Let me know if you have any questions or comments.
I'm probably about to show my ignorance here (I'm not neck-deep in the AI space but I am a software architect...) but are they not just dedicated matrix multiplication engines (plus some other AI stuff)? So instead of asking the CPU to do the math, you have a dedicated area that does it instead... well, that's my understanding of it.
As to why, I think it's along the lines of this: the CPU does 100 things, one of those is AI acceleration. Let's take the AI acceleration and give it its own space instead so we can keep the power down a bit, add some specialization, and leave the CPU to do other stuff.
Again, I'm coming at this from a high-level as if explaining it to my ageing parents.
Yes, that's my understanding as well. What I meant is that I don't know the fine details. My ignorance is purely because I don't actually have a machine that has an NPU, so I haven't bothered to study up on them.
> I’ve never done it, but from watching friends do it, it was far too easy to deposit money, or borrow money on credit, and bet it frivolously.
A data point for you...
I was on a train earlier this year and I was standing behind someone out with their wife/girlfriend. He had his phone in his hand the whole time with a gambling app opened (the green one, PaddyPower maybe?). I couldn't read the screen exactly but there was a list of fixtures for football matches and a button next to each one. From memory, I think each button was odds for the game, e.g. 10:1 Luton win vs Exeter or something.
Anyway, the point is that (again, from memory) at least 8 times in the journey, he opened and closed the app and clicked on 10+ of these odds buttons, while in conversation with his girlfriend who had put her phone away at the start of the journey.
I vaguely recall him checking his balance at one point too.
Anyway, I thought I'd back up your story by telling one of mine where I watched someone place 50+ bets on a 30 min train journey! It's frighteningly easy (emphasis on "frightening")
Edit: This happened a while back and I remember telling this story to people at the time so the numbers may be off but they're in the ballpark!
I have an HP Business Printer at home: A Laserjet M477fdw. It's brilliant and I've had it for years at this point. I also use non-HP toner. However, I have never connected it to the internet. Ever.
Since day one, I set a static IP and prevented internet access simply by removing the gateway IP (I've recently upgraded my router and blocked internet access entirely). I also use a driver from 2021.
I genuinely cannot see a need at all to connect it to the internet, let alone allow AI to have access to it.
It honestly reeks of middle-management scrabbling to find a reason to spend budget on AI! In fact, now that I think about it, this is as asinine as the Logitech subscription mouse![0]
The way companies are flailing to include AI in their plans in any way possible seems to be driven by investors rather than anyone in touch with the actual business of the business. Very bubble behavior.
What does the printer do if reset to factory defaults, maybe through a long power outage?
I had a similar no gateway and static IP trick (it was a lazy short term move) for a Windows VM and I found Windows ran the network fixer without my input at some point and had reset DHCP so it could get those updates!
>Since day one, I set a static IP and prevented internet access simply by removing the gateway IP (I've recently upgraded my router and blocked internet access entirely). I also use a driver from 2021.
Printers are cursed like that.
I won't be surprised once we have ink cartridges with builtin fw version numbers which make the printer stop working until its firmware is updated to the latest version, which then can only be done by connecting it to the internet.
They already sucked enough to annoy Stallman to the point of making him come up with GNU back then. They only got worse.
Actual printing tech hasn't advanced all that much.
This ridiculous situation exists only because we do not have an Open Hardware (OSH) printer. If we got one (1), everybody would get that one, and the farce would forcibly end. No more bullshit.
I'm so guilty of abandoning projects in the past before they're even remotely done. It's mainly due to losing interest in the subject itself rather than dealing with the bugs and legacy and bad code decisions as you get further along the journey.
I used to get bent out of shape about it and criticize myself for it but I came to realise that it meant I didn't really have enough interest in the thing I was building in the first place.
Case in point (and a bit of a shameless plug tbh) just this morning I finished, end-to-end my current project I've been working on for 4 months: a .NET hosting site like tiiny host where you drag your zipped .net project onto the page and it gets automatically hosted with a unique url and whatnot.
For the last month or so, I've been at the really fiddly stage where all the moving parts came together and they all had bugs that had to be fixed both independently and together with other bugs and finally it worked this morning (still to polish it though).
I usually don't get to that stage and have abandoned a great many things over the years but this project has captivated me from the start with only a minor loss in productivity (due to a health issue with a family member tbh).
I'm now at the fear stage the author mentions - will anyone want to use it? We'll soon find out!
The long and short is that I discovered that I abandoned things frequently in the past but I realise I just wasn't that into the ideas! I don't worry about it as much now.
I've used this many times myself and it works great.
However, as I mentioned below, I read something recently that says local account options are being removed in an upcoming version (I can't find the article now).
I presume it means the binaries are being removed from the ISO so this may no longer work (except for Enterprise and LTSC I'd imagine).
FTFY: AI that attempts to predict people committing crimes.
By "appearance" are they talking about a guy wearing a hoodie must be a hacker or are we talking about race/colour/religious garb etc?
I'd rather they just didn't use it for any kind of criminal application at all if I have a say in it!
Just my $0.02
reply