• 0 Posts
  • 18 Comments
Joined 9 months ago
cake
Cake day: October 18th, 2023

help-circle
  • but for beginners? They will have a lot of bugs in their code.

    Everyone has lots of bugs in their code, especially beginners. This is why we have testing and qa and processes to minimize the risk of bugs. As the saying goes, “the good news about computers is that they do what you tell them to do. The bad n was is that they do what you tell them to do.”

    Programming is an iterative process where you do something, it doesn’t work, and then you give it another go. It’s not something that senior devs get right on the first try, while beginners have to try many times. It’s just that senior devs have seen a lot more so have a better understanding of why it probably went wrong, and maybe can avoid some more common pitfalls the first time around. But if you are writing bug free code in your first pass, well you’re a way better programmer than anyone I’ve met.

    Ai is just another tool to make this happen. Sure, it’s not always the tool for the job, just like IoC is not always the right tool for the job. But it’s nice to have it and sometimes it makes things much easier.

    Like just now I was debugging a large SQL query. I popped it into copilot, asked if to break it into parts so I could debug. It gave a series of smaller queries that I then used to find the point where it fell apart. This is something that would have taken me at least a half hour of tedious boring work, fixed in 5 minutes.

    Also for writing scripts. I want some data formatted so it was easier to read? No problem, it will spit out a script that gets me 90% of the way there in seconds. Do I have to refine it? Absolutely. But if I wrote it myself, not being super prolific with python, it would have taken me a half hour to get the structure in place, and then I still would have had to refine it because I don’t produce perfect code the first time around. And it comments the scripts, which I rarely do.

    What also amazes me is that sometimes it will spit out code and I’ll be like “woah I didn’t even know you could do that” and so I learned a new technique. It has a very deep “understanding” of the syntax and fundamentals of the language.

    Again, I find it shocking that experienced devs don’t find it useful. Not living up to the hype I get. But not seeing it as a productivity boosting tool is a real head scratcher to me. Granted, I’m no rockstar dev, and maybe you are, but I’ve seen a lot of shit in my day and understand that I’m legitimately a senior dev.




  • I’m a senior dev, and copilot as a productivity tool usually pays for the monthly license multiple times per week.

    Whenever I hear someone say it’s useless, that tells me they are either some godlike dev who knows everything already (lol), they haven’t actually used it, they are not good at integrating new tools into their workflow, or they simply haven’t learned how to use it yet.


  • EatATaco@lemm.eetoProgrammer Humor@programming.devAI Suggestions
    link
    fedilink
    English
    arrow-up
    19
    arrow-down
    4
    ·
    2 months ago

    The other poster is either speaking from a place of ignorance, as they’ve never really used it, of they just aren’t smart enough to learn how to use a new tool.

    As much as middle management sucks, devs blaming management for their own inability to learn is almost on the same level.



  • EatATaco@lemm.eetoProgrammer Humor@programming.devSenior dev be like...
    link
    fedilink
    English
    arrow-up
    9
    arrow-down
    1
    ·
    2 months ago

    I’ve worked in a few places, all with senior engineers, including myself as a senior engineer, all of which the senior engineers spent most of their time actually engineering. If I went somewhere as a senior and was told I was going to be in meetings all day, I would quit because that’s management, not engineering.



  • My 100 year old house has marks on the floor that look like it was worn from a door swinging. Very distinctive arc pattern. Like it was there for many years and was under frequent use.

    The problem is that there’s no door there, just a wall, which is also the edge of a dormer…so if there were a door there it would just open out onto a sloping roof.

    Every time I register it I contemplate why it’s there and wtf happened.



  • EatATaco@lemm.eetoProgrammer Humor@programming.devMy Git Knowledge
    link
    fedilink
    English
    arrow-up
    1
    arrow-down
    2
    ·
    4 months ago

    These threads drive home the point that a GUI of some sort is far superior for most users. I use git kraken, but in the past I’ve used git extensions as well, and I take advantage of so much more git has to offer than pretty much everyone here.

    I swear people just want the cli to be better so they claim it is, but I really don’t get how. Especially for quickly scanning the repo, doing diffs, commiting partial files, history, blame, etc.


  • Yeah, I was lucky that I snuck into my company’s pilot program for it.

    I’m impressed at how often it predicts what I’m about to do. The code almost always needs a slight bit of editing, but it almost always at least shaves a bit of time off of whatever task I was doing.

    I no longer go straight to stackoverflow, I always ask the copilot first. Sometimes even just phrasing the question in natural language, something I wouldn’t do it trying to find it via search or stackoverflow, is kind of like rubber duck debugging, and I’ll come up with the answer while writing it out.


  • I was originally a chip designer. Then I shifted into embedded development. Now I’m mainly a C# guy.

    But when I shifted into embedded development, I also shifted into doing power engineering. I grabbed a couple of books on the topic at hand, taught myself a lot, and designed the electronics to meet the need. We sold the product to city utilities.

    I remember one time I was in a room with probably 10 engineers from one of the utilities. After having described the product to them, and went through a lot of our settings and stuff, I was explaining the difference between two of algorithms we put in (because different utilities use different algorithms, and I just wanted one device that could do both). At some point I was like “which of the two algorithms do you use?” and one responded “well, which do you recommend?” So I talked about why I thought one was better than the other.

    They all started looking at each other and nodding and saying “Yeah, that’s the one were going to use.” I realize I could have said anything at that point and they would have agreed. They thought I was expert. And that was my “last two frames” of this comic moment.

    Now as a senior dev, I’ve seen enough shit to realize that most people have no idea what is going on, and are flying by the seat of their pants. So I figure my ignorance is a little less than theirs, and that gives me a lot of confidence, but I also realize that I can learn a lot from most people.




  • I was an embedded developer for years for critical applications that could not go down. While I preferred avoiding dynamically allocating memory, as it was much less risky, there were certainly times it just made sense or was the only way.

    One was when we were reprogramming the device, which was connected to an fpga which would also require reprogramming. You couldn’t store both the fpga binary and the new binary for the device in memory at once, but there was plenty of space to hold each one individually. So allocate the space for the fpga, program it, free and allocate space the new processor code, verify and flash.

    What am I missing? Have things changed?