TNS
VOXPOP
Will JavaScript type annotations kill TypeScript?
The creators of Svelte and Turbo 8 both dropped TS recently saying that "it's not worth it".
Yes: If JavaScript gets type annotations then there's no reason for TypeScript to exist.
0%
No: TypeScript remains the best language for structuring large enterprise applications.
0%
TBD: The existing user base and its corpensource owner means that TypeScript isn’t likely to reach EOL without a putting up a fight.
0%
I hope they both die. I mean, if you really need strong types in the browser then you could leverage WASM and use a real programming language.
0%
I don’t know and I don’t care.
0%
Cloud Services / Software Development

This Week in Programming: Visual Studio Code Arrives on the Web

The hottest development news for the cloud native computing community in Programming this Week.
Oct 23rd, 2021 6:00am by
Featued image for: This Week in Programming: Visual Studio Code Arrives on the Web

Microsoft continued its march toward developer dominance this week with the launch of Visual Studio Code for the Web, a lightweight version of the company’s highly popular (mostly) open source code editor that runs fully in the browser.

Now, before you go getting too excited, VS Code for the Web isn’t really a fully-functional version of VS Code running in the browser, as it has no backend to back it up, which means its primary purpose is for client-side HTML, JavaScript, and CSS applications.

“Since VS Code for the Web is running completely within the browser, some experiences will naturally be more constrained, when compared to what you can do in the desktop app. For example, the terminal and debugger are not available, which makes sense since you can’t compile, run, and debug a Rust or Go application within the browser sandbox (although emerging technologies like Pyodide and web containers may someday change this),” Microsoft explains, adding that code editing, navigation, and browsing are “a bit more nuanced”.

That is, VS Code for the Web is able to provide syntax colorization, text-based completions and other such features for popular languages such as C/C++, C#, Java, PHP, Rust, and Go, while TypeScript, JavaScript, and Python are “all powered by language services that run natively in the browser” and therefore provide a “better” experience, while those aforementioned Web languages, such as JSON, HTML, CSS, and LESS, will provide the best experience. Extensions, meanwhile — which are among the top reasons for using VS Code — generally work for user interface customizations (and can be synced with your other environments), but, again, not so much for those back-end features.

Caveats aside, VS Code for the Web does, indeed, offer a lightweight, available-anywhere code editor for things like your tablet, your Chromebook, and heck, even your XBOX.

Now, all that said, we have to ask — where are all the other major cloud providers in this transition of the development environment to the web? While we’ve heard nothing but remote this and remote that for the last year and a half due to COVID, it almost seems like Microsoft is the only one paying any real attention. Every move the company makes seems to be working to get their hooks sunk deeper into that ever-present “developer experience” you hear so much about.

While companies like Amazon and Google seem to be sitting idly by in this arena, Microsoft is not the only company focused on providing remote developer experiences. The Eclipse Foundation, for example, last year offered what it said was “a true open source alternative to Visual Studio Code” with Eclipse Theia and Eclipse Foundation executive director Mike Milinkovich said he expects this to be just the beginning.

“We have been saying for years that the future of developer tools is the browser. Developers already use their browsers for the vast majority of their day-to-day tasks, with code editing being amongst the last to move,” Milinkovich wrote in an email. “Microsoft’s recent vscode.dev announcement is a recognition of this trend. I expect that every serious cloud vendor will be following suit over the next few quarters.”

GitPod, meanwhile, has been hard at work in this very same arena, with its own launch just last month of the open source OpenVSCode Server, which also lets developers run upstream Visual Studio Code in the browser. Gitpod co-founder Johannes Landgraf points to GitHub1s as the original inspiration for these projects, and points to their lack of compute as a defining characteristic.

“Inspired by GitHub1s, github.dev/vscode.dev put the web workbench of VS Code in the browser without access to compute,” Landgraf wrote. “While this is yet another validation that we reached a tipping point of how and where we develop software, platforms such as Gitpod and Codespaces are so much more. Think orchestration and provisioning of compute, operating system, language servers and all other tools you require for professional software development in the cloud.”

While Landgraf obviously has a point, VS Code for the Web is like that $5 rotisserie chicken on Fridays — dang it smells good, it gets you in the door, and the next thing you know, you’ve spent $100 on other things…like GitHub Codespaces, which is, after all, pretty much the same exact thing, except it provides all those back-end services and, more importantly for Microsoft, is not free to use. And more important still, once you’ve got all those developers fully hooked on VS Code, Codespaces, GitHub, and the rest of it, Azure isn’t too far down the line now, is it?

This Week in Programming

  • GoLang Taps the Brakes on Generics in Go 1.18: While the addition of generics to Go was finally approved earlier this year, Gophers may have to wait just a little bit longer for them to make their way fully into the languages core libraries. Rob Pike, one of Go’s original designers, submitted a proposal earlier this month suggesting that they don’t change the libraries in 1.18, and instead move the changes into the golang/x/exp repository for the time being. The exp repository is where the language houses “experimental and deprecated” packages that are not included in the binary downloads of the Go installation, which means they are still available to those who go a little out of their way to get them, but not included by default. Pike argues that generics is “by far the biggest change to the language since its creation” and that “how to use these ideas in the standard library requires great thought and planning.” Rather than putting the changes directly into the core library now, Pike says that putting them into the exp repository will make it so that they “can be tested in production, but can be changed, adapted, and grown for a cycle or two, letting the whole community try them out” and then, “once they have soaked a bit, and updated through experience, we move them into the main repo as we have done with other externally-grown packages, but with the confidence that they work well in practice and are deserving of our compatibility promise.” A quick look at the comments on the proposal seems to signal that this will be the way forward for the official addition of generics, but nothing appears to be set in stone quite yet.

  • IBM Intros Guide to Open Source Hybrid Cloud: Rather than learning the proprietary skills required for using a single type of public cloud, IBM says that it recently found that developers should focus their time on honing their open source skills instead. After all, “every major cloud platform uses open-source software in their infrastructure.” As such, the company has introduced “the Open Source Cloud Guide, which highlights various use cases that are important in hybrid cloud environments, features the important open source projects in those areas, and discusses how various clouds are using open source in their offerings.” For each use case, the guide provides an overview, an explanation of a traditional solution, key open source projects, and then highlights how cloud providers are doing it with open source. The guide, IBM says, is intended to answer questions around how developers’ skills translate to developing for hybrid cloud environments, inclusive of the major cloud providers and what open source technologies are most used. The guide, however, is not complete, and IBM is looking for developers to contribute.
  • Get Ready for GitHub Universe: That’s right, next week is GitHub’s annual developer conference, GitHub Universe, and this year the event is fully virtual and has a bunch of different sessions. In the lead-up to the conference, GitHub has posted a brief Q&A with the GitHub Universe hosts, which includes some suggestions for sessions to bookmark. Suggested sessions include getting started with Codespaces, coding in the cloud with GitHub Codespaces and VS Code, a look at what’s new with GitHub Enterprise, getting work done on the go with GitHub Mobile, enforcing information security policy through Github Enterprise, and CISCO perspectives on modern application security. First things first, if you’re not already, head over and register for the Oct. 27-28 event.

Group Created with Sketch.
THE NEW STACK UPDATE A newsletter digest of the week’s most important stories & analyses.