Hacker News new | past | comments | ask | show | jobs | submit login
Finding an Alternative to Mac OS X (bitcannon.net)
349 points by wezm on Jan 3, 2017 | hide | past | favorite | 334 comments

I know the OTA dismissed Windows, but when I switched from OSX to Windows a couple of years ago, I found Scott Hanselman's "Ultimate Developer and Power Users Tool List for Windows" [1] to be indispensable. I've been doing Rails work on Windows since switching, but ymmv depending on what your workflow and toolchain are.

I also found that there were a lot of workarounds/alternatives to software/tools that I thought I would miss on Mac. I've managed to find pretty much everything I needed and/or realized I could easily live without the stuff I couldn't find alternatives for.

Having said all of that, if you have a dependency on something like XCode because you're maintaining an iOS app, you're kinda stuck with a Mac. My experience with Hackintoshes is that even if you buy the right hardware off the latest Hackintosh compatibility list, it's still a bit of a time suck. Alternatively, you could also run OSX in VMWare Workstation/Player, but you don't get graphics acceleration and some OSX software won't run properly in a VM.

[1] http://www.hanselman.com/blog/ScottHanselmans2014UltimateDev...

I gotta say I've tried to do the VM thing. I REALLY tried. But it just isn't something that will work for any significant amount of time.

It would break with any updates, half the time xcode just wouldn't work, and it would sometimes be so slow that you'd need to wait minutes for some fancy animation to run.

And this wasn't even to get around buying a MacBook, we had one, I just wanted to compile and sign a hybrid app for iOS easier than using another physical machine.

Then we also found later that you can't sign an app on OSX while SSH'd into the machine... It just fails with a generic signing error.

So now I have a MacBook with remote-desktop software that's just permanently on in the corner of the room so I can open the GUI once a month or so and re compile and sign the latest version of our app...

I've also tried to use a Linux VM on Widnows due to issues with Node, paths in various Scala libs, and a dozen other problems.

Cygwin works for 50%, but not for everything.

I've tried Win 10 with Subsystem for Linux (Ubuntu Bash) and unfortunately it is not even close to production ready. Besides, I'm terribly disappointed with Win 10 after having been really happy with Windows 7 since its release.

Running a few Java and Javascript projects in IntelliJ on a VM is an exercise in frustration, even on a very powerful Dell Precision with an I7, SSD, and 32 GB of ram.

It works somewhat, but I'm very happy with my work provided 2015 MB Pro with only 16GB of ram. With Brew, Docker, etc. everything works great. If work hadn't paid for the Mac, I don't think I'd buy a new model due to the price and lack of upgradability, no escape key, ports, etc.

That being said, I've just installed Fedora 25 on a second m2 drive I put into my one Win 10 laptop. So far it is pretty good for dev work. It's not perfect, but it's approaching usability with a small Win VM for Office.

I have also been disappointed with the Bash-On-Ubuntu-On-Windows thing from MS. It seems like they fixed a lot of the frustrating issues recently but it's gonna take a few months for it to get to stable so it's still a non-option for me as well.

But i've had extremely good results by using the terminal and "GNU-ish tools" provided by "git for windows" which has worked fantastically. I can interop with the windows system perfectly, I get all my favorite tools like git, cat, sed, grep, awk, all the bash shell stuff, and ssh and more, and it looks a lot nicer than the default cmd.

Until the interop with the "host" windows system is better, and they push the fixes to the missing features like inotify and some others, I'm gonna stick with that.

Hey there: PM for Windows Console & Bash here:

If you're running Win10 Anniversary Update (AU), know that this was our first formal release of the Windows Subsystem for Linux (WSL) and was, as we made very clear prior to release, missing several key features and capabilities. However, we wanted to get it into users' hands ASAP so that we could asked the community for help to identify what worked and what didn't.

And the community leapt to help-out, resulting in literally hundreds of fixes to WSL and to the Windows Console.

We've continued to release improvements over the last several months through the Windows Insider builds (release notes: https://msdn.microsoft.com/en-us/commandline/wsl/release_not...), and have posted updates and highlights via our blog: https://blogs.msdn.microsoft.com/commandline/.

All these improvements have resulted in Bash/WSL now being very, VERY usable as a real-world dev environment. We've a few more fixes and improvements in the pipe that'll emerge in the next few weeks, but you can feel confident that Bash/WSL is rapidly becoming a viable, highly productive, genuine, Linux compatible environment for running your favorite *NIX-first tools, platforms and technologies.


Try using Linux with a Windows VM (if required). I have a computer running Arch Linux + Plasma and it is quite nice. With a bit of tweaking you can get a OSX like or Windows like desktop environment. I will use the Windows VM to connect to a VPN and run work applications that require windows, but I can get my email and documents easily through Office365 90% of the time.

Have you trued ConEMU/CMDer? For my uses, I found it to be an adequate replacement for the terminal in OSX. Outside of "watch" not working properly in Windows, the stuff I've done in Node has worked fine, but I probably do simple stuff compared to most.

"watch" works great in Node when "natively" installed, rather than Bash on Ubuntu on Windows. Natively installed Node is a great development experience on Windows these days (just make sure you install a version with NPM >= 3, which is now no longer an issue as even current LTS has NPM >= 3).

On the flipside, Ruby remains a nightmare to install natively and Ubuntu Bash is the easiest way to work with it. There I really do miss having a working "watch" for Jekyll builds.

>> Ruby remains a nightmare to install natively

I cheated and used RubyInstaller for Windows, and it's worked great for me for the past couple of years, but I guess it really comes down to how you use it and what you need.

I always seem to need to install native dependencies for Ruby (often dependencies of dependencies of github-pages; I know github-pages seems to be trying to remove native dependencies, but as with all dependency cleanup games, it seems like a bit of whack-a-mole) and installing the DevKit and getting the DevKit working and getting the native dependencies to install has been a different beast every time I've ever tried to do it.

Eventually I always seemed to hit a non-cross-platform-capable makefile somewhere, and could only throw my hands up in despair and give up.

Definitely a lot easier in the Ubuntu on Windows userspace. (Though I was still fighting some weird fires with rvm and whatnot. Given I pretty much only ever need Ruby for github-pages/Jekyll work, I'm sure there is much I don't know about Ruby and a lot of the pain of the Ruby ecosystem to me is simply the fact that of the major 'modern web dev' ecosystems [node, python, ruby] it is the one I know and use the least.)

Yeah, native dependencies in Ruby Gems, node modules, etc., are the bane of the open-source developer. This is why we built the Windows Subsystem for Linux: Sometimes, you've just gotta run native Linux code or code that expects a genuine Linux environment.

btw, what do you mean by Node when "natively" installed. I used the Windows installer from the node site. Is that what you meant?

The issue I get with watch is that it doesn't properly detect added files in a watched subfolder, although changes and deletions are detected with no issue.

Interesting, I've not noticed that problem, but just realized in my typical usage of a watch in Node I don't usually add new files.

> Then we also found later that you can't sign an app on OSX while SSH'd into the machine... It just fails with a generic signing error.

My guess is that it's missing something that being logged into a desktop session would have (e.g. Keychain access).

It's been a bit, so I might be wrong on some of the details here, but...

I did have keychain access, and was able to fully unlock the keychain and use it in other areas. However after chasing down several issues (including the keychain expiring after 300 seconds by default, moving the keys around between different keychains, various "jump up and down and spin around 3 times"-esque solutions of using multiple commands on the same line, or different lines, or in different orders, or others). I finally eventually figured out that I could unlock the keychain on the system manually, ssh in, then i'd have till it timed out to sign, only to have it be rejected on the upload...

Once I moved to just using a remote-desktop software and doing it through the GUI, it just worked. However now it's a 2 step process where our build system does literally everything but the signing then i need to manually remote in and click a button to sign and upload.

Have you considered CircleCI? They have iOS/OSX toolchain support.

Ya know we use CircleCI for another project for running integration tests and deployment, but I never looked into it any more than that.

The system is working right now, so I kind of don't want to mess with it until we get some time, but I'll definitely take a look at that.

Is there a similar developer tools list for Windows 10?

Most, if not all of the tools on that list work with Windows 10.

>Note that I don’t currently consider Windows a viable alternative. For the work that I do (Rails) and tools I use something *nix based is the best choice for me.

For what it's worth Windows 10 now has a bash shell based on Ubuntu available.


I'm surprised this was downvoted -- the Windows Subsystem for Linux (WSL) is extremely powerful and well done.

It's a full Ubuntu userland and you can even run graphical (X) applications. I've used it for Pebble development, running the (python + ARM GCC) SDK and QEMU-based emulator all on Windows. I've run into a few minor issues but for the majority of tasks it works great -- I've completely stopped using my Ubuntu VM and do all my Linux tasks in WSL.

Same thinking here! Behind the scenes engineering in Windows in recent years has been impressive. The whole DLL adaption method started sometime when W7 was released is a pretty impressive piece of engineering. Followed by WSL now.

The WSL has potential to become a very useful tool. So much so I'm considering switching from macOS on my next laptop or so. Unfortunately unlike your case, my workflow depends on a lot of networking code. WSL still has many gaps in the socket emulation pieces. It'll likely mature over time, and it's impressive that some people are already able to switch from a Linux VM!

A plus one from me. I've used WSL for the last couple months to run a bunch of ruby and postgresql based stuff and once I got past a few teething problems upgrading it from ubuntu 14.04 to 16.10 it's been excellent. The performance of linux ruby under WSL is MUCH better than windows ruby. I'd recommend WSL to any ruby dev on windows simply for that.

A co-worker is also using it to run cross compilers for embedded linux hardware devices (various patched versions of GCC and such) and it's been flawless for him, which I found quite impressive too.

