In order to maintain a good workflow for everyone, what would you have to watch out for, and what actions might you take to mitigate any negative effects?
For example: different line endings, editors/IDEs available, etc.
Edit: I should have been more up-front about this post. I'm doing some research for a short presentation on OS agnostic development teams, and what challenges a team might face both transitioning to OS agnosticism and maintaining it. I haven't been able to find any blogs or stories of people who have been through this before (though my google-fu isn't top notch). If you know of any links to a relevant blog post of some sort that would be greatly appreciated as well!
Are line endings still an issue when you share code via github or a similar version control system? I remember first experiencing this back when I began using Linux in 2008-ish and had to move code around via USB, but haven't used windows in a while.
In any case, there is a utility on Linux called dos2unix which converts line endings between the two if you have to handle line endings manually.
Dave Lynch
Alex Flasch
Web Developer, Javascript Fanatic, Vue.js Enthusiast
50% of the work I do is Linux work.
My primary system - my laptop runs Linux.
When I am employed rather than consulting or have to work on site, I often have to work in the windows world. I run Windows VM's on my linux system, or use Windows desktops because I am required to. Most of my work is still done from Linux. It is always my responsibility to figure out how to integrate myself into the windows culture, and when anything goes wrong - fingers are always pointed at me.
Each of us is different. I can change from one programming language to another in a few minutes. I can learn a new language in a day. Changing text editors takes me years. Moving from windows to Linux took me about 3 months. It was hard, but I have never looked back. Using a windows machine today leaves me feeling like I have all thumbs. I know what I can make it do. I know the capabilities of windows quite well, but finding where the network configuration applet is, or other tasks I can do easily in Linux take many times longer under windows.
Some parts of that are because Linux is mostly better. But mostly it is just because I know what I am doing.
I think that businesses that support a broad infrastructure are wise. I think it is a mistake to lock yourself in to one OS. I think that just like porting code to a different OS improved the code, the more diverse an infrastructure is the more robust it is.