Live data from Hacker News

From Mac to Linux: Web Development with Linux

medium.com

11–20 of 106 posts

Re: From Mac to Linux: Web Development with Linux

#11

The apt-get install for damn near anything is a big one (for Debian based distros obviously) in my opinion. I think the access to build tools and packages is big too. I had case recently where I needed to make a one line change to an Apache module; wget the source, make the change, configure, make, make install, exactly the same as on the prod server. Unfortunately the author delves into text editors, which can be fl…

Homebrew comes pretty close to apt-get on Mac. Of course the whole OS being open source & community driven (sans driver blobs) is nice thing, althought benefits are mostly idealogical than practical.

The argument "dev env == production env" is overrated IMO, because you typically want more conservative/controlled production environment anyway and/or you may prefer different distro for workstation use. For serious use you anyway need proper test environment etc.

Editors are editors. (Vim being slower on Mac is hard to buy, unless the author refers to some non-commandline variant.)

Re: From Mac to Linux: Web Development with Linux

#12
Whilst I work with Linux on a daily basis and understand that `apt-get install {package}` is really handy, how does this change from a brew install? (granted brew is 2 commands extra to install if you include the xcode installation)

Also, given the prevalence of various types of virtualisation - is this still overly relevant to the developer? (Genuine question, keen to understand how people work)

I'm writing this now on a mac running vms for ubuntu (14/16.04) as well as OpenBSD. I don't necessarily feel like it's a blocker but understand we all work differently.

Re: From Mac to Linux: Web Development with Linux

#13

So what is so much better on Linux than Mac? You can use nvm, etc

* Package management isn't a train-wreck (I always have troubles with brew whenever I have to move to a mac that I never have with linux).

* There are substantial subtle differences between Mac and Linux that will eventually trip you up when leaping the divide between development and deployment.

* The Mac often has ridiculously old versions of tools because of its GPL allergy.

But hey, Macs are shiny and popular.

Re: From Mac to Linux: Web Development with Linux

#14
post #8

So what is so much better on Linux than Mac? You can use nvm, etc

The user interface. The package manager that handles everything. Not being locked to Apple's ecosystem, e.g. needing to install Xcode to get your CLI ecosystem working. Not having yearly updates that change everything. Using an open source operating system and not being bound to Apple hardware.

>Not having yearly updates that change everything

Yeah, right.

>not being bound to Apple hardware.

Not an issue for years already, unless we are talking about some very specific hardware.

PS: not trying to advocate for either of systems, worked on both linux (ubuntu, arch, centos) and macOS. Both have their share of pros and cons.

Re: From Mac to Linux: Web Development with Linux

#16
post #4

Earlier quoted context omitted.

To be honest - kernel will be the same (some times not though). OS will be most likely different. Better say that environment will be the same, I guess. That being said - as an ex-Linux user (for about 10 years) I see now real reason for this kind of switch. You can have the same (or almost the same) env on you macOS.

If we take the most popular linux choice for servers and desktop - Ubuntu as an example - that means using identical kernel/packages/libraries for your development and production. You cannot achieve that with MacOS as your dev OS.

That doesn't matter at all when using programming languages with OS agnostic runtimes[0].

Also, unless IT agrees to put beefy machines under each one's desk, the server is quite different from what developers can use anyway.

Finally if there is any issue that really needs testing on the server, that is what remote connections (including remote debugging) are for.

[0] We usually develop on Windows and deploy on UNIX.

Re: From Mac to Linux: Web Development with Linux

#17
Having the same environment on your local machine as on your target server is a real productivity saver and a good reason to use Linux.

Additionally I've recently started using elasticsearch docker containers and I found Linux is a far better host than Docker for Mac (as it still runs a tiny Linux vm with associated slower disk access).

Re: From Mac to Linux: Web Development with Linux

#18
You can see the differences between linux and macOS when you consider your environment as a desktop workstation rather than a simple dev machine. I've switched from linux to macOS after 13+ years because, IMHO, the linux desktop overall experience sucks for everyday use.

Re: From Mac to Linux: Web Development with Linux

#19

So what is so much better on Linux than Mac? You can use nvm, etc

Not having to go through things like this [0] just so that I can use non-ancient versions of GNU utils.

[0] http://apple.stackexchange.com/questions/69223/how-to-replac...

Re: From Mac to Linux: Web Development with Linux

#20
post #16

Earlier quoted context omitted.

If we take the most popular linux choice for servers and desktop - Ubuntu as an example - that means using identical kernel/packages/libraries for your development and production. You cannot achieve that with MacOS as your dev OS.

That doesn't matter at all when using programming languages with OS agnostic runtimes[0]. Also, unless IT agrees to put beefy machines under each one's desk, the server is quite different from what developers can use anyway. Finally if there is any issue that really needs testing on the server, that is what remote connections (including remote debugging) are for. [0] We usually develop on Windows and deploy on UNIX.

You would be surprised what can happen with "agnostic runtimes"

Running the same libraries, on the same base OS is invaluable to me - but that can depend on what you are developing.

> Also, unless IT agrees to put beefy machines under each one's desk, the server is quite different from what developers can use anyway.

With "the cloud", these days that is not necessarily true. a t2.large / m2.large are 2 cores, 8GB RAM. - well within the reach of a basic laptop.

> Finally if there is any issue that really needs testing on the server, that is what remote connections (including remote debugging) are for.

Never debug in production. No developer should have access to production.

Post reply on HN