I'm not exactly sure why this happens, but when I try to use Windows my hand (mouse hand) cramps up and I get angry and frustrated.

In my view, Windows 10 is still miles away in consistency across the entire system, compared to macOS. Windows 10 actually made it worse, because it's trying to accommodate both Windows 7 and Windows 8 design.

Currently I don't think we have alternatives to macOS. I understand that I sound like a grumpy Apple fanboy, but Windows is't ready to replace macOS. The distance between macOS and Windows have increased in the later years, and not because Apple have improved anything, it's Microsoft who have made Windows worse.

> In my view, Windows 10 is still miles away in consistency across the entire system

In my view GNU/Linux distributions are still miles away from Windows 10 in consistency across the entire system.

One of the reasons I use Elementary OS despite my ambivalence towards systemd is the consistency. It's not your typical Linux desktop experience, it's much more cohesive than Windows or even macOS. I have my main workstation booting both Windows 10 (which I do enjoy) and Elementary, and I find myself only booting into Windows to play certain Steam games that won't install on Linux.

Give Elementary a go, you may be surprised.

> One of the reasons I use Elementary OS despite my ambivalence towards systemd is the consistency.

I wrote "consistency across the entire system". I immediately believe that they did a lot of GUI polish and polishing of the default apps. But polishing the GUI of a POSIX-like system does not deliver consistency (only GUI polish). There is still the whole UNIX-like subsurface (like it or not), which delivers completely different abstractions than the GUI does (this is clearly not consistent).

For example rio (https://en.wikipedia.org/wiki/Rio_(windowing_system)) implements Windowing as private namespace (a central element of Plan 9) - very consistent.

BeOS (for which currently under the name HaikuOS they try to reimplement it in an open source way) is another example of an OS which was designed from beginning on to have a GUI and is thus also very consistent.

Yep, I get it, and as I said I'm still not sold on systemd and therefore use Elementary with the knowledge that if it breaks and I have to fix it, I'll have to deal with that massive tumor. The great thing about Elementary is, if all you need is a ⁎nix system with a consistent GUI for something like web development but without buying Apple's premium hardware, it really shines. The Terminal app is the best I've used on any OS, and while the text editor isn't quite a full fledged programmer's editor, it's good enough for a lackey like me. I figured out that Geany is overkill for my needs, and Scratch handles all my use cases fine.

I do think they try a bit too hard to look like macOS, but if you're going for the best desktop Linux experience, why not copy the best commercial ⁎nix desktop?

I agree completely about BeOS/Haiku; BeOS was my daily driver for several years until the death of the company caused me to have to move on. I have yet to find a modern OS that even comes close to that kind of cohesive, sensible, practical approach to desktop computing. Haiku is coming along well, but it's still not stable enough for daily use beyond dogfooding for Haiku devs.

In my experience, GNU/Linux distros do not usually include 3 seperate GUI settings windows with completely differing GUI's just to manage devices.

> In my experience, GNU/Linux distros do not usually include 3 seperate GUI settings

I have never seen a GNU/Linux distribution where I didn't have to configure some things via modification of configuration files in a text editor. Even these two differences (GUI vs. text file editing) is much more different than a few different design styles in Windows' control panel. Also the way settings are set in configuration files is IMHO even more different among different GNU/Linux applications than the different design styles in Windows' control panel.

How is windows 10 consistent? Half the apps are metro ones that fullscreen (pdf viewer) and half are still win32. Some work well on touch screen others horribly. Windows 10 is a frankenOS.

> How is windows 10 consistent?

Windows 10 isn't a good example of consistency, but every GNU/Linux distribution I have seen is much worse.

Hello, time traveler from 2012 who is actually describing Windows 8.

Just look at the control panels, there's actually two of them in Windows 10, one Metro, and one win32. Some settings are only available in one, some only in the other.

Nope, I skipped windows 8 almost entirely. I'm talking about windows 10 in 2016, it's still a kludged together mess of a touch based mobile OS and a full desktop OS.

This is a bit confusing. Your comments are factually incorrect (there are no forced-full-screen apps in Windows 10, and the default PDF reader is Edge, which is windowed by default and was designed from the ground up for Windows 10, never for Windows 8 or "Metro"), or at least outdated.

It's a bit of a blemish that there are two control panels, but almost no users are ever exposed to Win32. You can do virtually everything (from updates to domain join to adding/removing Windows components) from the modern Settings app. The legacy control panel is just that, and is irrelevant for most users. I'd love to see it modernized, but there are many much better uses of resources (security! performance! battery life!) than modernizing 90s-era utilities that few customers are ever exposed to.

I could agree with you one year ago. But after latest upgrade to macOS I got so many issues on my MacBook Air and MacBook Pro that I decided 'enough is enough' :)

Am I the only one who's never had any issues? 7 years so far. Just replaced my latest one because work got me one. They both run great, except the older one has some fan issues but never anything that prevented me from using it.

But then again I rarely install new things, only have a few base programs I run routinely, and reformat regularly.

Even with Sierra?

I've just had a ton of issues with the mouse becoming unresponsive... and then having to do a restart, whereas on El Capitan and Yosemite I could basically leave my computer on for forever.

No, I still have not installed Sierra on either. I don't want any siri bullshit. I wonder how long it'll last before I'm somehow forced to upgrade to Sierra. I'm willing to bet it'll be fully baked into the next OS release.

> but when I try to use Windows my hand (mouse hand) cramps up and I get angry and frustrated

Same here! Also i start to suffer from 'update-fatigue' when using Windows. The endless updates, reboots, and god knows what it's doing in the background which consumes resources... it all just feels so clumsy. I've never experienced anything like this in OSX.

That's probably the only thing that truly irritates me about Windows these days. Everything else is just a design decision that, as a technical user, I am easily able to adapt to. But not knowing if my machine is going to decide to reboot itself at any random moment without me having the option to stop it from doing that? Unacceptable. Completely unacceptable.

I know you should save often and bad things can happen like a power outage or a glitch or something, but those things are rare. My Windows 10 machine choosing to reboot itself without telling me? At least once a week.

Imagine if you had random power outages once a week, and having a UPS plugged in couldn't stop it.

>> But not knowing if my machine is going to decide to reboot itself at any random moment without me having the option to stop it from doing that? Unacceptable. Completely unacceptable.

First of all you can set the time interval when the Windows will be able to update https://i.imgur.com/BZNadeE.png

And even if you are working in this time Windows ask you what do you prefer - reboot now or later.

I'am not Windows fanboy. I sue MacOS, Windows and Linux at the same time.

Yes, you can set what time it will reboot, but you can't set it to "never", or even "next week". And the pop-up to reboot does not take control of the screen, so if you're doing something full screen like a game or a Powerpoint presentation, you miss it and have to wait for the reboot. Even if you're in front of a client.

When I'm done with my work for the day on Windows and I go to bed, I'm never sure if everything will still be there when I wake up. Far too often I wake up and I'm at a login screen with all of my active windows and documents closed. That's incredibly disruptive, and there's no way to stop that.

There is no way to tell Windows 10 "don't reboot until I explicitly ask you to do so".

Really? Because OS X pesters me about pending updates via the App Store all the time, and the only deferment option it provides is "wait until tonight".

Except it will tell you and you can say no. On Windows, you can only extend the actual reboot, sometimes, and that within 30 seconds. If you go for a pee, you might return to a rebooting machine.

Sounds like you need to specify your active hours. See these settings in the Windows Update settings panel:


It's unfortunate that a user needs to find such an option. It's likely that the location and UI of the option will be changed yet again each release.

MS "needs" (?) to prioritize "don't torment your users". Of course, for corporate captives, they can torment away with impunity since The Management has already decided You Must Endure... (and probably locked out the setting in question, as well)

>MS "needs" (?) to prioritize "don't torment your users".

No, no they don't.

If the user knows what they're doing, they run Windows Update manually at times when it's convenient for them (e.g. just before going out to lunch) so that they never encounter a forced reboot situation.

If the user doesn't know what they're doing, they exactly the people who need to be forced to the latest update so they don't wind up inadvertently joining a botnet.

And, of course, there are ways to forcibly disable WU for really advanced users but at that point whatever befalls them is quite clearly their own responsibility.

So, win-win for everybody but the malware makers.

You're right, they don't :-(

Like IBM and Oracle, MS is in the position of "Management says we've already won, so suck it, users!"

OTOH - "I can put whatever I want on my phone, so suck it, Microsoft!"

Payback ... and all :-)

I've noticed since the big update (Anniversary Update), the default setting is a sane "after hours" range of 9pm to 7am on a fresh installation. So, it seems they are improving and are attempting to avoid situations where you're at work in the middle of the day, step away for coffee, and come back to find an update/reboot cycle has wiped out your hard work. I was pointing out the setting for the OP because either he hasn't updated far enough to get the sane default, or he's somehow changed it without knowing and needs to fix it.

Well, that's a lot better than the nagware that used to run during our first-thing-in-the-morning calls 3 or 4 years ago. Hopefully corporate IT doesn't screw it up (of course looking it down, fully screwed).

I still like the Mac's unobtrusive "get it tonight after I shut down" option, though :-) (or Ubuntu's "I'll get it when I'm good and ready", but that's not a system for worker bees)

>> The endless updates, reboots, and god knows what it's doing in the background which consumes resources...

Really? Windows has its share of hair pulling annoyances to be sure, but endless might be overstating it.

In my experience since switching, I find that resource consumption is comparable to OSX. I get that this is anecdotal, but I leave my main machines on 24-7, and I basically only reboot when an update forces me to, which sometimes is once a week (when there are frequent updates), but most of the time it is for stretches longer than two weeks.

I assume this fixes the reboot problem:


