Cursor Is Beating VS Code (...by forking it)
Summary
TLDRIn this video, the creator discusses their experience with Cursor, a new AI code editor, despite being an investor. Initially skeptical, they found Cursor surprisingly useful for tasks like calculating revenue percentages and handling Cloudflare Workers. The video highlights Cursor's autocomplete and code modification capabilities, comparing it to other tools like Super Maven. The creator also touches on the challenges of forking VS Code to achieve deeper UI integration and the potential of open-source alternatives like Code Frying Pan.
Takeaways
- π The speaker is an investor in Cursor, an AI code editor, but initially did not enjoy using it and churned twice.
- π¨βπ» The speaker prefers Super Maven, a co-pilot alternative in VS Code, for its speed, despite also investing in it.
- π After giving Cursor another chance, the speaker found the experience surprisingly enjoyable and useful.
- π₯ The video is sponsored, but not by Cursor, and the speaker emphasizes that Cursor has had no input on the content.
- π The speaker demonstrates Cursor's capabilities by using it to calculate and compare revenue from different viewer segments.
- π€ Cursor's AI correctly performs math operations and autocompletes code, impressing the speaker with its accuracy.
- π οΈ The speaker appreciates Cursor's ability to make bulk changes across code with commands like 'Command Shift K'.
- π¬ The speaker discusses the limitations of VS Code extensions and why Cursor's team forked VS Code to create a more integrated experience.
- π The video mentions other projects like Code Frying Pan, which is an open-source fork of VS Code aiming for better extensibility.
- π The speaker concludes that Cursor is not about replacing developers but making the tedious parts of coding less burdensome.
Q & A
What is Cursor and why has it been a topic of discussion?
-Cursor is a new AI code editor that has been causing a stir due to its advanced features and capabilities. It has been a topic of discussion because of its potential to revolutionize coding by offering AI-assisted coding suggestions and automation.
Why did the speaker initially have a negative experience with Cursor?
-The speaker initially did not like using Cursor and churned from the product twice because they found it less appealing compared to Super Maven, another AI tool they invested in and preferred for its speed.
What changed the speaker's opinion about Cursor?
-The speaker's opinion changed after giving Cursor an honest try and discovering its capabilities, such as auto-completion that correctly performed math operations and helped with data analysis tasks, which surprised and impressed them.
How does the speaker feel about the auto-completion feature in Cursor?
-The speaker is impressed with Cursor's auto-completion feature, finding it helpful for tasks like calculating total revenue and percentages, and updating costs across different models without manual effort.
What is the significance of the 'command shift K' functionality mentioned in the script?
-The 'command shift K' functionality in Cursor allows the user to make changes across multiple lines or files efficiently. It was highlighted as a significant time-saver and a feature that contributed to the speaker's positive experience with the editor.
Why did the speaker decide to give Cursor another chance despite their initial dislike?
-The speaker decided to give Cursor another chance to provide an honest evaluation of the product, especially after receiving hints about new features and updates that might enhance the user experience.
What is the role of Cloudflare Workers in the speaker's experience with Cursor?
-Cloudflare Workers played a significant role as the speaker was working on a project that involved handling CORS, and Cursor was able to generate the necessary code to handle requests efficiently, showcasing its utility in real-world scenarios.
What are the limitations the speaker experienced with Cursor?
-The speaker experienced limitations with Cursor's auto-completion speed, which was not as fast as Super Maven, and occasional confusion when referencing the wrong numbers during code changes.
Why did Cursor decide to fork Visual Studio Code instead of creating an extension?
-Cursor forked Visual Studio Code to overcome the limitations of creating an extension, which would not allow for deep integration into the editor's UI or the creation of interactive features that Cursor offers.
What is the speaker's view on the open-source nature of Visual Studio Code and its impact on projects like Cursor?
-The speaker acknowledges the benefits of open-source projects like Visual Studio Code but also points out the potential downsides, such as others forking the project and potentially profiting from it, which will be discussed in an upcoming article.
Outlines
π€ Initial Impressions of Cursor AI Code Editor
The speaker begins by disclosing their investment in Cursor, an AI code editor, despite having previously churned from the product. They express their initial preference for Super Maven, another AI tool for VS Code. However, after giving Cursor a fair trial, they find themselves surprisingly enjoying its features. The speaker emphasizes that Cursor had no input on the video, which is sponsored by Frontend Masters, offering a discount on their extensive course library. The speaker then demonstrates Cursor's capabilities by performing calculations and data analysis on their video viewership and revenue, showcasing Cursor's auto-completion and math-solving abilities, which exceed their expectations.
π οΈ Enhancing Productivity with Cursor's Advanced Features
The speaker shares their experience using Cursor to streamline coding tasks. They highlight Cursor's efficiency in handling Cloudflare Workers, where it automatically manages CORS and request methods. The speaker appreciates Cursor's ability to quickly adapt and provide code snippets for various tasks, reducing the need for manual research. They also discuss Cursor's autocomplete and intelligent suggestion features, which assist in formatting and refactoring code with ease. The speaker notes that while Cursor's autocomplete is not as fast as Super Maven, its overall user experience is compelling. They also touch on the challenge of committing code generated by AI tools and the importance of verifying the code's accuracy.
π Deep Dive into Cursor's AI-Powered Code Editing
The speaker delves into Cursor's advanced capabilities, using it to refactor and optimize code for image handling and pagination. They attempt to update pagination logic and default image counts, demonstrating Cursor's ability to make changes across multiple files. Despite some hiccups, the speaker is impressed with Cursor's intelligence in understanding and modifying code based on context. They also discuss the limitations of Cursor compared to other tools like Super Maven and the importance of testing the code generated by AI. The speaker concludes by acknowledging the value of Cursor in reducing the tedium of coding and the potential for AI tools to enhance developer productivity.
π The Future of AI in Code Editors and Open Source Implications
In the final paragraph, the speaker reflects on the broader implications of AI in code editors and the challenges of open-source software. They discuss the limitations of VS Code extensions and why Cursor chose to fork the platform to achieve deeper integration. The speaker also mentions Code Frying Pan, an open-source VS Code fork that aims to enhance extensibility, expressing excitement about the potential for more open-source projects to push the boundaries of code editor capabilities. They conclude by hinting at an upcoming article on the unintended consequences of open-sourcing projects, suggesting that it will explore the dynamics of innovation and competition in the software development space.
Mindmap
Keywords
π‘Cursor
π‘Autocomplete
π‘Investor
π‘Churned
π‘Super Maven
π‘VS Code
π‘Cloudflare Workers
π‘Open Source
π‘Fork
π‘Command Shift K
π‘Drizzle
Highlights
The speaker discloses that they are an investor in both Cursor and SuperMaven but churned from Cursor twice before giving it another try.
Initially, the speaker preferred SuperMaven for its speed, but Cursor's surprising improvements have led to an enjoyable experience.
Cursor's ability to correctly autocomplete complex math and coding tasks with minimal input impressed the speaker, transforming their opinion of the tool.
Cursor allows for real-time code updates and calculations, such as adjusting total revenue from different viewer types automatically.
When testing Cursorβs performance on cost calculations, the tool easily adjusted image size and updated cost data without additional manual intervention.
The ability to quickly fix CORS (Cross-Origin Resource Sharing) issues using Cursor's automated suggestions reduced time spent searching for solutions.
Cursorβs integration with Cloudflare Wrangler allows for faster and more efficient project initialization, such as building new apps with minimal manual setup.
Cursor's multi-file changes and autocomplete features streamlined the speakerβs workflow, especially when working with tests or making large-scale code adjustments.
Cursor intelligently manages pagination code updates, changing default count returns and checking for additional pages server-side.
Cursor works with various ORMs (Object-Relational Mappers) and autocompletes database queries, making it adaptable to different frameworks like Drizzle.
One notable limitation of AI-driven code tools like Cursor is the potential to forget whether the user wrote the code or the AI did, increasing the risk of committing unintended changes.
Cursor excels in reducing tedious tasks and making development faster by decreasing the need to consult documentation or StackOverflow for common solutions.
Despite minor limitations, such as slower autocomplete compared to SuperMaven, the overall user experience improvement is significant enough for the speaker to prefer Cursor.
Cursorβs fork of VS Code allows for deeper UI integration that wouldnβt be possible with just a VS Code extension, enhancing the editorβs functionality.
The speaker concludes by highlighting an exciting open-source project, Code Frying Pan, which aims to create a more extensible VS Code fork, addressing many limitations seen in the current version.
Transcripts
we need to talk about cursor the new AI
code editor everyone's been freaking out
about before we do that I'm going to go
out of my way to disclose the fact that
I am an investor in cursor I found them
interesting enough early on to throw
some money their way but I did not
actually like using it and I churned
from the product twice I was much more a
fan of super Maven which is a co-pilot
alternative in vs code that I admittedly
also invested in and it's really really
fast but I want to give this an honest
go and I did and the results have
surprised me I'm actually finding myself
enjoying cursor quite a lot that said
they have no idea making this video
they've given me no input whatsoever
they've just given me a couple hints
about new things coming up in the past
and I've barely talked to him since this
video is not sponsored in any way by
cursor but it does have a sponsor so
let's cut to them really quick there we
go get status Y what you working on
sorry I didn't see you there I was
actually watching the front-end Masters
course that Prim engine did on git it's
been really helpful so far wait you paid
for a course don't those cost like
thousands of dollars do I look like I
have thousands to spend on a course I I
write JavaScript for a living it's only
400 bucks a year and you get over 200
courses from industry veterans like
primagen Lydia Hall Jason langor M okay
okay I get it you better get it it's
actually 100 bucks off until Wednesday
so if you check out soon you'll only
have to spend $300 on this massive set
of courses front masters.com check it
out and tell my son you okay back to
cursor I want to give a demo of the
experience I had that made me go from
iffy to actually quite in love with
cursor so here I have some numbers that
I was dumping cuz again what I was
trying to compare was my premium
viewership to my non- premium viewership
and what Revenue looked like from those
two different targets so when I was
typing I typed out premium watch hours
non- premium watch hours I started
typing
total and it autoc
completed with the right answer that's
when I was like okay what the it
just did math
correctly then I decided to push it a
little bit here I have my premium to
non- premium watch hours split and I
have my ad Revenue versus my premium
Revenue so if I combine these numbers
together I should be able to get not
only my total revenue but compare
percentages so first we're going to do
total revenue cool now I want
percentages at the end I want little
parentheses at the end so add the
percentages after the
numbers what the how is that that
easy I had just swapped the order there
cuz that was hard to read but here we
can see that my non- premium watch hours
make up 63% of my viewership but ad rev
makes up about 70% so I make more money
from people watching ads than the
premium viewers because the premium
viewers are 36% of my time but only 30%
of the revenue but the fact that I could
do that with auto complete without
having to think it through it all kind
of broke my brain because it was my
understanding that the things AI are B
in general are math and really specific
integration stuff but it figured this
out correctly and that's when I decided
to give it a bit more honest a shot
specifically when the command shift k
thing worked that well and I could just
select do that and say make this change
and it worked that was the like oh
this might be useful to me moment when I
was working on P thing I put a bunch of
time trying to figure out the difference
between these two different models to
figure out which one made more or less
sense a lot of the time was spent doing
number crunching so I had worker KV as
one of my storage solutions R2 as a
storage solution an average value for
image and then the worker KV cost per
image as well as the R2 cost per image
and then I added the cost per image for
these different sources for the model
one versus model two and then I was able
to create these cost
values let's say I want to change it
let's say I realized I was wrong here or
the image size is off let's change it so
make the example image size 4 megabytes
instead
now it changes all of the costs all the
way through and gets me the correct
costs for every example I thought that
was really cool I thought that was
awesome that I could just tell it to
make this one quick change for me and
get all of my data updated and that was
when I started falling in love thus far
I have not had it spit out incorrect
numbers it is important to check those
things when you do things like this the
only mistakes I've seen it make so far
are that it was referencing the wrong
numbers when I told it to make a change
like I told it to honor the numbers that
I set for work KV andr 2 but it was
using the ones here and it was updating
them up there but it's usually visible
when it's changing the wrong Source but
I've been very impressed with my
experience with all that where things
got much cooler was when I was actually
working on building this app with Cloud
flare so I'm going to actually do
something different we're going to a new
project with Cloud flare Wrangler
init we'll call this a cursor CF demo
we'll do the hello world starter let's
hop into here and get some actual work
done so the issue I was running into
when I was using workers previously that
they ended up helping with a lot was
dealing with cores so let's fix it make
this handle cores from all Origins
is this a lot of code yes but this is
also all of the necessary code to handle
course do you know how great that is to
not have to go spend a bunch of time on
Google figuring out what the expected
way to do this is in Cloud flare just to
realize the expected way is to handle
the request method of options manually
yourself and then append the header
always to every response it was so nice
it was really convenient to have this
handle those types of things for me or
all my weird onboarding questions
admittedly I did spend a lot of time
inside of uh Claud directly as well
asking it questions getting Snippets
doing back and forth there but having
something in my editor like this that I
can just tell it hey fix this and it
does that's been really nice and a lot
of those types of busy work things like
I don't want to go plug the 15 places in
this has to be it's so convenient I've
been really impressed with that the auto
complete isn't quite as fast as I used
to from Super Maven and I do miss that
I'm not going to pretend otherwise but
there's lots of other little things that
this does well let me find a real
project to Showcase here the the great
example is tests where if you change the
formatting of Some Testing stuff it will
be very smart about guiding you with the
little tab autocomplete stuff as you
make changes elsewhere so I changed this
from images to
files tab to jump see that at the bottom
there it brings me other places of
things I might want to change I just
press tab for it to keep doing it and
there it made the changes correctly
think it finished it up here oh no it
did yeah the tab complete just carried
me through all of that that's the thing
that vs code and co-pilot can't do is
new UI where it's proposing a thing that
moves you around the editor and I've
actually found it quite nice so if I
change this to files in just a moment it
was smart enough to do that one but it
didn't do the next one cuz I did multi
select this is the thing with AI it's
not always going to do the exact same
thing more often than not it can figure
out what you're trying to do and it can
be pretty smart about it I thought it
was nice and I've been surprised at how
useful these types of little things have
been in making your life easier as
you're autocom completing and making
changes to code it does make it a little
easier to commit code that you didn't
know you wrote and to credit primagen
and all the others who have been saying
this but he really the one to push it
initially it is the biggest problem with
the AI code tools is it's easy to forget
if you actually wrote the code or not or
where it came from and suddenly you're
committing much more code than you're
used to it's also what I hate about
tools that push code gen really hard
it's why things like rails and laravel
have been annoying for me is tools that
expect you to just codeen all the
complexity away are just as bad at least
very least what I'm using these AI tools
like cursor I'm seeing it in my editor
and approving every line along the way
I'm also obsessed of when I'm doing get
stuff where I'll get ad- p and manually
accept or decline every change as I go
but we haven't even gotten to the most
fun Parts yet I'll admit thing I'm about
to show I've used a lot less and it has
not been as successful for me but when
it works oh man when it works it's
really nice so here's what we're gonna
do I have this piece here that is the
paginated get images and the pagination
is admittedly a bit of a mess I'm
relying on like hard-coded numbers for
this to work so I'm going to try
something I don't even know if this is
going to work or not update the
pagination code to check server side if
more pages exist also change the default
count to return more
images I spelled that wrong I just use
the command shift K feature and this one
will hop between different files and
make changes in
them apparently I had already removed
the limit which makes sense I think I
did that right before launch because I
realized that the limit I had was
roughly the same as the limit that was
set so it made no sense to have the
pagination anymore but here they added a
limit with the default value of 50 and
in the get images with tags function we
updated the default limit to be 50 we
now fetch limit plus one items from the
database we return the has next page and
we slice items there we can look at the
different files to see what it changed
so in images. TS here is what it's doing
in schema. TS it shouldn't have to make
any changes here I'm going to accept it
and see what the diff
is let's take a look if it will let me
close it no the composer is stuck open
that's
great love that for me
cool I command R and let me close it
nice doesn't look like it actually
changed anything in here did it I don't
think it changed anything here yeah it
just told me things happen in that file
I didn't change them so now there's an
optional limit and we're still not even
using it are we get image of tags we're
not cool it bombed hard for that one as
I said it's not always reliable it got
confused because it didn't know how that
worked let's give it an easier one let's
tell it to add a new query okay so this
grabs an image as well as the copy
events which keeps tracks of how often
it has been
copied let's add a get images with tags
function actually I don't want images
with tags uh we'll tell it to uh change
it to only get one image use the image
ID make sure you still get all the
tags and what's really cool here is I'm
using drizzle which is admittedly not
the most popular RM but it's smart
enough to use it correct more often than
not I'm curious what it's mad about here
I get rid of the Json group here will it
shut up read only table property
underscores incompatible bring back the
tag ID it's still smart enough to
autocomplete that from schema uploaded
image left join so it's doing the join
for me where combining all that group by
get if no error or no result throw
otherwise return it's pretty smart about
these things and it's nice to have since
I have all my DB stuff in this one file
It's relatively smart about using like
the syntax the definitions and the
things that already exist here and as
long as you're actually testing the code
you wrote to make sure the output is
correct is pretty nice I've been
surprised at how much I've been relying
on this especially for onboarding onto
new things I just filmed a video earlier
where I was fighting PHP and laravel
hard trying to get file uploads working
I had a bunch of people in chat making a
bunch of suggestions I tried almost all
of them with no luck eventually I can
even show you guys what I did let me um
go to Lille first try I didn't commit
the broken state but what I ended up
doing that ended up working is I went to
my file controller I just literally
command Cade and said the file uploads
aren't
working please fix and it did it first
try that's what I've been impressed with
here it's not that this tool is changing
the way I Dev forever it's not that it's
writing all this code I'm not capable of
writing it's not that it's smarter than
me or any of that is that it's
making the tedious stuff way less
tedious and the likelihood I have to hop
to the docks to fix a problem has gone
down quite a bit the way I'm starting to
see these tools isn't so much as an
alternative to writing code rather an
alternative to having to go through the
docks and stack Overflow and those other
things with honestly roughly the same
level of success the amount of times
I've went to stack Overflow copy pasted
the top upvoted answer that seemed
totally correct and it just didn't work
is hilarious and here at least it works
more often than it does there like okay
roughly the same I would say as for the
people asking like what's the model
great question all of them by default
cursor uses a ton of different models I
don't know how it chooses which one it's
using where but it's using a lot of them
and I've been impressed overall it's
been solid it's not just a cloud wrapper
it's a cloud wrapper gbt 4 wrapper 3.5
and all these other things I tried
turning them all off for a bit CU I
wanted to like only have the fast ones
but I turn them all back on cuz it was
the default and I trust them to figure
out what to use where it would be nice
if the the inline auto complete was as
fast as it is in super Maven I would
love to have super Maven be a model in
here for that but it's fine do I still
miss super Maven yes the autocomplete
speeds were unbeaten and this is still
just not there but overall the user
experience win is enough that have come
around to the fact that they forked VSS
code which was honestly in my opinion
the big scary thing like why would you
not just make a vs code extension the
reality is that
you can't do a lot of the cool things
this does a lot of the UI that exists
here cannot be created as an extension
in vs code you might think that that
sounds absurd and I'm going to cite
something interesting here there is a vs
code plugin that I would consider at
this point essential to most typescript
devs that turns this mess that you're
probably all used to seeing with your
type errors into this which is actually
readable so when you see something like
this the immediate reasonable reaction
somebody would have is oh it's cool that
vs code extensions let you extend things
like that do you guys want to know how
this works this isn't some little
embedded HTML view that they have
customized like that this is an SVG this
is embedded as an icon coming from the
extension because that was the only way
VSS code would allow them to embed that
much data in this type of UI on top of
that when you scroll down with one of
these type errors you get this
underneath I can go make one of these
quick to show cuz I'm certain I have it
installed I'll do um something fake so
here I get my fancy type error here but
above it I'm still getting the nonsense
because again it's doing this by
rendering an icon underneath which is
hilarious but at least I get an error
that's actually readable but the fact
that you have to do that in order to
make vs code behave is hilarious and it
also means it can't be interactive you
can't build interactions into this all
you can do is have quick like links to
things based on the existing VSS code
parameters that EXT has access to you're
very very limited to the ways you can
add info here in the UI structures you
can have with it that I know for a fact
this is a problem a lot of devs are
having I've talked the super Maven team
I've talked to other teams the
limitations of how vs code extensions
expect you to operate where they're
expected to almost run like behind the
scenes not as a core part of the UI is
very painful they let you have side
panels that can do all sorts of crazy
cool stuff but the side panel doesn't
solve the problem of integrating deeply
into the editor the idea of having a
command K like this that embeds in the
actual editor there you can't do that
with a VSS code extension that's why
they forked and while on one hand
maintaining a fork of something that big
sucks on the other hand is one of the
most promising opportunities to actually
meaningfully improve the user experience
we have in vs code when using these new
tools right now it is close Source I
have no reason to believe they would
change it it would be cool if they did
the very least made these extensions
more access ible to other Developers for
other things doesn't necessarily fit
their business model though that all
said there's only stopping someone else
from forking vs code and making these
things more extensible I'm actually
surprised that there isn't a fork that
has expanded on what things people can
do to vs code because I think that would
get some traction it would be pretty
cool if someone went in that direction
because I'd love to see a more
extensible version of vs code it's still
an incredible editor and it's gotten us
so far but I would love a future where
you didn't have to Fork the entirety of
it to make the types of feat Fe that
cursor is trying to add right now
there's a great article that I'm excited
to cover in the near future the uned
consequences of Open Source that goes in
depth on the 1% of the vs code code that
is cursors to talk about the the
consequences of open sourcing your
projects meaning someone else can be the
one to go make the money on it I'm
excited to read this one should be
really fun keep an eye out for that
chatlink something cool that I'm
actually pretty hyped about code frying
pan is another tech Creator in the space
it's actually working on almost exactly
what I just described an open- Source
VSS code Fork that handles all of these
types of things better because again vs
code doesn't have the right Primitives
built in so they built them themselves
as an open source solution this is
actually pretty hype I'm excited to see
this I might give this a shot too uh let
me know in the comments if you think I
should give this a real go yeah that's
dope it's really cool to see people
building this in an open source way that
theoretically anyone could use yeah
I like that a lot I think that's all I
have to say about cursive for now though
so until next time peace NS
Browse More Related Video
The code editor wars continue...
NEW: Claude Dev Beats Cursor?!?π€ MORE INSANE UPDATES! Screenshot Live Site & Improve Code With AI
VSCode + ClaudeDev + Continue : STOP PAYING for CURSOR with this OPENSOURCE & LOCAL Alternative
My Minimal and Beautiful VSCode Setup
What Does the BEST LLM Experience Look Like in Obsidian
Coding with AI: The Beginning of the Personalized Software Era?
5.0 / 5 (0 votes)