It is my pleasure to share with folks some interview questions and responses with this month’s Project of the Month, TeXstudio.
The TexStudio project has 3 key members who all contributed to the conversation below; they are, Benito van der Zander, Jan Sundermeyer, and Tim Hoffmann.
I hope you take the time to read about this project and some of what they do that has helped them succeed with TeXstudio. I know that I, for one, kind of would have loved to see the Klingon or Elvish names had won… Either way, rock on TeXstudio team.
d.: How did you all come up with the name, TeXStudio?
TXs: That was kind of strange. Originally, the project used to be called TexmakerX as an homage to the editor Texmaker from which Benito forked. But then, to cut a long story short, we were not allowed to use that name anymore, and looked for a new one.
We gathered a bunch of possible names on the mailing list (some alternatives were TeXwizard, TeXingenium, TeXcreator, TeXceredir (this is elvish), TeXghItlhwI’ (this is klingon) [ed.: emphasis mine], and let the community vote. Finally, TeXstudio won, which was not even one of our suggestions, but the idea of an user.
d.:Tell me about TeXstudio; what made you all decide that this was important to make?
TXs: Benito: Actually, I just wanted to write a novel, not a LaTeX editor. But since Office suites are just horrible for big texts, compared to plain text file formats like LaTeX, that required a LaTeX editor which had to be cross platform, open source and with features like highlighting of spelling mistakes and automatic insertion of LaTeX’s special commands.
I looked around, but it did not seem like there was any LaTeX editor with all those features. Only Texmaker was the closest to reach the goals, so I wrote patches for the missing features and later forked it, when those changes were not merged. Once the project was on SourceForge, Jan and Tim joined, and it just started to grow…
Tim: For me, it was kind of similar. Only, I was looking for a tool to write my PhD thesis and papers, not a novel. Initially, I settled with Texmaker after trying various editors (disregarding TeXstudio, or TeXmakerX as it was called at that time, because it was in a very early state back then). However, it did not completely match my needs. So I started writing bug reports and feature requests, and I submitted some patches. Participating in the Texmaker development turned out to be difficult. Therefore, I finally switched to TeXstudio, where I could contribute my ideas and help making my vision of a good LaTeX editor come true.
d.: When did TeXstudio start as a project on SourceForge?
TXs: The real starting point of TeXstudio is lost in the mist of time. Initially it only existed as a bunch of patches uploaded to a LaTeX forum. Registration on sourceforge and the first SVN commit date back to January 2009.
d.: Do you all have an active TeXstudio Community (if so, where will folks interested in joining find you all- IRC, Forums, etc.)?
TXs: The community provides many ideas and additional stuff like translations. However, they seldom get involved with the actual programming. Most of the actual development is done by the team. It is even getting difficult to catch up with ideas and requests from the community.
The communication is split equally between the mailing list, the forums and bug/feature trackers on SourceForge.
We used to have an ideatorrent as hosted app to gather the wishes of the community, but that died during the project renaming. Luckily, the new SourceForge feature tracker also supports voting.
d.: What role do each of you play in the project?
TXs: We do not really have fixed roles in the core team. The time each of us can spend on the project varies because we all develop in our free time. Strictly separated roles would not fit here. Everyone works on current issues and adds the features he likes. Still, we have some internal communication on the implementation details and larger changes.
That said, everyone has a certain area, in which he works most, usually because he created it.
For example, Benito does most of the general management stuff like writing announcements or interview answers. Some features he updates are the build system that runs the actual LaTeX commands, the interface to the grammar checking library, the crash handler, or low level issues in the qcodeedit editor library.
Jan works on the syntax checking which checks if all LaTeX commands are written correctly, the completer, the SVN support or table alignment. Furthermore he does most of the OSX-related stuff.
Tim maintains the templates for new documents, the update checker, the help system and is busy improving the UI for a smooth user experience and workflow.
Furthermore, there are a couple of translators who work only on the translations.
d.: What tool / facility on SourceForge do you think has been most important for the growth of TeXstudio?
TXs: There is no single most important tool. The important aspect is that all functionality needed for an open source project, like source control, bug/feature tracker, web page hosting, file releases, is integrated on the same site. Because SourceForge provides such an environment, we can focus on actually advancing the project.
Moreover, the general publicity SourceForge provides is also very helpful.
d.: Are you all looking for more contributors?
TXs: We are always open to new contributors. Programmers can join in and implement their ideas as soon as they want. If you don’t know what to code, we’ve got a long list of ideas and feature requests to share.
We’d like to emphasize, that people do not have to program to contribute. We’ve implemented a great deal of features, but documentation is still behind. So, people writing documentation or tutorials are highly welcome. A series of screencasts would be awesome, too, and someone artistic could improve the icon set.
Everybody can help to make TeXstudio even better. If you would like to join, just come and ask!
d.: What’s the next big thing for TeXstudio?
TXs: Since it has become such a big project, we spend a lot of time with maintenance, like answering mails/bug/feature requests. Currently, there is little time for a next big thing. But we’ve still have many ideas:
One big thing that has always been lurking at the horizon is to update the editor library we use. Currently it is all based on qcodeedit 2. The new awesome version qcodeedit 3 is way faster (even editing a 10mb to 100mb text file should work without noticeable delay) and provides semantic information from its syntax highlighting to the application, which would greatly improve/simplify all context sensitive features like syntax checking. Sadly, qcodeedit 3 is still in an alpha stage and the author is very busy. So it will take some time.
The highest voted feature request is currently the wish for git support. This is something we should add, although you can already use the standard git tools.
A real killer feature would be a quasi-continuous background compilation. This allows to have an always up-to-date preview. Accidentally, LaTeX was not designed for such a thing and it will be some serious work to make this happen with reasonable performance.
Benito plans to add a little “AI” one day, which can repeat previous editing operations. Like you make every occurrence of a word X after Y in a paragraph cursive, the AI would repeat it to make all those words in the later paragraphs also cursive. Everyone knows Vi for its macros, such an AI would provide automatic macros, which are even better. (We already have regex search/replace and scripting, which can be used for this cursive example, but that is not really intuitive)
The support for non-(La)TeX files is continuously improved, so TeXstudio will be usable also as a general purpose editor.
d.: Again, congratulations to you and my best for continued success and growth; Qapla’!