What programming language was RStudio written in? - rstudio

What makes me curious is that when you right click anywhere on RStudio, it has the option "inspect element". I suspect it has to do with Javascript, but unsure.

It's a mix. The user interface is indeed based on web technology and is written primarily in Java, using GWT to transpile to JavaScript; the back end is mostly C++.
The source is hosted on GitHub, where you can see auto-generated language stats:

Related

What is difference between open development and open source?

I know there are some questions about difference between Open Source Software and Free Software, but I do not understand if Free Software means the same as Open Development Software.
While reading Adobe's documentation on Granite platform I've found next sentence (in bold):
Granite is a general purpose platform for building robust scalable
applications; it supports "open architecture", which is based on both
"open standards" (JCR and OSGi) and "open source" (Apache Sling and
Apache Jackrabbit). ... Granite is open development, but not open
source.
I do not understand last sentence. What means "open development"? It makes sense that it means that everyone can contribute to code, but is it then also an "open source" project?
You can find what Adobe's "Open Development" means by going through this conversation article posted on medium.
If I understand it correctly, "Open Development" is more like InnerSource but where the information and communications are shared outside the organisation as well.
In the Adobe AEM teams we work a lot on Apache projects. As we like the Apache way we tried to apply the same project management principles to our internal closed source projects.
The key principles are "power to those who do" and "community over code". The result is kind of a shared responsibility for the projects. Everyone can participate in development of all code bases. You start by reporting bugs and improvement requests but you can also provide the solution in form of pull requests. If you do good work you are usually also allowed to do commits yourself and drive the direction of the project.
At Adobe this development style works very well as people are used to the Apache way. If you want to apply this in other companies be careful. A big part of the success is to establish the culture which is not guaranteed to work and takes a lot of time and effort.

Capuccino alternative with a comparable looking UI?

