Skip to content(if available)orjump to list(if available)

Postgres IDE in VS Code

Postgres IDE in VS Code

432 comments

·May 23, 2025

seveibar

This solves a major problem that I built an npm package called "pgstrap"[1] for. It generates a "database structure" directory so that my database schema is available to LLMs (it also makes code review easier because you can see the changes to various tables). So I have a SQL file for each table in my database, neatly organized into directories for each schema. Rails has a similar idea with schema.rb

I'm not sure whether or not it's better to have your editor database-aware or to have your codebase have appropriate context committed. On one hand, less generated code/artifacts make for a cleaner codebase. On the other hand, not everyone uses VC Code or will know how to use this integration. Database browser GUIs have never really had a single winner. That said, VS Code does have enough dominance to potentially make themselves "the standard way to view a database in development"

[1] https://github.com/seveibar/pgstrap

semiquaver

I’m confused. Isn’t including the canonical state of the database schema in version control along with all the migrations that brought it to that point a completely standard part of every web framework?

xyzzy123

It often is, but the schema might be written against a language-specific ORM.

That code might in turn have plugins or feature flags that mean you don't know the concrete sql schema until runtime.

Same for seed data and migrations.

So it depends on the use-case how useful this format is for tooling and discovery vs an actual connection to the database.

tough

Sane ORMs will still use sql for migration files

jen20

The _canonical_ state is what is in the production database(s). What's in version control is hopefully able to recreate it, with the obvious caveat of being highly unlikely to be able to repopulate the data.

dotancohen

For development, the actual data itself is not so important, but the features of the data are extremely important. Such as which fields have higher or lower cardinality, which fields are accessed often and which are barely touched.

Often times, the indexes will reflect this. Often times, not.

cerved

I'm more confused why the version control of the thing using the database is including the entire schema of the database in it's repository

schrodinger

The database schema of an app is tightly coupled enough to essentially be code, and migrations are also probably checked in. This lets you see how the db schema changes over time -- likely along with the queries using the schema.

koolba

It makes it trivial to have pretty diffs of the net result of migrations.

wredcoll

That "works" for about as long as you have <10 employees and <3 customers or so. After that the railsapp doesn't get to be the sole owner of the db.

bigfatkitten

Providing access to other services is what APIs are for.

Jeff Bezos famously said[1] that anyone who does otherwise should be fired, and I agree.

[1] https://news.ycombinator.com/item?id=18916406

YorickPeterse

It worked fine for GitLab when it had 2000+ employees and god knows how many customers. The same applies to many other large Rails shops.

sbarre

Do you have multiple separate apps that can change a shared DB schema?

How do you keep that all in sync across your apps?

netghost

That seems like a really pragmatic tool, thanks for sharing it!

I'm curious, do you output triggers, store procedures, and such? Many tools seem to stop after you've defined tables, columns, and indices, but I'd love some better tooling to make use of the rest of the DB's features.

seveibar

Yep! It basically runs pg_dump and categorizes all of the output into different files so it should be comprehensive. I think there's `functions/function_name.sql`, `misc.sql`, `triggers.sql` etc.

netghost

Thanks!

And curses. Now I'm going down another rabbit hole rehashing ways to interface with my database in a side project that is doomed to never get past the "there has to be a better way to…" phase ;)

what

You built it but you don’t know what it outputs?

zX41ZdbW

Wow, this is precisely how ClickHouse stores table metadata! A set of .sql files in the directories, corresponding to databases.

jsmith99

I just use a MCP server (with copilot or cline) that has a read only login to my database.

BoorishBears

Which is strictly worse than just giving the LLM access to the source of truth for the database.

You're adding a round trip to the database and the LLM and inserting a tool call in the conversation before it even starts generating any code.

And the reference Postgres MCP implementation doesn't include Postgres types or materialized views, and is one of the most widely used packages: Zed.dev's MCP server for example, is seemingly just a port of it and has the same problem.

fwip

MCP also gives the LLM access to your example data, which can add clarity beyond what your schema alone provides.

tempaccount420

I don't see how a round trip of <500ms, which is equivalent to maybe 50 tokens, is worse than including many thousands more extra tokens in the prompt, just in case they might be useful. Not to mention the context fatigue.

