• 0 Posts
  • 269 Comments
Joined 1 year ago
cake
Cake day: June 30th, 2023

help-circle
  • That’s a part of it. Another part is that it looks for patterns that it can apply in other places, which is how it ends up hallucinating functions that don’t exist and things like that.

    Like it can see that English has the verbs add, sort, and climb. And it will see a bunch of code that has functions like add(x, y) and sort( list ) and might conclude that there must also be a climb( thing ) function because that follows the pattern of functions being verb( objects ). It didn’t know what code is or even verbs for that matter. It could generate text explaining them because such explanations are definitely part of its training, but it understands it in the same way a dictionary understands words or an encyclopedia understands the concepts contained within.



  • And then at some point, games started saving inside documents. Ok, it makes sense to have game save files in a user area instead of a subfolder in the game install area, but they aren’t documents. Just make a new game saves folder or something like that, don’t just stick all my game save files in the same area, cluttering up my own organization.

    Though I did solve it kinda by just making a new documents subfolder in my documents where I put my actual documents.




  • Yeah, I wish C++ had function/scope epilogs and labeled loops/breaks, too. Those are the cases where the “never use goto” rule can be broken to make better code than adding all of the code that would be required to handle it the “right” way (setting up early exit flags and if statements after each level of nested loop to check the flag).




  • (Sarcasm/deadpan detected but I’ll respond anyways).

    Not when they are visibly the same and the spaces have no other meaning in that context.

    Not to mention tabs being annoying in general because of how badly it works to adjust the distance of tab stops. That doesn’t really affect this particular case, but it’s why I generally use spaces instead of tabs.

    Most of the annoyance is from vim recognizing that spaces are an error in makefile recipes but still using them unless I copy paste a tab in, including when I hit enter on a line that is using a tab already. It matches the indentation but uses spaces instead of tabs. I’m sure there’s a way to adjust vim config to fix this, but I have yet to acquire the esoteric knowledge required to do so.




  • I think part of it is going through all those sorting methods to show quick sort is the best so that a) students who run into new sorts are better equipped to determine it most likely isn’t better than quick sort and b) to show the process used to determine quick sort is better than the rest in case you have some other algorithm options you want to pick the best of.

    And yeah, depending on what you do, some tasks never involve any of that, or when they do, they get offloaded onto a library or something that gives the solution to that step directly.

    But, for example, if you have a collection, the question of array vs linked list vs tree is still relevant, even if you’re just choosing a provided construct that is built on top of one of those. Each has their strengths and weaknesses depending on how the data is added, removed, and accessed.

    And with how slow things are these days despite how much better the hardware is, I think there’s a lot of successful software engineers and programmers who should be using that stuff from school more than they are.


  • Also big O analysis IMO should just be the starting point of maximizing efficiency. Those coefficients that just get dropped can have a huge impact. For example, any algorithm written in JavaScript or visual basic will be of the same order as that same algorithm written in C/C++ or rust, but will likely perform much slower. And the exact manner of implementation could even result in the C version being slower than the VB one.

    And on the other hand, I wouldn’t call a lot of big O analysis very advanced math. You might get a tighter bound with advanced math on some algorithms, but you can get a rough estimate just by multiplying and adding loops together. The harder question would be something like “does this early exit optimization result in an O(x³) algorithm becoming an O(log(x)*x²)?”


  • He’s got a lot of charisma. And his videos frequently give that “people doing something they should have prepared more for but pushing through anyways” entertainment where you can laugh at how they put effort into creating an illusion of professionalism but left enough gaps to make it clear it was just an illusion and he’s in way over his head, but somehow still manages to keep it going.

    It’s a weird spot where I like the guy and want to see him succeed but also don’t think he deserves that success and want to see him fail.

    Though I don’t really spend much time watching hardware enthusiast videos in general, so I probably won’t see either of those unless it goes viral like his last shitshow did.


  • Buddahriffic@lemmy.worldtoProgrammer Humor@lemmy.mlCertified in AI
    link
    fedilink
    arrow-up
    1
    arrow-down
    1
    ·
    2 months ago

    Yeah, it’s one of those core components that if someone actually lists it, first assumption is that they felt like they needed to pad their resume.

    Though at the same time, it could be an attempt to say, “hey, I don’t know each of the specific languages you’ve listed, but because I know how to use a search engine, I can quickly learn any of them”.

    Like I learned python because I needed it for assignments. It wasn’t a “oh, some classes might use python, I better learn it ahead of time”, it was a “I’ve just been given an assignment that must be written in Python. It’s due in two weeks, so next week I’ll sit down with a tutorial or two to learn the basics, then I’ll just have a couple of reference tabs going while I do the assignment itself”. And I’ve done that at work for both perl and ruby.

    Out of all languages I’ve learned, the only new paradigms were things like objects, functional programming, or RTL programming with verilog. And really only that last one is a significant mindset shift. Objects are just a way to organize data and methods, functional programming is just using a new variable for each assignment, it’s all still running the same machine code on a CPU core. RTL is different because it’s designing circuitry that “runs itself”, but even that is one that I learned during one school term that I could have picked up on my own if pointed in the right direction.

    The real benefits from my schooling and experience are all harder to put on a resume. I know how to learn. I might not know everything you’d like me to know to do this job right now, but I’m confident that I can learn them quickly and competently enough to be useful in this role. I naturally gravitate towards edge cases and rule exceptions, which I find helps mature my experience quicker because debugging is more matching current behavior with a limitation I was already aware of rather than needing to discover that limitation exists. But how do I put that on a resume, especially one that needs to get passed AI filters just looking for the most matches with words from the job posting? Or as a hiring manager, what do I even look for to try to get more of those people than rigid people who happen to have a match with the current skillset I’m looking for? A university level degree is the only thing I can think of so far.