StatET IDE for R

I personally do not use Integrated Development environments (IDEs) for R, or for that matter for any programming language. From my point of view, they take up too much precious real estate on the screen, and most important, they generally do not allow me to use my own text editor and my own abbreviations and macros. Since I want to have a uniform editing environment no matter whether I am programming, typing e-mail or whatever, IDEs are not for me. I just use Vim, with my own abbreviation collection.

So for example, I’ve never used RStudio (gasp!). I know many people who swear by it (and maybe a few who swear at it πŸ™‚ ), but it’s just not for me. ESS (Emacs Speaks Statistics) is great for the hard core R people, and in fact I occasionally use it — I have an Emacs tutorial, by the way — but not too much.

If you do want to use an IDE for R, and want something different, I’ve always admired (from afar) StatET, for which there is a nice introduction in progress. It does take some configuration, and Eclipse requires some learning (I have a tutorial for it too), but StatET has always impressed me as very well-designed.

Disclaimer: I do not know whether the StatET article’s claims about RStudio are correct. My point is that the article is a nice introduction to StatET.

Advertisements

14 thoughts on “StatET IDE for R”

  1. If by “nice introduction” you mean filled with mis-truths about a competing IDE, sure. I also didn’t realize non-ESS users weren’t “hardcore R” folks.

    1. As I said, I am not an RStudio user, and thus am in no position to assess the article’s claims about it. To me, that isn’t the main import of the article.

      What I like about R and especially CRAN is that there is often more than one way to do something. Thus I like the fact that there are several IDEs for R. (More than three, if one counts systems that lack a debugger.)

      I think you need to go back and re-parse my comment about hardcore R users, possibly inserting the word “many” if you wish. πŸ™‚ I consider myself a hardcore R user without using ESS and even an IDE at all. πŸ™‚

  2. 1. Realistically, most of the non-RStudio true IDEs for R have withered away. I don’t think JGR or RKward have progressed much since RStudio came on the scene.

    2. I don’t see much action in the GUI wrappers for R (rattle and R Commander) either. They’re still around, but I don’t see bloggers using them the way I see them using IPython / Jupyter and RStudio.

    I think for a team / community project you have three realistic options:

    1. If your project is predominantly in R, RStudio is pretty much the only game in town. Sure, you *can* work with Vim / notepad++, ESS, R Commander, etc., but RStudio is so well integrated I don’t think I could go back. And I would expect all members of a team to use the same tooling without any bitching or whining.

    2. If your project is mixing R and Python (and maybe Julia or Ruby or Haskell or Node) you’re probably going to be more comfortable with Jupyter. But their documentation is pretty poor – an awful lot of the configuration, etc., involves understanding Python syntax and semantics.

    3. If your project has a mix of R and JVM languages, Eclipse is pretty much mandatory. An awful lot of popular machine learning tooling runs on the JVM and if you need to get under the hood with it, there’s a good reason to have an IDE that serves R and JVM languages equally well.

    1. As I said in reply to one of the other comments, from my personal point of view, if it doesn’t have a debugging tool, then it is not an IDE. That excludes a lot of the products you mention above.

      Funny you should mention uniformity among members of a team. There is one prominent developer at RStudio who told me that he himself doesn’t use RStudio. That was about a year ago, not sure about now.

      1. > Funny you should mention uniformity among members of a team.
        > There is one prominent developer at RStudio who told me that he
        > himself doesn’t use RStudio. That was about a year ago, not sure
        > about now.

        They’ve done a good job building to some tough use cases – you can write an eBook in the latest version with the “bookdown” package. That said, if I need to make a “reproducible research” PDF I usually don’t mess around with R Markdown; I go straight to LyX. πŸ˜‰

      2. But I don’t even use LyX, a LaTeX IDE. πŸ™‚ I can type much faster in Vim, with my abbreviations. For example, to get

        \widehat{\lambda}^{1/2}

        I type mhat then mlb then Esc followed by msp to get ^{ }. There is no way I could do click-and-select in LyX that fast. Of course, I don’t the visual effect I would in LyX, but I can set xpdf (or Skim on a Mac) to auto-update, though again I need to do a Make, which in Vim I do by simply hitting M.

  3. I appreciate nvim-r (vim plugin) by Jakson Alves de Aquino. Very useful from my point of view. I use it with tmux.

      1. It is great to know that you also prefer vim as an editor. Once you get used to its shortcuts and key bindings, and then start to personalize, it just becomes an extension of your body! You just collect your preferences in “.vimrc”. nvim-r and Tmux+vim+R+nvimcom bundle works perfect (sometimes the “\rf” command does not trigger R, when a swp file exists in the folder of the Rscript, the swp files has to be cleaned before vim is started). You can even automate the platform with a bash script line such as:
        tmux new-session -s R “vim $Rfile -c ‘call StartR(“\””R”\””)'”

        You need nothing else! Best thing is, one can even configure this command-line-only bundle on a headless server accessed through ssh.

        Wish only we could use GNU-Screen instead of Tmux as an integrated platform. GNU-Screen is not supported anymore with the plugin.

  4. It is great to know that you also prefer vim as an editor. Once you get used to its shortcuts and key bindings, and then start to personalize, it just becomes an extension of your body! You just collect your preferences in “.vimrc”. nvim-r and Tmux+vim+R+nvimcom bundle works perfect (sometimes the “\rf” command does not trigger R, when a swp file exists in the folder of the Rscript, the swp files has to be cleaned before vim is started). You can even automate the platform with a bash script line such as:
    tmux new-session -s R “vim $Rfile -c ‘call StartR(“\””R”\””)'”

    You need nothing else! Best thing is, one can even configure this command-line-only bundle on a headless server accessed through ssh.

    Wish only we could use GNU-Screen instead of Tmux as an integrated platform. GNU-Screen is not supported anymore with the plugin.

  5. RStudio replaced all the other R environments because it provides great features for ‘the masses’, it’s easy to install and easy on beginners. I’m one individual in the mass of biologists using R for data analysis and representation and appreciate RStudio to the point of configuring Spyder, a Python IDE, to look and behave as close as how things are done in RStudio.
    As for vi and Emacs, they require a long term memory for details about how to do the diverse tasks of text editing that is simply not obvious for the casual user. Not everyone has as his or her main activity being text editing.
    While I can tell my students that they can use RStudio for their R needs, it would be impossible to tell them that they need weeks or months of practice with a text editor they are not familiar with to be able to start using the power of R.
    In the end, different types of users will find one tool or another to be the best for them. My best tool for R is RStudio and for someone else will be vi, Emacs or Eclipse. As long as we can learn from each other, that’s fine.

    1. I have nothing against IDEs; I simply don’t use them myself. But for the record, my experience is that of all the problems students have, adapting to computer procedures is the least troublesome for them. Yes, even non-computer science students. And by the way, vim and emacs do have GUI versions, e.g. gvim for vim.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s