Microsoft Windows is prohibited at Gitlab(about.gitlab.com) |
Microsoft Windows is prohibited at Gitlab(about.gitlab.com) |
Meanwhile Github works just great for us.
It's just their workforce, where they don't want to see anyone working with windows.
A lot of Serious Business happens on top of Microsoft technology right now, and the companies responsible for tending to solutions in this space are made extraordinarily uncomfortable by this kind of aura being given off by vendors like Gitlab.
Can Gitlab really afford to alienate double-digit % of its TAM in favor of this ideological position? It seems like they are already having financial difficulties based upon other recent articles.
Edit: oh, and testing of those gitlab-ci functionalities can easily be done in a VM.
If they aren't running Windows, I really doubt their skillset to give any kind of meaningful support.
Consider linux dominance on end-users devices through android and embedded systems like smart tv's. There are more instances of linux running and being used right now by end-users than windows. UNIX legacy and a long maturation process on HPC and servers probably has to do with how linux systems evolved to be so secure today compared to windows; also because of "bad-habits" windows historically brings.
It may sound cheesy and although I'd like to see linux more used on the desktop, I'm pretty happy with the current situation.
Interestingly, my employer too uses GitLab, and we too prefer Linux among employees ... so i think targeting is on point
With Office products being increasingly accessible via the web browser, I think corporations should really start thinking about weaning themselves off Windows.
HN: While I agree that eating a soup with a fork is bad, I think the employees should be able to try.
Not that I need 64g, that was more because I found a decent deal on one that happened to be 64g. But I sure don’t complain about it :)
Blasphemy!! I hope you got out of the way of the lightning bolt that surely came to strike you down for such preposterous speach! That's like saying "I don't need that 4TB SSD, 512GB is plenty"
If nothing else - what's not used is not tested. And if you expect any real population of users to be using Windows machines with your products, you should have developers/PMs/QA/support interacting with your products using Windows machines.
I see this as: We're saving a bit of money and making ITs life easier, and in exchange users will get a worse product.
Realistically - that's a bad trade. It is almost never the right decision to prioritize IT quality of life over basically any other business need.
I'll give you a point on VMs but it's cumbersome. There's a big difference between rolling to another machine or asking someone in the department who uses that machine every day and waiting for a VM to finish booting or using a service like Browserstack (and both cost $$ anyway).
Screen readers are not consistent across platforms, and things that work on Windows sometimes don't work on other platforms, and vice versa.
So if, for example, you are a UX dev and need to test your CSS on Edge, they have a process that allows you to do that.
And it's not "just a bit of money", Microsoft's enterprise product licensing is truly onerous. It's almost a career unto itself just to make sense of it, and it requires a non-trivial amount of infrastructure to support.
Work computer != target machine
For about 20 years, I've not developed anything at work that runs on the work computer that is used for doing the development, documention, e-mailing and whatnot.
The browser is wired into the OS in real ways, and they matter. Everything from "How does the os manage passwords" or "how are system notifications presented" or "How much screen real estate do I have have on a given window size (scrollbars...)" to subtle differences in how the network stack behaves, or how windows are rendered.
Hell, I can list about 20 differences just off the top of my head - and a damn good part of that is because I've been forced to pay attention to each of those platforms. Which clearly you have not...
I read your comment as "I only use a mac, and I don't understand".
For example, we ran into a difference between Chrome on Linux vs Chrome on macOS where it turns out that on macOS, if you right-click on a link (to open a context menu) it selects the text of the link, while on Linux it does no such thing. Initially we'd tested on only one platform because we assumed they'd behave the same, and this difference resulted in buggy behavior on the untested platform.
In fact, if you paste text into GitLab's "Web IDE" in a windows browser, the results are (or at least used to be? We stopped using it because of that) horrible to the max. Of course with the added nuance that copy-pasting a word vs. a paragraph vs. an entire file produced vastly different results, too. That one was fun to figure out.
All company laptops must have windows, anything else needs to be vetted by the IT admin.
Now that the Edge browser works fine on Linux, there's really no need for all these licenses, and someone needs to start to break the unhealthy dependency every company has on Active Directory.
This sounds to refer explicitly to using interim personal laptops until departmental hardware is issued formally (which, as I understood it, may then run windows).
Did I misread?
instead, invest in:
- real automated testing (to the extent technically and economically feasible). One hack is to get customers and partners to fund it, then leverage outsourcing.
- feedback from users - make it easy, streamline responses, setup escalation. Understand that you can't nail down everything and quickly triage issues. Scale the team so at least you can do the triage.
I've been down the whole "we'll just test it in a vm" path, and it works... if by works you mean you get a happy path test every once in a while, and devs make sure the automated tests pass.
It doesn't instill the same level of care and attention that daily use gives. Dog-fooding is not a joke. It's genuinely hard to make a decent UI for a platform if you're not using that UI often, and in real situations.
I've literally gone as far as making devs switch device personas over time on my mobile teams. They get an assigned device from our test pool for the sprint from a list like
- High end stock android device with large screen
- High end stock android device with small screen
- High end Samsung ROM device with large screen
- High end Samsung ROM device with small screen
- Mid tier stock android device with large screen
- Mid tier stock android device with small screen
- Mid tier Samsung ROM device with large screen
etc... down to the devices no dev wants at all, like
- Amazon Kindle Fire default
- Amazon Kindle Fire kids
and they do all their dev/testing/use on it.
It works fucking wonders in suddenly making them care about things that were previously just "meh" problems. Two weeks stewing in their own problems on a device they were ignoring is one hell of an incentive.
Making IT's life _vastly harder_ to allow employees to maybe use Windows and see a solution the testing team didn't see is not a good trade-off.
That's not even going into how, exactly, Windows is going to make anyone's life better than using a Mac. Realistically, they're at least at parity.
The trade-off here is "make every IT support and supply line more filled with friction" to gain "people can use Windows if they'd really prefer, instead of Mac or Linux". That's a terrible trade-off, and GitLab is making good decisions.
In my company I am dealing with buying laptops for new hires - there is no way I am buying laptop with Windows Home edition.
That is problem with explaining people that they should buy laptop with Windows Professional. Whatever the cost is - company is paying. New hires are shy to expense company THAT is the problem.
So I think problem is that people try to buy cheapest laptop they can to "be cheap".
If my company would be on scale of GitLab I probably would not be able to control that but I am specifically buying laptops via my manager - and there is no way we would buy Windows Home laptop.
They probably have some Windows machines at Gitlab for verifying the experience of Gitlab users/customers who use Windows.
I imagine a developer doing that would have a dedicated Windows machine, or possibly a guest VM, for that activity.
How many engineers have you worked with that ONLY worked in Windows, and did it better than anyone else...?
It's just a filter.
Git for windows is also notoriously different when it comes to edge cases, so in Gitlabs place I‘d be absolutely happy to have developers that use that OS as a daily driver.
What are they going to test on Windows? It's a web platform that runs on a Linux server... And Rails is kinda annoying to develop on using Windows, you definitely won't put it on a Windows server, what's the point?
Confirm the Windows runners work as expected?
Due to Microsoft Windows' dominance in desktop operating systems, Windows is the platform most targetted by spyware, viruses, and ransomware.
macOS is preinstalled on Apple computers and Linux is available free of charge. To approve the use of Windows, GitLab would have to purchase Windows Professional licenses, as Windows Home Edition does not satisfy GitLab's security guidelines.
As many purchases of laptops have occurred with employees making the purchases and then being reimbursed by GitLab, a remote employee would typically be making a purchase of a laptop pre-loaded with Windows Home Edition.
Windows Home Edition is notoriously hard to secure.
edit: after thinking about this for a bit, it occurs to me that their main competitor is github and that maybe they just aren't very excited to use MSFT products?This is poor reasoning and a misunderstanding of how security works. Any org should be happy with any OS, as long as sufficient security controls for it exist. Anyone who oversees Windows estates, or works in desktop security, can tell you that they exist and are extensive, and are effective.
I suspect this is a policy that's been pushed out by a C-level who simply hates Windows but is being justified with >15 year old reasonings.
> macOS is preinstalled on Apple computers and Linux is available free of charge. To approve the use of Windows, GitLab would have to purchase Windows Professional licenses, as Windows Home Edition does not satisfy GitLab's security guidelines.
More tenuous reasoning - macOS is not 'free'. By their logic they should _only_ be allowing Linux. But I think that just tells us it isn't driven by logic.
I have no trouble with companies mandating one OS or the other. But when the justification for the policy is so bad it looks petty and ideological as opposed to the result of a level-headed cost/benefit analysis.
"Mac or linux, but not windows" is a somewhat common policy, or certainly used to be, and it's never about the cost _of the licenses_ (except for tiny companies, perhaps).
The lost art of (fleet-)administration.
Where were the cost concerns on buying windows licenses?
They are in favour of Linux for it being free, implying that they do not want to pay for Windows.
I really wonder what it's like inside Gitlab. The product ticks all the boxes you'd want it to, but the user experience just resonates with sadness and misery.
"GitLab plans to automatically delete projects if they've been inactive for a year and are owned by users of its free tier."
Which I hadn't heard. That's.... something.
A large and popular software vendor we have used for 7 years has approached us recently and wants to charge us a variable amount depending how integral their product is to our business.
Now management understands the threat, and we are shifting resources to convert things to FOSS, and build up the software community more.
In an office where you have on-site IT staff, and a local corporate LAN, you can require every windows machine to be part of AD, have group security policies pushed out, and generally have tools available for central management.
But with gitlab, everyone is working in their own networks around the world. That sounds like a very hard environment in which to globally apply the types of security policies that are needed to keep Windows secure.
"To provide proof of Full Disk Encryption, please do the following depending on the system you are running..."
Having your users send you a screenshot to verify device compliance is ridiculous.
VPN? You know like dial in into your lan?...the original use-case for vpn's?
Nah, GitLab just hates Microsoft.
They just set it up, couriered it to my house, gave me my password and off I went.
It does all its GPO update, carbon black policies etc. over the VPN exactly the same as if I was in the office.
Worst case scenario gitlab would just need to courier equipment globally via a decent carrier like DHL, but probably a drop in the ocean compared to other staff costs.
> Due to Microsoft Windows' dominance in desktop operating systems, Windows is the platform most targetted by spyware, viruses, and ransomware.
Being targeted less frequently != more secure. MacOS and Safari have had plenty of critical vulnerabilities in recent years.
> macOS is preinstalled on Apple computers and Linux is available free of charge. To approve the use of Windows, GitLab would have to purchase Windows Professional licenses, as Windows Home Edition does not satisfy GitLab's security guidelines. > As many purchases of laptops have occurred with employees making the purchases and then being reimbursed by GitLab, a remote employee would typically be making a purchase of a laptop pre-loaded with Windows Home Edition.
Come on. A PC with Windows Pro is going to be way cheaper than a comparable mac. This is just disengenuous.
> Windows Home Edition is notoriously hard to secure.
Their last point was literally about how they would force users to get Pro, why does this matter?
I'd issue a counterpoint: there is far more expertise out there in securing fleets of Windows machines, and I'll guess most corporate Windows systems are more hardened to threats than the typical developer's macbook.
The real reason to use Macs is that you get a functional unix-like environment where you don't have to constantly jump through hoops in order to work with Rails. They don't have to fabricate security reasons.
It's not uncommon at all, to be honest. I've done IT at startups where we said "Mac Only". Why? Because supporting multiple platforms is a lot of work. You need to do everything twice. All the software security done twice (and differently for each). Rolling out something new to the employee base? Two different sets of instructions. Setting up conference rooms with power bricks and video adapters? Had to be done twice (though this was a while ago, that is less of an issue now).
For small teams, it's just a workload that may not be doable. It's not like someone in IT says "I hate Windows, we're going to go Apple only", but often times a "Well, we're 90% Mac already, lets stick to just that". And yes, even with the "Apple Tax" its still overall cheaper to buy/support just macs.
https://www.dell.com/en-us/work/shop/laptops/new-15-5560-wor...
Also supports ECC, nice!
I strongly dislike numeric keypads in general, and especially on a laptop. I want to be centered on the display, not shoved to the side. I only rarely use the numeric keypad.
Windows Home Edition is notoriously hard to secure.
This is a totally valid point. Anyone who has worked for big companies know how companies secure systems using security policies which are not available on home edition and tough to setup on Profesional license bought by user.
If a user really wants to do something on windows then I am sure they can run it in VirtualBox or VMware on their system.
This is bullshit. In Windows 10 Home the Group Policy Editor is removed, and domain-join is not supported, however bulk security changes (i.e. Security Policies) can still be implemented directly to the registry with scripting.
This is more from the perspective of a company to be able to control the security policies of the system and remotely manage it.
In an organization with thousands of people, no one has time to help someone setup custom security policies manually.
How i use windows (when i REALLY need it, it's rare nowadays):
- in a VM, behind a firewall, with a linux host
I maintain a minimal image, and i copy it whenever i use it, and i throw it once i finish using the VM
And you can even play your favorite games using that technique, KVM/GPU passthrough to the rescue
I think it's risky because a small computing monoculture can feel complete but commit a software business to failure at the very beginning by rejecting 90% of the potential market.
Properly supporting a handful of machines practically means bringing AzureAD or Exchange. AzureAD brings in elements of Exchange (like outlook), which brings in weird default settings like teams/sharepoint/onedrive.
Apple has done a lot of work in supporting Microsoft Exchange, but it's still janky as hell (just browse r/macsysadmin and you'll see).
So, you have two choices.
1) support the monoculture, life will be easier.
2) get a bigger IT department.
People are happy to spend a boatload of money avoiding the second option, so, monoculture it is.
>If your laptop is broken and needs to be repaired you can take it into an Apple repair store. You should ensure that you have a recent backup before doing so, and that your laptop is not your only registered device for iCloud two-factor authentication.
>If the repair is not going to be too expensive (more than $1000 dollars USD), go ahead and repair and expense. If the repair is going to take longer than a day then you need to make sure you have a back up laptop to work on that is non-Windows.
It seems like you need to have TWO Apple devices, to be on the safe side...
[1] or even still has, it‘s been a while
MacOS CVE details as late: https://www.cvedetails.com/vulnerability-list/vendor_id-49/p...
Windows: https://www.cvedetails.com/vulnerability-list/vendor_id-26/p...
Note how the windows ones are more up to date and patched faster? That's because Mac only does major updates on a cycle and doesn't patch out of band ever if they can avoid it. So yeah I think this is all theater and people's own biases being silly. But if it works for them then that's fine.
I work in cybersec and am in daily contact with a few threat analysts. Not one of them has said this or believes this. Do you have some reputable source that can confirm this, or is this just a feeling you have?
>Note how the windows ones are more up to date and patched faster?
The presence of, frequency of, and patching of CVEs has very little relation to real-life attack frequency and targets. People are still getting owned by EternalBlue on unpatched machines from 5 years ago, doesn't matter how fast the patch is released if people aren't applying it.
>That's because Mac only does major updates on a cycle and doesn't patch out of band ever
Same with Windows. Heard of Patch Tuesday? The regular cycle of once per month that Windows does updates? They avoid releasing updates on other days unless it is high severity and there is evidence of active exploitation, and when they do out-of-band security updates it's almost always covered in some media and/or CISA releases because out-of-band updates are noteworthy.
Seriously? Microsoft is not sitting idle and let them create havoc.
>a remote employee would typically be making a purchase of a laptop pre-loaded with Windows Home Edition
How hard is it for them to mandate a Windows Pro edition?
1) The reasons shown as to why Windows is prohibited are essentially parallel construction.
2) The real reason is because someone has an agenda against Windows and Microsoft.
3) This is quite alright. It might be a net loss in the short term for everyone, but a net win in the long term for everyone. Microsoft has a lot of bad stuff coming their way, for good reason.
There are several good things that are currently coming out of microsoft:
- vscode
- typescript
- github
- npm
- edge (at the moment, microsoft at least as strong supporter of PWAs as Google; and possibly even stronger)
Windows is probably not one of them.- edge and chrome are same stuff under the hood. Firefox is better.
What a stupid reason is that?! It really sounds like the Head of IT at Gitlab just doesn't like Windows and is doing what he can to find excuses.
Whatever works. There isn’t some sort of diversity and inclusion requirement for OSs
If they‘d make the point based on lack of internal support capacity, I‘d understand, but caring about the one-time cost of the license is a very weak point.
I see this more as a function of them being fully remote more than anything else.
That may be true, but a much higher proportion of downloaded Mac software lacks code signing. Opting in to that as a developer on the Mac will carry a lot of risk of kafkaesque deactivation and, and most don’t want to deal with that. On Windows, on the other hand, it’s like getting an SSL certificate. Apple’s philosophy on the developer program is antiquated, obsolete, and has compromised the security of the platform.
How many Mac users do you think limit themselves to only signed apps? It’s much easier to do this on Windows (but requires a small amount of technical understanding, or is it too much for Gitlab employees?). But when you enforce the policy at the corporate domain level, you won’t be neutering the machine’s usefulness as you would on the Mac. Unsigned apps on Windows tend to be the janky ones, while the signed apps found on the Apple Store tend to be garbage in my experience.
Relying on “less malware is created for Mac” is a terrible idea in general. This isn’t the 90’s. When you are Gitlab, a high value target for sophisticated, targeted attacks, that won’t help you.
Good Security is a balancing act between safety and convenience, and Apple gets it completely wrong. Therefore I would be very cautious about trusting Gitlab’s security posture given their apparent ignorance on the subject.
From https://developer.apple.com/support/certificates/
> If your certificate expires, users can no longer launch installer packages for your Mac applications that were signed with this certificate.
> Apple Developer Program membership is required to request, download, and use signing certificates issued by Apple.
> Note: Apple can revoke digital certificates at any time at its sole discretion. For more information, read the Apple Developer Program License Agreement in your developer account.
… and many paragraphs detailing what parts of your app will break when certificates are revoked.
There are more nuances involved than I care to list in full here, though I’d be happy to be proven wrong about this.
“App Store apps are garbage” is also kinda rich, it’s not windows, the Mac App Store is the go-to source for distributing Mac apps at this point. There’s some examples of popular apps not on the MAS but they grow fewer by the year.
Citation? I can't recall the last time I ran across a Mac app that wasn't signed - most are Notarized.
Neither spyware, virus or ransomware has slowed my computer to a halt as much as using GitLab.
Normally any company looking at that level of operational detail has a problem. But on their case, yes, it's probably because Windows comes from their competitor.
Adding a bunch of work, costs, and risk to yourself that will only benefit your competitor does not feel good. No matter how relevant are the work, costs, and risk.
That's great and all, but I'm not sure what point you're trying to make. That there isn't a problem of malware/ransomware? Because there certainly is, and for most organizations the risk of malware/ransomware is much more significant than the fact that Windows gets some error reporting and usage statistics and such.
But soon I will have to go to the offices of the startup that I work for (I work remotely) and they all use Mac, and I am a bit worried if they start asking question about how I keep my computer secure. Anyone (not only parent author) can recommend something? A software to install or anything like that?
I think banning Linux and Mac for those reasons is much more common, really.
A buy something with windows pro is not hard to communicate...
So, no, it was always a Mac/Linux place and around 2019 is when the team grew large enough that some new hires asked if they could get a Windows machine. That's when it was written down: https://gitlab.com/gitlab-com/www-gitlab-com/-/commit/3a47ff...
This was after the GitHub acquisition but I know for a fact there was one engineer who really wanted a Windows machine but IT was not interested in adding it to the fleet as we were already heavily Mac/Linux.
(Source: I work there.)
That's nothing to do with "butthurt".
So very obtuse of them to word it this way. Windows has a cheaper license for HOME users who don't need Pro features of a business. It's not the other way.
Definitely a c-level with an axe to grind.
The claim is Mac OS comes pre-installed but people don't claim money back for removing it, because it's considered part of the "Mac". With windows, people consider it an extra and claim back money for it.
At least that's what that explanation was about. They never said Mac OS is "free".
We don't hire people in order for them to learn Linux, per se. We hire junior sysadmins who already have at least a home lab level of experience there -- a standard interview request is to describe a disaster that you caused, what went wrong, how you solved it, and what you could have done to prevent it and what you did do differently afterwards.
I don't love the cost of apps on it, there are some tiny apps that I can't believe how much they want for them, and some bigger apps that are easily $60-200 but I don't need any of those.
Still use windows to game and I think it's still a nice chill OS that just works, for me at least. I didn't enjoy developing on it, though, I broke WSL a bunch of times.
With decent Linux knowledge I think being issued a MBP at my first job out of college was better for my productivity than a windows machine would have been within a week or so, even as a long time Windows user. Windows has generally always had a higher frequency of annoyances.
Everything is in weird places and the OS feels like it’s fighting me at every level.
Unfortunately a lot of workplaces truly enforce Windows use.
I am a little tickled that this is the first time I’ve ever heard of windows being anything other than the default or only choice.
Learning is a part of the on-boarding experience at any new job and technical learning usually pales in comparison to learning about the business domain and company specific practices.
I have, extensively, and found the user experience excellent. Still miss it now I'm using github plus a bunch of other tools.
How is wanting your products to be aligned with their vision evidence of dysfunction?
Firefox refuses to implement project Fugu's apis. For me, this makes Blink-based browsers better.
I've seen more than once a mac design use some font in a light weight that comes across almost invisible on Windows. I'm the only windows guy at our shop and "everyone has access to windows VMs to test" (lol)
Outside of that, now that Edge is on Chromium most of our edge cases seem to be Safari these days (everyone uses chrome/firefox except a couple management using Safari).
Which all in all I guess is a testament to our lack of full browser testing :)
¯\_(ツ)_/¯
Microsoft is certainly doing their best to mitigate the negative consequences of the monoculture, but it remains a fact and an issue. Just like in biological systems, diversity in software is also critically important for the health of the population.
But for... "Now makes vague pledge to shove inactive repos into slow object storage."
Not sure what that means. If the project isn't still available at the web and git URL it always was, that's a problem for open source.
https://www.theregister.com/2022/08/05/gitlab_reverses_delet...
It's kind of shocking to me that they didn't realize how it would upset people, makes me think they are a bit disconnected.
OK, here's the HN thread: https://news.ycombinator.com/item?id=32350180
They didn't really "announce" it, the plans were leaked.
Overall i'm pretty sure that "list about 20 differences" is relevant in some cases/procucts/websites, but not for gitlab - they just proved that by disallowing working on Windows (which wouldn't disallow testing on a VM).
But here's the important question: are the problems that are caused by ignoring the aforementioned differences enough to prevent people from being able to use your software? Or, conversely, are they enough to weigh more heavily than the functionality that you provide for your users?
Because somehow even Electron based software is pretty popular in the desktop, oftentimes looking and feeling rather different from most of the native software. But apart from nitpicks and rightfully complaining about those annoying inconsistencies, does it really matter enough to spend resources towards fixing them?
I can't think of that many inconsistencies that caused web applications to be unusable across different platforms altogether, apart from IE not supporting certain JavaScript functionality back in the day and non-transpiled (to say, ES5) codebases breaking altogether. But look and feel related things have hardly been as important.
We're not talking AAA rated, but Kdiff3 and Zenmap should qualify.
> the Mac App Store is the go-to source for distributing Mac apps at this point.
I wouldn't say the verdict is in yet.
https://9to5mac.com/2022/06/09/setapp-mac-developer-survey-r...
> There’s some examples of popular apps not on the MAS but they grow fewer by the year.
Well, yeah, the success stories have the budgets to handle compliance issues, and to manage risk appropriately. Apple will also be more lenient with large publishers for a number of reasons. I wasn't talking about popular apps, I was talking about apps that make me productive. Things made for power users. Popular isn't a concern there. But if BigCo doesn't allow me to install it, that's a dealbreaker for me working there. Experienced that in 2010 when working for a Fortune 50. One approved text editor, one approved browser. The productivity apps I use are not on the app store. They are signed, but chances are that a locked down Mac will require App Store installations only, while a Microsoft configuration would be more optimal.
For the record, I DO prefer a Mac for productivity. But when it comes to security, Microsoft wins. Or even better, Linux (though Microsoft is giving it a run for its money with W11)
Fair enough on App Store / popularity, my point was mainly saying the apps on the App Store are of “lesser quality” / the lowest quality is ridiculous. It’s not like the 30% of setapps not-on-the-AppStore apps are explicitly not doing it from a quality standpoint. Most are just because they don’t want to / financially can’t afford the revenue split.
Managing Linux at scale is extremely easy as you can leverage basically all the tooling that sysadmins use(d) for management of infrastructure fleets.
You can even get a pretty GUI if it’s saltstack enterprise.
Arguably learning the idiosyncracies of proprietary management tools is harder long-term as there are myriads of edge cases and they get replaced with completely new tools quite often.
Exceptions are SCCM maybe, but people are avoiding that as much as possible IME.
They also mention multiple times that Linux and MacOS are free, as opposed to Windows Pro - which can reasonably be read as „we don’t want to spend money here“, since otherwise you could just strike these arguments and revert to „we don‘t believe Windows Pro is secure“, which incidentally they never say.
- Async is really hard for new folks to adopt to, and it can be hard for people to adopt to "you will be measured on your results, not hours worked."
- I think we've done a really decent job of navigating an organization with a huge amount of cultures represented, but adapting and then adopting a "company culture" on top of that can also be challenging for team members to understand. (Think some cultures are more direct, and others reserved). This doesn't play out in any kind of battle, just as a leader having to be extremely well-versed in a lot of global culture aspects.
Happy to answer other questions (again, within reason) if there are others!
Web Dev is a really wide term, so a place that's a larger co there is more separation for parts of the stack. At a small co, a web dev might do all of the following:
- Backend - Frontend - JS APP - HTML - services/scaling/infra
Whereas at this scale those are all separate groups. So I'd say try to get stronger in a specific area that you are interested in (Frontend - Vue / Backend - Rails).
If that was not enough, I believe the CI runner is written in the Go programming language, which has a surprisingly decent abstraction of OS functionality in it's standard library. Imperfect as it may be, I suspect that helps reduce the amount of effort needed to ensure individual platforms work properly.
Maybe with a Windows VM.
The prohibition on developer laptops is not just a trivial or nitpicky detail; while the security of a VM obviously still matters, as you can't simply assume that malicious software in the VM can't escape, I would assume that the policy effectively means it would also be prohibited to setup a Linux dom0 and just run Windows under that and use it as your developer workspace. The benefit of only using Windows for testing is that you presumably won't be reading emails, talking on team chat, taking video calls, opening documents, etc. inside of Windows, only doing the thing you actually need (testing.) From a security standpoint, this can be helpful. I think that Windows vs Linux security is a rabbit hole not worth debating; both are very flawed and have many challenges, nothing is a panacea. However, I would say that every OS you don't need to harden is a huge operational advantage no matter how you slice it. You effectively cut off an entire slice of the malware market, and easily the largest slice in case of Windows.
Can I spend time and effort changing that? Of course. But why fix something that isn't broken?
Am I tying my identify to $OPERATING_SYSTEM? No. It just works for me, so I'm a $OPERATING_SYSTEM user.
Because this can be a form of brokenness. Someone would be hired for their aptitude and probably not because of something they have already repeated over and over (unless we include factory work). The ability to adapt and create (and be creative) is usually not described as such in SWE work, but a lot of the actual work does include that.
That said, if a job has a match based on OS, it would probably just as much be a good thing to explicitly know that you either will be or won't be a good fit based on what you are used to and what you think you can adapt to. Knowing this about a job or a potential hire saves everyone a lot of time.
I've seen developers work on just completely the wrong stuff, and their entire salaries was 100% pissed away, or in some cases, even more than 100% because they added net-negative value.
You really need to optimize hiring the right people with the right mindset and have a good team lead/manager which balances developer autonomy with business interest. I have thus far not seen it work outside of fairly small teams, although I agree that in principle it's the best way to make a good product and keep your developers happy.
Looks like corporate lingo is no better than a Rorschach test.
Besides that, there isn't actually obvious different between firefox/chrome/edge on macos/windows.
The most problematic one is actually safari(which is on mac only). If you dev on chrome and use on firefox or vise versus. You usually get a "mostly work with minor visual different". But safari… will give you a fail and are't even usable. It is outright the modern age ie.
Doesn't sound sexy, no. Compensate them royaly. And make clear that they are superstars just by having this work environment. Then keep listening to what annoys them with whatever you are building, and let them fix it.
That, however, is bound to happen even if you have Windows workstations. It happened at a job where I was, in fact, running Windows, because the designer ran macOS and was oblivious to this issue. (Of course, I would fix it when spotted. But it still managed to make it out to prod at times.)
Or, leave the default settings in place, but plug in a mouse with a physical scroll wheel.
So it's not even that they're only using one platform, but they're only testing the platform with default settings with the default hardware. And we're not even talking about an obscure setting buried three levels deep, it's right there in the general pane!
sudo defaults write -g AppleShowScrollBars -string Always
I include this as part of my setup script for any new Mac.But I also place the blame on design teams. Most design teams I've worked with also doesn't account for this in anything they create. They usually only design for: 1: the latest macbook pro; and 2: the latest iPhone.
Apple is a walled garden. Everything is a degree of difficulty or two harder and you often run into weird ecosystem shit like some aspects of laptop mdm registration only working if the user has an iPhone. The tooling is 5-10 years behind, non-existent, or expensive because the third parties know they got you by the short and curlies.
Linux is a build your own from open source ecosystem and what understaffed overworked IT team has time for that. I mean Google manages their Linux laptop fleet by rolling their own distro. Never mind all the compatibility issues with other required tooling that may or may not work.
Some of these issue may have been easier to conquer in OnSite roles where laptops could be dropped at an IT cage but for full remote the Windows ecosystem has just gained more ground because of the iceberg of features most users never see.
I’ve rarely seen people being very enthusiastic Windows users btw.
I'd also think twice about the consequences of these decisions. If Gitlab and co decide Linux/Mac is the answer for market share, it's only a matter of time before hackers start targeting those platforms en masse. If the answer to Windows was restriction galore, I fail to see how humans won't repeat history and do the same to Unix.
Thankfully WSL2 on Windows is now an option, its also off the radar so whatever happens inside the Linux VM doesn't cop a performance hit.
Server management you say? How is a server different from a Laptop? It has Wayland installed or X11?
Apple and windows aren't even in the same ballpark.
I'm sure you could achieve similar results with Salt but it will be some bespoke contraption requiring a lot of engineering effort where you cant just hire new staff off the street to maintain it.
I’m sure certain things are a tick of a box, with salt it’s usually 3-5 lines of yaml. It’s not like you’re writing a management system by hand in a general purpose programming language.
Says who? I think (as a devil's advocate) it's very useful that people are interchangeable, and that tools are similar enough to allow people to collaborate.
I also think that if (imaginary percentages used) a 10% reduction in productivity because a worker can't use their most bestest tool ever is worth it if it means I can get 40 of those workers for the same price as 10 workers that are proficient in that very special choice of tool. You can pretty much exchange any of those with management overhead or policy requirements (be it by law or otherwise).
> tools are similar enough to allow people to collaborate.
I think this reason in particular isn't all that valuable though; especially not since people tend to customize their setups anyway. I once worked somewhere that mandated software choice (including IDE) for this reason and I never saw any value in it.
https://docs.microsoft.com/en-us/windows-server/get-started/...
Microsoft does not like >200 machines being activated from 1 IP/Site for example.
But you’ll run into issues running the “pro” version of windows, and you’ll need the enterprise version pretty early.
Computers don’t ship with enterprise, if any do then it’s certainly not all of them.
So you have to license all machines on your network anyway, volume licensing gets cheaper when it’s properly managed.
It’s hard to say there’s a hard limit, because there isn’t really one, but it’s sort of expected.
I think your uninformed ad hominem attacks are really impolite by the way.
From my perspective Windows in 2022...
- I can seamlessly develop in Linux on Windows using WSL2 - I can manage my machine with a package manager (winget) - I can run Linux Native GUI application (wslg win 11) - I get Microsoft's epic backwards compatability - I get guaranteed comparability with 99% of the software and hardware available today - I get a suite of expandable back office tools for managing my fleet
Honestly, there are days I spending in visual studio code and windows terminal where it doesn't even feel like I'm on Windows. I can get the best of both environments out of the box.
...but tell me again how there is nothing to be enthusiastic about windows.