I'm managing a friend's Win10Pro machine and so far it's been awesome. On the other hand, OSX which I'm running seems clunky and old-fashioned.

I think you are exaggerating a tad. I have my W10 set to the fast-lane for preview updates and I still do not get updates very often.

I switched to Windows 10 (Microsoft Surface 4 Pro) after ~15 years of using Linux and 5 years of MacOS. In Bash (based on Ubuntu) 99% of utilities just work. I can use npm, install modules and they still work. For me in Windows 10 - everything just works.

Though I still miss: 1. MacBook's touchpad :-( 2. Emacs-like keybindings everywhere in OS (like MacOS has).

If you force yourself to use the keyboard you might find it as convenient in Windows as it was in OS X. However, it is almost modal like vim. When I used Windows, I was used to `alt` followed by a series of keys for repetitive or common commands.

It drives me insane that you cannot do this easily in OSX

I bought a seperate apple Bluetooth touchpad for this very reason. Works for me.

Switched to Win 10 after 20 years on the Mac. The bash was the last missing point for me. So far I'm really happy with the OS.

As an alternative to WSL docker for windows is also very helpful.

I use it to spin up linux images that contain all the devtools that I need, and mount files/code from windows in there. For a terminal just enter the image with exec /bin/sh. To get a consistent experience I also use msys bash (which is bundled with git for windows) for terminal use on windows. With that setup entering and exiting linux containers feels very similar to on OSX.

The downside of docker for windows is that you need HyperV activated, which weans VirtualBox no longer works. The older boot2docker solution worked together with VirtualBox - however it didn't support filesharing between windows and docker containers, so there's unfortunately a tradeoff.

I run a full Linux VM in HyperV, I install git for windows, which comes with everything I need for the most part.. VS Code and my browsers. From there, I'll do samba sharing from the VM so I can edit in windows, and run in linux.

I've tried docker for windows, and even WSL+Ubuntu+Bash, and it's just not as good. I use conemu, VS Code, and Chrome more than anything else.

Which linux distro do you use and what are your hyper-v settings?

Ubuntu Server 16.04, I give it 12GB (of the 32 on the host) and 2vcpu (iirc). I have a separate SSD for projects, which the VM runs on.

Setting up a Rails environment on it has plenty of quirks, though. And other common Linux apps don't work right either, ones you typically install along with Rails

> Setting up a Rails environment on it has plenty of quirks,

I thought that was true on any OS... :/

I really hoped this would be good but in it's current form it just seems too unstable and small incompatibilities that screw you. I ended up going nix vm on my work issued XPS 15 and things are going great.

I'm thinking about trying it, but a friend of mine said that he could crash it easily by just doing the examples from Mastering the Linux Command Line. I think a Surface might make a decent piece of hardware but either WSL (i.e. the horrendously named Bash on Ubuntu on Windows) has to get a lot more stable or Linux support will have to improve. I hear Linux support for the Surface Pro 3 is basically there, but SP4 still needs some work.

All word-of-mouth, of course.

a friend of mine said that he could crash it easily by just doing the examples from Mastering the Linux Command Line

Not really surprising (dev version, comes with warnings about compatibility, ...). But why would you let that hold you back for trying it out for what you are going to use it for? Counter-anecdote: I've ran gui apps like SublimeText, gcc, ... without crashing; also see other comments. tldr; try it first-hand instead of relying on anecdotal proof it isn't, or is, ready.

WSL (i.e. the horrendously named Bash on Ubuntu on Windows)

Note that 'WSL' and 'Ubuntu on Windows' and 'Bash on Ubuntu on Windows' are seperate terms for different things

Well, in my case I actually suffer of random crashes, and it is not only sometimes too. Almost every time that I run WSL for something more advanced them SSH I already expect it to crash or at least lack some feature that I want/need.

What's holding me back is the expenditure of money.

I'm not Windows' biggest fan, but I'd consider it + Linux/BSD in hyper-v to be a nice start (say on a Surface Pro) -- if you need something that Just Works.

The bash subsystem is interesting, but I'd go with the virtualization solution first.

This is a solution I will test out later in the year. I like the idea of a 2-in-1 computer and I've ordered a http://eve-tech.com. I'll certainly be trying out the VM on Windows option when it comes.

Many articles about wanting to leave the macOS ecosystem mention Sketch. Sketch is macOS only (and will be for the forseeable future), so it's understandable that people want to consider the implications of switching away from it.

Recently, however, I stumbled upon Figma, a web-based, real-time collaborative interface design app (i.e., a competitor of Sketch). After convincing my group to experiment with it for a school project, I was pleasantly surprised.

- It's web based, so it works on Linux.

- It imports .sketch files

- It's real-time (you can see everyone's cursor and selection). This was great, because it meant we didn't have to walk through the snow to get to campus to have a discussion about tweaking a few elements.

I understand that some people may still need access to Sketch to work with people on their team or at their company. But for me, I'm officially striking Sketch off the list of software that's tying me down to macOS.

Affinity Designer is now cross platform and is starting to provide some of the functionality of Sketch. I don't think can handle Sketch files yet, but it's definitely an up and coming design tool.

I've never really understood why people use Sketch. I recently worked on a project where I had asked for some basic vanilla templates of a mobile site from the designers and was sent a huge Sketch file. It was utterly useless and I had to code everything by hand myself, since the 'designers' very clearly had zero clue about HTML+CSS or any notion of responsiveness, thanks to apps like Sketch which teach nothing of the knowledge required to be a useful part of anyone's app/site building process.

If you asked for templates you should have gotten templates, not mockups and not wireframes and not a demo. In my experience there is a common misunderstanding between designers, project managers and coders about what word or phrase is used to describe those very different things. And instead of learning what they are and being specific I have been told the equivalent of "just do your thing" ie, stop bothering me. Then people complain "this isn't what I asked for" and I have to explain the whole thing again while they don't bother to listen. Sound familiar?

template is an ambiguous term, clear communication and definitions of terms would help.

To clarify, you're basing your whole not understanding why people use Sketch based just on your experience that you mentioned?

I'm a programmer like you and used to believe in the idea that you should design in the medium which is HTML and CSS, and not in a tool like Photoshop or Sketch. But I've completely reversed my stance after working with a lot of designers who create beautiful sites that goes very well with the grain of the web.

The reason is direct manipulation. You're not thinking in terms of the DOM's static flow when trying to create a design. Instead you want a medium where you can quickly transfer the idea in your head to a tangible form and try out different layouts, typography, colors, and visuals.

But there still exist the problem of converting that design into code, and that is a wasteful exercise. You might have found Protoship UIPad, a tool I'm developing (in early alpha), useful there. It can convert Sketch designs into code - HTML/CSS and even React. Sketch has been incredible for that sort of stuff. It is a vector design tool and its design elements are fully expressible through CSS and SVG, unlike say Photoshop which is a raster tool.

Mostly hand-coding since ~'94. Also waded through the code-soup created by Dreamweaver for a bit. Thought it might save time having 'the designer' do the layout. It didn't. ;)

cynicism is well warranted. but if you're open to possibilities, they might pleasantly surprise you.

> This claim is typically met with skepticism. Isn’t generated code unusable? Are the elements going to be absolutely positioned? Would the CSS classes be named correctly, and how reusable would they be?


I think the problem here is that you asked for the wrong thing.

Of course you had to code everything by hand yourself - you didn't ask for code, you asked for design templates.

My IDE didn't teach me that much about software engineering either.

I'd be curious to hear what you consider to be an alternative workflow or tool.

Any tool can be used incorrectly in bad hands. The problem of choosing to work with talented and competent designers is largely unrelated from the choice of tool.

You should tell your Sketch designer about https://zeplin.io/ or upload your sketch design there. But I agree to some other comments... I think you and your designer do not speak the same language ;)

Invision does the same thing as this.

"thanks to apps like Sketch which teach nothing of the knowledge required to be a useful part of anyone's app/site building process." - I don't see how Sketch is to blame for designers sending you the wrong files.

> [...] thanks to apps like Sketch which teach nothing of the knowledge required to be a useful part of anyone's app/site building process.

This and the massive misunderstanding – where two parties agree to "templates", and one delivers mockups to the other who expects coded pages – tells me that Sketch is a subject in the story, but it isn't at fault.

Sketch users can be very knowledgeable designers and very good communicators. Sketch itself doesn't teach design, and it doesn't solve communication issues either.

just to clarify: I expected HTML (etc.) files. We'd already been through the whole wireframing process.

I also requested a responsive design.

What I got was as useful as a PDF.

Sorry, just kvetching on Sketching.

I just felt it was a waste of time that some basic coding skills could have solved. ;)

Figma seems pretty neat. Does anyone know of something similar but open source?

> The first option I tried was an i3 based desktop. However whilst I wanted to like tiling window managers I decided it wasn’t for me.

It took me a week or so to get used to i3, but once I did I can't see myself ever going back. I've been using i3 at work and at home for about year now, and every time I get on my (Mac Book) laptop it's a frustrating experience: I feel like I spend more time trying to figure out how to get to the window I want that actually using it...

Similarly, I've been using AwesomeWM for a few years. Going back to OS X is frustrating to me because it's so languorous and lacking control. On Arch/AwesomeWM, I can instantly flip to the space I want, but Mission Control forces me to walk through each space, insisting on animating the sequence and taking it's time to swap in the applications as I go along.

> but Mission Control forces me to walk through each space, insisting on animating the sequence and taking it's time to swap in the applications as I go along.

Alfred. Alt+Space by default (note you can also remove keybinds of Spotlight to make room for Alfred because I use Cmd+Space for Alfred and Alt+Space for iTerm2 fullscreen, running tmux via tmuxp).

