Fog Creek Software
Discussion Board




Which Language for Web Text Editor?

I'm looking to create a Web text editor for a content management system, a la DevEdit (http://www.devedit.com/) or, better, Editize (http://www.editize.com).

The basic requirements (not related to specific features) are these -- the editor must run on *nix, Windows, and Mac, and must be viewable and operable by end users on any of the above platforms with Internet Explorer, Netscape, Mozilla, or Opera.  It has to be fast (my main concern with using Java) and shouldn't require users to download anything to use the editor from their personal computers (e.g., Java is bad because you have to download it, XUL is bad because you need Mozilla, etc.).

The feature list is extensive, but I'd imagine any number of languages could offer the capability to add the *features* we're looking for; it's really the cross-browser and cross-platform and (lack-of) downloading issues I'm concerned with.

For the sake of this topic, let's assume that our programmers will be capable of programming in any language that's suitable -- I'm sure we can find someone who will be able to do what we want, once we find out what that is!

Thanks!

David C
Monday, August 18, 2003

Oh, and an added provision -- the editor must integrate easily with content management systems developed with a variety of languages -- we may sell the editor as a product to be integrated with other commercial or in-house CMSs.

Something that integrates with a <textarea> tag would be ideal, but I'm sure other solutions would work.

David C
Monday, August 18, 2003

Also, the software will cure cancer, end world hunger, and bring about a lasting peace to all nations.


Monday, August 18, 2003

You don't want much do you?

Seriously, that is on hell of a list of must haves.  I am not sure it is achievable with anything buy java.  Clients of multiple platforms means any .not technology is out of the question.  I guess you could go with java script talking to something else on the backend.  All in all java makes the most sense.

How about VB --kidding
Monday, August 18, 2003

Assembly

Mike
Monday, August 18, 2003

i can't imagine this product will be successful. maybe give up now, before you waste any time and money?

.
Monday, August 18, 2003

My question was not whether the product can be successful -- I know it can be, as similar products are.  You have very little idea what the editor is supposed to do, so you're probably not in the best position to say.

Anyway, I'd appreciate it if people would actually _answer_ the question -- can this be done in something other than Java?

David C
Monday, August 18, 2003

Hi David,

Ive seen similar solutions done in java.  <g> its _really_ obvious why you want avoid using it, Ive hated all of them.

your question, "can this be done without java? ",has a really easy answer:
yes, but it will require a hellofalot of work.

The Browsers you specified, IE, Mozilla etc all have a place for plugins to be created, flash for example is done using this plugin architexture (how do you spell that word?).
So, all you need to do is write a plugin for each platform/browser you want to support, using c or c++

easy :) 

if you are _really_ serious about this Id look at something like wxWindows, IIRC it can be used to build dlls/plugins as well as application.  Some developers are using it to build photoshop plugins for instance.

I hope you have a big budget.

FullNameRequired
Tuesday, August 19, 2003

You want fast, portable code, that tightly integrates with several different applications (browsers), and has no dependencies.

C or C++ is where it's at.

dude
Tuesday, August 19, 2003

Yeah pretty much it seems the portability requirement alone limits you to C/C++ and Java.  And if you think Java's too slow, well then that limits you to C/C++.  Nothing else is faster that is portable and integrates well.

Andy
Tuesday, August 19, 2003

A relatively modern version of Flash might be up to the task, if when you say "*nix" you would settle for "Linux and maybe FreeBSD if its Linux emulation is up to the task of supporting Mozilla plugins".

Daryl Oidy
Tuesday, August 19, 2003

You state that you want to use any browser without downloading anything.

That leaves just one language: Javascript.

You complain that Java is too slow, but compiled Java bytecode will always outperform compiled Javascript.

Crossplatform development is a nightmare.  An api like DynApi might help, but these usually focus on graphics rather than text controls.

I think it it a mistake to disregard Java without looking into it properly.  Java is present on the majority of machines and has an excellent editor plug in architecture with implentations for HTML and RTF out of the box.

