Hacker News new | past | comments | ask | show | jobs | submit login
Kite is saying farewell and open-sourcing its code (kite.com)
1083 points by dynamicwebpaige 68 days ago | hide | past | favorite | 528 comments



> Our diagnosis is that individual developers do not pay for tools.

I know this first hand, building a developer tool startup and failing to reach any level of revenue. In the end, the tech was bought out by a larger company to recover a fraction of our VC investment.

The challenge is that when you're building software for developers, they already know how it must work.

It's like trying to sell magic tricks to magicians. Sell magic to regular people, and you'll see some significant revenue.

I've used Kite before. It was ok. But I am a SWE. It's entirely possible that Kite would have seen major adoption if the push was towards non-technical folks trying to get their feet wet in software. Eg: Data scientists or business.

The reason why BI tools sell so well at the moment is that you have tons of C-level execs that like the appeal of a business-optimizing tool requiring little to none of any actual software development.

Let that be a lesson to everyone. You can't blow away developers. They're just too damn ~~smart~~ well-informed.

Edit: Another anecdote: A buddy of mine built a bespoke OCR and document indexing/search tool. He has ~60 paying clients (almost exclusively law-firms and banks) that primarily work with printed pages on paper. No Saas. No free tier. The client data resides on an on-premise Windows box, avoiding issues with sensitive data in the cloud etc.

He's a solo dev with support contracts and nets something like $1000/month from each client.

For your average lawyer/paralegal, the ability to locate and reference a single page from thousands of pages in under a second is magic. So they pay for it wholeheartedly.


I’m a web developer. My company pays for JetBrains IntelliJ for me. And I love it. But, if I had to pay for it out of my own pocket, I’d use VS Code instead. I’ve used both and IntelliJ is superior to VS Code, but not to such an extent that I would pay my own money for it. But I’m more than happy to have my company buy it for me.


JetBrains IDE's is the most notable exception of dev tools I personally pay for, insane value and productivity makes it a no-brainer purchase given its instant ROI from time saved. Life's too short to not maximize your productivity for a few $'s.


JetBrains is a great example. People pay them because the product is by far the best and the cost is reasonably humble. I think it wouldn't make the same total revenue if they were selling it for twice the price.


> I think it wouldn't make the same total revenue if they were selling it for twice the price.

To be fair, that's true of almost everything.


Most software sales are more elastic and would sell closer to half the number of units at twice the price, not meaningfully increasing revenue. (This can be good or bad, depending on the industry and the competition.)


I'd pay for it if I did enough programming in my day-to-day life that it would justify the cost. But I only occasionally get into the swing of doing a project, and even then I've never made money off of any of them.

I still have my university email (graduated in 2020) so I've been renewing my student license that gets me a free license for the occasional times I use them.

I kinda wish they'd just go for the Winrar or Docker business model, where it's free for individuals but businesses have to pay up.


Also, even though it's "expensive" for an individual user, you own a full version forever!!! That makes the several hundred dollar price tag much less of an issue.


And the price goes down every year you renew for like four years I think? By year 4 you’re getting the all products pack for like $150/ year


Yeah, I jumped in when they first did subs back in 2015 (IIRC). Nowadays, the charge seems pretty trivial for what you get, though I think they may have just raised it on me a little to closer to $175.

I also jumped into a personal O'Reilly Safari subscription way back when the price wasn't as high as it is now, and I've kept that grandfathered subscription up as well.

I think between the two, it ends up being a bit less than $500 a year. That's not very much at all against a tech salary, and the O'Reilly sub actually has been quietly useful for work projects now and again too.

My basic take is 1) A builder should have their own set of tools whether they hew wood or numbers (and not everything fits neatly into Visual Studio Code, though I probably use that as much or more than Jetbrains); and 2) if I ever do manage to squeeze out a profitable side project in CA, I want my argument that I'm not using my employer's resources in any way shape or form to be very very solid.

In CA, who owns the resources is the difference in who owns that product. For the same reason, I always buy my own cell phone and pay my own cell phone plan, even if a corporate phone is otherwise forced on me, and always own my own laptop as well for any personal development that comes up.

It's a touch on the paranoid side, I guess, but I just feel better knowing I can be as independent as I want to be with my tech stack. With my own tech library to lean on, a nearly universal set of build tools licensed specifically to me, and my own devices for communication and development, I feel very comfortable that there's no implied shared resource argument that can be made.


Smart.


JetBrains IDEs are the only dev tool I pay for as well. I write kotlin professionally and for fun and the Intellij + Kotlin experience is the most I've enjoyed writing code since my early days learning Ruby.


Kotlin is such a lovely language, and I really like that it was made by JetBrains because that means I can count on a top notch IDE/development experience.


The fact that Kotlin was created by JetBrains and appears to require their IDE to be productive is the reason I have no interest in it. I'm totally blind and while JetBrains IDE's are technically accessible with my screen reading software they are difficult to use unlike VSCode which makes an effort to be plesent to use with screen reader software not just technically possible to use.


I've always used VSCode and I really don't see what it is that JetBrains can do that VSC can't. Any time there's a new language I'm picking up I can almost always count on a good extension to provide all the necessary intellisense I need.

Good to hear they've done a better job with their screen reader accessibility as well. I learned to use VoiceOver a month ago (I do a lot of front-end dev work) and ever since then I've had a lot of appreciation for any app/site that manages to pull do it well


Who said that kotlin requires intellij? Not a rhetorical question. I've never heard that claim before. Afaict there's nothing about the language that would make it impossible to use in another ide.


This is one point that worries me about Kotlin (which I like a lot). Is it even practical developing in Kotlin using something other than IntelliJ? All of its toolsets come from the same company, which could kill it one day.


> Life's too short to not maximize your productivity for a few $'s.

I feel that's not my problem as an employee. I work the same amount of time regardless.


Yes, but the work you do has commercial value to you also, based on its merits alone.

Example: without Intellij, you deploy some back end code interacting with an OCR solution.

Example: with Intellij, you can build the whole OCR solution yourself.

Doing the latter translates long term into higher salaries and more money in your pocket. You have to talk about what you did in interviews and your answers will be reflected in the offers you get.

The only way this would not apply would be if you can say “I am absolutely sure I will never move on from, or be laid off by, my company,” which is not a recommended strategy in this economy.


It will save you time, not allow to magically be better at coding...

>Example: without Intellij, you deploy some back end code interacting with an OCR solution.

> Example: with Intellij, you can build the whole OCR solution yourself.

How did IntelliJ taught you how to make OCR ? Or the example is completely out of your wild imagination ?


So you are saying that Intellij and IDE/completion make people smarter and more capable rather than a bit faster?

Do you have any source for this very surprising claim?


You need supporting data that using high quality tools to ship next-level product will, in fact, upskill you as a developer?

Can you list any alternate ways that one upskills?


He said I will become able to implement an OCR. I'm arguing that installing an IDE won't teach me all the theory of image processing.

And yes to convince me of that I need supporting data.

> Can you list any alternate ways that one upskills?

Studying, not installing stuff.


Most of the productivity increases in the past 50 years landed in the pockets of the employers, not the employees.


Few times I tried JetBrains rider trial because was fed up with Visual Studio performance issues and occasional crashes. But rider won't even compile my solution OOTB. Meh.


I’m coming to feel this way about github copilot, especially as a solo dev right now. Is it perfect? No. But it works often and spits out code that’s a good enough template or good enough, and is something i’d likely find on stackoverflow anyway. It’s kind of like I’m reviewing a junior/mid dev’s code and almost like I have a second person working with me which I find very valuable.


It's completely worth it to me to pay for the entire jetbrains suite annually. I'd say I use DataGrip, Webstorm, and Pycharm on a daily basis.


Agreed. JetBrains and GitHub Copilot are the two exceptions for me as an individual programmer.


> GitHub Copilot are the two exceptions for me as an individual programmer

I'm sure your boss will be overjoyed when the company will get hit by a lawsuit :)


Oh yes I’m sure my boss is shaking in their boots about being liable for how I spend my own money on my own time for personal projects.


The entire topic of the discussion was engineers buying their own work tools.

You went OT. It happens. No reason to be snarky about it.


Disagree. The comment I replied to was about personally paying for tools. My read was that they meant for personal use. And you started the snark, not me.


regardless I think a point was missed that you might end up pushing up code produced by copilot that could get your company in legal trouble

While I think this concern has a lot of merit, I use Copilot a lot almost always just as a fancy autocomplete. I wouldn't ever let it produce a completely new piece of code for me and I imagine most other devs using it have the same practices so this critique never really hit


I personally pay for Intellij but lately I've found it harder to motivate when vscode provides a very similar experience and especially since Python is supported out of the box for vscode.


I personally find JetBrains IDEs' capabilities exceed that of VSCode. The IDE just feels better thought out to me. However, the convenience of VSCode Web/GitHub Codespaces far exceeds that of JetBrains IDEs', so that's where I'm at now - on-demand web-based IDEs and a thin client.


After trying it a bit more I am slightly leaning towards keeping Intellij again. Mostly because of being better at the small things. Like more readable file tree-view and better project search tools.


Same. That and Sublime. JB for the unrivaled power; Sublime for unrivaled responsiveness.


I have been paying for Resharper (and now Rider and DataGrip) for over fifteen years. Some companies where I worked paid for it other didn't but it didn't matter. It improves the quality of my code and I believe it gives me a competitive edge. It also helps keeping me sane as I work with a lot of legacy code.

I see it like a construction worker that uses his own tools instead of the broken down ones of the site. It makes good business sense that I can work faster and better when I use better tools. I also pay for other tools such as dbForge and SmartSvn/Git but Jetbrains' tools have been the longest running ones (I hope this does not sound like I am a fanboy or something).


Resharper is really great for VS, and I would probably be willing to pay for it if the performance were a bit better. Some of this is probably VS' fault. I'm excited to try CLion again once my project supports it, but from what I remember the debugging experience is not so good.


This is a product that I actually _would_ pay for as an individual. It's reasonably priced and worth the increase in efficiency and better experience. Plus their pricing is fair and flexible.


Yes, it seems fair to me to spend real money on Jetbrain's tools, if you like them.

It is strange how reluctant programmers are to spend on tools even though they are, as a rule, quite willing to let themselves be paid handsomely for their services. Yet graphic designers pay for Adobe's tools. Who can read this riddle?