EDIT: As joobus wrote above, I also recommend Amethyst. There's a small learning curve with the keybinds but that's it. Oh, I and I recommend Flux (remember you can temporarily put it off).

I'll plug TotalSpaces2 (https://totalspaces.binaryage.com/) here. If you're stuck with OS X for whatever reason, it's well worth the $12 to remove that god-damned animation that eats keystrokes for a full second longer than it takes my hands to start trying to interact with whatever's on the screen I'm switching to.

Try rebinding your shortcuts. These made OSX usable for me without resorting to a full blown tiling wm. It's not as fun as xmonad, but it speeds things up. There's a tweak for decreasing the animation time, I believe it's toggleable via in Prefrences.

Cmd-j/k for next/prev space, cmd-h/k for switching windows. Cmd-H/J/K/L for desktops 1-4. I spend most days in vim/screen anyway so it feels natural.

"Mission Control forces me to walk through each space"

Try swiping up instead. That'll give you a list of spaces to choose from. Certainly not as direct as your non-OS X WM but faster than stepping through each one.

Usually I'm not making the switch visually. On arch, I know what spaces each application is one and just switch to it instinctively. The visual search and movement to the trackpad ends up being slower and more annoying than a quick Super+3 or whatever it needs to be.

You can configure shortcuts to jump to a specific desktop on macOS.

You can set keyboard shortcuts for the specific spaces, specifically control + {1,2,3,4} for each space. In the keyboard section in system preferences, under "shortcuts" tab.

i3 is great, until you try to do something simple like change the time zone for your desktop clock or add some wallpaper. I switched from Linux to Mac because I was too well acquainted with making symlinks to /usr/share/ somewhere just to change my clock when I traveled, and then figuring out just how few processes I had to restart so it would take effect.

Unfortunately the Linux desktops were actually worse than the barebones window managers like i3: there was some sort of glibc bug that screwed up clock display on GNOME for at least a year. GNOME assumed glibc did it right, which was a reasonable assumption...but an incorrect one, but with i3 I could control this.

Now that I'm on Mac I look back in amazement at the time I spent on Linux learning ultimately useless stuff like why a bug in glibc would mess up my GNOME clock but not an i3 clock.

> i3 is great, until you try to do something simple like change the time zone for your desktop clock or add some wallpaper. I switched from Linux to Mac because I was too well acquainted with making symlinks to /usr/share/ somewhere just to change my clock when I traveled, and then figuring out just how few processes I had to restart so it would take effect.

Systemd makes using i3 so much easier. No more fiddling with consolekit and dbus just to get working external drives (logind solves the problem of local authentication), no more fiddling with symlinks to set time (timedatectl to the rescue).

> Unfortunately the Linux desktops were actually worse than the barebones window managers like i3: there was some sort of glibc bug that screwed up clock display on GNOME for at least a year. GNOME assumed glibc did it right, which was a reasonable assumption...but an incorrect one, but with i3 I could control this.

Gnome nowadays use timedatectl AFAIK to set time too. The last time I had a issue with setting date or time in Gnome was pre-systemd days.

While some people may not like systemd, I find tools like timedatectl, localectl and hostnamectl to be quite useful. They work much better than trying to write a shell script or parse something.

I quit desktop Linux right as systemd was taking hold. I used Debian but was thinking of switching to Arch for systemd alone. systemd is one of the best things to happen to Linux setups since X started configuring itself and since kernels got everything compiled in so you don't have to configure them. I do not understand the systemd hate. I think it's telling that the distributors--who actually have to do the work of maintaining init systems--have mostly switched to systemd while random vocal haters who do not have to keep the init system patched and working sit around and complain about systemd.

Most people hate systemd for the sake of hating something, or following the hate train. At least for me all my close encounters with it have been positive.

A lot of people don't like systemd because it heavily violates the unix principle of "do one thing and do it well". It replaces a lot of subsystems (eg: goodbye to all your old ways of looking at logs). Also, the primary developers have a poor attitude.

Systemd is relatively nice now, but the disdain for it wasn't just 'hate train'.

> Systemd is relatively nice now, but the disdain for it wasn't just 'hate train'.

No, it is mostly hate train. I only read one or two solid (technical) arguments against systemd. And no, no one of them is found in the regular systemd-hate sites.

> Also, the primary developers have a poor attitude.

I think the community have a worse attitude them the core developers, however this is mostly anectodal observation.

> eg: goodbye to all your old ways of looking at logs

systemd enable syslog.service

Here you go, all your old logs in the place you expect them.

> I only read one or two solid (technical) arguments against systemd. And no, no one of them is found in the regular systemd-hate sites.

There's an invisible pink unicorn who knows the winners of every horse race, but only I can see and hear her. Of course, I'm not going to tell you the winners; that's my secret!

Did you get onto the systemd stuff late? I got in midway along and found a few things that were iffy. One of the definite problems was the core developers' disdain for other people's use cases - even Torvalds said he was ambivalent about systemd itself, but the developers were pretty user-hostile and that was a problem.

> Here you go, all your old logs in the place you expect them.

Cool. In the same vein, do we have centralised logging in systemd yet? Or do we still have to run another syslog tool to ship them? Last I looked half a year ago, the consensus was still "ship them through rsyslog/syslog-ng", so you still have to run your old syslog in parallel. Only the IPU knows why they would make a new journaling system for a primarily-server OS, and keep kicking the "centralisation" can down the road.

Yes, the anti-syslog commentary went too far, but there were a lot of problems with it, especially before it had been battle-hardened. But whether or not you do or don't like systemd, you'd be crazy to say that it fits in with that unix principle I mentioned above.

The fact that your machines haven't personally been broken doesn't mean its a good or a bad design

This. It boggles the mind how much time one can waste solving admin, busy-work type issues on Linux, specially when trying to use a GUI. I mean wifi, Bluetooth, retina class resolution issues, drivers for multiple devices not being available... unless one is using Linux to learn and understand it as a server of some type I can't fathom using it as a replacement for Mac OS.

> unless one is using Linux to learn and understand it as a server of some type I can't fathom using it as a replacement for Mac OS.

Perhaps some of us value our freedom?

Perhaps some of us find that it helps to develop on the same platform on which we deploy?

Perhaps some of us find that we don't, actually, spend all that much time on 'admin, busy-work type issues,' having decided on good, solid distros which fit our use cases (Debian works for me, others prefer RedHat)?

At the end of the day, though, it really is about freedom for me. You complain that you must tweak your system; I value that I can tweak mine.

What you consider "busy-work admin issues", many people consider tier-1 features.

For instance, take sloppy focus. On my Linux machines, I can type in one window while interacting with another, and I use that ability fairly often. On my Mac, I have to spend time resizing and rearranging windows because I have to click a window to type there, and clicking raises it to the foreground, obscuring my other windows. Does the amount of time I spend managing windows outweigh the configuration time for the Linux box? I doubt it. But the end result is that my Linux machine feels like I built it exactly to spec. I value the fact that my OS, window manager, etc. do exactly what I want them to do in the same way that many people value the trackpad. I'm absolutely as annoyed and frustrated by the fact that the maximize/fullscreen button on my OS X windows moves my window to Space N+1 instead of keeping it where it is where a quick Cmd-Tab would bring a background window quickly back on top of the still-visible fullscreen window than I am that the trackpad on my Arch Linux box is less reliable at interpreting a gesture.

I'm assuming if you want someone else to ensure everything works for you without hassle then logically you would by a machine with linux preinstalled with a long term support release and then wait until a month after the next lts release to update after everyone else works out the kinks in the new release.

You know kinda like you do with apple machines.

i don't know, i've been running archlinux on my mbp and the only busy work i did was installing wifi drivers (which i did using cower and it was quite easy).

everything i have worked out of the box. and, as a plus, android usb tethering works a lot better on linux than on osx (thanks to networkmanager)

I'm on a Mac but at this point I could probably take it or leave it. Most of my life is shell + Firefox + Emacs + IntelliJ, and those all run basically the same regardless of OS.

If anything, my plan would be to move more of my life into Emacs so that I'm even less exposed to stupid ideas from my OS/laptop vendor.

I have been using i3 on a netbook for the last two days and I can definitely see how it would be lovely. But then again, Linux has changed a lot since I was into it seriously and I'm sure I will experience pain if I have to do anything substantial to tweak it, like symlink timezone files.

Yeah, I found I needed to set up some keyboard shortcuts for controlling mute/volume levels, but other than that it's been pretty set-and-forget (timezones not being a problem on a desktop).

The time I spent setting those things up has been more than made up for over the last year as I've spent less time managing windows and more time just doing work.

I've had good luck in the past with XFCE (in Xubuntu & OpenBSD) together with XMonad for this use case. Even now, where I don't use any of the panels and whatnot, I will occasionally fire up an XFCE control panel to do whatever it is that needs doing.

How could you not figure out how to do this? You can very well use gui configuration utilities + i3.

Check out Amethyst https://github.com/ianyh/Amethyst for Mac. I use i3 at home, and when I first started using OSX at work it drove me nuts until I found Amethyst.

