• 1 Post
  • 26 Comments
Joined 1 year ago
cake
Cake day: August 16th, 2024

help-circle






  • I use Cosmic and really like it- have used i3, Awesome and Gnome in the past for a while too, I really likes them.

    The most time I spent with a set up was Awesome + rofi, which I really enjoyed. I customised literally everything and spent hours tweaking stuff.

    That was super fun, but in all honesty my workflow is more or less:

    1. Open up a terminal (alacritty, tmux + fish shell + helix editor)
    2. Open up a browser (Firefox, have played with others but there’s always some quirk where I give up)
    3. That’s it.

    Honestly, all the tweaking is fun for me, but with my workflow I have like 0 requirements for anything fancy. Daily driving cosmic is going nicely for now, and seems to mostly get out of my way.


  • Sounds like it’s working great for you- I wish it would for me too! I’m not OP but some of my main gripes are:

    • Most calls have, for at least one caller, a wierd lag time where the call doesn’t start for 10 seconds or so

    • Quite frequently (I’d guess 5 calls a month) a call will be disrupted by teams failing completely for someone on the call (camera not working, not being able to join etc)

    • It uses a lot of RAM even when idling

    • It has hundreds of features, like “together mode” that bloat the software without adding to its core functionality

    • The UI is a confused mess, and the conceptual split between teams, channels and chats is messyat best.

    On top of that, I don’t find teams makes me more productive, if feels like a constant distraction that modern corporate culture requires me to have, even though its a net drop in productivity. This last point is more on instant messengers as a whole, but it doesn’t place me in a very charitable or forgiving mindset for interpretting Team’ multitude of flaws.






  • I have advice that you didn’t ask for at all!

    SQL’s declarative ordering annoys me too. In most languages you order things based on when you want them to happen, SQL doesn’t work like that- you need to order query dyntax based on where that bit goes according to the rules of SQL. It’s meant to aid readability, some people like it a lot,but for me it’s just a bunch of extra rules to remember.

    Anyway, for nested expressions, I think CTEs make stuff a lot easier, and SQL query optimisers mean you probably shouldn’t have to worry about performance.

    I.e. instead of:

    SELECT
      one.col_a,
      two.col_b
    FROM one
    LEFT JOIN
        (SELECT * FROM somewhere WHERE something) as two
        ON one.x = two.x
    

    you can do this:

    WITH two as (
         SELECT * FROM somewhere
         WHERE something
    )
    
    SELECT
      one.col_a,
      two.col_b
    FROM one
    LEFT JOIN two
    ON one.x = two.x
    

    Especially when things are a little gnarly with lots of nested CTEs, this style makes stuff a tonne easier to reason with.



  • Short answer is no, I think because what tools you need for programming change so much based on the development you’re doing. C++ developers need compiler toolchain stuff that Javascript developers would never need to look at and vice versa.

    Curveball answer is that modern extensible IDEs with the power of language servers and plugins have kind of become this. I’d massively recommend properly getting into one of the following and learning how to configure new languages and plugins:

    • VScode
    • Neovim
    • Emacs
    • Helix

    (Sure I’ve probably missed some great options, feel free to flame me on why notepad++ should be OPs first choice)




  • It’s not easier to do getters or setters but especially in python there’s a big culture of just not having getters or setters and accessing object variables directly. Which makes code bases smaller.

    Same with the types (although most languages for instance doesn’t consider None a valid value for an int type) Javascript has sooo many dynamic options, but I don’t see people checking much.

    I think it boils down to, java has a lot of ceremony, which is designed to improve stability. I think this makes code bases more complex, and gives it the reputation it has.



  • houseofleft@slrpnk.nettoProgrammer Humor@programming.devLanguages
    link
    fedilink
    English
    arrow-up
    9
    arrow-down
    1
    ·
    1 year ago

    I think a lot of it is “ceremony”, so it’s pretty common in java to:

    • create a get method for every object variable
    • create a set method for every object variable

    Then add on top that you have the increased code of type annotations PLUS the increased code of having to check if a value is null all the time because all types are nullable.

    None of that is hugely complicated compared to sone of the concepts in say Rust, but it does lead to a codebase with a lot more lines of code than you’d see in other similar languages.