I'm looking for a set of Javascript based UI components for a web app I'm building and have found that many of the best looking web apps were built with the Capuccino framework; see http://www.getflow.com/, http://www.picsengine.com/home/ and http://timetableapp.com/ for examples.
However, I'm not a Cocoa developer and have no interest in learning Objective-J. Ideally, I'd find a set of components that provide the visual end result of Capuccino apps without the underlying weight of the framework.
I have seen the Aristo jQuery UI them (http://taitems.tumblr.com/post/482577430/introducing-aristo-a-jquery-ui-theme), but jQuery UI just doesn't seem to have the depth of components available in Capuccino.
I realize this may be a long shot, but I figured it can't hurt to ask. :)
Thanks.
As another option, there is jQuery UI: nice if you are already familiar with jQuery, with the plus side of not being too heavyweight, but may not have all the components you need pre-defined. A nice thing is that it encourages to write the HTML in a way that degrades gracefully when your application in older browsers.
Maybe sproutcore is an alternative for you, although it requires you to hand-code everything in javascript from scratch. It offers most basic components and is easily adjustable to your personal design goals. Sproutcore is used in Apples Mobile Me and in some other big projects.
Another possibility might by vaadin which offers a rich set of prebuild controls and is based on Googles GWT javascript compiler. But it only makes sense if you are developing in a java environment.

Editor for end user documentation in C# WinForm app

I'm developing a WinForm app in c# 4.0 and would like other (non-developer) colleagues to contribute writing a context sensitive end-user helpfile. First I thought I could use "HTML Help Workshop" from Microsoft, but it seems outdated (Vista and Windows 7 not supported).
Then I've looked at Sandcastle, but the documentation is lacking and I wonder if it is suitable for non-technical users to write end-user documentation.
So I read about RoboHelp, but it's way to expensive for me.
I'm getting lost in all the information that is available about helpfiles. Can someone help give some best practices or information on what tools to use and what output format I should target (still chm or other).
Great question. I like your idea of non-developers contributing to the end-user documentation.
This idea might motivate users and testers of your application to easily contribute to the documentation.
The first thing that comes to my mind, is using a some sort of wiki engine. You could build a simple function in your WinForm application, that fires up a browser and directs in to the wiki. You could use the context from which it is called to build up an url; e.g. http://dev-wiki.mycompany.com/LoginForm?action=edit. Here the name of the form ("LoginForm") is used in the url of a wiki page.
Alternatively, you could simply use the embedded web browser control for WinForms to access the wiki. That would look something like:
var url = GetWikiUrl(myForm);
browserControl.Navigate(url);
This would be very easy to embed in your application.
In a controlled (office) environment, this would be very easy to set up. In you production environment it might be a bit more difficult, but still doable. It might leverage some end-user contributions too.
For writing documentation, I use sphinx.
It lets you document in plain text and has various output formats (chm, html, pdf etc.).
Some of these (chm, html) can be used as context-sensitive help sources.
However simple, the sphinx user-interface (text editor and make file) might not be suitable for non-technical users.
I would recommend to use Help+Manual for creating CHM documentation. It's similar to MS Word and any PC user can start to contribute doc development after short education.
But this tool isn't free :(

What programming language is required to create a Firefox plugin?

What are the minimum programming requirements to create a Firefox plugin?
You need to learn XUL for the UI and Javascript for the programming.
more infos here:
https://developer.mozilla.org/En/Developing_add-ons
Firefox plugins (such as things like Flash player) are binary components you develop in NPAPI the cross-browser API for plugins.
Check out Mozilla Plugin Developer Center
You might also look into Firefox Extensions sometimes Firefox plugins are shipped as extensions. Firefox extensions modify or enhance the functionality of the browser itself. Javascript is primarily the language you'll be writing a Firefox plugin.
Check out the Mozilla Extensions Developer Center
Some Firefox plugins that come in handy when developing Firefox plugins are the Venkman Javascript Debugger and Firebug Javascript debugger
If you are into an organized style of reading, and prefer an good ol' book, start here.
http://www.amazon.com/Programming-Firefox-Building-Internet-Applications/dp/0596102437
It will get you started on the basics on XUL, which is in turn used to build the addons. If you have a touch in javascript, it will definitely help you.
Else,
Start here.
https://developer.mozilla.org/En
You can start learning what all you will need to start developing firefox addons, or even firefox itself.
If you are fairly proficient in Javascript and DOM, then, just jump here.
https://developer.mozilla.org/En/Developing_add-ons.
The only problem might be, they are as not comprehensive for a newbie programmer. If you have some professional background in programming, and can pick up a language from sample codes, then start here.
But I would definitely suggest a well organized book, like I mentioned above. There are very few XUL book in the market, this was my first google result, so just linked it here.
Search for XUL on http://www.amazon.com/.Choose one, atleast a book published after 2006-07.
[edit]
Just found out this good article
http://kb.mozillazine.org/Getting_started_with_extension_development
There seems to be a huge misunderstanding here; Are you trying to create a plugin or an extension? As Dougnukem stated, plugins have nothing to do with XUL or extensions. They are shared libraries (.dll, .so, or .dylib for win, linux, mac) that provide functionality that the browser isn't capable of alone.
If you're just getting started, I'd recommend looking at the FireBreath plugin framework and reading through some documentation. A decent place to start is: http://colonelpanic.net/2009/03/building-a-firefox-plugin-part-one/
Also, you still haven't selected an answer for this question; is that because you haven't found an answer yet, or because you've forgotten?
Advanced DOM, the Firefox API

Are there any good drag&drop web app IDEs out there that support AJAX?

Can anyone recommend a GUI builder tool for creating DHTML web apps using AJAX to communicate with a web service backend? I'd like to avoid having to mess around with designing HTML, marshalling/unmarshalling data, checking for browser compatibility, etc. The tool should have a library of widgets that can be put into an application and hooked up to functionality, and be extensible enough to be able to define custom widgets. Of course free and/or open source is preferrable but I would consider proprietary tools too.
Also to what extent does the choice of GUI tool affect what platform or language I would use for the backend? If the GUI is just calling a web service then I should be able to use anything on the server-side to provide that interface but maybe some gui-side tools use a proprietary data exchange format that requires some specific server-side code?
Edit: I don't need a widget that can be dragged, I want an IDE that allows one to build a gui easily (i.e. a RAD tool).
WaveMaker is open source, runs on J2EE.
If you're comfortable with Java, maybe you could try Google Web Toolkit? http://code.google.com/webtoolkit/
I'm using Wavemaker and it does exactly what are u asking...
It is really easy to use and very perfomant....
I believe Dreamweaver does some of this, but in my opinion such editors are not a good idea. They produce horrible, unmaintainable server-side code and are quite inflexible.
Wavemaker beats everything else I have used hands down. Applications can be developed rapidly, has drag and drop, can connect to any web service, and has unmatched database management tools. The only problem with it is that it has kept changing hands/ownership so much and its future direction is not clear.
Delphi for PHP from Codegear has some of this capability, but I would agree with ceejayoz that such tools don't necessarily make for nice code.
On Dan's suggestion I took a look at GWT. I'd heard of it before but never looked at it that closely and it seems pretty interesting. Certainly it takes away the annoyance of pixel pushing and making things work in multiple browsers. I also tried searching for "gwt rad tools" and came up with a couple of results:
Instantiations GWT Designer (commercial, $59/year)
Wirelexsoft Vistafei (still in beta but will have a free and a commercial version)
I'll take a look at these but if anyone's used something else let me know.

Resources