A colleague turned me on to KWM (https://github.com/koekeishiya/kwm). If forced to use a Mac again, I'll probably use that. Amethyst never quite worked right for me, and I found myself restarting Amethyst all the time to un-break something.

Also, KWM has focus follows mouse.

Ditto for me with StumpWM. Whenever I have to use a machine without a tiling WM I feel like I've taken a trip back in time — back to an unpleasant and archaic part of time. Having to mouse over to windows feels like having to turn a hand-crank to navigate.

I'm currently running the latest release of ElementaryOS which runs off Ubuntu 16.04 it is great. It is very minimalist, and the desktop environment is really well done. Before ElementaryOS I was using ParrotSec OS which is on par with your typical pentesting / hacking type of distros but it comes with the latest and greatest of programming language tools. They're based off of Debian with their own modifications to the kernel to harden it, and out of the box you get TOR features that I never really used, but I'm sure that may interest some. Overall it was a great Distro my only gripe was not being able to properly install and use Steam on it. ElementaryOS has a nice Desktop Environment I appreciate but it either installs or doesn't. Fortunately this laptop took ElementaryOS, where in the past I have had issues installing it. I use ElementaryOS for everything from Python back-end RESTful service development to .NET Core application development with Rider. I'm also considering using SublimeText to save on startup time, although "Scratch" isn't too bad a text editor, it suffers poor naming (try to google for Scratch and you'll find the language before you do the text editor itself).

I had the same prejudice about Fedora and RedHat back when I was a debian fanboy. But if you look at what Redhat is doing with their money and their company then you soon realize that Redhat Inc. not only IS a large part of the Linux community, but also supports the open source movement in many ways.

So Fedora has been my main distro of choice for a couple years now. I still hesitate to order RHEL licenses at work, unless the client specifically has a good argument for choosing RHEL I tend to lean them towards CentOS.

And I can speak from 12 years of professional sysadmin experience in BSD and Linux that yum or dnf is a very stable package manager.

I've had more issues on Debian 6,7,8 than I've ever had on CentOS or Fedora.

I agree. My impression of RHEL and its likes is that they are "slow and outdated", but the more actual research I do, the more I feel like using them for their stability and security.

RHEL is the Warren Buffett of Linux: slow, methodical, stable, and in it for the long haul.

Agree as well. And I'm not sure about the "outdated" characterization. I find the most hardware driver support with RHEL. If a vendor is going to support Linux at all, they almost always start with RHEL and its derivatives.

RHEL is the Linux distro for production systems that you want to just run without any tinkering or surprises.

It seems to take a few releases longer for new features to move from Fedora to RHEL, but RHEL 7 is pretty current. That stability is great though, you can stay on one version of RHEL for a very long time and still get patch support, especially since major upgrades are so traumatic on most Linux distributions (RHEL included)

There's a part of me that really wants to use RHEL on the desktop to both support the company and to encourage them to put more of an emphasis on it. I'd love to see Dell Developer Edition with RedHat out there.

To me, that just seems like a long term win.

Yep, +1 for Fedora 25. The recent Ars review sums it up pretty well: probably the best Linux desktop ever.

The lack of equally high standard replacements for software such as

For me, it's Devonthink Pro (http://www.devontechnologies.com/solutions/writers.html) in particular and also Lightroom. Yes, there is progress on Dark Table, but there's too much useful software on OS X and despite Apple's faults its laptop hardware still leads the pack.

Yes, the lack of ports on the new MBP is annoying. If I had to buy a new MBP today I'd just get the last version—which is still fantastic—refurbished, and kick the hardware can down the road a couple years.

Obviously I'd avoid it for commercial editing, but I've had good success running Lightroom 5 under Wine.

If you're an iOS/Mac developer, there's no alternative.

If you want an alternative for graphics work (or other development), try Windows.

For other web development, in general, you'll be able to work well with Linux.

Keeping work on different machines quickly starts to become unmanageable, that's why MacOS still leads. It gives the best of most options on the best hardware.

P.S. - I tried ElementaryOS last month, for couple of hours and didn't find it an alternative in any way. It's UI is quite clunky (of course, since they are trying to copy Macs UX, but don't have the finesse). The eye candy can't make it a Mac alternative in any way; it's still Ubuntu under the hood, and less intuitive than Ubuntu.

The problem I'm finding with graphics work is that I'm more and more relying on scripted tasks to complete things efficiently or get around deficits in Adobe's software. I'd move to Windows, but I can't imagine giving up how easy a Unix-like environment makes things.

There are multiple projects that give you a Linux user land on windows. Including bash, csh, perl, python, gcc and full toolchain. Msys2 project provides that. There are also alternative terminals.

A smarter way is to use python for automation. There are lots of graphics libraries and bindings to do what ever you want.

You might have heard by now that Windows 10 now comes with a full Ubuntu-based Bash shell that can run Linux software. Guess that covers your use case well!

Best hardware, really?

Not only teraflops and ram size defines "best"; MBP's touchpad is the only touchpad on any laptop that I can work with without pluging in a mouse after a minute. Screen is good. General feeling of quality is just the best.

Yeah at this point I would need a replacement for OSX and for the touchpad to be able to go away from a Mac. I can live with their other issues for the benefits of their trackpads and an operating system backed by Unix

Curious if you've tried a Surface Book? I find the touchpad feel and gesture quality to be nearly indistinguishable from a Mac.

Thanks, I will check it out. Not sure I will be happy with Windows 10 in comparison to OSX but still worth trying out.

I just use the track-point on my thinkpad. It's preferable to its trackpad (which I actually have disabled in the BIOS).

IMO, the Apple unibody laptop design is still the best out there. And the (non-latest) keyboard and trackpad have no comparison in Windows laptops.

The touchpad is probably as close as possible as being just objectively better on Macs. But the keyboard? I don't even think "Mac keyboards are the best" is a plurality opinion among just Mac users, is it? There's obviously a large heaping of personal taste here, but the MBP I have at work is the worst keyboard I've ever used on a "real computer" (i.e., not some weird hybrid tablet thing or something). And of the Mac people I know or read online, it seems the keyboards of the last couple of years of laptops have been, at best, tolerable.

Suggest something else more superior?

best I've used (which isn't saying much)... but really depends on what you mean by best. Not necessarily the best performing specs on the market, but pretty good from off the shelf.

The problem I with linux is that there is no good laptop running linux well or anywhere near as good as windows or osx. If I could run osx on alternatives to the macbooks I would be happy best of all worlds.

I see this complaint often here, but I don't get it. Is some Linux driver not working? You can't use the mic, Wi-Fi etc? Linux just works fine on my machine, and also for a large user-base.

I have been watching elementary from the sidelines and I am wondering how deep is the keyboard integration in Pantheon?

I moved from OSX to Linux recently too and I am generally pretty happy with multi-monitor and pseudo-tiling support in gnome3. I can do most of my window movement and application switching with few shortcuts (it requires few gnome extensions). Such as -

1. switch application with shortcut rather than alt-tabbing (something like - Super-1 for Emacs, Super-2 for terminal etc). It requires a gnome extension.

2. Tile the Windows with shortcuts. Currently gnome3 has limited support but it mostly works out of box.

3. Launching or switching application with a global shortcut. Requires a gnome extension.

4. Move Window between monitors etc.

Such things usually requires at least 2 or 3 paid apps on OSX. Divvy, Sizeup etc.

Oh and 1Password works perfectly okay via Wine, including the browser extension. So, that is one thing you should checkoff your list if that is stopping you. :-)

The keyboard integration in Pantheon seems pretty comparable to GNOME.

I just finished importing my 1Password data into https://www.enpass.io looks like it might turn out to be a good option.

I use https://extensions.gnome.org/extension/413/dash-hotkeys/ thing for Unity like single shortcut Window switcher. It is absolute life saver. I used to use apptivate(http://www.apptivateapp.com/) on OSX for same thing. Is there a elementary alternative? A quick google search doesn't turn up anything.

Spectacle is a free alternative to Sizeup: https://www.spectacleapp.com

To the point (reality) of Arch's amazing docs; I fully agree with the author. I've never experienced a more comprehensive and up-to-date doc regarding a distro. For this reason, I exclusively use Arch for both desktop and laptop. It is a freeing/empowering experience installing Arch.

I've got a Dell Developer Edition arriving on Thursday and everything I've been reading about Arch has been seriously considering installing it almost immediately.

Agreed completely. I juggle between OSX and Debian, but Arch's docs are still way better when it comes to configuration and gotchas.

Another path you can take: build your own desktop and install a Hackintosh OS!

Here's my build (http://pcpartpicker.com/list/pYWQMp), which runs into some driver issues but can be fixed with Kext utility. This setup allows me to do CUDA programming + Deep Learning stuff natively in OSX, while having access to pretty Mac software. It's great, I highly recommend it!

I've done the same and it's a great way to go. If you stick with known components in known configurations, it's easy to get working. Relatively anyways.

except that Hackintosh not exactly legal :-)

Breaking a contract is not illegal, it's a matter of civil law. And depending on where you live, such EULAs might not even be enforceable.

IANAL, but I believe breaking the terms and conditions violates the CFAA [1]

[1] - https://en.wikipedia.org/wiki/Computer_Fraud_and_Abuse_Act

Has Apple ever prosecuted a violation of this terrible rule of theirs?

That was a company selling Hackintoshes. In the many years since, Hackintoshes have remained a thing and I'm unaware of any individuals that have faced criminal or civil penalties.

Until recently, a Hackintosh was a time-consuming way of producing a somewhat worse Mac. As Apple is starting to drive us away, I bet the phenomenon will grow, and then Apple's interest in squishing it will too. And the fact is, Apple could shut this phenomenon down in a matter of hours if they wanted to.

This level of risk is fun but not for the faint of heart.

> Until recently, a Hackintosh was a time-consuming way of producing a somewhat worse Mac.

Oh? What has changed?

> This level of risk is fun but not for the faint of heart.

Read: as soon as a new patch comes out for macOS you are either running around with known security vulnerabilities (as well as missing reliability fixes), or you're a guinea pig entirely unsure if it breaks anything and if so how much effort it is going to take to get the patch applied. Why? Mainly due to drivers.

Besides, good luck finding a well working laptop with good macOS support.

I gave up and bought a MBP 2015 instead. Very nice machine. Expensive, but nice.

