• 3 Posts
  • 27 Comments
Joined 1 year ago
cake
Cake day: October 14th, 2023

help-circle
  • It’s no reddit in terms of quantity but honesty I’ve had higher quality topics and discussions here than there. Lemmy/kbin might not have taken off in the mainstream to offer a variety of subjects but when it comes to tech and software I think it’s covered well enough and people are generally nicer about it. The main problem is lack of (remotely) good seach function, I dont think the threads are getting indexed by google and the on-site search is atrocious.

    I don’t know of any discord programming communities, I wish forums were still a thing but the only live one I know of is the jellyfin one after they moved from reddit. Other than that it’s here or the various subreddits




  • I wonder what kind of support for development do you get? Honestly I’ve only had obstacles when I switched, for example the docker installation was much more complicated on linux than on windows+wsl. Even installing python was problematic because apparently ‘upgrading it yourself can brick the system’, at least if an older version comes with the OS?

    And lastly it’s the simple thing that pretty much all tools work on windows natively but on linux you have to find workarounds, which is definitely a problem when it comes to productivity.

    So what are the benefits, what does linux have that windows doesn’t in this context?


  • You can kinda see this in things like modding communities or anything piracy related too. Users just want easy solutions even if it’s at the expense of creators, and creators are doing it more and more for money rather than any personal drive or satisfaction. I can’t believe we’ve reached a point where even mods are being locked behind paywalls, need to be commissioned or sometimes have entire teams funded by patreon to work on them, it’s just another business nowadays.











  • Was pretty simple in Python with a regex to get the game number, and then the count of color. for part 2 instead of returning true/false whether the game is valid, you just max the count per color. No traps like in the first one, that I’ve seen, so it was surprisingly easy

    def process_game(line: str):
        game_id = int(re.findall(r'game (\d+)*', line)[0])
    
        colon_idx = line.index(":")
        draws = line[colon_idx+1:].split(";")
        # print(draws)
        
        if is_game_valid(draws):
            # print("Game %d is possible"%game_id)
            return game_id
        return 0
    
                
    def is_game_valid(draws: list):
        for draw in draws:
            red = get_nr_of_in_draw(draw, 'red')
            if red > MAX_RED:
                return False
            
            green = get_nr_of_in_draw(draw, 'green')
            if green > MAX_GREEN:
                return False
            
            blue = get_nr_of_in_draw(draw, 'blue')
            if blue > MAX_BLUE:
                return False    
        return True
            
                
    def get_nr_of_in_draw(draw: str, color: str):
        if color in draw:
            nr = re.findall(r'(\d+) '+color, draw)
            return int(nr[0])
        return 0
    
    
    # f = open("input.txt", "r")
    f = open("input_real.txt", "r")
    lines = f.readlines()
    sum = 0
    for line in lines:
        sum += process_game(line.strip().lower())
    print("Answer: %d"%sum)
    






  • I only have half as much experience as you, and none with Go specifically, so I can’t give you any good answers but I can say I empathize - the company I work at is also stuck with a legacy monolith that’s still on .net framework and everything is so coupled that it’s impossible to even unit test, less alone deploy the projects separately. Some people aren’t bothered even with the basic principles of code writing and the senior people are just overworked and can’t keep tabs on it even if they wanted to.

    The worst part is that the company is mostly either juniors just doing what they are told or older seniors that are stuck in their ways and are afraid of anything new - although as I got older I started to see why that might be the correct approach, not everyone wants to learn and adapt to new tech and it’s a big ask of the upper management to risk it on that. Basically we’re just repeating the same mistakes and wasting time fixing known errors that keep happening and any actual improvement or proper removal of tech debt never happens.

    So yeah… I’m starting to believe that “clean good code” only happens either in hobby projects or new startups. Any larger, “stable” codebase of a larger company is going to be an inefficient mess however 🤷‍♂️