4 ms·
Lots of people here recommending that they should have just built an VSCode plugin. That is the wrong take IMHO. Arduino is a platform, they need to be in contr
by soapdog 5y ago
Lots of people here recommending that they should have just built an VSCode plugin. That is the wrong take IMHO. Arduino is a platform, they need to be in control of their platform. If they'd just became a VSCode plugin, they'd be at the hands of Microsoft and quite vulnerable to radical changes in VSCode.
- silvanocerza 5y agoThat critique comes mostly from advanced users and it certainly makes sense. The Arduino IDE is meant to be accessible to people with close to no experience though, a newbie put in front of VSCode will fill overwhelmed for sure, that's why the Arduino IDE exists. I'm certainly biased but the new Arduino IDE is certainly a huuuuge improvement from the old one in lots of ways, it already has some new features like an autocompletion that actually makes sense, debugging, and more will be coming. For autocompletion to work we actually created a custom Language Server, it certainly has been no easy task and we're still making improvements to it. It still has some rough edges but it works finely already and you can't get that experience anywhere else for now, VSCode doesn't have it. Oh, and it has a dark theme too. I strongly suggest people give it a spin before dismissing it cause of Electron, Theia, yet another IDE, PlatformIO or whatever, we're continuously improving it.
- Y_Y 5y agoI'm probably an advanced user, and use VSCode at work, but I'm glad this isn't tied to it. VSCode is really good at lots of things, but it's also a dodgy mix of FOSS and non-free software and it's huge and complex. For something like Arduino it's great that they retain independence and control for their own tools. I'm sure you can still develop in VSCode with third-party plugins. (To be honest though, I would have been happy enough if they built it in Emacs, even if similar objections apply.)
- silvanocerza 5y ago> I'm sure you can still develop in VSCode with third-party plugins. The Arduino IDE 2.0 uses the ArduinoCLI as backend and they comunicate through a gRPC API, most functionalities are implemented only in the latter. It's technically feasible to create a VSCode plugin. :) > (To be honest though, I would have been happy enough if they built it in Emacs, even if similar objections apply.) Never used Emacs but I think it should be doable to integrate the ArduinoCLI as a plugin, if you want to take a try at it I suggest you read the docs. The gRPC is still not 100% stable though, I made a big refactoring in the initialization steps recently that still needs to be merged. https://arduino.github.io/arduino-cli/latest/ https://arduino.github.io/arduino-cli/latest/
- MaxBarraclough 5y ago> also a dodgy mix of FOSS and non-free software See the current drama of Microsoft quietly introducing non-Free components into the Python plugin. [0][1] [0] https://marketplace.visualstudio.com/items?itemName=ms-python.python&ssr=false#review-details https://marketplace.visualstudio.com/items?itemName=ms-pytho... [1] https://old.reddit.com/r/freesoftware/comments/n9z831 https://old.reddit.com/r/freesoftware/comments/n9z831
- Y_Y 5y agoWow, I was just thinking about The "Remote" extension for ssh and dockers, as well as the extension store itself. [0] I didn't even know about this python business. [0]
- canadianfella 5y agoFill?
- IgorPartola 5y agoCouldn’t you just wrap up PlatformIO into a VSCode plugin?
- aweiland 5y agoThat's what someone did for CLion.
- Siira 5y agoLSP works in most editors with minimal additional support. Their move is just catering to the lowest common denominator.
- gmiller123456 5y agoI agree completely, though for a different reason. Having an IDE specialized to the task makes it easier to so the tasks it's specialized for. Having the Arduino specific options intermingled with all of the other, possibly irrelevant, menus, options, etc. makes it harder to find the stuff that is relevant. Developing for microcontrollers is a lot different, and involves a lot of different configuration than your desktop or web development does. Having all of that front an center, rather than relegated to submenus, makes it a lot easier to use.