For a workstation or MP replacement it'd make more sense. The MP hasn't been updated for 4 years and with physical access to the quick machine its easier to fix issues. You're also guaranteed not on the go, so you got all the tools you need at your disposal. However there is still a risk for loss of productivity and worst of all you can't plan it. Because you don't know when Apple does release their software updates.

I guess it still is what I said, it's just that the cost/benefit ratio lately is different than it was five years ago.

I don't think it'd be wise of them to shut down the Hackintosh community. The vast majority of Hackintosh refugees aren't going to be buying Macs, they're going to be wiping their macOS partitions and jumping ship to Windows or some random Linux distro instead. It'd shrink the number of people invested in the Apple ecosystem (including subscriptions like iCloud and Apple Music) and put a bad taste in the mouths of a lot of people with sway of family/friend and perhaps even corporate purchasing decisions, not to mention strongly casts Apple in a Big Corporate Bully sort of light. There's not a scenario in which they kill off Hackintoshing that's a net benefit for Apple.

Apple is a hardware company. The services you mention are small in terms of revenue compared to their profits in hardware. If the Hackintosh community is large enough that the services revenue or impact on the ecosystem is signigicant, Apple would rather have the revenues associated with the hardware as well.

The fact that Apple hasn't done this already is because it's insignificant, not because of some benelovence on Apple's part. They're not going to encourage unlicensed use of the OS. The OS is there to sell the hardware, not vice versa.

There's the potential to create a pretty powerful machine for the buck, but it's definitely fraught with challenge. Reminds me of building a decent desktop Linux machine in the late 90's/early 2000's.

not really, i was running osx 10.5, so almost 10 years ago out of the box, the only thing that i had to play with was sound.

there was only one rule and i believe the same i truth now, if you plan to run hackintosh u better watch what hardware you get. if you do that u can run hackintosh without problems.

This is shockingly similar to the gaming PC I helped my kid build last year. We didn't build it with a mackintosh in mind, but it's nice to know we could do it if we wanted.

Author mentioned separately Ubuntu add Gnome, but what about Ubuntu Gnome [1]? I switched from Mac OS X to Ubuntu Gnome after release of latest Apple's MacBook "shame" Pro. It took few weeks to find new dev tools, but today I can't complain. Linux is much more mature nowadays than it was ~10 years, ago when I switched to Mac. I'm working more with terminal now and not using Git GUI anymore, but as long as you are not XCode coder, everything is similar, for half of the price.

[1] http://ubuntugnome.org/

I am impressed by how perfectionist some people can be. All I want from a desktop is little icons for launching programs. One of those icons should launch a command shell. That's it.

I don't have the nerve to learn all the other features anyway...