If designed well - by suspending generation in memory and inserting a <function_result>, without restarting generation and fetching cache from disk - the round trip/tool call is better (costs the equivalent of 50 tokens for waiting + function_result tokens).

nsonha

The schema in the db should be the source of truth and an MCP server like that is the most flexible, can work with any ORM set up

wredcoll

What source of truth? If you have access to the database then you have the actual truth right there.

null

[deleted]

layoric

Out of interest.. does the resultant data get used by the LLM or just generating SQL, executing and returning separately?

maxluk

PM on the project here - The results from the query are generally not used by the LLM. In agent mode though, during query planning, the agent may retrieve sample of the data to improve precision of the queries. For example, getting distinct values from dimensional table to resolve filter condition from natural language statement.

pier25

Oh woah this looks great.

Quite amazing they put the effort into this for Postgres instead of SQL Server. The demand must be a lot higher.

shawnz

There is already a Microsoft SQL server extension for VS Code and this looks to effectively be a clone of it. After giving this a quick spin, it looks and feels the same as the SQL server extension, with the same menus, dialogs, etc. The SQL server extension I believe is what formed the basis of the now-deprecated Azure Data Studio (which was a VS code fork).

See here for the SQL server extension: https://marketplace.visualstudio.com/items?itemName=ms-mssql...

croblesm

That’s correct—I’m the lead PM for the SQL extension in Visual Studio Code. We’ve been working closely with the PostgreSQL team; in fact, their extension is essentially a fork of ours, as you pointed out correctly.

Just to clarify on the Azure Data Studio (ADS) point: the MSSQL extension includes many of the core features from ADS, but our strategy is slightly different and focused on a modern, developer-first experience.

Here’s the link to our open roadmap—would love to hear your thoughts: https://aka.ms/vscode-mssql-roadmap

cerved

Since most databases expose similar schema views it shouldn't be too complicated. Feels like JetBrains has been doing this for a long time

pamelafox

I'm a developer advocate at Microsoft, and from my perspective, both teams have been putting in a bunch of effort improving their extensions. I participated in usability studies with both the teams behind the SQL Server extension and new PostgreSQL extension, and then once they were ready, I participated in bug bashes.

Both teams seem to very much want developers to enjoy their tools, so please do send them feedback on what you need out of the tools.

Follow Carlos Robles if you want SQL server extension news: https://www.linkedin.com/in/croblesm/

Follow Joshua Johnson for PostgreSQL server extension news: https://www.linkedin.com/in/johnsonjoshuae/

jiggawatts

The problem customers have with these Shiny New Things that Microsoft keeps trying get us to switch to is that they drop features and entire product suites on the floor, even those that aren't officially deprecated and have no equivalent replacements. It's common to see SSRS, SSIS, SSAS in multidimensional mode, etc... simply forgotten about like they no longer exist.

Not to mention that SQL "SDK-style" projects only work properly in VS Code, so Visual Studio users are left out in the cold having to deal with an incomplete, half-baked solution.

shawnz

I totally agree and I beg you to consider this feedback if you are reading @pamelafox.

The biggest problem with the usability of Microsoft products today is short-sighted thinking. New features, platforms, frameworks etc are launched and then forgotten about just a few years later with no effort to tie into the groundwork of what came before.

You might think this is only a problem for old customers who are already accustomed to the old technologies, but that's not true: it burdens new customers too. There's a few reasons for this that I can think of.

1) It's hard for new customers to know what technologies they should be reaching for in what situations when there's so many different choices.

2) It's hard to find the right documentation for the technology you've picked because you have to browse through a ton of out-of-date documentation that wrongly refers to the deprecated technologies and it's not clear what the current recommendations are.

3) The new stuff is often built without consideration for the ways of thinking that the underlying platform was built with. Thus, you end up with weird idiosyncrasies as you move from one technology to another, which make it hard to learn and hard to use.

4) When you replace the old technologies you lose the benefit of community knowledge on platforms like Stack Overflow, you lose the ability to look at existing open-source projects for guidance, etc. You are basically going into uncharted territory where there are no clearly established patterns in the wild.

So, even new users coming on to your platform suffer from these deficits. That's not to say I don't appreciate all the work on these new powerful technologies like VS Code and .NET Platform and so on, but I think a more long-sighted vision for these products would go a long way. And it's not just a matter of looking forward, since you never know what's going to happen in the future with a product as organizational priorities change. It's also a matter of looking backwards at what came before, at what groundwork was laid by previous efforts, and how it can be best taken advantage of and re-used for future efforts. That is the biggest missing piece at Microsoft today in my opinion.

