> Because even though the world of non-programmers uses Windows, the world of programmers decidedly do not use Windows. I think if you were to analyze what people use in the vast world of startups, corporations, open source projects, and other places you'd find it's inverted with 95% of programmers not using Windows.
My personal observation is quite different - this is clearly written by someone who lives in his bubble.
Most obviously: most corporations do use Windows. Also for technology startups outside of the "web application operator" type (here it depends a lot on the local culture), many use Windows: often because this is what the customers use, and the software/service of the startup has to be compatible with the ecosystem of the customer.
I work for a mid-size publicly-traded software company that makes software development tools.
There's a clear dichotomy internally in choice of operating system. Corporate, project managers, and people managers use Windows. Developers and technical people use Linux (and we used to support Mac OS but that was recently dropped). Recently Corporate IT decided to move on-prem services to a Microsoft-hosted SaaS cloud, which caused some pain for the majority of employees but there was some kind of kickback or discount and some line in a spreadsheet was tortured to reveal the right numbers, so the deed was done.
Of our customers, about one third run our product on Microsoft Windows and two thirds on Linux. We certify both but only Linux gets dogfooded and support for Windows customers tends to be higher. The only people who ran our product on Mac OS when it was available were students and hobbyists and small startups whose license fees wouldn't keep our office lights on long enough to walk to the coffee machine.
I second that. In most large orgs I worked, non-tech people used Windows, but macOS wasn't uncommon. But as for developers, we often had a choice. Many people would just take macOS or Linux, but I know some developers who would use Windows because they somehow learned how to deal with its quirks.
A lot of engineers who use windows aren’t programmers. This is because a lot of custom engineering packages that require windows, especially since they were developed 20 years ago when windows was dominate.
But programmers have many more choices, and visual studio shops aren’t very common anymore, at least in the developed world, and I would bet countries like Russia and China as well.
Sure, older tools are also feasible on windows. But if you are going with clang or GC, why bother? I guess you could do java dev on windows as well as other platforms.
Well, yes, "Linux" is not well-specified. When one installs Arch, they hopefully know what they want, and it's something else than just a low-maintenance casual desktop OS. :)
Mac’s don’t require much maintenance either, and last longer then Lenovo things. When I worked tech in Beijing already a lot of programmers used them, even in changping around Lenovo’s big R&D office.
When Shute uses three dots it means, "Use your own imagination. Conjure the scene up for yourself." (pause)
Whenever I see three dots I feel all funny.
I notice that's in the past tense. I'm old enough (as in, used Borland Delphi) to remember if you developed small business software, you were almost by definition a windows developer.
But that was a long time ago. Along came Google whose master plan looks to have been to turn the web browser into the business platform of choice. Seemed like insanity at the time. Yet here we are. Browsers have since become masters at playing video, can handle interactive voice, and can talk directly to the GPU. Now Microsoft wants you to use Excel of all things in a a web browser and has dropped the Windows native version of Outlook in favour of the web one packaged as a desktop app. Seems like Google made it's vision work.
I know there are some heavyweight applications out there like video editing and Engineering CAD with finite state analysis that need raw metal performance. But they are few and far between, and aside from them - who is doing Windows native development any more? Certainly not the firms that make accounting packages - the abandoned Windows long ago. For those that are left - are they going to survive the transition to ARM and RISC-V?
POSIX / Linux / BSD / whatever applications - they continue to be as strong as ever. They drive embedded at one end, and the servers at the other. That sort of development is easiest to do on the the target platform, and since it dominates now Windows had to emulate that platform if it wanted to keep the developers. Which is how we got to WSL.
But Windows native app development - that seems like it belongs to a bygone era. Now even Microsoft develops own apps target Electron, not Windows.
> But Windows native app development - that seems like it belongs to a bygone era. Now even Microsoft develops own apps target Electron, not Windows.
I indeed have the impression that some industries (e.g. banking, insurance, development of engineering tools (e.g. CAD applications), PC gaming, ...; observe that at least banking and insurance are two financially quite powerful industries) have a lot more love for the "Microsoft ecosystem" (Windows; in banking and insurance also Microsoft Office) than Microsoft actually does. Thus, in these industries Windows (and Microsoft Office) is used and Windows software is developed despite Microsoft's actions and stance.
Yes, but that's because I moved companies. The bank in question still uses Windows.
> I know there are some heavyweight applications out there like video editing and Engineering CAD with finite state analysis that need raw metal performance.
WASM and WebGL etc (or whatever the newest developments are called these days) are there to make working in the browser faster.
Btw, if you have beefy enough servers, it's not the 'weight' of your application that's the problem, but the latency.
> For those that are left - are they going to survive the transition to ARM and RISC-V?
Just recompile, or use the automatic translation of binaries that comes with your OS.
Having audited quite a few mega-corps, and seeing their CMDBs in detail, "the amount of RHELs is too damn high" to use the meme. I can't speak to percentages as I didn't keep specific track of those numbers, but from memory/impressions, the RHELs were at least 30%-40%.
As a developer in a corporation, yes, the software I develop runs on Linux servers. But we don't develop in the server - my work computer is a "desktop with packaged software" and as such runs Windows.
>the world of programmers decidedly do not use Windows
Who do you think writes all the Windows software? There are hordes and hordes of people writing code on Windows for Windows all their lives. Server/web software aside, there are huge layers of windows-only software.
This is a ridiculous article because the author did not even bother to check the stackoverflow developer survey. Majority of developers use Windows. I use Linux, but just because I use Linux does not mean that I have to be delusional about it. Programming != {webdev,AI}. What operating system game developers are going to use? What operating system business GUI application developers are going to use? Win32 is still the most stable API out there.
And even if you, for some insane reason, decide to pick Linux and fight its technological challenges, in the end only a tiny percent of users is going to use your product. Yet they will be responsible for generating over 50% of the bug reports. To make matters even worse, most of them will come from Arch Linux users, providing absolutely useless debug traces because they use a distro notorious for not shipping the debug packages.
Majority of developers who use StackOverflow enough to fill out the survey, thats a bias already, and a massive one at that.
You have disproportionately more beginners using it than more seasoned professionals. Hell, I barely use it, and I have questions every day - I just look up the documentation instead.
This is like saying most people love overpriced dropshipping, just because an advertisement company tracks how many of the people who click on ads buy dropshipped garbage. Its a massive bias.
There's an even bigger hole in it than that: his list of languages completely overlooks Java. The language that prides itself on portability, has been taught in universities for decades, is widely used in industry and which every component needed including the compilers and runtimes can be fully installed and updated on any machine, graphically, just by installing the free version of IntelliJ, which conveniently works the same way on every OS. It meets almost every one of his requirements.
Agree, most of the ABAP developers at SAP or in the partner/SAP consulting companies do use windows, as the SAP GUI (business GUI app) runs the best on windows, the Unix-like version written in Java miss some critical features that makes it unusable for engineers.
The bubble is quite big though. Companies like Google, Amazon, Facebook typically offer developers laptops with a choice of Linux / Mac (but not Windows).
Windows for development is really a common choice if you make video games, hospital, school software or desktop stuff. But even there there are exceptions. It's unfortunately a common choice in some, esp. American companies where the product is intended for Linux, but they would still hand out Windows laptops to the employees because of their bad / backwards IT that only knows ("knows" is an exaggeration here...) how to work with Windows. So, it often comes to that an employee gets this decrepit system, but then works on Linux anyways, but the experience is worse because they need to jump through some hoops to get to the system they actually work with.
Anyways, any claims about what "most corporations" do smells like LinkedIn posts promoting a technology, where the claims are usually made w/o any research but also any way to disprove the claim. Just don't go there.
Google does offer Windows laptops, including to engineers. I had one for a while. It made a perfectly adequate thin client to my Linux workstation and made debugging in Windows browsers significantly easier.
They didn't during my time. But my department didn't do anything that had to do with Web... also, we got into Google through acquisition, and the company originally started with developers working on Linux and rarely Macs. The IT wasn't really very selective about it, so there was a guy who wanted a Windows laptop, and they gave him one since they had licenses for the HR / sales etc. people, but he quickly gave up the idea.
So, by the time we became Google, nobody really thought about it as a viable option.
In my experience the entire point of windows is to lock everyone involved, including developers, into an emaciated and dependent toolset that they can't even explain to others when something doesn't go as they expect, and on which unexpected behavior could be because of clandestine updates that enforce the whims of one of the world's most user-hostile corporations
Lock-in isn't just a strategy or a quirk, it is Microsoft's business model in every context. From monopolist strongarm tactics to lobbying for kafkaesque international copyright laws they have drafted, the goal of Microsoft is to put every human being in their little tinpot dictatorship and prevent them from leaving
We should suffer no such tyrant to live, let alone cave to its demands
You conveniently leave out all the hoops you have to jump through every couple months to make sure it stays that way. Every now and then some windows update adds another shortcut to your task bar, resets it to be the default browser, and other shenanigans.
This is stuff I witnessed happening at work, and with relatives still on windows; the internet (not just hn) is full of rants about it, even some news outlets picked up on how Microsoft aggressively tries to shove Edge down everybody's throat. And you show up here claiming that never happened to you and that it's just HN folks hating on windows. How can anyone be in such denial?
Try opening Edge and you will realize that is has imported all the Chrome session/cookies etc and now you are logged in those sites in Edge. This setting is on by default.
I think the OP means building apps native to that platform. If you're building web or Android apps, you're cross-compiling, in which case the OS doesn't matter.
I mean lots of people manage to get around what they want to various degrees. Your use case is in spite of their efforts and wishes, and I guarantee that were you to run into problems, vs people would do everything they could to try to steer you toward it rather than help in any other way (that's even been my experience working in general programming contexts with people in that ecosystem)
Your question is deliberately constructed to deflect any possible answer (s.a. to protect the OS you've installed).
Let me illustrate this by example: let's say you don't even power up your laptop -- it's hard to imagine that you are locked into something in this scenario. The lock-in will be ultimately contingent on what you do with the system, not on what you don't.
> Notepad++ This guy thinks his text editor is a political statement rather than just a damn text editor, which makes him hard to trust even if I agree with most of his views. I can't have some wannabe activist deciding to erase all my students' computers because they happen to live in the wrong state or country.
Has notepad++ erased someone’s computer before? I did some quick googling and didn’t find much.
It seems really weird to bring this up if there hasn’t actually been any problems. Especially given the line that follows:
> Each of these have caused me weeks, months, or years of support problems because of their stupid decisions.
The truth is, programming is an expression and often a very political one (see open source). I’m immediately suspicious of the motives of anyone who says project authors shouldn’t talk about their beliefs
1. An expected development of this sort of political message is blocking access to the tool's website to users from some countries, either by the website owners or by the relevant authorities.
No, in the software itself he put political messages. There was a bunch of anti-China ones (for Uyghurs, Taiwan, Hong Kong), for Snowden, and for support to Charlie Hebdo after the terror attack. In some cases it opened a new document with the message for example.
Why do you think the two are wholly separate? If software is just a job and not an art for you then I get wanting to keep “clean”. The software you build is 100% an expression of your beliefs.
I would never build software for a defense contractor, or any other myriad of nasty things engineers are hired to do.
In a similar vane, if my work has given me a platform (ex: a popular open source project) then it would be a waste if I didn’t use that platform like Notepad++ is doing. (Though I’d probably restrict messages to the download page)
I think the FSF bent of open source is easier to identify as explicitly political because it tries to force developers to do something they may or may not want (disclose source code). There's some anti-corporate messaging there, because it's hard to make money from software if it's free[0], and that's a political view others may not share.
[0] I do know the suggestion to sell support for software rather than selling software itself but that's a political view as well, trying to persuade businesses to earn money one way rather than another.
I think the article is a little out of date. These days, learning programming on Windows is best done via VS Code (not Visual Studio) and optimally, though optionally, through devcontainers. Also WSL2 is very useful in running Linux on Windows with very little effort.
Not really. It combines the best of the two words. You have good UI and operating system that requires very little maintenance and Linux command line with tools where helpful.
Yeah, it has better UI then linux. There is nothing controversial about it.
And when it comes to maintenance, yup there is less of it. Linux users are constantly dealing with this or that hardware not working, not working after update and what not.
Linux is better on the server. But for a user, nope.
> Yeah, it has better UI then linux. There is nothing controversial about it.
Few examples (Windows 11):
- You cannot move taskbar to different edge of the screen.
- By default, search shows results from bing.
- Three finger swipe gesture animations to switch desktop or open task view are jarring.
- Explorer window shows partial UI first and then fills in the rest of UI.
- Ctrl+F or F3 doesn't focus on the search field in Settings app (and other MS apps that have search bar at the top of the window).
- Connect to external monitor and close the laptop lid, the laptop screen doesn't get disabled, it is still enabled and you can move windows to it.
- In tiling mode while resizing a window, causes other windows to show the app icon instead of their content.
Here is another amazing thing: All operating systems (even chromeOS these days) have a system settings to configure keyboard shortcuts, for some reason Windows doesn't (probably because all system level keyboard shortcuts are hard-coded in things like dwm.exe or explorer.exe).
Older versions of Windows have some aspects of UI better than Linux, and others worse. Newer versions of Windows are often worse in other ways too (although there are also a few benefits, but mostly it is worse).
What's the "best" you are talking about when it comes to the Windows world?
Also, while I cannot really speak to how Windows contributes to the experience, I know for certain that the integration comes with a tall bill to pay. You don't get to manage your computer with Linux, which is, ultimately, what it was built for: to empower the computer owners to take ownership of their hardware. And you don't get that when running in a VM. You are totally missing the point if you do that.
The best in the sense that it is less hustle to have working UI, headphones and what not. The UI is just comfortable and working. Not having to deal with this or that maintenance issue that prevents you from working once every two months. That is something I see colleagues having to do with fairly often.
Linux command line is great, when it is in wsl I get to have it without having to sacrifice the comfort.
Unless you need a gui application, or DinD, in my experience. Yes windows has 'native' support for x11 apps but ime it's slow and the fonts are super messed up. Also configuring a volume/directory to be shared between wsl2 and windows itself is still more painful then I'd like.
Not out of date, the author is probably planning on teaching how to program Windows via WinAPI. WSL2 and VSCode will probably be outside the scope of discussion when it comes to coding Windows apps from scratch
That's a good reason to look at devcontainers. You would create a dockerfile configured to provide an out-of-box development environment with a fully configured build
What an odd take. Pretty sure most programmers actually do use Windows, you just don't see them all over social media telling everybody that they do (like some Linux users).
This is probably highly correlated to tech stack. A number of popular programming languages do not behave well on Windows and I make no editorialization about who is at fault there. Even if the language is ostensibly compatible, popular and/or crucial packages within its library ecosystem may not be. Elixir and Ruby are two from my personal experiences, though the latter is referring to c. 2005-2015 or so. Developing in a Unix-y environment is definitely the more well paved road in such cases. It varies between "less documented" to "doesn't work correctly at all" to "won't even compile". Social stigma is sometimes a factor too. Rails' early popularity (and Textmate) probably did as much to help sell MacBooks during a given era as Apple did.
Even though it has a more positive reputation for being cross-platform-capable, I will also observe that the Rust crates who strive to support Windows equitably seem to pull in quite a lot of platform specific code as conditional dependencies. Whether that is because of rampant Unix-isms or POSIX brain worms or whatever, I don't know, but it certainly seems to pose a maintenance/complexity burden that isn't there otherwise.
If so many developers manage to get stuff done on Windows, students can do it, too. This post feels like it's 10 years old, when there was no Visual Studio Code, Windows Terminal, or WSL.
Visual Studio Code, Windows Terminal and WSL are hot garbage, which I wouldn't want students to get anywhere close to. Why does it matter that they exist?
The point of education is to understand how to do something. An editor that uses Electron is a massively complicated system that's impossible to comprehend. And so is a virtualized operating system. You would have to twist yourself into knots trying to explain the reason behind terminal existence and function, if all you have is Windows -- all because that system ultimately doesn't need one, it's contrary to how everything works there.
More so, all these tools were developed by Microsoft because they wanted to get developers' allegiance by feeding them with superficial fakes, by doing market research and implementing the most "liked" features -- not unlike the spirit of other Microsoft products. And, like with other Microsoft products they've created an ice-cream miso soup with churros and peanut butter. The tools are pathetically bad, but they've managed to convince a lot of developers they are good by specifically checking the checkbox they've complained about. A reverse malicious compliance of sorts.
About 10 years ago (funny that you mentioned that era earlier), before WSL, I was using Sublime Text, mintty and MinGW.
I even had a project to auto-spin a unix-like shell for windows: http://github.com/alganet/shunt (doesn't work anymore since ms crippled wscript).
VSCode is just another bloated Sublime Text clone. Language servers are a fine addition and I respect them, but pretty much everything else is a ms-branded copy. It's good, and I like it, but considering what it could be it kinda sucks too.
I've taught coding to hundreds of beginning students, with about 50/50 Windows/Mac (some Linux). From my experience, Windows is not worse for beginners, nor is the setup process more laborious.
For example with Python, the author can standardize by having all students run the Anaconda Python installer alongside Visual Studio Code. This left us with virtually zero install/setup issues. Alternatively, using wsl2 you could set up any language very similarly to Mac/Linux.
In any regard, setup is typically a one-time cost. Once configured, students typically have no additional problems running code. That said, reducing getting-started friction is always welcome, and the author came up with a nice solution for personal computers. (Running `powershell -executionpolicy bypass` may not work on corporate laptops.)
Setup may be a one time sunk cost of opaque misery for you, but it's a lifetime of never getting any closer to truth understanding or enlightenment, upon a difficult opaque system that doesn't respect you & won't show you whats happening & has an array of barely supported weird add-on tools to accomplish the most basic software installs & setups.
It'll be a one time cost for your setup. Then a one time cost for the next setup as the student tries to do something else. Then another cost for the next effort. And the student will never gain any skill understanding or comprehension for any of these barely related steps.
Wsl2 is indeed savings Microsoft's bacon, by being some place where there are clear rules & patterns & behaviors, & where there's some kind of coherent underlying substrate. WSL2 is saving MS's ass. By not being Microsoft and by especially not being Windows. By being something social, with layers of accepted communal tools & platform.
Setup/config is a necessary evil on any OS. It's part of the game that you must learn to be a productive coder.
If the setup portion is a huge issue, students can use a pre-configured web solution such as replit. There, you're guaranteed to become dependent on an opaque third party platform (all just to save some minor setup hassle).
I was rather shocked when the author implied, on two occasions, that Notepad++ has the potential of wiping your computer. Is there some context I am missing, or is this based entirely on N++'s codenames and release notes?
There was another project which did something like that to "Russians" after the invasion of Ukraine.
I also found the author's conduct shocking, people's memories are fickle and making this implication once was bad enough, but insisting on repeating it? Feels like the author _wants_ people to misremember and erroneously believe that Notepad++ was the software package in question.
> I was rather shocked when the author implied, on two occasions, that Notepad++ has the potential of wiping your computer. Is there some context I am missing, or is this based entirely on N++'s codenames and release notes?
I don't honestly remember, but, did none of the author's vicious attacks and bitter diatribes posted online over the years include some slander?
He's not doing anything wrong with his release notes, but it is worse: it is a mistake.
The notepad++ guy comes across as a dingbat who cares about certain political things more than the software he's producing. This is a risk indicator. It doesn't matter if you agree with his current views or not. What happens when he takes the next step in using the software he's created to further his political ends?
The author is right to prepare for this possibility.
I'll be sure to pass this valuable message along to vim users that have been :q'ing political messages for the past 15+ years. They're gravely endangered!
Somehow tangent: can anyone tell me why WhY i can't just copy the text in any Windows' error windows? It looks like it's all text somehow is a texture which is un-selectable?
So i have to retype manually (and translate back to English) the error messages to look them up
Have you tried?
CTRL+C on most dialogs will copy all of the text to clipboard.
Of course, there are 3rd party dialogs that are not standard Windows dialogs and they do not implement this functionality.
To be fair, it's quite a hidden feature. I've used Windows as a daily driver since 3.1 days, and I didn't discover this until late Windows XP or early Windows 7 days.
Not dialogs, but you certainly can’t copy errors/warnings from Visual Studio inline popups, which is super annoying when I occasionally develop a Windows app in Visual Studio.
So literally today i tried to install sql server developer edition, and for some reason the downloaded file was corrupted. The error msg wasn't "ctrl-c"-able, so i had to retype whatever nonsense shown on the screen.
That was Microsoft's database, from Microsoft's website, to be installed on a Microsoft's OS.
There's a bunch of different UI frameworks, but WPF is pretty popular, and in WPF, my understanding is the normal control you'd use to just slap text on the screen is TextBlock. And a WPF TextBlock doesn't have any way to make the text selectable. And if text isn't selectable, you don't get the normal affordances of the window manager's copy functions.
I've used Avalonia, which is based on WPF. Its TextBlock control works the same way, which means the default way to put text on the screen is inaccessible. But if the programmer is thinking about it, they could use SelectableTextBlock instead, and then the text is available to the user for selecting and copying.
Maddening isn't it? One work around is to install MS Powertoys, then Win Shift T will give you a rectangle to capture text from anywhere on the screen, including an image then it will convert it and put it in the clipboard for you. Not perfect, it tends to confuse Capital O with the number 0, but it's better than nothing.
The why part is harder. My theory is Windows is made of many shells of of code, and they older parts of the system will never be refactored. I think someone counted 5 different gui interfaces in Win 11.
To be fair, MS is handcuffed by backwards compatibility. So interfaces remain frozen in time because changing anything can break compatibility in ways impossible to predict.
Fun Fact: File Explorer can keep changing because they never promised anyone they would keep it compatible with anything.
Edit: Just to say I did comment on the linked article, I never dreamed I would ever read the words "use PowerShell to create a nice GUI".
Yeah its maddening, its also an ubiquitous problem, in Android sometimes I need to copy a file name from the Google photos app, surprise surprise: Tapping the file name does nothing, the quick dirty solution its to screenshot it, use Google lens on such screenshot and from there I can select the text.
No need to retype manually. If you upload a screenshot of the error to ChatGPT, it will transcribe it for you and even give you some hints on how to resolve it.
The author's repeated expression of "concern" that the Notepad++ author might erase people's files borders on libellous in my opinion. It suggests that such an event might have happened in the past, and especially in the context of a separate piece of software having done that previously, it's almost like the author _wants_ people to misremember and think it must have been Notepad++. If it were only once I wouldn't have made my opening statement in such strong language, but twice?
Ironically the whole thing just damages my trust in the author. People who see other people's forthrightness about their own beliefs as a negative are people who should not be trusted, they are people who view a kind of dishonesty as being a virtue, and honesty with suspicion, consider what that means for somebody's trustworthiness.
Why are programing students having a hard time setting up thier environments? Shouldn't they have taken some OS 101 classes? At least know how to install software? I never went to college, but I assumed they would get you proficient in prerequisites first..
I did ... the thing is, most college students need a lot of help, especially in earlier classes. On a statistical level it's somewhat the opposite of a population of self-taught programmers, who self-select for being into the gritty details of computer systems, and being able to figure stuff out. You know, in most college tracks, there are problems with lots of students needing help, cheating, struggling, it's kinda the regular state of things, now that most people go to college.
Some college students switch to something else later; some continue to need lots of help with system setup when they start working professionally; those who are really good were largely self-taught either before or between college courses. College/university is still useful for the self-taught programmer, to cover gaps, and for the advanced courses. I had been installing, configuring, fixing, and re-installing windows and linux for 4+ years before university, and I really loved my systems programming courses.
Now that there are millions of programmers out there in the world, working professionally, yeah lots of them are kinda useless ... there's a reason why "average" doesn't have a great connotation.
You're thinking far too much in traditional colleges, and also I personally didn't have an os 101 course at my college. The only time we talked operating systems was how they worked at the kernel/system level. Schedulers bootloader forking shared memory etc.
The author is more for the use case of 'hey I have a full time job and want to change careers to programming, how could I get started?' or 'i couldn't get into college even if I could afford it because that's just not a path my community is set up for, but I'm motivated and want to learn programming anyway'
My school did. But that was back when nobody was expected to have a laptop, and the labs were on getting used to the school's Solaris computer environment and the UNIX command line, with assignments on using grep, tail, sed, awk, etc. Probably half the class had only ever used Windows before.
If the goal is to have students have experience that will help in real world jobs, use standardized tool chains they will see there. WSL2, VS Code, git. Or a Linux VM. Having to code for a Linux environment on a non Linux machine is super common in industry, and a well solved problem at this point.
I use windows, mac and linux basically interchangeably for coding. For windows, I install the Git Bash package [https://gitforwindows.org/] and then just use chocolatey as a package manager for stuff like python and node.js. Bash gives me a completely functional commandline with my C drive mounted as `/c`, and I can write code using VSCode. I don't really have issues. With this setup, it operates indistinguishably from the other two platforms.
For me, the key really is the commandline. Learning powershell is not something I'm going to do.
English is the current lingua franca, so to speak, of the computing world.
If it changes to another language, then I guess I'll have to learn how to use the new language professionally, much as an opera singer might have to learn how to sing in Italian/German/French/etc.
Though there are computer languages like APL or Scratch. Or Lisp/Scheme and Forth, which are only marginally English-like (though their libraries may depend on English literacy.)
AppleScript is an interesting language which had English, French and Japanese dialects.
English helps a lot, just like Latin helps in medicine. But there's plenty of material available in eg German to get you started.
(German is just the language I have the most familiarity with. I don't know how the programming material available stacks up to other non-English languages.)
I don't think that's a bug. I think that's a rather nice feature that programmers all over the world can talk to each other. Programs are written for other programmers to read and only incidentally for a computer to execute.
it is absolutely insane the lengths Windows users have go to complete basic tasks. This is one of the things that drove me away from Windows. I was learning to program and it was so frustrating. The Python PATH issue was one of the first I ran into, the anti-virus nuking my project directories OR causing the Go compiler to choke up and go insanely slow. You have to allow-list dev directories to avoid this kind of issue. On top of that installing packages is a nightmare.
Its perfectly fine if you are a web dev... or you develop ONLY for windows, but I think that is a terrible mindset that stunts your growth. The way that VS hides all the "complexity" behind layers and layers of menu's is god awful. I dont want to learn how to speed click through a GUI, I want to learn whats happening on a lower level.
So he's just adding a message to the release notes every few years. I don't think that justifies a fear that he'll "erase all my students' computers", as TFA seems to worry.
Yeah, if he was showing some political message the first time you start notepad++ or something like that then it might make sense to worry about future behaviors but every single time it has been the release name or the release notes so its completely unjustified.
This must be at least several years old, I do remember when things were this bad. Windows really used to be a huge impediment to education and made getting started with programming seem like a daunting esoteric task. But these days you can have students download WSL2+Ubuntu, Windows Terminal and VS Code from the Windows Store and then you’re an apt-get away from whatever programming language you want. The situation has massively improved.
I mean, the author explains this and it makes perfect sense. Starting a class with "OK guys, wipe your entire OS on your personal device" is a total nonstarter.
Yeah WSL exists, but that's adding a whole new layer of complexity and indirection and leaves developers without any ability to program natively for the most popular consumer OS around.
Well... I'm not a teacher BUT I was a student and I have lectured some courses about IT to different age cohort and well, I exactly told "you need a system with easy replaceable storage, we start with GNU/Linux", I spent the initial time to help anyone set up, providing some iron to some who can't, than start showing the system for simple things. And it worked even if these days most people have no knowledge even to install system software often asking for "web version, it's simpler".
Touching the complexity and the sorry state of IT things is VERY good in didactic terms. It teach an important lesson to start changing the mindset.
That's great and I support that approach too. I can understand why a career teacher might be less inclined to doing that though. Not saying anyone should be, but I can understand why some wouldn't accept "install Linux" as a viable demand.
I can understand as well: most teachers simply do not want to face a big load of potential issues and have not enough time to train their students enough so instead of teaching for their courses they'll have to replicate "The Missing Semester" (MIT) or even much more basic and time consuming knowledge.
But the fact is that IT in our society is our social nervous system and to be Citizen we must know that enough to operate alone, being not so easy tricked by some PR etc. Obviously most citizens have definitively not enough knowledge in that field but desktops today are books and libraries of yesterday. We can't have a modern culture without the modern tools of knowledge.
Knowing them is like being able to write with pen and paper before and as we can't progress in schools without knowing how to read and write so we can't in modern world progress without knowing to use a desktop properly. That's is. All the tentative to "lower the barrier" have created more issues than those they try to resolve. It's about time to admit it and correct the aim because as a society we are heading to a disaster fueled by some big tech interests exactly because of the ignorance of most.
Why does it need admin rights? Is it just because it relies on installers that need admin rights? There's no reason the whole thing couldn't be in userdir (or better, portable) right?
I remember my CS course using web tech (Codio) to teach coding, which doesn't seem like a bad option for educators, as far as dealing with cross-platform differences goes.
I will find MacOS acceptable when Finder will start treating Enter as Enter and not as rename. And the worst thing is that you can't even change this behavior.
I must admit that, when changing to Mac, I had to get used to that. (Btw opening is cmd+arrow down.)
Now I’m changing back to windows and have to get used to pressing F2 instead…
[VSCode + browser + docker or WSL2 image] = who cares?
This article feels about 4 years out of date which is more a commentary on how fast the industry moves and how sometimes not even Google can burst your bubble.
My personal observation is quite different - this is clearly written by someone who lives in his bubble.
Most obviously: most corporations do use Windows. Also for technology startups outside of the "web application operator" type (here it depends a lot on the local culture), many use Windows: often because this is what the customers use, and the software/service of the startup has to be compatible with the ecosystem of the customer.