Having to jump between myriad OS/platforms within any given day (windows for work, linux for work and play, windows for spouse's laptop, etc.), I have learned to "let it all go", and keep to minimal requirements...But I could never vocalize it as good as you just did!

> All I want from a desktop is little icons for launching programs. One of those icons should launch a command shell. That's it.


After the refresh of the Macbook Pro I decided to get a desktop replacement laptop.

Whether or not that is acceptable for your use cases depends. For me, I already have a Surface Pro 3 for ultra portable needs. Because of that, I found myself never using my Macbook Pro when I couldn't plug it in. And given how slowly cpus are gaining in performance these days, if plausible, it makes more sense to me to focus on performance over battery & weight.

Not even a mention of NixOS. May I ask why not?

Edit: I'm appreciating the feedback for "why not?" and am sending it around to people in the community. :)

I've been running NixOS on a casual home desktop for about a year now.

I'm in love with some of its big ideas, like per-project dependency files that mostly eliminate my need for VMs and container management tools, and being able to read my OS configuration in a single file.

On the other hand, most of my work these days ends up as a Dockerfile and Docker images anyways, and the benefits of Nix package management could be had with Nix alone (not NixOS).

So at the end of the day I'm running a slightly buggy KDE 5 desktop that I haven't invested the time in fixing. I have a cool package manager, but I'm using it with one global nix environment. Packages are not hard to find once I know what I'm looking for, but discovering those packages and their nix-specific names can be tricky at times.

That said I'm new to desktop Linux, and it's hard to fault NixOS for most of the (relative) difficulties I've encountered.

Hrmm... if you have a bit of time to describe your bugs, I'd really appreciate it if you filed a bug on the issue tracker (github.com/nixos/nixpkgs.)

Thank you! I'm honestly not sure which bugs should go with NixOS and which should go to some application or library that I can't figure out. A typical example: since installing a different video card, videos will play in Firefox but not Chrome.

I recently posted this in 3 tweets:

1. Switched my notebook from NixOS back to Debian. NixOS’s advantages are not actually advantages in my practical reality.

2. NixOS being such a niche distro makes it _such a pain_ to use random binaries from not-yet-packaged software, which I do often enough.

3. Also, the Nix packages I use are sometimes a bit broken. That also happens in Debian, but I don’t know enough Nix to fix stuff myself.

Beware: I’m a Debian Developer, so my view is obviously biased. That said, I think the trouble I had is representative for trouble other people might have with NixOS. In total, I used it for about half a year, I think.

(not the OP) Complicated, is my reason. I have a hell of a time making sense of the configuration syntax.

NixOS is one of those "this has to be the future" things for me, but a future i can't currently use, despite wanting it. I hope someday i can make the switch.

Also, Elementary is pretty.. and call me vein, but that is nice. Generally i want the OS to "just work" and pretty gives me the false, emotional impression that it will.

NixOS is what got me to switch back from Mac to Linux. Being able to copy someone else's config for my MacBookPro and have a pretty damn good, working system was incredible. It really opened my eyes.

Perhaps coming by #nixos on Freenode for an afternoon could get you over the configuration hurdle?

I remember I tried NixOS in a VM on a Thursday and was so smitten that I replaced OSX on Saturday.

Edit: I really appreciate your feedback on this!

To add a bit more detail:

It's not purely the syntax, but more difficulty finding API documentation to match "what i want to do". Eg, if i wanted to add a package, or if i wanted to add a custom package, what function would i use? (not a question directed at you). If i wanted to add a chroot, what would i use? What args are available on those functions? etcetc

The documentation was a massive frustration to an already confused person.

On top of that, it seemed every package/binary i wanted wasn't available in Nixpkgs, or was outdated in Nixpkgs - so i had to learn how to modify the binaries for pretty much everything i did. And, when you don't know what you're doing, this is a massive barrier to entry.

I'm not too savvy on Linux and runtime requirements of binaries, so finding the requirements of a binary or setting up chroots for binaries that i could not modify was very time consuming. I spent most of my time doing that, in fact.

The concept of NixOS represents time saved to me. Reproducible builds based on a idempotent config, awesome! But in reality, i had to figure out how to make everything i wanted idempotent, and it was just a massive barrier.

I'm super smitten, i think the documentation just needs a bit of work. I would love to run it on my home server and also Nixpkgs on my Mac.

I installed Ubuntu + GNOME on my Mac a couple of years ago as a toy but a have slowly been migrating to it as my main OS.

For what I use it for (light web dev) it is the same or better than OS X.

The only thing stopping me from throwing out OS X completely are the Adobe apps (InDesign in particular) but even with that I have switched to doing most of 90% of my work on paper or in a text file then only complete layouts in OS X.

Reads and feels like a sponsored post trying to get the attention of people who are using OSX, Fedora and Arch into elementary OS.

It presents a huge list of OSes but then it just says "After evaluating each I was left with a top 3." Without providing any reason as to why.

To top it there is no QubesOS and no NixOS on the list. This in 2017.

I think it's just incomplete writing (and it's the guy's blog, so no big deal). Author also doesn't elaborate on why ElementaryOS based on FreeBSD would be ideal, though FreeBSD is certainly rad.

The author does note that: > This is the first in a series...

So, perhaps future posts will provide more details, etc.

<rant>People worry too much about what they use to host text editors and terminal windows...</rant>

Slightly offtopic; I worry about Window managers... Too much, I admit but it's such a difference in productivity for me. Is there a good i3/ratpoison alternative for Mac OS X or Windows? I think I have tried all that came up with Google and they are far less efficient than both of the above.

I use Amathyst on Mac, having got used to AwesomeWM and then needing to switch. I believe its (unfamiliar to me) key bindings are based on i3.


Mentioned elsewhere, but KWM may be a little more to your liking and focus follows mouse: https://github.com/koekeishiya/kwm

Amethyst has an experimental focus follows mouse. Does KWM handle modal dialogs a little better than Amethyst in that mode?

(I will also say that macOS's menu bar app buttons were not designed with focus follows mouse in mind!)

Thanks. I do not know that one. Installing now.

Sure, except that OSX's iterm2+Karabiner is so much better than any terminal on Linux. Awesome full-screen switching (⌘-Enter), easy shortcuts to create subwindows, natural clipboard support, great keyboard compatibility with Emacs (after futzing with keyboard settings and Karabiner mappings). On Ubuntu, all of these have been lacking. Hell, I can't even use the terminal for a single session without accidentally triggering the App Launcher several times.

If you like iTerm2 you might want to try a tiling window manager like dwm.

> Awesome full-screen switching (⌘-Enter), easy shortcuts to create subwindows, natural clipboard support, great keyboard compatibility with Emacs (after futzing with keyboard settings and Karabiner mappings).

Except for "natural clipboard support" (dunno what you mean) and "Emacs" (I am a vim user, so I set up vim shortcuts) I have everything you said in my i3 setup, however for every application instead only for terminal.

> "natural clipboard support" (dunno what you mean)

I'd assume the author means the same shortcuts as every other app, which would be Ctrl-C/V on Linux. Obviously that wouldn't work in the terminal emulator, but I don't see why you can't remap it to Meta-C/V (as MacOS uses) for that.

You could even remap it globally: http://askubuntu.com/questions/102846/remapping-keyboard-sho...

Terminology, the Enlightenment terminal is better than iterm2+Karabiner imo especially when you consider Karabiner doesn't properly work on Sierra.

Karabiner Elements + khd https://github.com/koekeishiya/khd replaced Karabiner for me on Sierra.

> Hell, I can't even use the terminal for a single session without accidentally triggering the App Launcher several times.

Pretty sure that has to do with you being used to different keyboard shortcuts, not with any inherent properties of the terminal app. I'm currently experiencing this the other way around (working on OS X being used to Ubuntu), and struggling with it as well.

I tried to disable it altogether, but couldn't.

I have to absolutely agree on iterm2, I'd love to have the same on Linux... there are a few okay ones, none I've tried as good. On windows, I like ConEmu okay, still not as good, but better than default.

Honest question. I spend my development time switching between OS X, Linux and Windows and I've been using iterm2 for years. Yet I have no idea why people claim that it is so much better than anything else out there. If I where to completely give up on OS X for Linux, iterm2 wouldn't even make the list of things I'd even consider missing. What unique killer features am I not using?

What's your editor? For me it's emacs (w/o X) so I"m inside iterm2 for the entirety of my Linux work.

clean, navigable UI is probably at the top... split and tab views is another huge one for me. I usually have my last desktop with iterm, and 3 windows open... one is running my project with a watcher, and the other two for various tasks.

The next screen is my editor, next browser, finally email/comms. ConEmu is OK on windows, and I've tried a few different linux terms, but not is as easy/nice to use by a mile.

I really like st, from the suckless guys. It does one thing — terminal emulation — and does it very well. For multiplexing there's always tmux or screen or whatever (I like tmux). st just runs, never crashes and is beautiful to boot.

For the feature set I'm using, iTerm2 and Konsole (KDE terminal app) are on par.

I may give Konsole a shot, though I don't think I'm running any Qt apps, so may have a lot of libraries to download.

Hear hear!!

"I’ve also run various Linux distributions and BSDs since around 2000, so am quite familiar with them"

Therefor i consider, it is not even a switch just more dedicated usage. Clickbait blogpost, if you ask me.

Honestly, if Linux's font rendering looked as good as OS X, I would have already switched. I know it might sound arbitrary, but aesthetics matter to me, and if I'm going to stare at it for 12 hours a day it should look nice. :)

I spend most of the time in terminals and text editors and, quite frankly, the only things favoring the Mac are the high-dpi built-in screen and the touchpad gestures. The only thing favoring Linux is the select-middle-click thing. Everything else is more or less the same.

Exactly. If you do a lot of work over terminals and ssh anyway, does it really matter?

Most likely (hopefully, if you have a big powerful workstation) you use at least some big fat desktop application such as XCode, Visual Studio, AutoCad, Photoshop, Chrome, Mathematica, Office, ...

Just pick an operating system that works well with your hardware and your big fat desktop applications. All that terminal stuff will likely run anyway.

His only whines are about hardware that is too thin/light and does not have legacy ports and OS that won't work on some junk and don't let you publish hacks in some rarely visited moderated store (just like windows, or linux)

And instead of ordering dirty cheap hackintosh with up to 4 CPU Xeons with all memory he can get and compatible wifi, that will be no thin and no light and he can run familiar terminal window to remote build his diamond code while listening to sound of coolers,

He starting to search OS with better GUI than OSX (Elementary it is) and dreaming about hardware you can run FreeBSD (like PS/2 mouse and glorious VESA 2.0 12801024?)

I expect next article will be a tour to the wonderful world of 15" 1366768 Celeron laptops that let you upgrade memory (up to 8Gb!), spacious replaceable 4200 hard drive and have USB 2.0 ports and VGA in addition to HDMI 1.4. People will know in detail how good terminal window run there on FreeBSD with Elementary OS theme (without 2D acceleration of course).

He makes alot of sense, that mate.

Trying to do exactly the same thing - I still have a maxed out rMBP 2013 that works great, so setting up alternatives now before I'm forced to.

The Intel Skull Canyon NUC is what I'm using, with Elementary running on Virtualbox in Windows 10 (waiting for the Samsung 960 EVO to sell globally before setting up a native install).

The one massive problem for me that keeps me going back to the laptop is that the Mac absolutely nailed keyboard layout by separating the command and control keys. And no other OS is currently able to do so.

I use the basic emacs shortcuts for navigation in all the apps that support them (crtl a,e,n,p), and the command key to issue commands like close tab, save, new tab etc.

This is absolutely impossible to replicate on any other OS (AFAIK). I can map the command key to the control key, but that's about it - it just becomes a new way to hit control. Being able to consistently map and access the command key (as SUPER) simply can't be done.

  > The one massive problem for me that keeps me going back to the laptop
  > is that the Mac absolutely nailed keyboard layout by separating
  > the command and control keys.
The saddest thing is that *nix systems generally did likewise, before the this-is-finally-the-year-of-desktop-Linux crowd arrived to insist on imitating every Windows mistake. No one else was boneheaded enough to screw up the Control key's function of generating control characters.

Traditional X11 programs have (had) fully configurable key bindings in their app-defaults.

Today, KDE (and other Qt) programs at least allow individually changing shortcuts to use Super. Qt has an internal switch to use Super everywhere, but it's hard-coded to the Mac platform. Perhaps eventually there will be enough pressure from OS X refugees to make it a user configurable setting.

Yes I suspect the keyboard shortcuts will bother me too. One of the things I like about Elementary is that there are a bunch of things bound to Command out of the box. They also refer to it as ⌘, which has a nice familiarity about it.

The underlying Ubuntu still refers to it as the Super key, but elementary uses the clover to symbolise it when it can. Still can't get to Mac like setups, though - apparently in Linux it's the applications that intercept the Super key, so it's never going to be possible to get a consistent experience.

Window managers definitely get a first crack at keyboard input. For example, I have a bunch of super-related keyboard combos set in i3wm that always go to it. I doubt that's the problem you're referring to. More likely it's that the window manager has no consistent means to make any given window/app do anything in particular, like copy or paste. The app decides its own key combos for those. There's no universal way to do it globally short of using nothing but apps that are specifically intended to work with gnome or kde or another uberenvironment's configuration system. Basically, you could bind super-c at the WM level, but you couldn't make it always copy.

Yeah, I think you're exactly right... there's a feature request here that goes through this:


GTK has always supported Emacs bindings, configurable with a setting: http://tiborsimko.org/emacs-bindings-in-gtk-apps.html

I use these settings and find them quite handy.

Of course, that doesn't give you new-tab/close-tab/save on M-t/w/s, for that you have to install some Firefox addon etc. – not quite OS-wide consistency :(

I'd Love to see someone take on GNUStep are run with it. The constant reinvention of the wheel with FOSS desktops and Window Managers is mind boggling. Too much 'not invented here' syndrome? Sadly the task is way beyond my capabilities. Still one of the best ever... Of course, YMMV!

Yeah it's a shame http://etoileos.com/ didn't get more momentum.

Where's the commentary on FreeBSD? It certainly seems like the right idea (to replace OS X), but I want to know their experience.

I've used FreeBSD as a desktop OS, briefly. I've also used a number of Linux distributions as desktop OSes since the late 1990s.

The bottom line is that Linux tends to have better hardware support, especially for laptop hardware and power management.

When you run into problems, you'll usually have a much easier time finding vendor support or online community help for a Linux distribution than for FreeBSD.

Under the hood, FreeBSD is a lot simpler than Linux, and a lot of people like it for that reason. But if you want a generic Gnome/KDE/tiling WM/etc. desktop experience, and you don't need any BSD-specific features, I think Linux is the way to go. After all, we are talking about a replacement for MacOS here, which is pretty well integrated with the hardware and does not require a lot of tinkering to get working.

> The bottom line is that Linux tends to have better hardware support, especially for laptop hardware and power management.

I've been playing around with various BSDs over the past couple of years, and I really want to like any of them enough to keep installed, but this is exactly the issue I've run into with freebsd and it's derivatives. On both my last laptop and the current one, I can get everything working to a fairly reasonable state, but there are minor but annoying hardware issues I just don't have to deal with in Linux.

In my most recent attempt (installing TrueOS on my spare SSD), some apps occasionally crash when I use the Intel video driver, so I'm forced to use scfb, which is a bit slower and doesn't render fonts as nicely. Additionally, the wifi tends to be a bit slower; I average around 4-5 MB (not Mb) down on Linux, but top out around 2 MB on TrueOS. I also have to use Firefox instead of Chromium on FreeBSD and its derivatives, as there always seem to be some bugs in the FreeBSD port; right now, it renders some bizarrely-shaped section of the window in a deep shade of yellow covering part of the URL bar and the top of the page, and signing in to Google to sync my extensions and history hasn't worked for like 10 major versions of Chromium.

I really like DragonflyBSD; it works a bit better for me out of the box than FreeBSD (I don't need to configure to not have the fan running at full blast all the time, and I've strangely had fewer issues with Chromium despite it using the same ports tree as FreeBSD with some custom patches), but I've had issues running any display manager other than Slim, and even that hasn't worked that well for me, as I've never been able to get the numlock and auto-login settings working (yes, I know, autologin is "insecure", but I always have FDE on my machines, so if someone can get past that, I don't think the login screen will stop them). Unfortunately I haven't been able to try it out lately; on my current laptop, BSDs weirdly seem to think that my screen resolution is 1024x768, and the only way I've found to fix that is by setting the GOP in EFI, which is not an option for DragonflyBSD currently. I've spent more time than I'm willing to admit trying to follow the manual EFI installation inductions I found on the DragonflyBSD mailing list; I think I got it to boot once, but apparently the snapshot I was using panicked when trying to load the specific wifi driver during startup (although I found out later it could load it fine after it was fully booted), and I've never gotten it to boot since, so I'm not convinced I wasn't mildly hallucinating or something. Every now and then the Dragonfly Digest will have some post talking about some new small step towards EFI support though, so I'm optimistic that someday soon I'll be able to boot it on my current laptop and discover a whole new set of reasons why I can't use it.

