There has been a bit of news lately in the domain of Force.com development tools. There are more options for developing Force.com code than just the Eclipse-based Force.com IDE. Some newer options include the beefed up Salesforce Developer Console, the soon-to-be-released BrainEngine browser-based IDE, and a plugin for the lighter-weight Mac OS X editor, called MavensMate. If you’re interested in some of these options, read on. I’ll give an introduction to these options as well as provide some extra resources for you to find more info.
The new Salesforce Developer Console is a huge improvement over its previous iteration, and is taking the first few steps towards true development in the cloud, independent of desktop tools. The latest iteration has been focused on giving a developer some serious debugging tools, including features such as a Heap Dumps tab and advanced debug log inspection. By viewing debug logs through the Developer Console, when selecting a line in the log, you are shown the Apex source code line that generated that log in the output, the state of local variables, and the method call stack at that point in time. Another thing that you won’t find elsewhere is the Timeline tab, which shows you where your code is spending the most time. Very useful stuff. Check out the webinar for more a more detailed walkthrough.
Another Force.com development tool is BrainEngine Next, which is developed by BrainEngine and will be released at CloudStock next month. I participated in the beta a few months ago and found its features to be quite interesting. I had ongoing problems with user credentials, however, so I look forward to playing with it again when it is released to see if this issue has been fixed. It is certainly a promising tool, boasting such features as a SOQL tester, issue tracker, and subversion hosting. These are features that the new Salesforce Developer Console does not have. If you’re interested, Jeff Douglas has a pretty good blog post with further details.
While those are both proprietary software options, there is an open source tool that is quite interesting. Meant to be a light-weight, simple tool, MavensMate is a plugin for the TextMate Mac text editor that duplicates much of the functionality of the Eclipse Force.com IDE. It was developed by Force.com MVP Joseph Ferraro, a member of Mavens Consulting, and features metadata creation, a slick async test runner, deployment tool, and even code completion. If you’re a Mac user and interested, check out the MavensMate introduction video and read the great documentation on the MavensMate GitHub page.
Another programmer’s editor that is worth mentioning here is the famous vim. I was able to find some vim plugins that add syntax highlighting for Force.com code and new commands for pushing/pulling code to/from an org. A user named “mattpage” on GitHub has some ant scripts that can be called from the vim editor for quick code deployment. I was also able to find a blog post by Eric Holmes for syntax highlighting Salesforce code. With these tools, and maybe another plugin for version control, you will certainly have a different experience developing Force.com code. While vim commands are infamously difficult to learn, its users tout productivity gains from its many shortcuts and plugins. I’ll be spending some time in the coming weeks testing the waters of vim.
That wraps it up for my current knowledge of Force.com code editors/IDEs. Looking forward, I heard in a recent Force.com webinar that a Tools API is in the works, and should be released late 2012 or early 2013. These APIs will be better designed for the complexities of developing Force.com applications in a team-based environment. If all they do is give better support and direction for easier and more reliable deployments, I’ll be thrilled. In the meantime, let me know if I missed anything and I’ll try to add it to the list.