> if you like them.

Important caveat here. My only exposure to JetBrains had been through Intellij which was thoroughly unpleasant around 2012-2013. That impression has left me forever sour towards them. Surprised to hear people say that it could be a step up from VSCode.

It looks like "Fleet" is their VSCode competitor? I'm not sure if the homepage does a good job at communicating how this improves over of VSCode. First of all VSCode has an enormous ecosystem of tools which seems hard to replicate. In terms of advertised features for Fleet, it seems like the one most highlighted on the page is multiplayer, which would possibly enable others watching me code live? Sounds nerve-wracking. Although I could imagine some helpful scenarios when pair-programming or something.

Other items that are advertised don't really encourage me to want to make the leap, especially as something I have to pay for. It sounds like they could host your code, or something like that, which could be nice. An annoying part of my workflow is that I work on the same codebase between multiple machines and every time I hop between machines I have to commit the changes to a private repository that is separate from my team's repository. It seems like it would be somewhat straight-foward to have the same code shared between all machines.

Other than that I would be interested to hear on how any Jetbrains products would improve productivity.


> Surprised to hear people say that it could be a step up from VSCode.

VS Code is very* lightweight. Both in speed and in features. Comparing it with IntelliJ makes it seem very basic. Now, for some people that’s okay, but JetBrains IDEs are full-blown IDEs.

*: Compared to something like JetBrains tools, or literally any other electron software.


Could you give some examples of the differences I would see as a TypeScript developer using a “full-blown IDE” over VS Code.


For TypeScript there's little difference since most of TypeScript support comes from the same language server running in the background (there's an option in the menus to restart it if it breaks, same as in vscode).

Although autocomplete is better (especially for pure JS), it doesn't warrant paying for a license IMHO. Personally, I use IDEA for TS because I use it for other languages where it blows everything else out of the water (so muscle memory).

Also, if you're doing server-side development, it has a very good built-in client for two dozen databases (which pretty much replicates the functionality of their DataGrip product), so you get decent data editing / import / export / DDL support, and excellent autocompletion for your SQL (interspersed among TS code, or not — doesn't matter).

