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

help-circle


  • From personal experience working in a Microsoft ecosystem, it’s mostly a matter of being able to hire the right people.

    There is a near-infinite source of IT workers that have some expertise with Microsoft software and services. And those kinds of numbers simply don’t exist for the Linux world, especially with all the different configurations out there.

    Medium-sized organizations have to employ a strategy of throwing enough idiots at a problem in order to keep things running. This also creates some of the issues they need the idiots for because no one has detailed knowledge of how things work.

    My attempts at proposing a linux-based application server have been met with all sorts of “but our domain policy”, “we can’t guarantee continuity”, “none of my people know how to admin this stuff” type responses.

    It definitely is a matter of mindset, but there is also a big commitment to make if switching systems to Linux. And that is a choice managers will only make if the benefits are clearly illustrated in a businesscase.


  • While I’m not exactly an expert user of AutoCAD (my background is architecture, industrial design and full stack development), I know enough about the software where I can tell it’s based on a lot of legacy spaghetti code.

    It’s the same for Solidworks, which I know through and through, including the shitty VBA scripting environment. My CAD teachers always used to say the software is built like a wooden playhouse, which has been extended over the years to include a second story, a slide, a swingset and a roof extension. But underneath it all, it is still the same “don’t fix it if it aint broke” codebase that Dassault has taken their chances on since the '90s.

    The second someone invests any kind of money into an open source alternative, the way Blender has done for the mesh modeling industries, both Autodesk and Dassault systemes stand to lose their respective monopolies on 2D and 3D CAD.

    But the trend is not limited to CAD software only, it is also highly prevalent in software providers for governmental tasks. Most of which sell the same products for years without iteration on their codebase. The result is that government organisations have to deal with shitty software that requires their individual users to connect to the database (yes, you heard that right, every user has to manually input database credentials that include all grants on all of the relevant datasets). Most of these cronies are reselling badly thought out software, where they’ve outsourced the development to third-world shitholes. Is is a goddamn miracle that there aren’t more major incidents with government organisations.

    The only solution for this kind of bullshit is open standards that encourage an open source approach to these kinds of critical applications. Where more parties are actually encouraged to build their own software and where the businessmodel is built around being a service provider and not a magical black box salesman.

    If you’re able to stop worrying about generating revenue based on your intellectual property and focus on generating revenue from the service you provide, surrounding your product… you’ll automatically build a better product.




  • For this to become a serious issue a couple of conditions need to be met:

    • there has to be enough second hand supply to meet demand and keep prices low.
    • …which means lots of people need to circulate their games.
    • …which means they didn’t like your game enough to want to keep it in their collection for replayability
    • …which means you made an unremarkable game

    Now, given the fact that I have full confidence in your ability to create something worthwhile (because you would do so from passion), this cycle will likely be broken at some point.

    There’s also the other option where people will circulate their second hand games with the knowledge they’ll be able to buy back another copy somewhere down the road.

    But yes, you’re right that this will bring a new factor to the gaming industry that everyone has to take into account. Keep in mind that your financial security in the indie gaming sector is fully dependant on wether you develop something worthwhile. You are in no way entitled to be able to make a living from publishing games regardless of their quality. Which is the beauty of the indie games segment: the more love and care you put into your game, the bigger the chances are that it’ll be a success.


  • A trend I’ve noticed over the years is that there are just very little jobs available where you “design shit”. It feels like the market is saturated with designers and companies already have all the workers they are looking for.

    Meanwhile most people I’ve seen graduate have no real talent for the job. And they never seem to get hired for positions that require talent in design for manufacturing.

    You’d think there would be more jobs available, but there simply aren’t. All the jobs are either trade skills, pure CAD or some other part of the product lifecycle that doesn’t require any real design skill.


  • engineer UK /ˌen.dʒɪˈnɪər/ US /ˌen.dʒɪˈnɪr/

    a person whose job is to design or build machines, engines, or electrical equipment, or things such as roads, railways, or bridges, using scientific principles:

    • a civil engineer

    • a mechanical/structural engineer

    • a software engineer

    Cambridge Dictionary

    I’m all for letting people ramble, but Engineering is, by definition, the design of tecnical stuff.

    Risk management is a part of “designing things”, but it is not what makes you an engineer. Converting technology into objects that solve problems is what makes you an engineer.

    And there are lots of disciplines out there that started calling themselves engineers while they are objectively very deep into the grey area. If your work does not involve calculus, logic or physics of some kind, it is highly likely that you are not in fact a real engineer. (Looking at you, Sales and Marketing Engineers)



  • I haven’t dabbled that much in PCB design but I have seen some good things in KiCAD. All my electro engineer homies assure me Altium’s the way to go for now though. Most of them also happen to be big F(L)OSS nerds so I’m curious to see where KiCAD goes in the future.

    FreeCAD is an awesome attempt at building a parametric CAD modeler, though it will need a lot of polish to be usable. Especially on the UX side of things the software could do with a lot of improvement. As far as I know the most difficult part to program for parametric modelers is the actual geometry kernel, which is why so many modelers are based on Parasolid, including the recent hybrid modeler Plasticity. For a F(L)OSS parametric CAD modeler to truly succeed some genius needs to build an open geometry kernel that performs at least close to on par with Parasolid. But that takes a special kind of autistic in order to achieve. Either that or the engineering world needs to collectively decide this needs to happen.

    As much as I hope FreeCAD becomes the open source alternative everyone is looking for, it is trying to be everything at once and that might be too ambitious for the current state of the project. I’m secretly hoping we also get a new project sometime soon with a smaller scope.


  • The problem is mostly a lack of competition in specific fields. And the companies that own the monopoly in their respective niches make it so that any form of competition is either…

    • immediately acquired and killed
    • handicapped by market dependencies on pantented features
    • unable to generate business because customer processes are completely dependant on proprietary solutions

    Most of these applications have codebases that are FUCKING ANCIENT. Let’s take a look at Solidworks for example, which is the industry standard for Computer Aided Design for the manufacturing industry. Under the hood, it’s still the same software from the 1990’s. And there is no incentive for Dassault Systemes to rewrite the codebase.

    Lots of these giant monopolistic software products have turned into frankenstein-esque monstrosities over the years. I often tell people they are built like backyard playhouses that have been expanded over the years by building an extra story on top, adding a swingset, adding a slide, extending the roof and attaching a rope ladder to the side.

    All of this makes for more functionality, but they haven’t really thought about the structural integrity of the original playhouse. In a direct parallel many of these programs have unmaintainable code that no one dares touch because “hey it works, and we need to keep it that way because if we break it we’re no longer getting payed”.

    These companies unintentionally hold their businessmodel hostage by choosing profits over innovation and investment in an adaptable codebase.

    Which is why it is near impossible for them to support technologies that are different from their original install base. And this is also why they have incentives to make sure they stay in the lead becuase they know damn well that open source movements that get some support and take flight are dangerous to their market share, and by extension their profits.

    Blender is probably one of the best examples of what good open source software will do to an industry. The day someone develops a parametric CAD solution that’s platform agnostic and based on open standards we’ll see a lot of engineers ditch Windows for Linux.


  • I’m not blind to the fact that Windows has a terrible search experience, but I won’t say it’s the worst. Out of the box it is fucking useless, but if you actually take the time to index specific paths and make use of the metadata options in Explorer you can actually get some decent results in reasonable time.

    Apple had the right idea with Spotlight, it’s just sad that both parties can’t properly integrate the functionality into their file managers.

    My search needs are mostly covered by Voidtools’ Everything, which is able to scan through the whole NTFS partition in a matter of milliseconds for realtime results. The caveat being that you have to know the name of the file you’re looking for. Otherwise I just use Powertoys Run for search and application launching needs, which is what Spotlight could have been if it was made by passionate nerds.

    I do realise this makes my argument lose it’s bite somewhat, but it comes down to user experience. MacOS has a terrible out of the box experience that can’t be fixed, use something else instead. Windows has a terrible out of the box experience that can be fixed to some degree if you take some time to learn how it works, but you can still opt to not bother with any of it and use something else instead.

    Linux was always going to be the clear winner here.

    Now for the dock icon strategy: try doing that repeatedly with multiple instances/windows from the same application and compare the experience to the “never combine, show labels” taskbar in Windows. I guarantee there is going to be a clear winner in terms of usability. As always, under Linux is not an issue because you can just do whatever the fuck you want.

    The troubleshooting bullshit a pattern seen in all of Apple’s products. They have a habit of hiding all important information in case of an issue, and I have had this complaint about all the iDevices I’ve had the displeasure of touching over the years. iPhone update failed? Tough shit, have a red message saying “something went wrong, try again”. Fan controllers randomly stuck on 100% speed on an iMac without the ability to get any information about the sensors. None of the system tools provide any information beyond the bare minimum. I’ve come to a point where I just refuse to help any family member having trouble with an Apple device because it turns into a multi-hour wild goose chase.

    I’d argue having an overall stable experience with the occasional vague issues that can’t be troubleshooted is worse than having slightly more frequent issues that actually lead to a solution. Apple’s products by design teach the user nothing about technology because there’s no entry-point to the knowledge itself. Meanwhile Windows, while flawed, does provide the user with an incentive to learn about proper maintenance and troubleshooting which leads to more competent users overall.

    Last but not least, the command line: I love my experience using package managers on both Linux and lately also on Windows with winget. It has quickly become the main way I install and manage most utilities. MacOS has options but none of them are integrated neatly and have to be installed separately.

    Even on Windows I use command line utilities where I can and GUI functionality where it makes sense. While the realm of possibilities is not as broad as the GNU/Linux world provides, I at least feel I have a great deal of control over what I do. MacOS is an impostor that has murdered a UNIX distribution and is wearing its skin. The terminal experience feels like it’s a remnant from the early days that they never bothered to put any more love into but they can’t get rid of it either. Just like some of those Windows 3.0 components you can still find in the modern versions of the OS.

    I’m 100% done with Apple and their products because they make everything I’m trying to do slightly more difficult and annoying than the alternative. And those are just limited to my issues with the way they do software. I also have very valid issues with the way they design hardware and with the way they conduct business (ethics, monopolies, their overall effect on tech markets in general).


  • Yes, this is the best argument in favor of air cooling. Air cooling has less points of failure.

    With water cooling there’s tons of potential problems that “haha wind go brrrr cooling” just doesn’t produce: Water block gummed up with mold? Take a performance hit. Pump dead? Sucks to be you. Leak in the system? Enjoy replacing your motherboard.

    Main issue you might encounter in air cooling is just “fan died, replace fan”. (Obviously not counting thermal interface materials since they are required for both cooling solutions)



  • You’re getting ratio’d but you’re right. Core parts of the user experience are steaming piles of dogshit while people praise MacOS for its many gimmicks.

    • Finder is an absolute pile of shit and gets first time users addicted to bad habits. It takes digging through hidden settings to even make it match the out of the box functionality that Windows Explorer offers and it still can’t match the full potential of Explorer for file management. The integrated search is unpredictable and fuzzy so they went and made Spotlight its own thing.
    • Window management is a nightmare if you’re actually trying to do multiple things at once without switching windows. Mac OS has not implemented window snapping for years and they still managed to make it suck when they did. Not once have they considered stealing great ideas from the tiling window managers, Apple simply decided to reinvent the wheel and make it square.
    • Got multiple applications running at the same time while minimized? Lol, get fucked. The only way to know what’s actually running at a glance is the shitty little dot below the dock icon and restoring a specific window takes either way too many clicks or requires you to know the magic keyboard shortcut for untangling your windows (another gimmick they added later in order to actually make the OS usable bearable).
    • Got any sort of issue during startup? Here, take this black screen with a single icon. Not even a slight hint as to what the actual problem might be and if you should worry about it. MacOS might seem like a stable OS but that is mainly because it is very well integrated with the limited set of hardware it can actually run on. If any real issues do come up, the troubleshooting experience is basically just a giant “get fucked” sign pointing to the nearest Apple store.
    • Sometimes simplicity is a good thing, but usually designing something to be accessible means severely limiting the amount of depth you can go into as an experienced user. Every aspect of the OS and the tools that come with it share this overall problem that there’s just not much depth to what you can do with it. Can’t have a steep learning curve if there’s just nothing to learn.

    And I feel like none of these are unreasonable. I like using the right tools for the right jobs, which is why I run Windows for heavy productivity and engineering work. Desktop Linux has come a long way but it just doesn’t (yet) have the required toolset to support engineering workflows. While programming of any kind and getting more complex data wrangling done is best done using Linux. My server needs are also best covered by Linux as most distributions can be run without all the bloat that Windows comes with. And I am sure as shit not paying for Windows Server.

    I just can’t find a valid reason for using MacOS. It seems to combine the worst of both worlds into an OS that’s like a trial experience of actually using a computer to get things done.


  • Honestly that probably goes for any interpreted programming language that supports imports.

    Many Javascript frameworks just put their configuration into -.config.js files in the project root. Which is a pretty elegant solution that does not require custom parsing. Just import the config and go nuts.

    Compiled (and by extension bundled) software obviously requires a different approach, but at that point you should probably consider storing your config in some kind of database.

    Maybe there just isn’t a right answer to the config conundrum if all the general solutions are janky in some way.


  • Yeah not a fan of YAML either. I simply don’t see the benefit of getting rid of delimiters and replacing them with indentation. Yes, it does save several bytes, which might be important if you measure space in kilobytes I guess. It does provide cleaner files which may or may not be more readable.

    It does not provide any advantages in parsing complexity. It does not provide any protection against typos.

    I guess the same can be said of python, which forces indentation and therefore readable code formatting. Which is a problem that does not exist since the invention of code formatters and linters.

    I like python for what it does but delimiters are actually useful in terms of readability. They provide an extra hint that the text you’re about to look at conforms to a specific structure.