| I love it. I love that it learns my codebase, my style, etc... and truly does feel like a second brain at times. I am using it within JS/Vue and Python and really enjoy it a lot. You can write a simple comment like "upsert the object in the store, and if the item is incomplete recursively call a refresh fn until it is complete" and it will "magically" do the rest - down to understanding where the objects I am referring to are in my store, the attribute used to decide this ('completed_at'), down to the correct syntax for updating the data in a way that plays nice with vue reactivity. It's also a stellar autocompleter in Python-land. I have been using more and more type annotations in my codebases, but even without that, it will usually guess the right attribute or function name. I also dig the way it will automatically write a docstring for a function. It can sometimes be a great debugging method since I can just have it comment an undocumented fn to quickly glean what it is doing. I'll circle back to enhance the docstring usually too so it is less cookie cutter. For writing blog posts it is really neat too, because it will help me write functions to illustrate certain points based on what I am trying to teach in the post. Most of the time I can come up with the most succinct and relevant example, but sometimes I cannot and this tool does a good job helping there. It's not perfect, but the fact that I can type a few words, hit tab, and then correct any mistakes is really a magic experience sometimes. |