As VS Code Gains in Popularity, Microsoft Praises 'Inner Source' Development (zdnet.com) 169
It's been estimated that there are 24 million developers in the world. 14 million of them now use Microsoft's Visual Studio Code (VS Code) as their IDE, reports ZDNet, with five million new users arriving in 2020.
Julia Liuson, corporate vice president of Microsoft's developer division, tells them why: "The strategy for VS Code is really to support our any, any, any strategy. You can be a developer working with any programming language, working on any operating system and develop any kind of software." VS Code runs on macOS, Windows 10, and multiple distributions of Linux, it supports Arm64 on Linux, and runs on Raspberry Pi and Chromebooks. It's also available in preview form
Part of VS Code's popularity is the breadth of language extensions for C++, C#, Python and various Python libraries for data scientists, Java, and JavaScript/Typescript... "We have almost two million Python developers using VS Code and well over a million C++ developers using VS Code," said Liuson. "And even our Java usage is approaching one million...."
Liuson also talked about Microsoft's inner source approach to software development. The company doubled down on inner source in 2019, and recently highlighted its inner-source approach as a factor that mitigated the threat of the SolarWinds hackers accessing its source code. Microsoft didn't make up the term inner source and the approach means taking open-source development practices and applying them inside a single organization. GitHub and GitHub's Enterprise Server fits snuggly with this approach to help organizations collaborate but do so in private.
"Inner source means if you have private IP, but you're inviting other teams within the company to collaborate with you. That's the fundamental difference between open source and inner source. Today, it's very common in large enterprise..."
Julia Liuson, corporate vice president of Microsoft's developer division, tells them why: "The strategy for VS Code is really to support our any, any, any strategy. You can be a developer working with any programming language, working on any operating system and develop any kind of software." VS Code runs on macOS, Windows 10, and multiple distributions of Linux, it supports Arm64 on Linux, and runs on Raspberry Pi and Chromebooks. It's also available in preview form
Part of VS Code's popularity is the breadth of language extensions for C++, C#, Python and various Python libraries for data scientists, Java, and JavaScript/Typescript... "We have almost two million Python developers using VS Code and well over a million C++ developers using VS Code," said Liuson. "And even our Java usage is approaching one million...."
Liuson also talked about Microsoft's inner source approach to software development. The company doubled down on inner source in 2019, and recently highlighted its inner-source approach as a factor that mitigated the threat of the SolarWinds hackers accessing its source code. Microsoft didn't make up the term inner source and the approach means taking open-source development practices and applying them inside a single organization. GitHub and GitHub's Enterprise Server fits snuggly with this approach to help organizations collaborate but do so in private.
"Inner source means if you have private IP, but you're inviting other teams within the company to collaborate with you. That's the fundamental difference between open source and inner source. Today, it's very common in large enterprise..."
Justification for Cathedral Bazzar? (Score:5, Insightful)
Justification for costly IDE? (Score:2)
You may find part of the reason for it's Python popularity is some python IDEs are costly.
https://www.reddit.com/r/humbl... [reddit.com]
https://www.jetbrains.com/pych... [jetbrains.com]
Re: (Score:2, Interesting)
You may find part of the reason for it's Python popularity is some python IDEs are costly.
https://www.reddit.com/r/humbl... [reddit.com]
https://www.jetbrains.com/pych... [jetbrains.com]
IDE with python? What's wrong with a text editor and command line.
It never cost me a penny and I've never felt wanting for debugging crutches.
Re: Justification for costly IDE? (Score:5, Informative)
I had been using TextMate since 2007 for all my Python development and was quite satisfied with it. That was until We started using type annotation with Python 3 a couple of years ago and this has been a significant boost in both productivity and quality.
Thanks to IDEs that actually use the typing information I no longer have to guess the spelling if every single method or argument that I need to call. It makes refactoring a lot more reliable since all the instances of a class in a project are actually understood by the IDE.
Sure you can run mypy on the side, and you should, but regular text editors are not capable to have the understanding of what type you are currently using while an IDE like PyCharm can. I did try VsCode and it had too many glitches on our larger project. PyCharm does get slow, but that can be tuned, but it does understand your code base quite well.
Just download and try the free community edition for yourself, point it to the python environment you use for the given project and how nice it is.
It is not perfect for sure, I still use TextMate since I find the multi line editing, the global search and replace to be much better.
Re: (Score:2)
My programming doesn't tend to be 'large projects'. I develop algorithms for data analysis and processing. That usually stretches to a reading one or more files, doing stuff, writing it out again and dealing with command line arguments. The clever bit is the bit in the middle that fafs around with data.
So python is fine when the computational complexity is not terrible, C when it is, C++ when I have to use mpfr and a better algorithm if its still too slow.
As a result, type annotation doesn't really benefit
Re: Justification for costly IDE? (Score:2)
Re: (Score:2)
A year or two ago, I would have agreed with you. But I've been using VSC since then (switching from another very good text editor that I won't name here, which I used for ten or more years), and I have found at least one aspect of VSC very helpful: the Python plugin has a built-in lint that flags many of my errors before I even try to run the program. Much easier (and sometimes much faster) than waiting for Python to throw a runtime error.
There are probably lots of other things I should be doing that VSC
Re: (Score:2)
That said, I don't quite understand why VS Code became popular when the likes of Brackets & Atom didn't because they're basically the same thing and came much earlier. Atom in particular though because it was open source.
Re:Justification for Cathedral Bazzar? (Score:5, Informative)
Inner-source or Inner-sourcing is about using open-source code, open-collaboration and similar principles inside a company or organization. It was coined by Tim O'reilly in 2000. You can read the original coining of the phrase here: https://web.archive.org/web/20... [archive.org]
Also check https://en.wikipedia.org/wiki/... [wikipedia.org] for more details about the concept.
It is not closed-source or proprietary, it's the exact opposite of that.
Re: (Score:2)
Re: Justification for Cathedral Bazzar? (Score:3)
it is available on GitHub under an MIT license. Do whatever you want with it (except for releasing under the same name for trademark reasons.)
Re: (Score:2)
Re: Justification for Cathedral Bazzar? (Score:2)
Re: (Score:3)
You can look through the commit history of vscode and see examples of them accepting PRs from individuals that do not work for Microsoft.
Visual Studio Code source code is on GitHub (Score:2)
If you have not released your software's source code to a public in some feely available (free as in beer) way where one can inspect the source code, modify it, etc, that is the very definition of "closed source".
Visual Studio Code source code is on GitHub.
"This repository ("Code - OSS") is where we (Microsoft) develop the Visual Studio Code product. Not only do we work on code and issues here, we also publish our roadmap, monthly iteration plans, and our endgame plans. This source code is available to everyone under the standard MIT license."
https://github.com/microsoft/v... [github.com]
Re: (Score:2)
Inner-sourcing is about a company or organization making its internal code open-source to all of its employees, contractors and depending on the license that may include the public at large as well. It's also about using open source practices such as open collaboration and communication to develop open-source code inside that company.
In my experience, a company that only uses closed-source or proprietary software is more likely to depend on outside closed-source vendors for their software. If they do develo
Re: Justification for Cathedral Bazzar? (Score:3)
Literally the first sentence after the term definition in that Wikipedia article says that the software is proprietary.
"Closed" or "proprietary" are always in relation to the world, i.e. the public at large. Intra-corporation term fiddling doesn't change anything.
Re: Justification for Cathedral Bazzar? (Score:4, Informative)
No it doesn't. It says:
"The organization may still develop proprietary software, but internally opens up its development."
Note the word "may". It is saying that it is possible to use this technique for proprietary software, not that it is mandatory.
Sure enough, Visual Studio Code is open source.
Re: (Score:2)
Context is key. As far as "inner-source" is concerned, Wikipedia's "may" basically means that it's prorietary. If it was open, there'd be no need to call it "inner", they'd call it "open".
You don't call Linux, or Emacs, or Gnome "inner-source software", though they technically fulfill all the requirements. You call them F/OSS, because they fulfill a superset of "inner" which qualifies for "open" and for "free". The're open to anyone.
As soon as you choose to call something "inner-source", that's because you
Re: (Score:2, Informative)
Linux and EMACS don't meet the requirements. You don't seem to know what inner source is.
All it means is organizing your commercial development like an open source project, rather than like a typical engineering group. And as I pointed out, the product they are discussing this in relation to is Visual Studio Code, which is open source.
Re: (Score:2)
Organizing it like open source such that you don't pay the developers, or only pay them when they come up with a change on their own, with no management involvement, that meets the goals of the project and company?
Re: (Score:2)
Re: (Score:2)
Open source development styles... Not even sure what that is. Is there an Open Source Development Standard such that all the projects develop products the same way? I don't think so. If "inner source" means you have a guy named Linus at the top who occasionally throws tantrums then it's not much different from a lot of corporations :-) But if it means that when a project is dumped because the developers got bored and then someone else comes along and revives it, then how's that work in a commercial wor
Re: Justification for Cathedral Bazzar? (Score:2)
No, they're not, but this doesn't matter here. Again, context is key.
Free Software is software that respects the 4 freedoms (GNU).
OpenSource is a little more tricky because different people assume different things, but if you adhere to the Open Source Initiative (and FSF), it's in large parts and for most purposes similar to Free, but not exactly the same thing. But nuances are subtle, and RMS himself states that "the differences in extension of the category are small: nearly all free software is open sourc
Re: Justification for Cathedral Bazzar? (Score:2)
"Open source" is software with source provided openly by the developer. There's no guarantee you can use it for anything,
That was my stance, too. And it might have been true back then (dinner might have been long ago? :-)
But I recently actually dod read the OpenSource definition propagated by the FSF and the OSI, and you're pretty much guaranteed to be able to use it just as you would use FreeSoftware.
The differences nowadays are very, very subtle, probably mostly philiosophical, and deal with secondary issues. (E.g. your right to restrict the rights of others, MIT vs GPL license?).
I still or prefet the FreeSoftware simply be
Re: (Score:2)
What's the point though? Open source development is done the way it is because it is forced to; the developers may have never met each other, and any random bozo is allowed to look a the code and try to submit changes. This means you need a gatekeeper, or a set of gatekeepers. And if the guys submitting don't like that they're rejected then you may get forks. Maybe the fork is good, maybe it's bad, but from the standpoint of trying to manage an actual product, which is what a company needs to do, it's a
Re: (Score:2)
And it is, but at least they're not giving it a confusing name.
Inner source still makes it sound like closed source, which it is. Inner invokes "internal".
Re:Justification for Cathedral Bazzar? (Score:5, Informative)
Visual Studio Code is open-source under a MIT license.
https://github.com/microsoft/v... [github.com]
Re: Justification for Cathedral Bazzar? (Score:2)
Not completely. Some parts (like e.g. the Python language server) are privative.
Re:Justification for Cathedral Bazzar? (Score:5, Informative)
There's a MIT-licensed community build, VSCodium, but what you download from Microsoft does not have an open license, and this causes various restrictions in plugin usage [github.com], for instance.
Re: (Score:2)
Any Any Any sounds better than the EEE I guess.
Re: (Score:2)
Re: (Score:2)
The great woke-attack of the 2kâ(TM)s shows less than 1% of people can indeed shut down, cancel etc the majority. It is a little thing called dictatorship. And that is pretty much Microsoft business strategy ever since they started.
What's more of a dictatorship, private platforms choosing what they do and do not publish, or private platforms being forced to publish by diktat absolutely everything they are given?
Re: Justification for Cathedral Bazzar? (Score:2)
If you are always countering your opponents last move you'll always be a move behind. Microsoft may be a threat to free software but they aren't going to be in the exact same way that they were 30 years ago.
Re: (Score:2)
"Linux has turned the corner, it dominates windows...10, in so many areas, all that is left is the diminishing desk top. They are used on the desktop but they are hated there just as much as every where else." What universe do you live in? I suppose you could say that Android is really Linux under the hood, but that's sort of like saying a Volkswagen Beetle was really a motorcycle under the (back) hood.
vi + ed (Score:2)
Re: vi + ed (Score:2)
Preach. Neovim solves anything regular vim hasn't.
Blown away tools written before I was born are my preferred tools.
Re: (Score:2)
VSCode isn't an IDE, it doesn't have the nice refactoring tools that even Eclipse has.
This one thing: it's Javascript (Score:4, Informative)
Javascript inside. You have been warned.
Re: (Score:2, Insightful)
If anything that is a testimonial for javascript, not a buyer beware
Re:This one thing: it's Javascript (Score:5, Interesting)
Really? I was annoyed to find a random process running after exiting the code editor. I expect that's just the beginning of the surprises.
Re: (Score:2)
Re: (Score:2)
I suspect that you do not know what is meant when adults use the term "process".
Re: (Score:3)
It's a testament to how fast you can run in a three legged race. Professionals don't let professionals use Javascript. You can do it, but.
Re:This one thing: it's Javascript (Score:5, Interesting)
It's not a testimonial for Javascript. It's a warning [slashdot.org].
Re:This one thing: it's Javascript (Score:4, Informative)
Re: (Score:2)
Re: (Score:2)
Typescript is a full language (and superset of JS) which compiles to Javascript
That's exactly what OP said. Maybe lose the attitude?
Monocultures are not generally good... (Score:2)
Monocultures are usually not good things as they introduce massive weak points.. You wouldn't want every tree to be the same species. If a blight arose you're screwed.
You wouldn't want the majority of the world's coding environments to be vulnerable to a devastating bug or security issue occurring in a single IDE and/or deployment system.
Re: Monocultures are not generally good... (Score:2)
What sort of devastating bug in a text editor would pose a problem to the world that couldn't be fixed by rolling back a version?!
Suddenly the world's Tabs become spaces? Every source tree gets switched to UTF-8? Just convert it back or roll back a version.
Comment removed (Score:3)
Re: (Score:2)
I'm partial to WebStorm for JavaScript projects. Most of my team uses VSCode and when I observe them they seem to be missing refactoring and code inspection features that I take for granted and couldn't live without, though I've been told there are plugins for VSCode that can add those.
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
I'll use whatever tool I find is best for the job.
Acording to TFS, "inner source" refers to collaborative projects between teams within a company. So yeah. You can use this if it works for you. But I suspect that if its a "team" project, you will have to use the tools that the team selects. Particularly if the collaboration hooks are tightly bound to VS Code.
Where I used to work, we'd always have one weak-willed dev that got invited to Microsoft workshops. And he'd come back with some new tool suite that they'd foist on him. And then if we didn't all swit
"Inner Source" is not new - "Source Licenses" (Score:2)
Microsoft didn't make up the term inner source and the approach means taking open-source development practices and applying them inside a single organization. GitHub and GitHub's Enterprise Server fits snuggly with this approach to help organizations collaborate but do so in private.
This is not anything new. Proprietary code is sometimes made available under binary licenses or source licenses. Under the latter you may only distribute binaries, the source may NOT be distributed, but you are free to modify it and ship your modified binary. This is vital as it allows the licensee of this code to control their own fate and not be dependent upon the original developer. Sharing changes, usually bug fixes, upstream was common.
"Inner source means if you have private IP, but you're inviting other teams within the company to collaborate with you. That's the fundamental difference between open source and inner source. Today, it's very common in large enterprise..."
No, that is mistaken, note that inner source allows collaboration w
MIT LIcense (Score:2)
It's under the MIT license. So in this case saying "inner source" means management will sign off on open-sourcing your code.
Re: (Score:2)
I get the whole "license" thing where you bring in an outside collaborate, perhaps get them to sign an NDA, they get access to source code for a time, etc.
Typically in a "source license" the only restriction is keeping the source proprietary, you may only distribute binaries and you may not sublicense access to the source. So you have access to it in your project forever. Like I mentioned before, it keeps your fate in your hands since you have a perpetual license to the source.
Is this just an old concept with a new name?
Sort of, but I'm also addressing the misconception of open source being required to get the rights to source code; that source access can happen with proprietary code too. All that open
There may be a problem for some? (Score:2)
Look - when you have the skills to see an issue and the experience to know how to overcome it, then this is not really a problem.
If GitHub gets in the way it will be replaced. Git is after all open source.
If VSCode / VSCodium starts to be annoying, likewise. Screw it. You could try Eclipse?
Same with TypeScript. It will just fork if there is a problem. This is the way of open source code.
Learn JavaScript. Learn your favorite basic editor. (vi, vim, ex, ed, nano, emacs, whatever) You are safe for some time.
Do
so many vs code repo included in rPiOS repo list (Score:5, Informative)
And it's even been done to the rPiOS server version.
It never ceases to amaze me at how naive corporations and organizations become when the MS MiB come to visit and promise wonderful things as long as you give up your soul. And the souls of all your customers too.
LoB
Is This A Paid Advertisement For Microsoft (Score:2)
So it's CLOSED open source code. Got it. (Score:2)
"Inner Source" are just WEASEL WORDS.
inner source (Score:3)
Funny how so many people completely missed the concept of inner source. Yes it's not open source, but nobody says it is. It's using open source project management methods to develop proprietary software.
If you ever worked in a large software corporation, I think you will understand. Often there are silos of people working on various software products, and you as a developer within one team, you have no access to code of other teams, even though you are forced to use their software. That's frustrating as hell, you find yourself using software with bugs that would be trivial to fix if only you could see the source.
Inner source is just an answer to that. As a developer within the corporation, you can see all the source code, even for software you don't officially work on, and you can create PRs and contribute to the source just as if it was open source software.
It's nothing more, nothing less. It's still proprietary software, so yeah that's not ideal. But for us who work in a corporation because they like to eat food, it does two things:
1. You can finally fix those annoying bugs you had to workaround for years. This improves software quality for everyone, similarly to how open source improves software quality for everyone.
2. It teaches the tie-wearing MBAs that closely guarding the source code is not necessary, in fact that making something more open basically gives you free resources to work on your project (that's how they tend to think about it).
This is just the result of developers used to working with open source software slowly transforming the corporations from inside. I see it as a good thing. Yes, it could go faster, yes, it's just one step on the way. Still better than no step.
How many people with 3D printers downloaded? (Score:2)
After getting my 3D printer last year I had to download VS Code, the free version at least, in order to update the firmware of my printer. I'm not doing any development with it. If I add something to my printer or want to update the firmware I compile the firmware and send it to the printer with VS Code.
So how many of those 5M new people last year were just people that got 3D printers. I was one of them.
Re: Developers! Developers! (Score:2)
Far too busy telling everyone how to act... They don't need to produce anything to be out there trying to control everything
Re: (Score:3)
It's just an programmer specific editor with plugins. You still use GCC, CLANG/LLVM or another compiler to compile. You don't run an infrastructure on it any more than an infrastructure runs on VI. Emacs, Eclipse or Notepad++.
Re:Developers! Developers! (Score:5, Funny)
> You don't run an infrastructure on it any more than an infrastructure runs on VI. Emacs, Eclipse or Notepad++.
Ah, I see we have an inexperienced emacs user here.
Re:Developers! Developers! (Score:5, Funny)
> You don't run an infrastructure on it any more than an infrastructure runs on VI. Emacs, Eclipse or Notepad++.
Ah, I see we have an inexperienced emacs user here.
There are no experienced emacs users. I think the current record for comprehension of the full feature set is about 13%.
Re: Developers! Developers! (Score:2)
That's because no human uses more than roughly 13% of his brain, and emacs is probably on par with it. Or something.
M-x doctor. 'nuff said.
Re: (Score:3)
> You don't run an infrastructure on it any more than an infrastructure runs on VI. Emacs, Eclipse or Notepad++.
Ah, I see we have an inexperienced emacs user here.
There are no experienced emacs users. I think the current record for comprehension of the full feature set is about 13%.
So, about double the record for C++ then.
Re: (Score:2)
RMS is getting on in years, it's more like 12% now.
Re: Developers! Developers! (Score:2)
Eclipse is junk? (Score:2)
The CS department at the U teaches intro Java programming with it, so they are junkies?
By the way, students can set it up on their Linux/MacOS/Windows laptop, so no more computing center.
Re: (Score:3)
Eclipse is OK, if you're doing Java development, and you structure your projects in the "Eclipse way". It's incredibly frustrating in any other situation. It's also better if you can isolate instances of it for different tasks. The Eclipse instance you use for Android development should be completely isolated from the instance you use for working on your SWT desktop apps, and so on.
VS Code isn't really an IDE, it's a glorified text editor. I don't use it. I don't like the bloat of Electron, etc. I als
Here an Eclipse, there an Eclipse, everywhere an E (Score:2)
It takes some hacking, but you can create a portable Eclipse directory with Eclipse and its Java runtime.
The reason I say hacking is that you can use the predefined directory variables so your projects are all directory relative.
I have different Eclipse directory bundles sprinkled across all the computers I use on 3 different OS's!
CS faculty (Score:2)
Does that make CS profs teaching Intro to Programming junkies?
Pushers?
The first taste is free, but the plug-ins you need will cost you dearly?
Re:Those who haven't learned vim.. (Score:5, Informative)
VS Code is a cross-platform, open-source code editor. So, lock-in isn't an issue here. I suspect you're confusing it with Visual Studio, which I've seen multiple times in the comments already. Sort of understandable, given the name, but VS Code has been a thing for a while now.
Re: Those who haven't learned vim.. (Score:3)
Re: (Score:2)
Those who haven't learned vim.. are doomed to use junk with less features and vendor lock-in.
... and those who have learned vim are doomed to use only vim, forever, because their muscle-memory has calcified and will no longer accept any other keybindings ;)
Beer bloat (Score:2)
So I bloaty is this Free-as-in-beer thing?
Re: (Score:3, Informative)
Visual Studio Code is not a huge IDE like Visual Studio. VSC is only a 91.9 MB RPM.
Re: 14 million of 24 million (Score:2)
It might be small, but it sure sucks up a huge amount of data from its users.
Re: (Score:2)
That's huge for an editor.
Re: (Score:3)
* WITHOUT extensions, compilers, or even syntax highlighting for common languages.
Let's make sure the comparison is fully clear here
Re: (Score:2)
That's what makes VSCode good. It's not tied to any particular compiler or workflow or language. Everything is a plug-in and scriptable, and not in a shitty way where you have to build an IDE yourself because most of it just works automatically.
Say you have a makefile based project, you open the director in VSCode and it will set up the needed syntax highlighting, build commands and so forth automatically. There are hundreds of open source extensions for whatever specific tooling you have, if you want a nic
Re: (Score:2)
Soo... like Emacs but not as good?
Re: (Score:3)
65.9 MB
Re: (Score:2)
randomly disappearing cursors, text selections, cursor movement to unexpected locations in the text
I think you described the Emacs experience for the average user perfectly.
Re: (Score:2)
works fine for me. maybe you're doing it wrong.
Re: (Score:2)
works fine for me. maybe you're doing it wrong.
What, you mean actually running it? Ah, shit, there's my mistake, Microsoft software always works just fine as long as you don't try and do something crazy like, for example, use it.
Re: (Score:2)
yeah, i use it all day every day to do my work. works great for me.
again: maybe you're doing it wrong.
Re: (Score:2)
again: maybe you're doing it wrong.
And how exactly do you type in text and move the cursor around wrong?
Re: (Score:2)
> And how exactly do you type in text and move the cursor around wrong?
whatever you're doing to make it do this:
> randomly disappearing cursors, text selections, cursor movement to unexpected locations in the text, how hard can it be to write a graphical edlin that isn't riddled with glitches all over the place?
Re: (Score:2)
Emacs. Then I can just code up my own lisp pony.
Re: (Score:2)
I'm pretty sure Emacs already has a pony mode, although the pony has twelve legs.
Re: (Score:2)
> not much good for anything else
really? i use it all day at work for developing in c++, html, typescript, python, c#. mostly on linux VMs and remote hosts remotely via vscode-remote from my windows desktop. TSlint is slow, yes, but that's not really got anything to do with vscode.
Re:PR garbage: it's still closed source. (Score:5, Informative)
Re: (Score:3)
There is a MIT-licensed community build, VSCodium, but what you download from Microsoft does not have an open license, and there are some restrictions [github.com]: for instance, the C# debugging plugin is closed-source, and cannot legally be used with the MIT-licensed version.
Re: (Score:2)
Re: (Score:2)
Tim O'reilly coined the inner sourcing phrase in 2000 in an article talking about the benefits of a company or organization using open source and open collaboration.