Hey HN! Didn't expect to see Fig here this morning.
We just released a new version of Fig that allows users to install a custom input method on macOS. This means we now work with over a dozen new terminals, including all JetBrain IDEs, Alacritty, Kitty, WezTerm and more.
The engineering behind it was surprisingly tricky since these APIs are not as well documented as you'd hope. (Indeed, the best place to look is the C header files [0])
But with a lot of trial and error, we've managed to get an implementation we're happy with. (That said, if anyone has tips on how to install an input method, without requiring a system restart, I'd love to hear them!)
I'll be around all day to answer any questions about how Fig works under the hood!
--
Also just to address some stuff that generally comes up when we're posted on HN:
1. Why is there a login?
Autocomplete is just our first product, and it's part of a suite of tools focused on improving developer experience in the terminal. The idea is that you can configure your developer environment in Fig and then we'll sync it across all of your devices.
2. Is there telemetry?
Yes, but you can opt-out entirely by running a single command.
fig settings telemetry.disabled true
3. How will Fig make money?
Fig will always be free for individuals. Teams pay for Fig for collaboration and discovery of internal scripts and for managing dev environment setup and onboarding.
4. Is there a Linux/Windows version?
We are making really good progress and will have a prototype in the next month or so. See the Github issues for Linux[1] and Windows[2]
> The idea is that you can configure your developer environment in Fig and then we'll sync it across all of your devices.
What's Fig's target audience? Developers.
Developers have been using a tried and tested way to keep configurations for decades -- dotfiles. We sync them across all our devices using git (or any of a thousand other ways). This is a solved problem and doesn't require email addresses or logins.
why don't you give this company a chance? I am sure there is room for innovation even if it's non oss it's fine along it's something new.
I'd like to see what kind of innovation they can bring to dotfile management.
I keep most of my important dotfile configuration in a private repo managed by stow/syncthing, but the management gets old after a while and the git commit -am "update" gets old after a while..
Yeah yeah right and you just appeared out of nowhere with a 300-word explainer. "Just in case". Stop this shit-show already, everybody knows you're a YC-baked company
YC-baked companies get tips and notifications when they're about to get featured
people are critiquing you below and you're asking HN mods to downrank negative comments to keep up your PR-game
my harsh, but valid criticism of your product ended up at the bottom of page, although it has 20 points and should actually be higher than yours and any other comment, but life's easy when you can cheat a bit!
My understanding is that high-karma accounts can downvote comments/posts. HN is still primarily a community where supporting & encouraging those building things is the norm. Criticism of makers isn't rare, but my hunch is that it's less accepted. So this could explain the downvotes. Also keep in mind that HN is still a work in progress—to this day. Dang works hard to keep a civil, supportive community, and how upvotes/downvotes get weighted could be at play too.
HN moderators didn't touch your comment. We moderate HN less, not more, when YC or a YC startup is the story. That's literally the first principle of HN moderation—lots of past explanation here: https://hn.algolia.com/?dateRange=all&page=0&prefix=false&qu....
There are a small number of trusted users (not moderators or high-karma accounts, but people who have been on HN for many years) who have the ability to mark a comment generic or offtopic, which downweights it. We encourage them to do that when a generic or offtopic comment is sitting at the top of a page, choking out more interesting discussion. It's actually the single biggest thing we've found to improve thread quality, because generic and offtopic subthreads—especially angry ones, like the one you started—tend to quickly suck all the oxygen out of a conversation, and end up making the thread be about obvious-generic things rather than the intellectually interesting details of a specific article.
This is an experiment in extending moderation powers to the community at large (and I'd love to extend it further*, because the results have been superb so far). But it has nothing to do with YC—in fact we've instructed these users not to apply such downweights when YC or a YC-funded startup is the story, because the principle I mentioned above takes highest precedence. So I'd presume that the user who downweighted your subthread had no idea that Fig was a YC startup.
You posted 16 comments in this thread attacking someone's product from what is clearly a pre-existing entrenched position. That's way too much, and not at all the curious conversation that this site is supposed to be for. (Edit: we also got an unusual number of emails complaining about how you derailed the thread.) So I think the user who applied the downweight in your case was correct in principle—doing that did improve the quality of the thread (at least for a while), which is exactly what the downweight is for. They just didn't catch the YC aspect; if they had, I'm sure they would have held back.
* (Side note: if anyone sees this and wants to 'try out' for the right to downweight comments in this way, you're welcome to email hn@ycombinator.com. Send a few examples of subthreads you think should have been downweighted and I'll take a look.)
Not at present. We could possibly display something like that, but the problem with such changes is that their downside is a lot less obvious than their upside.
Appreciate the reply! I do think more transparency for these features and their usage would go a long way to assuage the "fearmongering" that they can generate.
hey dang,
first of all, it is very brave of you to admit that HN has a elite group of users who can downweight (reorder) comments and thanks for confirming that my comment's position on the page was indeed manipulated by those outside forces
i'd like to ask couple questions:
- why aren't regular downvotes enough to moderate the conversation?
- what is the selection process for these users, do you make sure they are unbiased?
- do any users, who currently possess said abilities have any connection to YC or companies that YC have funded?
- do you review the comments these users are downweighting to make sure the act is legitimate?
- will you punish users who disregard the downweighting rules (such as the case here)?
you also admit that this thread should have been moderated less, as it is about YC-company
if so, then why haven't you still reversed the downweights on my comments to fix the rule-breaking behaviour of your shadow mods?
It isn't 'brave' - none of this is secret, and I'm happy to explain things.
In my experience, though, it isn't worth the time and energy to respond to hostile cross-examinations. I'm interested in satisfying the curiosity of good-faith users, and this feels more like an interrogation. That's no fun and does nothing for the community.
Of course there's a lot of HN bitterness here. But I like Fig. I've been running my own heavily customised .zshrc for about a decade with loads of bells and whistles in terms of autocomplete and customised prompts and what not and it has been great and I've kept it current with cool new toys.
But I've dumped most of it in the last month for Fig. I like seeing command specific options, relevant to the current context, and in a long list which I can scan and scroll quickly.
I go to documentation MUCH less now and I'm faster with it. And that's most of what I care about.
Learn the tools, stay away from the toys. Hundreds of developers have been incredibly productive with a regular shell - there isn't any practical need for a product like Fig. If it were me and I was seeking more productivity from my shell, I would dive into books into how to improve it for myself rather than hook myself to another tool.
If I was seeking to be more productive I would probably install a tool like Fig and be done with it rather than spend time diving into the books to customize my shell. I think a lot of people in this thread are overlooking the simplicity of installing it and having it "just work" versus spending time fiddling with zsh configs.
I didn’t have fig just work. Actually I realized it made assumptions about the way my bashrc and bash_profile worked that broke the installation of fig and my shell configuration after I made some seemingly unrelated edits to my bash config.
It’s been broken for months and I didn’t get enough value out of it to figure out how to fix the installation.
I don't understand what Fig is actually for. Why would I want a "visual autocomplete" when I already get what I want out of bash-complete + fzf, a more technically complete and understood solution?
I think there are two main areas where we improve the default experience.
1. Zero configuration needed to get started.
With Fig, the experience just works out of the box. A lot of developers - especially people less comfortable with the terminal - don't feel confident installing a bunch of 3rd party zsh completions or creating a custom setup.
2. Extensibility.
We've worked really hard to make the experience of writing your own completions very easy and powerful. Lots of teams are using Fig to make internal scripts and CLI tools more ergonomic and discoverable.
In my experience, writing custom shell completion scripts is not very much fun.
> especially people less comfortable with the terminal - don't feel confident installing a bunch of 3rd party zsh completions or creating a custom setup
are you telling us that your proprietary blackbox that asks my e-mail and sends telemetry data is better than open-source well-documented, widely-used, established tools?
> Lots of teams are using Fig to make internal scripts and CLI tools more ergonomic and discoverable.
can these completions be used outside of Fig?
i guess not, because this doesn’t make you any money?
> In my experience, writing custom shell completion scripts is not very much fun
yep, because nobody usually writes them, they’re autogenerated by whatever CLI framework you’re using
with Fig you write them and yes, writing autocompletions for Fig manually is better than writing Compdef manually
Our mission is to improve the developer experience in the terminal.
We think that layer on new interfaces can help make the commandline even more powerful... as well as making it more accessible. Check out kui[0] to get an idea of what we're imagining.
This is the first time I've heard of Fig, just downloaded it and it's a hell lot slicker than zsh-autocomplete. It would be great to make the telemetry opt-out more noticeable, preferably on setup, I would not have noticed it unless I saw the comment with the command to run. (Although I now see it's buried in the settings too)
agreed! it's so awesome that we now have a proprietary, VC-baked, telemetry-enabled tool that does everything free and open-source zsh-autocomplete can!
Not sure why you are being so negative on this thread. It took me 30 seconds rather than fiddling with commands and installing various autocomplete plugins and packages to get a nice config. I've done that before and don't have time these days to work on my "perfect" zsh config. I don't really care how they got their money, telemetry is opt out and they claim it's private right on the homepage.
zsh-autocomplete now has some competition so maybe both products will innovate at a faster pace.
Already use fig in my Mac terminal and love the attention JetBrains IDEs are getting with plug-ins. Going to check this out when I need to fire up PyCharm for scheduled script maintenance.
> Autocomplete is just our first product, and it's part of a suite of tools focused on improving developer experience in the terminal. The idea is that you can configure your developer environment in Fig and then we'll sync it across all of your devices.
With the risk of feeding a troll: can I ask you why you're so angry in every comment? You're almost hateful. I want to understand what makes you act like this, why you think the makers of Fig deserve this kind of response and how you think your comments contribute something positive to the discourse here on HN.
we both can agree there are legitimate points against using Fig
i’m spreading awareness and contributing to the conversation by outlining negatives for somebody who might be considering Fig
i do agree with you that some of my comments in the thread were not friendly and i’ll try to do better! i have also deleted some of my previous comments
And before you try it, no I'm not an employee and I'm not a shill. I don't use Fig, though I had a preliminary interview with them last year and they took 3+ months to get back to me, so...
`zsh-autocomplete` is a great tool as well! Some of this is just a matter of personal preference.
I've answered a few of your concerns in a different comment[0].
tl;dr
Autocomplete is just our first product, and it's part of a suite of tools focused on improving developer experience in the terminal. The idea is that you can configure your developer environment in Fig and then we'll sync it across all of your devices.
Fig will always be free for individuals. Teams pay for Fig for collaboration and discovery of internal scripts and for managing dev environment setup and onboarding.
> The idea is that you can configure your developer environment in Fig and then we'll sync it across all of your devices
don’t make it look like you’re solving a complicated problem
i don’t have 10000 computers at home that i want to sync my configs to
neither do i change my zsh config every day
you do understand that this is a non-issue?
> Fig will always be free for individuals. Teams pay for Fig for collaboration and discovery of internal scripts and for managing dev environment setup and onboarding.
what? people pay for it? you must be kidding, right?
there’s one reason you’re being ridiculed here: you have no moat, no unique value proposition, but you can’t just take your ball and go home, because you have investors whom you promised that this shit is big and will make you guys rich
luckily HN-community understands that and won’t eat your worthless crap
Honestly, it feels like you're just bitter and stuck in your ways. Yeah, git works. Syncthing works. Syncthing also has non-obvious behaviors that can lead to you wiping your folder and losing all your data (source: I've done this accidentally). These things take a lot of effort to setup and keep working, and a lot of fiddling over time. There are plenty of people out there who just want something that works, that doesn't take up valuable time and mental bandwidth. Fig is great. Maybe not for you, but it seems to me like you're simply not the intended demographic.
You don't have to use it. I just downloaded it and it's really neat, looks way better than zsh-autocomplete because it has an actual UI (as much as people here are trying to make it sound like it's the same thing). I don't think the syncing thing has much value either (for me, maybe teams), but that's not why I'm using it.
We just released a new version of Fig that allows users to install a custom input method on macOS. This means we now work with over a dozen new terminals, including all JetBrain IDEs, Alacritty, Kitty, WezTerm and more.
The engineering behind it was surprisingly tricky since these APIs are not as well documented as you'd hope. (Indeed, the best place to look is the C header files [0])
But with a lot of trial and error, we've managed to get an implementation we're happy with. (That said, if anyone has tips on how to install an input method, without requiring a system restart, I'd love to hear them!)
I'll be around all day to answer any questions about how Fig works under the hood!
--
Also just to address some stuff that generally comes up when we're posted on HN:
1. Why is there a login?
Autocomplete is just our first product, and it's part of a suite of tools focused on improving developer experience in the terminal. The idea is that you can configure your developer environment in Fig and then we'll sync it across all of your devices.
2. Is there telemetry?
Yes, but you can opt-out entirely by running a single command.
fig settings telemetry.disabled true
3. How will Fig make money?
Fig will always be free for individuals. Teams pay for Fig for collaboration and discovery of internal scripts and for managing dev environment setup and onboarding.
4. Is there a Linux/Windows version?
We are making really good progress and will have a prototype in the next month or so. See the Github issues for Linux[1] and Windows[2]
[0] https://github.com/phracker/MacOSX-SDKs/blob/master/MacOSX10...
[1] https://github.com/withfig/fig/issues/34
[2] https://github.com/withfig/fig/issues/35