7 ms·
Official support for Python, Node, and Docker in Visual Studio. Full Linux shell on Windows. You know how almost every developer has a Macbook? I think that mig
by symlinkk 10y ago
Official support for Python, Node, and Docker in Visual Studio. Full Linux shell on Windows. You know how almost every developer has a Macbook? I think that might change.
- greyman 10y agoI am also on Windows, Total Commander and Visual Studio Code are my main tools. What is a general experience with Linux shell? I don't have it since I am on Win8, but isn't it still better to use VirtualBox?
- ShinTakuya 10y agoYep Virtualbox is still the way to go. I actually run it the other way around at work, Linux on my host and Windows guest. Seems to work pretty well. I doubt Linux shell on Windows will ever be that good until Microsoft makes a new file system (or adopts an existing Linux based one, although that's unlikely given differences in how the two OS's do permissions and such).
- symlinkk 10y agoPersonally I think you only should use Virtualbox if you're using Linux apps with a GUI. For every other situation WSL has less overhead (no, I don't have a citation for that) is far easier to start (literally just type "bash" in any shell) and interops better with your existing filesystem (cd /mnt/c/ and you can access everything on your C:/ drive, it's that simple).
- ShinTakuya 10y ago>WSL has less overhead In my experience, Linux in Virtualbox is a lot faster then WSL. I'm not talking barely noticeable here, I'm talking operations taking 0.2 seconds vs 10-15 seconds (on an SSD) in the worst case. It's literally faster for me to do shit in Linux and rsync it back to Windows than it is for me to deal with WSL at this point. The only overhead is memory and CPU, of which I have plenty. I don't have plenty of time. >far easier to start I just keep my Linux virtual machine open, so it's just an alt-tab away. At work, I run it the other way around (Windows as the virtual machine). It's basically the same story.
- 0xFFC 10y agoThe bottleneck is file system as far as I remember. I can compile my a linux kernel in VM with static file system in reasonable time. But try to do it in WSL, the file system overhead makes it miserable (Make and Configure open and close file extensively). other than that, ordinary computation is almost same as Desktop Linux (better than VM). There was a benchmark on http://phoronix.com http://phoronix.com which proves my point.
- ShinTakuya 10y agoOh I get that, I mentioned the file system being the culprit elsewhere in the thread. Doesn't really change the point regardless, the gist of the matter is that until Windows fixes its filesystem it's much more efficient for me to run it in a VM than to use WSL.
- gspetr 10y agoAllow me to hijack this thread with a question to a wider audience: Has anyone managed to run a VM with Linux on a Windows host that has acceptable performance? My previous attempt a while ago to run Linux on a Win7 host via Virtualbox was unsatisfactory because the performance of Linux's GUI was very slow I tried to run PyCharm but it was painfully slow with noticeable lag.
- ShinTakuya 10y agoI've never had performance issues with Linux in a VM. Barely slower than running it dual booted. I mean, I run light WMs (originally AwesomeWM, but the past year or two I've been using xmonad). But I don't remember the interface being slow when using, say, Gnome 3. The only things I can think of that might be special about my setup is that I generally: 1. Run the VM off of a different physical disk than the host OS (only necessary if you're using HDDs) 2. Allocate generous amounts of RAM (4-8gb) even though very little RAM is required. 3. Use machines that have 4+ cores.
- ShinTakuya 10y agoDisagree. Not in the near term anyway. Windows docker support is sketchy at best, Linux shell is slow (due to things like the file system) and a lot of python/node developers don't feel the need to use an IDE. Don't get me wrong, I use Windows as my primary OS and I'm a Microsoft fan (love my Surface Pro 4) but I don't see the immediate pull here. I certainly won't be using Windows on my work PC. Microsoft's definitely doing the right things these past few years so I'm definitely excited for the future. I suspect the we'll see more people adopt .NET before we see Mac/Linux though.
- thr0waway1239 10y agoBefore you throw away your MacBook, also consider that a lot of the 'ecosystem', e.g. the way you install libraries such as NLTK have a 1 step process for installation on Mac/Linux and a may-or-may-not-work multistep process for Windows, with sometimes sheepish apologies from maintainers of said libraries that sometimes they simply couldn't get it working and couldn't afford to waste any more time on it. Example: http://www.pitt.edu/~naraehan/python2/faq.html http://www.pitt.edu/~naraehan/python2/faq.html Read the question "How do I install NLTK 3.0 (Windows)?"
- dagw 10y agoOr you could just use anaconda and type 'conda install nltk'. edit: most of the steps in the instructions you linked to are how to install pip, which is now included if you install the latest version of python. So on a current version of python the instructions should reduce to run: pip install pyyaml nltk
- thr0waway1239 10y agoYou are reinforcing my point in a way. If you look at the nltk site's docs on installing on Windows [1], you see there isn't even any mention of anaconda. In fact, there is basically a set of links asking you to go and figure it out for yourself. Either the maintainers of the NLTK project are not aware that there is a better way (using anaconda like you suggest) or they are aware but haven't seen any good reason to update their documentation. So why do they (and broadly the 'ecosystem') not update their docs to be more Windows friendly, or to even develop their software so as to be pain free to install on Windows in the first place? That is the ecosystem effect at play here. How many people are likely to stumble on to your comment when they search "install nltk on windows"? On second thoughts, with my double quotes and all, now they might :-) [1] http://www.nltk.org/install.html http://www.nltk.org/install.html
- xor_null 10y agoIts not just windows is getting better, but also macos getting worst every release
- pjmlp 10y agoIt is pretty OK for those of us that don't care about UNIX and POSIX. I am quite happy just with XCode, Swift, Objective-C and OS X Frameworks.
- lultimouomo 10y agoThat's interesting, as Windows developers have always been very happy with just Visual Studio, C# and WinForms, and now Windows is becoming less horrible for people used to POSIX. It does look a bit like Apple and Microsoft are on a road to switching their attitudes and roles. Who knows.
- pjmlp 10y agoYes, my Windows experience goes back to Windows 3.1 and I think Windows NT architecture is quite good versus traditional UNIX ones, specially when one bothers to read all relevant documentation like the Windows Internals book series. Lack of POSIX support only bothers me when trying to compile software targeted to pure UNIX systems.
- roryisok 10y agoCan someone explain to me what Linux shell has over powershell that makes it so indispensable for developers? I'm a developer and I don't use Linux. I'm dual booting Ubuntu at the moment because I want to get more familiar with Linux, but I can't see how terminal/bash is so much better?
- smcl 10y agoI can't speak for everyone, but for me a lot of the unix-y utilities and commands tend to do 99% of what I need with a couple of keystrokes and are very composable through piping/redirection. It's possible that equivalents exist on powershell but I feel like they're verbose and hard-to-remember or perhaps just plain different from what I'm used to working with for the last decade or so on OS X/Linux. For example if you need to access an environment variable like Path - on Bash you just use $PATH the same way you have forever. On powershell it's $Env:Path - maybe this makes more sense ("in the current execution environment, access the Path variable") but I had to google it to check and my first instinct was "oh it's something like %PATH% I think..." - which is the old windows cmd.exe way. So maybe the biggest "pro" for the traditional linux command line way is "inertia" - but I'm sure someone else has a much more satisfying answer than mine
- ogrisel 10y agoIf you want to quickly check that your code works on a Linux server, the windows subsystem for linux is quick way to do this without spawning a VM. That does not replace continuous integration on a real Linux host but that might be a good way to do interactive development and debugging of cross-platform code directly on windows.
- mhenr18 10y agoNot until Windows HiDPI support stops being a disaster.
- alex_hitchins 10y agoYes, they really have to do something with this. I was surprised how bad it was when I got my XPS15. You can increase the DPI levels and on the surface it looks fine, until some dialog opens and is the size of a stamp.
- WayneBro 10y agoWhere is the disaster? I run Windows 10 on a 4K monitor all day long and I see no disaster...
- sho_hn 10y ago> You know how almost every developer has a Macbook? *web developer I don't know to many good systems engineers or security/forensics people who don't use Linux.
- rkangel 10y agoAnd embedded is mostly on Windows.
- shakna 10y agoDefine 'embedded'. Most embedded stuff I work on has less than 100kb memory. No way in hell it could run an OS. But if you meant programming the devices... So many vendors compile chains simply don't work on Windows and are badly hacked up versions of gcc.
- rkangel 10y agoYes, I was referring to the development platform: the platform which runs the tooling for development, cross compilation, downloading, debugging etc.. In my experience the decent vendor provided setups that actually work are all on Windows. STMCube and Keil for ST, Atmel Studio, Code Composer Studio for TI. Yes you can absolutely compile on *Nix using GCC, but none of the vendors target their tooling for anything other than Windows.
- shakna 10y ago> none of the vendors target their tooling for anything other than Windows. Atmel [0] absolutely does. ST [1] does. TI [2] does. You want to run that one by me again? [0] http://www.atmel.com/tools/atmelavrtoolchainforlinux.aspx http://www.atmel.com/tools/atmelavrtoolchainforlinux.aspx [1] http://www.st.com/en/development-tools/stm32cubemx.html http://www.st.com/en/development-tools/stm32cubemx.html [2] http://www.ti.com/tool/LINUXEZSDK-SITARA http://www.ti.com/tool/LINUXEZSDK-SITARA
- 10y ago
- odiroot 10y ago> You know how almost every developer has a Macbook? ...in Silicon Valley bubble?