9 ms·
That's not a big deal. I imagine that the average OS user doesn't need Apache and PHP. People who do web development use Docker, because for any serious develop
by zerof1l 5y ago
That's not a big deal. I imagine that the average OS user doesn't need Apache and PHP. People who do web development use Docker, because for any serious development you'd want your environment to match live one. And there's still an option to use brew or MacPorts to easily install all those programs.
- diveanon 5y ago"People who do web development use Docker" A patently false generalization. There are many reasons to avoid using Docker, besides the fact that it is a dumpster fire managed by a failing company. The new M1 macbooks couldn't even run Docker, which was enough to get the last holdouts of my dev team to switch to just properly managing their local environments. Docker can be useful, but more often than not it is a crutch used to make up for the fact that many web developers don't really know how to properly manage their machines.
- deleted 5y ago[deleted]
- coder543 5y ago> The new M1 macbooks couldn't even run Docker Docker has worked on M1 Macs since... mid-December of last year. Less than a month after they were released? Why was anyone on your "dev team" using M1 Macs within weeks of launch? At that point, even installing things with Homebrew required compiling everything from scratch. Not a very great use of developer time. > more often than not it is a crutch used to make up for the fact that many web developers don't really know how to properly manage their machines. This is like saying that an electric starter is a crutch, and Real Drivers relish the opportunity to spend 20 minutes using a crank starter to "properly" start their car's engine every time they need to go somewhere. No thanks. Like using a crank starter, managing a bespoke local environment is not some incredible skillset, even though you seem to be giving yourself a nice pat on the back for it. It's simply a questionable use of developer time, and doubly so if all of your production environments aren't identical.
- diveanon 5y agoWhy is "dev team" in quotes? Seems like an odd thing to get pedantic about. We have a BYOD policy, and several members of my team opted to get the new M1. They were junior devs who didn't know better not be early adopters. I agree that it was a huge waste of time, and Docker was a major contributor to that. Your analogy about starters doesn't really make sense. We aren't the driver, we are the mechanic, and we should know how the engine works in its entirety. Managing a local environment is a skill set, and frankly it is a skill set that many developers lack. You can keep using docker if you want, I don't really give a shit. Its dead end tech that will be replaced in a few years by some new startup, while the *NIX systems using it will still be there and the developers reliant on docker will have to learn a new ephemeral skill set.
- deleted 5y ago[deleted]
- corobo 5y agoWhy are you assuming devs who use Docker don't know how to manage a pretty simple LAMP setup? It's easy, docker is a bit easier if you have multiple environments to deal with. If docker is gone in the next few years (lol) then we'll use the next one if it's easier too. > We aren't the driver, we are the mechanic, and we should know how the engine works in its entirety. I do agree with this though, which is why I once built a server from scratch (as in physical parts) and put a website on it to find what I was lacking in "full stack"* -> installed the OS -> install and configure nginx, php, mysql, mail, sftp, bit of Zabbix to monitor the whole thing -> built a website to go on it -> made it live. Just for a laugh. At the time the only trouble I had was CSS :) But aye, no skillset if docker dies haha * Which later turns out doesn't include any of the build/install/OS/monitoring apparently. Full stack my arse.
- strzibny 5y ago> People who do web development use Docker, because for any serious development you'd want your environment to match live one. This is wrong in so many levels I don't even have the energy to start explaining why.
- Majestic121 5y agoIf you don't have the energy to substantiate your counter, please don't use the little energy you have to post this kind of comments : snarkyness creates shallow and uninteresting conversations.
- mattmanser 5y agoThe GP comment was similarly low effort.
- Toutouxc 5y ago> for any serious development you'd want your environment to match live one Not sure what you mean by "serious", but I get paid for doing webdev (Rails) on an ARM Mac and we deploy to x86 Linux boxes and our only environment is Gemfile.lock, yarn.lock and roughly the same DB version. I don't remember ever having problems with that.
- mjburgess 5y agoPackage-manager solutions tend to have a similar effect. The "non-serious" sort of development mentioned was more where you'd be dealing with a large number of tools without any builder-tool to ensure uniform versioning.
- trey-jones 5y agoI got paid for years doing webdev before I achieved anything that I would think of now as "serious development". I'm sure I'll look back in another 5 years and think the same about my current self. I'm not meaning to say that you yourself are not a serious developer, nor that webdev is not "serious development", but if you do this long enough you will encounter a problem that happens in production that can't be reproduced in your dev environment. Yes, it's a good idea to have your development environment mimic production as closely as is practical, even if it's not something that you currently practice.
- tored 5y agoMy objection to that is that in the long run it will make the source code less portable and thus limit my options and also may increase the risk when doing future upgrades. I prefer if my team develops on different operating systems or Linux distributions and point realeses, not only for early catching of weird behavior but also usually this will in the long run eliminate any environment assumptions in the source code and thus create a cleaner code base. If it is necessary to replicate an exact production behavior I have staging for that.
- Dudeman112 5y ago>I got paid for years doing webdev before I achieved anything that I would think of now as "serious development". I'm sure I'll look back in another 5 years and think the same about my current self. Maybe your definition of "serious development" is whatever is around your current level instead of something objective?
- sgt 5y agoNot true at all. You can do serious development using a virtual environment in Python. Using Docker during development is not required and in fact not always ideal.
- pantulis 5y agoBut then if you are doing serious development, you should also be comfortable with Homebrew. Being a Ruby developer myself, I never used the bundled interpreter! This news is not that relevant. Obviously these runtimes are included because some packages or libraries need them, but I'd not depend on them for development.
- sgt 5y agoCorrect, Homebrew should be a breeze to a serious developer.
- pjmlp 5y agoI do web development without docker, and yes it matches the live one.
- 5e92cb50239222b 5y agoYou're an endangered species. I find it pretty funny how so many developers jump through so many hoops to avoid developing on the OS that's actually running the application in production. Apparently wasting many gigabytes of RAM on unnecessary virtualization, suffering from extremely slow IO, and constantly bashing your head against file permissions/network configuration/whatever else is so much more productive. (Please don't waste your time replying with "I can't use X because of Y". The world does not need any more of these anecdotes. We've heard it all. If you don't want to be a part of the change, downvote and move on.)
- pjmlp 5y agoNah, just an old dog that has seen the pendulum swing too many times, and has more to sell to employers and customers than CV driven development. Docker is about 5 years time to become irrelevant, replaced by the next big thing(TM) in cloud deployments.
- ljm 5y agoIs this sarcasm? That sounds more like an indictment of Docker or Vagrant than anything else.
- gizdan 5y agoWith the right tooling and a good understanding of your tooling you can easily get away without docker or the like. Don't get me wrong, personally I avoid installing as much as possible and prefer containers, but it's not necessary if you have the knowledge, and the tooling. Especially with a scripted language like PHP that has most plugins bundled in most distributions.
- antifa 5y ago> jump through so many hoops to avoid developing on the OS that's actually running the application in production. lolwut? Most of us have been using homebrew longer than docker has been popular, often codebases older than that, too. If anything, it takes far more hoop jumping for the average user to run a full 1:1 VM on OSX.
- iruoy 5y agoI believe most macOS PHP developers use Homebrew. Some in combination with Laravel Valet for easy version switching and local domain management. Docker is horribly slow on macOS. I'd wish that on no developer. We had to use docker for one project, but quickly decided to just run the tests in Docker and let the developers figure their environments out by themselves.
- toxik 5y agoIf you wonder why that is, it's because Docker for Mac actually runs the Docker engine inside a Linux virtual machine. That means that whenever you call Docker, it has to copy your "context" to the virtual machine, then actually run the Docker invocation inside the VM. This gets slow and annoying very fast for even 10MB "contexts". "Context" is anything in your working directory, more or less.
- udp 5y agoFreeBSD once had Docker working through the Linux compatibility layer. No virtualisation. I always thought would have been really cool to see that ported to macOS.
- Stranger43 5y agoThat depends a lot on weather the freeBSD compatiblity layer is kernel or user space as MacOS contrary to common space does not use an freeBSD derived kernel but one derived from the CMU mach64 project, and yes i know jobs said otherwise but he was never a trustworthy source for anything. I think macos actually uses an different binary executable format then the elf64 one shared between linux and freebsd, so the kind of binary level compatiblity that linux and freebsd share might not be shared between macos and freebsd.
- sa46 5y agoAnother common slow down is bind mounts. Each file system operation is an RPC request between Docker for Mac and the Linux VM. I’ve never been super happy with Docker for Mac. I did a pretty deep dive into figuring out why it’s so slow with no satisfying conclusion: https://stackoverflow.com/q/58277794/30900 https://stackoverflow.com/q/58277794/30900
- corobo 5y agoYeah I do use PHP but I'd rather put things on myself than have a bunch of preinstalled stuff potentially needing security updates Also considering Mac's still on like bash v0.0.4 or something I'd rather be able to install the latest version of stuff as and when I need it (or use docker anyway making the whole thing moot as you say) off topic: WHY does mac's `rm` not support the -rf flag being at the end of the command dammit. I don't trust myself putting it up front haha
- cutler 5y ago> People who do web development use Docker This kind of HN elitism bothers me. PHP built its reputation on quick 'n dirty hacks which were easy to deploy on cheap hosting not by aping the infrastructure of some tech giant with fleets of servers, which is what Docker was originally designed for. The average PHP dev relying on the version which comes with the OS is most certainly not using Docker. Most home broadband upload speeds make Docker a non-starter.