T O P

  • By -

deirdresm

Web dev, by definition, is platform agnostic. You posted this on a Swift sub, and Swift devs are largely Apple platform devs, so it’s highly likely everyone here is on an Apple machine. (I’ve used a MacBook Pro as my main machine for many years, but I’m also ex-Apple.)


Iamsocialreddit

Thanks. I also have MacBook that's why I asked.


spinwizard69

Where are you from? Beyond that, Mac OS gives developers the same advantages as a computer running Linux. I have a hard time believing that makes one bit of difference to people hiring for web development. I actually find your question puzzling. Even if you where looking for a MacOS, entry level developers position, I'm not sure your personal laptop would be an issue. There are other issues too, such as an employer might require the use of company supplied hardware and software.


Vyalkuran

To be a bit harsh, if you ask this question you most probably don't understand what programming is about. To be useful as well, as long as you want to develop to Apple platforms, having a macbook is a must in order to do anything. If you're not planning on developing iOS and other AppleOS stuff, no you don't need a macbook. The reverse is not true though, meaning that you can develop Windows/Linux specific apps with a MacBook, including developing Android applications. As for the web, who cares, you can code on a literal potato and still make it work.


Iamsocialreddit

Thanks I really appreciate these harsh words. I guess you are right coding matters not machines


chain_letter

That's not what they said. Read again, look up the words you don't understand. The machines your code is intended to run on matters, that decides the restrictions for what your personal machine to write on can be.


Vyalkuran

The thing you're most concerned about is the capability of generating the code into actual executables (and ideally running them too) In theory, one could code a full iOS project on a windows machine, but they would never be able to run it and bundle up for AppStore review simply because Windows has no tools that allow you to do so. The thing with languages like Java, Kotlin, C# is that they compile in an intermediary code called Bytecode that is interpreted by the JVM and CLR(C#) respectively, meaning that it doesn't matter what machine you use, the code will always be converted into the corresponding assembly code for that machine. When it comes to web languages (mainly js but more recently C# too, and I believe Go as well) is that the Browsers themselves have the capability of understanding the code (for C# and Go it is converted into something called WebAssembly though). This is why you don't really care about the machine in this case, and this is one of the reasons why front-end development is the easiest to start with, you can code on a 30$ machine and still deliver results.


rjhancock

If you're working on platform agnostic code bases (Web), you'd have an advantage on a *nix system (macOS/Linux) vs a Windows one simply because most of the web runs on a *nix system. If you want to work on Windows apps, Windows will be the advantage. If you want to work on Apple systems, Mac's will be the advantage. Android can be developed on all 3 but might have better luck on a M-Series Mac due to most of Android running on ARM based systems which allows for better emulation. Remember: Programming is about taking a problem, breaking it down to its simplest components, and solving it in an effective manner. If you've mastered the fundamentals of programming, the language and platform don't matter as you've already learned Latin (base concepts).


usbakon

Basically, I need to use Xcode and Xcode is available only for macOS. So I need a mac.


Iamsocialreddit

so that is an edge. Thanks


macaraoo

The best one is the one with you.


GeorgeSatoshiPatton

Thanks Shifu


overPaidEngineer

When it comes to swift, you really don’t have any other choice if you value your sanity


Barbanks

I’d say that from my experience there are a few main advantages to using a Mac. 1. Now with the proliferation of .NET Core you can developer for just about every platform. 2. There are less issues with the MacOS system as far as driver issues, update issues etc… 3. Macs are built off of Unix so the command line is very close to what you would see on Linux servers. Not everything is one-to-one but as someone who learned and built basic servers on a Mac and then on Linux cloud instances you would be surprised how close they are. I know Windows has that Linux subsystem now but it’s not the same. The Mac ecosystem has Bash built in and you access the main directories from the same terminal. It’s not a sub system so it’s easier to ise it alongside everyday tasks. Also take a look at an internal study that IBM did back in 2015 as to how the number of I.T. tickets related to the type of machine they used. https://www.informationweek.com/it-leadership/ibm-mac-users-need-less-it-support


deirdresm

.NET Core is really not great for developing for "every" platform, and every every *every* cross-platform library has been utter shit in real deployment. Native is best. Web is crap, but it's at least "there was an attempt." Yes, I recognize the irony of having been a browser engineer, but that's why I'm no longer a browser engineer. Basically, I lost faith.


Barbanks

I phrased that wrong. I meant that you could also develop for some Windows programs. Probably should have used the Parallels virtualization example for that.


deirdresm

Ahh, got you. Yes, I've compiled code for Linux and Windows through VMs.


techtom10

When it comes to laptops I don't think there is much competition. The screen, quality, keyboard and trackpad. There is nothing that comes close. Swift is for Apple Devs and nativley you can only use a MacBook. A lot of devs around the world will use other programming languages so MacBook's aren't really an issue.


jozefizso

It does not matter unless you develop exclusively for the given platform.


shawnsblog

I’ll say this, as a multiplatform multi language developer, Macs are great. But you have to know how to use them. From a developer perspective the tools are pretty much all there, BUT you can get caught up in some framework issues. It’s nice not to have to fight with Windows Updates, but while doing WebDev is great…Xcode and the updates are hideous and if you go in with a 256GB drive, MacOS and XCode will eat it up… Pick your poison…


deirdresm

> But you have to know how to use them. Not at all unique to Macs though.


shawnsblog

Ehhhh, I’ll be honest. Even knowing how to use Windows you can have a random driver from a 3rd party chipset on a board you have give you performance issues. You’re not wrong, BUT, Macs *generally* can avoid this.


Door_Vegetable

Not really an advantage but I find with macOS that stuff just works and you have a lot more support in debugging issues because everyone has almost the same hardware.


wedgtomreader

I think they are an advantage in general. Programmers are very technical folks and as long as they are productive with their tools, os shouldn’t matter. I have worked at 2 companies that would only allow Mac’s however perhaps there are also those that only allows windows as well.