New Sublime Text update
sublimetext.com
sublimetext.com
Edit: I mean, no high–tech, but tools with a higher level of complexity where the UI isn't a dumbed down version, and where the software exposes some functionality to a better skilled user. I'm thinking the "millennial" professional, should be more comfortable with software and pushing the limit a little bit.
Forget asking a few other law offices to use a system like this. It would at best only be useful for him, and then wouldn't track changes properly.
Through git and pandoc in the background and put a UI on top that is idiot proof and boom.
The obvious suggestion would be to have internal groups (excluding legal) collaborate on some common plaintext markdown format where DVCS tools would provide an advantage, then publish to docx and hand over to legal for review. Unfortunately what always happens is that major changes to the contract are needed after legal has done their work, and it's easier (and acceptable) for all groups to work on the final paper together. That's where it breaks down.
I really feel that in 2016 having some poor bastard do clerical coordination of this stuff is just wrong. It's a mechanical task that's highly both error prone and a major source of operational risk, and it should be doable by the computer.
I actually kind of want to build this. Word (and the rest of office, I have the same problems with spreadsheets and powerpoints) plus plugins as the IDE, solid version control in the backend.
As far as I know, passing docx files back and forth is more similar to working with git than a google doc, so the workflow also wouldn't be dramatically different.
Or, even better, new .docx format is actually XML so it can be diff'ed too. You just need a good UI to display diffs.
It is common for law students to digest course material into a short-ish (20-30 pages, depending on the class) outline of the material, as a way of studying. With my modified syntax highlighting config, I use different color bars to represent different level headings to make it easy to see how my document or outline is organized.[1] I then have a latex template for pandoc which lets me convert it to a beautiful document that is useful during open-book exams.
Using Sublime as a WYSIWYM editor is much more pleasant, as the editor is far more responsive, than using a WYSIWYG editor (like MS Word). I actually recently wrote a paper for class entirely in Markdown in Sublime. Pandoc lets you convert markdown to PDF (it uses latex internally), and when you convert to docx format for Microsoft Word, you can use a reference file to define the style formats. It's really easy to write something like a brief or a memo and convert it with a reference file to a format that others can work with, properly styled.
[1]: Here is a screenshot of what my editor looks like: http://i.imgur.com/xU9eSwt.png :)
Given how many developers I've seen use Sublime, in the modern age of social media I'm so surprised SublimeHQ is still invisible. They hardly do any marketing that I've seen online, no social media engagement, nothing. Not necessarily a bad thing, but Sublime just seemed -primed- to be that sort of company with a hyper-engaged user base.
And despite their lack of "social media engagement", they do have a Twitter account (@sublimehq) with nearly sixty thousand followers - and they tweet just about as regularly as updates for Sublime Text are released!
Just wondering how it would be if it was less than one... How sublime would that be?
A long read, but demonstrates that even amazing products die with crappy advertising: http://arstechnica.com/series/history-of-the-amiga/
So no, from the available evidence, VSC and Atom, there is no way that an editor written in a heavily abstracted and interpreted language and VM can match the performance of Sublime.
Sublime uses high level language (python) too but not for rendering.
It's not a real competitor by any means. I don't need git integration or a debugger in my IDE, these are wasted features for web dev (the best debugger is the browser because that's where the code actually runs...). I dislike how the "search across project" works - sublime presents search results on a huge screen, but Code is confined to the side bar, really difficult to find what you're looking for given ~250px of space. Code's code highlighting is very bare, it doesn't highlight enough for me, I have to read the code too much. And Code wants me to Tweet my feedback? They actually built twitter into an IDE? Wtf
It's just a typical Microsoft product; too little too late, and nothing special.
For your use case perhaps, debuggers are invaluable if you are using a backend language that isn't javascript, XDebug with Intellij is outstanding for those rare times you really need a proper debugger.
To my point, Code is just a weird mish-mash of features. Is it an advanced text editor like sublime or is it an IDE? In either case, it's bad at both.
Looks like it works IF you have something to say, the topic is an important one and your audience knows how to listen... and all the others are yelling. (the translation into the zeit-geist of marketing deliberately not provided)
Also every time this under-marketing and under-hype of sublime comes up I wonder if we already reached the stage were semi-objective and subjective evaluation of tools is not enough to legitimate their use, if some sort of "hype" is necessary to release users from the burden of own evaluation and decision making...
Is marketing and hype a feature?
Is there maybe a generation of developers missing the pure joy of using under-hyped yet powerful hidden-gems?
Also: code-editors lagging at text input with the history leading to this funny state of affairs must be an entry in the encyclopedia technica for this civilization. ;) /scnr
But then I landed a contract using vim, and found it has more functionality than both, if you're willing to spend the time. I especially like being able to SSH/Tmux into a session from a tablet remotely and pick up where I left off, even over slow connections.
Snark aside, VSC has grown up quite a lot, very quickly. If you like Sublime, good for you, stick with it. But it looks like VSC is going to pick up support for more new things, faster. Personal favorite: support exists to plug in third-party debuggers and get debug tools/build errors inside VSC.
So, it's not as mature enough and still adds things regularly, including still struggling with speed issues?
How often does Vim have updates released? Who even cares for most of them?
React was 0.15 until recently, and Node was adopted by major companies like Microsoft at 0.xx versions.
I agree with you on the stability of Sublime Text, but the label beta has, on the opposite of version numbers, a consistent meaning: it's not finished.
Reality appears to disagree with you on this point.
A concrete example would be VSC's git support; out-of-the-box, it's a full-featured git client, and even if you prefer the git cli for most operations like I do, VSC automatically reads the .git directory and then creates a tab that shows your current changelist (modified, staged) with a visual diff of the files. Also allows you to easily do the common stuff like checkout a branch, commit, push, etc.
If you're a big fan of ST, you probably won't like the alternatives unless you have some frustrations with ST, because ST is probably more powerful overall, but compared to Atom & VSC, the learning curve is also quite a bit higher.
That means a lot to me, but I understand that some people won't really care.
The other benefit is that if the company dies you know you wont have wasted all that effort with the editor because open source editors don't live and die at the behest of the company that started them.
Think of it as insurance for one of you most important tools.
[1] For example the find-replace dialog closes itself when I press "Replace All", as opposed to other editors I've used where it doesn't. It's annoying to have to reopen the dialog after every different search.
I haven't changed anything in core, but having the ability to walk through all the code is super useful in debugging.
More than 1144: http://blog.atom.io/2016/05/06/two-years-open-source.html
You care about the utility of your editor, and that's fine. Several other comments here try to highlight ways in which open source projects are more pragmatic, like the ability to make modifications yourself or take advantage of community contributions.
All of that is just arguing about utility, though. For many people open source is a moral issue. RMS is a notable example here. And I prefer open source tools for this reason.
If you believe open source software is morally superior to closed source software then the utility considerations are of secondary, or perhaps even zero, importance.
To get the same functionality in Sublime, AFAIK, you have to create a couple of project files first and add folders into it. Then, if you later make a new folder via the terminal you have to edit your project file to include it.
That's been my biggest headache around Sublime vs. Atom. It's the smallest thing but it's like sand in my shoe.
For me, it's nice to have a separate way to tell Sublime what to hide.
I'm in ops rather than dev, so often deal with 10mb+ log files - but don't have a lot of the IDE type requirements of my colleagues. Sublime open them in seconds and is nice and quick to search through and look at. Trying to open a 10mb file in atom causes it to chew up 1.2gb of ram and it's laggy when scrolling nevermind when trying to search etc.
Sublime on the other hand not only starts up quicker and is more responsive, but it's only costing me 100mb of ram for my 10mb file as well as 20 others I've not bothered closing.
If I try and load a 100mb file in sublime it doesn't balk. Takes about 8 seconds to load, but once loaded it's amazingly responsive (to the point where I thought I still had my 10mb not 100mb file loaded). Atom attempts to open the file but takes forever and then dies after exhausting the 8gb ram on my laptop.
tldr: sublime feels stable, lean and fast vs memory munching and perceivably slow.
Edit: oh, and atom's installer is 104mb, the new build of sublime3 is 8mb.
edit2: Even after a clean boot atom just crashes trying to open a large file well before it fills up my memory, so no idea.
Atom has come a long way and I love using it.
Call me old fashioned, but the #1 feature I want from my text editor is the ability to edit plain text files... everything else is gravy (though syntax highlighting and regex's are two "features" I really like).
Amusingly (and only tangentially related), I just realised that notepad.exe on windows 7, which I always remember balking at files in the single MB range copes with my 100mb test file amicably and only chews 225mb of ram (21mb for my 10mb test file).
Truly?! That's a factor of 100x, that's ridiculous.
TBH, I'd kind of expect an editor to use a factor maybe 2x of the loaded file (for quick access indices, searching, etc). More if you count undo-buffers, of course.
Would you suggest switching to the dev builds? I really wouldn't mind being on the bleeding edge if it meant getting fixes like that sooner.
How is that "huge"? It happened at most 1-2 times a year, and a simple 1 second restart fixed it -- and still left all the files you had loaded.
I say huge because it was god damn irritating. In a giant checklist of stuff I was worried about, it was always an afterthought that caught me by surprise. When the artifacting completely craps out the side bar such that the folder tree no longer updates when files change, you can't even tell if the files are still there.
EDIT: To really drive the point home: this happened a whole lot. The above is a story of woe and sadness, but the real kicker was simply the autoupdate as noted elsewhere by `jbrooksuk. For a long time I used the Soda Theme [0], one of the top packages on Package Control. It had a wierd glitch with hotkeys and would end up reloading shortly after startup. It was possible that it would garf things up even on restart as a result (possibly as a race condition such that if no updates were performed, it restarted fast enough to not bork whatever drew the iterface). I used Soda theme for years, but have recently switched to Seti and enjoy the change quite a bit.
Excellent news.
Switching themes and seeing the UI barf is unsightly.
I'd also like to see more activity on the Twitter account or just more engagement with the community. You've got a killer product :)
Linux requires THREE files (.deb, .rpm and a .tar) I personally use OpenSUSE and can easily compile the software BUT you are not "supporting" Linux when you only support Ubuntu.
The issue is they should just have it automatically build RPM with the DEB if you have a DEB it isn't diffecult to so a RPM.
Does the rpm they provide not work on opensuse? Typically they bundle everything so it's not dependent on your system node. If not, there may be an opensuse build service that has a maintained sublime.
I use Gentoo and they're portage overlays for Sublime, but I don't really care anymore as atom has gotten to the point where I prefer using it. It has all the features I had out of Sublime, plus it's free and open source.
if (something) {
some code
//commented-out code
more code
}
It folds everything from the opening bracket to the comment, then stops.Both editors have had issues filed over this bug for years, which have been ignored. (https://github.com/atom/atom/issues/3442, https://github.com/SublimeTextIssues/Core/issues/101)
I eventually decided to go with Atom; it's open-source, so I can at least aspire to fix the damn thing myself when I get annoyed enough.
And I understand there are other reasons to not indent. In some languages, it's conventional to have certain kinds of declarations come at the beginning of a line, even if they're inside a block. (I think C++ does this, but I haven't used it since college--anyone want to comment?)
Or even just to go into "zen mode" to feel that I can focus in on one method while the other ones are "gone".
But yeah, generally it helps me get a high-level overview of the code without getting lost in the details.
So like: (( ) ) Folds into ((.. )
And it's just wrong.
Really wish packages could be subjected to some kind of performance benchmark to shame the worst offenders to fixing their isht.
Atom feels slow because it's over engineered. They try to make everything run through the plugin system.
Comparison with 10 years ago is also not so relevant. 10 years ago you didn't try to autocomplete through an average modern JS project where thousands of files are created on disk even before you create your first div. Data processing needs are outgrowing CPUs improvements by far.
IOW there's no way Atom is getting as fast as Sublime, because of the huge stack it is built upon. It might get fast enough though, but my feeling is that the discrepancy is actually getting bigger rather than smaller, as we evolve our average needs as programmers
Do they use GLEW? Skia? How do they ensure anti-aliasing is done right?
While Sublime Text 2 and 3 do use Skia, only a tiny fraction of its functionality is actually used, just for rasterizing lines and blitting images. Font rendering is done by using the underlying platform APIs to do the glyph rasterisation.
I bought ST2 too in 2012 after a few weeks using it. It was certainly an expense but given how much it was speeding some things up, I considered it very good value.
I've used it for at least 6,000 hours since then, probably closer to twice that. I'm not going to fight an upgrade when it eventually gets here.
Upgrade Policy
A license is valid for Sublime Text 3, and includes
all point updates, as well as access to prior versions
(e.g., Sublime Text 2). Future major versions, such as
Sublime Text 4, will be a paid upgrade.
https://www.sublimetext.com/sales_faqThis doesn't mean it lags, just that the dev version came out first, and only after it was checked for a while, it was deemed worthy to hit the stable (well, actually beta) channel.
That's not different than any other project I know.
Most sane projects create a build and test it, and don't rely on testing source code because the build process itself can cause defects as well.
What we've been testing as a dev build should have been promoted to stable, but, I realize now, he has the changelog embedded in the executable, and it's possibly merged across dev builds. He also has differences in the functionality between the dev and beta builds as you can't run the dev without a key.
It took me a while to learn that lesson from my own customers. As a developer I'm excited to make sure customers always get new features ASAP, but customers would complain they were perfectly happy with what they'd bought & only wanted an update maybe once or twice a year. But everyone's different - that's why the option of a Dev/Beta channel & a Stable channel is good.
Most indie-dev projects don't do testing, or TDD, or automated build tests at all. It's a guy or 2-3 guys with their XCodes/VSs.
At best, they might have a few tests.
It's different from big companies like FB/Google/etc, or from software like Adobe's, and much different than JS/Java land.
Tomorrow Night Scheme, strings in double quotes are now gray instead of green?..
But ST makes you pay $70. And also isn't open source. And more people know JS than Python to hack on it. And Github has a powerful marketing team and lots of resources to put behind Atom and it's development. And ST doesn't get updated too often.
I wish developer could find more sustainable way to make a living from this and work on it more.
I don't think I ever regretted paying for it and I made number of companies with people using it, pay for it.
The main reason so much modern software is bad is that people aren't willing to pay for even a fraction of the actual value it delivers. I would happily pay $700 for my main code editor if that would guarantee regular updates and new features.
I am happy to pay for these kind of things but rarely in a big upfront block like that. I doubt I'm the only one.
Let's run the math, and see if we can build a business around a text editor.
Let's say we can get away with 2 good developers (across 3 platforms, that seems difficult to me). Let's further stipulate they are willing to take a pay cut from their previous life at Facebook and are willing to do this as a labor of love. 90k/yr salary, 180k/yr for both.
Now we need a technical writer, to handle API documentation etc. Let's say we can get a CS major to do it part-time at 20 hrs/week at $20/hr. 20k/yr.
We also need a sysadmin to wrangle the CI setup, website hosting, install updates, setup email, etc. Suppose they automated everything in Ansible/Docker/Kubernetes/whatever_the_cool_kids_do_these_days and so we only need 10 hrs/week at $50/hr. 26k/yr.
We need a QA engineer to bang on things and file proper bugs. $50k/yr. Let's further stipulate that this same person will handle customer support, because we're a lean startup and combine multiple roles in the same individual.
We need somebody to handle marketing (or maybe direct sales, since it's a $700 pricepoint). Let's call it another $50k/yr.
We're now up to $325k/yr. Traditionally we would now have to lease office space, buy macs, call our AWS sales rep, etc., but let's assume for this conversation everybody works from home, they have their own equipment, and we got free startup AWS credit, which is not very realistic at all, but whatever.
So let's stipulate this is a stable burn rate. Nobody will get poached by Facebook, nobody needs to raise a round, if we can pull in only 325k/yr, we can do this forever.
When we sell our $700/license, let's say we net 75%. That is actually very high: most software companies net around 50-60%, because the App Store, WalMart, the state, etc., take their pound of flesh. But our $700 text editor is so amazing that people will buy it direct from us, we will have a strong brand, handwave. So we take home an incredible $525.
We now need to sell 700 licenses year-over-year in order to keep this thing going. Not even 700 licenses one-time, but we actually need to close 60 licenses a month, 2 licenses a day, 365 days a year. To do that, we needa sales process.
I would love to live in a world where a salesman knocks on your door, does a 2-hour demo, and at the end you have 50% conversion to writing him a $700 check. I just don't live in that world. And that's the kind of sales process you'd need to sustainably develop a text editor.
Anything short of the exercise I just went through will result in a failed product. A developer might take a pay cut for a year but will lose interest if they're well below market. If we don't hire good QA then our quality will be shit and not worth $700, just think of all the shitty software you use already. If we don't have support then nobody will want to spend $700 to get their emails ignored. If we fund via VC then we will have to blog about Our Incredible Journey the next time Google Docs needs an engineer.
The result of this analysis is the current market. The only way to develop a text editor is either all volunteers (like Atom), a small part of a large corporation's marketing budget (VSCode), or a labor of love from one and a half underfunded and overworked people who we somehow expect to stop being underfunded and overworked even though we only paid them like half a billable hour several years ago (ST).
Sorry, but you've already lost me there. That's firmly in the "nice to have" camp. For example: the documentation on Sublime's API is shoddy at best, but enough plugins still get made that I'm incredibly happy with it as a product. Your math adds up to what would be a great team, but there's no way you can call it the bare minimum to create and maintain a great product.
And judging from the community size, polls, and similar numbers from other project, it has sold at least 10.000 licenses (x70 -> 700,000) and i all probability much more.
>The result of this analysis is the current market. The only way to develop a text editor is either all volunteers (like Atom), a small part of a large corporation's marketing budget (VSCode), or a labor of love from one and a half underfunded and overworked people who we somehow expect to stop being underfunded and overworked even though we only paid them like half a billable hour several years ago (ST).
Maybe it's the analysis that's way off base, especially the dev numbers.
In fact the whole breakdown sounds ludicrous, like assuming the only dev work out there is done in cushy Facebook style jobs in the Valley or with extravagant VC money.
In fact tons of successful indie apps, not just editors, fly in the face of all you wrote above. No reason to believe a graphics editor (e.g. Acorn) or VST plugin (e.g. uHe Diva) or FTP Editor (e.g. Transmit) has much more potential users than a language/OS agnostic programming editor. And yet, all these companies exist for years, and even have several employees and nice offices.
As for editors, there's not only IntelliJ, that has tons of people working for it and is doing just fine, but other long time companies, like UltraEdit (that boasts 2 million users), a whole ecosystem around paid Eclipse plugins, etc.
That's a very broad statement, and is untrue in many instances.
I wouldn't call the proliferation of npm modules a good thing. I'd rather have Python programmers coding my editor plugins.
>And Github has a powerful marketing team and lots of resources to put behind Atom and its development.
Marketing sounds like reason to avoid a software. And all the resources didn't manage to make it tolerably fast/low on cpu those 2-3 years its out. Whereas at least VSC got that right.
>And ST doesn't get updated too often.
Doesn't need to, either.
* Show autocompletion boxes (e.g. cmd-T)
* Update the status bar
* Edit text
* Tag text regions (which can be used for custom highlighting, e.g. underline errors)
Atom plugins can do almost anything by modifying the editor DOM, but more formally they can:
* Display compilation error messages inline
* Show popups
* Display custom panels (e.g. the neat Git conflict resolver) within the editor window
* Draw custom settings UI
* Extend the file tree sidebar's rendering
* Create and arrange editor windows
* Create custom windows (e.g. Markdown Preview splits the current editor window and shows a live preview on the right-hand side)
etc.
Atom has also been better designed with regard to pluggability. For example, it comes with a single autocomplete system that packages can extend with custom autocompleters. Plugins don't have to invent their own autocompletion system.
The fact that ST's plugins are executed in a sandbox environment also causes (afaik) issues for plugins that want to use toolchains such as Go.
And... Why would it be sad?! Two excellent solutions competing to make a better product is pretty much the opposite of any sense of the word sad I can think of. It's great to have choices that are under active development.
And don't forget: this is a product and a business. If someone comes up to eat your lunch, you can roll over and die or adapt and improve. We've come a bit full circle in the Complaints Department here: when Atom was first coming out, a vocal lot decried it was just a Sublime Text rip-off picking on the little guy. Turns out it's a pretty good editor! Sublime's got a few updates and it's just perfunctorily playing catch-up? Well, I liked it before, and now it's better, so... I think that's pretty good.
I pretty strictly follow the idea that you pick something that works for you and use it. I happen to be familiar with Sublime, but man, I really like IntelliSense when I'm in SSMS (or when I did Excel VBA hacking - don't judge me!). Honestly, until Sublime Text 2's vast improvement in startup times it wasn't my go-to editor, and oddly it's what kept me off Atom the few times I gave it a cursory whirl (my previous alternative? Notepad++). I have zero doubt Atom will eventually be just as snappy - heck it may even be now; I haven't checked.
That all said, I think the VS Code team is going to eat everyone's lunch within the next few years if no one watches them and keeps up. And my money is everyone does try to keep up and we're left with a new browser war situation where we have lots of ultrahigh quality options!
You are of course entitled to your preferences, but I'm not sure why you wouldn't "dare" use this?
I don't think it's quite fair to classify
Sublime as a text editor.
While I may not agree with the totality of what @_RPM states, there is no doubt that Sublime is "a text editor" when the official site states thusly[0]: Sublime Text is a sophisticated text editor...
0 - http://www.sublimetext.com/I wonder if you spend 8 hours a day staring at a text editor... I recommend you make your own if it's so trivial
The problems come when people think it's so easy they can just jump in without doing any reading.
Thanks!
You said there is plenty of information about this available widely, I can't find said information so some guidance would be helpful.
But can't dev friendliness mean less time needed to fix bugs or add features?
And since it's Electron, isn't it more easily consistent across all available platforms?