I think his best option is to sell TM2, but "Pay me what you think TM2 is worth."
This way, he sticks to the letter of the free upgrade promise - one can get it for free - yet benefits from what seems to be a very profitable way to price a product, especially a highly anticipated one towards which there is much goodwill.
As a person who paid money I earned for a good product, including the promise of a free upgrade to 2.0 whenever it came out - I would not share your feelings on the matter.
(This does not mean I have any expectations as to when 2.0 is coming out, or what 2.0 means, or anything like that... I love Textmate, and have purchased several licenses.)
The man is burned out and has given up though he doesn't realize it. The best thing he could do at this point is to team up with some extra hackers, promise a revenue share, and let them get something out the door in 6 months while he recuperates in time to start fixing bugs after launch. I don't normally like revenue shares but it's quite clear that TextMate 2 would make some decent coin.
Unless you have some kind of insider knowledge, I don't think we should jump to the conclusion that Allan is burnt out and has given up. Not just because the accusation is unfounded, but because Allan is likely to read it and these messages can be really depressing. Depressing because you know you've not met your own deadlines and frustrating because you can't do anything about it.
I completely believe Allan when he makes the "house without windows" analogy because this matches my own experience. As he said: don't ask for feedback when you already know what has to be done. For a version 0.1 you want feedback because you don't know which features are considered most important and you want to get hype going, etc. For a version 2.0 this doesn't work, because the ONLY FEEDBACK you're going to get is the whiny "but why doesn't it do X yet?" and "I wish you'd add feature Y", or "This icon is misaligned" or "There's a typo in this menu bar". The users mean well, but you know about all these flaws already because they're staring you in the face EVERY SINGLE DAY.
Releasing a complete rewrite is very difficult and takes a lot of stamina. As long as Allan is making progress every day (and I have no reason to question this) he'll get there eventually.
Getting "some kind of version" out there in 6 months would be a terrible mistake.
... another is that my motivation and optimism is anything but constant, sometimes I think that if I work really hard for two months, I have enough to release an alpha, yet there tend to be some stumbling block, something I estimated to just a day’s work (or didn’t consider at all) end up taking the two full months, so it seems I have made no progress at all after those two months (sometimes it may even go backwards because structural changes disable certain features), and someone will then ask about that alpha I was so optimistic about, which will make me think it is all hopeless…
Anyone who has been burnt out should recognize that as a perfect description of it. It actually made me very sad to read that, since it reminded me so forcefully of times when I was burnt out - and I'm worried I'm close to that point again.
Personally, I think the best thing he could do would be to opensource the project and finally allow it to be ported to Linux. If he's worried about revenue or whatever, add a donate button. I'd pay _more_ for a FLOSS version than I would for a proprietary one.
Right now, I love TextMate. It's the best text editor out of the box, but the fact of the matter is: OSX is not my only development machine and the hassle of learning Vim keybinds is less painful than only using OSX for development.
One of the main draws of TextMate for me is that it is a light weight native Mac OS X application that can be used to edit everything quickly, has excellent syntax / plugin support to make it a joy to do any type of editing in that really no other text editor I have used seems to be able to replicate as well (lots of plugins for Vim and Emacs, but none seem to provide the same polished and quick feel).
What I fear is that if 2.0 ever did reach a releasable state it will no longer be a light weight application I would use to edit everything from plain text configuration files, code, or a simple todo list. It won't have that same light weight do everything feel to it that the current version has. It will feel like a Visual Studio or Emacs. Which are good for their main purposes, but would you use them to edit a fairly small and simple configuration file?
TextMate, in my opinion is still by far and away the best modern day text editor available on any platform. I do like vim, but being a native Mac OS X application, TextMate wins out the majority of time (just drag a file onto the dock icon or typing mate . when in the terminal). It's visually pleasing and fast to open, browse, navigate and move around in.
The only features I really would like to see added is split panes/windows and full screen mode. Nothing is more awesome than MacVim with full screen mode and 4-8 split panes (on a single 2560x1440 monitor).
Sorry that I could only up-vote your comment by one point. You have it exactly right: TextMate is light weight, starts instantly (but don't open directory trees with huge data files) and is handy to have. It nicely complements work flow with Emacs and IntelliJ.
One of Allan’s goals for TM2 is to speed up all of the core file IO/parsing/text drawing/etc. parts of the application. I don’t think your fears will be realized. :-)
Joel Spolky wrote a popular essay on why you should never do The Big Rewrite. I mostly agree with it but it's not always clear cut (Mozilla - his example in the essay - eventually got re-written as the most popular browser in use today)
It's a difficult decision to make, the choice between improving an existing code base that has grown warts against the temptation of starting fresh and fixing what went wrong the first time, under the guise of learning from past mistakes.
I guess the lesson is: Don't try to rewrite your codebase from scratch unless you understand that you will spend an order of magnitude more time on the rewrite, even factoring in the experiences you have gained from doing it once.
From scratch? Like, rewrite all your libraries and nifty little UI tricks? Of course not.
But sometimes ripping out the plumbing and throwing the bigger pieces back together works wonderfully.
I guess that's called refactoring, though. :)
The point I'm getting at is, who does The Big Rewrite? I can't ever see myself wanting to rewrite sections of code that are working perfectly fine Just Because.
How much of The Big Rewrite was Mozilla? Did they literally rewrite everything? I can't imagine so. I bet they kept a LOT of code. It was probably more along the lines of a rather daunting refactor.
I'm just wondering what "starting fresh" means. For me, it normally means fixing architectural decisions that have become a huge pain in the but I'm keeping a LOT of the code base.
Refactoring, as talked about in Martin Fowler's book and by people who've done academic work on the subject, consists of changes that alter the structure of code while preserving functionality.
In many environments, specific refactorings are pre-packaged, such that they know their preconditions for working properly, and work with almost mathematical precision. In these sorts of environments, with additional support like Unit Tests, you gradually morph from one structuring of the system into another. This can be a lot safer than "ripping out the plumbing and throwing the bigger pieces back together." (I've also done the rip/reassemble thing. It's often fun and yields good results too.)
I've done very large rewrites from scratch successfully and I've done very large rewrites incrementally successfully. I think it can happen just fine.
Of course, doing that as a one-man team with a closed-source commercial product that you have promised to give away for free doesn't seem like the kind of thing that can get done.
Firefox's rendering engine, Gecko (née NGLayout) was started well before Netscape went open source. Mozilla.org decided to scrap the classic rendering engine in favor of Gecko/NGLayout within a few months of going open source. Six short years after that, Firefox was ready for prime time.
I have never used TM in my life but I found Allan's comment is very interesting in terms of a life of a software product written by one person at his own will.
A few points:
- His experience sounds like "Second System" syndrome.
- One-man show is quite risky psychology-wise unless you can motivate yourself endlessly
- Perhaps it's time to hire another developers and move on to a more leadership role. Coding might be fun, but the risk of getting burn out is high; one way to prevent this is to do non-coding tasks for a while and once you miss your ol' coding lifestyle perhaps that's a good time to scratch your own itch again with hobby project. Who knows, it might become your second product, expand your portfolio.
For the Emacs-heads out there, I would give Aquamacs a try if you haven't. I bought TextMate and tried using it for two months, until I realized that I never managed to get indenting to work exactly the way I liked (the Emacs way), and I really like having a single file (buffer) open in several windows, and integrated remote file editing. I guess I'll still be using Emacs when I'm 70.. Not sure on which platform, though. :)
I switched to Emacs so I could use the same editor on Linux and OS X. I made the switch wholesale and used TM only to look at diffs or browse a project quickly (Emacs need something like the project drawer, and speedbar isn't the answer).
I forgot about all the nice things I liked about TM. defunkt's textmate.el gets you part of the way there but isn't enough. I've had to implement lots of small things and discover features I didn't know about Emacs (global-auto-revert-mode). Right now I'm working on selecting an enclosed region (ie. find the innermost text surrounded by a pair of quotes or parens/braces/brackets and select it), which is Cmd-Shift-B in TM.
A friend and co-worker uses TM and the little niceties have tempted me to switch back since I mainly use OS X these days, however I'm simply better off with Emacs. TM is great but unfortunately while TM2 is in the works TM users are left out in the cold. There aren't many things Emacs doesn't already do due to its nature (open source and tradition of sharing code) and the things it doesn't do I can write myself. So I can bring Emacs up to speed with TM but not the other way around. Open source is a giant win for developer tools.
I don't want to bash TM or disrespect all the hard work Allan has put and is putting into TM. TM has influenced just about every modern text editor on many platforms and we are all better off because of TM even if we never used it. But if you're not happy with TM there are viable alternatives.
We all know the drawbacks to systems with a SPOF and it's not a good trade-off for a development tool as critical as your text editor. Sorry Allan, I truly am, but as TM2 takes longer and longer it gives people a big reason to migrate to another editor. Once switched, it's going to be a tough sell to get people to switch back without any guarantee that such a thing will never happen again. Especially if they switch to an infinitely customizable editor such as vim or Emacs where it's possible to mimic TM's best features, even if it's not as easy as in TM.
If any TM users do try Emacs get github.com/defunkt/textmate.el and have a look at github.com/samsonjs/config/tree/master/emacs for TM-refugee goodies.
To be honest, all I want updated in TextMate is the interface, I could care less about how well "abstracted" the code is on the back end. I would also be happy to pay for 2.0 even after the free promise and I think that's true for 90% of TextMate users.
I'd be quite happy with "1.6" as well. I don't need completely new product (I might not even like 2.0).
I just want few small things fixed in current version, e.g, asynchronous refresh of project directories (or at least better version of remate hack http://ciaranwal.sh/remate/ ).
I bought TextMate but still mainly use Emacs. However, I'd still pay for an upgrade. TextMate was incredible when I had to write a lot of HTML. A Windows and Linux version would be nice. Emacs runs everywhere and I don't always get to choose my platform. My fingers know what to do in emacs. TextMate everywhere would make retraining more worthwhile.
You know that there is E-Texteditor for Windows and supposedly Linux? It is completely compatible with Textmate Bundles… It also adds a few really nice things that Textmate can not do (revision history graph, incremential search…)
Last time I looked at E for linux, it was incredibly tricky to build, if it would even build at all, and was really buggy afterwards. I've moved on, but I think it's still in a similar spot.
The only reason I bought TextMate 1 now was the promise of getting TM 2 at no cost in seemingly near future (although now I can see that's not happening anytime soon.) Making TextMate 2 a free upgrade is the least he could do for his users that have stuck with him through numerous broken promises.
Wait, you bought TM NOT because you thought it would be useful and make your life easier, but because you were expecting a free upgrade to TM2?
I bought TextMate about 2 years ago and couldn't be happier with it. I've extracted way more value than the ~$50 I spent on it and would be happy to plunk down another $50 for TM2 if there were compelling reasons.
It seems unreasonable to buy software solely because of what you expect out of it tomorrow. You should buy it for what you need today.
Wait, are you really telling me how I should purchase things? I was on the fence about dropping $50, which isn't insignificant, for a text editor. The promise of a free upgrade was the thing which convinced me to purchase.
I guess it depends, if you use it all the time for work, then $50 is like an hour worth of work for years of benefit. I'm guessing there are particular promised 2.0 features you are after?
Yes. He should drop the "free 2.0" promise. Free 2.0 versions are often used when 2.0 drops soon after 1.0, so that people feel like they get their money's worth. TextMate users have by and large gotten plenty of time for their 1.0 investment to pay off.
Well, there's a slight unfortunate thing that I, and many other people, bought TextMate 1.0 with a promise in writing that TextMate 2.0 would be free to us when it shipped. I'm really sorry that Alan didn't think things through well enough to realize that doing that was a poor idea, but I paid for what I paid for. It's illegal and immoral to change the rules after you've closed the deal.
EDIT: I'll add that I don't think that this is a greedy proposition. While I know a lot of people are truly thrilled with TextMate, I wasn't. I didn't ask for a refund, because I understand what it's like to be an indy developer, and thought I'd gamble that Alan would ship the features I'd need to switch to TextMate over Emacs when the 2.0 release got out the door. That gamble didn't pay out, which I'm okay with; 2.0 never shipped, and I'm not mad that 1.0 failed to materialize with the features I needed. But I also don't think it's fair to say I shouldn't get the 2.0 release, when I almost certainly would have asked for a refund based purely on the 1.0 release. I doubt I'm the only one in this boat--especially given how many blog posts I've seen over the last several years as developers, frustrated with TextMate's lack of progress, have reverted to Vim/Emacs/BBEdit/what-have-you to get the pet features they want.
Turns out the fact that it's a drawer is quite handy if you use the excellent SizeUp window management utility because you can choose to ignore the presence of an open drawer when snapping/resizing the window in to a slot of your screen grid.
I don't get why everyone is so up in arms about this. Did text change in some fundamental way over the past three years, thus rendering all the glowing reviews I have read of TM1 void? Or is it just our irrational obsession with newer and shinier things?
There are some issues with Textmate. One of the most glaring and commonly cited is the absence of split windows.
What's really unfortunate is that the handful of features that the majority of people are really itching for don't require the kind of Big Rewrite/second-system effect that's currently going on. It's frustrating.
Indeed, if split windows, full screen, and a few nitpicks over how the project window is refreshed, etc were addressed, a lot of people would be content to wait until judgement day for TM2.
So… 2.0 could go alpha but would go through same mocking and ridicule that 1.0 went through...
There's nothing bad about ridicule. A product built under gaze of a select few is destined to be far removed from the needs of its users. TextMate was not born good, it improved because it was ridiculed.
It's hard for a solo developer, especially one who's invested this much time, to take such a pragmatic view of ridicule. If Allan anticipates that early criticism is going to impact his motivation, then he's doing the wise thing by resisting the urge to "show a fool half a job".
Honestly, my one wish is for split views. With that, I would be perfectly content to use TM1.5 for the foreseeable future with absolutely no complaints.
http://redcareditor.com is an open source, cross platform clone of Textmate currently in development. It supports Textmate themes and bundles, and for the split pane guys in here: yes, it does that too.
Last time I checked (a few months ago) it was pretty slow and unstable, but I guess the project is worth watching if you're not on OS X.
http://www.sublimetext.com/ is a good editor for windows, though I think it differs from textmate in a few areas which I think is developed by one person as well
Good suggestion for Windows. One key feature for Sublime Text is the minimap and for those wanting that in TM, Julian Eberius developed a TM plugin - http://julianeberius.github.com/Textmate-Minimap/
The minimap plugin is cool looking, but it totally chokes on large files and I never really used it anyway. It also kind of bugs me that it's in a drawer instead of a pane (which is why I use Missing Drawer for the project pane http://code.google.com/p/textmate-missingdrawer/ )
If he'd be more likely to release TM2 in the next year or two, I'd be perfectly happy to pay $250-500 for a 5-pack for my machines, vs. "free upgrade" -- $50 for something you basically live in is not a big deal at all.. I'm pretty happy with TM1 though.
The wait for TM2 would be less frustrating if some of the glaring problems, like unthreaded project-wide search, would be addressed in the TM 1.x branch. Thats really my only gripe with TextMate at this point, that and a few annoyances with the way that the project drawer works.
Shipping is probably one of the hardest parts of software development. I hope Allan can get through it and understand that people are going to be critical of TM2 only because they love TM so much and want it to be awesome.
> glaring problems, like unthreaded project-wide search
For me, the "Ack in Project" bundle provided very-welcome relief from TextMate's search woes. Its successor project is called AckMate. TextMate users in need of a better project-wide search feature could do a lot worse. YMMV.
I've used this bundle, but had some problems (it would skip certain files). On top of that, it just doesn't feel the same as the Cmd F UI in TM. I'd call the ack bundle a nice work-around, but I wonder why stuff like this isn't incorporated into the core of TM.
I've seen a few threads now about how an "Updated UI" would be a welcome improvement from the 1.x branch; I'd agree with that.
Poor guy, sounds like he's between a rock and a hard place. Release a 2.0 version for free that wont be well received by everyone (long time between releases = everyone assuming their pet feature will be included), or break a promise and do it paid and still have people mad at you. With little financial incentive and the spectre of angry, disappointed users no matter what he does, it's little wonder he's struggling for motivation.
I love TextMate and use it daily. But there are many features I am still missing. I am sad there were no updates for such a long time.
I really wish there would be some competition to heat things up. I am not talking about emacs or vi, but another great visual editor for OS X. Maybe Open Source... or maybe a startup could do this. There should be quite some money to be earned.
Or is there something comparable to TextMate that I don't know about?
Some rubyists are trying with red car http://redcareditor.com/ but it's still quite a ways off from being usable.
Sublime Text (www.sublimetext.com) could theoretically be ported over to Linux and Windows as it's GUI is all OpenGL and C interfacing with python. The author's original intent was that it be portable between platforms, but he seems to have pushed that idea to the side. He's no longer working on it full-time either. Which is a shame because it's quite good and comparable to TextMate in many ways.
What is wrong with TextMate? Why the big deal about a version 2?
TextMate is an extensible platform like Emacs, and so it is constantly evolving thanks to people's generosity in writing and giving away plugins.
I do a lot of Lisp work in Emacs but often keep TextMate open in parallel. Neat tool, and worth the money. If the author never brings out version 2, that is his call.
Do we really even need TextMate 2? 1.5 is certainly good enough for most users. I think that's what is bothering this guy, and why he's spending time on things like "abstracted" code.
Spot on. Textmate 1.5 was good enough for so many people to switch to it from powerful editors like Vim and Emacs. It is a pretty difficult task to come up with an improvement that in the minds of many would be better than Vim, Emacs and Textmate 1.5 and that too all by himself!!
I think he's free to do what he wants. He doesn't owe anybody anything. It's an open market, too, so if anyone cares to step in and make the next best thing nobody is stopping them.
I'd go as far to say that he has every right to charge for TM2 when it comes out, even if he promised it would be a free upgrade.
EDIT: even though I've stopped using it, I use vim now :)
www.sublimetext.com is what I use at work. It's very textmate-like + beautiful full screen mode + split views + multi-editing + scriptable in python. If I could somehow take the best parts of sublime and add it to textmate, I would be a very happy man indeed.
This way, he sticks to the letter of the free upgrade promise - one can get it for free - yet benefits from what seems to be a very profitable way to price a product, especially a highly anticipated one towards which there is much goodwill.