7 ms·
I keeping hearing the narrative from this crowd that the MBP is on its way out of being in vogue for developers, but I don't buy it at all. First of all, this
by jameslk 10y ago
I keeping hearing the narrative from this crowd that the MBP is on its way out of being in vogue for developers, but I don't buy it at all.
First of all, this is market share up to the release of the new MBP. It's not surprising that their market share has been slipping given that up to this point they haven't released a significant update to the MBP since 2013.
But getting to the point, the Mac ecosystem is now ingrained into open source development. Believe me I used to use a PC not too long ago and nothing would work because OS software is designed to run on top of a NIX environment. I recently had to go through this exercise with a colleague who was in denial. But over time, it ends up the same: software built to run on Linux servers runs best under an environment that is designed more like Linux. He now owns a MBP.
So Windows is out (for non .NET devs). That leaves us with what, Linux itself as the OS? Anyone who suggests doing this either hasn't done it before or has way too much time on their hands. I use macOS because I don't have time to hunt for drivers, trying to understand an obscure error discussed in a long forum thread or having all my software no longer work just because I updated a package. I've already tried that twice once with Gentoo and then with Ubuntu years later hoping it would be different. I know plenty of others who have as well. Ultimately we have jobs and we need to debug our own software.
Which brings us back to the Mac. I fully expect this release to be their Windows 8 moment, a beta event from which they will recover from given time for hardware to catch up. Not every release can be a stellar event. Give it time.
- sn0v 10y agoAgreed. If the rumored terraced batteries (that couldn't make it in time for this year's release) come through, coupled with ostensible efficiency improvements in the next gen of processors, GPUs etc, we might be able to reach that hallowed 10 hour mark again. Well, that and hopefully there's a price drop with the second gen of touchbar MacBooks (not holding my breath there)
- derefr 10y ago> I used to use a PC not too long ago and nothing would work Was this before or after the Windows 10 WSL environment was released? I think that has done a lot to change developers' views on doing *NIX development on Windows.
- jameslk 10y agoFor me it was before Windows 10 WSL, but for my colleague it was after. It was very early on right after it was announced, of course. He tried using the Ubuntu on Windows stuff to run a Nodejs app but ran into weird filesystem issues. We didn't have time to be one of the first to figure out why, so it was back to the Mac for him.
- walshemj 10y agowhy would you do *NIX development on anything other than the actual kit the code is going to be running on?
- grzm 10y agoIt's important to ensure that the software you're developing runs as expected in the production environment. That does not mean that the development environment and the production environment need to be the same. For example, it's very likely that the development tools you're using will (or should) not be deployed. This extends to anything else about the development environment, as long as you're able to consistently deploy the software to the production environment. This also assumes that there is only one production environment. Some software is expected to work on different architectures or OSes, some quite dissimilar to each other. For example, some software runs on Linux, macOS, and Windows. A developer (or development team), probably has (and should have) access to all of these environments for testing, but likely does development in the one they're most comfortable with.
- walshemj 10y agoIsn't that what I just said? that the development machines os and hard ware should be identical. I have worked on projects where we brought the dev / test and live from the same production run so the hardware was identical down to the MB rev
- grzm 10y agowhy would you do *NIX development on anything other than the actual kit the code is going to be running on? I understand this to mean that you think that the dev environment should be identical to the production environment. Am I misunderstanding? Assuming I'm understanding you correctly, no, I don't think what you said and what I expressed are the same at all. A developer (or development team), probably has (and should have) access to all of these environments for testing, but likely does development in the one they're most comfortable with. If you are saying that development in a different environment is okay, but a dev should do testing in a production-equivalent environment, then we agree. I don't see that distinction in what you've written. If I'm misunderstanding or misrepresenting what you're saying, please do correct me, as that's not my intent.
- idobai 10y ago> So Windows is out (for non .NET devs). That leaves us with what, Linux itself as the OS? Anyone who suggests doing this either hasn't done it before or has way too much time on their hands. I use macOS because I don't have time to hunt for drivers, trying to understand an obscure error discussed in a long forum thread or having all my software no longer work just because I updated a package. Sounds like you either haven't done anything on linux or trying to spread FUD. Downloading a driver isn't rocket science. Especially if you're a developer...
- SnowingXIV 10y agoGreat point. I recently bought the new MBP with Touchbar and was hesitant for the myriad reasons that were previously mentioned. Before I pulled the trigger I went to setup my dev environment on a fresh Linux partition at home (mainly a windows machine). I was fighting things all over the place to get it to a state of usefulness and productivity. I spent too much time doing this and still kept running into little issues here and there when needing to install certain things, run particular apps, and getting to switch over to a different workflow. I couldn't afford wasting this much time in the office. I ordered up the new MBP, installed everything, setup time machine, and bam within a few moments and pulls, npm commands, etc I was fully functional. Very little issues and it felt incredibly good. My biggest gripe was ordering a few adapters but now that doesn't pose any more issues to me.
- DoodleBuggy 10y agoHow do you like not having a real escape key?
- gizmo385 10y agoI don't have the new MBP, but how often do you really use the escape key? I'm use solely vim for my development work and I almost never encounter a need to use the escape key.
- gshulegaard 10y ago> the Mac ecosystem is now ingrained into open source development. Interesting... > Anyone who suggests doing this either hasn't done it before or has way too much time on their hands. Oh... Quick question, when was the last time you did it? Currently I have three full time Linux boxes: * Custom PC build I did myself * System76 Galago UltraPro * Dell XPS 13 Developer Edition Oddly enough, the one that gave me the most issues was the Dell supported XPS 13 DE but I didn't have to do a thing, just waited for driver updates from Dell which I could install via: > sudo apt-get update > sudo apt-get upgrade But at the end of it I have a Linux laptop with premium build quality, 8 hour battery life (with 4K screen), and an external battery pack that easily extends my battery to a full day of work before needing an outlet. My company gave me a Mac, but literally every other computer I personally own, right down to the Dell T710 server I have is running Linux (Ubuntu 14.04.3 specifically) without issue. I don't expect Linux to take over the Desktop market. But for Developers I see the current MBP as just another reason to seriously consider just getting a Linux laptop from an OEM like Dell or a niche player like System76. Let's face it, this MBP just highlights the fact that its target market is not developers or power users. Which is fine, and it probably can be a successful product with or without us...
- fritzw 10y agoThe second you compile one package to get any of those boxes to work, for me, the pro-linux box argument is negated. Particularly for work machines, I don't have time to compile and install just to get my box up and running. Mac worked for me for this reason, I presume the reasons are the same for many. You like the freedom and power your boxes allot you, I like the simple operation of the mac. My problem is Macs are quickly becoming more work with all of there services and issues. When I start having to search for drivers online I might consider switching to Linux, but this won't be a cure all, because I deal too much in graphics.
- eikenberry 10y ago> The second you compile one package to get any of those boxes to work, for me, the pro-linux box argument is negated. This seems a strange things to say considering everyone I know who uses a Mac for dev uses homebrew, which compiles as part of the install.
- pfranz 10y agoI generally agree. But I'm not confident they'll change. They may have withdrawn support too quick, but what do they gain out of doubling down their efforts (especially if the market is just developers)? I've really been surprised hearing pretty popular projects that have been around for 20+ years still have issues on Windows (like Python). Working in VFX there are a lot of domain-specific open source projects that "support" Windows, but have out of date build instructions and break often just because most of the development is done in Linux. I really think Linux on the desktop's biggest problem is having third-parties caring about it (which is a chicken/egg issue) and people's familiarity. If you need Photoshop or your trackpad driver won't work--you're out of luck. Any of the troubleshooting or debugging I've experienced hasn't been any more difficult in Windows vs Linux other than my familiarity with how the OS works. I find troubleshooting Windows much more difficult because my familiarity has atrophied since I haven't used it heavily in years. I do think there's hope for Windows with the Linux Bash shell, docker, and virtual environments. It has always been a bit sloppy to use your current OS as your development environment. Personally, I just want good hardware with support and I'll probably move to Linux. Battery life, a good track pad, high DPI screen (and support for it), and build quality are the major things I haven't found yet and would really convince me.
- kelseydh 10y ago"Just developers" Developers are not trivial. Good developers lead to good apps, which lead to a better ecosystem. The technically savvy are also the ones who set the trends about what the rest of the curve adopts. This is only going to grow more true as creative work (coding, design, etc) becomes a larger and larger part of our economy.
- pfranz 10y agoApple Developers are a prerequisite for a good Apple third-party ecosystem. Especially if you expect the software to be idiomatic to the platform. But in this case we're talking about web developers or developers for open source server software--not Apple desktop or iOS software. For a very long time Perl and Apache served the web while Photoshop and Illustrator ran fine on a different platform. Windows had both IIS and Adobe products but still didn't overtake Linux and OSX. Yeah, there is some bleed over to regular users and yes, losing them might be the downfall of Apple's desktop computer. But it's less than 30% of their business and the growth potential just isn't that high. My expectation is for them to milk the current situation with minimal investment (while trying to keep the perception of relevance) so they can focus on the "next big thing." I think they pushed things a bit too hard and people noticed, but I don't think they'll change course. They'll just try and change perception. I would love for them to double-down and heavily invest in desktops and laptops, but I just don't expect it because I don't see a business case for them to.
- fritzw 10y ago> I fully expect this release to be their Windows 8 moment I get what you are saying and somewhat agree that naysayers are an overly represented demographically.... but... Apple has for 5 years been operating without strong direction. By many accounts it appears to be flailing, simply living off it's cache and tech R+D created from the 3 decades of Job's rule. It's clear Apple still makes the best hardware so that isn't in question. I do question, how they intend to stop the slow drain of talent from the company and users. They aren't supporting pros the way they did in the 80s 90s and 2000s. All the pros in movies, music, and graphic design used to use Macs. With the introduction of OS X programmers had a home. That was a strong component for influencing their coolness factor. No more. Apple alienated all of them with expensive outdated options like trashcan Mac Pro, and overly expensive unjustified new MBP. Logic isn't keeping up, FCP isn't keeping up, hardware specs aren't keeping up. iCloud is limited and isn't keeping up. This isn't a Windows 8 moment, this a late Windows XP moment. There is a slow drain that has started. We are approaching Windows Vista when everyone really gets turned off by how broken and discombobulated every product and service gets with the current lack of strong leadership.
- stcredzero 10y agoI do question, how they intend to stop the slow drain of talent from the company and users. They aren't supporting pros the way they did in the 80s 90s and 2000s...That was a strong component for influencing their coolness factor. It used to be that creators doing cool things on macs was a chief driver of the Mac image. Now it seems more like it's wannabes and douchebags latching onto this former cool image, taking over as the chief drivers of image.
- walshemj 10y agoThe MAC version of Unix diferers considerably from Linux. There is plenty of OS software for PC's. I think your trying to defend Apple when they seem to be disengaging from the "professional" market
- crusso 10y agoI find myself increasingly disenchanted with Apple's products. The removal of the iPhone7 headphone jack was an absolute disaster from my perspective. The new MBPs with their 16GB memory limit, their removal of the esc key, and their useless touch bar, all have me looking enviously to other hardware platforms. Recently, I tried to burn a DVD on my iMac running Sierra using the built-in Disk Utility. Apparently, Apple ripped out the DVD burning feature in that app because they're moving away from having an optical drive in all their newer products. Please don't compare the elimination of the optical drive to the elimination of the floppy on the original iMac. The floppy had one use, and Apple was boldly showing us we could do without it. DVDs, CDs, and Blu-Ray have other uses beyond just software and application data. They're still all over our consumer electronics and need to be supported as first-class citizens on a computer that attempts to be so media friendly otherwise. To me, this is starting to feel like Apple felt in the early 1990's when their leadership appeared to be lost. I'm not optimistic that they're going to start making the sequence of good decisions that they'd need to in order to regain my personal trust in their products.
- smoe 10y ago> Anyone who suggests doing this either hasn't done it before or has way too much time on their hands. I switched to Arch Linux in 2015 after about 10 years of Apple. Most of my dotfiles just continued working, so i could have been up and running for work within hours (basically make emacs, zsh and a browser run). But I decided to spent a weekend on configuring AwesomeWM, keyboard layouts and other handy stuff to really adapt the machine to me. I update the whole system about once a week and so far run into less problems than with homebrew. If you are not heavily reliant on proprietary GUI-tools, I don't see much problems in switching from OSX to Linux as long as you verify beforehand that your laptop is well supported.
- IMTDb 10y agoI think microsoft is well aware of this "issue". And they seems to be working towards it as proven by the recent Windows Subsystem for Linux https://msdn.microsoft.com/en-us/commandline/wsl/install_guide https://msdn.microsoft.com/en-us/commandline/wsl/install_gui... Microsoft will hopefully start throwing punch in that direction by trying to "win developers back" by increasing the POSIX compatibility layer. How long till we see a complete "homebrew" for windows ? If the POSIX subsystem is "good enough" we might see a shift towards microsoft.
- catnaroek 10y agoI use a GNU/Linux system, and never had to hunt for drivers, or had any problems with package updates. And I'm not exactly the kind of user who enjoys rolling up his sleeves and tinkering with the system until it sort of works. When I say I had no problems, it really means no problems. The one thing that macOS has going for it is the Trackpad's gestures, which I don't think have any counterpart on non-Apple systems, but even that doesn't matter much anymore as my workflow has become mostly keyboard-driven.
- nkkollaw 10y agoI was going to make a similar comment. I tried for the third time last year, and the truth is that if you're switching to Linux because the Mac is too expensive, if you take into account all the hours you waste because of bugs or half-backed apps, Linux is 10 times more expensive. I use Linux for servers and I would never even consider using anything else. On the desktop? No way. It's just not ready, if you value your time and it's not an hobby for you.
- bostand 10y agoAs someone who uses Linux at work without any issues whatsoever I have to ask: What are these crazy Linux bugs people are talking about? And why does it always happen to macbook users?
- nkkollaw 10y agoMy machine wouldn't boot anymore because I followed apt's suggestion to run apt-get autoremove. There are many packages and apps out there that get released but are far from stable, and no easy way for non-devs (as in Linux devs) to opt out of unstable software. I'm not your average MacBook user, either. I use Linux on the server on a daily basis. If I waste 2 hours because of something like this--which doesn't involve experimenting with config files or deleting random files, but just doing regular maintainance--it's a big deal for me and my clients.
- bostand 10y agoautoremove removes packages that are no longer used and should not affect anything. However, if you have messed with your system (eg manually copied some software or edited a configuration you should not have touched) then autoremove may remove things the system now needs to boot. How do I know this? Because I once did exactly that (to be fair, apt-get told me this could happen and asked for a second confirmation)
- nkkollaw 10y agoI know what it should do, and I use it regularly. That one time, it triggered or caused Xenial to stop working correctly.
- wwweston 10y ago> But getting to the point, the Mac ecosystem is now ingrained into open source development... The Mac ecosystem has been about as ingrained into OS development for over 10 years at this point. In fact, my observation is that it is now less integrated than it was 5 years ago. I've been trying to build some OS software from source over the last year on Mavericks and then El Capitan and it's quite the minefield. Seems to be something in the shift to clang and issues of versioning with a variety of libraries. "Use hombrew" is the watchword, but the funny thing is that even if you don't use it and start going looking for help with build failure messages... the first results are still advice on the incantations that might (or might not) get homebrew to take care of it, and people still get stuck (finding info at a layer of abstraction down from homebrew seems increasingly difficult). It got me thinking about running Linux on various PPC macs 'round about the millenium shift -- that wasn't exactly butter-smooth experience, but I think I spent less time on driver issues than I have tracking down the causes of open source build problems on OS X this year. Meanwhile, there's the Windows 10 compatibility layer. None of the Windows dressing has impressed me much since XP, and a lot of commodity PC hardware is shoddy. But it looks to me like MS is really attempting to offer the same value proposition for developers who find a unix environment helpful -- workstation that will run your popular suite of desktop apps and give you that nix-y feeling. I can't help but be intrigued. For my personal purchases I've bought nothing* but Apple hardware for around two decades. But the next machine I buy will likely be a PC laptop selected for use with Linux and Win 10. Think I owe it to myself to try.
- kelseydh 10y agoFrom my experience, Mac's brew package manager ecosystem is actually quite unstable and prone to breaking. I know a few developers who believe that Linux's apt-get is generally more stable.
- pfranz 10y agoPeople compare the two (and I guess they both describe themselves as "package managers") but I see the use-cases as very different. Apt is what the whole OS is built around and managed by the system administrator while Homebrew is only for a subset of things and almost always managed by a user. I've been using Homebrew for years and the consensus I've seen has almost always been positive. The only time I've had issues is where I removed dependencies but didn't rebuild the package. I've heard about multi-user issues with Homebrew but have never personally used it like that. I wouldn't describe it as "quite unstable."
- WayneBro 10y agoI build Node.JS apps and Cordova apps all day long on Windows 10. What's your problem?
- Yetanfou 10y agothe Mac ecosystem is now ingrained into open source development. Where do you get this from, other than screenshots with red-orange-green buttons in the window decoration on github? software built to run on Linux servers runs best under an environment that is designed more like Linux. He now owns a MBP. And what does he run on that machine? If he uses it to run 'software built to run on Linux servers' he might just run Linux on the thing and be done with it. It is what I'd do, minus the MBP that is. That leaves us with what, Linux itself as the OS Indeed, for the stated purpose of developing software which is to run on Linux I'd certainly use Linux. Anyone who suggests doing this either hasn't done it before or has way too much time on their hands. I do have a lot of time on my hands, part of which is due to my use of Linux. Integrated package management which actually works, servers which only ever go down to upgrade the kernel or because of physical damage (lightning strikes, etc), no forced upgrade path, no planned obsolescence, no need to hunt the 'net for drivers (where did you get the idea from that Linux users still need to do that? Times have changed since I started using Linux, back in 1992...). As an added bonus I can install Linux on anything I want, try that with MacOS and you'll soon know what it really means to 'hunt for drivers' or 'understand an obscure error discussed in a long forum thread'. And before you ask why you'd want to install MacOS on something else beside that which carries the Apple logo, realise that the deeper you buy yourself into the Apple world, the harder it will be for you to buy yourself out again when Apple finally decides your niche is not the market they should serve. I fully expect this release to be their Windows 8 moment I think this is more comparable to their Mac Pro moment, or maybe their Macbook Air moment.