croblesm

Thanks for your feedback! I’m a PM on the SQL Experiences team, and if you’re open to it, I’d be happy to connect you with the PM leading the SSDT (VS) effort.

Feel free to connect with me on LinkedIn, and we can go from there: https://www.linkedin.com/in/croblesm/

croblesm

Thank you so much, Pamela! You’ve been an amazing and key partner in our journey—your feedback and support have truly made a difference.

dzonga

are we gonna get for sqlite ?

pamelafox

I think this extension is going to focus on PostgreSQL only. For SQLite, try the SQLTools extension.

nevi-me

I speculate that it's because the MSSQL tools have been maintained as part of Azure Data Studio, and were in better shape.

ADS is being sunset, and I was surprised when trying to install the Postgres extension on VS Code to find that it had its last meaningful contribution 6 years ago [0]. It couldn't work on newer VS Code versions.

I use ADS with both Postgres and MSSQL, prior to this announcement, I kept using ADS because there was nothing to migrate to.

[0] https://github.com/microsoft/vscode-postgresql/commits/maste...

croblesm

You’re right—the old PostgreSQL extension was outdated. The team recently forked our modern MSSQL extension (I’m the Lead PM) to build a new one for PostgreSQL. It’s a fresh start, built on the same foundation we’re actively improving.

We’re still working on bringing over some Azure Data Studio features to the VS Code extension, especially around import/export (like flat file and DACPAC). I’d love to hear what else you think is missing.

If you’re interested, here’s our open roadmap: https://aka.ms/vscode-mssql-roadmap

hobs

They built the postgres plugin in a way that nobody could usefully contribute to unless they worked at msft - like the rest of ADS the level of control they tried to maintain meant nobody wanted to work on it.

0cf8612b2e1e

That is seemingly true of a bunch of tools. I am using an official Microsoft Python library - the repo is public on GitHub, but all of the CI or other backend integration is behind the Microsoft curtain, so it is impossible for the public to actually participate. The cherry on top is that the team that used to support the tool was impacted, so now nobody can maintain the thing.

magicalhippo

They already have the SQL Server Management Studio[1], which seems to cover similar ground?

I'm assuming they might want to move SSMS to VSCode in time, so trying it out by covering new ground, PostgreSQL, makes sense to me.

[1]: https://learn.microsoft.com/en-us/ssms/sql-server-management...

AdrianB1

No, it has a different purpose; VS Code extension and the former ADS are targeted for development, while SSMS is for server and database administration. I am a heavy user of SSMS and can do everything I ever need there, I don't use the VS Code extension for MS SQL even if I have it installed and I use VS Code quite a lot. This is because I am also acting as a backup and supervisor for our DBA team, so I am involved in DBA work.

codeulike

SSMS is also for Development, I've been using it for that for 20 years

cerved

SSMS is what my nightmares are made of

pier25

But it's only for Windows

magicalhippo

In my experience, MSSQL shops are far more likely to be using Windows already than PGSQL shops, so that's just yet another reason for why PGSQL was a good first choice for a VSCode plugin IMHO.

v5o

[dead]

wg0

I wish there was something similar for SQLite.

Sammi

There are several sqlite vs code extensions and this one's my favorite: https://marketplace.visualstudio.com/items?itemName=yy0931.v...

osigurdson

SQL server is in "cash cow mode" at this point. Investing more into tooling is unlikely to increase revenues at this stage.

pjmlp

I can think of several improvements for Transact-SQL, starting with stored procedure packages.

Wojtkie

The copilot integrations look sweet, as does the schema view. The MSSQL extension doesn't have those, but the rest of it looks similar to the Postgres one.

croblesm

Lead PM for MSSQL extension in VS Code here. I’m glad to share that we have both features (Schema Designer, GitHub Copilot) into the MSSQL extension for VS Code. You can check out this end-to-end demo showcasing those capabilities: https://aka.ms/vscode-mssql-copilot-demo

As I’ve mentioned in a few other threads, the PostgreSQL team recently forked our MSSQL extension to kick off a fresh implementation for Postgres. It’s built on the same foundation we’re actively improving and evolving for both extensions.