Edit: also, 100% of their products' funtionality can be used from keyboard. I don't touch the mouse at all. I think vscode can support something like that, but with very heavy customization (and even then I'm not sure). Out of the box it pretty much forces you to use the mouse for many things.


I almost never use the mouse in vscode, emacs keybindings and the command pallete and keyboard shortcuts created any time I touch the mouse. But I also don't get everything I want, (like macros and web browsing and face customization and rectangular editing) that I get with emacs, so I only use vscode for liveshare.

Incidentally, I use and pay for tabnine (another ai assistant) in emacs and it's fantastic - single line completions are superior to whole snippets I have to read with copilot, and don't get me out of my flow.

I am surprised the tabnine company completions are way easier to work with than in vscode. With grouped backends, company lsp + company tabnine is great. I'd encourage kite users to try it. Well worth the money.


Even if JetBrains does support your language more "natively", what makes it better than using a language server?

As a student I can use JetBrains tools for free but personally, I'd much rather use something like VSCode combined with clangd than e.g. CLion, as I don't see anything that would make CLion better, while the JetBrains UI is downright cluttered.

As for keyboard use, the command pallete (Ctrl+Shift+P) is right there and should be able to do anything. And thanks to the magic of language servers you can use any editor you like, including (Neo)Vim or Emacs, while keeping most of the capability for language specific stuff.


A couple of things off the top of my head.

— advanced refactoring for all supported languages: implement interface, extract interface, automatic "generification" for methods and classes, stuff like that. Saves quite a bit of manual typing.

— built-in database client (which I have already mentioned) which also provides autocompletion for database/table/column names, both for SQL queries, and various supported libraries like ORMs.

— navigation (jump to definition/declaration, find all references, etc.) works everywhere: any supported programming language, XML, files like JSON schema, YAML, you name it. For example, you can put the cursor to a primary key of a table, press your "find all references" shortcut, and it will show the list of all foreign keys referencing that primary key. Same with things like URLs on the client side (for example, the first argument to the browser's fetch() function) — put the cursor on the URL, press "jump to definition", and it will jump to the controller method that implements that URL, including the correct HTTP verb if there are multiple method for that URL. This is just one example, there are dozens of little things like that. All that makes it much easier to work with fullstack projects (to me at least).

— the UI and its "control interface" (so to speak) is consistent. For example, you use the same key combination to jump through search results, list of issues, list of references, etc. etc. Same for other key combinations — they jump make sense, you press what you think will work and it usually just works.

— it also supports fuzzy search everywhere, not just in the command palette. For example, you open up the list of databases, start typing in the name of the table (or database, or foreign key, or procedure, or whatever), and it highlights matching entries and lets you jump between them. Press Up and Down to go though its suggestions. The same mechanism works in filesystem tree, search results, issue list, and so on.

> JetBrains UI is downright cluttered

All of that can be hidden. I have the filesystem tree to the side, the main editor taking 90%+ of screen real estate, and the tab bar on the top, everything else is hidden behind a keypress.

> As for keyboard use, the command pallete (Ctrl+Shift+P) is right there and should be able to do anything

This is not the same at all. Everything can be done through keyboard shortcuts without typing in obscure commands (even though fuzzy search helps, it's pretty slow).

You should use what you think is convenient, I'm not forcing anyone. The more pressure you put on JetBrains by using the alternatives, the better for us.


A few that come to mind for me:

Searchable local history (with selective reverting / diffing) is a large value add for me.

The debugging experience is quite good.

The git integration works well- especially blame / navigating through reflog with diffs.

Autocomplete suggestions / behavior is better than alternatives, in my experience.

Auto-fix suggestions / behavior is better than alternatives, in my experience.


They're launching a new UI that's more VSCode like, way less cluttered:

https://blog.jetbrains.com/idea/2022/05/take-part-in-the-new...


It’s not just a new UI, it’s ~~crippled~~ faster to be more like VS Code and not cannibalize their existing IDEs.


My understanding is there's Fleet, their VSCode competitor, which sounds like you're referring to, and the UI refresh, which parent is referring to.

The UI refresh is the same IDE under the hood, just way simpler. I control the IDE primarily through command palette (I think many do?) so decluttering would be great- the UI is unnecessarily complex when you can press a key and type a few words to do what you want.


Ah damn, you are right. Didn't seem too much vs code like, though.


I feel like most of these can be accomplished in VSCode with an extension... We use GraphQL at my work and the amount of coworkers I've run into that don't have the GQL extension installed kinda surprises me. It makes a huge difference so part of me wonders if the criticisms of VSC not being "full-blown" enough is just people not being aware of available/relevant extensions (also probably why VSCode now randomly suggests possibly relevant extensions now)


In my experience JS autocomplete in IntelliJ isn't better, it just shows more stuff. Most of it unrelated and won't work / will be `undefined` if chosen.

It does, however, teach junior developers that the autocomplete is unreliable, which is a good thing I guess — I've seen juniors in statically typed languages like Java fail coding interviews because they couldn't remember any of the syntax, the knowledge was contained in the autocomplete and didn't transfer to a whiteboard.


I do agree IntelliJ's autocomplete is kinda crap out of the box. But if you turn off all the machine learning stuff it's back to being alright.

> I've seen juniors in statically typed languages like Java fail coding interviews because they couldn't remember any of the syntax, the knowledge was contained in the autocomplete and didn't transfer to a whiteboard.

Is this really a problem? How much Java code does anyone write on a whiteboard outside of an interview or teaching setting?


This is only a problem if they wanted to get hired, and then failed the interview because even the basic syntax of their language of choice is unknown to them in the slightest.

I didn't invent the rules, I'm just doing the interviews, occasionally from both sides of the table.

(However if I did invent the rules, I'd probably still require e.g. a Java developer to know Java at least a little bit. Is this really controversial?)


Their support is also often stellar - if something breaks in a free product, get ready for some free support also (read, none, DIY).

And, maybe you think fixing your IDE yourself makes you a better developer - if you are building IDEs, maybe, sure. I'm more than happy to outsource that a company which does this as its bread and butter.

Microsoft, on the other hand, sells (or tries to) enterprise office solutions. They may have optimized for a single use-case (TypeScript), outside of promoting their web-strategy (typescript), I wouldn't expect them to care one lick about VSCode, once it stops being particularly important.

Its also not open source (VSCode), so I would have no qualms regarding that - there is (https://github.com/microsoft/vscode) OFC but the license for the product everyone uses is not (https://code.visualstudio.com/License/). Similar story for Jetbrains - https://www.jetbrains.com/opensource/idea/ is open source while of course IntelliJ, Webstorm are not (https://www.jetbrains.com/opensource/idea/)


To be fair, there is a FOSS binary distribution of VSCode -- VSCodium[1], though it is maintained by the community. It operates in a similar way (licensing-wise) to IntelliJ IDEA Community vs. Ultimate.

[1] https://vscodium.com/


I write a bit of TypeScript recently in both VSCode and WebStorm, I also have many years of experience using both tools. Started with VSCode since it lightweight and this is what I use to edit most of the text. Unfortunately VSCode had troubles indexing the project, refactoring, figuring out types and navigating between methods. Everything works but VSCode hangs for a few seconds every time I do an action that needs a code analysis e.g. go to a method definition. Most of the time it was faster to search and replace rather than to rename a method. WebStorm was the opposite - opens in a few seconds, but then everything works instantly.


While I use it for TS/Vue projects, my main experience of differences is with C# and Java, so I’m afraid I can’t.


Strange. In my experience, IntelliJ from 2012 is a superior experience to VSCode today.


I use both, and it really depends on the language.

Something like Java is really benefitted from IntelliJ, Spring integration is excellent, but especially scripting languages like Python or JavaScript/Typescript don't get enough uplift and you might as well use VS Code.


I mean for Java. IntelliJ is made for Java. If you want to do Python, Jetbrains (the creator of IntelliJ) made PyCharm. For Javascript, they made Webstorm.


To each their own, I would still continue to use VSCode even if IntelliJ's current version was free.

Even Jetbrain themselves realised this since they are creating a VSCode clone called Fleet.


Granted; I was very junior then--and I think my issues may have been mostly related to the finnicky nature of java tooling and dependencies rather than the IDE itself.


I have to say I had the same experience with IntelliJ when developing for Android in 2013-15 or so. This year when trialing CLion I was very positively surprised by the evolution of their platform, it's easily the most usable environment for C++ development I have used.

I have experience from pure VIM, VSCode, Visual Studio for Windows, the reliable refactoring features alone are worth the price. With VSCode I would find the refactoring support not reliable and the intellisense features also might just stop working randomly depending on the project.

Prompted me to move to WebStorm also for web development, and I must say I have been very positively surprised there also.

Seems they have made some important strides in the past years, can highly recommend testing their environments out.


I think it’s because the free and OSS tools are of such a high quality for developers. There is a much bigger chasm between GIMP and Photoshop than there is between VS Code (with plugins) and JetBrains.

It’s hard for many to get over the fact that JetBrains is infinitely more expensive than VS code in dollar terms.


> There is a much bigger chasm between GIMP and Photoshop than there is between VS Code (with plugins) and JetBrains.

I don't believe this to be true. I think the difference is graphic designers tend to use much more of their toolings' functions, whereas almost every day I'm surprised someone I work with doesn't even know some IDE feature was possible, let alone how to use it. Hell, almost every frontend developer I've ever seen use either VSCode or WebStorm orchestrates everything from the built-in terminal and is baffled when they never see me use one - because it's all configured via run configurations, and that's a _basic_ feature.


That makes sense though.. Terminal commands are easy to put into team wiki or record in personal notes or put into your CI config. There is a command history, it is easy to chain commands, etc..

Unless using IDE's native tooling is making you much more productive (say its debugging does not work without it) it is better to avoid it if possible.


IDE's native tooling makes you more productive because you set it up and never interact with it. If you need to manually do stuff, or do it all the time, you can slap it behind a keybinding. My cmd+F6 to do everything that needs to be done to get the iOS app built and debugging inside a simulator is obviously going to be more productive than having to jump into the terminal every time. Ditto for the run configuration (also cmd+F6 in a different project) that spins up docker and all that blah blah to get the API server running.

This is what I'm talking about, for what it's worth, a programmer doesn't immediately see the utility in the tool and doesn't use it, and that's the story for 99% of the things an IDE does. It's always faster to do it yourself once, or twice, especially considering setup time and learning curve, so people don't make use of the tools. I see people using grep instead of their IDE search because they cbf to figure out how to do it in the IDE!

It's like we're carpenters who hate power tools.


> Unless using IDE's native tooling is making you much more productive (say its debugging does not work without it) it is better to avoid it if possible.

I have a friend who works as a dev for a decently sized software editor, so he's seen his fair share of people interacting with the tools. They work mainly with Java and the company pays for Intellij for everyone.

He's often complaining about how people never try to learn the IDE and always do things manually. They usually don't really know what they're doing in the terminal, either (they mostly use Windows, so the terminal is rarely second nature).

But whenever he shows them a few nicer features, typically around refactoring and such, they're always blown away and never look back.

He has, of course, interacted with his fair share of graybeards who only use vim, but those people don't usually take ages to accomplish simple tasks.


Because I'm always disappointed with paid proprietary software eventually. Despite some shortcomings, I used Windows 7. Anything after that had a confusing interface with two settings panels, some kind of an attempt to bring a tablet interface to desktop, loss of control over my computer.

After installing NixOS, I never actually boot into Windows 10 anymore. Naturally, I never use MS Office or Photoshop anymore.

It would feel weird to buy some proprietary software, even if it is good. Why not contribute to an open source effort?


I donate to the FSF and subscribe to iTerm2's patreon, FWIW.

I have to admit, though, I think the world would be a much more drab and less productive place if open source were completely dominant. We'd all be chiding each other to donate more and pitch in more, while barely scraping by in comparison to the vast wealth sloshing around today. Maybe it would be a BETTER world if it weren't all fueled by addictive mobile games, privacy invasive advertising, etc. But we'd be a lot less rich


> It is strange how reluctant programmers are to spend on tools even though they are, as a rule, quite willing to let themselves be paid handsomely for their services.

Ability to find someone willing to pay XYZ for foobar does not imply that I am willing to pay the same amount of money for something similar.

In fact, by doing this exact transactions it means that I find such transaction advantageous for me.

Also, I had enough stories of lock-in and losing access to proprietary systems that I prefer vastly inferior open source.

Also, I am not aware of paid systems worth paying for.

I use primarily Linux (Lubuntu), git, Codium, Python, Kotlin, pgsql, Android Studio, LibreOffice, Firefox, uBlock Origin, Leechblock, sqlite.

For what I can pay that makes it worth it? For contributing back, I prefer working on code over donations (due to geoeconomical situation and ability too direct my effort precisely where I care about things over donations often being wasted)


I also pay for JB tools. But that's because it's well beyond me or other open source developers to make a product that's competitive with it, and the competition is well behind (VS Code and Eclipse are good, but once you learn IntelliJ more advanced stuff, you feel like a programming God - something worth paying for ;) ). An IDE is insanely complex nowadays. I am not sure what Kite had in mind, but to me, what they were proposing would be "just" an IntelliJ Plugin. And I don't pay, and can't see myself paying, for any plugin.


I am glad to pay for software, but I want it to be free as in freedom: I insist on being able to modify, fix, extend and share it. So all of my tools I rely on are AGPL, GPL or BSD-licensed.


Graphics designers don't have much choice because even if they decide they are entirely fine with free program, the graphics design world runs on Adobe file formats. Not the case for programming


Designers have to spend money on their tools. There's no other option. Developer's don't. Plus, developers can make their own tools if they need to.


Because developers want to be able to hack on their own tools: fix bugs, add features, whatever. Graphics designers do not have the skills to hack on their own tools, so there isn't a huge population of them sitting around going "damn, I wish I had feature X -- I know, I'll build my own editor and open source it!"


Some do. Probably over-represented on HN. Others want to work their hours and spend the rest of their time with non-technical hobbies, or with family, or literally anything else. If that isn’t you, no big deal. But we should not paint all developers with the same brush.


Enough developers want to hack on their own tools that the market is smaller than you would naively expect, counting the number of developers and how many tools they each use. It's a bit like asking "how come we're having so much trouble selling our extended warranty to professional mechanics, even though professional drivers buy extended warranties all the time?"


The real reason is that there are free alternatives. For many people, “free and open source” is the same as just “free”.

Again, I can fix most things on my car. I can afford the tools needed. But I don’t want to because opportunity cost.

One thing I have always found weird is the whole, “hey can you look at my computer? It is all slow” is considered okay to ask anyone in IT, but it (at least in the circles I was raised) inappropriate to ask a mechanic in the family to work on your car, the accountant to do your taxes, the plumber to replace your toilet.

And even with mechanics, some like to work on specific cars as a hobby, much like an engineer might want to play around with ML and work on a CRUD app for pay.


“hey can you look at my computer? "

Think about having a friend who is doctor. We might often just ask them hey I have this pain in the neck what do you think could it be? It is not seen as asking them to work for you but merely asking for advise, like you might ask any friend. Advise is free right? And the person asking you for advise is happy to give their advise to you if you ask them. Reciprocity!

The problem with the computer MIGHT be very easy to fix if you know how to fix it.

But if you accept their invitation to help them then you don't want to just give up after 10 minutes. It would make you look not smart if you could not help with the problem after all. You have been hood-winked into working hard to look good.

The worst part is if you do something to their computer and some new problems appear later, you will be responsible.


I think family mechanics and accountants do get asked for help. Plumbers maybe a little less.

I think there's an accurate perception that IT work is generally air-conditioned and doesn't involve physical danger or sewage, so it's not as big of a deal to ask for help.


Simple. I told my parents if they buy either a Windows computer or an Android device, I couldn’t and wouldn’t help them (yes they can afford Apple devices). During the height of Covid, my dad had emergency surgery and I didn’t want to go see him when he was already weak (he’s better now). I sent them an iPad because it was much easier to use with FaceTime than figure out which badly integrated video calling solution that Google was pushing this week.


Good god no, I just want it to work. I used to be that way, but you can be too in love with customizing your tools to the point that it gets in the way of doing your own projects. I do not want to spend all my time carving better knife handles.

I think about writing my own IDE sometimes, but then I think how all-consuming such a project would be, and having to support a userbase made up of developers.


> I do not want to spend all my time carving better knife handles.

I do not either, but i do want to be able to fix a knife handle that is annoying me instead of being at the mercy of the knife manufacturer.


I have absolutely no desire to hack my own tools. Hacking my own tools doesn’t put any money in my pocket nor is that what I have ever been hired for.


I don't often hack my own tools either, but it's great to have the possibility to do so.

When you really need that bug fixed for your edge case or platform, it's much easier to submit a patch rather than wait around for someone else to fix it.


I pay for IntelliJ myself so I always have my preferred tool no matter where I work.

When GitHub Copilot decided they wanted to charge $10 a month after the beta was over I noped out.

For what it does, it sure as shit isn't worth paying more than my yearly subscription to IntelliJ...


Call me biased because I hate java. Oddly if a person hates Java, they should love intelliJ. I hated PyCharm because of its Java-centric heritage. I am a CLI guy. The closest I've come to loving an IDE is VSCode.


You may want to reconsider, or rather, consider the value of your own time.

If you value your time just even a little bit, consider how many of those tools are multipliers.

Obviously not 'JIRA' for a single dev, but in many cases JetBrains is worth it.

Would you wear Basketabll sneakers out for a jog? Well you could, but if you're going to run buy a pair of running shoes. Probably once a year. Costs about the same as Jetbrains for a year - as a very crude analogy.

At least in some cases.


I am in charge of the Software Team and do have financial support from the company e.g. if I deem a tool necessary it will be purchased – no, or little questions asked. It was insanly hard for met to justify, untill I saw the stuff marketing buys. Best decision to get the tool for our team


As a C dev I pay for CLion out of my own pocket. Partially because it's a great quality tool, and partially because there's not enough good quality tools for working in C on the market so I like to support the ones that do


IntelliJ suite is like 120$ a year, is that too much out of developer pay?


For someone working out of Silicon Valley? No. For someone working out of Bangalore, maybe?


As a software developer with my own business, Jetbrains was the only piece of software that I paid for. Everything else was open source.


One big refactor paid for mine in saved time...

Would be silly for corpo to not buy it for developers


It is very cheap compared to what developers usually earns.


Depends on your country


Disagree on this example though.


Me too - I would, on the other hand, pay to use VS Code instead of Intellij if I had to.


Yep.

Sublime Text.

I sat through scores of interviews and pairing sessions with developers back when Sublime was a thing and the vast majority (>90%) of devs would rather exit out of that pop-up asking for support then pay the measly $30 or whatever regardless of their massive incomes and increased productivity that Sublime brought them.

We developers are no more altruistic than anyone else regardless of the lies we fed ourselves in the early days of FOSS, internet, bitcoin, etc.

:(


It's worth mentioning that a ST4 license is $99 USD (and ST3 used to be $80).

Still a relative drop in the bucket for how powerful ST is and how much value its users derive from it, but there _is_ a bit of sticker shock when comparing it to most other software.

I say this as someone who, as a broke college student, got very good at hitting esc every 10 times I saved (which is how often it asks). I eventually switched to VSCode, and the rest is history.


I've been using Sublime Text for as long as I can remember and being good at exiting the popup is pretty accurate, I feel as if I don't even recognize it being there anymore.


> the vast majority (>90%) of devs would rather exit out of that pop-up

Converting just 5% of users to paying customers is considered pretty good for shareware/freemium, so just because you saw a lot of people using the trial does not mean it is unsustainable. I have no idea how much the developer of Sublime Text makes, but considering that they have been around since 2008 I would assume it's definitely sustainable.


Yeah, but it's generally the kind of money that only allows having a mom-and-pop store. 1-2-5 employees, that's it. If you have a bigger initiative, you can't do it.

Instead, Mega Corp just buys you out when you burn out after many years of development, we see this happening regularly.


In general I think you are probably right. Many developer tools are small projects that can be developed by a single person, and it seems they often struggle to grow into to a bigger company. (I've experienced this struggle myself. For me, the problem was not lack of money)

On the other hand, I think Jetbrains shows that it is absolutely possible to build a huge company that sells nothing but developer tools.

There are also a bunch of mid-size companies that sell developer tools. I'm pretty sure there's more than 5 people at Navicat, Hex-Rays, or Panic, but I'm not sure how big these companies actually are.


Jetbrains is probably the exception, out of the dev tools devs actually like to use.

ActiveState used to be another, back in the day. They're still around but with minor mindshare.


Oh I've had colleagues look at me strange for actually having bought a licence. We are sometimes a parody of ourselves...


I'm a contractor so my case is a bit different, I can't expect a client to pay for every tool I want to use. But I gladly pay for Sublime Text and Sublime Merge because it makes my work more enjoyable and effective, and this is also good for whoever is paying me.


I remember when people used to visit wikileaks for a Sublime Text license key.


I think ST was a huge financial success overall though.


I have to disagree. I pay for tools if they're good and they're saving me

   - time
   - headache
   - improve my quality or quantitive results
I very often do not want to pay if the product isn't as good as it claims or simply not good enough.

Software developers very simply would rather build their own half assed solution to a problem rather than pay for a half assed solution.

Offer quality, we'll pay.


Remember that a single data point does not show a trend.


I pay for tools independently if they are affordable and I can use them commercially (even at work, even if my employer does not pay for it). I pay for JetBrains yearly and am at the lowest renew cost as a result, so theres no incentive for me to stop paying them yearly. I also saw that you can get Visual Studio Pro for $45 a month, which is really decent considering you get a professional grade IDE all to yourself.

The other thing is they have to be tools I want to use. I am an outlier I am sure. I hear often "let your employer pay for it" but they don't always necessarily pay for the tools I need to use. Having my own JetBrains license grants me strong freedom.


They do pay, but they can not pay same amount as some corporation can. If you target individuals you need to find good pricing model for them. The best model - at least for me, that always attract me is pay for a year of subscription to updates. After 1y passes you can pay at lower rate to continue receiving updates for new features and bug fixes or you can continue to use the latest version before your support has expired. I'm hooked instantly to this since it brings me value without constant commitment. One year I may decide to extend one tool, the other I pay extension for other tool.

Jetbrains' pricing model is also good, they reduce price each year (until 3rd), so you get rewarded for having a long term subscription. If you break commitment you get the regular pricing and you start over.

I remember trying Kite, but I removed it once I saw the pricing. It was more expensive than Jetbrains IDEs (which are less than 2$ a month for individuals when you pay in a bundle - 149$ at the time) which bring much more value for the money. For me it didn't make sense to pay 20$ for just incremental improvement (if even that) over Jetbrains Intelisense.


I (=as the employee of the company) often don't want to bother to pay, because a business case, then getting the invoice right (if that is even possible and the seller allows paying by PO), then getting it paid in time, is often not worth it. Often free alternatives exist, which makes it even more a no-brainer. Never mind that as a whole we are an enormous company but software dev is not core business so really we are a small part of a whole, yet some sellers only want to sell the most expensive enterprise tier.


>> Our diagnosis is that individual developers do not pay for tools.

Hijacking the quote...

I can't count the number of times I see well-paid developers using the Sublime Text trial.


Sublime is too expensive. $99 is too much. They should make a special christmas offer %90 off and many (of those who will never pay otherwise) will pay.


Do that once, and nobody will pay the full price again. They'll just be waiting for the next discount.


But would that be worse than the same people just using the trial indefinitely?


The question is how many people pay the $99 now and how many pay the $10 then. If you can't convert 10x the people you have paying now, you will be losing money.


> Sublime is too expensive. $99 is too much.

On the other hand I have 437 games in my Steam account and countless gadgets I don't use. I guess I can skip a couple of games and a gadget or two to pay for software I use.


That's somewhat true for me as well, but I generally pay under 5 EUR for a game. Deciding between 20 games and a text editor doesn't look so good. Though as long as Sublime Text's developer is happy with the market share and revenue it has, I wouldn't change the price.


I've paid $60 or so once, and then another $60 or so for the upgrade to version 4. I've used Sublime Text for almost 10 years, essentially every single day. A hundred bucks for a tool I use every day is not too expensive. And Sublime Text is extremely good at what it does.


They should also off a £8/mo plan to use a custom icon and let people realize how good they've got it for a one off £90.


> towards non-technical folks trying to get their feet wet in software. Eg: Data scientists or business.

A bit tangential to the original post, but where does this belief that data scientists are non-technical folks? I am a data scientist myself, and in my view it's way more technical than most software development. Albeit I wouldn't still call neither data scientists nor software engineers "smarter" than the average.

Sure, if you want to train your bread and butter text classifier it just takes 10 lines of boilerplate code. But you don't need an AI-assisted tool for that - you just go to hugging face, copy paste those 10 lines, done, it's certainly faster than getting some AI-assisted code editor work for you.

For everything that is a bit more complicated, you need endless adjustments to your code, and it's quite unlikely more than a handful of people before you ever wrote the same code. It is, indeed, a somewhat painful and slow process (because just "testing" your code often takes minutes, if not hours, so finding out bugs becomes annoying). And a somewhat simple, AI-based, error highlight tool might be useful to weed out the most stupid ones and save some time.

But I will never trust something like copilot (or Kite, I guess, which I never tried) to write my code for me, as the challenging parts of the work involve long-term connection between different pieces of code (data loader, loss function, model function) that are written independently but must "cooperate" in a very non-trivial way. It is not at all uncommon that I make hours-long screen sharing calls with a colleague, discussing non-trivial mathematical computations, only to end up changing one or two lines of code that don't have an immediate link with the problem we are trying to solve.

This kind of things are notoriously hard for AI to grasp, so they can't do any decent job in writing that for me. Add on top that a lot of the code you find freely online is just ridiculously bad or broken, and you might only get unusable models generated by AI engines trained on those.

So, what kind of work are you referring to when talking about "data scientists or business" in your comment?


I found that "being technical" means different things to different people.

In the software world people seem to be referred to as technical when they write software systems not as much as singular scripts.

Data science is definitely technical but a lot of code work tends to happen in Jupyter notebooks or something similar. The main challenge is in understanding the ML/AI algorithms, the possible choices for your analyses that actually make sense for the problem, ... .

Besides that, due to the AI hype, there are so many people in data science who don't know much about coding or software engineering. Therefore, helping these people might be profitable (or not).


I work at a firm with many data scientists (I am one of them -- though my title has wavered back and forth between data scientist and ML engineer). Whether or not data scientists are "technical" and in what sense could be a difficult question to answer.

I can't speak very broadly, but at least for my company most data scientists are not doing the kind of work you describe. There certainly are some folks constructing and training complex machine learning models, but I think the majority work on the level of more basic statistical models and rules of thumb, where a project's final output might be a dashboard or presentation. Arguably some might refer to this as data analysis rather than data science, but none of these terms are particularly well defined.

That's not to say they aren't technical in some sense. All of them can and do code to one degree or another (with perhaps the exception of a small number of people who've been in the industry for decades), though not all of them do so with high proficiency or attention to software engineering best practices. That also goes for some of the engineers where I work, admittedly.

All in all, the broad level of technical aptitude has grown over the past few years. But not everyone with the title of data scientist is a machine learning specialist, nor are they necessarily skilled at software engineering.

Edit: As for Copilot, I found it worse than useless. It miserably failed every test I threw at it, from machine learning to (especially) Spark data pipelines, only redeeming itself with a string handling problem -- for which the solution was still entirely wrong but at least interestingly wrong. I frankly don't see how anyone pays for it, though perhaps it's better for projects with a ton of boilerplate.


>> Our diagnosis is that individual developers do not pay for tools.

> I know this first hand, building a developer tool startup and failing to reach any level of revenue.

Just because your startup failed doesn't mean an entire category is unsustainable.

I've been living from sales of a developer tool for the last 10 years, and there are plenty of other paid developer tools out there that show developers absolutely do pay for developer tools.

Now, maybe some of the startups have unrealistic expectations. A Python documentation reader probably wont turn into a billion dollar revenue company no matter how smart it is.

But I'm pretty sure there is a market for dev tools. Maybe the market is smaller, or harder to crack than you thought, but saying "there is no way" isn't going to help anyone.


Could you talk a bit more about your success? What does it do, what pricing model do you use, how long did it take you to acquire customers, do you feel it's worth it? Asking for a friend, of course.


I don't want to talk about it in detail, because I am trying to stay anonymous on HN.

It's a Mac app, pricing model is perpetual license with paid upgrades for major new versions (every 3-5 years). Customers are roughly 50% individual devs and 50% companies who buy for their employees, and a bunch of educational licenses, but I don't earn much from them.

I got initial traction by being mentioned by some popular bloggers and twitterers, but I only started making a full time income after two or three years. I think marketing is mostly word of mouth, and lots of people using the trial version who eventually buy a license, but for the most part I have no idea how people find my app.

As for whether it's worth it -- it's a cushy job, I can take care of my kids and don't need to worry about putting in enough hours, because nobody cares how much I work.

On the other hand it does get somewhat boring after 10 years. I've been hearing the same feature requests and ideas for improvements for 10 years. My customers are all the same average tech dudes like myself. Sometimes an interesting bug shows up, and when I track it down that's the highlight of my week.


Thanks! Very thought provoking.


> Our diagnosis is that individual developers do not pay for tools

I believe this is incorrect. I pay for many tools, but I would not pay for Kite. The problem is not that developers don't pay for tools, but that Kite, or AI-assisted code, does not address a pain point. It's a slight improvement, but I don't feel pain when I need to write code without it.

That's different from something like CI tools that I pay for. When I need to wait long for CI to finish I get annoyed. That's when I pay.


Anecdote for me:

I tried Kite a few years ago but didn't feel like I was getting much value out of it and never payed for it.

In contrast, I started paying for Github Copilot as soon as it was no longer free.

¯\_(ツ)_/¯


> It's like trying to sell magic tricks to magicians. Sell magic to regular people, and you'll see some significant revenue.

Just FYI, magic tricks are basically only sold to magicians. There's a thriving market of magic shops, especially online, where magicians go to buy new tricks (in the form of books/videos), new "gimmicks", etc.

I'd wager that a significant portion of all magic that is done is actually by magicians, for magicians, and partly in order to sell magic tricks.


You used magicians selling magic tricks to other magician's earlier, then said "smart" later.

I think it's just domain awareness, and the "they're smart" trope needs to be dismantled.

I think it plays into the technocracy problems we have now. We can solve it, we need more tech. More more more. People think we can solve social/political problems with tech - insidious.


I pay for tools, even though I'm kinda broke and would prefer to save a few hundred a year - my IDE delivers a lot of value and the support is excellent (thanks Jetbrains). I installed Kite briefly but it seemed so resource hungry I switched it off soon after without ever really trying to use it. That's not a judgement on Kite, I just didn't have the time or resources to spend at the time I encountered it.

I'm sorry it hasn't worked out for them, but they get my respect for this unusually frank self-assessment, real humility, and following through on the fine words with the actions of sharing their tools they built. They achieved a lot and I hope their future endeavors are wildly successful.


The challenge is that when you're building software for developers, they already know how it must work.

Do you mean that what you built didn't worked as it should? I don't understand, I've paid multiple times for tools that I find useful, even if they weren't perfect.

This misconception has been promoted by companies with an interest in promoting their platforms, using the expeditive procedure of subsidizing (often inferior) tools, with the collateral effect of making impossible for tools vendors to compete.

But by no means it's a law of physics. Make something programmers want. It's weird how little have the tools improved in twenty years.


What’s the best book/material on how to build a business like your friend’s? Discovering the niche, and expanding the client base are the main questions.


Be it as it may, everyone I know who tried Copilot trial is now paying for it. While my company expenses it, I started paying with my own money before that.


>> Our diagnosis is that individual developers do not pay for tools.

That was a really shocking insight for me. We do not own our means of production. And suffer all the textbook consequences that follow.

Maybe unions could help with that. Imagine using union-funded licenses, compute, storage etc. to experiment with your side projects, build your prototypes without risk of losing IP to your current employer.


I've paid for jetbrains multiple times, even though it's quite expensive for someone making money in a a third world currency. I pay for copilot.

However, I would never pay for stuff that I can get free. I could talk to my company to buy it, but I would settle for something close and free if it come to that.


People in 3rd countries use pirate copies / cracks very often. In my country (Moldova) that's absolutely OK having everything pirated even in government structures. AFAIK all JetBrains products are available cracked.

I am an individual developer and I pay for my PHPStorm and GitHub CoPilot - it saves me so much time, I could never imagine. This software is completely worthy to be paid for, even considering "free" copies are available.


OCR and document scanning companies is a big deal. I have a family member that used to do sales in this area and indeed companies with a lot of records and paper are paying big to get that digitized.


Maybe I am older, having started in the late 90's. But I think developer tools nowadays are so cheap compared to my salary that I pay for them without thinking twice.


I clearly remember paying around $80 USD for a WholeTomato [1] license back in 2003 for C# when I first came out of University into my first job. And that was a glorified auto-completer.

Software has turned really cheap. The downside of is that it is almost a commodity, but the development effort has not really decreased correspondingly.

[1] https://web.archive.org/web/20030618043241/http://www.wholet...


Developers will pay for things that don’t like to do that are outside their comfort zone and they don’t have the time or inclination.


We are in the market for an on prem OCR tool. Would you mind making a referral to your buddy? Email in my profile.


Not strictly true e.g. I pay for Pycharm.


If my employee would rather not pay for a tool, why would I spend my own money to help them save money?

The blog post was quite clear on the ”the tech doesn’t work” part, which seems like a more likely reason for their demise. Selling developer tools is hard, but selling non-functional tools is exponentially harder


I’m not a programmer and I pay for github copilot. For me it is worth the productivity boost - even if I just make things for fun.


It is surprising to me to see that you don't view yourself as a programmer. Maybe you're not a professional software developer, but writing code for fun sure sounds programmery to me.


"Our diagnosis is that individual developers do not pay for tools. Their manager might, but engineering managers only want to pay for discrete new capabilities, i.e. making their developers 18% faster when writing code did not resonate strongly enough."

I never used Kite, but I've tried Github Copilot twice, and found it marginal at best (and distracting at worst - which is why I turned it off both times). If Kite was similar, the reason I'm not paying is that coder AIs are not providing any value.

Developers are somewhat reluctant to pay for tools but I think you can get them to pay for things that are worth it. I've been paying for code editors for years.


My experience with copilot has been very different. It easily pays for itself, and getting my employer (seed stage startup) to spring for it for the entire team was an easy sell.

Yeah it's pretty dumb most of the time. But I know that, and I don't use code from it without carefully checking it out and modifying it. But it's still a huge help. Just the time saved writing tests alone pays for it. And I've had a few spooky experiences where it feels like it knows the bug fix before I do. Think of it as a smarter auto-complete.

The technology has a long way to go, but I completely disagree with Kite here. It's already good enough to pay for. If my company didn't pay for it, I would. I already pay for JetBrains, and it costs more than Copilot. I would give up JetBrains before I give up Copilot.

My guess here is Kite positioned themselves as a free alternative to Copilot and then couldn't monetize. There very likely is more to it though.


> Just the time saved writing tests alone pays for it.

This, so much. My code since using Copilot is easily ten times better tested than it was before, and I wasn't especially lazy when it comes to testing.

Given 1-2 hand-written unit tests, Copilot can start filling in test bodies that correctly test what's described in the function name. When I can't think of any more edge cases, I'll go prompt it with one more @Test annotation (or equivalent in another language) and it will frequently come up with edge cases that I didn't even think of and write a test that tests that edge case.

(One great part about this use case for those who are a little antsy about the copyright question is that you can be pretty darn confident that you're not running a risk of accidental copyright violation. I write the actual business logic by hand, which means copilot is generating tests that only interact with an API that I wrote.)


APIs are not copyrightable (Oracle vs Google). However, the code that interacts with an API might be.

Regardless, it is interesting to think about what domains are easier to generate effective models for. I would expect it to be easier to generate a supervised model <test description> => <test code>. My intuition is also, that it is easier to generate React component code, and harder to generate feature code.


Unfortunately that ruling was overturned and APIs were found to be copyrightable: https://en.wikipedia.org/wiki/Google_LLC_v._Oracle_America,_...


Which was later overturned by the Supreme Court if you read farther down the article you posted the link for.

And was all over the tech news at the time.

I kind of suspect you are intentionally trolling…


Incorrect, the case was appealed to the supreme court and the appeal was denied, so the lower court ruling held.

What was ruled by the supreme court was that Google's usage of the API (which had already determined to be copyrighted) fell under fair use in copyright law.


> Incorrect, the case was appealed to the supreme court and the appeal was denied, so the lower court ruling held.

Kind of; the appeal denied was an interlocutory appeal (an appeal before final judgement), so the lower court ruling was left in place until final resolution of the case potentially to be settled in any final appeal.

However, while copyrightability of APIs was raised on the final appeal, the Supreme Court sidestepped it, ruling that because Google’s use was fair use even if the API was copyrightable, it was unnecessary to decide the copyrightability question at all. So the Federal Circuit decision remains in place on copyrightability.

On the gripping hand, though, that decision really doesn't matter much because Federal Circuit decisions on issues outside of those it has unique appellate responsibility aren’t binding precedent on trial courts (it is supposed to apply the case law of the geographic circuit that would otherwise apply, but its rulings don’t have the precedential effect that rulings of that circuit would have.)

So, basically, as far as appellate case law, Oracle v. Google provides no binding precedent on copyrightability of APIs, but precedent that at least one pattern of API copying is fair use if APIs are copyrightable.

Which isn’t encouraging for anyone looking to protect an API with copyrights.


> which means copilot is generating tests that only interact with an API that I wrote

It bases this generated test cases on other similar test cases in other software, including GPL licensed


Which doesn’t matter unless you are distributing said test cases.


> If my company didn't pay for it, I would

Testimonials of this form are near worthless to a company. Maybe it's true for you. Statistically, it's highly likely to be misleading.

People overestimate their willingness to pay for something for a number of reasons, but one of the biggest is that they incorrectly visualise what the choice to pay or not looks like. They often imagine a moment of abstract choice after which everything remains exactly the same but some small amount of money magically vanishes from their bank account. In reality, paying for something is a tedious inconvenience, and not paying for it more often takes the form of never getting round to putting your card details in than consciously deciding "this isn't worth it".

It can be taken to questionable extremes, but there's truth in the idea that the only real evidence as to what customers will do is what they actually do, not what they say they will do. I don't know if their interpretation is correct, but it sounds like Kite at least has evidence of the former sort.


It's my personal anecdote, I make no claims that other people feel the same way. If they were logical, they should though. Paying $10 to get several hundred dollars in productivity gains is a no-brainer. It's the same reason I pay for a second monitor, a properly comfortable chair and desk, a top end computer, and JetBrains. At software engineer salaries, even small productivity improvements pay off handsomely.


I don't know about software engineering more generally, but I found it worse than useless for my work in data science (machine learning and ETL pipelines), spitting out code that was so wrong that it couldn't be salvaged. I suspect there's a wide variance in the degree to which Copilot will indeed pay for itself.


Out of interest, how are you using it to write tests? Do you just write "make a test for functionX" or something?

(Don't have much experience with it)


It is amazing for typing out mock data. Say you're testing parsing of XML - it can easily suggest the the assertions over the data parsed from the XML. Example test that was 95% coming out of Copilot: https://github.com/dotnet/arcade-services/blob/61babf31dc63c...

It also predicts comments and logging messages amazingly well (you type "logger." add 7/10 times get what you want, sometimes even better), incorporating variables from the context around. This speeds up the tedious parts of programming when you are finalizing the code (adding docs + tracing).

Honestly, Copilot saves me so much time every week while turning chores into a really fun time.


I honestly thought I'd never use copilot, but when I need to write something to interface with XML via a SOAP API, boy copilot is my best friend...


That code is wretched... Why have serializer logic embedded in a data object, especially when .NET provides generic discrete serializers?


Yeah, tabnine kills it at the data entry parts of test dev as well for sure.


I wrote up some notes on a recent experience I had writing tests with Copilot here: https://til.simonwillison.net/gpt3/writing-test-with-copilot

Once you get the hang of how to prompt it (mainly through clever use of comments) it can be a HUGE time saver.


Yes, if you show an example, or even have the test file open, it will make the other tests for you.


I wonder if this says something about the nature of test code?


Test are always mostly boilerplate and rarely include anything crafty.

95% of tests are: instantiating a class, running a method, and then asserting that the result. Tests do not or should not be crafty creative code snippets. They are boring functional code blocks by design and most are very similar, only changing out inputs and assertions between tests.


I'd go so far as to say if your test is doing something crafty, you're doing tests wrong. Maybe in a mock or fixture, but that's a write-once sort of affair.

I also don't apply DRY (don't repeat yourself) to tests. Tests should be independently readable beginning to end, no context needed. After all, the true value of a unit test is to take a block of code too complicated to easily fit in your mind, and break it down into a series of examples simple enough to fit.


Sure, it's been loads of boilerplate since forever.


Tests often have tons and tons of boilerplate


The best part about it for me is just the Intellisense (in Typescript). I'm using it on probably 3/5 lines that I write as a smarter version, but I rarely use it to do more than finish the current line I am writing.


Kite has been around for a lot longer, if anything Copilot was Github copying them


I don't think it's reasonable to say either was copying. AI assisted tooling is obvious and people have been waiting decades for the tech to reach a point where they can build these tools. Kite tried to get in early - too early probably - but even if they were the very first they didn't invent the idea.


Interestingly checking previous submissions going back to 2016 the project had subtitle "programming copilot."


^ This, I may not use copilot as much on production code, but the testing code it produces makes it easily worth it from a time saved and coverage perspective.


I like CoPilot and paid for it out of pocket. I think its worth it. Its sometimes like having a smart programmer pairing with you.


How are you validating the quality of its tests? Are you trying any mutations, checking branch coverage, etc.?


I'd assume you still read the generated code, as if you're reviewing a PR


I second that


I think the real reason is that developers are maybe some of the hardest to fool customers on the planet.

Since we literally build all of this our B.S. detection meter is really high.

Kite thought it can go after the up and coming new developers by doing slightly shady things.

However, developers also have an incredible allergy to such tactics and it forever taints your brand.

So overall, developers do pay for tools, just not useless ones with shady growth tactics.


> Kite thought it can go after the up and coming new developers by doing slightly shady things

I briefly tried Kite a few years ago. I didn't notice anything shady although maybe I just didn't stick around long enough.

What shady tactics are you referring to?


Essentially, they bought the Atom Minimap plugin and added kite-specific code/offers. This blew up a lot in the respective GitHub repo and also on HN.

https://news.ycombinator.com/item?id=14857944

https://news.ycombinator.com/item?id=14836653


> I fell for this. I enabled it because I was curious about trying new development tools, only to find out later it uploaded all of the source code on my computer to their service. What the hell.

An old comment from another user. https://news.ycombinator.com/item?id=14837253


I’d say it’s the opposite.

Developers easily fool themselves thinking they’ll save $9 p/m by building something from scratch in 3 weeks.


> Since we literally build all of this our B.S. detection meter is really high.

Oh no. The only thing that's high is our conviction that our BS meter is high. We fall prey to, come up with and promote as much BS as the next person.


I pay for copilot. It saves me a modest number of minutes of time per week. That's worth a small fee.

And before someone jumps in: I and my other co-founder who also uses copilot (We are the only two in the company who do, I think, without checking) are the compliance team. We're both very senior and use copilot basically a line or three at a time as a smart autocomplete. It's still worth it.


> [we] use copilot basically a line or three at a time as a smart autocomplete.

I think this is the best way to think of CoPilot. GitHub is selling it like its going to write all your code for you, but in reality it is just next-generation auto-complete.

That's not a bad thing. In some ways I'd argue its actually better. GitHub needs to change its marketing because even most developers seem to think that its out there to take away our jobs. Its not and can not. But it provides the smartest auto-complete you've ever seen and that can be useful, especially when wading through mundane parts of your codebase.


I found copilot to be less useful than autocomplete. Typical autocomplete suggests things that actually exist and work in the codebase. While Copilot would suggest things that look superficially like names that exist or ways I might have named it, but very often just wrong.

I find typed languages like Rust or Typescript make VS Code super powered and provides much more value than copilot.


Not surprisingly (Google's internal code analysis tooling is quite sophisticated), Google has added a post-processing filter to remove results that don't compile, but that's not publicly available: https://ai.googleblog.com/2022/07/ml-enhanced-code-completio...


It's really just perfect for remembering obscure things and can easily be prompted to generate the boilerplate. If you surround it with your style you will see it try to use the same techniques, however if you work on large code bases it gets annoying when it starts copying the bad habits you are trying to get rid of. In those cases it's actually kind of good for bringing to your attention that the building next door is still on fire.


I feel the problem with discussions about Copilot is that they consist of roughly two groups of people talking past each other. The first group believes that Copilot should be able to write code for whatever you tell it to write code for. The second group thinks Copilot is a fairly overpowered autocomplete.

The first group gets annoyed all the time because Copilot fails to write most code when prompted with comments, or writes inaccurate code at best. They get upset when they see that Copilot can reproduce GPL code when prompted in a specific way.

The second group most prompt Copilot by allowing it to tab a complete a line or two at a time, and they are actually super happy because Copilot is way better than any other existing autocomplete; it's basically in a class of its own. To them, the GPL issue seems a bit more abstract, because they would never use Copilot to do that anyways.

I fall pretty firmly into the second camp (can you tell?). Allow me to soliloquize for a moment. Copilot is an incredibly powerful tool, probably the most powerful one I have, but, just like any tool, you need to really learn your way around it, and understand what it can and cannot do, before you start making judgments. I'm not surprised that you turned it off after using it twice. Imagine saying you stopped using React after making two components!

Maybe I should write up a bit more about how I use Copilot, but in a nutshell I feel that it falls somewhere between a 2x-better autocomplete and (and this bit is even more interesting) a tool similar to google search, but more tightly integrated with the coding environment. The second bit is why it's so good. Imagine if I were to continuously google search everything I was doing while coding, while I was coding it. Sure, most of the time it'd just confirm you were doing the right thing, but... every now and then, Google might turn up a better strategy than the one I was currently trying. That's how I feel Copilot works all the time; it's continuously "google searching" for alternate approaches, and every now and then it'll be like, "aha, did you think of [this thing]" and really take me aback, because I wouldn't have even thought to Google for that particular bit of code / problem / strategy.

Of course, you could continuously google search everything you did as you did it, but it would be a massive waste of time. Just imagine Copilot is doing it for you, and returning what it found. Most of the time I know what I'm doing, but every now and then, the result is remarkable.


I'm not a lawyer, but my understanding is that even small snippets of licensed code can be problematic. I don't know exactly what the cutoff is, but when I tried Copilot it often suggested to auto complete snippets of code that were long enough that if I was intentionally coping them from a licensed codebase, I would handle the license. I'm not talking about whole giant functions, but small functions or large chunks of a function.

It is true that more commonly it suggested at most a few lines of obvious code which could really only be written the way it suggested, but a number of people in the comments on this article mentioned using Copilot to come up with test cases, so I think people are actually using it to suggest larger snippets of code.


Loads of devs I’ve spoken to, from junior to principal level, absolutely love Github Copilot though. Don’t know who is paying it for them, nor if Kite was significantly worse, but I think that at least Copilot has a brilliant future ahead of it.


Until Microsoft grants Copilot users blanket protection over copyright claims from Copilot generated code, I wouldn't even think of touching it.


Same.

Never ever I'm risking breaking copyright, and I also don't like Microsoft not including their own code in the model.


> I also don't like Microsoft not including their own code in the model

From allegations I have read across the Internet, Microsoft might be doing those who use Copilot a favor.


We may well find out the answer to that when this lawsuit[0] concludes.

[0]: https://www.theverge.com/2022/11/8/23446821/microsoft-openai...


If Copilot generates the exact same code as the source, I don't see how that process could be exempt, it's like using the clipboard on your PC with extra steps.


It can generate the same code, but generally won't.


But when it does generate the same code, you're unaware of infringing :)


So Microsoft should provide blanket protections to the developers that use it?


No, for a number of reasons:

1) It's the code license that matters, and the depends on what license the code the developer is building is using

2) License compatibility is undecided (see eg the different views of Apache Foundation and FSF on the compatibility of ASF 2.0 and GPL)

3) It's easy for someone to deliberately produce code that violates a license. MS is a big target and you can bet license trolls would chase it on that.

Probably more reasons, but there's a good start.


3) is not a good reason. "Big fish" is not an excuse to not provide protection. The burden to protect others from harm as a direct result of a feature of a product is on the owner of that product.


Not if it opens them up to false claims.


Do you mind explaining why? What do you think will happen?

This is a serious question, I'm apparently just unaware of the horror-stories that can come out of breaking copyright. (Not from the US so..)

For me its most useful for helping with bash scripts and small simple stuff, just saves a huge amount of time I would spend googling and checking small things. Not sure if copyright is relevant there or not, it certainly isn't something I am worried about. Interested to hear what your fears are based on.


ML text and image generators have a habit of regurgitating training data, especially if you happen to use certain inputs or prompts that also match said data even superficially. For example, type in "fast inverse square root"[0] and get out a bunch of Quake source code.

If you use code or art generated by an AI that was regurgitating training data, you can be sued for copyright infringement.

The way that AI gets training data these days is... questionably ethical. It's all scraped off the web, because the people who make these AIs saw court precedent for things like Google Books being fair use and assumed it would apply to data mining[1]. Problem is, that does nothing for the people actually using the AI to generate what they thought were novel code sequences or images, because fair use is not transitive.

[0] This won't work in current Copilot because a) I'm misremembering the comment phrasing and b) they explicitly banned that input from generating that output.

[1] In the EU, this practice is explicitly legal


So, this makes sense from the perspective of writing code professionally for a company. I don't buy that the risk is significant for an individual programmer, but I suppose it is plausible that lawsuits could pose a threat to a large organization.

But I find I get most pleasure out of using CoPilot for personal tasks, everyday stuff that isn't for work. Surely there is no issue there?

And to counter the note about the scraping sources-- I have recently (out of work) been experimenting with using CoPilot to translate open-source MATLAB code into python and zig. If I make something useful in this way, it will be open source and I will credit those who wrote the original code.

Surely a use-case like that last would have to tick all the moral and legal boxes?


It's interesting, the ones I've spoken to are extremely suspicious.

"GitHub Copilot blocks your ability to learn." Is a common refrain.

I don't see ANY industry-wide consensus on whether GitHub Copilot truly helps developers right now.

The only scenario I can get anyone to agree on is generating templates. Aka, JSON or CSS files that you then edit.


It doesn't block your ability to learn any more than any auto suggestion systems. But I guess it depends on what you value in terms of learning, for me, copilot allows me to focus on the larger architectural problems while not having to worry about the exact syntax of certain things (DSL query language, middleware express, typescript def annotations, etc).

Every time I don't have to context switch to look up some technical errata in my browser is a complete win for me.


I observed one guy become very resistant to reading the docs as they believed copilot obsoleted them. Programming in Ruby, the copilot suggestions will run but since you didn't read the docs you won't know that the output doesn't actually work or doesn't do what you think it does since it was intended for a different situation.


I use it. It's good for boilerplate code or basically anything where you can avoid looking at the docs. For example, I was writing an ML training loop and it correctly filled in the rest of the function after I wrote the first few lines. The code is basically what's in the pytorch docs, just fit to my model and scenario.


I’ve spoken to no one who hasn’t agreed that copilot aids in discovery when:

- learning a new code base

- learning a new (popular) library

- learning a new language

You could compare it to, say, eslint but for other languages .

What is an idiomatic way of X with Y?

Well, copilot will give you the answer in 10-30 seconds less time than opening a browser and searching.

Im not going to argue it’s legal merits, but as a learning tool, it’s very much like having a smart linter.

The larger scale code generation is less obviously useful and usually wrong, I agree.


> "GitHub Copilot blocks your ability to learn." Is a common refrain.

On the contrary, it frequently suggests code that adhere to better practices.


A coworker of mine uses it, it almost seems like an unfair advantage but I can also use it too if I want to. Specifically writing hard to decipher code eg. functional composition but Copilot will spit it out.

I haven't wanted to use it personally. I'm also not a senior dev or anything so my opinion is not worth much.


The Internet blocks your ability to learn...


Everyone I've spoken to who has actually used it thinks it works extremely well. This includes pretty experienced developers.

I've never heard anyone claim it blocks the ability to learn - if anything it's the opposite. Many people like how it shows you APIs you weren't aware of.


I used it for about two weeks total, over two different periods. Mostly Kotlin, Java, Typescript, small amounts of Groovy. I ended up turning it off. In my experience, it has moments of utility, but most of time it felt like it was getting in the way. The kinds of things it completed well were not the kinds of things that cost a lot of time or mental energy. I found wasting more time trying to fix things that when it got close but not quite there, than it saved in spitting out boilerplate.


I think copilot works very well.

But I did find that I need to turn it off at certain stages when learning (or re-learning) a programming language. It's seemed counterproductive until you have a good grasp on the basic syntax of the language. But the "showing you new APIs" does seem to be a thing that actually helps.

In general, you should not be accepting code completions that you don't understand. I'm usually stricter, in that I only typically accept completions that line up with what I was planning to type anyway.


That's been my experience.

It's good for learning new packages in Python.

It's quite poor for learning a totally new set of programming language grammar.

If you're a Javascript developer of 5+ years of experience, it's probably absolutely fantastic. Not so great if you're learning a new programming language.


Some well-known devs like Guido van Rossum and Andrej Karpathy are big fans as well [1].

[1] https://youtu.be/cdiD-9MMpb0?t=8723


Please remember that Guido van Rossum is now employed by Microsoft. Yes, I am a fan of Guido van Rossum and his work, but I am always suspicious when famous people recommend their own company's products. It feels like excellent marketing/PR that is hard to resist.


What about Karpathy, nobody pays him in principle.


Copilot is extremely shady, and everyone should refrain from paying for it until proven otherwise.

Others have already pointed out the case as a reply.


I _love_ Copilot but the only reason I use it is because I qualify under their open source developers program, I just can't justify paying $10/month for it.


How much do you love it, then? What would you pay, if it's less than $10/mo?


It saves a bit of time, but doesn't seem to make a difference on time to market of features, products, improvements or bug fixes.

In my experience, it's a quality of life improvement, but the things that dictate actual time to market is bottlenecked by things that aren't solved by copilot, such as overall design, decision making, requirements gathering, code structure/architecture, solution ideation, user acceptance, infrastructure setup, etc.

I think if it eventually could help with those other tasks, you'd see time to market gains, and that would start to make it really valuable.


"Our diagnosis is that individual developers do not pay for tools."

I think this is probably true. If you need a tool for your day job, your company ought to be paying for it. Some companies have slush funds for small purchases like books, but subscription costs for services would normally need to be approved. If you're a solo consultant then perhaps you'd pay for tools that make you more productive. But for personal projects the value-add would have to be pretty high to be paying another O($10-20) a month on top of other subscriptions.

The big group of "hobbyist" coders are students, and they get copilot for free via Github's very generous edu package (and so does anyone with an edu email address I think). The bigger problem is that this is a very expensive project. It's better suited to a big company with money to burn and deep pockets to give it away to junior devs who will evanglise for it at their new companies (e.g. students) for nothing. See Matlab.


If you'll allow me to go on a tangent here;

The sheer volume of subscription services I've signed up for as the CTO for a startup is mind-boggling. $8 here, $19 there, $49 for something important, $99 for something essential.

Some tools are easily worth it, especially when you see what is charged for other (less valuable) tools.

Gitlab, Confluence, Jira, Asana, 1Password, co-pilot, codepen, sentry, jetbrains, gitlab plugins for jetbrains, Visual Studio, Docker Desktop, Perforce, Slack, etc;etc;etc;etc

Then there's things like Spacelift ($250!)!

The most frustrating thing is that:

1) I need to justify these expenses each for what value they bring, some things are nice to have but bring so little value on paper.

2) You can't just enable tools for some people, there's huge overlap and that overlap gets greater

I get that people need to be paid, but these things very quickly add up. I'm paying about 7-13% of peoples salaries already in these subscriptions, and I feel like a total dick for saying no to people or trying to consolidate these.


The weird thing is that 13% seems high. It is hard to imagine they are less than 13% more efficient with those tools.

It is weird that software engineers are the only engineer-types that are supposed to be able to do their job with just a computer and a built-in editor.


> It is weird that software engineers are the only engineer-types that are supposed to be able to do their job with just a computer and a built-in editor.

Not really. We aren't actually engineers. Someone appropriated the title and misused it, and now there's no putting that genie back in the bottle.


Even then, software engineers tend to have more control over the work process than other roles.


I would have agreed with you 20 years ago. Now, the cloud architecture stuff is real engineering.


there are genuine software engineers, yes.

I have yet to meet or work with one.

Engineering is expensive, and most software developers rightly default to a pragmatic craftsman's attitude. Build something people can use and iterate on it based on feedback.

When there aren't lives at stake, it's usually the right call.


Software development is the only field I can think of where the making of the tools of the trade is wholly encapsulated by the field itself. Maybe blacksmithing. In such an environment, it makes sense. We make our own tools, and for the most part the most powerful of those tools end up being given away for free. To other people who both use the tools, and have the capacity to improve them. Who then give them away for free.

It is not a coincidence that software development tooling is one of the only fields that has has been thoroughly eaten by open source. It's because the user-developer circle is complete. A mechanical engineer probably doesn't have the skillset to improve the CAD program they're running. A software developer probably has the skillset to improve VIM.


Woodworkers make many of their own tools.


> Some tools are easily worth it, especially when you see what is charged for other (less valuable) tools.

Maybe, but most of the tools you listed are not in that category IMNSHO.


Which category?

Ones I excluded for bring "not worth it" are Lens ($20/user/mo), Snyk ($139/user/month) and Postman ($36/user/month) - contrast those with Gitlabs pricing to understand the value trade-off.


What's the point of using snyk AND copilot?

You either care about licenses of dependencies or just decide copyright doesn't apply to you :D Seems that using both is a contradiction.


Snyk is not just for licenses, it's for security scanning.

They have a bunch of rules for IaC that prevent default behaviour from biting you in the butt.


Snyk is for security scanning. How is that a contradiction w/ copilot?


I’d recommend anybody thinking about building a devtool to read Neil Davidson’s “Don’t roll the dice”. It’s a pretty old book, but Neil has also made it available for free now and the general lessons still hold true today.

Some IC developers will pay for tools, it’s very hard to have that happen at a price point that supports the scale required. So feature discriminate on the things their boss needs, and charge for that. And then the next set of features for their bosses’ boss, and so on until you’re selling into the C-suite.


When I tried kite over a year ago I was relatively unimpressed with it. Even though it ran as a plug-in to jet brains IDE it required a windows installed service and two separate executables running in the background (kite.exe, kited.exe), and that stuff continue to run after exiting my IDE which was unacceptable for me.

Kite may have been the first to market but copilot blew them out of the water in terms of overall functionality.


So they wanted to run forever in the background and they'd already gotten in trouble for silently collecting telemetry?

Sounds like everyone has dodged a bullet!


I'd be curious to hear about services/tools developers do pay for. The diagnosis that developers do not pay for tools seems off to me.

A few tools that I put on the company card when I worked at a Big Tech Co as an IC:

* DataGrip (Jet brains)

* Colab Pro (Google)

* Postman Pro

These were all small $ enough where I didn't need to justify the expense. It was just assumed that if I thought the tool was worth the $, it was.

For more expensive purchasing decisions, there was a longer purchasing/approval process. But the expense would have to be 5-6 figures per year before hitting this barrier.


Yeah I called BS when I read that line too. I pay for plenty of dev tools. Similar list to you.

* JetBrains (PyCharm professional, DataGrip, and Goland) ~$250/yr

* Lucidchart (Diagramming) ~100 /yr

* Paw (HTTP Client) ~$50 /yr

* Docker Pro ~$60 /yr

I think there's probably more, but I'm not at my work laptop to look, but those are the big ones. Those are only individual subscriptions. There's also huge costs when associated with things like Gitlab Premium ($20 - $100 /user/month), CI/CD, Code coverage tools, security scanners, etc. Companies pay A LOT for development tools.

If Kite thinks that the problem why no one will pay $9/mo for their service is because developers or their company's are cheap, they need to re-assess. The reason they couldn't sell their service is because it wasn't providing enough value to justify it. But companies are paying hundreds of dollars a month per developer in most cases for various tools. The extra $9 for Kite isn't the dealbreaker if there was enough value from it.


I think “company card” is the differentiating point here. I’m not sure how many IC devs have access to that. Which makes me think you don’t fall into the group that they’ve defined as IC.


I started getting purchasing authority around the senior level, when I also had some amount of hiring authority. Even if you don't have a company card, there's typically a process where you can get reimbursed for expenses.

If you are an IC reading this and have never tried to expense a tool you find valuable, give it a shot. You might end up surprised at how much management appreciates the ability to trade money for business value.


That last line really feels like a “I guess nobody wants to enjoy the great new taste of Pepsi Glass” kind of slant.

Maybe the product is poor. Maybe people didn’t believe the claim. But nobody said, “nah I don’t want my devs to be 18% faster.”


On the contrary, I find Github Copilot extremely helpful and saving me heaps of time. Yes, it's not writing the logic instead of me, but it acts like the best companion I could have in most of the cases.


I paid for intellij - damned near the entire architecture team where I worked had a copy, and the company sure as shit wasn't the one paying for it.

(I eventually stopped subscribing, in part because they were too slow distancing themselves from Russia, in part because of their movement away from open source with their newer tooling.)

Developers will pay for software, if the value proposition is there.


> in part because they were too slow distancing themselves from Russia

I'd cut them some slack here. They had to get their team out of there first—with the way Putin is running things, they sure as hell couldn't announce they were leaving Russia until everyone who was going to follow them was out of there.

On the day of the invasion they tweeted a statement condemning the attack, and within two weeks announced they were leaving Russia.

https://twitter.com/jetbrains/status/1496786254494670851?lan...

https://blog.jetbrains.com/blog/2022/03/11/jetbrains-stateme...


I cancelled the subscription long before the full on invasion.

Two weeks was impressive, just not impressive enough to get me to renew.


> Developers are somewhat reluctant to pay for tools but I think you can get them to pay for things that are worth it. I've been paying for code editors for years.

Especially when you don't market to developers in general, but freelancers/contractors specifically. It might be hard to sell to salaried developers (they'll buy because it's nicer to work with good tools), but it's easy to sell tooling to anyone who makes more money when they get more done.


With Copilot it's important to configure your editor so that it only generates completions when you ask for them. Then it can be very useful at times, especially when you're doing something you know is routine but you don't recall off-hand how to do (e.g. opening and writing to a file in append mode in a language you only use occasionally) Having it suggesting stuff every time you hit enter quickly gets annoying.

https://github.com/community/community/discussions/7553#disc...

https://www.reddit.com/r/vscode/comments/qromfk/is_there_a_w...


The tool just has to be very well integrated and easy to use. That's why copilot is seeing adoption, because Microsoft owns VSCode and has built a very simple integration of Copilot into VSCode.

That said, I'm not even sure VSCode or Copilot is lucrative, if it wasn't owned by Microsoft, could they both be sustainable businesses?


Copilot had 400k paying customers within it's first month [1]. I'm not a fan of mass generalization about large cohorts of people. Will everyone use a tool? Of course not. You just need dedicated early adopters that see the value add.

Without having tried it I'm assuming either their product was not good enough or their marketing department isn't strong. Developer really tend to neglect the latter.

[1] https://www.ciodive.com/news/github-copilot-microsoft-softwa...


I pay for github co-pilot. It seems surprisingly bad for typescript and excellent for python.


I tried it. Ironically, it was pretty good for Powershell and so so for Python (in my case at least).


Yeah, where it seems very good for me is just writing flask or fast api boilerplate, esp if I have a good function sig + doc string.

I kind of hoped that it would propose good tsx for my components (react+mui) but instead it’s basically useless. Maybe problem is that I chose “filter out exact code reproductions.”


I tried Kite and didn't even keep using the free trial or whatever the free tier was at the time. I don't think the issue is that developers won't pay for tools. Companies like Jetbrains are incredibly successful selling tools to developers. The issue for Kite is that Kite wasn't worth paying for.


Paying for copilot :) at least in go it’s great to write tests and sometimes some smaller functions :) totally worth paying for it, even from your own pocket if the company wouldn’t allow expensing it


If the company wouldn't pay for it then better think twice because you could get in hot water with legal. That's not a tool one's job or even company's business is worth risking over.

Copilot has a ton of still unresolved legal and compliance issues (copyright violation problems, sending proprietary code to Microsoft as you are writing it, etc.) and most larger businesses won't touch it with a 10 foot pole for that reason. There is even a class action lawsuit against Microsoft over Copilot already.


I pay out of pocket for a JetBrains license because it makes me a LOT more productive. I don't spend money on a lot of dev tools, but if it saves me non-trivial time, it's a no-brainer.


> Developers are somewhat reluctant to pay for tools but I think you can get them to pay for things that are worth it.

Indeed, I payed for a debugger because MSVC is pretty terrible


Yea.. i happily pay for several JetBrains tools and i'd love to pay for even more. I've got several problems that i don't want to spend time solving myself.

Frankly as a developer i've got more problems than i can count and if it involves a GUI i tend to prefer to pay for it. I love FOSS but UX is just not often a focus. I have better experience with paid products. Assuming the licensing isn't punishing.


What problems would you pay to have solved for you that don’t already have a solution?


Biggest one off the top of my head is in the category of developer productivity (which i pay a lot for already), and specifically it lets me use my editor of choice (Helix/Kakoune currently) while getting powerful new features.

Huge hurdle, obviously, but my thought was an expanded set of LSP features from JetBrains, disconnected from their IDEs. They spend quite a bit of time and money on developing DX but it's all inaccessible to those of us who prefer different editors.

I'd pay a lot for these sorts of features that go above the existing FOSS LSP, while retaining more integration to the FOSS tooling we've come to know and love (like editors or choice).

There's more i'm positive, but i just woke up :)


