7 ms·
Unfortunately, I've noticed that non-SW engineers frequently turn their noses up at open-source solutions, and really the entire concept of open-source software
by shiroiushi 2y ago
Unfortunately, I've noticed that non-SW engineers frequently turn their noses up at open-source solutions, and really the entire concept of open-source software, and seem to prefer proprietary solutions, the more expensive the better. I've seen this in the software world too, with embedded systems engineers, though Linux, gcc, etc. has made huge inroads here, though it took decades, and mainly came from the Linux adherents pushing downwards into the embedded space from the desktop space, not from any interest by the existing engineers in the embedded space.
Just look, for instance, at FPGAs: almost all the tooling is proprietary, very expensive, and very buggy too. Or look at PCB design: Altium seems to be the standard here still, despite Kicad having made huge advances and by most accounts being as good or even better. It took decades (Kicad started in 1992) for the FOSS alternatives here to really catch on much, and only really because PCBs became cheap enough for hobbyists to design and construct their own (mainly because of Chinese PCB companies), and because CERN contributed some resources.
I'm not sure what the deal is with engineers hating collaboratively-developed and freely-available software, but it's a real thing in my experience. It's like someone told them that FOSS is "socialism" and they just reflexively dismiss or hate it.
- 20after4 2y agoThis doesn't really explain any hostility towards open tools but it does explain much of the preference for certain well established commercial packages: The commercial software vendors do a great job of marketing to engineering schools and students. Once you learn some software it's a lot of work to relearn. So if you get people accustomed to your proprietary ecosystem early in their schooling and during the start of the career, you have pretty much hooked them for life.
- WJW 2y agoIf that were the case, most of the (academic) software world would still run on Matlab and Borland. Instead, Python has completely taken over that space even without salespeople to push it. Most of the open source CAD stuff is just Not That Good.
- 15155 2y ago> Altium seems to be the standard here still Apple and NVIDIA are using Allegro (or customized versions thereof.) > or even better KiCad is faster, absolutely not better. > very expensive Vivado is free for a great number of devices (not just the "lite" version, either, depending on the board - U50, U55, etc.) No open source tooling can even remotely compare in ASIC implementation flow or FPGA implementation.
- _fizz_buzz_ 2y ago> KiCad is faster, absolutely not better. That seems like a matter of taste. We switched from Altium to KiCad and I very much prefer it. We don't do any RF stuff, so there might be things that don't quite work in KiCad, but for what we do - power electronics - it works perfectly well.
- cellular 2y agoI wish they kicad footprints were easier to find/modify/maintain. I modified some its hard to reuse them in other designs. They get saved in places with lots of extra files and I'm not sure how to merge with other designs.
- shiroiushi 2y ago>KiCad is faster, absolutely not better. Not what I've heard, and CERN seems to think it's good enough for their particle colliders. >No open source tooling can even remotely compare in ASIC implementation flow or FPGA implementation. Yes, FPGA tools are a very different matter. I do wonder if this is really lock-in from vendors more than any preference by users, but still, sufficiently motivated users could reverse-engineer things to try to make a single open-source toolset that works with all vendors' FPGAs. Of course, the feasibility of this is questionable, but we've seen really impressive reverse-engineering efforts in other places in FOSS. Just look at how futile it is for YouTube to try to prevent people from downloading their videos.
- hn492912 2y agoLarge institutions like CERN run everything. But the advanced stuff is definitely not on KiCAD. It doesn't have support for the right simulation models. https://www.eenewseurope.com/en/cern-selects-cadence-services-to-create-and-maintain-design-environments-for-internal-teams-and-partners/ https://www.eenewseurope.com/en/cern-selects-cadence-service... "The CERN physics department is deploying the Cadence analog and digital end-to-end solutions as well as the Cadence verification and Allegro PCB solutions throughout the support of its CERN IT department."
- consp 2y agoWith respect to cad suites it's push from the top. That starts at education where sweet deals are made to force students to use one specific suite while it should not matter what you use.
- arlcode 2y agoI wonder whether it is a about quality control and completeness. Pure Software has a lot slack when it comes to delivering incomplete or (in the FOSS world ) even partially incorrect releases. Many issues can be fixed after the fact (even in production) and you can inch closer to a better version as time come goes on. Mechanical engineering oftentimes can't work that way. An "80% solution machine" usually doesn't work at all and iteration costs (outside of 3d prototyping) can be staggeringly high. Example: My company produces heavy "things" (20tons+) that have tight tolerances in some places. If the design is off by 2mm because of a CAD bug or unexpected/unknown UI the part could be scrap or require an expensive (read manual) rework. There go all your software savings. So why management would love to reduce the staggeringly high costs it's not worth the risk until an alternative is very proven. In many projects customers contractually require is to use a specific solution.
- SirHumphrey 2y agoAnd even if the software doesn’t cost you in failed projects it can cost you in other ways. The old meme from 10 years ago about: “Linux being free if your time is free” is largely false for personal usage, but in the corporate environment somebody will have to provide support and with the open source software this is going to be you. People selling B2B software know that so they will usually price things in a way that it is just a bit cheaper to pay them rather then support and retrain staff.
- leoedin 2y agoI don't think it's simply "engineers hate open source". Most of the open source tools in the embedded space are just a bit crap. The reality is that good software needs many thousands of hours of development time. The embedded space is actually pretty small in development budget terms - so fewer engineers who might devote time - and also there's less overlap in skillset - electronic design engineers rarely have the software skills required to develop EDA software. Most of the incredibly well used robust open source packages are sponsored by large tech companies. The embedded space just hasn't had that kind of sponsorship.
- regularfry 2y agoI suspect it's the ways in which they are a bit crap. All software is a bit crap one way or another. FreeCAD's UI is "a bit crap". The "workbench" metaphor is fine as a metaphor, but the specific way the workbenches are put together in FreeCAD is oriented more towards the way the functionality is implemented than what the user wants to do with it. You have no choice but to understand technical implementation details. That's just one example, but that attitude to UI in FreeCAD is absolutely pervasive. I think that's a general problem in the space. The user interfaces in general aren't designed, they're an outgrowth of the direct implementation of the underlying functionality.
- chefandy 2y agoYes. You’ll have a hard time finding a full-time professional photographer that hasn’t tried Gimp, and an even harder time finding one that still uses it. That’s not even getting into graphic designers— Gimp’s typography tools are awful. Open source software that’s useable— more recent blender versions, Inkscape, Firefox, Signal— is the only stuff that’s caught on in large part because they deliberately enfranchise designers. As an experienced, art school trained designer with far more than enough full-time coding experience to implement my own designs, I still exclusively contribute code to FOSS projects as a developer. I’ve seen both sides of this and am perpetually dispirited by the dismissive, haughty, and frankly ignorant attitudes towards designers among many developers. FOSS interfaces are put together by and for people who a) have a working mental model of software functioning, so they reason about interfaces differently, b) know more about the code than the problem domain, c) are used to and pride themselves on learning complex systems based on a set of complex docs. Until changes, user-facing FOSS applications will be used by developers no matter how useful they would be to others.
- bowsamic 2y ago> Unfortunately, I've noticed that non-SW engineers frequently turn their noses up at open-source solutions, and really the entire concept of open-source software, and seem to prefer proprietary solutions, the more expensive the better. Probably because if you complain about bugs or problems in open-source software, a legion of trolls comes to tell you "erm, it's open source, you can just implement it yourself" no matter how skilled the user is at programming. Like, for example, the lead dev of Inkscape, who used to (not sure if he still does) go around on twitter looking up complaints about how slow Inkscape is on macOS and then complain about them being entitled. No wonder they don't want to use it, then, if it's considered rude to even expect the software to work.
- regularfry 2y agoYeah, this is a non-trivial effect. It affects FreeCAD too. Mostly contained to the forums, but if you ask a question it's wise to give people who actually know what they're talking about a couple of days to show up.
- bowsamic 2y agoI think part of it is also the user knowing that they have no right to express frustration when the product is free. That's actually a mental burden. In a sense, people buy software partly so they feel they have the right to complain when it has issues. And honestly I think that's pretty reasonable
- regularfry 2y agoNo, they do have the right to express frustration. What they don't have is the right to demand work from anyone else, but what tends to happen is that communities are on such a hair trigger for the latter that they reject the former even when the frustration is directly caused by a solvable problem.
- bowsamic 2y agoWell the thing is, if you buy a product you do have the right to demand work from someone else, and that's why people buy products
- typewithrhythm 2y agoIf I have two solutions I don't expect to easily work, one is free and one comes with an expensive support contact, then I will weigh the cost of the support against the value of the whole project. Often the support is worth it, because I can have a conversation with someone early in the process. If I commit to open source then I either need to hire an expert (this does not get the same guarantee as a support contract) or live with much more uncertainty.
- hn492912 2y agoFor non-SW engineers, like myself, software is a means, not an end, and FOSS or not FOSS is irrelevant. To get a EDA tool to a useable condition, and debugged to the point where it is reliable enough to actually use, is just a ton of work. As someone who wants to design circuits, why should I do that work? How will it help me design more circuits? I understand why beginners and casual users don't like them because the EDA tools do have a huge learning curve, but once you're there, they are very productive. For professional engineers the software license is not really a significant barrier. Compared to the cost of labor, materials and equipment it's basically a noop.
- moooo99 2y ago> and FOSS or not FOSS is irrelevant. I don’t think this is universally applicable. I think you can differentiate software by how important it is. Some software is at the very core of your business. A CAD, a ECAD, some lab software or a video editing program. Realistically, if you cannot justify the expensive of that software for your business, you probably don’t have a business. Many of those apps require substantial R&D to get right, something you can only afford if you make real money by building it. But there are other supporting applications that are not as close to your value add as your core apps, but they can still sleep you over real bad if the vendor goes bust or raises prices into the sky. That may be a teams chat app, a mail client, a wiki software. Most of those apps are essentially the infrastructure of any business nowadays and are relatively solved problems. In this area OSS really shines and reduces a lot of the vendor risk.
- goku12 2y agoNone of the points you make is universally true. FOSS means that there is less of a chance of the rug being pulled from under you in the form of subscription services nobody asked for. This has been a repeated annoyance with one certain company which did that recently for an ECAD tool and an MCAD tool. And, there are enough motivated people who do a ton of work to make FOSS software reliable enough. In fact, MCAD is an exception in that area. We have world class FOSS operating systems, 3D animations systems and development tools in an endless list. Even Blender, which was not very popular a decade ago, suddenly gained recognition. FOSS ECAD is on the way and it will happen some day for FOSS MCAD too. Finally the license cost. The cost of proprietary software - especially engineering and scientific software is exorbitant in countries with better purchase power parity. Much less would happen in those sectors in such places if it weren't for the large repository of FOSS software available to them.
- rleigh 2y agoIt's because these tools are used to deliver high quality physical products on time and on budget with no scope or interest in messing around with software defects. These tools are treated like physical tools. It's worth paying for a high quality one which won't cause unexpected grief, by people who will provide immediate support because we pay them. I think if there were good quality open source equivalents they would be considered, but they pose a huge risk, possibly even an existential risk, if they derail our development plans unexpectedly. Paying a lot of money for seriously good quality tools reduces that risk dramatically. I've had a brief look at FreeCAD, and it's got a lot of potential. But when you compare it with SolidWorks, OnShape or SolidEdge, there's clearly a huge gap in usability and capability which needs closing before a lot of people will be able to consider it seriously. I'm sure it will eventually get there, like KiCAD did, but it will take many years and a lot of investment to get the usability, polish and featureset up to parity. It looks like Ondsel did a really good job to make some progress along that path.
- xyzzy123 2y agoI agree although I feel like one could easily make the exact same comments regarding compilers. I can't quite pin down why there would be many free (for various values of free) industry standard compilers but not cad programs.
- whyever 2y agoOpen Source works best for building blocks of software, not for end products. Companies have incentives to share their libraries and tooling, not so much for the final product like a CAD program.
- pjmlp 2y agoBecause those compilers are mostly sponsored by OS companies to outsource their software development costs in part. Also notice that all compilers for scenarios where liability is actually imposed, like in physical goods, most compilers are closed source, proprietary, and certified.
- robertlagrant 2y ago
- Xelbair 2y ago>I've noticed that non-SW engineers frequently turn their noses up at open-source solutions The problem is that usually open source solutions are really, really rough around the edges from UX perspective - and it could be minor edge cases for programmer! - but for engineer they are a dealbreakers. Look at it from the engineer PoV - they could learn industry standard CAD solution that works, has relatively good(depending who you ask and which version they started with) UI/UX .. and it's something they employer pays for. I worked with civil engineers that tried multiple different 2D CAD software packages and frankly, all of them hate Autodesk as a company, but they still did pick AutoCAD. They did have different preferences for specific AutoCAD version though. Honestly the core problem is that there's no pressure from clients on open source software to have a good UX, because there are no clients - just users and developers.
- robinsonb5 2y agoThe other problem is that sometimes from the perspective of an experienced user, "good UX" means "works exactly like the piece of software I've been using on a daily basis for the last 15 years." Even if a brand new UI is objectively better, to someone who's invested thousands of hours in becoming fluent, fast and efficient with an existing UI (however quirky or obtuse it might be) the new UI will be an impediment to productivity.
- Xelbair 2y agoSure, but that's not unique to open source software. it is a form of soft vendor lock in.
- mschuster91 2y ago> Unfortunately, I've noticed that non-SW engineers frequently turn their noses up at open-source solutions, and really the entire concept of open-source software, and seem to prefer proprietary solutions, the more expensive the better. Well if you're dealing with projects worth 7 figures (or more), it absolutely makes sense to go for a commercial project with SLAs on support. Last thing you want is to hit some showstopper bug, holding up people who earn 4-digit daily compensation, and been told to "figure stuff out yourself". If you as the author of a FOSS project that isn't a household name already for historical reasons (like, say, OpenSSL or cURL) and you want it being used by anyone else than hobbyists and universities, you won't get around establishing some sort of corporate infrastructure to sell support contracts.
- SOLAR_FIELDS 2y agoI’m a software guy. I love FOSS. Much of the tooling that I use is FOSS, and oftentimes the software is as good if not better than the proprietary equivalent. Until very recently, this was not the case in hardware world. In many cases it’s still not the case. You will meet all sorts of purists here that will tell you FreeCAD is good enough, for instance. Well, I tried using FreeCAD to build a hardware product. And eventually switched to proprietary software because FreeCAD could not satisfy my use case. I made a genuine effort to use the FOSS variant, but it was not usable for me. I’m more inclined to listen in hardware when someone says the FOSS tools are not good enough after that experience.
- arlcode 2y agoFreeCAD moved from "barely usable for hobby projects" to "yeah maybe if I'm really inclined to try it on a very a simple professional project". At least that's what my engineering colleague told me recently. Which is a massive improvement and the result of many hours of fixing "boring" bugs, improving UX and all the other chores nobody wants to do. But for most commercial work it's not yet there.
- deleted 2y ago[deleted]
- linsomniac 2y agoI'm a hobbyist and over the last month have been improving my 3D modeling chops. Because it's a hobby, the cost of the tools hasn't been an issue. I started with Ondsel, and it looks like a really good tool. I went through a couple of hours of a tutorial, and it looked pretty good. But then a friend reminded me of the Fusion 360 hobbyist plans, and I decided to give it a try, just to see. It blew my socks off! It's just a lot more refined. The first 12 minute tutorial took me further than I'd gone in the ~2 hours I did with Ondsel. FreeCAD is an amazing piece of software to be available for free. But in the end Fusion just operated a little more smoothly in lots of little ways. I have really limited time to do 3D modeling, so it's pretty valuable to me to get more done quickly. One temporary thing that's making FreeCAD a bit hard to get started with is that there's not much content out there for learning 1.0, and sifting through out of date content to find it took some work. That'll improve as time goes on.
- mft_ 2y agoI think you've got the wrong end of the stick. I'd frame it as: people who want to get stuff done and who can't or don't want to have to fight or troubleshoot their software or the system it runs on will often have to choose non-open-source options. Some examples, from my perspective of being an enthusiastic and reasonably tech-savvy hobbyist: * Linux is almost always a huge pain to get running well. In contrast, MacOS almost always just works, and while Windows can be a bit more janky, it very rarely needs countless hours spent on e.g. Ubuntu forums or Stackoverflow trying random fixes until one does (or doesn't) work. Of course there are reasons for this, but it is true. (Will next year be the year of Linux on the desktop?) * Python is something I fundamentally love and use frequently, but I'm not the first to notice the terrible UX when it comes to managing different versions of Python itself, and its packages. Note that virtually every Python-based project on Gibhub (which is lots, thanks to ML) comes with a different set of instructions to get it running, usually based on a different distribution or package manager, thanks to an n+1 problem-solving approach [0] from the Python community. You can often run into huge issues simply installing a single popular package (looking at you, OpenCV). * FreeCAD... I'm an enthusiastic mid-level CADder, and have used several different commercial packages without a problem. FreeCAD is just awful currently - fundamental issues/incompatibilities betewen the different modules within the base system, a terrible ugly UI, an unncecssarily steep learning curve (even for someone well-versed in CAD). And of course the answers to (some of) these problems are suited to the limux hacker - "oh just install so-and-so's fork instead". Really? And you're surprised it doesn't take off with the hobbyist community? * Dearpygui.. a lovely, performant GUI for Python, but with such terrible documentation that for anything beyond the (sparse) examples, you have to resort to asking questions on Discord. (They are reponsive and friendly, though.) * GIMP - powerful... and just crappy to use. My basic premise is that most open-source products are designed and coded by hardcore programmers/Linux experts, who are great coders but either don't care about or don't have skills in optimising UI/UX/usability. Maybe it's the much-derided product managers (i.e. not hardcore programmers/Linux experts) who bring usability to a project. Maybe open source needs to work on attracting non-coders to its projects, and be open to listening to their criticism? [0] https://xkcd.com/927/ https://xkcd.com/927/
- epcoa 2y ago> Python is something I fundamentally love and use frequently, but I'm not the first to notice the terrible UX when it comes to managing different versions of Python itself, and its packages. Python’s ecosystem looks like a trash fire and sits along nicely with JavaScript (they burn brightly in subtly different ways). Neither are concerned with adoption at this point though. > Maybe open source needs to work on attracting non-coders to its projects I think Python is proof that the economic realities are more nuanced than this.
- MegaDeKay 2y agoAlmost all the tooling in FPGAs is proprietary because the vendors don't provide the information needed to develop open source tools around them. They'll also often obsfucate the bitstreams to make the reverse engineering process more difficult. Progress is being made but it is a slow and painstaking process.
- aseipp 2y agoIn the case of FPGAs it doesn't really matter that the proprietary tools are buggy. What matters is the features and utility they have. Open-source FPGA design is still extremely, extremely far behind the proprietary alternatives in many dimensions (power support, integration tools, many aspects of simulation and test, general tools like floorplanners, and so on.) That isn't because people aren't trying either. It's just really hard and has limited talent pool. I've spent a lot of time at this point with both toolkits. I use the open source tooling extensively for my own designs. But you tell some grizzled RTL person there's no power analyzer or native SDC support or that UTM was only recently supported in some simulator, and they're going to laugh at you. They've been doing that stuff for 20 years. I know this because I've done it several times (though other people find particular things, like free RTL verification tools, much appreciated.) I think FOSS/software people paint some very rose-tinted picture in their mind where the mere availability of something for $0 would make it an obvious choice, even at only 10% of the functionality. But that's not how people see it in reality. Many people, including engineers, think of it the other way: if it's so good, why is it $0 and how do I know it will keep being developed? They've made their peace with the fact that the $5000 tool will exist practically for as long as they need, get the job done, and be supported.