90s_dev

Microsoft seems to be going all in on open source over the past 10-15 years.

From a consumer perspective, we're almost all benefiting.

From a business perspective, they get unpaid help and community brownie points.

teruakohatu

> going all in on open source over the past 10-15 years.

Given that there are many Microsoft closed source extensions for VS Code, that cannot legally be used with the open source Version of VS Code, I would say they are not going all in. Knee deep maybe.

ahartmetz

Because of the closed extensions situation, the open source part feels insincere. Sort of like a free plan up to 10 users and then pretty expensive situation. The purpose isn't the free plan, it's just an advertising measure to get people to where you really benefit eventually.

90s_dev

Also, given that they recently bought github, they have financial incentive to keep people there, who might upgrade to pro accounts or grow to need enterprise.

datavirtue

And most of us are invested in MSFT, so we benefit that way as well. (I don't hold any positions)

WuxiFingerHold

>> all without ever leaving your favorite code editor

How do I install this on Neovim then? Is there a LSP? Or is this Microsoft proprietary? I wonder how much better without Copilot integration this is then the competition.

I'm using DBeaver CE currently. Does all I need (also for SQLite).

diggan

When for-profit companies write "Democratizes X for all" it means "for people who can pay and aren't embargoed". When they write "Simplify" it means "Get locked in to our ecosystem". When they write "Your favorite X" it means "The product we're selling to you", and so on.

Once you start reading press releases with this business-dictionary, it gets a lot easier to just close the tab and move on.

asrael_io

i feel like we need a first-era unsuck it search engine for this :D

fithisux

Even for DuckDB, I use DBeaver CE the last 9 years professionally. Also when I do Python Dev I reach for JupySQL in Jupyter when I need something quick and it works in VSCode through Jupyter plugin..

qntmfred

will definitely be taking a look at this. i started my career on mostly SQL Server and using SSMS fits my brain like a glove. i've been so dissatisfied with the typical options (pgadmin, dbeaver, datagrip, etc) for managing/querying postgres since i started using it probably like 10 years ago. postgres itself is great (don't get it twisted either, SQL Server is fantastic. just costs money) but i never understood why there wasn't more uproar in the community about its DBMS tooling ecosystem

FeloniousHam

I've found Datagrip to be far and away the most impressive universal database tool. I feel like I've tried them all, and they all have a quality of having been developed by database people, rather than IDE designers. The depth of capability, extensibility, pace of improvement--I'm a very happy customer.

I don't want to poop on open source, but pgadmin and dbeaver and not even close to playing in the same league.

I work in Oracle and Datagrip saved my sanity.

Errsher

Are there any features in datagrip in particular that you like that aren't in dbeaver?

cwbriscoe

I used DBeaver (community edition) before Datagrip and I would have to give the nod to datagrip overall. I wouldn't have even tried it if I did not have the etbrains all product pack. DBeaver is great, don't get me wrong, but Datagrip just seems a lot more polished overall and the settings and the UI just seem more intuitive to me.

cerved

More streamlined UI. I find the graph viewer to display some things nicer, like coloring tables, bringing in related tables. Slightly better introspection and code formatting. Easier refactoring capabilities. Easier to get IdeaVim working then whatever Ecplise plugin is needed in DBeaver.

In my experience, DataGrip has been easier to get up and running out of the box and bringing the big IDE guns than DBeaver but DBeaver also does done this really well. For example I have never been able to setup DG with Access but DBeaver works pretty good out of the box with that garbage. Also it's free.

Both are solid

polishdude20

I'd love to try datagrip, what are some advantages over pgadmin or others?

jeroenhd

Many people love Datagrip because it's got the polish and style of Jetbrains' other products. Others hate it and much prefer the more classic designs of DBeaver or the browser UI of PGAdmin.

I think it's worth downloading the 30 day trial and giving it a quick whirl. The people who dislike it seem to get hesitant quite quickly, so I doubt you'd need more than a day to decide if it's for you or not. There are all kinds of cool and fancy plugins you can set up, but I wouldn't bother with that if you decide the UX just isn't for you.

It supports quite literally every database I've thrown at it, which is pretty nice.

The way it support projects is also rather useful to me as a developer. Most SQL tools seem to be focused on being an interface first and maybe having a few SQL files open second, but Datagrip's basis as an IDE makes it very easy to maintain collections of scripts (version migrations etc).

