[HN Gopher] Zed, a collaborative code editor, is now open source
___________________________________________________________________
Zed, a collaborative code editor, is now open source
Author : FeroTheFox
Score : 1526 points
Date : 2024-01-24 17:15 UTC (2 days ago)
(HTM) web link (zed.dev)
(TXT) w3m dump (zed.dev)
| mgrandl wrote:
| Exciting stuff! Have enjoyed using Zed so far although I haven't
| been able to fully switch over.
| packetlost wrote:
| I hope this leads to Zed being ported to other platforms (Linux,
| please!)
| misternugget wrote:
| Hey! Engineer at Zed here. Linux port is on our roadmap.
| Hopefully we'll get it done this year!
| shortrounddev2 wrote:
| What about Windows?
| misternugget wrote:
| I think that is on the roadmap too, but possibly further
| down.
| archon810 wrote:
| Is there some place I can subscribe to the Windows
| release notification?
| JellyBeanThief wrote:
| Possibly https://www.google.com/alerts?
| c0balt wrote:
| Maybe the tracking issue for Windows support:
| https://github.com/zed-industries/zed/issues/5394
| shortrounddev2 wrote:
| You know Windows is the most common development platform?
| If it were me I'd prioritize it
| olingern wrote:
| I think linux + osx combined is probably developer
| majority. I'm assuming most Windows development is .NET
| or Unity based. Over the past nine years, I've worked
| primarily with Node, Ruby, and a smidgen of Java and no
| employer has issued Windows machine. It's in sharp
| contrast with the start of my career where I was in VB6
| and C# where I only worked with Windows environments.
| Could be confirmation bias, though.
| shortrounddev2 wrote:
| Windows is a great platform for developing any language
| or platform, not just .Net. Personally I think it blows
| macOS and its dated tools out of the water in any
| category
|
| https://survey.stackoverflow.co/2023/#section-most-
| popular-t...
|
| Stackoverflow found that Linux and macOS is the slight
| majority for professional use and the minority for
| personal use with developers (with the caveat that the
| total professional use of all categories is >100%)
| alemanek wrote:
| Just curious what tools are you missing on MacOS or Linux
| that are found on Windows?
|
| I have been on MacOS the last 8 years or so but before
| that was all Windows and Linux. I prefer MacOS now but
| curious what I am missing. My colleagues that are using
| Windows machines all use WSL with dev containers so
| really just using Linux under the hood.
|
| My experience is that pretty much everything is cross
| platform these days. I don't do .Net or game dev though.
| Just Go, Java and some NodeJS these days.
| Rapzid wrote:
| > so really just using Linux under the hood
|
| Yeah, but with Windows GUI along with fractional scaling,
| device, and etc support haha. I've developed on both bare
| Linux and for years in Linux VMs. Saying Windows+WSL is
| "really just linux under the hood" does this setup a
| massive disservice. It makes me smile every time I type
| WSL into the terminal lol.
| alemanek wrote:
| Yeah Linux desktop environments are a bit of a mess but
| OP specifically called out MacOS as well. Once you add
| Rectangle it is a solid DE in my opinion. Also it is
| Unix/linux compatible so kind of the same beast with good
| GUI/hardware and *nix terminal.
|
| Was just curious what Windows only tools I am missing out
| on.
| Rapzid wrote:
| Fair. But I will say that OSX is superficially similar to
| Linux to many people.
| Rapzid wrote:
| I agree. Long time Linux engineer who prefers Windows to
| OSX as a desktop OS. Currently use a Windows workstation
| with WSL and VSCode as a daily driver. I feel this
| currently gets me the best of both worlds(Windows/Linux).
| mrgoldenbrown wrote:
| The Zed team disagrees. Here is what they say in the
| github discussion on the issue: (https://github.com/zed-
| industries/zed/issues/5394)
|
| "We will let you know when windows support is under
| development. The Zed team isn't taking feedback on when
| we start on windows support, nor why we didn't start with
| windows.
|
| The amount of people on each platform isn't relevant, as
| it starts with the base assumption that more people =
| better to the Zed team. Growth driven development
| unlikely to lead to a resilient, high quality product
| long term."
| Rapzid wrote:
| Haha, well they will get lots of feedback they don't want
| to take.
|
| A company like Jetbrains can do this to an extent due to
| existing products fueling long term R&D efforts before
| they bare fruit. Interested to see how this outlook holds
| up as the runway burns and investor pressure increases
| from that cool 12.5m they raised last year.
| Shorel wrote:
| Even when I am forced to use Windows, I develop on Ubuntu
| inside a Virtual Machine.
|
| About 80% of the developers at my company do the same.
| Only a few are happy with just Windows.
|
| So, I would prefer if they prioritize Linux and leave
| Windows as the last one.
| kvark wrote:
| How are you planning to tackle the GPU API differences?
| 1propionyl wrote:
| (Not OP)
|
| These days that's a lot less of a concern than it used to
| be. It is a lot of up-front work to facade e.g. Metal,
| Vulkan (and even D3D12) but it's much much much easier than
| back in OpenGL vs D3D9/10 days.
|
| Most of the general concepts are more or less the same
| across them all these days. The "shapes" of the APIs are
| very similar.
|
| A texture is a texture is a texture. Same for a
| vertex/index/uniform buffer, vertex/fragment/compute
| shaders (notably not geometry, but you can just use
| compute), etc.
| 6gvONxR4sf7o wrote:
| I'm not in the graphics world at all, but I read this
| lively discussion last week (post [0], discussion [1])
| that made me think the situation was pretty messy. Is it
| maybe not as bad as that makes it appear?
|
| [0] https://www.carette.xyz/posts/we_are_doomed/
|
| [1] https://news.ycombinator.com/item?id=38994780
| raphlinus wrote:
| I'd recommend wgpu. It should be a fairly easy migration
| from Metal, as Apple has been actively involved in the
| design, and there are similar concerns for developer
| experience (unlike, say, Vulkan).
|
| Unfortunately, graphics is in many ways the easy part.
| Really excellent integration with system menus,
| preferences, keyboard, input method editing, all have
| more variation across platforms and a still-evolving
| story of solid Rust abstractions. Lately, we've decided
| to try joining forces with the winit project to see if we
| can get those problems solved well.
| LoganDark wrote:
| Is there any way to make it compatible with macOS 10.14? Your
| minimum macOS requirement is literally just one release away
| from what I have!
| hav wrote:
| I'm running it just fine on 10.14.
| LoganDark wrote:
| During the closed beta, the requirements said the minimum
| was 10.15, and I tried to download it and run it anyway
| and it wouldn't run.
|
| Did you have to build it from source?
| hav wrote:
| I have to apologise and backtrack here. I was under the
| impression that "Sonoma" was in fact 10.14 but it's just
| 14. 10.14 was "Mojave".
| cpuguy83 wrote:
| Since you are here I'll hijack the thread :) What about
| remote support ala vscode-server over SSH.
| c-c-c-c-c wrote:
| Please not ala vscode-server over SSH.
|
| Do it proper like emacs tramp so it will connect to any
| platforms/architectures.
| Shish2k wrote:
| "Please don't do it like a 4x4 truck, do it proper, like
| a bicycle" -- there is some overlap between those things,
| but for people who are actually making full use of the
| former, the latter is not a useful suggestion
| klyrs wrote:
| I'd suggest that the people who make "full use" of vsc-
| over-ssh are satisfied with vscode, so it would be unwise
| to target the full featureset.
|
| More generally, targeting another project's complete
| featureset is often a great way to get mired down in the
| wrong details. Unless you can afford to do a proper
| cleanroom -- then, you'll be able to at least match the
| performance and useful abstractions used in the original.
| rand_flip_bit wrote:
| > I'd suggest that the people who make "full use" of vsc-
| over-ssh are satisfied with vscode, so it would be unwise
| to target the full featureset.
|
| Remote SSH + Dev Containers and their seamless
| integration (even stacking one on the other) are the only
| features that keep me using VS Code. I would love to see
| the full implementation of these in an editor as fast and
| light weight as Zed.
| angra_mainyu wrote:
| How exactly are these features present in your workflow?
| I honestly struggle to think of when I'd ever use this.
|
| Fwiw, I do a lot of infrastructure-as-code, full stack,
| and systems programming.
|
| I usually have a split screen (editor | terminal) or two
| terminals on the side, and exec into a container, or use
| devenv.sh.
|
| If I _really_ need to modify files in the container as I
| dev and a "make" doesn't cut it, I usually just run
| podman with a -v mount. Similarly for remote machines w/
| sshfs, though I try not to.
| MrJohz wrote:
| Devcontainers are amazing for getting a consistent
| environment set up on multiple computers on multiple
| operating systems. I was in this situation recently with
| a new colleague who was using a very locked-down Windows
| computer, and it was really convenient for the "you must
| install" list to be Docker and VSCode only. It's
| definitely not ideal - it adds overhead on Windows and
| Mac, there's occasional networking issues, and I don't
| have all the creature comforts of my usual shell - but
| it's very convenient for what it is.
|
| Similarly, editing code in-place over SSH rather than
| rsyncing back and forwards is very useful for certain
| types of embedded development. I worked for a while on
| sensor systems where a lot of the logic was handled by a
| Python webserver that couldn't really run without access
| to the sensor data it was using. Developing entirely
| locally was therefore difficult, but developing on the
| machine was also painful because it didn't have the right
| tools. So we'd work locally, and then copy the Python
| files over every so often and restart the server. At the
| time, I don't think VSCode's remote stuff was working as
| well, but I believe now it's a lot better and could have
| handled that situation well - edit everything in-place,
| run it immediately, but still have the power of you local
| development machine available to you.
| scottlamb wrote:
| > I'd suggest that the people who make "full use" of vsc-
| over-ssh are satisfied with vscode, so it would be unwise
| to target the full featureset.
|
| Wha...? This is a killer feature. I'll put up with a lot
| of crap to use it. That doesn't mean I wouldn't switch to
| something nicer in other ways if it also offered this
| killer feature.
|
| It's hard for me to understand why there are IDEs under
| active development not trying to offer this feature. It
| is so much better an experience to have the network split
| into the proper place: between the UI and the heavy
| computation. Having the UI too far away undoes whatever
| responsiveness work has been done and more. Having the
| heavy computation too near means it's hard to develop and
| test the far environment, take advantage of its compute,
| etc.
| cultofmetatron wrote:
| > the people who make "full use" of vsc-over-ssh are
| satisfied with vscode,
|
| almost all my coding these days is over vsc-ssh. if zed
| supported sshing into a remote host and into a docker
| container as seamlessly as I can in vscode, Id switch
| immediately. The performance of the ui in zed is so much
| better. I'm a bit sad I can't switch with its current
| feature set.
| c-c-c-c-c wrote:
| The former is bad design, it has no gradual fallback and
| works in a terrifying way. It pulls binaries from MS
| servers and runs a headless vscode instance on the remote
| machine. You are dead in the water if you target a
| machine/architecture it doesnt support.
|
| You want to target FreeBSD? Linux on POWER or RISC-V? An
| old (ARMV6-TDMI) Raspberry Pi? Sorry, no remote work for
| you.
|
| They are not an apple and pears comparison...
| agubelu wrote:
| I'd very much prefer something that works seamlessly in
| 95% of the use cases and makes me do some work or look
| for an alternative for the remaining 5%, than something
| that makes me do work in 100% of the cases.
| tomjakubowski wrote:
| Bikes likewise have advantages that 4x4s lack. If you
| mean to imply everyone ought to be satisfied with the
| 4x4, and not ask for a bicycle: no. We can have both.
| oblio wrote:
| What's the architectural difference between the two?
| madeofpalk wrote:
| I'm really keen for Windows support, but only if it means
| WSL. I hope their architecture allows for it.
| yoyohello13 wrote:
| When they get linux support you could probably run it in
| WSL, since WSL supports GUI apps now.
| madeofpalk wrote:
| I don't think I would like that. I haven't been impressed
| with the experience of running GUI apps within WSL. Weird
| window controls/resizing, compositing, and font rendering
| issues would be a hard blocker from using this as
| probably the second most important app on my computer.
| spearman wrote:
| https://github.com/zed-industries/zed/issues/5347
| awill wrote:
| Excellent. A big reason I use Sublime is because it's cross
| platform (Mac at work, Linux at home).
| gtirloni wrote:
| What kind of help do you need to make this happen?
| mdaniel wrote:
| I was curious myself what the hurdle is and so I checked
| out the latest tag and followed along with
| https://github.com/zed-
| industries/zed/blob/v0.119.18/.github... and it went ok
| except for building https://github.com/zed-
| industries/zed/tree/v0.119.18/crates/... which puked
| because https://github.com/zed-
| industries/zed/blob/v0.119.18/crates/... is the only one
|
| so, my strong suspicion is that porting gpui is the long
| pole, since it is apparently just going to do its own gui
| toolkit
| rmrf100 wrote:
| Great! waiting for it!
| bryango wrote:
| Hey! Thank you for this cool editor! However, has it been
| written with cross-platform support in mind? Otherwise,
| porting from mac to linux could be rather painful and time-
| consuming... Will there be an ETA for us linux users? I saw
| it on the roadmap [0] but without an ETA.
|
| [0] https://zed.dev/roadmap
| jhasse wrote:
| > However, has it been written with cross-platform support
| in mind?
|
| Nope, it's using Apple's proprietary Metal API.
| WillAdams wrote:
| Will you be using GNUstep for the port?
| Klonoar wrote:
| Nobody wants to use GNUStep in 2024.
|
| Their UI framework is also rendering via the GPU, so it's
| more likely they'd wrap it in a GTK/Qt/whatever window and
| then just render accordingly. You don't need GNUStep for it
| since there's little "mac"-isms you need to cover.
| ufo wrote:
| Speaking of Linux, are there any other editors we can use
| today? I tried to look for one recently but couldn't find
| anything. (edit: I mean collaborative editors)
| CodeCompost wrote:
| You're joking, right?
| ufo wrote:
| Looking for collaborative editors in particular. Two people
| editing at once, on different computers. Each person has
| their own copy of the file, on disk.
| stevage wrote:
| I'm curious about your use case?
| fredoliveira wrote:
| This is a pretty common use case. Remote pair
| programming, interviews, etc, all rely on this same basic
| idea.
| ufo wrote:
| Authoring Latex documents. I want a non-browser
| alternative to Overleaf. When the paper is close to done,
| me and my colleague are on voice call, editing the same
| file. But we both want to be able to compile it to PDF,
| to be able to see the figures.
| OccamsMirror wrote:
| Both VSCode and Intellij can perform this function.
| politelemon wrote:
| nano, pico, vim, VS Code, Brackets, Notepadqq, Gedit, Kate,
| Leafpad, Geany
| cstrahan wrote:
| Helix is another interesting option:
|
| https://helix-editor.com/
| level87 wrote:
| I love helix, everything just works
| greyw wrote:
| emacs.
| ufo wrote:
| I was particularly looking for collaborative editing; two
| people editing the same file at once and each has a local
| copy of the file so they can run the code. Perhaps one
| could use a normal editor for this if there were some
| underlying command-line tool and/or plugin to do the actual
| file synchronization. Do you know of any?
| ants_everywhere wrote:
| GNU Screen does this https://www.gnu.org/software/screen/
| manual/html_node/Multius...
|
| See also the list of ways of doing collaborative editing
| in emacs:
| https://www.emacswiki.org/emacs/CollaborativeEditing
| iruoy wrote:
| All JetBrains IDEs work on Linux and all electron apps of
| course. Lapce seems like Zed and is already available on
| Linux. So is Sublime Text.
|
| There's a whole list here: https://wiki.archlinux.org/title/L
| ist_of_applications/Docume...
| SCdF wrote:
| Collaborative editors I presume you mean? Because 99% of
| popular editors have linux builds.
|
| Anyway, the VSCode plugin ecosystem is probably your best bet
| there:
| https://code.visualstudio.com/learn/collaboration/live-share
| ufo wrote:
| Precisely, I'm looking for collaborative editors. Thanks
| for the suggestion, I hadn't seen this one.
|
| Unfortunately, it seems that this plugin only shares the
| editor window and does not keep a local copy of the files.
| I was wishing for something that would let both sides run &
| compile the code during the editing session, without having
| to stop for git push.
| https://github.com/MicrosoftDocs/live-share/issues/3524
| jasonjmcghee wrote:
| Jetbrains allows both users to execute / debug but it's
| all on the host machine.
|
| What you're talking about sounds like you should do an
| rsync script that watches file changes, but seems like a
| good way to constantly be breaking the other persons
| workflow.
|
| git solves these problems- feels like the right tool. But
| maybe I'm missing something about your workflow
| starkparker wrote:
| Gobby is mostly dead but still works. Win/Linux; macOS builds
| have gotten harder now that it's been about 3 years since the
| last release: https://gobby.github.io/
|
| EDIT: It's apparently on Macports as of quite recently,
| though the port health for recent macOS releases looks bad.
| msephton wrote:
| It's Mac but SubEthaEdit is collaborative.
| starkparker wrote:
| As much as I hope for that, I also hope this leads to Zed
| compatibility with other collaborative editing/CRDT clients,
| like SubEthaEdit and Etherpad.
| ushakov wrote:
| Also take a look at their freshly open-sourced Rust UI Framework
| (GPUI): https://www.gpui.rs
| jasonjmcghee wrote:
| So excited about this. Been watching it for a while. Thanks for
| posting it!
| dave_universetf wrote:
| Worth noting that, like many immediate mode UIs, it seems to
| not integrate with OS accessibility infrastructure at all. That
| means any UI built with it will be a black box to anyone who
| needs accessibility tools like VoiceOver, text magnification,
| or semantic navigation.
|
| Hopefully that's fixable :/
| raphlinus wrote:
| It should be. There's AccessKit integration in egui (the most
| prominent Rust immediate mode GUI implementation) now, thanks
| to Matt Campbell's work. I would welcome GPUI and Zed
| adopting that, and I'm sure Matt can offer help in getting it
| integrated.
| mikaylamaki wrote:
| Zed developer here, I've actually looked at how to
| implement AccessKit in Zed, though I couldn't find a quick
| way of jumping into it beyond 'read the egui PR' at the
| time. If anyone wants to take a stab at it I'd love to help
| out and make it happen :)
| mwcampbell wrote:
| Hi, lead AccessKit developer here. Sorry I haven't
| written much documentation yet. For now, the best way to
| learn how to use it is indeed to study the egui PR.
| bartekpacia wrote:
| > Hopefully that's fixable :/
|
| It is, Flutter (which also draws all the UI on a canvas)
| already does that - it's called AccessibilityBridge. The way
| it works is they hook into the native accessibility system
| and create virtual accessibility nodes with the same size and
| coordinates where the "widgets" are drawn. I think it'd be
| useful to create some common AccessibilityBridge-like library
| since more and more UI frameworks are taking the same
| approach as Flutter and GPUI.
| iamnbutler wrote:
| we absolutely want to make accessibility work - hopefully
| open source will give us a bit more wiggle room to have folks
| help us figure some of it out as well.
| jenadine wrote:
| I wonder what makes it special compared to the existing
| frameworks. (Appart the fact that it is Mac only) I didn't find
| the docs after a quick search
| AlexAndScripts wrote:
| How many people find real time sharing helpful? I've never found
| it to be beneficial. I'm curious.
| candiddevmike wrote:
| The benefit as a viewer is you can drive navigation on your own
| without asking the presenter to go to a certain spot. So the
| presenter can be discussing a problem or a function, and you
| can investigate/gather context without interrupting them, among
| other things.
|
| I personally can't live without it, and am almost annoyed when
| folks aren't using VSCode/have no way of doing a live share.
| Screen share _sucks_.
| pjmlp wrote:
| Same here, for me it is a gimmick without much value over a
| screen sharing session.
| brimstedt wrote:
| I disagree.
|
| For example, in vscode if the sharer start a http-service the
| port can be port forwarded through the session so anyone in
| the session can interact with the service.
|
| Pretty neat and useful!
| AlexAndScripts wrote:
| That is pretty cool, I didn't know about that. I could see
| it being useful in some niche circumstances.
| pjmlp wrote:
| I find it as interesting as mob programming.
|
| Anyone can interact with common team servers.
|
| It is one of those things that developer advocates love to
| show at conferences.
| smoldesu wrote:
| Maybe I'm opening the lid to the industry's best-kept
| secret, but _every team_ I 've worked on used SSH with a
| shared tmux session for pairing. There are probably more
| complex tools that cover every use case, but I never
| encountered much demand for one.
| mikaylamaki wrote:
| Zed developer here, You can come try it out with us right now
| if you like: https://zed.dev/channel/zed-283
|
| Though you'll have to sign the CLA first :)
| AlexAndScripts wrote:
| Thanks for the offer. I unfortunately don't have a mac but I
| appreciate it :)
| flakes wrote:
| This looks really cool, but I have a suspicion my employer
| would be against external connections. Any distant plans in
| the future for an enterprise/onprem license?
| mikaylamaki wrote:
| Yes! In fact, that's one of our planned revenue sources,
| once we've fleshed things out :D :D
| misternugget wrote:
| I only joined Zed, the company, a week ago, so take this with a
| grain of salt, but:
|
| I've never really used real-time sharing (tried VS Code's Live
| mode and other apps) for longer than just 1-2 attempts, but at
| Zed things are different somehow. _Everybody_ is constantly
| available in a channel and people just hop in or out. In the
| last 7 days I spent 3-5hrs every day pairing with others, using
| Zed 's live mode. No video, only audio and sharing code in Zed
| (no video was weird at first, but now I think I'm starting to
| get used to it?)
|
| IMHO it's a combination of culture and technology, but when the
| mix of that is right it really feels game-changing.
| cauthon wrote:
| > In the last 7 days I spent 3-5hrs every day pairing with
| others
|
| This sounds remarkably inefficient?
| volsa_ wrote:
| Are you kidding? Sounds remarkably efficient specifically
| because OP just joined a week ago.
| robodan wrote:
| That may depend on what you're trying to do. If you are
| figuring out something tricky, then lots of quiet head down
| time is what you need. Every interruption hurts when you
| are concentrating.
|
| However, a lot of the time is just figuring out how to glue
| together multiple systems. Being able to pull in various
| people to interface little bits is priceless. There is no
| flow here, only collaboration.
| Aeolun wrote:
| I think what's nice is that it's frictionless. If I can just
| click a button to see someone's editor, then there's no dance
| with sharing screen, I can open files I need to see, etc.
|
| With standard sharing you always end up trying to direct
| people to do things instead of just showing them.
| aseipp wrote:
| Honestly, it's pretty cool in my experience; in VSCode everyone
| gets their own "client-side navigation" so while you are typing
| something, your coworker can go look up a function for you in
| another file, etc. Even though they exist in "your" instance,
| they still get Go To Definition, Find References, type-on-
| hover, etc.
|
| Realistically though it doesn't replace every instance of
| screen sharing, for me. It's also cultural to some extent I
| guess. For things like debugging or being intro'd to a new
| codebase, I think it's great, though.
| shortrounddev2 wrote:
| As a senior engineer, it really helps when helping junior
| engineers. When I'm on a call and we're sharing screens it gets
| really annoying having to tell them "no, go up. Go up, all the
| way up, the button at the top. THE TOP"
| 9dev wrote:
| This. The worst thing is that I get mad at them for not doing
| what I want them to, faster, when the tooling and my crooked
| explanations are at fault, not them. Not that I mention that
| out loud, but sometimes I feel ashamed for those feelings.
|
| Having real time collaboration that works so seamlessly as
| Zed apparently does would really get me to consider switching
| IDEs!
| mixmastamyk wrote:
| Seems like VNC or similar would be a better solution. Might
| need to use a terminal or other program. Instead of
| confining it to one application.
| pflanze wrote:
| I'm using VNC for coworking/mentoring sessions and it
| works very well for us (it's lower latency, higher frame
| rate, sharper picture than typical screen sharing, and
| allows both/all sides to interact with the session and
| use the mouse pointer to point to things). We're using
| Linux on both the server and client side. There's a full
| desktop on the remote side, to fully interact with that
| (to have key bindings go to the server instead of the
| local desktop) the client needs to be made full screen.
| Latency isn't really an issue even between central US and
| Europe.
|
| I've automated the set up of a Debian server for the
| purpose using[1]. There are some details on how to run it
| and how to set up the client side here[2] (probably
| slightly outdated). Feel free to mail me about it.
|
| [1] https://github.com/pflanze/chjize [2]
| https://github.com/pflanze/chjize/blob/master/client-
| side-to...
| edgyquant wrote:
| You can share terminals in live share and even share
| servers etc. I've had no issues and I've built multiple
| teams that are very collaborative at this point. Dozens
| of engineers
| shortrounddev2 wrote:
| I feel no shame for getting mad at my coworkers
| 9dev wrote:
| Maybe not your peers, but I hope you feel at least
| alittle guilty for being mad at junior developers under
| your guidance:)
| gpm wrote:
| I've greatly enjoyed pair (and trio) programming with friends
| using it (vscode's version of this) on side projects. For the
| most part I'm not sold that pair programming is an efficient
| way to program, but it's a nice social way to program.
|
| If you're going to do it, especially remotely, it's really nice
| to have your editor support it instead of just using screen
| sharing.
| AlexAndScripts wrote:
| I've never really pair programmed - I've worked on joint
| projects, of course, but collaboration occurs over
| discord/github. I'm intrigued - what does this actually
| consist of? Does one person write one function and another
| write the next while you chat about what needs to be done?
| gpm wrote:
| We tend to work on one 'thing' at a time. Sometimes that
| means we're both/all on the same few lines of code writing
| a new function - at which point one person is usually doing
| all or nearly all the typing. If you then need to go define
| a constant somewhere else in the code or something the
| other person does that so you don't have to pause. Other
| times one thing involves code in various places because
| you're doing something like changing what arguments a
| function takes, or fixing compiler warnings, and we do
| spread out and handle instances of the thing we're fixing
| as we come across them.
|
| Lines of code per second it's closer to one person than the
| 2 or 3 people involved, but the quality of those lines
| definitely improves a bit as people spot each-others
| mistakes/less than optimal choices. (Edit: But I'd
| emphasize we're doing this for fun, not to maximize
| productivity)
| comprev wrote:
| Often one person is the driver, the other is a director.
|
| Like being in a rally car :)
| yawboakye wrote:
| ime, real time sharing works best when there's shared context.
| otherwise it's essentially an artist rendering a public
| performance in the presence of an audience. unless you derive
| some joy from watching people code it could get frustrating
| real fast.
| porsager wrote:
| It is such a game changer for me. Pair programming or multi
| pair programming if you will, suddenly has 0 barriers.
| Including others in your session with no overhead changes
| things completely. Before I would rarely include others in my
| processes because it cost too much. Now I'll do it whenever...
| Switched from sublime and got my coworkers macs just to be able
| to use zed and work in this way.
|
| It is extremely important it works fast and fluid, and zed is
| the only one I've tried that nails it. There are still a few
| things that needs tweaking wrt. undo history, but I'm sure
| they'll get that to feel intuitive in the end.
| zzyzxd wrote:
| When a person tells another person "you need to do X" or "I did
| Y and it didn't work on my machine", they sometimes ignore
| important details due to their own curse of knowledge. That's
| when I need a shared terminal/editor so that both parties know
| exactly what is happening.
|
| I don't frequently share terminal/editor but occasionally need
| to do so, maybe a handful times a year. Most of times when I
| tell a new colleague "hey, connect to my tmux socket by running
| this command / opening this link", they were amazed and thought
| it was magical. I am not a Zed user but it's always welcome to
| see people making effort to make pair programming easier for
| everyone.
|
| Now, I don't know how I would feel if one day my colleague send
| me a sharing session link that can only be opened by a
| particular editor.
| jiripospisil wrote:
| It sounds nice in theory but I've noticed I cannot focus when
| somebody else is looking over my shoulder. It could be useful
| as a way to occasionally show somebody around the code base
| though.
| comprev wrote:
| The anxiety of someone constantly peering over my shoulder in
| a virtual sense greatly amplifies any imposter syndrome
| already present.
|
| Every typo, every goofy idea (which clearly would not work),
| etc. all laid bare to see in realtime.
|
| Pair programming was the main reason I left a company after
| management rolled it out to every team.
| kevsim wrote:
| In our 100% remote startup, VSCode live share and Slack Huddles
| is how we work through the really tough stuff together.
|
| We should probably do it more often than we do, but there is a
| real fatigue after an hour or two.
| myaccountonhn wrote:
| Tangent: I wish we could standardize real-time code sharing the
| same way we have with LSPs. It is sad that if you want to pair-
| program, both have to be using the same editor. It really makes
| more sense to have one standard format so that one person can use
| VSCode and another can use Vim or Zed. If you want to make it
| standard practice you have to enforce everyone to use the same
| editor, which sucks.
|
| Already at work some people have complained that I don't use
| VSCode for code-sharing.
| giancarlostoro wrote:
| With Neovims headless capabilities, I am hoping for the day
| every major IDE and editor has first party support as a front-
| end for Neovim, and then any Neovim plugin just becomes
| universal across all IDEs and editors. Which... you can make
| Neovim plugins in almost any language, I've seen bindings for
| "lesser popular" languages.
|
| I'm not even a vim guy, but if JetBrains finally adds front-end
| support for Neovim, I might just become a de-facto VIM guy.
| Instead of emulating vim like they do, they could just
| literally support Neovim as a back-end. I'm still surprised
| nobody at JetBrains has put in effort into this.
| ckolkey wrote:
| I'm right there with you - my yet-unrealized dream is
| sublime's front-end with neovim powering it.
| giancarlostoro wrote:
| Yet another front-end I think needs it. I am looking at
| both Sublime and JetBrains because I use both. Notepad from
| Windows by Microsoft will support Neovim before both at
| this point (I was shocked to find that it supports tabs,
| and lets me keep unsaved files open just like ST).
| DistractionRect wrote:
| Real time document editing and sync is actually a tall order.
| To make it editor/tool agnostic you'd need some kind of overlay
| fs + first/third party support in the various editors (as most
| editors don't hot reload file changes; they expect the files
| they have open not to be changing underfoot).
| zozbot234 wrote:
| Apache Wave (nee Google Wave) is a thing.
| DistractionRect wrote:
| Was a thing.
|
| After almost a decade it never got off the ground. And
| while it might address the core problem (collaborative
| editing), that still leaves the ecosystem problem: fuse
| mounts, first/third party adoption in the editor or via
| extensions/plugins. Arguably that's drawing the rest of the
| f*** owl.
| myaccountonhn wrote:
| Yeah I don't know what work is involved to build something
| like it, but not having it def. leaves the editor ecosystem
| in a vulnerable position for monopolistic practices.
| Evidlo wrote:
| Isn't that what Floobits is?
|
| https://floobits.com/
| KomoD wrote:
| Cert is invalid, HSTS is enabled, HTTPS is forced, can't
| visit that site.
| mxstbr wrote:
| Here is a direct link to the repo: https://github.com/zed-
| industries/zed
| mikaelsouza wrote:
| This is so nice! Congrats to the team for the achievement!
|
| To commemorate, I am running `brew install --cask zed` right now!
| :^)
| account-5 wrote:
| I remember listening to a changelog episode about zed ages ago. I
| liked what I heard about but that fact it's not for Linux just
| now and I don't have any friends to code with means I'd likely
| not use it.
| koenbok wrote:
| Zed developers, if you read this, please get inspired by Cursors
| "Fix it" button that you can click on any error. It simply starts
| a new chat with the code context and error message, suggesting
| possible fixes.
|
| I'm currently learning Rust and this is such a powerup that I
| honestly wouldn't know how to learn anything without.
| ethanwillis wrote:
| Zed developers, please don't. I don't want my core editor
| potentially sending out my code to who knows where or wasting
| cycles analyzing it.
|
| If people want this just let it be a plugin.
| glennpratt wrote:
| > Zed supports GitHub Copilot out of the box, and you can use
| GPT-4 generate or refactor code by pressing ctrl-enter and
| typing a natural language prompt. https://zed.dev/
|
| Seems like that ship has sailed. Maybe it's a plugin already
| or could be in the future, but that's not on GP's suggestion.
| keb_ wrote:
| I'm already picturing a "Zedium" fork for the FOSS/Privacy
| enthusiasts.
| ethanwillis wrote:
| This made me chuckle. Then at the same time I find it
| disheartening that privacy is currently seen as an
| enthusiast position rather than the default. I really
| dont mind the idea of these anti-privacy things being
| included as long as I have an _option_ to turn them off
| before running Zed for the first time.
| Aeolun wrote:
| To use them you'd need to already have a copilot
| subscription, and the GPT-4 thing apparently requires you
| to deliberately invoke a command. I'd say it's pretty
| safe by default.
| smodo wrote:
| I'd say the ship is in port but ready to sail. Before this
| does anything you have to provide your own API key. So it's
| off by default. It's just the button that is there.
| Alifatisk wrote:
| I'd much more prefer keeping all these Ai tools as plugins
| to keep the editor light.
| zamadatix wrote:
| Beyond "is it on by default" (due to data privacy concerns)
| whether something belongs in a "core" editor or in a plugin
| is a whole separate can of worms - moreso if the core editor
| starts shipping plugins. There is someone who reads that
| agreeing it means the editor should be just a plugin store
| and if you want font hinting, syntax coloring, tabs,
| terminals, smooth scrolling, and so on then download them
| yourself. At the same time there is someone who reads that
| agreeing it means the editor should have anything possible
| related to working with text but if you want to play a video
| while you code the plugin system should allow you to do that
| in a pane. Neither are really right or wrong about what
| should be a plugin, it's really a matter of what the tool
| wants to optimize for out of the box.
| ra1231963 wrote:
| It seems inevitable we'll also be able to run LLMs locally,
| which would make this type of feature more appealing.
| safouen wrote:
| i've heared about Zed for a long time and it seems promising but
| as long as it's not on windows/linux it's not for developers.
| brimstedt wrote:
| I agree. I currently use macos at work, but I avoid investing
| learning time to tools I can only use on one platform.
| dimgl wrote:
| > it's not for developers.
|
| What? Who is it for then?
| Draiken wrote:
| Mostly for SV startup folks. In other words: Apple fanboys.
|
| Jokes aside, the US is notoriously dominated by Apple, but
| it's not the same worldwide.
| Aeolun wrote:
| The dev profession is notoriously dominated by Apple. It's
| weird to say that something that's only for Mac is not for
| developers.
| Draiken wrote:
| That's most definitely a US centric view. There's a much
| bigger world out there
| timeon wrote:
| As someone who is not from US I feel your point. But they
| are US company. We are here on US site.
| da39a3ee wrote:
| How many countries are you knowledgable about?
| safouen wrote:
| if you're a developer and dependent on mac you're
| probably building "the next big saas" in "the next big
| tech company" which will fail in few years.
|
| a developer tool should be available on ALL platforms and
| specially Linux, if a tool is not available in linux no
| one will adapt it no matter how shiny it is.
| askonomm wrote:
| I'm a developer, and I use a Mac, so ...
| jamil7 wrote:
| Ah yes windows, the classic developer OS.
| ilc wrote:
| If you have the right tools. Windows is just fine for
| development.
|
| Visual Studio is widely considered one of the best IDEs out
| there today.
|
| Personally, I use Linux for my work on Linux, what IDE varies
| depending on my work. JetBrains, VSCode, neovim. But I've
| used other eco-systems.
|
| I still miss Genera. That thing was amazing.
| wilsonnb3 wrote:
| Windows is the most popular developer OS according to the
| 2023 stack overflow survey, for both professional and
| personal use.
| metaltyphoon wrote:
| You have to remember that you're on HN and windows doesn't
| exist around here.
| nicklaf wrote:
| You jest, but as famously emphasized by Steve Ballmer [0],
| Microsoft was (is?) all about developers!
|
| [0] https://www.youtube.com/watch?v=KMU0tzLwhbE
| safouen wrote:
| "Ah yes Linux , the classic developer os" it's not available
| on WINDOWS and on LINUX. which is like THE MOST USED
| PLATFORMS ON THE PLANET. You apple fanboys try to find
| excuses for everyone
| Thaxll wrote:
| I looked at some random files, did not find a single comment,
| very strange.
| porsager wrote:
| What a weird statement. It's beautiful! You don't need
| comments, just read the code. No need to litter code with
| ambiguous language. The only place a comment fits is if the
| purpose is not clear from the code.
| Thaxll wrote:
| This file does not need comments? https://github.com/zed-
| industries/zed/blob/main/crates/multi...
| stephanerangaya wrote:
| I am so happy to see GPUI now open source. This is very exciting,
| really grateful to the team at Zed to do this.
| eviks wrote:
| Welcome news, hopefully we could eventually get to a modern
| highly extensible performant text editor!
| zozbot234 wrote:
| This. Sure, Emacs is a modern, highly extensible, performant OS
| already but we all know it's missing a good text editor!
| bradrn wrote:
| No it isn't -- evil-mode is a great text editor!
| grepfru_it wrote:
| I'ma let you finish, but pico was the greatest text editor
| of all time.. someone just needs to port it to emacs
| zokier wrote:
| Emacs is great many things, but fast it is not. Nativecomp
| improved some stuff a bit and there has been other
| improvements lately too, but ultimately the core of emacs is
| built for flexibility, not for perf.
| xigoi wrote:
| What's wrong with Neovim?
| wilsonnb3 wrote:
| it requires knowledge of obscure key bindings, the GUI
| options are lacking compared to other editors, and it is
| pretty barebones out of the box
| eviks wrote:
| A lot of things, from limited keybinding support due to
| terminal limits, unergonomic extension language, very poor
| default setup, lacking good GUI, poor multicursor support,
| lack of core Zed's feature - collaboration
| wastewastewaste wrote:
| I know that's just a minor point, but I don't think you
| ever really need multicursor if you have access to vim
| features
| eviks wrote:
| Those features are a worse substitute for that awesome
| generic UI mechanism called immediate visual feedback
| (for the same reason Helix's visual-first mode, which
| unfortunately neovim also lacks, is better)
| lukax wrote:
| Very nice to see that it uses native IME. You can test it by
| pressing ctrl+cmd+space on macOS and see if the Emoji picker
| shows up.
|
| Lapce is another text editor written in Rust but it does not
| support native IME yet.
| yawboakye wrote:
| would be great if all or part of 'We're excited to announce that
| Zed is now an open source project' were hyperlinked to the
| repository, wouldn't it?
| cute_boi wrote:
| In my opinion, Zed is the only replacement for Sublime Text 4.
| Now, it is open source. Wow.
| ilrwbwrkhv wrote:
| Zed isn't on windows and linux yet so it isn't really cross
| platform.
| KAdot wrote:
| Is there a way to disable all "collaborative" features, including
| removing the "Sign in" button?
| BiteCode_dev wrote:
| Now that it's FOSS, you can fork it.
| yunwal wrote:
| The polite thing to do if you have a feature you think would
| make a FOSS project better is to submit a feature request
| first. If the maintainers decide they won't support your
| feature quickly enough or at all, then fork it. GP did the
| right thing here
| BiteCode_dev wrote:
| You think it would be a big fork you?
| hk__2 wrote:
| Forking is not the issue, it's maintaining the fork after
| that's the burden.
| hk__2 wrote:
| Why don't you use another editor? From what I understand this
| is a core feature of Zed.
| anamexis wrote:
| Because it has other core features like being really fast?
| slowtec wrote:
| Try this one: https://helix-editor.com/
| Octoth0rpe wrote:
| I'm generally a big fan of zed and have been using it for 60%ish
| of my dev time for 6 months or so. A couple of nice things to
| note:
|
| - It really is remarkably responsive,and makes one really notice
| how UNresponsive everything else is. I have reasonably fast
| machines, so we're not talking about the difference between 5ms
| typing lag and 500ms, but it's still pretty surprising. VSCode
| never felt slow on my macs until I started using Zed.
|
| - They seem reasonably responsive to feedback. There was some
| contention around how search/replace was initially implemented,
| and the current builds have something much more usable IMO. I'm
| not sure how much that was driven by community feedback, but the
| changes were great.
|
| - The debug syntax tree mode is a really neat feature that I
| think demonstrates how much more advanced zed is under the hood
| than older editors that are doing syntax highlighting via regex.
|
| There are a few downsides that I'm hoping get addressed soon:
|
| - The collaboration workflow/security isn't very clear to me. You
| sign in via github (no other option???), there are 'contacts' (I
| guess these are github usernames?), and 'channels' (where do
| these live? on zed's servers?). I would really like to know if I
| can self-host the chat server and use a company oauth provider
| rather than github. If the diffs being passed around are going
| through zed's servers, that may be a showstopper for the company
| I work for as well. If they're p2p and encrypted, maybe not.
|
| - I would love to see ollama integration. This + continue is the
| only reason why I spend any amount of time in vscode now. There's
| an issue for it here: https://github.com/zed-
| industries/zed/issues/4424
| rob74 wrote:
| > _VSCode never felt slow on my macs until I started using
| Zed._
|
| I guess you haven't used Sublime Text before?
| stevage wrote:
| I had to stop using sublime because it kept updating its
| search index at inconvenient times and slowing to a crawl.
|
| That and self updating in ways that broke my most important
| plugin.
| SnowingXIV wrote:
| I'm still using Sublime for the references. Without fail I
| can load up any version of an application including older
| rails apps sub 3 and it instantly has context. I can easily
| jump to definitions and even on hover will show me where
| they are being used. In the context of foos.bars.baz I
| could easily infer where bars is defined. Seems to work
| across languages, doesn't matter if it's js, ruby, in an
| erb file it just works. Not to mention the flavor of vim
| feels great.
|
| VSCode complains and I've got to hardcode an alternative
| absolute path gemfile for Shopify's LSP to work. It also
| feels clunkier, even on powerful machines.
|
| If Zed can give parity with Sublime on the references (I
| just tried and it did not seem to find any references when
| clearly bars was there) might be an interesting change.
| Considering it's open source now I'd happily switch as it
| does seems super quick.
|
| I might also be old-man yells at cloud and the copilot
| integration doesn't appear important yet, but current
| sublime support is pretty poor for it and seems like
| that'll be a thing more and more.
| nicoburns wrote:
| I was hitting that bug for about 6 months, but at least for
| me they have actually fixed it now.
| bastawhiz wrote:
| I switched _to_ VSCode because Sublime was occasionally so
| slow at times that it was unusable. It was very fast 95% of
| the time, but then I'd `git pull` on a very big repo and my
| machine would become unresponsive while Sublime
| did...something.
| GrumpySloth wrote:
| I think on Linux at least it freezes due to watching too
| many files using inotify to update its sidebar. I wish
| there was an option to disable that. Same thing happens
| with Sublime Merge. It's unusable on giant repos.
| ben-schaaf wrote:
| Sublime Text 4166 has some major improvements in that area,
| previously ST would check every file in the side bar for
| changes in order to update its index but this is now done
| incrementally.
| Player6225 wrote:
| This is very strange to me, because I have always used
| Sublime Text for super-giant corporate repos, and always
| found it snappy compared to vscode. Wonder if it was a
| specific usecase or something...
|
| Every little while, I try to make vscode my main editor,
| because I enjoy all the features. I always switch back to
| Sublime just because VSCode's slowness bugs me.
|
| Haven't really tried Zed in earnest yet, though, because of
| no custom LSP support.
| bastawhiz wrote:
| I'll be eager to try Zed when it gets LSP support for
| sure
| bayindirh wrote:
| or BBEdit.
| kstrauser wrote:
| That's where I landed after v14 with LSP support came out.
| It's _so_ nimble! And extensions with shell scripts and CLI
| programs is right in my wheelhouse.
| Octoth0rpe wrote:
| Not in 15ish years and at the time I think I had a 5400rpm
| hd, so that probably limited any perception of sublime being
| noticeably faster than other editors I was using (geany,
| kate). I don't doubt that sublime is faster than vscode
| today, but the vscode ecosystem is a pretty nice place to be
| and probably worth trading some speed for, especially on a
| nice mac where the trade off is probably small. Zed might be
| even better however.
| reddalo wrote:
| _Cries in PhpStorm_
| satvikpendem wrote:
| Or vim, I suppose. It's remarkable how slow VSCode actually
| is, but I still use it because I hate configuring vim and
| packages always break when upgrading, it's honestly worse
| than npm.
| herjazz wrote:
| Are you sure that's vim rather than Melvin. Never had any
| issues with anything breaking on an upgrade using vim.
| satvikpendem wrote:
| Not sure what Melvin is. I've always had issues,
| specifically when I have lots of packages, such as when
| installing stuff through lazy.vim.
| sodapopcan wrote:
| Updating vim packages can be a nightmare if you don't vet
| your plugins and generally install stuff "just in case I
| want to try it out later". If you aren't using a plugin
| with any regularity, delete it.
| mjaniczek wrote:
| Now I wonder what's the typing lag of 10xeditor, compared to
| Zed...
| flexagoon wrote:
| > older editors that are doing syntax highlighting via regex.
|
| I mean, Emacs, which can probably be considered the oldest code
| editor at this point, got built-in tree-sitter (which is what
| Zed uses under the hood) support in the last release. So it's
| not really related to editors being new or old
| dnsco wrote:
| It's not just tree-sitter that makes zed feel snappy.
|
| If you're using a reasonably fast language-server, which
| rust-analyzer apparently is (I didn't know this using
| vscode), the autocomplete & intentions feel instantaneous.
|
| I think the team has learned a lot from previous editor
| implementations (they were the core team of atom that was
| notoriously slow), and so they've had an opportunity to do a
| lot of stuff right.
|
| FWIW they also are the team that originally wrote tree-
| sitter.
|
| The quickness feels more like it's in the core of the editor.
| I was shocked how much it impacted the editing experience
| when I tried it in early beta.
| FridgeSeal wrote:
| > If you're using a reasonably fast language-server, which
| rust-analyzer apparently is (I didn't know this using
| vscode)
|
| Some more anecdata to back this up: initial workspace load
| in VScode I can watch RA tick through its progress. Clean
| and boot up Zed and the same process is so fast that it's
| almost unbelievable.
| widdershins wrote:
| I've been impressed with the C++ clangd language server
| snappiness in Zed compared to both CLion (my old favorite)
| and Emacs (apple of my eye for 2.5 yrs).
|
| I always thought the major slowness was coming from clangd
| itself, so I'm surprised and impressed to see that Zed
| appears to be quicker on this front. I might be using Zed
| as a 'second opinion' editor because of this.
|
| However, now I'm used to the infinite customizability and
| coziness of Emacs, it's going to be hard for me to move
| across to Zed permanently.
| erk__ wrote:
| Emacs have some issues with LSP speed because of the json
| parsing not being the fastest which have lead to work
| like this: https://github.com/blahgeek/emacs-lsp-booster.
| widdershins wrote:
| Ah, thanks for the link, I hadn't seen that. I will give
| Eglot another go with this set up!
| The_Colonel wrote:
| As I understand, tree-sitter implementation in Emacs is
| currently more like a foundation for development / adoption
| by plugins, it's not really usable as-is today.
| nequo wrote:
| Emacs already had tree-sitter before 29, just not built in.
| You can do syntax highlighting[1] and structured editing
| with it.[2] What is missing for it to be usable in your
| view?
|
| [1] https://emacs-tree-sitter.github.io/syntax-
| highlighting/
|
| [2] https://github.com/meain/evil-textobj-tree-sitter
| epcoa wrote:
| Your understanding is outdated/incorrect. Already a number
| of major modes have corresponding ts modes and I use them
| daily. This includes C++, Rust, Python, yaml, toml, json,
| Java, typescript, dockerfile and cmake. True not every
| major mode has treesitter in the official release but I'd
| hardly call the above "not usable"
| sswezey wrote:
| As a note, the zed editor team were the creators of the tree-
| sitter project
| thrwwycbr wrote:
| It's ironic that you say that, even though the people
| building zed were the ones building the tree sitter in the
| first place.
| benreesman wrote:
| I'm _really_ picky about my tools in general and latency in
| particular, and I give Zed a spin from time to time, it's
| sweet. Clean, minimal design aesthetic, tree-sitter, tight
| code, it's a nice bit of work and I dig it a lot.
|
| But emacs 29 with the right flags and a tuned GC (no one does
| this! it's got a heap-size from the 80s!) is just as snappy and
| has more amazing packages than VSCode.
|
| There's a market for people who want something snappier than
| VSCode but less labor-intensive to set up than emacs, and I
| wish them luck: I think it's a front runner there. But I can't
| imagine switching my main axe up with a holy shit moment a lot
| crazier than tree-sitter in 2024 and not having the render loop
| be in JS.
| nccnm wrote:
| Can you share more about your Emacs 29 setup? Thanks
| benreesman wrote:
| I mentioned it above but I'm flattered by your interest
| (and remember your username as someone serious): my old
| dots were ok and are floating around but we're putting
| together a multi-editor curated setup for good defaults and
| an emphasis on good, available-weight models as first-class
| citizens.
|
| It's a 404 until I get to an RC, but aiming for March 1st
| on "hyper-modern.ai" for all MIT on emacs, nvim, and
| vscode.
| jitl wrote:
| How do you get a reasonably fancy Emacs to start up/open
| files quickly? Every time I try to get into EMacs after
| adding a few packages it becomes painfully slow to open a
| file for editing. Then I try to understand Emacs server, then
| I fail / give up and go back to vim.
| willdr wrote:
| Open it at 8am, close it at 8pm
| jkrubin wrote:
| Hahahaha. A dev I work with who has been using eMacs for
| 30+ years is well known at my company for having eMacs
| sessions open for 6+ months at a time.
| baq wrote:
| I'd rather open at 8am, close on kernel upgrade.
|
| At least that's how I worked with my vim tmux sessions ;)
| AlexCoventry wrote:
| Emacs server is quite straightforward. M-x server-start in
| a running emacs, then emacsclient <filename>. emacsclient
| -c if you want to open the file in a new window, or
| emacsclient -t if you want to open it in your current
| terminal. C-x # when you're done editing the file.
| euroderf wrote:
| myhome>> emacs --daemon
| oarsinsync wrote:
| emacsclient -ca ''
|
| Connect to the daemon if it's running, start it if it's
| not. alias emacs="emacsclient -ca ''"
| ideasman42 wrote:
| I've been using emacs as my main editor for years now and
| don't find the startup speed to be an issue - to the point
| I've never bothered with emacsclient:
|
| It starts up with ~77 packages in half a second.
|
| This is my config.
|
| https://gitlab.com/ideasman42/dotfiles/-/tree/main/.config/
| e...
| benreesman wrote:
| That's pretty close to what I've been running on the GC
| tuning but I like parts of your spelling better.
|
| This is going MIT as part of a bigger project in about a
| month (think Lucid s/C++/modern models/).
|
| If I inline attribution you mind if I borrow this or
| that?
| mkesper wrote:
| Use doomemacs for a start. It really optimizes startup time
| and offers vast included modules as well as great package
| management. https://github.com/doomemacs/doomemacs/blob/mas
| ter/docs/gett... Oh and for Windows, WSL2 seems to be the
| fastest: https://github.com/doomemacs/doomemacs/blob/master
| /docs/gett...
| benreesman wrote:
| Doom is a great start for a low-friction, extreme quality
| curated emacs setup. +1
| kaeland wrote:
| Another +1 for using DOOM emacs.
| Evidlo wrote:
| So buggy for me.
| lynx23 wrote:
| I was about to answer "Use emacsclient", but then I
| realized you can't be bothered to configure it. For me,
| putting "(server-start)" into .emacs was always enough, but
| YMMV.
| benreesman wrote:
| https://imgur.com/a/i99Nisn
|
| 1.4 seconds for 100 packages, half of which are on
| probation? My (and soon `HYPER//MODERN`'s) package set is
| under heavy construction, I'll be sad if I don't get it
| under 300ms including loading and rendering a logo at 6k
| from a cold disk which that was.
|
| Rust is a perfectly good language for writing tight code,
| but those `emacs` inner loops have been tuned by hard-ass
| pros for 30+ years in straight C, which is plenty fast too.
| Even the best Rust code doesn't have that kind of tuning
| in.
|
| `emacs` is fucking fast.
| estebank wrote:
| With no intention to push back on Emacs being highly
| optimized, age of an application is not an accurate proxy
| for level of performance. If it were, grep would be
| faster than ripgrep. New software can apply optimisations
| discovered over the previous 40 years, and leverage
| architectural designs with different assumptions, like
| the GC limits in Emacs discussed elsewhere in the
| comments. Older applications can apply those same
| optimizations, but it's not a given that they will, and
| changing their architecture can be daunting, for
| sometimes unknown benefits.
| PH95VuimJjqBqy wrote:
| yeah, I can't deal with the emacs startup.
|
| I mean, it's not slow per se, but compared to vim it's
| noticeably slower so I can't deal with it.
| cyruseuros wrote:
| The way the other guy said. Then it breaks enough times,
| you give up, and switch to Helix. Nothing snappier out
| there (vanilla Vim included) and it comes with all the
| goodies you'd install 100 packages for (DAP, LSP,
| treesitter, sane default configs for dozens of languages)
|
| To each their own, but for a hardcore Emacs user (wrote a
| number od my own plugins) that actually tried and couldn't
| seriously adopt VSCode for more than a few months, Helix
| was such a nice surprise + change of pace. Worth giving it
| a shot if you're caught in that gap.
| dataangel wrote:
| what are the right flags and gc tunings?
| benreesman wrote:
| I don't have much to add on what sibling @darthrupert said.
| You tweak this or that to your box but that's an excellent
| guideline to start.
| manupanday1998 wrote:
| Yes you are correct
| da39a3ee wrote:
| > But I can't imagine switching my main axe up with a holy
| shit moment a lot crazier than tree-sitter in 2024 and not
| having the render loop be in JS.
|
| Congratulations for winning HN sentence of the year before
| the end of January.
| benreesman wrote:
| I'm glad I made a funny but it's a lot of year to come :)
| And this one looks to be every bit as interesting as the
| last one was over-hyped.
| conartist6 wrote:
| It is a great sentence, and that holy shit moment is
| coming: when JS gains all the expressivity of tree-sitter
| and uses it to render code more beautifully than it has
| ever been rendered before.
|
| (Spoiler: https://github.com/bablr-lang/)
| darthrupert wrote:
| People are asking what settings would be useful to tweak.
| Check out the following:
|
| - gcmh -package and gcmh-mode and/or gc-cons-threshold
| variable (former should take over the latter)
|
| - read-process-output-max
|
| - jit-lock-defer-time
|
| - package-native-compile
|
| Doom Emacs sets gcmh in its initialization so tweaking that
| might not be needed there. You may still want to touch gcmh-
| high-cons-threshold and gcmh-idle-delay-factor. Here are mine
| currently: (setq gc-cons-threshold (* 1024
| 1024 1024)) (setq gcmh-high-cons-threshold (* 1024
| 1024 1024)) (setq gcmh-idle-delay-factor 20)
| (setq jit-lock-defer-time 0.05) (setq read-process-
| output-max (* 1024 1024)) (setq package-native-
| compile t)
|
| I've done nothing scientific to check out if these help at
| all, though, so take them with salt. With and without these,
| emacs seems quite sluggish at least on a Macbook, in certain
| modes. On Linux things seem to be a bit better.
| natrys wrote:
| The thing about gc-cons-threshold is that, too low a value
| and it will collect garbage too frequently. While a high
| value will drastically reduce frequency, but then GC pause
| will be big and you will likely feel whole system freeze
| and stutter when it happens. For me, 1GB is too high
| because I sorta notice the pause, I set it to 32MB but
| completely disable GC when minibuffer is active:
| (defun my-minibuffer-setup-hook () (setq gc-cons-
| threshold most-positive-fixnum)) (defun my-
| minibuffer-exit-hook () (setq gc-cons-threshold
| (* 32 1024 1024))) (add-hook 'minibuffer-
| setup-hook #'my-minibuffer-setup-hook) (add-hook
| 'minibuffer-exit-hook #'my-minibuffer-exit-hook)
|
| Eli Zaretskii (current Emacs maintainer) also thinks 1GB is
| too high, though for somewhat different reason:
|
| https://old.reddit.com/r/emacs/comments/bg85qm/garbage_coll
| e...
|
| Here is an interesting optimisation that was merged in
| master, but didn't make the cut for 29 in time. I thought
| it improved snappiness:
|
| https://tdodge.consulting/blog/living-the-emacs-garbage-
| coll...
|
| ---
|
| Anyway, I also have these in my init (I nicked these from
| Doom which I don't use but they have done a lot of work to
| dive deep into these things, mostly around what improves
| start up but the following might help in general):
| ;; if you don't use RTL ever, this could improve perf
| (setq-default bidi-display-reordering 'left-to-right
| bidi-paragraph-direction 'left-to-right
| bidi-inhibit-bpa t) ;; improves terminal
| emulator (vterm/eat) throughput (setq read-process-
| output-max (* 2 1024 1024) process-adaptive-
| read-buffering nil) (setq fast-but-imprecise-
| scrolling t redisplay-skip-fontification-on-
| input t inhibit-compacting-font-caches t)
| (setq idle-update-delay 1.0)
| benreesman wrote:
| I'm doing different heap sizes during package load, but I
| don't have the mini buffer hook and in retrospect, I feel
| dumb.
|
| If I do inline attribution you mind if I borrow that
| under MIT?
| natrys wrote:
| Go ahead. Though I don't think attribution is even
| necessary for something I myself may have borrowed from
| somewhere.
| sooheon wrote:
| Emacs still blocks input on simple things like package
| updates though.
| benreesman wrote:
| Give straight.el (among others) a shot. Combined with use-
| package you don't have to worry about that these days.
| sooheon wrote:
| Ah ok. Last time I used straight it still blocked input
| on straight-update-all, didn't realize they changed this.
| benreesman wrote:
| There's a little tweaking sometimes.
|
| Most examples you'll see of `straight.el`/`use-package`
| configurations will have some version of: `(use-package
| something-cool :ensure t :config ...`. The `:ensure t`
| clause will cause it to fall back on `package-install` in
| the event it's not bolted into your local Cargo-style-
| own-the-world-and-dont-break repo mirror. Disks are big,
| it's like the right default now.
|
| But if you've got a package that's mis-specified in terms
| of where on `github` or wherever that `striaght` is
| supposed to find it, you can find it tapping `elpa.org`
| on the shoulder at a time when the UI thread is also
| doing blocking network IO.
|
| The ` _Messages_ ` and/or `straight` buffers will have
| warnings about this, so it's fixable to find the
| offending package and it'll stay fixed, but in fairness
| what you're describing is possible.
| bergheim wrote:
| Elpaca [1] does not do this. I use it and it works a treat.
|
| 1: https://github.com/progfolio/elpaca
| ungamedplayer wrote:
| > But emacs 29 with the right flags and a tuned GC (no one
| does this!
|
| Please share how.
| benreesman wrote:
| Both @darthrupert and @natyrys on the thread have said most
| of what I know. It's a little machine dependent to get the
| true sweet spot, but raising it from the like, megabyte
| (slight hyperbole) or whatever that it defaults to is the
| 80/20.
| dilap wrote:
| i got annoyed by emacs gc pauses and just disabled the gc
| completely (i think). haven't noticed any downsides so far.
| i'm in emacs all day... ;; don't garbage
| collect based on cons count (setq gc-cons-threshold
| 10000000000) (defun garbage-collect (&rest args)
| (message "trying to garbage collect. probably you want to
| quit emacs."))
|
| something i love about emacs is everything is implemented
| in the same abstraction (of a "buffer of text"). so i can
| manipulate and move around an embedded terminal in the same
| way as a normal file, etc.
|
| playing briefly with Zed it seemed like the terminal was a
| totally different "thing" than a normal file; i couldn't
| run the same text selection operations, couldn't split the
| window vertically or horizontally, etc. to me that loses a
| ton of the benefit of having a terminal in the editor in
| the first place.
|
| still, it's a very interesting project. i have a very
| love/hate relationship with emacs, so i'm always interested
| in alternatives...
| pja wrote:
| Ripped from my .emacs: (setq gc-cons-
| threshold (\* 100 1024 1024) ;; GC sometime after
| allocating 100Mb read-process-output-max (\*
| 1024 1024) company-idle-delay 0.0 ;; company
| completions should be fast company-minimum-
| prefix-length 1 lsp-idle-delay 0.1) ;;
| clangd is fast (run-with-idle-timer 2 t (lambda ()
| (garbage-collect))) ;; Trigger a GC after 5s of idle time
|
| This is something of a hack of course, but it works &
| memory is cheap. You might want to push the GC threshold
| back down after emacs startup - a GC that fires early is a
| GC that does less work per invocation & is therefore less
| likely to cause perceptible stutter.
| oblio wrote:
| > (no one does this! it's got a heap-size from the 80s!)
|
| Shouldn't the devs do this? We're in 2024, embedded systems
| have more RAM, IO, etc than anything from the 80s.
| benreesman wrote:
| The, uh, GNU folks, are a _little_ conservative in some
| ways that surprise the mainstream developers. But there are
| always flags for it. Well, except stupid-ass dynamic-
| linking of `glibc`.
| oblio wrote:
| > are a little conservative in some ways that surprise
| the mainstream developers
|
| Conservative is one thing, but having the default be
| something that's detrimental to 99.999% of your users in
| 99.95% of situations feels like bad defaults/design, not
| being conservative. My worthless 2 eurocents :-)
| estebank wrote:
| You would think that it would dynamically check the
| system on first run and set appropriate defaults.
| minroot wrote:
| I can't still figure out how can I get Emacs not mess up
| indentation and auto indentation.
| benreesman wrote:
| Most language modes have a `foo-ts-mode` now that uses
| `tree-sitter` to get a perfect* AST in the absence of
| errors, and almost always the most reasonable one in the
| presence of errors. `tree-sitter` is amazing, a real feat.
|
| It ships with 29 and it's work to find `brew` or `apt` or
| `nix` or anything giving you less than 29.1 these days.
|
| Have you tried a recent version? 29.1 is dramatically more
| accurate on everything from syntax highlighting to
| indention than VSCode (IMHO, they're probably either using
| or working on using `tree-sitter` too, those are serious
| people) or JetBrains stuff (they're working on their vscode
| clone more than IntelliJ these days).
|
| I only use `nvim` for commit messages and stuff the last
| few years, but AFAIK it has all the `tree-sitter` stuff
| too.
|
| If it's the sloppy naming of `c-basic-offset-this` vs. `py-
| indent-that` or whatever (I don't even remember), try a
| good baseline distro like Doom and tweak from there.
| kamaal wrote:
| >>But emacs 29 with the right flags and a tuned GC (no one
| does this! it's got a heap-size from the 80s!) is just as
| snappy and has more amazing packages than VSCode.
|
| That explains my whole experience with Emacs. More time is
| spent in making Emacs awesome than actually doing my work.
| angra_mainyu wrote:
| > There's a market for people who want something snappier
| than VSCode but less labor-intensive to set up than emacs,
| and I wish them luck
|
| Basically AstroNvim or Doom Emacs. Not a huge fan of Doom
| Emacs but AstroNvim got me to drop my main editors (Sublime +
| Atom) and I basically only use AstroNvim.
|
| One enormous advantage of Nvim is that I can run it anywhere.
| I run it on a Linux machine, a Mac, and a Tablet (w/ Termux)
| extremely easy (just clone my dotfiles, install nvim, and
| that's it).
| akam4n4n wrote:
| how to you use ollama with vscode? some links/ details would
| help me a lot!
| Octoth0rpe wrote:
| I use this extension: https://continue.dev/ their docs are
| pretty good, but it's also evolving pretty rapidly. For
| example, you no longer need to run the continue server
| yourself, it's entirely self contained in the vs code
| extension. I believe the docs still refer to how to run it
| manually.
|
| I work for a pretty conservative company re: GAI, and the
| ollama + continue combo made it through legal.
| appplication wrote:
| VSCode has always felt incredibly slow to me, even compared to
| e.g. pycharm. , which I have always assumed of be otherwise
| roughly comparable. VSC's lag in basic code inspection and
| linting became so annoying I had to switch off it. We're not
| talking seconds, but maybe tenths of second lag, for everything
| at all times. I understand plenty of people love VSC, but
| honestly I have never been able to share that enthusiasm.
| ahmedfromtunis wrote:
| Yep. For some reason, suddenly, vscode became painfully slow
| on my decently spec'd machine; 3 to 7 seconds per keystroke
| just to analyse the file to show intellisense tooltips.
|
| Yes, that was in seconds per keystroke.
|
| The irony is that I moved from neovim to vscode because
| setting up intellisense in (neo)vim was always a hassle and
| never worked quite well. Pylance seemed too attractive not to
| give it a spin.
|
| Now the lag has as mysteriously diminished, but still vscode
| is very far from being as snappy as (n)vim.
| McBeige wrote:
| Ive been wanting a syntax-tree-viewer for months, to help me
| learn functional languages where figuring out what is even
| going on syntax-wise in the exmaples provided by tutorials
| keeps being an issue for me. Does anyone know of a way to see a
| syntax tree for any given snippet of code for any given
| language? I'd try Zed, but I'll have to wait for Linux support.
| natrys wrote:
| I am not sure what debug syntax tree mode does in Zed, but if
| it's about tree-sitter generated syntax tree, you can see
| that in Neovim or Emacs (assuming you have major-mode/grammar
| loaded):
|
| 1) In Neovim, do `:TSPlaygroundToggle`
|
| 2) In Emacs, do `M-x treesit-explore-mode`
| kamaal wrote:
| >>I have reasonably fast machines, so we're not talking about
| the difference between 5ms typing lag and 500ms, but it's still
| pretty surprising.
|
| I really envy people who can sense passage of time between
| intervals of 5 milliseconds and 500 milliseconds.
|
| My sensibility begins over a second. And to be honest even that
| is least of my issues. Same with start up time, I restart the
| IDE only once in a few days. I thinking spending a second or
| two extra for it is any where in the ball park of what I would
| call wasting time.
| jasonjmcghee wrote:
| Re Ollama in Zed
|
| It's very early, but I've been building a "trigger
| command/script and have it output anywhere" project that you
| could use as a bandaid solution.
|
| I added Ollama support (you can specify model in settings)
|
| https://github.com/jasonjmcghee/plock
|
| It works wherever you are
| keb_ wrote:
| This is really exciting. I currently use Sublime Text 4, and
| coupled with SublimeLSP, it does _almost_ everything I need. What
| 's missing is good debugger support and UI integration. What's
| the story like for Zed on that front? I briefly scanned the
| homepage and did not see mention of a debugger.
| nXqd wrote:
| This is very nice, I hope we have a windows version soon. And
| this might encourage Sublime Text to do the same, it's one of the
| most responsive editor for now, let's see.
| drewdevault wrote:
| Consider discarding the CLA if you anticipate third-party
| contributions. If you need to verify provenance, the Developer
| Certificate of Origin is a better approach. Otherwise, this
| (correctly) reads as a project which intends to take advantage of
| FOSS contributors for a while before pulling the rug and making
| it non-free again.
| WCSTombs wrote:
| Also the "CLA" link just points to https://zed.dev/cla, which
| asks me to authorize Zed Industries to access my private GitHub
| profile. So at this point I don't even know what the CLA says.
| That's important because not all CLAs are created equal. I
| think some don't fully remove the contributors' ownership,
| which would prevent the hypothetical future closed-sourcing.
| drewdevault wrote:
| I took one for the team and authorized access for long enough
| to read the darn thing, and yes, it expects effectively full
| copyright assignment and leaves the door wide open for a rug
| pull.
| Yujf wrote:
| The CLA does not prevent future closed-sourcing sadly
| erk__ wrote:
| I opened a discussion about that here:
| https://github.com/zed-industries/zed/discussions/4442
| ZeroCool2u wrote:
| This is the content of the CLA:
|
| Zed Contributor License and Feedback Agreement Welcome to our
| Contributor License and Feedback Agreement! Here's a quick
| breakdown of what's inside:
|
| You (the contributor) are entering into an agreement with Zed
| Industries, Inc. You're giving Zed permission to use and
| share your contributions (like original works or
| modifications). You assure us that the contributions are
| truly your own and you have the legal right to share them.
| You're not required to support your contributions but you're
| welcome to if you wish. If you ever notice an error or change
| in the details you've given us, you agree to let us know. In
| short, this agreement covers the terms for your valuable
| contributions to Zed's projects.
|
| Legally binding section follows: By submitting a
| Contribution, use of the Solution or any components related
| thereto (as such is further defined in Zed's End User License
| Agreement located here: https://zed.dev/eula) or as enabled
| pursuant to your use of Zed's collaboration tools offered
| therein, you hereby accept and agree to the terms and
| conditions set forth in this Contributor License and Feedback
| Agreement (the "Agreement") for Your present and future
| Contributions submitted to Zed Industries, Inc. ("Company").
| Except for the license granted herein to Company and
| recipients of software distributed or made available by
| Company, You reserve all right, title, and interest in and to
| Your Contributions.
|
| 1. Definitions.
|
| "Contributor", "You", and "Your" shall mean the copyright
| owner or legal entity authorized by the copyright owner that
| is making this Agreement with Company. For legal entities,
| the entity making a Contribution and all other entities that
| control, are controlled by, or are under common control with
| that entity are considered to be a single Contributor. For
| the purposes of this definition, "control" means (i) the
| power, direct or indirect, to cause the direction or
| management of such entity, whether by contract or otherwise,
| or (ii) ownership of fifty percent (50%) or more of the
| outstanding shares, or (iii) beneficial ownership of such
| entity.
|
| "Contribution" shall mean Feedback (as defined below), any
| original work of authorship, and any modifications or
| additions to an existing work, that is intentionally
| submitted by You to Company for inclusion in, or
| documentation of, any of the products owned or managed by
| Company (the "Work"). For the purposes of this definition,
| "submitted" means any form of electronic, verbal, or written
| communication sent to Company or its representatives,
| including but not limited to communication on electronic
| mailing lists, source code control systems, and issue
| tracking or collaboration systems that are managed by, or on
| behalf of, Company for the purpose of discussing and
| improving the Work, but excluding communication that is
| conspicuously marked or otherwise designated in writing by
| You as "Not a Contribution."
|
| "Feedback" means suggestions, comments, improvements,
| software code / snippets or other information submitted to,
| shared with or otherwise made available to Zed or its
| contributors with respect to, or in connection with the use
| or interaction with, the Work, Zed Network Based Service or
| Editor technology (as defined by Zed and as further described
| within Zed's End User License Agreement located at
| https://zed.dev/eula).
|
| 2. Grant of Copyright License. Subject to the terms and
| conditions of this Agreement, You hereby grant to Company,
| and to recipients of software distributed by Company related
| hereto, a perpetual, worldwide, non-exclusive, no-charge,
| royalty-free, irrevocable copyright license to reproduce,
| prepare derivative works of, publicly display, publicly
| perform, sublicense, and distribute, Your Contributions and
| such derivative works (the "Contributor License Grant").
| Further, to the extent that You participate in any livestream
| or other collaborative feedback generating session offered by
| Company, you hereby consent to use of any content shared by
| you in connection therewith in accordance with the foregoing
| Contributor License Grant.
|
| 3. Grant of Patent License. Subject to the terms and
| conditions of this Agreement, You hereby grant to Company and
| to recipients of software distributed by Company a perpetual,
| worldwide, non-exclusive, no-charge, royalty-free,
| irrevocable (except as stated in this section) patent license
| to make, have made, use, offer to sell, sell, import, and
| otherwise transfer the Work, where such license applies only
| to those patent claims licensable by You that are necessarily
| infringed by Your Contribution(s) alone or by combination of
| Your Contribution(s) with the Work to which such
| Contribution(s) was submitted. If any entity institutes
| patent litigation against You or any other entity (including
| a cross-claim or counterclaim in a lawsuit) alleging that
| your Contribution, or the Work to which you have contributed,
| constitutes direct or contributory patent infringement, then
| any patent licenses granted to that entity under this
| Agreement for that Contribution or Work shall terminate as of
| the date such litigation is filed.
|
| 4. You represent that you are legally entitled to grant the
| above licenses, including but not limited to any video
| content shared or recorded as related to collaboration with
| Zed and the Zed community. If your employer(s) has rights to
| intellectual property that you create that includes your
| Contributions, you represent that you have received
| permission to make Contributions on behalf of that employer,
| that your employer has waived such rights for your
| Contributions to Company, or that your employer has executed
| a separate Corporate CLA with Company.
|
| 5. You represent that each of Your Contributions is Your
| original creation (see section 7 for submissions on behalf of
| others). You represent that Your Contribution submissions
| include complete details of any third-party license or other
| restriction (including, but not limited to, related patents
| and trademarks) of which you are personally aware and which
| are associated with any part of Your Contributions.
|
| 6. You are not expected to provide support for Your
| Contributions, except to the extent You desire to provide
| support. You may provide support for free, for a fee, or not
| at all. Unless required by applicable law or agreed to in
| writing, You provide Your Contributions on an "AS IS" BASIS,
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
| or implied, including, without limitation, any warranties or
| conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or
| FITNESS FOR A PARTICULAR PURPOSE.
|
| 7. Should You wish to submit work that is not Your original
| creation, You may submit it to Company separately from any
| Contribution, identifying the complete details of its source
| (e.g., attribution) and of any license or other restriction
| (including, but not limited to, related patents, trademarks,
| and license agreements) of which you are personally aware,
| and conspicuously marking the work prior to submitting it to
| Zed or the Zed community.
|
| 8. You agree to notify Company of any facts or circumstances
| of which you become aware that would make these
| representations inaccurate in any respect.
| maxdeviant wrote:
| We've adjusted it so that the CLA can now be viewed without
| signing in.
|
| Sorry about that!
| bogwog wrote:
| I like CLAs. If there's an open source project that I
| love/depend on, I will most likely want to be able to
| contribute to it for my own personal reasons at some point
| (e.g. fix a bug that bothers me or add a feature I want).
|
| I am a Sublime Text addict, but hate how slow development is
| and how resistant they are to adding more dev-focused features.
| I would _happily_ sign a CLA if it meant I could modify the
| code myself, even if I end up paying to use my own code.
|
| Giving the owner permission to sell my contribution (which is
| likely very minor compared to the rest of the project) gives me
| added peace of mind since I know that the project is (or can
| be) sustainable.
|
| A rug pull is always bad, but it's not fair to assume that
| that's what will happen (unless you know something we don't).
|
| And besides, even if it does happen, that's what forks are for.
| This project is licensed with GPL and AGPL.
| drewdevault wrote:
| You do not need to give anyone special permission to sell
| your contribution, everyone in the world is equally entitled
| to make commercial use of (including outright sale of) free
| and open source software; without this it is not free or open
| source.
|
| The _only_ purpose of a CLA like this is to provide for a
| future where the software can be made non-free again.
| trevyn wrote:
| No. A license to copyrighted code does not confer the same
| privileges as holding copyright to that code.
|
| Public domain is closer to "equally entitled".
| drewdevault wrote:
| An open source license, by definition, entitles the
| recipient to commercial use.
|
| https://xkcd.com/1731/
| briantakita wrote:
| I had the pleasure of working with Nathan Sobo when he joined
| Pivotal Labs ~2008. He had a burning desire to create a
| transformative text edior/ide back then. He is bright, not only
| in an intellectual & talent sense, but also in an energetic
| sense. He is also compassionate & genuine person. I'm very happy
| & inspired every time I see his endeavors progress.
|
| Knowing Nathan has been one of the major catalysts for me to
| improve the art of software craftsmanship. Sometimes you meet
| amazing people in life & I count Nathan as Amazing in many ways.
| nathansobo wrote:
| Wow Brian, nice to hear from you. Thanks very much for your
| words! I remember you setting a new standard of speed for me
| when we worked together!
| briantakita wrote:
| I credit Nathan Wilmes for showing me how to speed up my
| development techniques & decision making...Mainly by
| observing him work during our pairing sessions. It's
| interesting how one can learn effective practices that are
| difficult codify with conscious thought & written or spoken
| language...Yet the human observational systems & nervous
| system are effective in working with these complexities. It's
| almost like how a GPU frees the CPU from processing graphics
| or linear equations.
| avtar wrote:
| To any of the project members here: viewing the zed.dev home page
| using Safari on an iPhone shows text being cut off. I can't seem
| to scroll to the right either to view the remaining content.
| nomial wrote:
| Getting the same issue on Firefox on Android
| machomaster wrote:
| I have the same issue in Yandex Browser (based on Chrome) on
| Android.
| mcfedr wrote:
| You've chosen to let the Russians spy on your web browser?
| zogrodea wrote:
| I don't understand this comment because American/European
| governments (where I would guess most HN commenters are
| from) are almost certainly doing the same thing according
| to what we've learned about for example the NSA. Maybe you
| trust your own government more.
| Matl wrote:
| Most westerners I've spoken to think that even when a
| Western government does bad, there's probably good
| intentions behind it or at least more noble than any non-
| Western government.
|
| On the flip side, even if you believe that, there's an
| argument to be made that if you live in the West then the
| Russians/Chinese care way less about you than the Five
| Eyes.
| Aeolun wrote:
| I mean, it's been at least a few decades since my home
| country started it's latest war.
|
| It's not that it's non-western, it's just that the
| countries I don't trust are mostly dictatorships or
| something very close to it.
| Matl wrote:
| Yeah, I just think that after Snowden (but before him as
| well) it's naive to think that we in the West are free
| from being spied on. The methods are more refined, I'll
| say that.
| machomaster wrote:
| Few decades of not starting a war is a very weak
| qualifier. Let's start with "100 years of not
| participating (!) in wars, not even in a supporting role,
| while respecting people's human rights, democracy,
| freedom of speech and privacy" and then the country has
| some kind of backbone to lean on when offering it's
| enlightened perspective.
|
| There aren't many countries that would qualify (Sweden
| fails because of the Snowden case) and I suspect your
| country is not one of those. What country are you from?
|
| It's all about risk assessment, risk analysis, scenarios,
| probabilities, threat vectors, worst/probable/best cases
| of cost/benefit, etc.
|
| What are the chances that Putin wants to get to you? How
| probable is it? Does he have better options than through
| seeing your browsing history? What happens if he actually
| gets it - what's the worst that can happen?
|
| It's really all a big nonsense about nothing. You are
| most probably just an ordinary human, just like me. We
| are not even worthy of such an attention. Be realistic
| and know your position, role and pecking order in the
| world order. Be a cog and live peacefully. :-)
| mcfedr wrote:
| There is a big difference between a government that is
| ultimately on your side. And a government that is
| actively trying to kill you.
| machomaster wrote:
| As a Finn, both American government and Putin have the
| same amount of energy put into trying to kill be. As in
| zero energy. Because if it weren't zero, I would already
| be dead. And it would happen kinetically, not through
| capturing my browser history.
| mcfedr wrote:
| And anyway, it's a bad comparison, there is a conspiracy
| that, say Google or Firefox is collaborating, but it's
| very clear that yandex is an arm of the Russian
| government
| machomaster wrote:
| And what is this clarity of the Holland-registered
| company being an arm of Putin is based on? Specifically
| in terms of software/privacy.
| zogrodea wrote:
| I might be missing something, but why is it clear to you
| that Yandex is an arm of the Russian government? Yandex
| has been critical of the Russian government's war on
| Ukraine [0] and faced consequences because of it which
| signals to me that this isn't the case. Yandex made plans
| to exit Russia because of the company's disagreement with
| the government even. [1]
|
| [0] https://www.rferl.org/a/russia-yandex-government-
| control/321...
|
| [1] https://fortune.com/2022/11/25/yandex-leaves-russia-
| ukraine-...
|
| As someone living in the west, I'm disappointed by our
| governments' hypocrisy over the massacre in Palestine
| while supporting Ukraine's right to resisting an invading
| force. Our governments' support of the massacre in
| Palestine (even dealing out death to peaceful resistance,
| as we can see by the bombing of Yemen when its people
| merely made economic trade inconvenient to protest the
| massacre) made me think the people in charge of western
| countries are no better and probably even worse than
| dictatorships such as China and Russia. (Western
| governments are just better to their own citizens
| apparently.)
| machomaster wrote:
| It can be argued, that Yandex didn't do enough to fight
| the Putin's regime, but: 1. How realistic is to expect
| something like this from Corporations? How much have
| American corporations fought against American terrorism
| or attacks on freedoms (e.g. of speech)? Exactly. 2. It
| absolutely does not mean that they were an arm of the
| government. Among the tech giants, even without the
| Russia caveats, Yandex was definitely a good guy, with
| good ethics and core, with people who cared (and who
| helped a lot in personal capacities).
|
| A very telling sign is a list of Western countries that
| participate in the Yemen war, but want to keep it a
| secret from their citizens. Yes, they fully know that
| what they are doing is wrong. No, they don't want to stop
| doing the evil, they only want for people not to know.
|
| This is a pattern. Remember illegal CIA prisons all
| around the world, torturing people?
|
| Democracy often means that bad deeps must be better
| camouflaged/hidden, not that thr actions and people doing
| the deciding are inherently better.
| maxverse wrote:
| It's possible that the user is Russian and using the
| locally popular browser
| machomaster wrote:
| This is such a non-issue.
|
| 1. I live in the EU and I would worry much more about my
| country/Union spying on me than foreigners.
|
| 2. In the same token I trust Yandex much more than Google.
| And yes, I am competent enough to make that assessment. The
| same goes with using the world's best antivirus in
| Kaspersky vs. using something weaker from Five-
| Eyeish+block.
|
| 3. Yandex Browser is technically good. But the main killer
| feature for me is having the address bar on the bottom of
| my screen. This should just be a common-sense default for
| mobile browsers, yet it is't.
| Alifatisk wrote:
| I think this is my first time reading about someone using
| Yandex browser
| machomaster wrote:
| You should check it out (for mobile) and share your
| opinion.
|
| It has all kinds of interesting features like automatically
| translating (and voicing) youtube videos.
|
| Address on the bottom of the screen is a total killer.
| the_duke wrote:
| I have wanted to try out Zed for a while, but unfortunately it
| still seems to be Mac only.
|
| Any plans/timeline for Linux support?
| colesantiago wrote:
| So what is the play here with Zed being open source?
|
| How does Zed make money here?
| soneil wrote:
| They address this in the linked article, under the heading
| "Wait... Doesn't Cash Rule Everything Around Me?".
|
| f.e.,
|
| > Zed Channels is one example of such a service. It's free for
| anyone today, but we intend to begin charging for private use
| after a beta period of experimentation. Providing server-side
| compute to power AI features is another monetization scheme
| we're seeing getting traction.
| tiborsaas wrote:
| They have investors, it's in their FAQ.
| mathfailure wrote:
| What do investors get out of that deal? Positive karma?
| tiborsaas wrote:
| Another FAQ explains that enterprise support is coming. So
| I think they will go with the free/OS model to saturate the
| market, but they will charge for corporate licenses. That's
| something investors can understand. Hopefully they didn't
| pick the greedy ones.
| Destiner wrote:
| I've been using Zed for the last few months, and it's amazing,
| very fast and clean.
|
| My only worry is that the collaboration features won't be used
| much, as they require most of the team to use Zed.
| jayloofah wrote:
| One issue I've struggled with in Zed is full language support
| (linters/formatters). Has anyone at the Zed team thought about
| integrating a metalinter like Trunk Check
| (https://docs.trunk.io/check)?
| krainboltgreene wrote:
| A really really solid editor with some very good choices made,
| with exactly one exception: The LLM integrations. It's annoying
| to disable (3+ settings in different ways?) and by default on.
| bartekpacia wrote:
| +1, I don't think such stuff should be ever enabled by default.
| sambeau wrote:
| I like it!
|
| FEATURE REQUEST :)
|
| Would it be possible to have option+click+drag create multiple
| cursors where you drag and not a selection with cursor at the
| end? Basically, the behaviour that Sublime Text has--Sublime
| Text's multiple cursors are, frankly, awesome.
|
| I have found shift+option+drag to create a rectangle, but no way
| to create vertical lines of cursors through lines of text, and my
| favourite--drag down to the right of your code to put cursors at
| the end of every line. I use that all the time: scrape to the
| right hit ctrl+a to get to the start of a line, cut out and
| replace text, ctrl+e to the end, add more text etc. Really useful
| for turning data into code.
|
| Option+click+drag is one of the most useful features of Sublime
| Text and my muscle memory is stuck to it -- to the point where I
| keep Sublime Text around purely for the feature (well, this, the
| fantastic sort/permute lines options, and the live-highlight of
| regex searches that give you instant feedback of whether your
| regex is working correctly). Sublime Text is where I do all my
| data formatting, and where I test every regex before using it in
| my code.
| porsager wrote:
| I think this might be an issue for the same thing:
|
| https://github.com/zed-industries/zed/issues/4352
| cdchn wrote:
| I usually try to get into an IDE from vim every 6 months/year and
| Zed is the first IDE when I actually came close to being
| successful. Usually what kills me with IDEs is distractions,
| things getting in your way, and responsiveness. Zed is the
| "cleanest" IDE I've found so far on many of these points. Not
| totally 100% (pyright being the most prominent annoyance I'm
| trying to turn off right now) but not enough to make it give up
| in just a few hours!
| nathan_phoenix wrote:
| Any pictures of how Zed actually looks? Searched their site and
| couldn't find any...
| Octoth0rpe wrote:
| Their landing page is chock full of screenshots of zed in
| action. Maybe your adblocker rules are causing some false
| positives?
| nathan_phoenix wrote:
| That was it, thanks for the suggestion!
| elashri wrote:
| That's great news. I actually like their zed font [1] which is
| custom-built from Iosevka. [2].
|
| [1] https://github.com/zed-industries/zed-fonts
|
| [2] https://github.com/be5invis/Iosevka
| CharlesW wrote:
| > https://github.com/zed-industries/zed-fonts
|
| Image of Zed Mono for the similarly-curious:
| https://twitter.com/devongovett/status/1672307153699471360
| mdaniel wrote:
| https://pbs.twimg.com/media/FzU5gHBakAUfvDv?format=jpg&name=.
| ..
| vasili111 wrote:
| Where I can download those fonts from without installing Zed?
| mdaniel wrote:
| did https://github.com/zed-industries/zed-
| fonts/releases/tag/1.2... not work for you?
| vasili111 wrote:
| Thank you for that link. I just could not find it.
| WalterBright wrote:
| Zed was the name of the Zortech C++ IDE back in the day!
|
| It disappeared, though, because the author (Phil Murray)
| disappeared and we didn't have a license to continue with it when
| Zortech was bought by Symantec.
|
| It's too bad, it was a nice editor. I never was able to find out
| what happened to Phil. He was an excellent programmer, and an all
| around pleasure to work with.
| ahmednazir wrote:
| There are some free code editor but no good free ide.
|
| Jetbrain are the main player and their products are paid. I am
| finding a jetbrain alternative that is free
| asah wrote:
| emacs. Totally free and open source since 1976.
|
| oh, sorry, you asked for an IDE and not an operating system...
| /s
|
| seriously, budget a day or two for the ergonomics and a week
| for wrangling plugins, but some of the most productive
| developers in the world use emacs and they never need to worry
| about vendor issues, porting issues, not having a GUI, support
| for some weird file type, ability to create some funky type of
| macro, etc.
| lgessler wrote:
| I tried to get into emacs a few years ago and just got fed up
| with the incredible regularity with which packages broke
| during routine updates. It was at least an hour a week on
| average, I feel, conducting bug hunts for either minor (this
| or that keybind/function doesn't work) or major (I can't get
| any packages to load) bug hunts. Was I doing something wrong?
| How do emacs people deal with this?
|
| Admittedly, I was using Spacemacs which probably has way more
| packages than a bespoke emacs configuration, but you must
| understand if people get turned off when they ask you how to
| use an editor and your answer is "first, spend a few weeks
| setting it up and understand how each of your many packages
| works".
| philsnow wrote:
| > packages broke during routine updates
|
| > How do emacs people deal with this
|
| The same way anybody working with any package system does,
| by pinning ancient versions and/or just never updating all
| packages, at least for packages that aren't so widely used
| that they pretty much are never broken
| unhammer wrote:
| 1. Install from stable.melpa (or gnu elpa) instead of melpa
| (and pin to that)
|
| 2. git add .emacs.d/elpa
|
| 3. Don't click update all the time.
| Tomis02 wrote:
| > How do emacs people deal with this?
|
| Stockholm syndrome.
| Tomis02 wrote:
| If you have to install plugins then it's not an IDE, it's
| just a text editor.
| marcosdumay wrote:
| I wonder what you'd consider an IDE nowadays. Modern text
| editors do every single thing.
|
| Is it just about the installation format?
| Tomis02 wrote:
| > Modern text editors do every single thing.
|
| That's an outrageously false statement. If it were true,
| you'd rarely need plugins.
|
| > I wonder what you'd consider an IDE nowadays.
|
| The definition of an IDE hasn't changed in at least 20
| years. INTEGRATED development environment.
|
| If I install a C++ IDE, I have everything I need out of
| the box, and the experience is (usually) consistent
| across all features.
|
| If I want to do C++ in Vim, I need to install about 10
| plugins (to begin with) [1], which will result in a
| disjointed experience (each plugin has different authors
| with different visions) where things break randomly and I
| don't know why. Speaking from experience, unfortunately.
|
| Yes, you can make it work and you can get used to it, but
| it's just a text editor that you try to coax into doing
| what you want by using plugins.
|
| Whereas the IDE will give you a language-specific tool
| out of the box, without any significant effort or
| inconvenience on your part. And the overall experience is
| better because the IDE "just works" most of the time.
|
| [1]
| https://stackoverflow.com/questions/4237817/configuring-
| vim-...
| wulfeet wrote:
| Jetbrain does have community editions that are open source.
| ahmednazir wrote:
| Intellij And PyCharm have community Edition only. These
| software have many limitations than paid software.
| onsclom wrote:
| I'm guessing you don't consider VSCode an IDE? I'm curious,
| what features do you use in IDEs that are missing in VSCode?
| ahmednazir wrote:
| I am not considering VSCode as a IDE. Because Microsoft, the
| creator of VSCode, does not consider VSCode as IDE.
|
| They have a IDE called Visual Studio and it is different from
| VSCode
| tiffanyh wrote:
| > GPL for the editor, AGPL for server-side components). GPUI, the
| UI framework that powers Zed, will be distributed under the
| Apache 2 license, so that you can use it to build high-
| performance desktop applications and distribute them under any
| license you choose
|
| Interesting choice on licenses.
|
| ---
|
| I'm been super happy with Zed, my main requests (and I've sent in
| this feedback to them or contributed to existing GitHub Issues)
|
| a. Window Size & Position doesn't persist after closing Zed.
|
| b. I constantly run into Language Server errors
|
| c. Alabaster use to work as a theme, doesn't anymore. Would be
| great if you could import VSCode themes into Zed
|
| All above has tickets open.
|
| ----
|
| Hope these small things get addressed because I truly love the
| _elegant UI design of Zed_
|
| For those who haven't used Zed, it's the first GUI editor I've
| used in 25-years of development that wasn't distracting.
|
| It's hard to describe how much more focused I am when not
| distracted with a Christmas tree scene of icons, menus, colors,
| etc. like you see in other editors.
|
| Zed is very calming, due to its focus on not having distractions.
| Give it a try if you haven't.
| mixmastamyk wrote:
| Which GUI editors don't allow you to hide toolbars and widgets?
| Or is it the defaults that appeal to you?
| kefabean wrote:
| I do agree it's very zen using zed.
|
| As you say the interface is elegant and distraction free by
| default, no twiddling required to get a happy place.
|
| So far I've only used it for my personal projects and don't yet
| have full muscle memory, but weirdly even the keyboard
| shortcuts seem more intuitive.
| mcdonje wrote:
| The licensing choice is smart. "Permissive" licenses permit
| closing off something built largely on the work of the open
| source community.
|
| Zed is made by the Atom guy and the Tree Sitter guy. Atom was
| MIT licensed. I wouldn't be surprised if he's thinking the MIT
| license is the path to VS-Zed.
| bschwindHN wrote:
| Funny you mention that because I felt Zed had _too many_
| buttons & icons for things compared to Sublime Text. I feel
| they could do without the dedicated stuff for GPT/Copilot and
| others, and sweep them away to the command palette.
| theappsecguy wrote:
| I literally tried it out for first time today and none of
| autocompletions worked for TS or Ruby. I hope they sort it out.
|
| I love jetbrains because it's so feature rich and helps me a
| ton but god damn it's slow.
| agrippanux wrote:
| This tripped me up as well, you need to set up the language
| servers in your settings json. There are examples in the
| Configuring Zed section of the Docs area on the site.
| koolala wrote:
| Is Channels what they call the collaborative component? It isn't
| open sourcing?
| mikaylamaki wrote:
| It has been fully open sourced, you can see the server
| implementation details in the collab crate on our repo!
| sarcasmatwork wrote:
| Looks great, but only OSX :(
|
| I'll stick with vs code for now...
| 6gvONxR4sf7o wrote:
| I recently went down the rabbit hole on CRDTs and would love to
| know more about what you're using under the hood. Did you roll
| your own?
| mijoharas wrote:
| I looked into that on GitHub earlier because I was curious
| about exactly this, and yes it looks like they did roll their
| own.
| 6gvONxR4sf7o wrote:
| Could you link where you found it? I'm curious what kind they
| made.
| mijoharas wrote:
| I think it's most of the "buffer" stuff here[0].
|
| [0] https://github.com/zed-
| industries/zed/pull/2924/files#diff-e...
| iamnbutler wrote:
| nathan wrote a large post about this!
| https://zed.dev/blog/crdts
| 6gvONxR4sf7o wrote:
| Thanks!
| Bnjoroge wrote:
| zed's great but they need to prioritise remote ssh like vscode.
| literally the main way most people do dev
| tbeseda wrote:
| Gonna need a citation on that. I _highly_ doubt most developers
| write code across a secure shell.
| xpl wrote:
| Not "most" but certainly many. I love remote dev (via Remote
| Containers in VSCode) for large C++ codebases (which could
| not even compile on my Macbook because of different
| architecture). Running `clangd` LSP on my local machine would
| be a nightmare (it could easily eat dozens of CPU cores and
| tens of gb of RAM when indexing), but on remote workstation
| it is a breeze. Also I could work on multiple branches
| simultaneously, spinning multiple VMs and running VSCode
| remotely on them. So basically my Mac is just a typewriter
| and everything heavy happens on a remote VM -- isn't it nice?
| AA-BA-94-2A-56 wrote:
| Huh? I haven't seen remote SSH used in the past few companies
| I've worked at. Usually it's a local docker setup.
| dimgl wrote:
| Almost no one uses remote SSH to do development.
| Evidlo wrote:
| It's how I do it since my workstation has way more resources.
| porsager wrote:
| I'm not sure that claim is correct, but could you describe what
| that setup looks like, and the benefits? A link to something
| more is also fine
| msm_ wrote:
| I have never tried the remote ssh setup (even though vscodium
| is my primary editor). I don't know anyone who uses it daily,
| and I've never heard anyone irl mention doing it. I think
| you're slightly biased here by your experience, and assume
| everyone shares it.
|
| Edit: hell, I've wanted to check remote ssh in vscodium now to
| know what I'm missing, and it looks like they basically contain
| MS DRM and are only compatible with official vscode. License is
| also proprietary[1] and makes it impossible to use it with
| vscodium or other OSS projects. Yikes.
|
| [1]: https://github.com/VSCodium/vscodium/wiki/Extensions-
| Compati...
| KomoD wrote:
| > literally the main way most people do dev
|
| not correct at all
| asenna wrote:
| Looks awesome. Doesn't support syntax highlighting for Solidity
| yet and from a quick search, I couldn't tell if there's any
| plugin/extension I could install (or how to do it). Any pointers?
| cmrx64 wrote:
| Uses tree-sitter, which you'll need to learn about.
| https://github.com/JoranHonig/tree-sitter-solidity
| vimsee wrote:
| What really impressed me is how fast it changes the theme
| colours.
|
| Locate the little arrow in the top right, click it and then
| select "Theme".
|
| Now use your arrow keys to change the theme and see for yourself.
| :)
| iamnbutler wrote:
| CMD+K->CMD+T can get you there one step quicker!
|
| At least these days we order the themes by dark then light...
| Themes used to be grouped by name, so you would get rainbow
| flashbanged moving down the list!
| Zekio wrote:
| You know the AI craze is real when adding chat gpt-4 to a text
| editor is higher priority than Linux and/or Windows support
| miohtama wrote:
| It's likely that Zed does not want users, or wants specific
| kind of users as this stage of their company maturity.
|
| Mac developer is a proxy for the user type Zed is probably
| aiming to sell service: Western, wealthy, senior. Whileas
| Windows users are everyone and their uncle. Scaling to large
| userbase does not make sense if they are not going to pay for
| your product.
| kristopolous wrote:
| I'm just sour about lack of Linux support, it's like I'm in
| 1998 again except now instead of Microsoft Windows ignoring
| us it's Apple macOS.
|
| A WINE like project for macOS software would be great
| bastawhiz wrote:
| Well it's open source now, so pull requests welcome.
| alabhyajindal wrote:
| This assumes that everyone wanting to use Zed is
| proficient in Rust and willing to contribute.
| mixmastamyk wrote:
| Because if there's one thing Linux needs is a good text
| editor! :-D
| btdmaster wrote:
| > A Wine-like project for macOS software
|
| https://en.wikipedia.org/wiki/Darling_(software)
|
| https://github.com/darlinghq/darling
|
| https://darlinghq.org
| Cu3PO42 wrote:
| There is! It's called Darling [1]. Unfortunately, its GUI
| support is experimental and still very limited, so you
| won't be able to run Zed right now, but I still think the
| project is very cool.
|
| [1] https://www.darlinghq.org/
| aseipp wrote:
| Adding Copilot or GPT-4 autocomplete support to an editor is
| not hard. You can find 100 different projects on GitHub that do
| this which are all just calling OpenAI. It is vastly different
| in scope and design than porting native applications.
| haswell wrote:
| In product management parlance, this is low hanging fruit.
|
| Easy to implement and capitalizes on something the market is
| highly interested in at the moment.
|
| Given the concentration of developers who use Macs, and the
| accelerating interest in LLM-assisted coding, this makes a lot
| of sense to me.
|
| And while it may be true that AI is a craze, this is also a
| very real and useful feature grounded in a solid use case that
| has high impact on its users unlike some of the crazes of the
| past that were purely built on hype.
| chme wrote:
| Are really that many developers using Macs?
|
| Maybe I am in a different bubble/country, but most
| professional developers and hobbyist hackers I know have
| either ThinkPads or Framework laptops running Linux or
| sometimes Windows, if they have to.
| haswell wrote:
| 33% according to the latest Stack Overflow developer
| survey. A healthy enough number to focus on that user base.
|
| I do think there are bubbles though. Macs are popular in
| SV, and there's a very healthy portion of the developer
| community focused on this user base.
| chme wrote:
| This is a pretty useless poll when trying to compare
| MacOS, Windows and Linux usage, because they split Linux
| up into different distributions. Because adding all
| numbers up, you get >100%, I suppose multiple-choice were
| allowed, which doesn't even allow adding all Linux-like
| operating systems together.
|
| So not really a good Argument that MacOS is used more...
|
| https://survey.stackoverflow.co/2023
| haswell wrote:
| If you look around the web, most attempts to answer this
| market share question land in roughly the same ballpark.
|
| The argument is _not_ that macOS is used more. The
| argument is that macOS is prevalent enough that it makes
| sense to focus on it as a market.
| Zekio wrote:
| "Given the concentration of developers who use Macs"
|
| fairly certain this is a silicon valley thing, the vast
| majority uses Windows for development and I wouldn't be
| surprised if macOS and linux are pretty even these days
| haswell wrote:
| I think you may be right. This comment was based on 90% of
| the people I interact with using Macs, but those
| interactions are indeed mostly in SV.
|
| In that sense, the "concentration" is in the SV region, and
| may have been a bad choice of word by me when thinking
| about the broader ecosystem.
|
| With that said, macOS enjoys ~33% share in the latest Stack
| Overflow developer survey [0], and I think this illustrates
| the point somewhat. This is a healthy enough portion of the
| market to focus on, especially in the case of implementing
| low hanging fruit.
|
| - [0] https://survey.stackoverflow.co/2023/#overview
| skrebbel wrote:
| I'm a Windows user so I was sad about this but I think their
| reason for doing it like this makes a lot of sense. I'd do the
| same in their shoes, I think.
|
| The explain it in the 6th question on https://zed.dev/faq
| impulser_ wrote:
| You never built a product if this is your honest take.
|
| You should have a focus when you first build a product. You
| shouldn't be holding up your product progress because you don't
| support every platform.
|
| This is the reason why you see a lot of apps support iOS before
| they release an Android app.
|
| It better to build a good working app for one platform than to
| not build one at all because you are spending all your time
| supporting as many platform as possible.
| adamsilkey wrote:
| Does Zed have vim keybindings?
| tuan wrote:
| It does https://docs.zed.dev/general/vim. The support seems
| limited however, for example 'L' or 'H' movement does not seem
| to be supported.
| M4v3R wrote:
| What do you mean? "L" and "H" do move the cursor right and
| left for me just fine. It does not have macro
| recording/playback or extended commands though so it's not a
| full fledged vim emulation mode unfortunately.
| dilyevsky wrote:
| Yeah, it's pretty annoying for any long-time vim user to
| not be able to use the macros, which Zed doesn't support.
| Biggest issue I've had with this editor for sure.
| philsnow wrote:
| This is my problem with all "vim modes"; the 90% of
| bindings that they cover works until your fingers' muscle
| memory wakes back up and tries `gqip` or some other niche
| vim thing.
| kamaal wrote:
| First thing I did after downloading Zed was to try macros
| in vim mode.
|
| It doesn't have a vim mode if there is no macro support.
| Plain and simple.
| dilyevsky wrote:
| Yeah it's a pity because otherwise zed is snappier than
| actual nvim for me with various extensions installed
| tuan wrote:
| That's uppercase L and H to move to bottom or top of the
| screen
| imron wrote:
| Thanks for this. I've been a vim user for over 20 years
| and I'm still learning useful new commands!
| M4v3R wrote:
| Yes, it even asks if you want to use them on first run.
| Cannabat wrote:
| > respond to your keystrokes on the next display refresh
|
| Claimed insertion latency for a keystroke: - zed 58ms - subl 75ms
| - vscode 97ms - clion 83ms
|
| 60 Hz displays refresh once every ~16.6ms. 58ms to insert a
| character is ~3.5 frames. My laptop can do 120 Hz, and other
| monitors can even do 300 Hz.
|
| Yeah, it's a lot faster than the other editors, but 58ms seems
| really slow - definitely not "next display refresh". All of them
| seem really slow.
| AA-BA-94-2A-56 wrote:
| I'm interested to know what people's insertion latency is on
| Neovim with similar IDE-like plugins, and LSP and Copilot
| running.
| Cannabat wrote:
| Same. I'd hope that using LSP and Copilot would not
| meaningfully impact insertion latency, though - I'd expect
| those to be fully async, in a separate thread.
| tiltowait wrote:
| As computers got more complex, latency increased. It's really
| pretty remarkable to see how things have changed over the
| years[1]. I do agree that 58ms seems far outside of the range
| of "next display refresh", however.
|
| [1] https://danluu.com/input-lag/
| Cannabat wrote:
| > These are tests of the latency between a keypress and the
| display of a character in a terminal
|
| Wow, the numbers are entirely unexpected. I want to see the
| latency when you have no display server, having booted
| directly to a shell.
|
| I imagine modern competitive twitch-reflex videogames (fps,
| fighting) must have far less input latency - 100ms must be
| totally unacceptable. Suppose that's the power of a GPU.
| raphlinus wrote:
| Much of that is latency added by the design of modern
| compositors (see "the compositor is evil").
|
| The good-ish news is that as the frame rate goes up, compositor
| latency goes down, as it's usually an integer multiple of frame
| refresh time.
|
| I'm also interested in influencing the design of next gen
| systems to reduce compositor latency, but I'm apparently pretty
| much alone in that interest.
| coffeeaddict1 wrote:
| Xilem seems to be heavily focused on using WebGPU. One doubt
| I have is: is it possible to have tight integration with the
| system's compositor using such an abstraction? For example,
| on Windows looking at the documentation for the
| DirectComposition, it seems that things are designed
| precisely to work optimally with DirectX. So my impression is
| that one would really need to use the native graphics APIs on
| each system to achieve optimal input latency.
| raphlinus wrote:
| It's a good question and one we're looking into. We're not
| planning tight integration with the system compositor on
| our 2024 roadmap, partly because it's extremely platform
| dependent, and presents compatibility challenges (you
| basically don't get it on X). But even for damage regions,
| which _is_ on the roadmap, we 're going to need to extend
| wgpu.
| deadbabe wrote:
| How does it compare to sharing a vim session through tmux with
| multiple users?
| bartekpacia wrote:
| This is awesome news. Thank you very much! I looked at Zed some
| time ago and even though I liked it, it being closed source and
| not very popular didn't make me "trust" that it was gonna last.
| odiroot wrote:
| Zed might be faster but Sublime Text at least runs on Linux, so
| it wins for me.
| Matl wrote:
| Agreed, but once Zed runs on Linux, I'll take an open editor
| over a closed one.
| yvsong wrote:
| Since it's on macOS, are there any Xcode themes?
| robin_reala wrote:
| Really nice and fast (which is the reason I'm still using Sublime
| instead of VS Code). I've only found one piece of functionality
| that's dramatically slow compared to Sublime so far: selecting
| all of the current highlight. In my current file I have 2,396
| occurrences of `<span>`. Selecting all of them in Sublime (with
| ctrl + cmd + g) is certainly less than 200ms. Doing the same in
| Zed (with cmd + shift + l) beachballs my machine for around 5
| secs.
|
| For most code work that's probably not a situation to optimise
| for, but I often work on large markup documents.
| porsager wrote:
| Did you make an issue for that? (I'm sad about that too)
| robin_reala wrote:
| I have now: https://github.com/zed-industries/zed/issues/6440
| robin_reala wrote:
| For people following along at home, this was fixed with a
| 250x speed up (!) in https://github.com/zed-
| industries/zed/pull/6700
| mikaylamaki wrote:
| And for OPs comment! https://x.com/thorstenball/status/17
| 50489879912349894?s=20
| satvikpendem wrote:
| Interesting that they don't compare their speed to Vim, as while
| it's not an IDE per se, Vim is still widely used as a code
| editor. It'd be interesting to see the comparison.
| p4ul wrote:
| I am really curious about this, too! From time to time I'll
| switch to using a more full-featured IDE for a while, but I
| always come back to Vim!
| overtomanu wrote:
| Is Java not supported language?
| mi_lk wrote:
| personally hoping Java being prioritized over cross-platform
| imbnwa wrote:
| Yeah noticed that, gotta be way more Java than Go and Rust
| combined in the wild
| jeppester wrote:
| I was hoping that zed, because it was designed from the ground up
| to be a collaborative editor, would allow me to start a dedicated
| server (headless instance) on a development server/container, and
| then let me and my colleague both connect to it and work
| together.
|
| Such functionality would be wildly useful for both remote
| development and pairing, dev containers etc.
|
| Instead I'll have to stick with VS Code remote develop + live
| share, of which the latter feels like a monkey patched
| afterthought.
| AdilZtn wrote:
| Completely agree with you, I think one of key missing feature
| is remote develop
| rmdashrfv wrote:
| I've been following Zed for quite some time now and happy to see
| them follow through with the OSS move.
|
| I personally don't like for my editor to send out any kind of
| external requests at all, and this is actually what keeps me on
| vim as my main editor. I also don't like limited login options
|
| It would be cool to have a version that's just a stripped down
| Zed, and if need be you can install the extra stuff as plugins.
| jscheel wrote:
| No way can I use a text editor that requires the hi-perf discrete
| gfx card. My battery just can't take it. Hope I can get all my
| work done in about 1.5 hours, because that's how long the 2019
| 16" mpb will last with the discrete card running.
| jhasse wrote:
| It doesn't require a discrete graphics card, it can run just
| fine on the integrated one.
| jscheel wrote:
| It automatically triggers hi-perf mode which switches to the
| discrete card automatically though. At least on my machine.
| bogwog wrote:
| The homepage has a benchmark that compares Zed's "insertion
| latency" to other editors, and this is the description:
|
| > Open input.rs at the end of line 21 in rust-lang/regex. Type z
| 10 times, measure how long it takes for each z to display since
| hitting the z key.
|
| Could someone clarify what that means? My interpretation of that
| was to go to https://github.com/rust-
| lang/regex/blob/master/regex-cli/arg... and start typing 'z' at
| the end of line 21, but that doesn't seem to make any sense. I
| guess that repo got refactored and those instructions are out of
| date?
| alluro2 wrote:
| They are opening the same specified code file (input.rs) in
| each editor and measuring event/process/highlight/etc pipeline
| duration.
|
| Which is straightforward, but also depends a lot on how each
| editor is configured for Rust support and what functionality
| you are actually getting in that time.
| evmar wrote:
| This looks really nice, but I am confused why the install is over
| 350mb, including a 300mb binary. I thought Electron-based stuff
| was big but this is even somehow more!?
| Aeolun wrote:
| At least it's fast after installing that 350mb blob. Often it's
| a sign that something is going to be really slow.
| widdershins wrote:
| It comes with quite a few language servers built-in.
| lucideer wrote:
| The core app itself is 100% Rust, but it supports integration
| via Microsoft's Language Server Protocol[0][1]. In practice,
| this means you will be running daemons locally for each
| language, which may be written in any language. Often these
| daemons are written in NodeJS since the reference
| implementation[2] is in NodeJS.
|
| [0] https://zed.dev/docs/adding-new-languages#lsp
|
| [1] https://microsoft.github.io/language-server-protocol/
|
| [2] https://github.com/Microsoft/vscode-languageserver-node
| ra1231963 wrote:
| It doesn't follow that a language server written with
| JavaScript and run via node will bloat the binary by hundreds
| of MB. Are they bundling a node runtime too?
|
| Maybe if they are embedding dozens of language servers and
| runtimes it could bloat the binary, but I assumed the
| extensions and language servers would be downloaded on
| demand.
|
| But a rust binary by itself shouldn't be that large. LSP is
| just a simple json protocol, so parsing it doesn't require
| hundreds of MB.
| evmar wrote:
| When I opened a Rust project I think the status bar said it
| was downloading Rust support, which supports your
| hypothesis. (Also it doesn't make much sense to bundle
| these things when they are all making new releases at
| different schedules.)
| diodak wrote:
| Hey, Zed developer here. Indeed we do not bundle the LSP
| binaries into the final binary for the reasons you've
| stated; and I do agree that the binary is kind of big,
| though at present .dmg compression gets us a long way (as
| the .dmg itself is ~115Mb). Right now we ship an
| universal binary, so half of that size is essentially
| unused: size
| /Applications/Zed.app/Contents/MacOS/zed __TEXT
| __DATA __OBJC others dec hex 120979456 475136 0
| 4336828416 4458283008 109bc0000 zed (for
| architecture x86_64) 117587968 458752 0 4336680960
| 4454727680 10985c000 zed (for architecture arm64)
|
| Then, each of these binaries includes about 40MB of
| assets. I've actually had a PR up
| (https://github.com/zed-industries/zed/pull/3997) that
| reduced their size quite significantly, though that did
| not end up reducing the size of a .dmg itself, so I've
| scraped that. On top of that, we ship with debug symbols
| for symbolication of crashes (https://github.com/zed-
| industries/zed/blob/main/Cargo.toml#L...).
| thomastjeffery wrote:
| It took me _way_ too long to figure out that Zed exclusively runs
| on OSX. Why is that not in the first paragraph of their landing
| page?
|
| edit:
|
| It's not even _on_ the landing page, or even on the about page!
| The landing page has an entire section, "Work with code on any
| machine"!
|
| This is worse than bad.
| totetsu wrote:
| Any Mac'hine.
| dmcgill50 wrote:
| It's at the bottom. Next to the download button
| teaearlgraycold wrote:
| Tim Cook is happy
| serial_dev wrote:
| The "Work with code on any machine" is confusing because it's
| not what you expect by glancing over the headlines. In the
| section they describe what they actually meant by it... It
| means that you can collaborate with others who have zed
| installed and run things on their computer, edit code etc.
|
| I vaguely remember them being on the Rust podcast and I believe
| they said that they want multiplatform support but they first
| need to nail it on one platform before they go for the next.
|
| https://rustacean-station.org/episode/antonio-scandurra/
| thomastjeffery wrote:
| That's all good and fine, but it should be immediately
| obvious to anyone who _can 't_ install their software that
| that is the case.
| rapnie wrote:
| Roadmap 2024, Adoption: Unix support
|
| https://zed.dev/roadmap
| kadotus wrote:
| Isn't OSX Unix-based? I'm probably just ignorant, but what
| exactly does this mean? edit: oh you probably meant "Linux
| support" whoops ok
| diem_perdidi wrote:
| I can see "Linux support" though.
| Affric wrote:
| They mean Linux. Linux support is on there.
|
| Mac uses a very different graphic stack.
| petepete wrote:
| It _is_ Unix.
|
| https://www.opengroup.org/openbrand/register/
| registereduser wrote:
| I'm frequently confused when coming across hyperbolic comments
| like these. You can just say: "feedback: make it more clear
| that it currently only supports MacOS". Calling it worse than
| bad is a stretch.
| davidmurdoch wrote:
| It's "worse than bad" because it's just a flat out lie?
| sarlalian wrote:
| It is not a lie, it just doesn't mean exactly what you want
| it to, and is certainly unintentionally misleading. You can
| work with code remotely on any machine.
| davidmurdoch wrote:
| Words have actual meanings.
| sarlalian wrote:
| The full text is:
|
| > Work with code on any machine > When you join a
| teammate's project, you can navigate and edit as if the
| code is on your local machine. Open any file, type with
| low latency, and interact with language servers. It all
| works seamlessly, whether you're working with someone at
| the next desk or on a different continent.
|
| I'm curious what part of that indicates that it means any
| operating system? It is clearly talking about treating
| remote machines as local machines. Yes, words have actual
| meanings but they also have context in which they are
| said or printed.
| davidmurdoch wrote:
| It's the context of the entire page that gives it that
| meaning.
|
| Here's an interesting perspective: https://chat.openai.co
| m/share/6ac010c4-dc4c-43ec-8b34-fc68a2...
| sarlalian wrote:
| I'm assuming that chatgpt agrees with you, personally I'm
| avoiding using their software until they figure out a
| better relationship with content creators / artists than
| they have right now. I still think calling it a lie is
| hyperbolic and inflammatory when it's just mediocre copy.
| Hope you have a great day.
| thomastjeffery wrote:
| You can't install MacOS any machine. You can't install it
| on _most_ machines. You can install it _exclusively_ on a
| Mac, a hackintosh, or a VM.
|
| I'm not trying to assume or criticize their intentions.
| I'm criticizing their unintentional mistake.
| sarlalian wrote:
| My reply was to contextualize that it wasn't a lie. Maybe
| a poor choice of words, but given the context on the
| page, it's clear what it is talking about, which isn't
| the application being cross platform. A lie implies
| deception, which I think given the context on the page
| there wasn't any intention to deceive, just poorly chosen
| words that can have different meanings depending on the
| context.
| thomastjeffery wrote:
| I'm expressing an opinion here. It applies as specific
| feedback, sure, but it was also intended for anyone casually
| listening: this is a very generalized problem that I would
| like people to be aware of.
| lolinder wrote:
| This might be bad in its own way, but I saw that the
| screenshots were 100% macOS and immediately assumed that it was
| Mac only and closed the tab. I actually had to go back and look
| because I could have sworn that I saw it written somewhere, but
| no, it was just the screenshots and the general feel of the
| text that clued me in.
|
| I think part of it is that apps that are designed to be multi-
| platform don't tend to use macOS screenshots because maxOS is a
| minority of their users.
| kyawzazaw wrote:
| sounds hyberbolic
| mcpherrinm wrote:
| > Work with code on any machine
|
| This is referring to remote editing support.
|
| Platform support is in their FAQ, but I agree it should be a
| bit clearer on the homepage. Perhaps the download button should
| say "Download for MacOS" or similar.
|
| I do think your comment here is unnecessarily rude.
| behnamoh wrote:
| > Work with code on any machine
|
| > This is referring to remote editing support.
|
| I agree with the OP, I thought it meant Zed was cross
| platform or something.
| Gorath wrote:
| It's rude to make misleading marketing statements as well,
| especially when you are addressing a technical market. That
| is pretty bad, and thinking so is not rude.
| arghwhat wrote:
| It's "rude" to _intentionally_ mislead. It's not rude to be
| bad at marketing.
| foundry27 wrote:
| Rude to who exactly? OP criticized the landing page for a)
| omitting the fact that ~85% of desktop computer users can't
| use Zed, and b) alluding to this not being the case with
| language about working anywhere. This isn't an attack on the
| authors, or on the product they clearly put so much time
| into.
|
| Yeah, OP said the page is really bad. But IMO we should be
| able to express negative opinions on things we think suck
| about technical content without being forced to couch our
| language in euphemisms for fear of being rude, especially on
| a site like HN.
| mcpherrinm wrote:
| Let me quote two of the entries from the "In Comments"
| section of https://news.ycombinator.com/newsguidelines.html
|
| > Be kind. Don't be snarky. Converse curiously; don't
| cross-examine. Edit out swipes.
|
| > Please don't post shallow dismissals, especially of other
| people's work.
|
| Expressing negative opinions is fine. But perhaps you
| should have a fear of being rude. We are a community, and
| there's plenty of other people reading these comments. I
| value kindness and being constructive, neither of which the
| comment I replied to appear to express.
| depressedpanda wrote:
| If you value kindness, consider empathy. The person
| you're somewhat haughtily tone policing is obviously
| annoyed about wasting a totally unnecessary amount of
| time on something ultimately useless to them.
|
| And the feedback was constructive (and easily
| actionable): be upfront about the very limited platform
| support, don't waste people's time.
| tptacek wrote:
| You're trying to high horse a complaint about someone
| referring to a new open source release as "worse than
| bad"? Because it doesn't support their preferred
| operating system? And it took them too many clicks on the
| website to learn that? No, that won't do.
| depressedpanda wrote:
| But hiding essential information such as that it only
| runs on one OS, _is_ really bad UX, especially since it's
| so easy to fix.
|
| Let's not conflate the open source release -- which is
| awesome! -- with the poor website design.
| tptacek wrote:
| I don't think there's a way to talk yourself back up onto
| the horse here. Drive-by barbs like "worse than bad" are
| a plague on this site. It was a rude complaint about the
| website for an open source project, and it was called out
| civilly. Ironically, it's your personalizing response
| that skirts closest to incivility.
|
| You can just disagree next time (if you really want to)
| without lecturing people on empathy? I think that
| strategy might work better.
| depressedpanda wrote:
| You should consider the irony in you rudely lecturing me
| about lecturing someone else about lecturing a third
| person for being rude.
|
| I hope you see the hypocrisy in your complaint about
| personalizing responses that skirt close to incivility.
| Not counting this comment, you're by far the worst
| offender in this thread.
|
| I'm done here.
| tshirttime wrote:
| Because it got you to hear the pitch. People hating on Zed is
| still better than people oblivious to Zed.
| hbbio wrote:
| It's fully made in Rust with a GUI in Rust so it should be
| multiplatform with a few contributions.
|
| There are just packages for OSX for now... you know open source
| means you can build your own now, and that may be exactly why
| they release?
| thomastjeffery wrote:
| Apple has an entirely unique GUI framework (Cocoa) on top of
| an entirely unique rendering stack (Metal).
|
| I understand why they would choose to implement Zed using
| those tools, but the sacrifice is platform compatibility. I'm
| not bothered at all with the fact that this is MacOS
| exclusive. _I just want to know_ before I go try to download
| it!
| thatxliner wrote:
| The thing about the Zed workflow that I don't understand is local
| servers. Say I were to develop a full-stack web app using some
| frontend meta-framework (e.g., Next.js) and a backend running
| locally for development (e.g., Supabase). How would that workflow
| work with Zed? I need that live preview/reload available to be
| productive. Some sort of feedback loop.
| jamil7 wrote:
| It's a text editor... So you're going to use whatever workflow
| you used before.
| no_wizard wrote:
| isn't it vite / webpack (or some other dev server) running in
| the background with this anyway? Not really something a text
| editor handles usually
| photonbucket wrote:
| How does GPUI compare to other gui libraries?
| philsnow wrote:
| I opened a random python project on my machine in Zed and it
| automatically loaded up an LSP for python. It looks like it's
| using the same one as my emacs uses (pyright), but it presents
| completion choices in a not particularly useful order. Typing
| `os.p` gives me for instance as completion choices:
| pwritev pwrite putenv popen pipe
| path P_ALL P_PID pread pardir
| P_PGID P_WAIT
|
| ... but then I type 'a' and then backspace and it gives some of
| the same choices, but in a different order P_ALL
| path pread pardir P_WAIT [etc]
|
| here's a gif of it, I'm just typing and backspacing through
| "os.path" and watching the completions be in an unguessable
| order:
| https://snap.philsnow.io/2024-01-24T13-57-09.q7pyi8re104uqhn...
|
| Is pyright just giving Zed all the possibilities and it's up to
| Zed to rank them? I don't know the details of editor/LSP
| integration. lsp-whatever in emacs ranks these choices in a
| reasonable order.
| thearrow wrote:
| I'm also curious about the answer to this! I noticed similar
| behavior when opening a Typescript project. Enjoy the low
| latency, but I'd also appreciate accurate/helpful autocomplete
| suggestions.
| dr_kiszonka wrote:
| Interesting. I sometimes have the same issue with pyright (via
| pylance) in VS Code on Win.
| MrJohz wrote:
| Yeah, I noticed while writing Typescript that it was suggesting
| `String` above `string`. In Javascript and Typescript, there
| are almost no situations where `String` is the correct thing to
| use, so this choice surprised me.
|
| I tried it out today, and in all fairness it is a very
| attractive and pleasant-to-use editor, but it felt like it was
| missing a lot of the little details. Things like suggestion
| order, or being able to open terminals side-by-side, or showing
| quickly where all the type errors are in my project or even a
| single file.
|
| The collaboration tools sounds really neat, but unless I can
| convince colleagues to use it with me, I don't have anyone to
| collaborate with! For that, the little details are hugely
| important.
|
| That said, it looks and feels wonderful, it's a very elegant
| tool.
| j0e1 wrote:
| Does Zed plan to support extensions/customizations outside of
| themes?
| warthog wrote:
| I really did not need another choice overload complex,
| particularly when it comes to my choice of code editor. Though
| this seems good.
|
| Somebody please tell me what to use. No "depends on what you
| wanna do". Just which one.
|
| Thank you
| kyawzazaw wrote:
| JetBrains
| lantry wrote:
| Yep, JetBrains is the gold standard IMO. If you want
| something that works well for most cases and you don't want
| to think about it, just go with JetBrains. Even their free
| stuff is high quality.
| Solvency wrote:
| Am I alone in thinking the contrast levels on all of their UI
| screenshots is really faint? It's pretty hard on the eyes.
| silcoon wrote:
| Great idea having a Rust editor fully open-source, and I also saw
| the GPUI crate in the codebase. Happy to try it!
|
| P.S. For the first 5 minutes I thought Zed was developed by
| Meta... please change that blue :D
|
| P.S.S: it's incredibly fast, and already has rust-analyzer
| included.
| itishappy wrote:
| Heard of Helix? It's a bit more Vim to Zed's VSCode, but it's
| open source and Rust too! It also comes with rust-analyzer and
| tree-sitter included.
|
| https://github.com/helix-editor/helix
| slowtec wrote:
| Helix is awesome, fast, elegant and works everywhere. I
| wonder what unique selling points Zed has that could motivate
| me to switch?
| srid wrote:
| Helix doesn't have a plugin system:
|
| https://github.com/helix-editor/helix/issues/122
| bartekpacia wrote:
| Just like Zed?
| archseer wrote:
| Yet.
| resonious wrote:
| Personally I love the no plugins. It keeps the core editor
| competitive and easy to set up.
| gigatexal wrote:
| So now that it's open a community effort to get Linux and other
| non-Mac ports of this could be a thing?
| sharkjacobs wrote:
| I like a lot of what I see of this but
|
| 1. Whenever I open a new window it fills the full height and
| width of my screen.
|
| 2. I just have no faith in a product which hand waves how it's
| going to make money.
| mynameisvlad wrote:
| Why would you need to have "faith" in an open source product?
| You can always get an older copy or build it yourself, or it
| could be forked by the community if it's popular enough and the
| original gets completely abandoned.
|
| For that matter, why does an open source product need to make
| money in the first place?
| sharkjacobs wrote:
| > Why would you need to have "faith" in an open source
| product?
|
| Well, even ignoring the central servers which are required
| for all of Zed's collaboration features, I'm not personally
| interested in maintaining my own persona fork of Zed
|
| So that means I need to "have faith" that someone, whether a
| paid team of developers or an unpaid group of volunteers,
| will continue developing, or at least maintaining the
| project.
|
| Or that it gets abandoned in a state that I can keep using it
| indefinitely, I guess.
|
| > For that matter, why does an open source product need to
| make money in the first place?
|
| That's a fine question in general, but in the announcement
| they pretty clearly say that they are hoping to make money
| with unspecified future subscription services, not that they
| don't need to make money
| numitus wrote:
| I am just wondered, how many lines of codes people writes every
| day, that code-editor speed is so important?
| mattigames wrote:
| I dont think is much about how much you write, is more like
| your brain consciously and subconsciously keep track of how
| enjoyable/frustrating is to any use any given tool (or perform
| any given action), for developers that includes the code
| editor, and some developers percieve speed as one of the most
| important features to make it enjoyable
| Aeolun wrote:
| I think it's more that slowness makes things less enjoyable.
| Snappy should be the baseline. I love IntelliJ, but the fact
| that it often just decides to randomly re-index, slowing the
| whole system to a crawl, makes the experience of using it
| extremely frustrating.
| palata wrote:
| A new desktop app that is not web/ElectronJS!!! Amazing! \o/
| vouaobrasil wrote:
| I just tried it and it's one of my favourite text editors for
| MacOS already. Lite-XL and VS Code are my others. All other text
| editors for MacOS are too weird.
| subarctic wrote:
| If it's open source, why do I have to agree to a bunch of terms
| and conditions that look suspiciously not like a standard open-
| source software license when I try to install it?
| vcdimension wrote:
| Unfortunate name; it clashes with the builtin zshell editor.
| shane_kerns wrote:
| No Terraform support even though there is an LSP?
| nikolay wrote:
| Yup, the issue has been open for months!
| v3ss0n wrote:
| No Linux and windows support yet. This needs a big wait time
| then.
| NIckGeek wrote:
| I just tried Zed and it is definitely really pleasant to use. I'd
| need at least a Java LSP to use it for real (and preferably
| general LSP support so I can code in my own programming languages
| with it) but I can see a lot of promise. If they ship a Linux
| release so I could use it on my desktop too they could win me
| over from Sublime Text/IntelliJ.
| ra1231963 wrote:
| > and preferably general LSP support so I can code in my own
| programming languages with it
|
| I'm curious, do you really use your own languages for day to
| day development?
| NIckGeek wrote:
| About 70% of the programming I'm doing right now is in my own
| language. But like, my full time work is programming language
| research so I accept that's an uncommon use-case.
| DiabloD3 wrote:
| I was excited, but then I saw it was Mac only.
|
| Weird choice, most programmers will never even look at this
| editor.
| svennidal wrote:
| Most programmers I know prefer macOS above all other. Is it
| different where you're from?
| riquito wrote:
| There are obviously more programmers on Linux and Windows
| than on Mac, no matter your bubble. Since zed is Mac only,
| necessarily most programmers won't use it
| adlpz wrote:
| This is not obvious at all and in fact directly contradicts
| my anecdotal evidence in many "bubbles".
|
| It's likely to be the case for the "bubble" of the Zed
| authors.
| WCSTombs wrote:
| Linux remains quite popular among software developers.
| Yodel0914 wrote:
| It's different for anyone working in a corporate environment,
| where no one cares what you prefer.
| torginus wrote:
| Yes, I run docker for a lot of workloads, and I can't drop
| the $3000+ they ask for a 32GB machine, where the same
| upgrade is like $100 for a regular Windows laptop.
| uglycoyote wrote:
| yes, the title of this post should be, "Zed, a collaborative
| Mac-only code editor....". I also find it kind of obnoxious
| that their front page says they are focused on making the
| world's best code editor without mentioning that it is tied to
| one platform. I don't think it can come close to being the best
| editor with such limitations.
| timeon wrote:
| > focused on making
|
| So it is not done yet is it? One platform is apparently not
| the goal for them.
| nalinidash wrote:
| As said by someone in another thread,linux support is on their
| roadmap[0].
|
| Stay tuned for that. 0: https://zed.dev/roadmap
| norir wrote:
| Sure, but if you live in the bay, you'd be forgiven for
| assuming that 80% of developers use macs, 17% linux and 3%
| windows. Developing mac first makes perfect sense to me.
| flakes wrote:
| I don't think that's quite fair. The stackoverflow survey shows
| a large number of developers have made the move to Mac.
| Certainly not the majority, but a very healthy share.
| https://survey.stackoverflow.co/2023/#section-most-popular-t...
|
| Anecdotally, Mac has become very popular at my workplace, with
| a growing number of developers choosing Mac for their primary
| device. We mostly target Linux, so regardless of workstation
| we're usually remoting into a Linux box or running some
| VM/Docker setup locally. When I can work on projects locally
| without a VM, the interactions on Mac feel a lot more natural
| compared to Windows.
|
| I don't think I would switch back to a Windows machine any time
| soon, although if I was offered a Linux laptop I'd be very
| tempted.
| DiabloD3 wrote:
| I don't really consider the SO survey useful anymore. It
| seems to be hyper-selected to just Silicon Valley techbros,
| instead of either the more general US tech industry, or the
| worldwide tech industry.
|
| If the Silicon Valley is just a bubble, then the two bubbles
| I live in (life-long FOSS/Linux guy, but also deep into the
| hosting/transit/non-eyeball end of the Internet), every
| single Mac owner I know does _not_ run OSX, but only wanted
| it for the physical build itself; they either run Windows
| because of job reasons, or they run Linux because they like
| to get shit done.
|
| Everyone else I know is slowly joining #TeamFramework. Having
| made what seems to be the best Ryzen laptop on the market is
| certainly turning heads, and congrats for pulling it off.
| flakes wrote:
| > It seems to be hyper-selected to just Silicon Valley
| techbros, instead of either the more general US tech
| industry, or the worldwide tech industry.
|
| How do you validate this claim? The country demographic in
| the survey shows that USA makes up only 21% of responses.
|
| https://survey.stackoverflow.co/2023/#section-key-
| territorie...
| DiabloD3 wrote:
| The reverse of this is, I don't know how SO can validate
| the claim, or the accuracy of any of the results in the
| SO survey.
|
| If a lot of people self-select themselves to align with
| techbro culture, techbro culture is mainly in the Silicon
| Valley _but not only there_ , and they think, for
| example, owning a Mac is how you signal belonging to that
| group (as in, Macs are a modern day Veblen good), then
| people who think they are (or wish they were) part of the
| techbro culture, no matter their location, will buy Macs.
|
| So, the claim being given by people quoting the SO survey
| is: SO survey responders are _not_ mainly made up of
| people who self-identify as techbros or have had their
| purchasing decisions (such as buying a Mac) greatly
| influenced by techbro culture.
|
| I do not know of a way to argue that position. You _can_
| state that, literally, techbros live outside of the US,
| which is obviously true without quoting this survey; it
| however, does not mean the Silicon Valley doesn 't act as
| an echo chamber, and doesn't have great effect on the
| tech industry worldwide.
|
| What I would more likely want to see is, of that 21% of
| America, how many live in either the Silicon Valley or
| the Seattle/Redmond region. As in, how many are hailing
| from the Chicago or New York or Dallas metros, or non-
| metro regions entirely.
|
| I'm guessing that, still, many would have responded that
| they live in either the SV or the northwest, greatly
| more-so than elsewhere in the US.
| TotempaaltJ wrote:
| Certainly sounds like you're hyper-selecting to your own
| biases and ignoring real evidence when it doesn't agree
| with your personal observations.
| DiabloD3 wrote:
| Yes? I literally just said "HN hyper-selects their own
| bubble, but if I do it, I get entirely different results;
| neither of them are likely to be correct."
| deepakhj wrote:
| Why can't I see hidden files or folders like .circleci?
| dancemethis wrote:
| Congratulations and kudos on picking a strong Free Software
| license! Thank you for pushing the world into better places.
| piyush_soni wrote:
| Tried Zed some time back, the performance was pretty good as
| compared to VS Code, though gave up when they chose to implement
| other fancy / collaborative features before implementing the most
| basic requirement from an 'editor' - Search and _Replace_.
| Contacted them but there was no response. Looks like they have
| replace now, so worth trying again (still hard to give up all the
| features of Sublime Text yet).
| ncrmro wrote:
| Was there pictures somewhere?
| RonnieOwnsLexus wrote:
| When will it come for windows ?
| rs_rs_rs_rs_rs wrote:
| Not a screenshot in sight...
| timeon wrote:
| There are some on landing page.
| solardev wrote:
| Are there any screenshots or feature lists anywhere? I couldn't
| find them.
| cultofmetatron wrote:
| just downloaded it.
|
| pros:
|
| * god damn this is fast... vscode feels so bloated by comparison.
| * lsp integration works great. loaded up a rust project I have
| and it has good support for autocompletion
|
| bad: what keeps me from using it as my daily driver for now
|
| * no support for integrated debugger. I use rustrover for rust
| dev sepcifically because its so easy to set debugger stuff. *
| daily workflow inolves entering a docker container or sshing into
| a remote server to edit code. I don't see anywhere in zed where I
| can do this.
|
| bottom line: I see a lot of potential here. I'd love to use this
| when I'm just editing some rust code and I need zero distractions
| but the lack of ssh remote makes this a no-go for all of my paid
| work at the moment.
| svennidal wrote:
| Nice that it's installable Homebrew. It's very fast comparing to
| other GUI editors. Happy to see Vim mode and would love to see
| more of Vim commands enabled. I can see that you can open splits,
| but you can't specify what file to open in a split. But you can
| move the splits around with the same shortcut as Vim. Looks very
| promising!
| 098799 wrote:
| Did they call it Zed just so they have a movie to quote when they
| announce it's demise?
| radiKal07 wrote:
| I won't switch from neovim but I gave this a try and I quite like
| it. It really is very fast and snappy. If I were using VS Code I
| would've switched to this one.
| zensayyy wrote:
| would be nice to have the collaboration feature something like
| LSP with an easy to implement protocol. I can see that being
| useful but you gotta let the people choose their tools too. If I
| can run neovim/jetbrains/visualstudio and can connect to someones
| Zed Collab protocol beacon, that would be awesome af for at least
| the basic features (file browser and seeing live edits). This
| whole notes/chat thing can stay a specific zed feature IMO
| Sparkyte wrote:
| Actually kind of interested in this... I think collaborative code
| editing is the future of development.
|
| I think the next evolution is also combining the collaborative
| code editing with a virtualized environment. Where it builds and
| deploys remotely or runs the code for test and validation.
| souvlakee wrote:
| Does anybody know if I can add custom keybindings to switch
| between the code editor and the files tree? Also, can someone
| evaluate how Zen is configurable in terms of "only keyboard"
| usage way?
| veltas wrote:
| > GPUI rasterizes the entire window on the GPU, just like a 3D
| video game.
|
| So my laptop will be roasting hot constantly?
| jhasse wrote:
| No, because a game utilizes the GPU 100% most of the time,
| while the simple GUI of this editor doesn't require as much
| calculations (fewer triangles, etc.). So your GPU can downclock
| and stay cool and quiet.
| gloosx wrote:
| AI helpers, Chats and Calls??? Microsoft log-in, Commercial
| plans, Telemetry? Seems like an overload of everything for an
| editor - more distractions not a new way to code. Def sticking
| with good old nvim for some longer time, no better editing
| experience engineered yet
| globalnode wrote:
| yeah i noticed that too, whats so hard to just get a simple
| editor that gets the job done without so much wasted energy and
| code.
| jeremyjh wrote:
| Why is another one of those needed? Personally I'm excited
| about the idea of a feature-rich editor that is still blazing
| fast.
| gloosx wrote:
| It is not really needed, but this one is definitely here
| for the sake of announced commercial plans. Maybe it is
| faster than vscode, but it is still not fast enough like
| most of based terminal editors. I just made my benchmarks
| with 500MB of dev/urandom bytes to open on clean nvim and
| zed. Nvim opens it in 20 seconds while it takes 30 for zed,
| so I can say there is at least something inside the core
| engine which works 50% slower that of my champion's. Non of
| the landing page benchmarks at zed features a fair
| competition with really fast and great editors.
|
| Editor's main purpose is to edit, and i don't think that
| stuffing anything else in the basic box without user asking
| for it is necessary. You can always pick a plugin if you
| need AI or collaboration or suddenly hundred species of
| messenger is not enough and it MUST be inside you editor
| instead of a usual swipe to an adjacent screen.
| jeremyjh wrote:
| The performance we're talking about here is not startup
| time, but responsiveness to keystrokes. Fast startup
| should also be a goal, but this is primarily an editor
| for doing development work with, and for me at least
| those kind of editors stay open all day (or more) for
| each project I'm working on. I use a very lean vim
| configuration for other use cases.
| pretext wrote:
| Opinion: very lovely and has a great potential. Feature request:
| toggle dark/light theme depending on system theme, just like
| VSCode and JetBrains IDEs.
| juxhindb wrote:
| Definitely looks cool! I look forward to trying it on Linux down
| the road with Berkeley Mono font.
| lbj wrote:
| Great alternative for those who can't afford Emacs.
| meekins wrote:
| It's interesting that the #2 selling point on the landing page
| (the Copilot integration) relies purely on Microsoft's goodwill.
| There is no official API for Copilot but instead a (non-standard)
| LSP implementation embedded into the proprietary Copilot Neovim
| plugin. Zed seems to trust under the hood that a release of the
| plug-in exists on Github, pulls the minified-js language server
| from there and integrates with that. The minute MS decides to
| pull the plug on the Neovim plugin Zed loses the functionality as
| well.
|
| I wish we had a proper API to interact with copilot but it seem
| that pulling everyone else except the dedicated VIM and JetBrains
| users into VSCode land seems to be more in their interest.
| impulser_ wrote:
| Why would Microsoft pull Copilot from Neovim?
|
| Microsoft doesn't care if you use copilot with VSCode or not.
| Copilot is a paid product the more support the better for them.
|
| I bet Microsoft doesn't care if you use VSCode or not. It's not
| a paid product.
| nicce wrote:
| It is not paid product for non-commercial and open-source
| products. The get massive amount of data if you use it in
| VSCode, and because of this, it is pain to ass to use on
| VSCodium for example. Your data is the currency, and other
| editors are good on limitin that.
| meekins wrote:
| If they wanted non-sanctioned editors integrating Copilot
| they wouldn't have taken the extra steps of implementing an
| obfuscated LSP but provided an API or a plain client library.
| At best this could be a pet project by a Neovim fan GH
| employee. Either way I wouldn't expect long term (if any)
| support from this thing.
| alberth wrote:
| > the Copilot integration) relies purely on Microsoft's
| goodwill
|
| Given that the founders and several employees are former GitHub
| employees, I have to imagine they know how to do this
| integration in a proper & officially allowed way.
|
| https://zed.dev/team
| rckt wrote:
| Launched it on Macbook Pro Mid 2015. I can't say that I noticed
| any speed difference in comparison to the VSCode.
| norskeld wrote:
| Interesting to see how they are gonna approach integrating
| plugins/extensions system, because this is likely gonna be one of
| the major factors affecting adoption and ecosystem growth.
|
| Helix devs, for instance, lean towards a Scheme-like
| implementation. [1]
|
| [1]: https://github.com/helix-
| editor/helix/discussions/3806#discu...
| hello_computer wrote:
| This is an impressive piece of engineering, but I already have a
| collaborative code editor. It's called vim+tmux, and I can use it
| over hardware going all the way back to the 80s. The older I get,
| the more I feel that if I can't use it over a VT220, I don't want
| it.
| Chris2048 wrote:
| Was confused until I realised I'd confused Zed, with Xi[1] which
| is also rust based, and which incidentally has a frontend called
| "Xim"..
|
| Also there's a wiki-editor (like Tomboy[2]) called "Zim"[3].
|
| [ _1]https://github.com/xi-editor/xi-editor [_ 2]
| https://en.wikipedia.org/wiki/Tomboy_(software) [*3] https://zim-
| wiki.org/
| basilgohar wrote:
| I love this, they are doing things in the best way from my
| perspective. They've used the best copyleft licenses (GPL3 +
| AGPL3) and they are clear that free/open source software does not
| mean you cannot still make money. As they say, commoditize your
| compliment. I wish them success, and this move makes me want to
| look into this tool a lot more now.
| theptip wrote:
| I had an interesting thought reading their post - is there a
| brand new open-source monetization strategy in "operate the AI
| assistant for your tool"? Users can always plug in a local LLM
| but the fine-tuning and inference optimization is potentially
| much better from a paid team focusing on the problem.
| shdh wrote:
| Love Zed, just wish it was available on Linux and Windows as
| well.
| eggy wrote:
| I have 2 Macs, PCs, and Linux. I need a cross-platform editor,
| for which I use emacs or VS Code right now. Will Zed eventually
| go cross-platform before 2025?
| asantos3 wrote:
| https://zed.dev/roadmap
|
| It's on the roadmap for 2024
| itunpredictable wrote:
| Pleeeeeeease fix the letter spacing on the blog, my eyes are
| burning
| exaldb wrote:
| Is there a way to explicitly disable Copilot/AI/collaboration
| features? I won't be able to use this at work if there's a risk
| that it'd upload my code. It looks like a very fast editor (with
| Vim keybindings!) and I'd love to use it even without AI :)
| geoelectric wrote:
| From the docs on zed.dev: "copilot": {
| "disabled_globs": [ ".env" ] }
|
| I imagine * would work there too.
|
| I don't see a way to disable all the collaboration features,
| but it does look pretty difficult to do it by mistake. You have
| to add collaborators explicitly.
| andsoitis wrote:
| On the home page I read this:
|
| > Extensively fuzz tested for stability > Performance and power
| mean nothing without reliability. That's why we've subjected
| Zed's critical code paths to randomized tests that help us find
| and fix rare edge cases. By creating controlled chaos in
| development, we achieve stability in production.
|
| How effective is this approach? Does it catch many issues that
| would not otherwise have been caught through a more risk-based
| approach? Conversely, does it tend to catch any significant
| issues?
| mortallywounded wrote:
| I'm really happy the Atom team is back with another editor and
| atoning for the sin of creating Electron.
|
| I'm glad Zed exists and hope it succeeds. I'm rooting for the
| team and hope they can put Microsoft's editor down the way
| Microsoft put Atom down.
|
| With that being said-- I won't be using it. I've been using Vim
| for ~15 years and I've tried every editor and IDE under the sun.
| I just can't use anything else.
| Rapzid wrote:
| Electron is fine.
|
| Their sin was using coffeescript and having one of the most
| _unresponsive_ editors.
| imbnwa wrote:
| Is the lack of Java support because everybody thinks IntelliJ
| runs the table so why bother?
| desireco42 wrote:
| I am not in a market for a new editor... not even a little bit.
|
| But overwhelming positive experiences here, that I read, people
| being happy with using it made me try it out.
|
| It really feels different and better. Can't say why and what it
| is. But first impression is very positive, even the theme, I
| didn't feel the need to change it.
| microflash wrote:
| Their language support story is extremely weak right now (no
| support for Java, XML, SCSS, etc.). An editor should focus more
| on editing capabilities (it is editor after all).
|
| Also, no option to disable all the collaboration and AI features
| leaves a sour taste for me. Hopefully, they'd improve on this
| later.
___________________________________________________________________
(page generated 2024-01-26 23:02 UTC)