If you really want to use just the facilities of the various browsers then the best example is a wiki.  Tiki pushes a browser only approach as far as it can go, and that is preety limited: http://sourceforge.net/projects/tikiwiki/

Again, if I were you I'd get a skilled java programmer to put together  a prototype, and then decide for yourself if Java is too slow.

Ged Byrne
Tuesday, August 19, 2003

I'm currently working on a HTML edit control, based on HTMLArea http://www.activetools.com My work is intended to enforce accessibility guidelines and remove dependancy from whichever web browser is being used as the client. 

Because its a fork from the original code I called my version AccessEdit and you can get it at http://www.objective2k.com/AccessEdit 

Its all in Javascript and given that the speed isn't too bad.  To configure it into a CMS you'd have to tweak the post code for that particular CMS.

Oh, and its open source using a BSD licence.  After I've finished playing with this and I've knocked down all my accessibility targets I'm planning a standalone editor.

Simon Lucy
Tuesday, August 19, 2003

Simon, that's pure gold, I've been looking for just what you've done for several months in the background.

Thank you!

Konrad
Tuesday, August 19, 2003

Why won't go for Eclipse plug-in? I know that Java isn't very popular in this thread, but you can see for yourself it acts like a regular windows/linux client (Don't have Mac :-).

The basic idea was to ignore Swing/AWT and use special thin layer above the native system.

Check out - http://www.eclipse.com

David Rabinowitz
Tuesday, August 19, 2003

Hello David,

The solution to your problem seems quite simple to me. You need to write software using a language that exist on all platforme and as a GUI library that will work on all platforme without the need to install an interpreter. This narrow things down to but a few solution. I'd personnaly go with wxWindows and C++.

Only my 2cents worth.

Pierre-Luc Simard
Tuesday, August 19, 2003

Your only choice is a Javascript HTML Editor. Google for it, you will find a few.

Just me (Sir to you)
Tuesday, August 19, 2003

Simon, your link is broken! I really want to check out your work!

dsf
Tuesday, August 19, 2003

Okay, I got to your site. The URL had some extra character on the end. Maybe it was just Firebird that added it.

dsf
Tuesday, August 19, 2003

Looks like it was a linefeed, ugh.

Simon Lucy
Tuesday, August 19, 2003

If you only want a simple editor check out http://www.textism.com/tools/textile/index.html


Tuesday, August 19, 2003

I tried looking up info on creating plug-ins for IE. I couldn't find anything in MSDN. Anyone know of good source for info / howto's on this?

Whazzamattau
Tuesday, August 19, 2003

I downloaded the latest nightly of Firebird, and now Simon's editor works. It's even loads faster than in IE.

I guess my original post his editor about not working in Firebird was deleted. That's super!

dsf
Tuesday, August 19, 2003

Whazzamattau,

IE plug-ins are also called ActiveX controls. There's TONS of information on how to write them out there.

Unfortunately, you need tons of information, because they're a real pain in the behind to get right.

Chris Tavares
Tuesday, August 19, 2003

Active X controls are a problem because they only run on IE browsers and there are issues about security that some might not want to get into.

Creating a HTML Editor that works with textarea is tricky but very efficient.  The problem comes in that if you use the DOM to create the tags (which is by far the simpler way) then you'll get entirely different code depending upon which browser you use.

For instance, if you create a  bold (please Joel can I use &lt and &gt) block, then on IE 5 you'll get bold, on IE 6 you'll get strong, on Mozilla you'll get a wodge of inline CSS which relates to bold and I can't remember what you get in Opera.

Hence, I'm concentrating on removing the reliance on the browser DOM and creating correct and accessible HTML and I'm so steeped in it at the moment that if you prod me I'm likely to spout about longdesc and the Chicago protocol.

Simon Lucy
Tuesday, August 19, 2003

Chris, this is one of my great Duh! moments in life. Somehow in my head I differentiated between an Active-X control and a plug-in such as Flash or Real Player. I'm still laughing at myself.

Whazzamattau
Tuesday, August 19, 2003

*  Recent Topics

*  Fog Creek Home