
How to Set Up a Mac for Web Development - ooloth
https://www.upandrunningtutorials.com/how-to-set-up-a-mac-for-web-development/
======
chrisseaton
> This article will guide you through the minimum setup you’ll need to get up
> and running

Why complicate with things like third-party terminal emulators? Nobody at the
level of getting started needs something like that.

~~~
cs02rm0
I guess it depends what your starting point is, if it's from having done no
dev work I'd agree. But if it's from having done dev work on Linux I certainly
was relieved to find iterm2.

~~~
therein
iTerm is great but I'd like to take a moment to mention alacritty[0] in case
some people haven't heard of it.

By far, the lowest latency terminal emulator on OSX.

[0] [https://github.com/jwilm/alacritty](https://github.com/jwilm/alacritty)

~~~
ubercow13
It's not, by far[0]

[0] [https://danluu.com/term-latency/](https://danluu.com/term-latency/)

~~~
hultner
Actually from the looks of it we'd be better of using the stock terminal app
than alacritty, thus back to the argument that a beginner probably don't need
another terminal emulator.

Personally I also use iTerm partly due to habit, been using it for well over
10 years all the way back to the pre-fork days on my PowerMac G5. But it
always had features that kept me on (although they've varied over time), for
one I've had better true-color support, handles cursors-states better with vim
inside of tmux. More font configuration options. I used the Tmux-integration
before but don't feel that it adds value for me personally anymore as I'm so
used to using tmux directly, GPU-rendering was a nice addition for the 5k/LG
UF 4K monitors.

Tried going back to Terminal.app (mainly for ultra low vi latency inside of
tmux) but always ended up going back.

------
owenwil
It’s fascinating, really, that Microsoft has narrowed the gap so rapidly with
WSL. I read these steps–which I performed for years over the space of a few
machines–and am amazed at how janky the tooling is. WSL/WSL2 are clearly
pushing to build better ways to create developer tool chains, without all of
the janky macOS specific stuff. With everything being a container, and
inherently disposable, along with all the investment Microsoft is making into
VSCode and its remote tool chain, it’s a good time to be a dev on Windows (and
I genuinely didn’t think I said that when I switched two years ago).

~~~
giancarlostoro
I am not an expert by any means but isnt Docker just good enough for this case
as well? The benefit of WSL is that it doesnt consume more memory than it
needs to has been my experience. I am not entirely sure of the memory
consumption of Docker.

~~~
owenwil
Docker is nowhere near as close to the metal as what Microsoft has done with
WSL2—it's got better performance and runs as near-native as you could possibly
get.

------
ex3ndr
One question: Why Hyper is default choice?

~~~
badfrog
I wonder why the terminal app section is there at all, since the preinstalled
Terminal is totally fine. Since this article seems aimed at brand new
developers, I'd expect the author would want to eliminate any unnecessary
steps.

~~~
jamescostian
iTerm 2 provides noticeable improvements. Being able to select text and have
it immediately copied to your clipboard (much like the PRIMARY clipboard in
Linux) is very, very nice. The UI is also much more customizable. And things
like imgcat (a program like "cat" but for seeing images in your terminal) or
even the ability to Cmd+click a file path on a remote server and have it
downloaded over SSH onto your machine are fantastic

EDIT: also worth mentioning that if you use VS Code (or another GUI editor)
and a separate terminal emulator, you may find VS Code's built-in terminal
emulator to be very, very convenient. Although if you're overwhelmed with
everything you already have to install, then it might be better to stick to
iTerm 2 in the beginning, because it's a drop-in replacement for Terminal.app
with awesome improvements

~~~
dijit
Iterm2 is truly awesome and I’m sad there’s no real equivalent on Linux, but
it’s mostly useful for power users, you can get by very comfortably with the
standard terminal.app with very few setting tweaks.

Although I was not aware of “click to download”, I wonder how that works.

~~~
mixmastamyk
Most linux terminals are much better than terminal.app, though true don't have
has many nifty features as iterm.

~~~
acdha
What makes you say “much better”? Having used them for decades I’d be hard
pressed to find a single feature I regularly use which isn’t in Terminal.app
by now.

~~~
mixmastamyk
My last experience with it, didn't support the full color palette, some of the
more obscure escape seqs, and window splits. Has it improved in the last six
months?

------
thatguyagain
"If you’re just getting started, choose Chrome."

Why, exactly?

~~~
ktross
Chrome has better devtools.

Personally I use Firefox on my MacBook for slightly better battery life and
the tools are good enough for the most part. AFAIK in terms of batter life it
goes Safari > Firefox > Chrome.

I feel like all of this and more should have been mentioned in the article.
It's surprising that Safari wasn't even mentioned when it has clear benefits
in some cases (coming from someone who hates Safari).

~~~
thatguyagain
Interesting. How is chrome devtools better? They seem to offer the exact same
things imo.

------
FanaHOVA
`nvm` should be the default for installing node imo.

~~~
andrewjrhill
Why bother with nvm when you already have homebrew?

~~~
mnutt
You may eventually want to pin your project to a specific node version, and
homebrew aggressively upgrades dependencies with no easy way to run older
versions, other than setting up your own tap.

------
sickcodebruh
I’m curious about what this would look like on Windows, especially for someone
who’s been happily developing on Mac for nearly a decade. Is WSL or a VM
required? I assume so, for many languages.

~~~
owenwil
It’d be WSL, and about as few steps as the article describes–I’ve documented
it here: [https://char.gd/blog/2017/how-to-set-up-the-perfect-
modern-d...](https://char.gd/blog/2017/how-to-set-up-the-perfect-modern-dev-
environment-on-windows). You’ll just be using Aptitude to install packages
instead–or you could use the new automation tools to get a fully disposable,
native development environment without messing about (I forget the name right
now, but I’ll post if I find it).

I’d argue that it’s getting _easier_ to get a modern web dev environment going
on a Windows box than much else these days, especially with WSL2 about to
land. It’s fun that Microsoft is investing so heavily in the developer
experience.

~~~
sickcodebruh
This sounds like what I was expecting, I’m glad to hear it. I already do a
fair amount of work in an Ubuntu Desktop VM and it’s fine, so I imagine WSL2
should be at least a bit better than that. I’m REALLY over Apple hardware and
don’t think I can justify the investment again. If WSL2 is as promised, it’ll
probably seal the deal.

------
waterpowder
I think installing Docker should be one of the first steps...

------
hartator
Didn’t knew about Hyper. What do you guys think?

~~~
yulaow
It's ultra slow compared to any other decent alternative

~~~
applecrazy
Not really, at least in comparison with iTerm 2. Hyper recently introduced a
WebGL renderer and with my oh-my-zsh/pure-prompt config, both of them loaded
in about the same time.

But keep in mind, the only reason I use Hyper is because of the borderless
window aesthetic.

------
avip
Really curious how these things make it to HN frontpage?

~~~
nktsg
Surprised to see that articles like there still exist. Not that there's
anything wrong with that.

