• 0 Posts
  • 73 Comments
Joined 1 year ago
cake
Cake day: July 1st, 2023

help-circle






  • gornius@lemmy.worldtoLinux@lemmy.mlWhy do you use the terminal?
    link
    fedilink
    arrow-up
    2
    arrow-down
    3
    ·
    6 months ago

    If you know how to use git, you will know how to use docker (provided you know what you want to do). They are completely different programs, yet you can quickly grasp the other instinctively.

    Now, Photoshop and Blender - they are also different programs, but if you know Photoshop, you still need to relearn Blender’s interface completely.

    This is why I prefer terminal programs in general. Unless it’s more convenient to use GUi, i.e. Drag&Drop file manager, some git tools etc.




  • gornius@lemmy.worldtoProgrammer Humor@lemmy.ml***
    link
    fedilink
    arrow-up
    65
    arrow-down
    1
    ·
    7 months ago

    Framework has multiple config files, allowing you to customize almost every aspect of it.

    Nooo, this is too much config files, they take up too much space in my project tree.

    Framework is a monolith with a single file to configure it.

    Nooo, the file is unreadable and developing extensions for it is annoying.

    Framework is minimal

    Nooo, it doesn’t have any useful built-in features.

    Framework is a complete solution without too many things to configure.

    Nooo, it doesn’t allow me to do what I want.




  • Steamdeck is more console than x86 PC is a platform. I get what you mean, but PS4 and PS5 are too technically x86 PCs. Most modern games’ tightly coupled target are actually APIs they are using.

    It can be one click in a compiler to compile the game to ARM PC, but it’s a different story when you port your game engine to console, where you have to implement the same features using different APIs. (E.g. Raytracing, storing game data, connecting to profile, implementing multiplayer etc.).

    In the example of SteamDeck, the platform is Win32 or Linux ABI compatible OS.





  • If you’re a beginner:

    I almost gave up programming once, I thought I was too stupid.

    Then I learned Linux and figured out starting out in IDEs as a beginner is the worst thing you can do. It doesn’t teach you anything, it just lets you get the job done - the thing that you should avoid while learning.

    If you can’t build your software with only CLI - you probably have no idea how technology you’re programming in works.

    If you are intermediate:

    Reinventing the wheel is a great way to learn how libraries you’re using actually work.


  • The language itself is not that bad. Especially the newest releases are really great, thought out DX improvements. What stinks are its legacy parts and how it needs to be run.

    My biggest pain is that for it to actually behave like it should it requires some sort of an actual web server like apache or nginx.

    Also, servers written in are actually request handlers - every time a request comes, the whole app is reinitialized, because it just can’t hold its state in memory. In many apps every request means reinitializing connection with database. If you want to keep some state, you have to use some caching mechanism like redis or memcached.

    Also had one time when Symfony app was crashing, because someone forgot to close class braces, and everything was “working” until some part of code didn’t like it and was just dying without any error.

    And one time when someone put two endlines after php closing tag at the end of the file, confusing the entire php interpreter into skipping some lines of code - also without warning, and only in specific php version.


  • Why do you need Windows VM for developing GUI apps? Last time I used Visual Studio to make GUI app I almost gave up programming, because of how code-generation dependent it was.

    For C# you have AvaloniaUI. For cpp you have countless multi-platform GUI toolkits, same for rust, Java has its own toolkits (multi-platform), and finally you can make an Electron/Tauri app.


  • The way for your desktop to communicate with the hardware.

    It used to be X11 - A server-client architecture, which meant your desktop was effectively just a client that told the server what to do. The server was the one doing the drawing

    Wayland is just a protocol, defining how programs and desktop should communicate with each other - without a middleman that was X11 server. The desktop does the actual drawing here.