I'm a developer, designer, and sysadmin currently working in higher education. When I'm not enjoying the outdoors with my wife and our puppy you can usually find me building things in Elixir and Vue.
I didn't read everything but a quick note about your Node and Yarn setup! I would strongly recommend using nvm for managing Node versions and not installing Node through Brew. It allows you fine grained control over what Node you want to use, don't have to just use one version on your whole system!
Once you've got that, you'll also want to install Yarn without Node so that it's independent of the version of Node which is handled by nvm.
brew install yarn --without-node
I've found it's a far more pleasant experience working this way, being able to easily change versions as needed!
With a couple of tweaks (you can fork the repo to your own GitHub and make them there) you can cover most everything a modern developer might encounter.
Disclaimer: I work at Pivotal and use this setup project to pave our workstations on a regular basis between client engagements.
Hello Camilo, what a coincidence that I read some of this article yesterday! I just got a new Macbook and looked through around 10 articles to make sure I set up my $PATH and nvm correctly. I'm confused why tutorials advise having .ssh and .bashrc under $HOME whilst stuff that's installed through brew actually goes into MacintoshHD/usr/local/....?
I don't think you really need to do all this. Macs aren't far off being usable machines in the first place.
I'd do homebrew and a better terminal and (if my development stack was that way) install docker and/or vagrant. The rest of it's all very specific to a particular development stack.
On a more serious note, I would not do this:
sudo chown-R$(whoami) /usr/local/lib
simply because there's no reason to and you're messing things up for anyone else who wants to use the same system. I know, I know, Macs are usually one-person machines, but they run unix and are theoretically multi-user. Why try to break it?
Yes this kind of thing are very opinionated. I work with non particular Stack: c#, .Net Core, Web and Mobile. Hope can be used as guide. You give me a good idea, organizing it as stacks.
About /usr/local/bin you are completely right I'll add a Warning about. Just use in case you machine is used by only one user.
Fyi: apparently Spectacle isn't actively being developed anymore.
They've recommended users switch to Rectangle instead.
(Haven't tried it personally though)
I didn't read everything but a quick note about your Node and Yarn setup! I would strongly recommend using nvm for managing Node versions and not installing Node through Brew. It allows you fine grained control over what Node you want to use, don't have to just use one version on your whole system!
Once you've got that, you'll also want to install Yarn without Node so that it's independent of the version of Node which is handled by nvm.
I've found it's a far more pleasant experience working this way, being able to easily change versions as needed!
Now I moved to NVM :D
Excellent, I have no idea about nvm. I'n my case I'm only need LTS version but it's cool to other know that. Thanks!
This leaves out all the web developers, luckily there's this walkthrough --> medium.com/the-way-of-the-dev/http...
DISCLAIMER: the walkthrough is written by me -_^
You might consider giving this repo a look:
github.com/Pivotal/workstation-setup
With a couple of tweaks (you can fork the repo to your own GitHub and make them there) you can cover most everything a modern developer might encounter.
Disclaimer: I work at Pivotal and use this setup project to pave our workstations on a regular basis between client engagements.
Looks nice. I'm thinking do it similar with a console in .Net Core
Hello Camilo, what a coincidence that I read some of this article yesterday! I just got a new Macbook and looked through around 10 articles to make sure I set up my $PATH and nvm correctly. I'm confused why tutorials advise having
.sshand.bashrcunder$HOMEwhilst stuff that's installed through brew actually goes intoMacintoshHD/usr/local/....?Really, I have no idea. I never seen something about it before.
Do you have some of this links? I can take a look and try to understand.
I don't think you really need to do all this. Macs aren't far off being usable machines in the first place.
I'd do
homebrewand a better terminal and (if my development stack was that way) installdockerand/orvagrant. The rest of it's all very specific to a particular development stack.On a more serious note, I would not do this:
simply because there's no reason to and you're messing things up for anyone else who wants to use the same system. I know, I know, Macs are usually one-person machines, but they run unix and are theoretically multi-user. Why try to break it?
Yes this kind of thing are very opinionated. I work with non particular Stack: c#, .Net Core, Web and Mobile. Hope can be used as guide. You give me a good idea, organizing it as stacks.
About
/usr/local/binyou are completely right I'll add a Warning about. Just use in case you machine is used by only one user.Thanks!
Fyi: apparently Spectacle isn't actively being developed anymore.
They've recommended users switch to Rectangle instead.
(Haven't tried it personally though)
brew cask install rectangleToday I moved to rectangleapp and it's awesome: have keyboard shortcuts (like spectacle) but also magnetic windows like winOS.
Post updated with Rectangle information.
Thanks for the advice @bxe5056 !
Thanks! I'll take a look next week.
github.com/rxhanson/Rectangle
Very Nice overview. But let's not forget dart cli and eco system:
dart.dev/get-dart
Great! Almost everything looks familiar, but have learned something new.
Found typo: Filezilla gist repeats below Keka (File Compression).
Thanks! Fixed.
I never heard about meta key. I'll search about it.
Using docker for development will be good instead of installing all this stuff
Yeeess, that say me a partner. Maybe you know a link that to the same with Docker? I want to learn.
Those quick access sound nice... great tip.
Sometimes fix something in terminal is slowly, moving only with arrow keys.
Thanks!