In VS Code the "editor.insertSpaces" boolean setting governs whether or not pressing Tab will insert a tab character or a number of space characters (specified in the "editor.tabSize" setting).

"editor.insertSpaces" is one of the settings which can be specified per-language. The command "Preferences: Configure Language Specific Settings..." gives you a language picker, then seeds the Settings Editor filter so you can easily set a language-specific value. Below is a screenshot showing how I can make the Tab key enter the tab character when in a document set to the objectscript-class language.

You make a good point about how Python-coded methods must be space-indented. VS Code can't help you with this, as it sees the entire .cls document as being objectscript-class language. So I suggest you leave "editor.insertSpaces" at its default (checked / true). The ObjectScript-coded methods won't mind being space-indented.

Today ICR no longer offers build 589 of Community. It has been replaced by 599. I know this is preview, but I do wish InterSystems wouldn't delete the old build immediately they upload a later build. Those of us using dev containers or CI/CD workflows will suddenly find things broken until we update our scripts. And if we're only watching this DC post to learn about the new version we won't even have been notified yet.

Plus, still no arm64 build...

For VS Code's native Search facility to search the server-side code your ISFS workspace gives you access to you must follow the instructions in the "Enable Proposed APIs" section of the extension's README (which is also available here). One of the steps will have to be repeated each time your InterSystems ObjectScript extension gets upgraded from MarketPlace with a new version.

my guess that if we specify port 57772 as the default port in the web server which I'm assuming that would be Apache , we don't have to specify the port in our url

No, if the web server (Apache or any other server) is listening on any port other than 80 (for http protocol) or 443 (for https protocol) your URL needs to tell the client app (e.g. your web browser) to connect to a port that is not the standard one for the specified protocol.