Your anecdote is trivially rebutted with another. I tried Github Copilot _more than twice_ (gasp), and now pay 10$/month for it. Happily.


That's why I tried it twice. I've been hearing people say they liked it. But I haven't found it very helpful, and often distracting, so I ended up turning it off. I'll probably try again next year when the models are improved to see if I feel any differently then.


Yeah, I understand. I just see a lot of people on here who seem to be deliberately looking for reasons not to like Copilot.

You don't fit that stereotype, of course. So feel free to ignore the following.

Developer tools have learning curves. One doesn't simply open vim/emacs for the first time with a full understanding of how to use it (or why it's a good tool to use, even). Historically, we have had _no_ problem with the steepness of this curve. But, when it comes to Copilot, there's a lot of "tried it and it output an obvious bug! how did this make it past quality assurance?? such a liability!" Just very reactionary and all-that.

Anyway, sorry for the toxic response.


The difference between other Dev tools and GitHub is the probability of getting things wrong. Like when intellij types out boilerplate or a compiler generates code it's 100 percent correct and if it fails, it fails predictably. Copilot is impressive sometimes but there's no guarantee of correctness or failure mode. I cannot trust such tools for anything serious. If you're in the habit of copy / pasting code from the internet then I can see why it might help speed that up. But imo that too is dangerous and I avoid it unless absolutely necessary


Your response is essentially the same as my given example (“it output a bug??”).

Thanks for the rigorous examination of my comment though. /s


Risking breaking copyright and not supporting a model of code laundering isn't exactly looking for reasons.


I don’t see how that’s relevant to anything in my comment, but since you brought it up I assume you take both of those notions as a given - but they aren’t necessarily concerns of all programmers.


How does your workplace/compliance officer feel about you using it?


Workplace? I think I remember those...


Tabnine, in emacs, with lsp mode gives you single line completions and predicts and fills out word by word in a very effective manner. It's an actual timesaver and worth the money (in emacs). The vscode experience is more problematic, but that's vscode's completions guis fault, not the tabnine server's.


I disagree, Github copilot makes me happy, helps a lot with guessing patterns in my own project base code, I just write the good function name and he guess what I want to do.


I can see Jetbrains as being the conduit for selling such a tool, because their customers are willing and are to some extent trained to pay.


Wow, Copilot's must be very domain-dependent. For me, it saves a ton of time, I'd hate to have to code without it.


Copilot is really great. Kite is garbage, & they have absolutely zero consumer trust from all the bullshit they did


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: