FOSS IDEs recommendations?
from SpiceDealer@lemmy.world to linux@lemmy.ml on 17 Dec 22:27
https://lemmy.world/post/23254136

I’m getting back into coding and I’m going to start with python but I wanted to see what are some good IDEs to write the code. Thanks in advance.

#linux

threaded - newest

schnurrito@discuss.tchncs.de on 17 Dec 22:30 next collapse

For Python definitely PyCharm.

[deleted] on 17 Dec 23:16 next collapse

.

davel@lemmy.ml on 17 Dec 23:16 collapse

Huh, the community edition is Apache 2 licensed. I had assumed it was proprietary freeware.

pastermil@sh.itjust.works on 18 Dec 03:51 collapse

That’s news to me.

abominable_panda@lemmy.world on 17 Dec 22:42 next collapse

Codium. It’s VSCode without the proprietary stuff

slazer2au@lemmy.world on 17 Dec 22:43 next collapse

Beat me to it mate.

Here is the link. vscodium.com

[deleted] on 17 Dec 22:44 next collapse

.

krigo666@lemmy.world on 18 Dec 11:28 next collapse

Also Eclipse Theia, it has the same interface and functionality and it is compatible with most VSCode extensions (probably over 98% of them?).

yogthos@lemmy.ml on 19 Dec 03:37 collapse

I find codium is pretty great overall. It’s become my daily driver now.

MTK@lemmy.world on 17 Dec 23:12 next collapse

Honestly, just try a few of the big ones and see what you like, I feel like with IDEs it’s all about personal preferences and rarely about actual amount of features.

Good ones to start with can be PyCharm and vscodium, but try a few, that’s the best option.

tdawg@lemmy.world on 18 Dec 00:21 collapse

Ya ime it’s mostly about what people are comfortable with. People who care about all the features :tm: go to emacs, people who want to use an instrument stick with vim, and old people use nano

rimu@piefed.social on 18 Dec 01:13 next collapse

I use PyCharm for work but it's not FOSS or beginner-friendly. PyCharm does have a free community edition which is awesome if you're mostly into FOSS for the $0 aspect.

Codium is fine and technically FOSS although it's association with Microsoft taints it for anyone who still hates MS from the bad old days. Also it's an Electron app.

far_university190@feddit.org on 18 Dec 04:33 next collapse

PyCharm community is FOSS

AnarchistArtificer@slrpnk.net on 18 Dec 14:01 next collapse

I got started with Spyder when learning python in biochemistry

beyond@linkage.ds8.zone on 19 Dec 16:39 collapse

Codium is fine and technically FOSS although it’s association with Microsoft taints it for anyone who still hates MS from the bad old days.

“New” Microsoft isn’t really any better, and although Codium itself is perfectly fine (Electron notwithstanding) many of Microsoft’s extensions only work with/are only licensed for the official VSCode build and include proprietary parts.

InternetCitizen2@lemmy.world on 18 Dec 05:12 next collapse

Netbeans for java was good to me as a student.

Presi300@lemmy.world on 18 Dec 07:45 next collapse

Zed

jia_tan@lemmy.blahaj.zone on 18 Dec 08:02 next collapse

As long as it has an integration for your language/framework of choice it’s the best imo

asudox@discuss.tchncs.de on 18 Dec 15:39 collapse

Will try, thanks.

[deleted] on 18 Dec 08:25 next collapse

.

BigTechMustBurn@lemmy.ml on 19 Dec 00:38 collapse

Zed is full of AI rubbish, though, which is a shame as I was looking for a code editor built with Rust.

agelord@lemmy.world on 19 Dec 04:52 next collapse

You can check out Lapce, which is written in Rust: github.com/lapce/lapce

BigTechMustBurn@lemmy.ml on 19 Dec 13:33 collapse

Yeah, I have. Seems like development has stalled, though. Last release was 4 months ago and the last commit a month ago.

Presi300@lemmy.world on 19 Dec 07:49 next collapse

Not really, all the AI stuff is off by default and doesn’t really nag you all too much…

BigTechMustBurn@lemmy.ml on 19 Dec 13:37 collapse

I did find this fork which removes all the AI and telemetry. You’d be surprised how much of it is there.

brrt@sh.itjust.works on 19 Dec 21:58 collapse

Not sure about the AI component but telemetry can be turned off with 1 line in the Zed config file afaik.

toastal@lemmy.ml on 19 Dec 09:57 next collapse

Rust doesn’t buy you anything interesting in this space.

theamazing0@discuss.tchncs.de on 19 Dec 22:56 collapse

It’s not too hard to disable all of it

