I am quite confused with the timing of this announcement (if it is one). I have just 1.5 weeks ago downloaded the stable version and paid $80 (IIRC) for the upgrade. I would like to support the existence of this software, however, am trying to put the pieces together. Can you help clarify what this means for someone that has just purchased or paid for an upgrade?
Open Source
Itâs not an official announcement about Sublime going open source, if thatâs what youâre concerned about. Itâs just one of many threads where people are trying to convince the developers that it should be open sourced.
Wow, youâre good at offering other peopleâs work and livelihood for free! Strange that youâre not offering your own.
First of all, I must to say I definitely favour close source software like SublimeText in many cases and I do think there are many good reasons to keep softwareâs source closed. As a user, in many cases I just care about the product quality as well as being able to customize it perfectly for my needs and not the core. With Sublime Text thatâs already possible so I donât have anything to complain about it.
If you think about it, in this particular case the choice of Sublime has been providing smart extension points since the very beginning so the community would add value to the product for free while keeping the core closed. I think thatâs a good business model and a really smart way when youâre just a startup. Success of Sublime at this point is out of discussion hereâŚ
That said, I wonder about something else here⌠Iâve been cheeky enough to ask some questions in the past about the internal behaviour of some of the Sublimeâs API functions such as extract_scope, view.replace or more recenly⌠score_selector.
I havenât received any answer from the authors to my questions in the forums (which I totally respect, itâs their choice at the end of the day and they probably have good reasons to do so). But I wonder, do you really think giving hints about some particular tiny core functions would be bad at all for a well-established business? Iâm not even talking about the source code itself from these functions but just hints about the behaviourâŚ
I believe the core API functions are living in plugin_host.exe as native code and Iâve tried to reach the location of the code itself using a debugger but itâs been impossible to me as putting breakpoints in plugin_host will make SublimeText client crashing.
Itâs hilarious, companies like EA, IDTech, Epic, opening their products (much larger codebase than STâs probably) to the masses at certain point so people will increase the value of their product and here very tiny particular functions are kept secretly save like goldâŚ
Anyway, this comment is out of frustration as Iâve wasted couple of days trying to figure out how extract_scope
works with no success and thatâs annoying as I know the function must trivial
Peace.
Yeah⌠Thatâs just unfortunate. If ST is open source, people could help themselves theoretically.
But how do EA make money from their products? Dare they open sourced their commercial games so I could compile them by myself and âtestâ them? (yes, I âpromiseâ I would only âtestâ them ) They could still make money by making their own games, teaching people how to use their Frostbite Engine, or providing technical support (like Red Hat).
I mean that people and I know itâs good for âusâ if ST becomes open-source. But Jon (STâs author)
has to figure out a new business model to profit from an open source âtext editorâ and the way has to make more money than he could make now. I consider Notepad++ as a good example for a open source editor but at the same time, I donât think the author makes money from that. However, Jon is running a company and making money is an important thing for a company .
No, it is just that I have been prioritizing work over the past month or so trying to stabilize everything from the dev cycle so we can get a new stable build out.
In general, I am happy to tell you how something is implemented, but every single edge case isnât necessarily obvious, even if you have the source code sitting in front of you. Sometimes it can take an hour to dig through everything and try to find a way to express all of the situations in which something may work subtly different. Ideally though, it isnât just that we tell one person the answer to their questions, but rather write documentation so all package developers can use it. This means the process just takes a but longer. Sometimes when writing new documentation you have to spend a bunch of time thinking about the most logical way to present it all to users so they can understand it.
The other aspect in a discussion about things as fundamental as scopes is that changing things that have had edge case bugs part way through the lifecycle of a major version can actually introduce new bugs since there have been years of packages who may have run into the edge cases and worked around them. Just this dev cycle we fixed a couple of edge case issues related to plugin loading and received reports of breakages because packages happened to be utilizing the âbrokenâ implementation.
As a matter of procedure, in general it may be better to open an issue on the issue tracked about missing documentation. That tends to be a better place to track things that need to be done by Sublime HQ, whereas the forum is more of a continuous flow of questions, support, ideas, announcements, etc.
I mean that people and I know itâs good for âusâ if ST becomes open-source. But Jon (STâs author)
has to figure out a new business model to profit from an open source âtext editorâ and the way has to make more money than he could make now. I consider Notepad++ as a good example for a open source editor but at the same time, I donât think the author makes money from that. However, Jon is running a company and making money is an important thing for a company .
This is quite interesting actually, nowadays youâll see quite a lot of articles talking about how to make money with open-source products but the reality is these open-source business models are intended for very pretty specific and they wonât apply for many type of âcasualâ software there. For this particular case, I still think the same than when this thread was opened, I really miss the point about which benefits would bring for both the company and us the users if it was open source.
I strongly believe that one of the many keys of good software architecture is having good centralized and compact team while being able to provide the right extension points to your product. Also, even if you add more elements to a system that doesnât mean the system will become more efficient.
Btw, I still consider quite hilarious one of the initial claims at the beginning of the thread, which says:
Already, Visual Studio Code and Atom surpass Sublime in features out of the box and in extensions, despite their existence for a fraction of the time. Why this exponential growth? The power of open source.
Thing is, I donât really like these pointless battless about which OS is better, which programming language is better⌠or which editor is better⌠But Iâll tell you one thing, IMHO Sublime Text has had the right solid foundations that many other editors donât and thatâs something thatâs not easy to change when the product has reached a mature stage. Sublime did it right from the very begginning while other editors like VS code or atom not. Cos let me tell you, if you consider the quality of one particular editor for just the âout of the boxâ features⌠well, thatâs just wrong (IMHO).
Sublime strive for efficiency, compactness and delivering the right extension points and also knew how to generalize important concepts from other editors out there at the time it was released, these concept were extremely importants and nowadays youâll see a lot of derivative work out there.
So no, Iâm not sure about the statement that talks about the âpower of open sourceâ⌠nowadays everybody consider everything should be open source as a matter of fact, I see a good point in many cases about open sourcing stuff but that doesnât mean by open sourcing a product this will become immediately superior, cos thatâs not it.
Anyway, many times Iâve thought which alternative business model I would have applied myself if developing a similar product to ST and I canât think of any cos I really think the business model has been a really fair and good one from the very beginning.
First of all Will, thanks for your reply, it makes total sense, so I really appreciate your clarification
Ideally though, it isnât just that we tell one person the answer to their questions, but rather write documentation so all package developers can use it.
Yeah, actually if I think backwards many of my previous questions were intended to know about very specific cases that could be not very relevant for many package developers out there⌠so yeah, I agree the goal should be everybody wins here, by adding better documentation in some cases the whole community will benefit about it, itâs a win-win situation
As a matter of procedure, in general it may be better to open an issue on the issue tracked about missing documentation. That tends to be a better place to track things that need to be done by Sublime HQ, whereas the forum is more of a continuous flow of questions, support, ideas, announcements, etc.
Your word here! It makes a lot of sense actually⌠thanks for the clarification, Iâve been doing wrong all the time
I think these type of clarifications and explanations once in a while are a really good thing⌠they talk very well about the company itself. On the other hand, I understand you guys are bussy with more important subjects than these low-priority ones.
Anyway, all clear to me at this point, moving on
I was thinking if Sublime HQ could do something similar to Epic games Unreal Engine repo set up. Like for instance when you go on the about for sublime text. It will give you an invite link to the Sublime HQâs GitHub Organization. You can view the Sublime Text repository, you can do a fork and a Pull Request. Sublime text could stay closed source but as a Private GitHub Repository.
Sublime text could stay closed source but as a Private GitHub Repository.
Do you really think so? Letâs speculate a bit then, letâs assume they would do it like youâre suggesting. Now, letâs get a little bit paranoich here and letâs also say just to be safe SublimeHQ would force you to sign some NDA contract to âprotectâ Sublime source code a bit.
Now, considering Sublime is highly popular letâs say hundred if not thousands of devs would fork it⌠and then, suddenly, Sublimeâs source code appears misteriously somewhere on the internet in the form of torrent or whatever⌠wow, itâs not private anymore. My question, would it be possible to identify the responsible of such an action? I doubt it⌠SublimeText wouldnât be closed source anymore.
What Iâm trying to say is, either you open source software or you donât, the way Epic does it is just yet-another way to open source software really. IMHO this concept of private github repository only makes sense for companies
nothing will kill this project faster than open sourcing it. Look at JK Defrag / MyDefrag for an example of what will happen.
well, âkill this projectâ is probably an overexageration as ST has reached a level of maturity and stability quite high but I agree open sourcing it wouldnât benefit neither the community nor SublimeHQ at all.
I actually do not believe its an exaggeration to say that open sourcing ST would kill the project.
Open source it and every joe shmoe will suddenly have a shiny new editor they wrote for sale on www.buymenow.com. Thats EXACTLY what happened to JK Defrag and is why he rewrote it from scratch, called it MyDefrag and abandoned JK defrag.
You will notice that MyDefrag has not had any updates to it in YEARS!!
Well⌠which type of project weâre talking about here? Letâs establish first some conventions about the type of software project that actually exists:
- >2M sloc - Large/Huge project (ie:
- 100k - 2M sloc - Medium project
- 10k - 100k sloc - Small project
- <10k sloc - Tiny project
At feb2009 Jon said:
For interests sake, last time I counted, Sublime was around 70k lines of C++, including blank lines, comments and unit tests.
Then if we read in one his first blog posts he says:
December, 2005. I had been kicking around the idea of a 3D accelerated text editor for some time.
Those 70k sloc in ~4 years mean ~15k sloc per year, although that ammount of sloc/year will decrease over time as the product becomes more and more stable.
Anyway, letâs assume ST has transitioned from small to medium size these days. Just a simple assumption⌠anyway, letâs just say the codebase itâs a medium size project.
Now for the sake of discussion you state open source it would kill the project and while I strongly believe no real benefits would be by doing so I also think that the project would be killed by doing so is an overexageration⌠cos you say:
Open source it and every joe shmoe will suddenly have a shiny new editor they wrote for sale on www.buymenow.com
Right, so⌠do you think improving/cloning/understanding medium/large size projects is a matter of few days/weeks/months and boom you got a new shiny product :)? Cos let me give you some examples here of medium/large/huge projects:
blender, ue4, cryengine, chromium, virtualbox, ⌠All of them are open source, did many âjoe shmoeâ created new shiny replicates of those products? Of course not⌠and the projects are quite succesfull
Again, all depends the resources your âjoe shmoeâ company will have to create new shiny replicates of the existing open source products⌠but usually if the size of the project is not small this task will prove to be quite an expensive one. Also, getting familiar with existing code to make âsubstantialâ changes is not a 5 days job neither⌠so⌠yeah, I think your comment was an overexageration
Just for the record to have a wider perspective of what a huge project is:
Windows XP: 40 million
Windows Vista : 50 million
Windows 7: 40 million (reduced from Vista).
Windows 8: 50-60 million
To contribute effectively to medium/large/huge projects you need capable people and that wonât happen magically just by open sourcing your stuff, no matter how cool itâs
The devs could make it open source. If they still want to make money off of text and merge. They could use patreon and give patreon users the access to beta features like you can do right now from buying a license.
Whatâs the maximum ammount of money per month of the most popular patreon user/company ever? Is that ammount <= profit of SublimeHQ per month?
Could you elaborate why that suggestion would be worth even to consider? wouldnât be a high-risk decission with probably no advantages added to the current business plan?
Ok, Iâll self-answer myself here⌠https://graphtreon.com/ , not bad⌠https://www.patreon.com/chapotraphouse , I thought patreon was a little toy but maybe is not afterall
Hehe. It usually depends on the community if they feel like doing a monthly donation to sublimeHQ
You can look at these 2 patreons
Could anyone bring some light to this question?
Common sense tells me you should not be forced to open source the host code but⌠maybe someone with more experience about licenses could clarify⌠thanks!