[HN Gopher] I can't stand using VSCode so I wrote my own
       ___________________________________________________________________
        
       I can't stand using VSCode so I wrote my own
        
       Author : redman25
       Score  : 162 points
       Date   : 2024-04-21 14:47 UTC (8 hours ago)
        
 (HTM) web link (bold-edit.com)
 (TXT) w3m dump (bold-edit.com)
        
       | Pannoniae wrote:
       | To be fair, it's not hard to outperform something written in
       | Electron with native code with a factor of ten :) Anyway, this is
       | really impressive, so good job!
        
         | Osiris wrote:
         | One of the benefits of Electron is being able to build the same
         | app for multiple operating systems. When writing GUI app using
         | native OS calls, how does one make sure the code is compatible
         | with all three major operating systems?
        
           | titusjohnson wrote:
           | Typically by reading docs and writing compliant code.
        
             | dymk wrote:
             | Were it only that easy
        
               | pineaux wrote:
               | Tell me how its fundamentally not this easy? Its just not
               | really "easy" to write correct compliant code.
        
           | generalk wrote:
           | Folks did this plenty prior to Electron, either by using
           | cross-platform GUI toolkits (GTK and Qt both run on Windows,
           | Java's been doing this forever with Swing and JavaFX, etc),
           | or by writing GUIs for multiple toolkits/OSes that work with
           | the same/similar core application logic.
           | 
           | Electron makes it easier to build cross-platform apps, and
           | certainly cheaper, but it's not like it's the only way to do
           | it.
        
           | levodelellis wrote:
           | I'm the author. I had experience with SDL and wrote a test to
           | confirm it still performs well (I never tried it on linux).
           | It did, SDL has been ported to just about every OS. I have
           | some OS specific code for windows but not much. The only OS
           | specific things were executing a binary + stdio + closing it
           | and slight differences in socket code (mostly used for DAP).
           | C++ now has filesystem support so I didn't need any OS
           | specific code for that
        
         | newaccount74 wrote:
         | Opening a 1GB JSON file and scrolling, editing, and keeping
         | syntax highlighting correct is something that even native text
         | editors struggle with.
        
           | Alifatisk wrote:
           | Sublime have opened way larger files with no issues for me
        
             | eyelidlessness wrote:
             | I'll second this. And to emphasize, so it's not just a
             | useless "+1 comment": I never cared for Sublime as an
             | editor, despite some effort to appreciate it when it was at
             | its popularity peak. But it instantly became, and remained,
             | my go to editor for working with huge files.
        
           | arghwhat wrote:
           | Native code does not replace efficient algorithms.
           | 
           | V8 can also JIT JS to something that runs fast, although the
           | extra layers of abstraction between web code and platform
           | interfaces do not help, and V8 can only do so much.
        
           | Pannoniae wrote:
           | Notepad++ is a champ at doing that, as long as it has line
           | breaks. (It chokes with massive single-line files like any
           | other editor)
        
             | zo1 wrote:
             | Love Notepad++ to bits, but it chokes on just 20MB of
             | nicely-formatted XML if you have syntax highlighting on.
             | Disable that (if you can figure out how), and you're
             | golden.
        
           | datavirtue wrote:
           | I had to buy UltraEdit which is capable of handling 10GB
           | files (the size in my case). Nothing else that I tried would
           | work. Of course, this was ten years ago. I havent had to work
           | with very large text files since then.
           | 
           | It was able to perform search and replace at an acceptable
           | and responsive pace, nearly instant.
        
           | al_borland wrote:
           | With a native editor, like Sublime, it may take a while to
           | become functional, but it will eventually do what I want.
           | 
           | With VS Code, loading in a big file usually crashes it.
           | 
           | Thankfully I don't have to deal with this as much as I used
           | to.
        
       | Vermyndax wrote:
       | I use vscode for doing devops-y things (Terraform, OpenTofu,
       | JSON, python, yaml, txt, dockerfiles, etc.) and sometimes the way
       | it bogs down my system drives me bananas. I'll punt to Sublime
       | Text on occasion and use it for a few days, but then start
       | running into papercuts in various places and have to go back to
       | vscode. I so, so wish there was a better way to do this without
       | fucking electron.
        
         | bbkane wrote:
         | Keep an eye on https://lapce.dev/ and https://zed.dev/ . Both
         | immature, but show a lot of promise! Also both open source, so
         | (in theory, I haven't tried) you can contribute patches to fic
         | your issues
        
           | gcardinal wrote:
           | Man, Zed gives me hope, but it's missing so many features and
           | (robust) extensions. Monthly I'll open it and see if I can
           | start working with it, but the day still has not come.
        
         | yjftsjthsd-h wrote:
         | > devops-y things (Terraform, OpenTofu, JSON, python, yaml,
         | txt, dockerfiles, etc.)
         | 
         | > I so, so wish there was a better way to do this without
         | fucking electron.
         | 
         | I do all of those things in vim and it works fine. No GUI and
         | I'm sure it's missing some fancy new features, but it's fast
         | and reliable (and it's not electron).
        
           | candiddevmike wrote:
           | I traded vim for VSCode back when VSCode was fast. These
           | days, there is so much shit running in VSCode by default that
           | it has become an unruly mess. I couldn't tell you what
           | happens when I save or open a file like I could with Vim--
           | what checks are being ran or what telemetry is being
           | exfiltrated.
           | 
           | At this point it's just laziness and inertia keeping me on
           | VSCode, getting my neovim setup back (along with the muscle
           | memory) keeps getting pushed off.
        
             | theossuary wrote:
             | I haven't been able to find an IDE use because their vim
             | integration is only ever for the editor. But I hate having
             | to constantly manage my vim config; I settled on using
             | LazyVim and have been pretty happy. It's heavy as far as
             | vim is concerned, but once you get used to it, it's nice
             | being able to update and not have everything break hah
        
               | candiddevmike wrote:
               | I had a ridiculously fine tuned neovim setup in my
               | dotfiles that I created over the years, including a nice
               | neovim terminal setup that I can navigate/change using
               | only keyboard (never been a big tmux fan). I've managed
               | to replicate some of it decently with VSCode (vim
               | extension, and I can do CTRL+j to open a terminal and
               | CTRL+k to move back to the editor), but it's just slow
               | and has a tendency of crashing at the worst time.
        
         | INTPenis wrote:
         | Makes me glad I stuck with vim.
         | 
         | I do pretty much the same thing as you, what made you use
         | vscode in the first place? What are the coolest features in
         | your context?
        
           | Scarbutt wrote:
           | IMO, the big is one good/smart programming language support,
           | either out of the box or with a few clicks. If you know vim
           | well, the vim plugin has serious limitations though. On
           | windows/linux the reliance on home/end/pgup/pgdn/arrow-
           | keys/del/mouse etc... is atrocious if you are used to vim so
           | the vim plugin is still a life saver. The remote dev
           | extensions also pretty good.
        
           | CuriouslyC wrote:
           | VS Code has a strong plugin ecosystem, and is built around
           | plugins. You can find plugins for everything, so whatever
           | linting, code formatting, back end integration, custom
           | renderers, menus, etc you want you can build and plug in if
           | they aren't available already. Beyond that access to a
           | project tree view / definition list toggle on the side, debug
           | code at cursor, context menu options to refactor/find
           | usage/etc, and easy pixel perfect control of pane layout when
           | working with multiple documents simultaneously.
           | 
           | I never got that deep into vim/emacs but I wasn't impressed
           | with their versions of the features I listed compared to what
           | is available in a good IDE like intellij/vscode. I do wish
           | the performance was a bit better but I have a beastly
           | workstation so it's not a big deal.
        
             | pinusc wrote:
             | I'd say everything you described is true of vim as well,
             | especially nowadays with LSP and tree-sitter and async
             | capabilities in plugins. The plugin ecosystem is thriving.
             | Neovim's lua api makes it even easier to develop plugins.
             | 
             | It does take a fair bit of configuration if you want to
             | start from scratch, but there's also distributions (such as
             | LazyVim [1]) which make it trivial to start from an editor
             | basically as fully featured as VScode.
             | 
             | Of course, there's still the learning curve for a modal
             | editor, but that's the whole point of using vim. I assume
             | there are vi-style plugins for VScode, but then you're
             | missing out on performance.
             | 
             | 1: https://www.lazyvim.org/
        
             | Lio wrote:
             | As well as its own plugins Vim/NeoVim can use VSCode's
             | LSPs, DAPs and extensions either directly or via plugins
             | like CoC[1] and Mason[2].
             | 
             | I would be surprised if emacs couldn't do the same.
             | 
             | 1. https://github.com/neoclide/coc.nvim
             | 
             | 2. https://github.com/williamboman/mason.nvim
        
         | scoopdewoop wrote:
         | Why do you think your issue has anything to do with electron?
         | That sounds like a meme.
         | 
         | It is your drives, no? Does the browser make your system drives
         | work a bunch? Much more likely, it is VSCode running ripgrep
         | (rg in htop/activity monitor) in the background to find symbols
         | in your codebase.
         | 
         | That would be exactly the same regardless of GUI toolkit.
         | 
         | edit: misread "system drives me bananas" as pertaining to
         | "system drives" nvm
        
           | cyanydeez wrote:
           | Its not electron, but abusing the webview rendering for
           | realtime software'
        
         | wffurr wrote:
         | Paper cuts like what? Deficiencies in the syntax plugins?
        
         | dangus wrote:
         | I have like 10 separate VSCode workspaces (windows) open at all
         | times along with 2 browsers and dozens of tabs and I never feel
         | like my system is bogged down.
         | 
         | In that sense I wonder if your computer just needs an upgrade?
         | 
         | I'm not advocating for e-waste but also if you're a developer
         | then you're the most justified person to invest in a beefy
         | system.
         | 
         | E.g., if you have any kind of Intel Mac, you absolutely should
         | upgrade.
         | 
         | I don't let my computers get older than 3-5 years because
         | compromises to my workflow aren't worth the cost savings (I
         | just make sure I keep them in good shape and sell them to
         | someone who is going to continue using them). I want to choose
         | the best software for my workflow, which is not necessarily the
         | software that is most resource efficient (that would be like
         | choosing MS Paint instead of Photoshop).
        
         | levodelellis wrote:
         | Except for the occasional python I don't need to touch any of
         | that. I'm the author, try looking the editor up in 3 or
         | 6months. It may have most of the papercuts solved. I went after
         | the big things that I had no time to implement the little
        
         | wg0 wrote:
         | It's the terrraform part of the LSP that's buggy and there's an
         | issue open for that on Terraform extension's GitHub repo.
        
         | prmph wrote:
         | Exactly.
         | 
         | Talk about something as simple as code folding. VsCode does the
         | best job of it I know, and yet the other day it simply stopped
         | working properly for pure JS code, not sure if that's because
         | Microsoft prefers we use Typescript instead of JS. Nothing I
         | did fixed it, and something as simple as that messes us with
         | your workflow. And then I remember that VSCode has introduced a
         | recent bug where after you collapse a piece of code, the file
         | jumps to a weird location. And other paper cuts too numerous to
         | mention, which seems to appear and go randomly
         | 
         | So I tried Sublime text again, only to find that "Collaspe All"
         | does not work properly by design, whatever the reason for that.
         | And it still insists on making many things un-ergonomic.
         | 
         | So I try Webstorm again, and after a few tweaks, it seems to do
         | pretty much what I want. But, it is dog slow, and the display
         | of collapsed comments is a bit weird. I start thinking of
         | writing my own code editor...
         | 
         | My point is pretty much this: The various advanced code editors
         | spend so much effort on advanced features, but they forget that
         | the basic must work flawlessly for most devs to have a good
         | experience. I wish they focused on the basics again to make
         | common sue cases frictionless.
        
       | nextaccountic wrote:
       | Is it open source? What programming language and what GUI toolkit
       | does it use?
       | 
       | I really want GUI programs that don't lose a frame no matter
       | what.
        
         | levodelellis wrote:
         | I'm the author, I haven't seen it drop a frame when running in
         | a release build. I had experience with SDL and wrote a test to
         | see if it performs as well as I remembered. It did, so I
         | implemented this without using a GUI toolkit. I didn't really
         | want to fight (and optimize) a toolkit to implement syntax
         | highlighting, autocomplete, etc
         | 
         | It's written in C++ because I knew I'd spend time optimizing
         | it. I've been writing C++ for 20years so I didn't hurt my foot
         | or do anything that caused me harm
        
       | skilled wrote:
       | No offense, but who made this? How did the submitter find this?
       | The Download page has a name but a Google search doesn't return
       | much.
       | 
       | Not that anyone would run a binary just like that, but I do find
       | it interesting.
        
         | mlhpdx wrote:
         | I hope developers are among the most careful about putting new
         | things on their systems. I hope.
        
           | yjftsjthsd-h wrote:
           | > I hope.
           | 
           | I have... simply the _worst_ of news.
        
           | solardev wrote:
           | I usually read _most_ of the description 's first sentence
           | before downloading a npm package. Does that count?
        
           | vundercind wrote:
           | Nah, we can't work without admin on our system because we
           | need to install 100 programs we've never really vetted, a
           | couple of which have been out of support for a decade.
           | 
           | How else are we going to efficiently add 20,000 lines of code
           | we haven't read as dependencies to our project... this week?
           | 
           | We'd love to do things safer but it's not in the sprint plan,
           | which plan assumes speed only possible if you use third party
           | tools and code you haven't properly vetted for basically
           | everything.
           | 
           | Never mind that then you slow to a halt when infosec sees a
           | CVE rate of ten a week against all those packages you had to
           | have, often against ones you're not even using but are a dep-
           | of--a-dep for some optional functionality you don't invoke,
           | and now your team spends 80 person-hours a week addressing
           | those and messaging about doing those and having code reviews
           | of one-line dep version bumps and running regression tests
           | and moving them through the deployment pipeline (we're
           | Responsible and Safe, as you can plainly see, so of course we
           | have at least three multi-step stages to get to deployment,
           | wouldn't want to be unsafe!), all because we want to "move
           | fast" but also "be safe" (but not at the same time, so the
           | left hand doesn't know what the right hand's doing until
           | everything's already all fucked up)
           | 
           | (Sigh)
        
         | redman25 wrote:
         | Hey, I'm OP. I did not write this blog post. It was an
         | interesting one from r/programmers that I felt worth cross-
         | posting to HN. Not sure if there's a clear way to indicate that
         | in the title...
         | 
         | Here's the original reddit post:
         | https://www.reddit.com/r/programming/comments/1c8yhll/i_cant...
        
           | skilled wrote:
           | ok, thanks
        
       | ksec wrote:
       | VSCode is slow?
       | 
       | I mean, for 7 years? Somewhere around early 2017 things started
       | to get out of hand and VSCode was super hyped. To the point 99%
       | on HN was saying it was very fast. Initially ( Pre 2017 ) it was
       | compared to Atom which means the bar was low. And then somehow
       | people start claiming it was as fast as Sublime or they see no
       | difference.
       | 
       | As someone mentioned down below, both Lapce and Zed is designed
       | with speed in mind. Or just use VIM.
       | 
       | VSCode may be flexible, but it is only fast by the measure of an
       | electron App.
        
         | __jonas wrote:
         | It's fast enough for me to not notice any slowness. I switched
         | to it from JetBrains IDEA because it was literally causing
         | seconds of delays when scrolling / entering code during heavy
         | indexing in large projects. I never noticed anything of the
         | sort in vscode, even if extensions are doing a lot of
         | background work I don't notice any significant impact in the
         | UI, I can always scroll and type without interruption.
         | 
         | I tried out zed, I don't really find it noticeably faster,
         | although I'm sure it is! I guess there are people who are more
         | sensitive to this sort of thing but for me it's really
         | completely fine.
        
         | ehnto wrote:
         | Probably a combination of new developers and wide spread use of
         | SSDs have made it's public image of speed. But really it is
         | pretty quick, on modern hardware it is more or less instant at
         | most tasks.
         | 
         | I use Jetbrains IDEs and am migrating to neovim, even Jetbrains
         | is basically instant searching across large codebases once on
         | good hardware.
        
         | jinushaun wrote:
         | If I were to guess, like everything else, it's fast until you
         | install extensions.
        
       | causal wrote:
       | BTW if VSCode is slow for you, check what extensions you have
       | installed.
        
         | awfulneutral wrote:
         | Yeah, for me it's more than fast enough except for the
         | Microsoft pylance and C# extensions, both of which I really
         | need to feel productive, and both of which (especially pylance)
         | make VS Code much slower and buggier. It has been getting bad
         | enough that I've been looking around for other editors, but as
         | far as I can tell VS Code really wins on having all the
         | language features, plus copilot and git integration in a single
         | place.
        
           | neonsunset wrote:
           | C# extension generally has acceptable performance (as long as
           | you use Roslyn LSP and not the Omnisharp one, although it
           | also was fast at the cost of higher memory usage and less
           | stability). What could be slowing it down is other
           | extensions, especially if they have heavy Roslyn analyzers.
           | 
           | For large project it doesn't scale as well, which is where
           | Rider comes into play, I still daily drive VSC as the editor
           | since it's just way snappier and more fluid than Rider.
        
         | rstat1 wrote:
         | Even without extensions its always gonna be slower than a
         | proper native app.
        
       | gostsamo wrote:
       | VSCode is still on the top of accessibility, so when you can
       | claim that you work perfectly with a screen reader, you will
       | convince me to switch.
        
         | bigcoke wrote:
         | people often overlook accessibility and other essential
         | features of a modern editor, you telling me that your
         | rudimentary rust editor is faster than vscode? and? people
         | don't use it because it's fast (it's not).
        
           | vbezhenar wrote:
           | How is accessibility an essential feature? I'm not disabled,
           | so I don't care if editor is accessible or not. I care about
           | my use-cases. And I use vscode precisely because it's crazy
           | fast.
        
             | viraptor wrote:
             | You're not disabled _yet_. But you may want to care about
             | this before your eyesight, motor accuracy, etc. start
             | failing. It 's not some big "disabled/not" switch - setting
             | the font 1pt higher is accessibility, changing the colours
             | is accessibility, being able to tab through fields
             | consistently is accessibility, etc.
        
               | soerxpso wrote:
               | The idea that I might eventually become disabled still
               | doesn't make it an essential feature. Disabled users are
               | not a significant portion of the userbase of most
               | software. Accessibility is an essential feature for a
               | text editor in the same way that Linux support is an
               | essential feature for Fortnite.
        
               | viraptor wrote:
               | > Disabled users are not a significant portion of the
               | userbase of most software.
               | 
               | Have I got news for you. https://www.disabled-
               | world.com/disability/statistics/
               | 
               | > Currently, around 10% of the world's population, or
               | roughly 650 million people, live with a disability.
               | 
               | > In countries with life expectancies over 70 years of
               | age, people spend on average about 8 years, or 11.5
               | percent of their life span, living with disabilities.
               | 
               | Sure, not all of the disabilities will apply to using an
               | editor. But disabilities overall are very common. A
               | significant proportion of users of anything are disabled
               | in some way - it just may not be obviously visible.
        
         | zilti wrote:
         | Emacs
        
       | macrael wrote:
       | Sublime text is great! It's been worth it to write small plugins
       | to fix my biggest complaints but since they got LSP runni by
       | first class it has been a great place to be.
        
       | PhilipRoman wrote:
       | Really cool work. By the way does it support variable DPI? Maybe
       | it's just a limitation of how my sandbox is set up, but font size
       | and everything else seemed a bit small.
        
         | levodelellis wrote:
         | Right now I have only the icon and font size as hardcoded. I
         | plan on implementing a config file so users can set their own
         | font, size and etc. I have no idea when I'll release another
         | build. I'll be spending the next week catching up on sleep
        
       | swah wrote:
       | And Zed?
        
         | teo_zero wrote:
         | Doesn't Zed only run on MacOS?
        
           | dkersten wrote:
           | Yes, although there is a Linux version underway. It seems to
           | be about ~80% complete, maybe check it in a few months. No
           | idea of a windows version is in progress or planned though.
        
       | macromaniac wrote:
       | >I'd tweak the script; then to see the results I would press F5
       | to run the already built binary and wait over a second EVERY
       | SINGLE TIME (about 1480ms).
       | 
       | I put in a bug report for this years ago but it got ignored :(
       | https://github.com/microsoft/vscode/issues/137066
       | 
       | Vscode has gotten slower over time. It's true you can't get
       | nanosecond performance out of JS, but anything under 17ms should
       | be trivial. I believe the vscode developers are skilled, it's
       | just they don't care (imo) enough about performance for whatever
       | reason, and that's a shame.
        
         | kcplate wrote:
         | Everybody who worked writing code in the 70s-90s is smirking at
         | "wait over a second".
         | 
         | Back in the day, I used to go get my coffee, shoot the shit in
         | the break room for a few minute, and come back to find my debug
         | runs just starting.
        
           | blegr wrote:
           | Wasn't that mostly compiling though? VSCode's CMake tools
           | take multiple seconds just starting an already-built
           | executable.
        
           | cjensen wrote:
           | Turbo Pascal was so fast in the 80s that if I saw a syntax
           | error further down the page it was faster to hit "compile"
           | and let the compiler move the cursor to the error than it was
           | for me to move the cursor myself.
           | 
           | It was a very special compiler and they don't make them like
           | that anymore.
        
             | outside1234 wrote:
             | It's crazy that this is still the gold standard
        
               | pjmlp wrote:
               | We got outsteped by C and C++ industry adoption, followed
               | by doing everything in interpreted languages.
               | 
               | Finally 30 years later, the pendulum is turning around.
        
             | vbezhenar wrote:
             | The trick is to have language "optimized for compilation"
             | and do not do fancy optimizations.
             | 
             | Java is similar (but overall infrastructure around compiler
             | makes it slow).
             | 
             | Golang also quite fast.
        
               | thechao wrote:
               | I think LLVM missed the boat, on this, by being an early
               | mover. A _lot_ of the optimizations are resource-only
               | analyses; the few that re not are  "just" various levels
               | of interpretation. That kind of implies we need a
               | framework to define resource utilization and evaluation
               | at the instruction/machine-code level with a standard
               | API. Having an optimizer for an abstract IR is less
               | useful.
               | 
               | The point being that compilers would then target emitting
               | reasonable machine code at speed, and The Real LLVM would
               | do analysis/transform on the machine code.
        
             | fuzztester wrote:
             | And V 3.01 was under 40 KB (not a typo), and included a
             | basic WordStar editor clone for program editing!
        
             | rurban wrote:
             | They still do. Lua is likewise extremely fast, and comes
             | without bullshit mostly,
        
           | doix wrote:
           | And in the 00's things were pretty instantaneous, at least
           | from a UI perspective. I actually developed some "bad" habits
           | where I'd just hold the step hotkey down to advance my
           | program when debugging. And everything just worked and was
           | synchronous. All the registers updated with each step, as
           | well as my watched variables and everything else I can think
           | of. I'm pretty sure this was visual studio 6.
           | 
           | That was peak Microsoft debugging experience for me,
           | everything after that was worse, admittedly I did drop it and
           | moved to Linux, so maybe it is good now. Although I very
           | strongly doubt it.
        
           | hacym wrote:
           | Amazing how technology has improved and matured in 50
           | years...
        
         | cjbgkagh wrote:
         | Wow, marked as-designed. I guess that's one way to fix the
         | issue. In my experience latency needs to be < 250ms to be
         | considered good, 500ms is roughly the max people can put up
         | with, 2s is enough to drive people insane.
        
         | CamperBob2 wrote:
         | In my experience, that one-second wait to run a binary that you
         | just built is due to realtime scanning by Windows Security.
         | It's not very bright. It sees a new .exe file and assumes you
         | downloaded it from the Pirate Bay, even though it was written
         | by link.exe.
         | 
         | You can disable it as long as Group Policy doesn't dictate
         | otherwise.
        
           | alkonaut wrote:
           | Not having an exclusion for a development directory is like
           | using a 10yo machine or using a laptop without the power
           | brick connected: it's basically leaving half the perf on the
           | table.
           | 
           | Still, a second seems a bit much for a real-time scan.
        
             | 0cf8612b2e1e wrote:
             | Clearly you do not work for corporate America. Any amount
             | of performance loss is acceptable to check a security
             | compliance checkbox somewhere.
        
               | alkonaut wrote:
               | I work for a large, slow moving US company in traditional
               | industry. Of course there is an exclusion list, and it
               | contains a few commonly used dirs like "C:\dev" and so
               | on. If that would change (or if the request years back to
               | have company wide exclusions wouldn't have been listened
               | to), it's the kind of thing I'd insta-quit a job over,
               | even after 20 years.
               | 
               | So anecdotally (N=1) it's not automatically horrible in
               | US orgs.
        
               | wkat4242 wrote:
               | Don't forget the enterprise market has a whole different
               | threat model. Even though blanket exclusions are often
               | used, a determined attacker will quickly figure out to
               | dump their remote exploration tool in c:\dev .
        
             | pacoverdi wrote:
             | Under Windows 11, a "dev drive" can also make a big
             | difference.
             | 
             | https://learn.microsoft.com/en-us/windows/dev-drive/
        
               | throwaway888abc wrote:
               | Thanks for tip, TIL
        
           | levodelellis wrote:
           | I'm on linux tho (and the author of the article)
        
       | arun-mani-j wrote:
       | When I had a 2 GB laptop lying around, I always wanted a simple
       | text editor with auto-completion etc. (Though only for Python,
       | Linux)
       | 
       | After trying KDevelop, Kate, Eric, Sypder etc. I thought I could
       | write my own.
       | 
       | I had a simple plugin system in mind, with similar to LSP style
       | features (VSCode was not released that time).
       | 
       | The UI was inspired by Blender. Blender has such a fluent UI
       | where you can customize everything.
       | 
       | So I wrote a small GTK library to mimic Blender's UI.
       | 
       | And started development of the text editor. But then got busy
       | with school and left the idea.
       | 
       | Then I found out Emacs and Doom Emacs and dropped the idea of a
       | custom text editor eventually :).
       | 
       | Two reasons: 1. Emacs was 200% configurable, which is what I
       | wanted to implement in my editor too.
       | 
       | 2. Emacs worked pretty good on my 2 GB laptop with all the
       | goodies.
       | 
       | But compared to 10 years back (when I was trying these things),
       | it is quite easy now thanks to LSP, Tree-Sitter etc. But it is
       | always a fun ride with algorithms and data structures. :)
       | 
       | I haven't used VSCode, but it is really nice how it changed the
       | text-editor platform with LSP etc.
       | 
       | Now I have a laptop with 24 GB RAM but I'm forever vendor locked-
       | in with Emacs :D
        
         | fullstop wrote:
         | During the vi / emacs wars, the joke was that emacs stood for
         | "eight megabytes and constantly swapping".
         | 
         | How times have changed.
        
           | alanjay wrote:
           | It's now eighty megabytes ;)
        
             | Toorkit wrote:
             | Tiny!
        
           | fuzztester wrote:
           | Or, Eventually Munches All Computer Memory.
           | 
           | There were probably other expansions too.
        
         | smitty1e wrote:
         | I've liked Emacs, but the left-handedness of the key-chords
         | tore me up all the way to the shoulder after any substantial
         | amount of use.
         | 
         | Spacemacs was my answer.
         | 
         | https://www.spacemacs.org/
        
         | bean-weevil wrote:
         | I had a very similar experience. I spent so much time searching
         | for answers, early-adopted atom, etc, only to find that vim was
         | the answer the whole time.
        
       | tiffanyh wrote:
       | > FOR PERSONAL USE ONLY
       | 
       | Since the license says for personal use, I assume that means I
       | can't use this in a corporate setting?
       | 
       | https://bold-edit.com/download
        
         | mysteria wrote:
         | If you interpret this very strictly it could even imply that
         | this editor couldn't be used to say write open source code
         | that's distributed to the public. Basically all you could do
         | with it is write code at home for your own use.
        
           | tiffanyh wrote:
           | That's why I ask actually.
           | 
           | Whats the generally accepted legal interpretation for
           | "personal use".
        
         | beeboobaa3 wrote:
         | All my work in a corporate setting is personal use. It's me
         | personally using the software to earn money.
         | 
         | Point is, "personal use" is such a nonsense term.
        
       | vrnvu wrote:
       | This reminds me of the famous Visual Studio rant by Casey
       | Muratori https://www.youtube.com/watch?v=GC-0tCy4P1U
       | 
       | And the hundreds (if not thousands :D) of rants by Jon Blow
       | saying how contemporary software performance sucks
        
         | levodelellis wrote:
         | Have you seen "Jonathan Blow plays Visual Studio"? I ran across
         | it after I started and understood his pain
        
       | armchairhacker wrote:
       | The author could try forking and patching VSCode to fix the
       | annoyances manually.
       | 
       | Years ago I had an issue with VSCode: it was missing a small
       | feature that was very important to me, with the GitHub issue
       | stuck in limbo.
       | 
       | I ended up going into the source and implementing the feature
       | myself. It took a few hours after bugfixing, I think the fix was
       | ~100 LOC. Then I used the locally-built version. I recall
       | building took a while, and the source and artifacts took a lot of
       | space, but no other problems.
       | 
       | I also created a PR referencing the issue and it got merged
       | rather quickly. Someone else ended up finishing the work since
       | there were some problems (I think relating to coding conventions,
       | and possible edge cases I didn't need or handle).
       | 
       | Maybe I was lucky for the feature to not require much edits, and
       | probably for the PR to get taken over and then merged fast. But
       | it seems like the author's issues are also small, and it would be
       | easier and more ergonomic to patch VSCode than to create an
       | entirely new debugger.
        
         | omni wrote:
         | I had a near-identical experience. I looked into switching in
         | 2019 and ran into this 2016 bug which was a showstopper for me.
         | Fixed it myself, grand total 4 line diff.
         | https://github.com/microsoft/vscode/issues/10643
        
         | sam0x17 wrote:
         | Sometimes it's easier to start from scratch than figure out how
         | some storied monolith works
        
         | nailer wrote:
         | Just a thought that sometimes people developing C# since the
         | early 2000s don't come from an open source culture, so fixing
         | bugs in someone else's programs doesn't appear in their default
         | list of resolutions.
        
         | segmondy wrote:
         | This is the way. Anytime I have had issues with an open source
         | project, creating a PR even if it's not great will often have
         | it taken over, improved and merged.
        
           | jjeaff wrote:
           | I'm sure someone named some "law" after themselves for this.
           | But it is true that the fastest way to get an answer to a
           | question online is not to ask a question; post the wrong
           | answer.
        
       | dandigangi wrote:
       | Could have just used Visual Studio if you/re deep in C# lol
        
         | neonsunset wrote:
         | Visual Studio editing experience is just not nice compared to
         | VS Code.
         | 
         | A lot of developers have moved on to Rider or VS Code + Rider
         | combo nowadays.
        
         | viraptor wrote:
         | Have you tried doing much with VS/C# in practice? I get some
         | new, weird bug every time I use it, the UI preview tabs take
         | ages to show up, the compilation delay is easily crossing 2s,
         | etc. It's really not great if you're already bothered by the
         | speed of vscode.
        
       | magicalhippo wrote:
       | On the flipside, I recently had to make some changes to a ~1.5GB
       | XML file, like in the middle of the file. I had a sudden
       | flashback to the Atom editor, which developers considered a 1MB
       | XML file as "large", and hence it totally chocked on a 100MB one
       | I tried once, crashing out after eating 8+GB of RAM.
       | 
       | To my mild surprise, it opened in a few seconds, and while all
       | the fancy checking stuff got disabled, basic syntax highlighting
       | still worked so element tags were colorized. Finding and changing
       | the offending element was not much different from normal. I
       | checked memory usage, expecting it to be astronomical, but it was
       | quite within reason (~3 GB IIRC).
       | 
       | I admit I did not expect it to go that well.
        
         | rrishi wrote:
         | You didn't mention which editor you were able to edit the large
         | XML in. Just confirming, it was VSCode? Because that'd be
         | amazing!
        
           | magicalhippo wrote:
           | Yes, VSCode as of half a year ago.
        
       | pipes wrote:
       | The only thing that annoys me about VS code is that Microsoft
       | decided to call it visual studio, which means if I search for
       | help for a problem with actual visual studio I end up with vscode
       | suggestions. Id like to know why ms thought this was a good idea.
        
         | Onawa wrote:
         | Microsoft has been flopping with their naming recently... Case
         | in point, Copilot. GitHub Copilot, Microsoft Copilot, Office
         | 365 Copilot... all different products for different uses. Still
         | can't figure out why they didn't follow through with Cortana
         | being the OS copilot name and retired it. It was such a perfect
         | fit. My only guess is that they are worried about
         | anthropomorphizing the AI.
        
           | sibit wrote:
           | > Still can't figure out why they didn't follow through with
           | Cortana being the OS copilot name and retired it.
           | 
           | I can't figure out why they didn't use it as an opportunity
           | to bring back Clippy.
        
       | tasuki wrote:
       | It really is too bad vs code is the only available option. If
       | only there were more editors for people to choose!
        
         | yoyohello13 wrote:
         | Yeah imagine if there was an editor that was super fast and
         | lightweight that was designed with extendability as a first
         | class citizen.
        
       | yoyohello13 wrote:
       | This is pretty cool, but why not use neovim or emacs or
       | something?
        
       | syngrog66 wrote:
       | vim exists
        
       | briandear wrote:
       | Or just use Vim. Not sure I understand the obsession with VSCode.
        
         | levodelellis wrote:
         | Have you had a good debugging experience with (neo)vim? I'm the
         | author
        
           | YorickPeterse wrote:
           | There are DAP extensions for both Vim (e.g.
           | https://github.com/puremourning/vimspector) and NeoVim
           | (https://github.com/mfussenegger/nvim-dap). I can't speak as
           | to the experience in detail (I think I briefly played with
           | nvim-dap a year or two ago), but I suspect that for most it
           | will be good enough.
        
           | zilti wrote:
           | And same for Emacs, great LSP and DAP integration.
        
             | levodelellis wrote:
             | I heard someone say gdb works great with emacs but I never
             | had a good experience with C++ in neovim. I asked friends
             | and they all say they use a second editor to debug which is
             | part of why I bothered to do this
        
       | mdaniel wrote:
       | While trying to cough up more details about this, I discovered
       | https://bolinlang.com/faq#:~:text=One%20issue%20we%20have%20...
       | so it seems the skunkworks site design is a thing. I especially
       | enjoyed the "cloud company stol my shit" vibe
        
       ___________________________________________________________________
       (page generated 2024-04-21 23:01 UTC)