That said, I'm not sure if the 99 bucks (a year if you want updates, though you get a perpetual license for the current version) is worth it. I use it because it's part of Jetbrains' all products pack, which I paid to use other IDEs, essentially giving me Datagrip for free. If you're not already a Jetbrains customer you could definitely give it a go, but the value per dollar it provides is very different.

zeppelin101

With Datagrip, you get all the niceties of a JetBrains IDE: massive customization, numerous plugins (e.g. IdeaVim, GitHub Copilot), lots of documentation. But you also get support for countless Db engines - I haven't seen anything yet which wasn't supported. The only one that was half-baked was Redis support, but it's not exactly a Db, either. Most importantly, it's that the UI doesn't feel clunky, unlike with PgAdmin. Everything feels streamlined and 1 or 2 clicks away, at most.

lbreakjai

This is going to be subjective, but the interface is better, especially if you're used to other jetbrain products. I haven't used pgAdmin for a while, but I remember the autocomplete being clunky to use and, quite frankly, quite bad.

My company had some leftover Datagrip licences, and it felt like moving from notepad to an IDE. I haven't looked back since.

null

[deleted]

AdrianB1

In my experience most SQL developers don't care too much about tooling. In most cases someone designs the database and tables, developers don't care about databases and care mostly about tables and views, rarely about indexes. The ones that care, and need tooling, are usually called development DBAs and they are very rare. Rare enough I was never able to hire one and keep them (we don't pay enough for how rare they are).

sbuttgereit

I've been in that camp for much of my career, and yes, tooling matters.

As you suggest however, tooling for that workload is pretty rare. I want something that focuses on enhancing the database development experience: that understands that there are development workflows for database code which are well controlled and rigorous. So many database tools are focused on being system administrative aids first, or giving you features for directly interacting and <ack> altering the running state of the database and its server from the tool.

The best tool I found for what I do was targeted at Oracle: Allround Automation's PL/SQL Developer (https://www.allroundautomations.com/products/pl-sql-develope...). It's a development oriented tool that, at least last I used it, was focused on serious development work rather than administrative work. Now, I haven't used it in almost 20 years when last I did Oracle development... but I haven't found anything for PostgreSQL that has that thoughtfully implemented database developer centric feature set.

Today I muddle through with DataGrip. DataGrip has just enough of what I need that it's marginally better to work with than just a simple text editor... and also narrowly avoids some misfeatures as not to negate it's utility.

specialist

All true.

I loved workgroup style app development. R:Base, Access, dBase, FoxPro. Then I switched to UI work for a stretch.

Circling back to back-end work, naive me embraced Hibernate (2004?), assuming it'd be familiar and good.

I was wrong.

Now that I have a lot of free time, I'm finally recreating the workgroup style experience, for the general dev population. Sort of.

Using Hibernate, our workflow became: rough in some ORM hack, capture the generated SQL, use SQL Query Analyzer and Toad to make it work (and performant), coerce Hibernate to regenerate the SQL we want. Totally backwards, right?

Eventually we gave up and just used HQL.

At that point, why even bother with ORM?

So I created a "SQL first" workflow. Treat your SQL (DML) as source code, use those explicit queries to generate the prepared statements (and typesafe DAOs, DTOs, etc). In other words, auto-generate all the things you'd do yourself, if only you had more time.

I used my tool for years. Am currently making it usable for other devs. eg Spent last week making my grammar for MySQL "good enough" for initial release. Already have PostgreSQL and SQLite, plus my original turrible "poor mans SQL" grammar (comparable SQL-92). Which I'll cull once I have "good enough" T-SQL and PL/SQL grammars.

Any way. Thanks for reading.

I only meant to confirm your experience with development DBAs. The only such person I was able to retain was near retirement and was tired of the hustle.

WuxiFingerHold

Hmmm, interesting. I used Datagrip for some years, now DBeaver (as I don't have a JB subscription anymore). Datagrip was and probably still is very powerful with top intellisense. Now I'm using DBeaver and it's very solid. Ok, I'm not spending my whole day in it, but when I need it, it does the job well.

impalallama

Biggest thing that JetBrains has over VSCode for me was their very clean built in database tooling

bdcravens

You can also run the database tool separate (DataGrip). That's what I do.

Version467

I didn't know about DataGrip. Looks cool.

mierz00

Every year or so I try to go back to VSCode but I can’t get past how good the git and database integrations are in JetBrains.

jeroenhd

I think Code has fine git integration, but they way they implement it is just very Microsoft. The UI is very much like the one they use in their professional Visual Studio UI, and whether that's a good thing or not is definitely a very personal choice.

I much prefer JB's git integration, but I wouldn't discount it just because the UI is so completely different.

FajitaNachos

Postico has always been my defacto way to interact with Postgres. Curious if there are any Postico users who have tried this yet.

deepsun

Very Mac-oriented, and I think IntelliJ built-in DB editor has way more functions / features.

jasoncartwright

The heavy Mac UX compliance is the reason why I enjoy using Postico for 99% of straightforward Postgres tasks

georgel

10+ year user of Postico. I will give this a try. I hope Copilot can start recognizing the schema when I use node-pg.

pamelafox

Congrats to the team on launching this! I was actually the first to demo it, as part of our sponsored session at Microsoft last week.

Here's the talk where I used it: https://www.youtube.com/watch?v=k6Vm2hakkV4

I also did a theater session at our MSFT booth, but the recording isn't up yet. You can follow the steps in this repo to check out all the features that I demo'd, however: https://github.com/Azure-Samples/postgresql-extension-playgr...

Let the team know about any issues here: https://github.com/microsoft/vscode-pgsql/issues

justusthane

Hey, just a heads up that your website 404s if visted at "pamelafox.org", which is how it appears in your bio.

pamelafox

Thanks, I need to move that website to GitHub Pages soon, the current host isn't handling the naked domain well. Changed to www.pamelafox.org for now.

null

[deleted]

null

[deleted]

Toritori12

I wonder what is the most "valuable" IDE right now for MS. A few years ago VsCode was marketed essentially as "Visual studio for beginners", where you were supposed to move to Visual Studio after you became a real dev, but since then VSCode has been growing and growing and stands now as the most used "IDE", where Visual Studio is mostly seen as "legacy" (oversimplification, great IDE for CPP and .NET but still...).

J_McQuade

Easily VSCode, if we're talking about developer reach. I'm not big into Microsoft stuff, but almost every 'serious' .Net developer I personally know is using Rider, so I can only assume that Visual Studio is retreating to the same space occupied by Eclipse and Netbeans, i.e. still used, but mostly only in places where change is hard.

I'm an emacs user and even I keep a copy of VSCode installed just because I occasionally have to interact with SQL Server and it's really the best way to do that on non-windows systems now that they're winding down ADS.

dmurray

I work at a mostly .NET firm and almost all the developers on that side of things are on Visual Studio. Rider has less penetration than PyCharm has among the Python devs.

gregd

I only use Rider because it's cross-platform. It's not inherently better (or worse) than Visual Studio with Resharper installed.

cerved

it's fasterb and has a functional vim interface

solarkraft

Most .Net devs I know use VS, I used Rider because it’s so much less awful.

pjmlp

Monetarily, Visual Studio.

There are tons of enterprise development workflows, and plugins, that probably will never be ported into VSCode, from their .NET and COM implementations.

Now in terms of mindshare, and gateway drug into Microsoft ecosystem, definitely VSCode.

It is also the best Web IDE, for the return of timesharing development, sorry cloud.

That alone means everyone that is on Github and Azure, gets to use it as the modern version from X Windows and RDP/Citrix sessions.

Not bad, for Eclipse v2 (Enrich Gamma is one of the main architects), pity the whole Electron shell though.

pphysch

How is VSCode a "gateway drug" into the MS ecosystem? It's good PR, for sure, but it has little to no conceptual/GUI overlap with, say, Windows.

FWIW I use it via Linux .deb and integrate with a private GitLab.

pjmlp

Worrying about Windows is fighting the last war.

Azure, Github, CoPilot, .NET (why do you think it is cross-platform), Java (yes, MS is back in Java land, they were the ones with initial ARM support), Go (they have their own FIPS compliant distro), Python (although with layoffs maybe not anymore), Rust, npm, Powershell, Powerapps, 365 AddIns, Teams plugins, clang/cmake (part of Visual Studio installer), Azure Linux, Sphere OS,....

acdha

Azure and GitHub are large Microsoft revenue sources. Both have first-class VSC integration.

epolanski

Because it opens the gate up to the rest of Microsoft tools.

Once you're gonna play with azure, GitHub, vsc, you're bit by bit invested in the ecosystem and opening the wallet for that other feature or integration.

edg5000

VS Code is a downgrade from open source to freeware. At least the C++ plugin is freeware. And they block access to the extension store from any fork (self-compiling VS code is also considered a fork). So if you are an OSS purist, VS is bad. Other than that it's effing great.

newlisp

It is also the best Web IDE, for the return of timesharing development, sorry cloud.

Also the best webdev IDE.

tempodox

Erich Gamma

pjmlp

Thanks for the correction.

dist-epoch

> where you were supposed to move to Visual Studio after you became a real dev

It was never marketed like that, for the simple reason that popular VSCode languages like Python/HTML/Javascript were never well supported by regular Visual Studio, so there is no way to move to "proper" Visual Studio if you do Python/web development.

epolanski

VS could do web okay 5 years ago, haven't run it since.

pjmlp

It still does when Web == .NET Web, and way better than VSCode at it.

dontlaugh

Visual Studio is still widely used in the games industry, being pretty much a requirement for targeting some platforms.

It is becoming common for some to use Rider primarily, but VS is still used as part of the build system.

jjeaff

it has to be VS Code by a long shot. They don't charge for it, but it serves as an enormous draw to keep people in the MS ecosphere and keeps MS in the developer game.

rafaelmn

That's ironic since I develop most of my Microsoft related tech with JetBrains products and only use vs code for frontend/node - non Microsoft stuff.

TiredOfLife

> A few years ago VsCode was marketed essentially as "Visual studio for beginners", where you were supposed to move to Visual Studio after you became a real dev,

When was that?

Toritori12

I wont likely find the video but I remember watching the PM for both VSCode and VS (at the time was the same one, not sure now) recommending people to move to Visual Studio "eventually". I clearly remember it because it didn't make any sense, even if the names were similar there were/are nothing alike UI-wise and supported-language-wise. I said few years ago but it was prob around 8 years ago, vsc was still pretty young.

bargainbin

Yeah I’ve been using it since it was released and can’t ever remember it being marketed as such.

prmoustache

Yeah I only really saw vscode as a "let's capture atom and sublime users, bevause they will not use Visual Studio anyway" approach.

pbw

Is there a similar feature available for SQLite? Will there need to be a totally new extension for every DB, or is there a shared portion?

Sammi

There are multiple vs code extension for sqlite. I tried a few of them and they were not great. Except this one, which I now use daily: https://marketplace.visualstudio.com/items?itemName=yy0931.v...

Ericson2314

Microsoft Access meets PostgreSQL, 3 decades later?

cerved

Is there something related to Access in this that I missed in this or you just being salty, because I have to work with that garbage and if there's something better than DBeaver I can use for that I'm all ears

Ericson2314

I'm just picking Access as an example of an old MS "database GUI".

jasoncartwright

Ah man, Access. Got a website to over 1m users/month with a dead simple Access DB and ASPv3. Back when a million users was a million users.

bdcravens

Looks nice enough. I only wish there was an easy way to spread VS Code across multiple monitors. I commonly will work in code on one monitor, and the database tool (DataGrip currently) on another.

jayflux

VS Code has had multi monitor support for a while now https://code.visualstudio.com/docs/configure/custom-layout#_...

wenc

You can already do that. I run VS Code on multiple monitors.

Any tab called be pulled into its own window and moved to a different screen.

Even the terminal panel can be popped out into a tab or panel or window. (The UI is not obvious but once you see it you can’t unsee it)

It’s pretty cool to have the code and terminal side by side in the editor window. (Of course this was always possible with emacs)

Fire-Dragon-DoL

I noticed yesterday that you can pull out a tab into its own window. It's not "natural" cross monitor, but you can place the windows on both. Not sure if that helps

bartvk

Have you thought about just solving the problem with hardware? I.e. one giant 38" wide screen?

zamacho

Is there a similar extension for MySQL in VS Code?

jamesgeck0

Database Client is fairly similar. I don't think it does the schema diagrams or AI stuff, but it can do notebooks. Has a shareware pricing model, free for up to three active connections. https://database-client.com/