{
  // Disable Telemetry
  "telemetry": {
    "metrics": false,
    "diagnostics": false
  },
  // Disable Assistant:
  "assistant": {
    "enabled": false,
    "button": false,
    "version": "2"
  },
  // Disable Copilot:
  "features": {
    "inline_completion_provider": "none"
  },
  // Disable Collaboration Features:
  "collaboration_panel": {
    "button": false
  },
  "chat_panel": {
    "button": false
  },
  "notification_panel": {
    "button": false
  }
}
hamburger@discuss.tchncs.de on 18 Dec 08:59 next collapse

Vim/neovim

nullstreamer@feddit.org on 18 Dec 09:10 collapse

I’d suggest going with LazyVIM / SpaceVIM as a starting point, though, as configuring vim from blank state is an art itself and requires quite some time and dedication.

o_d@lemmygrad.ml on 19 Dec 01:43 next collapse

+1 for LazyVim

737@lemmy.blahaj.zone on 19 Dec 13:50 next collapse

starting off with nothing but vim/nvim really isn’t bad

Jakeroxs@sh.itjust.works on 19 Dec 14:13 collapse

I still have no understanding of how to do literally anything in vim, I couldn’t even close out lol.

toynbee@lemmy.world on 19 Dec 21:19 collapse

!pkill vim

Jakeroxs@sh.itjust.works on 19 Dec 22:50 collapse

Where would I even type that lol.

communism@lemmy.ml on 19 Dec 21:35 collapse

configuring vim from blank state is an art itself and requires quite some time and dedication.

Not really sure where you got this from. It’s quite simple to me. The default vim config works completely fine for me if I’m eg in a VM and I don’t want to copy all my vimrc and plugins over, if it’s a machine I’ll be using more long-term then it’s quite quick to configure a few settings to be how I prefer them to be. Main changes I make to a default config is enabling line numbers (idk anyone who wouldn’t want line numbers tbh) and setting them to be relative, set scrolloff=9999, use 4 spaces for indent, enable line and column highlighting, set a theme, and a couple odd scripts, but again the default is perfectly usable and the tweaks in my vimrc are just to my personal taste.

lime@feddit.nu on 18 Dec 09:11 next collapse

with the rise of LSP, i feel that ides have become less necessary. get an editor that you like, add an LSP client if there’s not one built-in, then install the server for your language.

2kool4idkwhat@lemdro.id on 18 Dec 09:24 next collapse

I use Helix. It’s kinda like a preconfigured Neovim. I really like it, my only complaint is that it (currently) doesn’t have a filetree

balsoft@lemmy.ml on 18 Dec 10:18 next collapse

Seconded. I’m coming from Emacs (+evil), so I’m still missing a few features (proper git integration a-la magit, collaborative editing a-la crdt.el, remote editing a-la tramp). However what is already there works way better/faster/more consistent than any other editor IMHO, and I’ve tried neovim with plugins too. I particularly enjoy the ability to traverse the AST rather than text (Alt+l/p/o/i by default, but I have it remapped to Alt+h/j/k/l). Really looking forward to github.com/helix-editor/helix/pull/8675, I’ll probably write a couple plugins if this ever lands.

chrand@lemmy.ml on 18 Dec 10:53 next collapse

Same here

slowbyrne@lemm.ee on 19 Dec 18:41 collapse

I use Yazi and its amazing. Here’s their docs on how to set it up as a file picker in helix.

yazi-rs.github.io/docs/tips/#helix-with-zellij

Nibodhika@lemmy.world on 18 Dec 09:40 next collapse

For python PyCharm is unbeatable.

krigo666@lemmy.world on 18 Dec 11:24 next collapse

Eclipse Theia if you already know VSCode.

It copied the interface and functionality and is compatible with most VSCode extensions. Available as an AppImage on Linux.

Dungrad@feddit.org on 18 Dec 11:30 next collapse

Geany www.geany.org

badbytes@lemmy.world on 19 Dec 22:52 collapse

Yeah, geany is a simple and effective IDE. I chose to use vim with syntax highlighting.

eugenia@lemmy.ml on 18 Dec 13:18 next collapse

My husband, who mostly codes in assembly these days (he’s mostly retired so his hobby is old atari, amstrad, and spectrum computers), went from VSCode, to Sublime, to now Kate. He prefers to use 100% open source apps, without strings attached. VSCode is nice, but it has lots of weird stuff in it that aren’t necessarily up to the spirit of open source. So Kate works perfectly for him, although VSCodium would do well as well (it’s just that Kate has better syntax highlighters for his weird assembly). Also VSCode/ium is using about 250 MB of RAM, while Kate about 45 (and Sublime only about 32).

SpiceDealer@lemmy.world on 19 Dec 00:57 collapse

