4 ms·
I don't really like AI in IDE. I don't want them to think for me. Code completion and Intellisense is good enough. That said, I think there are 3 items that ar
by ferguess_k 2y ago
I don't really like AI in IDE. I don't want them to think for me. Code completion and Intellisense is good enough.
That said, I think there are 3 items that are important:
- Quickly grasp a new framework or a new language. People might expect you to do so because of AI's help. 2 weeks might be the maximum, instead of the minimum. The same for juniors.
- Focus on the real important things. So instead of trying to memorize a shell script you are going to use a couple of times per year, maybe use the time to learn something more fundamental. You can also use AI to help you to bootstrap the learning. If you need something for interviews, spend a week to memorize them.
- Be willing to exclude AI from your thought process. If you rely AI on everything, including algorithms and designs, this might impact your understanding.
- all2 2y ago- Be willing to exclude AI from your thought process. If you rely AI on everything, including algorithms and designs, this might impact your understanding. Most of the time I'm using AI for problem space mapping (I'm doing dirt simple CRUD dev right now) and decomposition. It's ok at that, but even the deep research mode of Claude leaves some things to be desired. I feel like an editor now, more than an engineer. I know the kinds of things I'm looking for, and I use AI to walk a solution in. Either I use the output of the LLM as-is (for throwaway stuff) or I use it as a jumping off point for my own work _without_ the AI.
- ferguess_k 2y ago>I feel like an editor now, more than an engineer. I know the kinds of things I'm looking for, and I use AI to walk a solution in. I agree. I think it's fine to do so. I usually prefer to write my code without AI (except for bootstrapping it). In my work as a DE, I mostly use AI to write scripts for me. For example, how to do this in PySpark? I kinda refused to memorize any of these because I'm simply not very interested, and I can always spend a week to memorize the fundamentals if I need. In my side projects, I use AI extensively. Same as you, I use AI for problem space mapping, or sort of. For example, I have some source code, how do I structure them better? I have read the MIDI standard and thought this piece of binary code means blah, can you please confirm for me? Well AI is OK for these kinds of work.
- mooreds 2y ago> I feel like an editor now, more than an engineer. I have been using LLMs more and more and I think they are great for brainstorming and editing and getting to an 80% solution. But just like an editor needs to know the fundamentals of writing, you still need to know the fundamentals of software to be effective as an engineer. Side note: I remember when I first came upon a really sophisticated system that made me feel more like an assembler than a developer. It was drupal in the late 2000s. I ran away from that as fast as I could, even though the money was good.
- giantg2 2y agoEven code completion has issues. It might get the structure right, but it usually doesn't understand the business logic and I end up switching out what codes/vars are being used.
- ferguess_k 2y agoIt's definitely possible. But in my case so far it's fine. I work as a DE so I only need the auto-completion to remind me what the column name is once I typed out the first few characters, because there are so many columns. In my side projects I mostly use C/C++ so auto-completion helps me to find a struct member or something similar. I guess it can become quite complicated when the projects becomes very large.
- tomrod 2y agoFor me I have two extremes: 1. Complete Vibe coding -- greenfield and just playing or doing a small quick prototype 2. Get out of my IDE, but know my code base -- small snippets, methods, classes that add desired functionality but off to the side completely -- and don't run things in my shell that's just wrong What I don't like it current codebases getting whacked because it decided to downgrade a dependency or lie about a function signature.