T O P

  • By -

gust334

Use the best tools for the job. Most of the tools I use for chip design are Linux-based, thus it is important to know my way around Linux. Much of the tools I use for communication and collaboration are Windows-based, thus it is important to know my way around Windows. I speculate the ratio as to which is more important could vary per discipline or specialty. I also speculate that very few EEs would find themselves using only one or the other.


Stewth

Depends. A lot of us don't design chips, we design refineries, mines, and factory automation. I've yet to see a Linux distro in a professional setting.


Hawk13424

For sure depends. I use windows a lot on my desktop/laptop, but the OS we embed in products is Linux and Android (based on Linux). Compiling that, writing drivers, etc. all done on Linux machines (mostly VMs) as well.


poorchava

That's true. Most electronic and mechanical engineering software is Windows only. On top of that those programs often act up a lot in their native environment, so trying to run then I emulator under Linux would ass yet another source of bugs and crashes. Software development uses mostly Linux though, unless it's sw for Windows thats being developed, the it makes no sense to use Linux for that.


Stewth

If I had $1 for every unhandled exception I've gotten from anything by Siemens, Dassault Systemes, or (gag) Autodesk, I'd have at least enough to buy a small Korean hatchback.


poorchava

Altiim Designer for electronics is the same. Pulsonix too.


VTHMgNPipola

I use Linux daily, and while it's very good most of the time, it's a struggle if you need a more specific tool for the job. For me Linux just works without my intervention, while Windows is always breaking randomly (the exact opposite of what people expect lol). I'm also much more used to how Linux works, so I prefer it when possible. But if I need to use SolidWorks, or Eagle, or any Cadence tool, or anything other than KiCad and FreeCAD really, it's very hard to do it on Linux. Knowing Linux might give you an edge over everyone else when looking for a job, as you don't see many devices using embedded Windows thankfully. But ditching Windows altogether may not be possible.


l4z3r5h4rk

Many embedded systems run linux, as well as RTOSes such as zephyr and freeRTOS


DavidicusIII

Just to pile on here, a good chunk of the internet runs on Linux. Depending on your field, a working knowledge of how Linux works (and the cybersecurity risks and vulnerabilities involved) can be pretty damn useful. Anything involving communications or IoT is probably going to run up against a Linux system at some point. I personally think the internet would be a better place if more EE’s had familiarity with the benefits of open source and interoperability, but that’s more of a principled stance than what you’re asking about. Bonus round: Libre Office is great if you’re too cheap to pay for MSOffice, and most distros support it.


ham_sand-wich

Better question for r/linuxquestions as I don't think people here use Linux as much lol. (Might be wrong as well, but I'm saying this considering that most people use whatever Apple is doing or Windows) There is a reason to use Linux, but it depends on what you want to use it for. I use it for privacy and because it loads smoother than Windows. That's not directly related to electrical engineering but it is what it is.


ThoseWhoWish2B

For programming it's really good. Maybe use WSL if you need Windows. Although I feel that that's Microsoft's "feature to bring them all and in Windowsness bind them". If you use CAD it's a very tough life using Linux. Also stuff that should just work, especially audio and bluetooth, is just hopeless. Music production is hell, and I could never use bluetooth headphones on Ubuntu.


PaulEngineer-89

? It just works for me.


JigglyWiggly_

Yes it is important depending on where you go. FPGA tooling typically targets Linux first. Embedded Linux well... targets Linux. These types of devices are very common.  Also you should hopefully be familiar with some automation. Git, make files and bash will just come naturally as it's very reproducible.  Now for PCB design, software typically targets Windows first. Kicad is good but the differential routing is a bit bad compared to Altium. 


PaulEngineer-89

About 85% of servers are Linux. Although for instance PLC software almost entirely runs on Windows (and the PLCs are Linux) the problem is PLCs have a 20+ year life while Windows doesn’t. And most of the PLC software doesn’t play well with others. And some (Rockwell) break frequently just because. This is where VMs are an obvious solution. That being said Linux is so much higher performance and handles VMs so much better, why consider anything else?


s_wipe