(he’s mostly retired so his hobby is old atari, amstrad, and spectrum computers)

Your husband is an absolute legend.

Kazumara@discuss.tchncs.de on 18 Dec 13:53 next collapse

I really like Kate as an advanced editor with syntax highlighting, auto-completion, plugin support. I would then use the Terminal pane at the bottom to run my code during development.

However, if you want a full IDE with included dependency management, test runner, and debugger it’s probably not enough.

One of my professors said you don’t need an IDE, the Linux system already is a development environment. Not sure that I fully agree with that, especially thinking of things like Android Studio that include the virtual machine smartphone, but it’s still an approach thing that is worth trying out.

Telorand@reddthat.com on 18 Dec 17:01 next collapse

Nobody needs an IDE. After all, you can just open a blank file and get straight to work. I could also just use Linux without a DE. Who needs all those graphics, amirite? I could also use a can with some string instead of a phone—or better yet, just shout really loud!

(/j)

utopiah@lemmy.ml on 19 Dec 20:39 collapse

use Linux without a DE. […] (/j)

… actually (tip fedora hat) not but seriously actually most of what we NEED is fine that way. It sounds ludicrous then you try Sxmo on a phone and you can’t help but GENUINELY wonder “Damn… did I get scammed all those years?”

beyond@linkage.ds8.zone on 19 Dec 16:36 collapse

One of my professors said you don’t need an IDE, the Linux system already is a development environment.

Considering “the Linux system” is literally anything you throw on top of the kernel called Linux, it can be a development environment or anything you want it to be. But I think part of the appeal of an IDE is how all the parts integrate (the “I” in “IDE”) so a bunch of packages thrown together might not provide the same cohesive feeling.

Kazumara@discuss.tchncs.de on 19 Dec 17:01 next collapse

Considering “the Linux system” is literally anything you throw on top of the kernel called Linux, it can be a development environment or anything you want it to be.

Yeah I thought about the same thing when posting, if anything it would have to be the the combination of tools available on Linux. Like GNU binutils, GCC, GNU emacs, GDB, Git. But that’s how I remember him saying it. Either my memory is wrong, or he just wasn’t that precise in his language.

But I think part of the appeal of an IDE is how all the parts integrate (the “I” in “IDE”) so a bunch of packages thrown together might not provide the same cohesive feeling.

I agree, it may not be what you want if you’re looking for an IDE.

But, like me back then, if you’re new to the Linux ecosystem, it’s good to hear at least once that you don’t strictly need to look for an IDE. And that you can instead use disparate CLI tools together, to make for an experience that some people end up preferring.

communism@lemmy.ml on 19 Dec 21:36 collapse

Considering “the Linux system” is literally anything you throw on top of the kernel called Linux, it can be a development environment or anything you want it to be.

I’d just like to interject for a moment…

manito_manopla@lemmy.ml on 18 Dec 15:20 next collapse

Emacs and geany

learnbyexample@programming.dev on 19 Dec 10:30 next collapse

I use Vim ;)

Python itself provides IDLE, which is good enough for beginners. thonny.org is another good one for beginners.

As mentioned by others, Jetbrains is good for many languages. www.kdevelop.org is another option.

737@lemmy.blahaj.zone on 19 Dec 13:48 next collapse

vim/nvim is really great

utopiah@lemmy.ml on 19 Dec 15:29 next collapse

Because people ask for an IDE, rather than an editor, I will say :

Vim + terminal(s) + containerization (e.g. Docker CLI, Python venv) + live reloading (e.g. nodemon or inotify or in the browser using e.g. server side events) + repository management (e.g. git in CLI to juggle between branches, push/pull local/remotely)

IMHO this is very VERY light (0 wait even on a RPi Zero) and yet very flexible.

Also most of that can be “saved” via e.g screen the CLI tool, allowing to have named windows in a terminal and a lot more than to e.g. screen -raAD, locally or remotely.

Ziglin@lemmy.world on 19 Dec 20:04 next collapse

I’m slowly learning Emacs, I’d say I like it but it’s a lot of config work and I wouldn’t recommend it to somebody who hasn’t programmed before.

leastprivilege@lemmy.ml on 19 Dec 21:31 next collapse

Neovim! Here is a good video to get started TJ DeVries. If you just want to give it a shot there are a lot of preconfigured options like lunar vim or NVchad.

tapdattl@lemmy.world on 19 Dec 22:56 collapse

I’m a big fan of vim/neovim with nerdtree and airline added in.

I’ve also been tryingourt Zed recently, it natively supports vim keybindings, so my workflow hasn’t changed, but its lightning fast (programmed in rust) compared to vs-codium (an electron app)