Developing for Linux on Windows - Scott Hanselman - NDC Porto 2022
Вставка
- Опубліковано 8 вер 2024
- Can you really use Windows to develop Linux apps? Should you? How real is WSL (Windows Subsystem for Linux) and how close is it to reality?
Join Scott Hanselman as he walks you through the state of the art of Linux on Windows. What's possible, what's not, what about the Windows Terminal and Docker? Tons of lives demos in this highly technical session.
Check out more of our featured speakers and talks at
www.ndcconfere...
ndcporto.com
as a hardcore GNU/linux user, but not windows hater, I have to say that this talk is a great resource to show win users an easy way to embark on the power of GNU/Linux. WSL is a great way to get a Linux Environment without setting up a dual boot and messing with partition tables. Thanks for sharing!
this has nothing to do with my daily life, I thoroughly enjoyed this hour
This what happens when a genius gives a presentation, I respect Scott a lot and he's one of my inspirations in tech.
As someone who just started using wsl recently, this video blew my mind. I didn't realize you could do so much with wsl. Particularly the explorer trick. Amazing talk!
This talk a a bit all over the place and I love it
Amazing talk. I had no idea WSL had advanced that far. And just for fun, I installed gimp and ran it from ubuntu on WSL, and it just worked. Wow.
Scott Hanselman is a global treasure. The amount I've learnt hearing him speak is priceless!
Sooooo informative session. As always Scott's talks are amazing.
One of his best sessions. The nostalgia that popped up was cool.
Great presentation. Very informative. Brought back a lot of good nostalgia as well. :) Well done, Microsoft, on WSL.
This is the best talk about modern development I've seen in decades concerning Windows. I'm back to Win from Ubuntu as my primary OS after 12 years. Infeasible a few years back but I'm happy! It's always a pleasure to hear an OG get into the "why" things are that way simply and it makes sense. That context is important. It's not magic. Gives the broad overview of how things fit that is usually missing from the "How to build X with X" crowd that just glosses over the reason things work. The TCPView and Terminal stuff is wonderful. Thanks so much!
the best part is actually the dev container for vs code, that solves an issue I always had (too many extensions for different projects)
TTYs use CR+LF too behind scenes (and emulation does that too); in fact, real TTYs often require extra time to reposition the head in addition to the sequence (often handled by sending NULs); this is one of the reasons that prompted Multics to have a streamlined I/O translation framework (idea inherited by Unix, called "line discipline"), which also made adding extra features easy; using just LF represents a saving of 2.5%-3% depending on the nature of the file (based on modern UNIX code and documentation files), and storage was extremely expensive back then, plus these were research products (innovation + little baggage). LF was chosen over CR because in practice CR was also used to fake a boldface in real TTYs (also works in matrix printers). Windows inherited CR+LF usage from DEC, indirectly, through DOS, for compatibility with CP/M. DEC systems were dumb, and CP/M was heavily influenced by DEC's TOPS-10 in all aspects because Gary Kildall used it for development and thus wanted compatibility.
Do you have an explanation why macs pre-osx used cr alone?
@@OlivierDALET I can only guess they didn't take into account other uses of CR and they didn't have TTYs, the TRS-80 also used CR. Interestingly LF was standardized long before these microcomputers: in 1963, ISO drafts of the 646 standard already included the use of either CR+LF or LF; pre-dating Multics by about a year. ASCII was ammended in 1968 to the same effect.
@@IsmaelLuceno That's some precise knowledge!
Fantastic talk, Scott - really enjoyed hearing more about WSL (or should that be LSW 😂), also great hearing the history of consoles 👌🤓
Thanks Scott, I enjoyed it; very. 😍
I started using WSL just a few months ago, and installed Windows Terminal just recently. Yep, absolutely great stuff, both are amazing. If I had only seen this talk before, it would have saved me a lot of trouble I learned the hard way... And now I see the background behind that old CMD program, that I have been hating with a passion, since I usually work on Linux command line terminals (real and git-bash-mingw ones), that have always been much much better.
Amazing talk
Love the work that has gone behind WSL. But I just hate that I have to use a mouse every now and then on a windows machine. TIL every windows process has an interactive window attached
@56:23 "Googling with Bing" is the best quote!
This is pretty good. I tried WSL some time ago (1 or 2 years) and it was using lots of ram. Maybe it's because I tried to go full Hyper-V? From the video, user experience seems pretty good now
For anyone reading this comment, I found out in the mean time that you can set a memory limit for WSL. Search for the .wslconfig and wsl.conf files. Memory used by WSL is shown in the task manager under the Vmmem process.
@@DF-ss5ep when i used it 2 years ago, it still consume memory even though i'm not run anything on WSL. And by default it will consume a half of your memory. Is that still a thing now ?
@@fajara.r1379 I haven't tested this, but I saw someone's blog claiming to have it running with a 3GB limit - you set this in the ~/.wslconfig file (in windows) with memory=3GB. Should be enough to run at least some simple apps in docker.
I have it running at the moment, with docker and a ubuntu distro and it's using 1.5GB.
I’ve been using Wsl2 for a couple months, Microsoft did a fantastic job, switched from jetbrains ides to vscode
Many years ago this experience was unthinkable, ask Steve Ballmer and his "Cancer view from Linux". It was resistance to change and fear to the opposite way to do things in Microsoft. I love linux and I'm very happy with this effort from Microsoft. A good example that fear to opposite ideas or antagonistic situations is not well funded and maybe it is better to ask ourselves what if... Linux and Windows work together! Still, work to be done but this is a good signal. Talk was asome!
1:14 "Where the Sound Card works!" HAHA LOVE THIS! SO APT AND STILL FUNNY. 👍👍💛💛🤣🤣
I do all my work on wsl and it's freakin awesome
Now there is audio!
It was XTree for me and I am still using Win32 ZTree to this day! For tagging and searching source code files nothing beats it!
Praise the cameraman. Dude was working overtime to keep Scott in frame the whole time lol.
Total Commander for the win!
I code on Mint and run on Windows and Mac. Rider is great.
We want native USB :)
very interesting presentation!
In the last few years I used to work with linux only for web development. Now I started to use wsl2. It was terrible in the beginning (few years ago) but now I gave it another try and it seems to be a nice experience.
One thing is that I needed to deactivate the wslg (which is used for graphical stuff in wsl). My problem was that if I pressed printscreen key, everything started to flicker every second. if I pressed printscreen multiple of times, everything flickered even more. After hours of debugging everything, I found the culprit. wslg. Don't know if thats a wsl2 bug or a problem with my graphic card drivers.
And wslg was also starting strange remote desktop processes. The first time I saw multiple remote desktop processes, I quickly disconnected my internet... I thought I was being hacked and someone was watching my screen xD
I use WSL at work every day because for some reason git is really really slow on Windows. It's absolutely fantastic.
AFAIK the reason is that git uses lots of tiny files, which is fast on Linux, but for various reasons slow on Windows. (Some of the reasons: virus scanners or any kind of file system hooks; and the way Windows file systems are implemented there is no general OS level file lookup cache but one in each file system and stuff like that wich makes it all more complicated than on Linux. Somewhere there was a talk about these issues and how Microsoft is working on fixing them, can't remember the name of the talk or anything.)
Excellent talk. Took me down the memory lane. Microsoft is doing wonderful things.
correction. Gimp is Photoshop for everyone not just for linux
Audio is fine. Great talk!
Good explains
The biggest benefit of wsl is it just works out of the box. It does exactly what you expect.
Finally the year of the Linux Desktop... and it's on Windows
Seeing that will can be updated out of band with respect to windows update, can I hope to see wslg on win10?
Using WSL2; Great Job, guys!
AMAZING talk! My kids were yelling and I just couldn't stop listening! Haha!
Fantastic talk. And impressive work from MS. As a Mac user I'm jealous.
Although it feels like Windows will switch to Linux as the default OS. As soon as it's not unprofitable enough.
That'd be great!
Fantastic talk Scott!
Impressive, nice presentation.
There is audio
Damn I love programming I love hardcore nerd vids like this
53:57 when the customer falls, they fall into the pit of success.
I'm about half way through; enjoying the talk. But really really wishing he'd picked a better mirror for cygwin because chances are good it would have installed quite a lot more quickly with a better site selection... Oh well.
I think it may have just been the really crappy WiFi in the conference centre!
Bah, I was hoping this was for developing Windows software on Linux.
I'm not sure how your reached that conclusion from the title "Developing for Linux on Windows"
Microsoft only needed 22-ish years to join the 21 century. And they are still not there...
That a side, Amazing talk! :)
did any one get the "ghostbusters" reference in there? "cat'S and dogs live together.... mass histeria" :D nice touch!
What's up with cameraman?
At work we're stuck on WSL1 because WSL2 bypasses the windows firewall. Is there any effort to fix this issue?
50:28 No, not surprising. People were calling .NET exes "natively" for almost two decades. You only need a binfmt kernel module which detects the filetype and handles this with some interpreter. Adding a bridge through this technique suggests itself.
weasel is much easier to understand
int 21h calls were called system calls, but granted some people referred to them as doing soft interrupts
with steamos being what it is:
the moment you realize that you are still running windows for no other reason then pure force of habbit
hmm ... the linux kernel can run anything ... as long as there is an interpreter for it
Impressive efforts. One thing I could not know where is the shared folder?
See 52:00 👍
@@alanjrobertson Many thanks Allen!
WSM (Windows Subsystem for Mac) would be great! I'm having to buy a new "devbox" MacMini for no reason other than that Apple ain't maintaining it anymore... Microsoft has its flaws but at least my VB6 games from middle school still runs
Amazing how it just works for him, I've tried different distributions and none of them was able to run apt properly…
It just works for millions of folks. If you can explain what went wrong for you we can try to debug it?
it has significant ram overhead for some reason, but it's surprisingly robust
running gui apps out of it with the hacky x server in windows 10 is actually viable
granted most of my exploration into wsl was due to being limited to a windows system at work (once they let me pick what I wanted - went back to comfort of arch, I need that kde and btrfs)
of course it has overhead, significant performance issues when you run a 20 docker container emulating a kubernetes deployment - 16GB laptop simply went unresponsive after it went into swap (pretty much the cause of why they let me pick my choice) - linux on the same machine works with 6 GBs of ram to spare (I keep my swappiness low)
Linux is IN Windows
Windows has pinned apps, a start menu and pinned apps in the start menu, but people keep using shortcut on desktop, just like windows 3.11 taught them to.
17:47 "Microsoft does not get credit for backward compatibility". Wish Microsoft allowed my i7-6700K to run Windows 11.
18:00 ehm, what? Where have I heard that? 🤔
Ah, yes: "Surprise!!! Your perfectly fine laptop is not going to the next version of Windows because it doesn't contain a TPM.
And neither will your Windows VM, *although it doesn't even run directly on hardware*, unless you do the magical simulate-the-TPM voodoo dance."
I abandoned windows 1.5 years ago and I cannot overstate how much happier I have been since. Native linux runs circles around Windows and it isn't spying on me
Audio ?
Why would anyone in his sane mind develop for Linux on Windows? The only reason to keep Windows on a PC is games. BTW I did not watch it, maybe there is a proof in a video.
good job on using bing lol
Funny video :), just install a double boot. Keep windows for gaming and video. Use Linux for development ! That it. Sooner or later windows will do the same as MacOs, using a linux core.
Yeah. No audio. :(
A microsoft audience doesn't even know what GNU stands for. Wow.
WSL is awful on Windows, your files are created with execute permissions by default, ssh
Embrace extend extinguish. Microsoft is so 1990's
How exactly do you extinguish Linux? Microsoft is also a contributor to the Linux kernel.
@@wolvAUS in 3 easy steps. you first embrace, then you extend, and finally you extinguish.
@@user-zq8bt6hv9k you can't extinguish linux even if you tried.
Also Microsoft is invested heavily in Linux. Pretty sure Azure runs on it.
@@wolvAUS People continuously fail to understand that a blade, knife and axe has different uses altogether, inspite of the fact that all of them cut things.
@@iamsantanubanerjee aight.
Microsoft forked Linux kernel… if it will go MS way you will get candy crush saga directly through kernel…
What on earth for? We should be moving away from Windows not continuing to support this bloated spyware OS.
because people love Windows; it has all the cross-platform dev tools and you actually use it to develop software conveniently for dozens of platforms, one of which is Linux; also because "year of linux as desktop" will never come and all those f*kheads like Stalman are just eating off your ignorance
Great talk Scott!