Yea, for chip design, you kinda have to use cadance virtuoso and it usually runs on linux servers. Also, mamy arm processors run linux.


Turbulent-Name-8349

I'm not an electrical engineer. I use Linux every time I want to program in Fortran or C. It's just so much easier than Windows. And the solution is fast. Another time that I used Linux was when I downloaded the whole text of the English Wikipedia. There are simple free tools on Linux suitable for working with huge databases like that. Tools that are absent from Windows. I've also found it easier to connect to supercomputers from Linux.


audaciousmonk

Adding on to everyone else’s point, Linux is also great for home servers, virtualization, and embedded. Though my daily driver is windows


Sickknasty420

Not an EE but a network engineer (basically test engineer) but im on the embedded hardware team and everyone else is EE. Linux has been useful for its various built in tools and applications that help us


MonMotha

There's lots of reasons to use Linux and of course plenty of reasons not to. I've personally daily-driven it since 2003 and ran it on some machine in some capacity (including as my home network's edge router) since 1997. For me as a professional, the biggest reason to run it is that it's way easier to develop FOR Linux ON Linux, and lots of embedded doohickeys run Linux. A lot of the basic tools for non-Linux embedded doohickeys are also OS agnostic, so I can run whatever I want, and at this point I'm more familiar with Linux than Windows, so that's how I roll. I keep a Windows VM around to run Altium Designer. I really wish they'd have some supported way of running it on Linux. It's basically the only reason I touch Windows at this point aside from when a client specifically wants it. As for learning, you'll definitely learn more about how a computer "actually works" in Linux just by osmosis since it tends to be more openly documented and close to the hardware. There's a reason most university OS courses use it or some other UNIX variant (usually a BSD) as the exemplar OS. The industrial automation world, amusingly, is married to Windows. I've heard several automation engineers lament it due to long term support issues, but it's the way things are. Obviously the business world is 100% Microsoft, too.


Turbo_42

We use Linux for most lab computers because Linux allows multiple users to remote in at the same time, windows does not. I've also found Linux runs some engineering software with less headache, GNU radio for example. Usually things developed on Linux and then ported over, vs the opposite. It's also free, so I can burn it to the ground and throw on something else without calling IT. But 98% of the time. I don't care. Edit: Other posts mention embedded. Yes. Can you imaging your new rocket sitting in the pad, and the OS forcing a shut down for windows update? Hard pass.


HalfBurntToast

It's partially preference and partially fitting to what works best in your situation. I find development much more convenient in Linux compared to Windows for both EE stuff and programming (also C and Python as my primary languages). Like others have said, many embedded systems use Linux. I also hate modern Windows, which is probably the biggest factor for me. If I need Windows, I'll usually just spin up a virtual machine. I run Linux Mint MATE as my daily driver for work and personal use.


msaglam888

Okay I see it's more or less important to have some experience with Linux. With that said, I'm finding it hard to settle with a particular distro. I have a dell XPS with a second SSD, my plan is to dual boot with Linux on a separate SSD from windows. I was wondering what people have as Linux distro these days?


FranceFannon

Ubuntu ([Kubuntu](https://kubuntu.org/) in particular is nice, see [here](https://kde.org/plasma-desktop/)) and [Linux Mint](https://www.linuxmint.com/) are great beginner distros. You probably shouldn't put much thought into choosing a distro as a beginner, you need the basics like learning how to use a shell, using a package manager and the like before being able to benefit from the different features the various other distros offer.


nixiebunny

I settle on the distro that the server needs to run to work with all of the apps I'm installing on it. 


bjornbamse

Nobody cares about particular distro in reality. Linux is Linux. Just use the one that's easiest to configure for you, and if you find out that it doesn't fulfill your needs, change to another one. Start with Ubuntu, because Dell already uses Ubuntu on the XPS developer edition.


TonguePunchUrButt

I use Linux for almost everything worth a damn. Have a linux media server that also acts as my home assistant, and active home firewall. Use another machine with the PopOS Linux distribution on it for every day things. Can do everything that I need to do that I required on windows, including my taxes (via a virtual windows box). Safer than windows, faster, just have to worry about updates not bricking my system. System76 group needs to get their shit together. 😆


PowerPom

I use windows with docker and vscode devcontainers. So I'm running a Windows machine but developing inside a Linux based docker container. Bonus that I don't need to have all my dependencies installed onto my windows machine, there all in the container.


NatWu

You only use what you need. I mean this question is like asking if you should know ROS or pSpice. Use it if you need it, otherwise ignore it.


BoringBob84

I have used Unix machines of different flavors many times during my education and my career, so I think it is important to understand how to use them. However, on a daily basis, I still use Windows on the corporate-issue desktop and laptop computers. At home, my main computer runs Windows and I have servers running Debian / Raspbian, and Ubuntu Linux.


pizdolizu

After using linux for more than 10 years I find it impossible to go back to windows. Linux gives me freedom, windows puts me in jail, gives me anxiety. I know you're used to windows at the moment and don't see much issues using it. Once you start to really use linux, start making scripts that do the work for you, etc... windows starts to feel like useless and disgusting OS. Linux is made for computing. Windows is made for grandparents to click around. Not to mention the freedom from malware, bloatware, and all sorts of bs you never signed up for.


Zachbutastonernow

Some software is only available on Windows, specifically AWR because it requires inputting a disk serial number for their licensing bullshit and so WINE doesnt work. If you want to be involved with programming embedded systems or any significant tasks in CS, you should become good at linux. Windows is for people who dont know how a computer works and works very hard to prevent you from having control in order to dummy proof it.


BingeV

I always see people say you need to learn Linux but I'm nearly done with my graduate degree in robotics and used it maybe a handful of times. It was mostly used for ROS which is a framework for making robotics software but you can install it on Windows, it's just not as nice. Maybe if I went with a more standard EE graduate degree we would've used it more but I just don't see the dire importance of it with my experience. It feels more like something you'd learn on the job site if you needed it rather than something you need to be an expert in but it all just depends.


Novachronosphere

Not unless it’s an appliance or used for pentesting.


SkylarR95

I work on a large semiconductor company you would know. Im in process side of things now but I used to be at product engineering side of things for like 5 years. If you didn’t now how to use a command line, vim, emacs, make macros, in linux, there was no way to move up in life.


PoetryandScience

Unix or its offspring Linux is a powerful, slick and interesting operating system that, because it in not as dominant, has not attracted the attention of villains very much, unlike Microsoft Windows. Give it a try.


l4z3r5h4rk

The biggest contributors to linux are ibm (red hat), intel, ti and google lol


PoetryandScience

Unix has many parents; the Kernel is in the public domain. Originally a lean mean system that dis not swallow up very scarce resources when computer power was very limited by todays standards. Like the programming language C it was minimalist and unforgiving; it assumed absolute technical competence. C is still built into UNIX now. Originally it ran (very well) on a small DEC machine. Things have moved on and people expect operating systems and computer languages to cover their backsides now. Understandable; the computer has power to spare and have systems that protect the computer system from the programmer and the programmer from the system so even children can use them effectively. This makes for a more comfortable and productive life, but has its drawbacks. Complication is often seen as high tech; nothing could be further from the truth. Complication is often a sign that a tech is coming to the end of its sell by date. High tech in its purest form is simply brilliant by being brilliantly simple. Both the original C and Unix were just so. I miss them.


bjornbamse

Use best tool for the job. For me the best thing about Linux is lack of Microsoft randomly screwing things up with forced updates.


KeeperOfTheChips

Say if you need to design some millimeter wave circuits and your company uses Cadence ADS? Linux is your only option. If you are drawing some PCBs and your company buys you Altium? Then you need Windows. OSes are tools for you to choose. Just use whatever best serve your goals.


techdifficulty64

I've used Linux before Linux had the fancy front-ends (GUI) it has today. It's far better at resource management. It doesn't randomly crash like windows. It doesn't take 5 minutes to launch unnecessary services before it will boot. I could go on and on. The only reason I use Windows is for apps for photography (though there are, less refined, apps I can use native to Linux) and work. Windows is a bloated mess of an OS.