6 ms·
I must live in a parallel dimension. I never got why people like OSX to develop web apps, it's a different system from the server, lots of tricks are needed to
by realusername 10y ago
I must live in a parallel dimension. I never got why people like OSX to develop web apps, it's a different system from the server, lots of tricks are needed to make it work invisibly (either with a VM or a lighter equivalent), there's the Control/Command non-standard placement, the different keyboard layout, Terminal.app which is borderline unusable (almost as bad as cmd.exe), no package manager and the shell commands which all seem (very) outdated.
I'm not making any comments on the UI itself because it's subjective but I also find the UI a bit strange and not very intuitive myself.
Yeah sure, you can configure all of this and have something which works but why not using a Linux (whatever flavour you prefer?), everything is just there already.
Every time I use my colleagues Macs, I just feel completely powerless and I feel that everything is getting in my way to prevent me to do something.
- catskull 10y agoOut of curiosity, what system do you use primarily? The reason I ask is I suspect you use something very specific that allows you to be very productive. Also, what kind of work do you generally do?
- qzervaas 10y agoCan you elaborate on the unusability of Terminal.app? It's one of my most used apps and I have no issue with it. Also, I didn't know many of these until recently: http://mjtsai.com/blog/2016/09/26/mac-terminal-tips/ http://mjtsai.com/blog/2016/09/26/mac-terminal-tips/
- realusername 10y agoIt looks like this if I remember? http://www.thewwwblog.com/images/apple/traceroute-terminal-app.png http://www.thewwwblog.com/images/apple/traceroute-terminal-a... So the contrast is to bright, there is no tabs either from what I remember, The font itself looks bad, is not anti-aliased and also everything is way too small by default. It looks like some kind of 80's monitor that got somehow transformed into an app. Actually, to find this image I just typed "osx terminal.app" on Google and the first two results where already to replace it with another alternative so I don't think it's really popular.
- klodolph 10y agoI remember that it looked like that, by default, 10 years ago. It can be customized very easily and comes with a few different themes out of the box, you can add your own. It has had tabs for a while.
- qzervaas 10y agoIt's quite easy to customise. A lot of people's complaints are along the lines of "no bookmarks manager", but while not UI-friendly, ~/.ssh/config is as powerful as it gets.
- Jtsummers 10y agoThe default terminal in linux used to be quite ugly as well, seems unfair to compare the defaults from years ago to the current status in either. I came to OS X in 2006 (grad school, prior laptop had just kicked the bucket, a new battery was a couple hundred, and it was dog slow anyways being a ~2003 laptop three years later (hardware moved much faster back then)). So that was OS X 10.4. Terminal.app suited me just fine. The default was indeed ugly, but that was quickly remedied. I don't recall when they got tabs, but as a screen (now tmux) guy, that never bothered me. I've personally never understood the desire for multiple tabs when a better solution existed that didn't take up big chunks of your (especially on a laptop) limited screen real estate.
- danudey 10y agoLaunch an XTerm and you can see how awful terminals can truly be.
- Zarel 10y agoI usually use iTerm, but I just opened Terminal and it looks like this: http://i.imgur.com/JPSgL9K.png http://i.imgur.com/JPSgL9K.png contrast: perfect font: pretty good anti-aliased: yes size: not way too small tabs: yes Really, the only reason I use iTerm instead of Terminal is because TotalTerminal dropped support for newer versions of macOS.
- drinchev 10y agoOh come on. It's not so different from the server ( POSIX ), there are not a lot of tricks and there is a package manager ( homebrew ) & also there is iTerm, that replaces Terminal.app. Linux on the other hand does not have mature desktop environment, Safari, Sketch, Photoshop and a lot of other really good software that comes built-in with OS X. As a matter of fact I've never seen a tool that works only on Linux ( except probably some low-level kernel-dependent tools like iptables & others ) and does not compile on OS X.
- realusername 10y ago> there is a package manager ( homebrew ) & also there is iTerm Yeah sure, if you install some tooling it then becomes fine, but you need to install that. > Linux on the other hand does not have mature desktop environment, Safari, Sketch, Photoshop and a lot of other really good software that comes built-in with OS X. I don't use any design app personally so I can't comment on that. I also forgot to comment on Safari but I also hate Safari as a developer, I find that it lacks in the tooling part and prefer Firefox (I alternatively use Chrome also sometimes). I'm not also a fan of Safari's UI personally. On the desktop environment part, I also forgot to add that I hate the file manager which prevents you to see the path, maybe there is a way to configure that somehow? When I use my colleagues computers, I always use the terminal instead of the file manager to browse because of this.
- mcphage 10y ago> Yeah sure, if you install some tooling it then becomes fine, but you need to install that. I think you're the only Linux person I've ever met who has a problem with installing things.
- hoers 10y agoHe was making a point about linux being closer to a developer os by having all those included in a core install
- theli0nheart 10y ago
- jimbokun 10y agoEven for developers, there are often apps available for MacOS but not Linux that can be very important for specific tasks. Audio/video/photo editing apps, Office, Exchange support, etc. (I'm sure there are many workarounds for Linux for all of these, but I'm willing to bet they take a lot more to get working than on Mac.) So Macs are in a sweet spot, of being both outstanding development machines, great application support, and no questions about hardware support. Also, Mac OS absolutely has package managers for command line software.
- BipolarElsa 10y agoYeah but if you want to develop in C++, Java or C# you're gonna need visual studio thus rendering macOS useless.
- flukus 10y agoWhy would you need VS for c++, or especially java? The both have plenty of IDE's.
- BipolarElsa 10y agoWhat are the top IDEs for C++ and Java for macOS? Thanks.
- flukus 10y agoFor java you've got eclipse and intellij, probably more. I don't know about c++. There's always emacs/vim in any case.
- BipolarElsa 10y agoEmacs is s o f u c k i n g h a r d t o u s e
- flukus 10y ago
- chjohasbrouck 10y ago> it's a different system from the server, lots of tricks are needed to make it work invisibly (either with a VM or a lighter equivalent) I used to use Linux for this reason, but it's no longer a factor in my opinion. Ideally your development environment should mirror the production environment, and just saying "the server is running Ubuntu Server 14.04LTS and I'm running Ubuntu 14.04LTS" is a pretty lazy and incomplete way of half-achieving that goal. What about your nginx config? What about your permissions? What about your PostgreSQL version? Whether you run Mac or Linux, you're still forced to solve that problem, and the best tools to do it are all available and work great on a Mac. Vagrant is relatively painless and works really well.
- equalarrow 10y agoHmm, I've never worked at a company where this was a requirement. In fact, I've worked at companies where the majority of the time, the developer environments never came close to the production environments. What has mattered most is that a staging env mirror the prod env. This I have experienced and built numerous times. Also, an integration env between development and staging has also been fairly common.
- danudey 10y agoAnother philosophy I've always had: always writing for one system means you end up making platform-specific assumptions, even in higher-level languages. For example, concatenating file paths with / by doing "{}/{}/{}".format(var1,var2,var3) rather than using os.path.join(var1,var2,var3) and letting the system handle it. Developing on one platform and deploying on another means you find more little incompatibilities, and can expose a lot of bugs that failed silently or did the wrong thing on one OS but broke visibly on another OS.
- equalarrow 10y agoI spent '95-'01 using Linux and in '01 switched to OS X. If you do find the UI strange and unintuitive, then I have a few contrasts. All Linux desktops that I've used look like a cartoon. There's a lot of design theory you can read about but one thing I've never liked with any of the icons is the dark outline and thick lines and over-use of shadows. Still, to this day, even when I tried Elementary, it's not much different. This has been going on for over a decade and it's the accepted look and feel. Fonts. Granted, Google fonts are avail now, but Mac font rendering just looks better. Linux still, in my mind has not improved much on this. Honestly, I think Helvetica looks great and there's a reason: it's battle tested and has a long, successful history. Linux distros couldn't/didn't want to license Helvetica. Windows made Arial and the rest is history. (ClearType in my mind looks much worse than Linux, so points for Linux there.) For the Mac terminal, I use it every day and have for a lonnnng time. It's gotten better over the years for sure with tabs and better rendering. I run fish shell in mine and I don't feel like I ever run into any issues with it. I'm not sure what all the hubub is about Terminal. As for key layouts, Windows is similar. A Windows key where the Mac command key. I use a wireless Microsoft split kbd at work and it works fine with my Mac. I use my Apple keyboard on Linux servers sometimes and I don't get lost in some dark place trying to type my way out to no avail. ALL my servers are CentOS. I never have any problems shelling in, using vi, getting work done. This has never been an issue for me. And frankly, I dunno why it would be. The Mac Terminal has never blocked me on these things. I spent a lot of time with Slackware, Redhat/Fedora, Gentoo, and FreeBSD on the desktop. I think Linux is great, but I'm just over fuckin around with things. I wanna work, read/post the web a little, and then have a life. It's awesome if you have and want to spend the time compiling your kernel - I did that and I'm glad I did years ago. But I think after a while, endless configuration becomes old. macOS is not perfect and I'm actually waiting for the 'Snow Leopard' bug fix release that hasn't happened in a long time. I'm not sure what's going to happen with macOS over the coming years. For me, it hasn't gotten so bad that it's unbearable. I do dislike A LOT the stupid animations for desktop switching. The fact I have to find a utility that disables that (for anyone looking for this it's called TotalSpaces) is moronic. But overall, I've been fine with each upgrade. The UI is rock solid for me and stuff pretty much just always works. I might be one of those outliers that doesn't experience backups not restoring or iCloud completely dissolving people's music libraries. Dunno.. To each his own I guess. I'm not super excited about some Apple releases this year, but I think there's a lot of drama queens whining about things that don't matter much. And only Apple gets this type of attention. We'll see what next year brings.
- Zarel 10y agoThe Control/Command placement is _perfect_. I get all my unix commands on Control (emacs keybindings everywhere including ctrl+a to go to the beginning of the line, ctrl+c to SIGINT), and all my GUI commands on Command (cmd+a to select all, cmd+c to copy). Meanwhile in other OSes, how to copy/paste depends on what app you have open. (And meanwhile I get accents and special characters on Option, while non-ASCII input is a mess in other OSes) The package manager isn't preinstalled, but installing Homebrew is really straightforward, and if not having something installed by default is a problem, I don't know any OS that does any better. I am not sure you've used Linux if you think "everything is just there already" is an accurate description of it... Do modern Ubuntu versions even come with gcc built-in? Maybe you have some obscure distro that bundles literally everything, but using a package manager is seriously not very hard. Ten years ago, when I tried to switch from Windows to Linux, the defaults were ridiculous, and I bricked the install trying to make it usable (I messed up a poorly-documented config file trying to set up multiple monitors). Meanwhile, ten years ago, multiple monitors worked out of the box when I switched from Windows to Mac OS X, and everything else had sensible defaults. Like one year ago, the last time I touched Linux, I tried Ubuntu again, and when I plugged in an NTFS drive, it told me something was wrong and it needed to be mounted in read-only mode. It didn't tell me how to mount it in read-only mode. It didn't have a button for mounting it in read-only mode. I had to google for it and type in an obscure terminal command. Meanwhile, I can plug in an NTFS drive to Windows and it just works, no need to touch Google.
- pyre 10y ago> Terminal.app which is borderline unusable (almost as bad as cmd.exe) This is the point that I stopped reading. Terminal.app on OSX 10.1 was better than cmd.exe... and Terminal.app was a fucking pain in those days. But you know what? I didn't have to use lynx to surf to linux-usb.org to figure out the arcane incantation to issue to mknod to get my USB mouse working when I wanted to install Linux on a computer (this is not an exaggeration, and both experiences are circa the same era).