OpenBSD, on the other hand, works pretty great for me out of the box in terms of the GUI and hardware, but I'm not fond of the packaging system; I tend to like to have fairly recent versions of apps, so updates come a bit slowly compared to what I'm used to. Even worse, pkg_add is kind of horrifying to me compared to what you get on FreeBSD-based systems; for reasons I can't comprehend, it seems to query for updates individually for each package you have installed rather than first just getting a list of updated packages and then downloading the updates for the packages (if there are any). I'm unfortunately too spoiled to wait several minutes just to find out that there aren't actually any updates for my system.

I've never been able to get far into setting up NetBSD. A couple of years ago I got it installed but couldn't get Xorg to start up, and I've been unable to get the installer to boot on the most recent release; it prompts me to select the boot device from a number of options, and I've tried all of them, and none of them work. The issue seems to be fixed in the more recent snapshots, but I haven't been able to figure out how to install with FDE (I found the option to encrypt the disk, but it seems to be independent from the installation itself, and neither encrypting the disk before or after the installation seems to result in a bootable encrypted system), and I'm too stubborn to install it without.

I tried NetBSD on my Acer Aspire One netbook from like six years ago. Most things worked out of the box. One thing that did not was the keyboard did not wake after suspend, which was manual (typing apm -z). I decided that was a deal-breaker and switched to Ubuntu, which worked perfectly out of the box, including lid-shut suspend.

NetBSD also gave me a bizarre halt-the-world problem on installation the first few times ("Old BPB too big") until I skipped the first sector.

I figure this laptop is old enough if it isn't supported by now it won't ever be.

I use FreeBSD as a desktop/laptop/workstation since years and it works great for me. Total control over the system You work on is priceless.

Everything on my hardware works (ThinkPad W530). The WWAN(3g) connection, Wifi, SD Card Reader, Power Management, multi monitor setup, external disk in the Modular Bay ...

Also having ZFS and ZFS Boot Environments on a system is great for updates/changes. You are literally bulletproof.

Some screens: http://vermaden.deviantart.com/art/CorporateBSD-FreeBSD-at-W... http://vermaden.deviantart.com/art/FreeBSD-10-3-Openbox-6356...

Regards, vermaden

How is a non-tangible filesystem making you "literally" bulletproof?

The BSDs are great for very specific tasks, but I find more general use users will prefer Linux with GNU userland. It has wider hardware support and a larger community for resources such as documentation and troubleshooting.

Please read about ZFS Boot Environments, no matter if from Oracle documentation or Illumos one, You will get the idea what it provides. There is beadm command same as in Solaris/Illumos and You can select BE at boot in the FreeBSD bootloader.

In short the idea is that You create snapshot (BE) of the current system state (filesystems), then make changes/upgrades. If something went wrong, then You reboot to that snapshot (BE) like nothing had happened.

About GNU userland, I also use SOME GNU tools like 'gls' (GNU ls) or 'gawk' (GNU awk). They are provided by the FreeBSD sysutils/coreutils package/port, I also use sysutils/moreutils like 'vipe' or 'vidir'.

The documentation part on FreeBSD is much better then on Linux, check the Handbook, or Wiki, or FAQ, or plain old MAN PAGES with useful examples. I sometimes read/use ARCH Linux wiki or Gentoo WIKI but for most of the time FreeBSD documentation is second to none. Even with a lot less people then Linux has.

BTW, while there are a lot more Linux people out there then BSD people, remember that Linux people are fragmented over about thousand Linux distributions while there are only several BSD distributions.

I do not want to sound 'bad' here but I also found many times that 'BSD people' known more about Linux then 'Linux people' if You know that I mean.

Regards, vermaden

... and yet, despite that, the doco for the BSDs is often better quality than the Linux doco. It hasn't actually turned out in practice that the larger community results in the better doco.

New post about GNOME on FreeBSD is up: http://bitcannon.net/post/gnome3-on-freebsd/

It's coming in a follow up post. I should publish it in the next few days.

Since you're looking for a desktop OS, you should test PC-BSD instead of pure FreeBSD.

I'm kind of in the same boat, and I'm slowly, gradually, replacing my Macs with both Windows and Linux devices. As somebody with zero investment in earlier Windows versions, I quite loved Windows 8, and found Windows 10 to be a step back from that, but still a good alternative to the Mac. There are also various different Linux systems that make great desktop operating systems.

Reading the linked article, I have some observations, particularly about the requirements Wesley lists:

> One tool for each job.

This strikes me as a somewhat peculiar requirement. The Mac certainly doesn't work that way, particularly since OS X, and as long as the different tools available aren't hurting you, their availability won't be much of a problem.

> A sensible/minimal selection of pre-installed applications.

To me, a more useful requirement would be "no bloatware". Linux distros in particular often come with a ton of pre-installed applications, but they are generally good applications, and having them does not cause any harm.

If you buy a Windows computer, on the other hand, you'll likely find its installed Windows version to be borderline unusable due to all of the preinstalled manure.

> Simple, easy to use/understand interface

As somebody who has used Macs since the early 90s, I'd argue that ever since Mac OS X, the Mac hasn't really offered that. It's still ahead of most Windows versions (excluding perhaps Windows 8, but clearly including Windows 10, which sadly has reintroduced much of the clutter from earlier Windows versions), but many Linux distros are now much cleaner and simpler than OS X (both Elementary and Pixel come to mind as examples of this).

So to some degrees, Wesley is requiring these operating systems to offer things that the Mac hasn't truly offered since the late 90s. This is not entirely unfair; as a Mac user, he's used to the Mac's oddities and flaws, and so it is perhaps useful to require the system he's switching to to be better than Mac OS in some respects.

Still, I think it's fair to point out that the Mac itself probably couldn't easily fulfill all of these requirements.

If a Macbook sshing into your work computer is good enough, why isn't a Windows laptop sshing into your work computer?

FWIW, whenever I am forced to use Windows I want to hurl my computer through a window after using it for only a few minutes. Doing anything takes click after click after click: it's way too much work. Manual window management is horrible: it's way too much work. Trying to figure out how to make anything work is a chore, as is evaluating which websites are giving correct advice, which are outdated and which are trying to infect me with malware: it's way too much work.

Granted, I feel the exact same way about macOS (with slightly less concern about malware, to be sure).

Ideally I'd only need a single computer and there are goals like being about view/edit the source code of my OS/apps that Windows doesn't tick. Still as mentioned in other comments I'm getting a Windows 2-in-1 later in the year so can try it then.

Well a built-in x Server for connecting to your development systems would be nice - which both OSX and Windows 10 Lack.

And I do mean Server as X Windows switches the common usage of client and sever.

XQuartz works just fine

ConEmu is nice in my experience, but requires some tweeking. Some people I know use MobaXterm. The main drawback is windows itself, with its disruptive updates lately.

I'm full-time OSX user/developer, but if Rails is really your sticking point, shouldn't the linux subsystem make Win10 at least viable for a trial? Or, frankly, anything that can run VMWare or Virtualbox?

I switched to Windows hoping to use the WSL - looks great for the most part, but there are still lots of blocking bugs. Ruby and Git install, but not OpenSSL, which makes Rails development difficult. Lots of niggles here and there, basically.

Should be great when it comes out of beta, though - a good terminal and we'll be all set.

If you haven't tried ConEmu [0], it's pretty awesome. I use it with the Git Bash that comes with the full windows git installer and it Just Works for most of my terminal needs. Haven't tried it with WSL but it can most likely be rigged up.

[0] https://conemu.github.io/

I use conemu with WSL... it's the best one available for Windows, but it still pales in comparison to the default macOS terminal, and even the one that ships with Elementary. The customziation, tabs, layout, fonts all work fine but seem a bit bolted on.

I feel the need to point out that what "ships" with elementaryOS is basically meaningless. You can install what you want, easily, and the default configuration is a recommendation. Welcome to Linux-land. https://www.distrowatch.com/

Oh, absolutely, but I'm actually saying the terminal that ships with Elementary is superb. The macOS stock terminal is also really good. But the Windows stock terminal is downright horrible, Powershell is slightly better, but not Unixy, and ConEmu is so-so, but better than the other Windows options.

isn't it the same on any OS? :-/

you can install what you want on macOS and you can install what you want on Windows. Both have custom terminal apps

No, it isn't. Debian packages, Ubuntu packages, etc. are tested together as a group and you can expect that they integrate properly. The same cannot be said for third-party OSX .apps. They're more like adding another repo to your sources.list. Hell, OSX won't even let you uninstall Terminal.app.

I'm using https://github.com/mintty/wsltty as a terminal for WSL, because it feels the closest to a Linux terminal for me. Give it a go.

If Rails is his sticking point, then there's no point in paying for something when you can have it for free.

Well there's no indication that he's against paying, just that he looked for and failed to find a viable OSX alternative.

It's not listed in his requirements and Win10 may satisfy him.

There are lots of free things in life that have an inferior free alternative or only free alternatives and this may be one of them.

Well, it was you who said he should pay for Windows if Rails was his sticking point.

And I said you don't need to pay for anything if you want to do Rails programming. In fact, here, the "inferior alternative" for this task may be the proprietary one.

Another thing would be using his computer for gaming. In that case, I wouldn't object, of course.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact