I write bugs and sometimes features! I’m also @CoderKat@kbin.social.

  • 0 Posts
  • 17 Comments
Joined 2 years ago
cake
Cake day: June 21st, 2023

help-circle


  • Honestly, that is weird. I wouldn’t expect an intro course to go into a lot of depth on testing or even necessarily show how to use a test framework, but I’d expect them to at least have “printf style” unit tests.

    But lol, yeah, tests usually take far longer to write than the actual change I made. A one line change might need a hundred lines of test code. And if you’re testing something that doesn’t already have a similar test that you can start off from, programming the test setup can sometimes take some time. Depends a lot on what your code does, but sometimes you have to setup a whole fake database and a hierarchy of resources with a mixture of real objects with stubs.


  • Strong typing doesn’t prevent the need for tests. It can certainly catch some issues (and I don’t like dynamically typed languages as a result), but there’s no replacement for unit testing. So much refactoring is only safe because of rigorous test coverage. I can’t begin to tell you how many times a “safe” refactoring actually broke something and it was only thanks to unit tests that I found it.

    If code is doing anything non-trivial, tests are pretty vital for ensuring it works as intended (and for ensuring you don’t write too much code before you realize something doesn’t work). Sure, you can manually test, but often manual testing can have a hard time testing edge cases. And manual testing won’t help you prevent regressions, which is usually the biggest reason to write unit tests. If you have a big, complicated system worked on by more than one person, tests can be critical for ensuring other people (who often have no idea how your code works) don’t break your test. Plus your own future changes.


  • Yeah. At my current and previous jobs, literally everything going into an actual product required a code review, and that’s despite all the code being written by employees that you could generally trust. Even if my boss or literally the most experienced and trusted dev wrote a commit, it still needed a review.

    It’s feels weird submitting my own code without a review for side projects. So many bugs have been caught by reviewers that writing code that another person would use without it being reviewed feels just wrong.


  • I totally agree that most servers work best as monoliths. Though at the same time, every now and then there’s a case that really needed a microservice and you’ll regret not having started that way, cause migrating a monolith that was never designed to be anything but a monolith can be really hard.

    I have one of those. A server that is so large, complicated, and contributed to by so many different teams that it takes a lot of extra work to safely release and debug issues. Honestly, the monolithic structure does still make it easier to understand as a whole. It’s not like splitting the server up would make understanding the end-to-end experience any easier (it would definitely become more complicated). But releasing such big servers with so many changes is harder, especially since users don’t care about your architecture. They want it to work and they want 100% uptime. A bigger server means more to verify correctness before you can release it and when something is incorrect, you might be blocked on some other team fixing it.


  • Now companies can profit from open source code without contributing back to the ecosystem.

    They could literally always do that. Unless they changed the software, most open source licenses required nothing but maybe a mention of attribution (which no one will ever read). And some don’t even require that. They could also always use FOSS tools to develop software without contributing anything back. How is Copilot different from that?

    And honestly, Copilot is pretty amazing for devs. Why would I care that Microsoft profits off it when it benefits us too? While I love FOSS and all else equal would choose it every time, it’s unreasonable to expect everything to be free and open source. People have to make a living somehow and open source rarely pays the bills.

    I’m not sure how Microsoft is stifling the community either. They seem to have been running GitHub great and they’ve made a lot of great dev tools in recent years. I used to absolutely loath Microsoft, but these days they’re mostly alright in my book (at least from a developer PoV). Stuff like how they’ve handled GitHub, creation of WSL, VS Code, etc have all been great.



  • Zelda BotW and TotK (previous Zelda games would be in my All Ages tier)

    I’d consider frankly pretty much all Zelda games more mature. I haven’t played them all, but the pattern I’ve noticed is that the more recent games feel easier (though the open world makes them more time consuming). The bigger puzzle dungeons of older games could get quite difficult sometimes. Easy to get lost and confused. The 2D games often were extra cryptic and combat was more punishing.

    As a kid, I bought oracle of ages as my first ever Zelda game and couldn’t figure out where to go after the first dungeon, so had to sell it. As an adult, I beat it and the seasons equivalent just to see what I missed out on. I had to use a lot of save states and recall some bizarre minigame that was just horrible, horrible, horrible (90% of my save states would have been that one minigame). I had to Google multiple times where to go. I dunno how kids could do it. Sometimes I wondered if it was all a ploy to make kids call that pay number for video game tips that predated the internet answering all these questions. Also, I seriously question why I even put myself through that. It wasn’t that fun.


  • That’s the best. A lot of sequels are 80% the same controls and mechanics and sometimes I just need a reminder of that.

    Though some games could really use some form of really brief tutorial that just reminds me in a forgiving setting how to play, but doesn’t assume I need a lengthy and agonizingly slow tutorial. Civilization games don’t have that problem, but a lot of action games do. I’ll go back to the game cause a DLC is out and I can only remember bits and pieces of the controls and combat is way unforgiving cause it’s supposed to be end game DLC.





  • I had some lengthy period of time where I enjoyed regularly helping folks in r/learnprogramming. But it got exhausting fast. For every person putting in a good attempt at learning, there was 10 people who couldn’t do the most basic level of googling and content was often extremely repetitive as a result.

    The sub also faced a constant stream of people who just wanted to self advertise their own YouTube videos for teaching programming, as if the lack of such was the barrier to learning.

    Oh, and soooo many people who clearly just wanted to be told the answer to their homework questions and weren’t even hiding that.


  • Good ol “hover bike”, as most call it. It’s ludicrously useful, in large part frankly because the game nerfed most forms of flying, with balloons, wings, and those floating blocks around sky islands always disappearing after a minute or two (which bizarrely sometimes doesn’t seem long enough to reach some of the furthest away sky islands – particularly where King Gleeoks are).

    Only downsides are that the hover bike will constantly rise with no means to descend and I was never able to make one that didn’t drift in one direction (requiring constant correction). I assume my fans were just ever so slightly off center or not placed on a flat enough surface or something, but I never could get it to work better).



  • I’m considering skipping over TOS because I tried to start with it before and stopped watching at some point (plus a huge Trekkie coworker strongly suggested skipping TOS). With respect to how TNG or later references TOS, are the references mostly the kind that just need you to know the basics of the characters vs having seen the actual series? I’ve watched enough of TOS to know who the various characters are and the setting (at least anything in the first dozen or so episodes). Wondering if that misses out on anything much.

    Also wondering if there’s some small number of TOS episodes that could be watched out of order or if the whole series should be skipped over if taking this approach. I’ve heard some specific episode titles as good ones and am wondering if I should just watch those specific episodes and then skip ahead to TNG or if that might cause confusion (I can’t really remember how episodic TOS is).