• 0 Posts
  • 113 Comments
Joined 2 years ago
cake
Cake day: June 22nd, 2023

help-circle
rss


  • Sort of, when you hang out with people who are less informed, it’s going to get awkward if you’re constantly just explaining stuff. Eventually everyone will pick up on the vibe that you know way more than everyone else.

    But I don’t hate it. That stuff can be overcome by working on your self and social ability, often the wittiest people can slyly point out the folly of something someone said with a quick wry joke, and more importantly you can learn to just let stuff go and not always explain everything or make sure everyone is exactly right about everything, and instead focus on being a conversationalist that will just keep things flowing in a fun way.

    Plus, then when you do hang out with other people who are well informed, you can have interesting deep conversations. And the world is a lot less scary and hard to navigate if you understand how it all works.




  • For an IDE.

    I can configure VSCode as a full IDE for say C#/.Net development, and it performs pretty much just as well as VS which is written natively.

    Ditto for configuring it as a Python IDE vs PyCharm, ditto for Java and Eclipse, ditto for basically everything else.

    And I’m sorry but I have to respectfully disagree here: VIM / Neovim / any purely text based editor has never had anywhere near the same feature set as VS Code + it’s extensions. They are more performant, run anywhere, and can be configured to be quite powerful, but they’re still fundamentally hamstrung by using a typewriter’s line by line interface rather than being able to easily draw arbitrary 2d or 3d graphics and use the power of CSS styling.

    Like, just drawing out a list of items, and then being able to get more detail on one of those items, is fundamentally a pain in command line, requiring a list command and then an item detail command or a list verbose command, where is in a GUI you just list items and can then expand them or hover on them for more info.


  • As a casual js user (I build some static sites for fun and personal use), I am under the impression that JavaScript “sucks” mostly because some things really make it look like JavaScript was invented as a quick scripting tool rather than the backbone of the WWW.

    I’ll bring an example that maybe helps me learning someting. Why in javasctipt “1” == 1? I know the === operator exists, but why isn’t the default behaviour the safer one? Especially when the mantra is “don’t trust the user”.

    Like, I get, I am a strongly-typed guy, but I see why weakly-type languges exists, but this feel frankly moronic, and all the answers I’ve seen are " because that’s how it is". That’s just copium.

    Like, you’re not entirely wrong here. The == vs === is entirely just a legacy of a poor early decision in the language’s development.

    However, the reason that it’s still there isn’t just “because that’s how it is”, it’s to maintain backwards compatibility. You could break the language and change your equality operators to something more sensible, but to do so would result in:

    • A) If you make a new language that compiles to Javascript (like Typescript for instance), you can maintain compatibility, but you do now need to build a bunch of tooling around compilers and debugging so that you can trace errors in the compiled and running javascript back to your own code. In any situation where you have a codebase that contains a mix of the two, you’ve got to remember and stay on top of which to use where.
    • Or B) If you make a new dedicated language that runs in browsers, now browsers need to ship two engines, one for legacy javascript web sites and apps, and one for whatever your new language is. Same issues with mixing legacy and new code.

    OR the real answer is C) devs just add linters that check your code for common mistakes. All modern javascript dev environments will include a linter that yells at you if you accidentally use the == sign, right in your IDE as you type it, making it not really a big deal, and autocomplete will automatically use ===.

    And maintaining backwards compatibility for the Internet / World Wide Web, is probably the single most important place to maintain backwards compatibility, as it is effectively a continuous archive of information and publications. Putting up with === is honestly not that big of a deal in the context of all the above.

    Like, I get, I am a strongly-typed guy, but I see why weakly-type languges exists,

    I got my start with Java and C#, then Python, then Javascript, then Typescript / etc. etc. Trust me, I vastly prefer a good type system, which is why I use Typescript for everything I can these days. It is still technically weakly typed in that you don’t get type errors at runtime, just at compile time, but it still makes coding in javascript soooo much nicer and more pleasant and more predictable, and it’s quite frankly the most flexible and easy to use Type system / syntax of any language that I’ve used.

    Also when I tried to compile a single Cordova app to play around I needed some 5GB of npm modules that totalled ~200k files! Is that how modern app development is like?

    I mean, Cordova is not just a web app platform. That’s including the toolchain to build a web app, but also do compile it into an Android app, or to compile it into an iOS app. You’ve basically got large chunks of the android and ios sdks in there.

    Also, the particular webpage OP linked might be a little extreme, but modern software does suck ass, and is not user-friendly nor efficient.

    Just look at mobile communication apps, like Teams. The user experience is terrible, the UI is unrespive, the battery drain is crazy and it takes 800MB of space.

    Yes, because of corporate practices that prioritize feature development instead of addressing tech debt or performance. But that’s not always the case. I worked at Meta for a stint as a contract developer, I’ve seen how they make decisions and they’re not uninformed. They will run A/B testing on simulated apps to measure exactly how much of a difference performance makes, and then balance that against the effort it will take vs the effort it will take to develop new features and then they prioritize accordingly.

    No where else I’ve worked does that. Everywhere else just hears a customer or executive yell for a new feature and then the PM just starts working on it without proper research or without giving team’s time to go back and address tech debt.

    Is this because it’s an electron app, or because it’s made by incompetent programmers? I don’t know, but we made incredible hardware improvements in personal computing, new software should be even more efficient and use them better, not get more and more bloaty to have the same experience on older and newer hardware

    Given that VSCode is made by the same company, is also an electron app, and is generally remarkably performant, I would posit that teams is made by worse programmers since it’s a less attractive product to work on, and the team is probably less user focused since users don’t buy their software, the users’ workplaces do.


  • Do you know how you make good web apps with good performance? You don’t listen to people whining and bitching about a language, you go out and start coding something and find out where the actual issues are.

    Javascript / Typescript is great. There are little annoyances here and there, like with literally every single language, but anyone who says it sucks overall is a quite frankly, a moron.

    Our project focuses on advanced and experienced computer users. In contrast with the usual proprietary software world or many mainstream open source projects that focus more on average and non-technical end users, we think that experienced users are mostly ignored. This is particularly true for user interfaces, such as graphical environments on desktop computers, on mobile devices, and in so-called Web applications. We believe that the market of experienced users is growing continuously, with each user looking for more appropriate solutions for his/her work style.

    Designing simple and elegant software is far more difficult than letting ad-hoc or over-ambitious features obscure the code over time. However one has to pay this price to achieve reliability and maintainability. Furthermore, minimalism results in reasonable and attainable goals. We strive to maintain minimalism and clarity to drive development to completion.

    You now what all of this says? It says that they focus on building utilities that accomplish some small technical task and ignore their users’ actual workflow needs. It’s the equivalent of minimalist architects that make unlivable spaces because they’re technically nice.



  • Yes, Trump was convicted of multiple felony charges, making him a convicted felon.

    He recieved a conditional discharge for his sentence, meaning he didn’t spend time in jail, but he is 100% a convicted felon.

    You also ignored the part where he’s a treasonous traitor to his country, that tried to overthrow a democratically elected government.

    You’re not a moderate, you’re just blind to how idiotic and treasonous the American right wing is.




  • People here are generally going to be distrustful towards the government, and for good reason, this feels like gross overreach imho, but at the same time, I think it’s a little naiive to view all potential terrorists as tech savvy enough to know to use the right open source encryption package. I’m sure this would help them catch some percentage more of attackers.

    Again, to be clear, I don’t think that’s remotely worth the damage that unencrypted messaging can do, but there’s enough examples of incompetence and bad opsec amongst criminals to think that someone would just continue to use whatever is most convenient or what their friend told them is good.



    1. Hiding it’s shape.

      • If someone can see you but can’t smell it (through a cop car windshield, or nosy neighbour’s window, for instance).
    2. Sharing it.

      • It’s easier to pass a joint from person to person pinched from the bottom
    3. Structural Integrity.

      • Hand rolled joints with inconsistently ground weed tend to be more fragile, holding by their filter is often safer.
    4. Smoking all of it

      • Weed smokers are more likely to smoke right to the bottom (since it was historically expensive / hard to get). Sometimes a smoker might not even have a filter and literally go til it burns the finger tips, in this scenario they can grip much more finely with a thumb-index pinch.



  • In general, I disagree with you. I think the two things you fixated on (souless architecture and rentals) are bad approaches to density, but you will notice that for the most part, this is the form of “density” that places who are notoriously bad at density do. Its what happens when we deliberately regulate ourselves into not allowing other options.

    Soullessness and rent-seeking is what happens when housing is controlled by for-profit entities, and once you start building housing as system that is bigger, more expensive, or more complex, then one person / small family / support network can manage, then you inherently need to cede control and responsibility to a larger outside entity, which ends up being a corporation.

    Even cities like Boston that have a relatively large amount of mid rise housing still have massive housing costs that suck residents dry because it all ends up being landlord controlled.

    Also, i would like to highlight that a very small portion of people are living in newly built homes, and only a small portion are really able to make meaningful design impact. Most just buy the builder-grade suburban model home. The idea that suburban single family homes are some design panacae is just wrong.

    I’m no fan of suburbs, but at an inherent level (assuming no crazy HOA), you have far more control of any house that you own over any space in a building that you do. Your average 100 year old suburban home will have far more charm and look far more unique than your average 100 year old apartment unit or condo.


  • That the dense city movement, of building up, instead of out, is ultimately ceding a huge proportion of our lives (our dwelling sizes and layouts, their materiality and designs, how the public space between them looks and feels, their maintenance and upkeep, etc. etc.) to soulless corporations trying to extract every dollar possible from us.

    When we build out, people tend to have more say in the design and build of their own home, often being able to fully build it however they want because at a fundamental level a single person or couple can afford the materials it takes to build a home, and after it’s built they can afford to pay a local contractor who lives nearby to make modifications to it.

    What they don’t have, is the up front resources to build a 20 story condo building. So instead they can buy a portion of a building that someone else has already built, which leaves them with no say in what is actually built in the first place. Ongoing possible changes and customizations are very limited by the constraints of the building itself, and the maintenance and repairs have to be farmed out to a nother corporation with the specialty knowledge and service staff to keep building systems running 24/7.

    Yes, this is more efficient from an operating standpoint, but it’s also more brittle, with less personal ownership, less room for individuality and beautification, and more inherent dependence on larger organizing bodies which always end up being private companies (which usually means people are being exploited).

    In addition, when you expand outwards, all the space between the homes is controlled by the municipalities and your elected government, and you end up with pleasant streets and sidewalks, but when you build up with condos, you just have the tiniest dingiest never ending hallways with no soul.

    And condos are the instance where you actually at least kind of own your home. In the case of many cities that densify, you end up tearing down or converting relatively dense single family homes into multi apartment units where you again put a landlord in charge, sucking as many resources out of the residents as possible. In the case of larger apartment buildings, you’ve effectively fully ceded a huge portion of the ‘last mile’ of municipal responsibilities to private corporations.

    Yes, I understand all the grander environmental reasons about why we should densify, and places like Habitat 67 prove that density does not inherently have to be miserable and soulless, however, the act of densifying without changing our home ownership and development systems to be coop or publicly owned, is a huge pressure increasing the corporatization of housing.