views:

433

answers:

11

Hello,

Recently the CEO of the company has attended some conference, and since his returns he's only talking about Clarion programming. We've been developing a Ruby on Rails project for 2 years now, but he wants us to rewrite it. Is it really worth the effort? Please help me make my mind.

+8  A: 

Based on a quick read through of the Wikipedia page, I would say no because it appears to be a proprietary language produced by a single company. By using that technology you lock yourself into a closed eco-sphere, where your only real prospect of help is from the vending company.

With RoR you have an open technology with a large support community and an abbundance of free, open-source tools.

I understand the situation you're in, CEO gets some BS sales chat from some charming exec and thinks its the beas-knees, but he's probably wrong. Try fobbing him off until he gets another crazy idea in his head!

roryf
+1. Look at that code on the wiki page, does it look remotely suitable for web scripting? (pro tip: no.) I don't think it's even expected to produce web apps; certainly their own (ancient-looking) site isn't eating the dogfood. Let the 4GLs fade into their deserved obscurity.
bobince
+4  A: 

I'm not familiar with Clarion or Ruby on Rails, however if you've worked on the project for 2 years, I'd be surprised if it's worth re-coding it in a different language.

Ask your CEO the reasoning behind it, it may be he wants to position your product for a different market, or he may have other reasons, other then technical.

Bravax
+6  A: 

No. Rewriting basically means throwing away two years of effort for no particularly good reason.

Beyond that, Clarion has some features that cause concern:

  1. It is only available from a single vendor and would be a massive external dependency. So if they change their licensing structure or APIs in a way you don't like, you're in for another re-write.

  2. It is esoteric. You think finding documentation, programmers and help for RoR is difficult. Try finding the same for a proprietary programming environment that doesn't come from Microsoft.

Aaron Maenpaa
+3  A: 

I currently work for a company that uses clarion. I have been here 6 months. I'm learning Clarion and we are looking at moving to more current technology. Just google for info on clarion and you will see how little help there is out there. I am experienced in c# and asp.net. Progarmming in clarion is like going back to 1995.

A: 

Clarion has been a successful company since ~1985 and is still bringing out new products that work. If you think Clarion is 1995 then you are using a really old version.

Clarion's basic philosophy is that if you ever have to do anything more than once, you should never have to do it. i.e. the computer should know how to do a browse from the database with only tweaks from the programmer.

Generally on new work, Clarion is 10-20 x faster in development than C++ and most Clarion "houses" have 2-3 developers because their productivity is so high. It is database independent and has a data dictionary.

Maintenance is the strong area - if you know the business you can take up someone else's program and know what is happening in 10 minutes.

IBM detailed it as the best prototyping tool of all. Every time a competition to complete a task is held, only Clarion completes the task in its entirety. The C++ team generally complete less than 20% of the task.

There is a 3rd-part add-on written in Clarion that does a web-server without a single line of code for a web-page with a browse and a form that will run on XPHome (and it works).

But if you have completed 2 years of a task already, then changing systems is a really bad idea, although I would expect Clarion to generate the program in 6 months or less.

A: 

It's hard to answer without a lot more information.

On the face of it though it's hard to recommend a rewrite, especially for a project that's so far underway. That said there are definitely cases where a Clarion app could be done faster. Using the right tool for the right job, and so on.

One immediate question though that springs to mind is the fact that RorR is designed to created web programs, and Clarion is designed to create desktop apps. There are various ways to build web apps using Clarion and each have advantages and disadvantages (just like RorR). Without knowing exactly which approach your boss had in mind it's hard to answer the question.

Bruce
A: 

Clarion's main forte is its application generator. Rather than writing all the code yourself, or starting with a skeleton that quickly degrades into chaos, you "design" your application and the code is written for you.

  • Change the design, and the code's rewritten to match the new design.
  • Want to inject your own code into the stream? No problem. You edit your code in the context of the read-only generated code, so you'll understand how it all works together.
  • If you find a problem in the generated code, then fix the original template, and every place that template was used is also fixed.
  • If you want to add your own generic functionality, then you can write your own templates (via a code generation meta language), or you can write libraries of classes the old-fashioned way.

The new version of Clarion.NET is very promising. So you aren't stuck with a proprietary solution: use whichever tool best suits your need, and you can mix and match to your heart's content, due to .NET's interoperability.

Mike Hanson
A: 

I completely disagree with Aaron Maenpaa regarding Clarion documentation. I am a developer in Clarion for more than 15 years. I would not consider changing to any other language .. Support are readily available in Clarion forums, Clarion Mag and the list goes on. I never had a problem with support. Developing in Clarion is stable, quick, easy and the implemenation is a breeze. Immediately network enabled.

Rupert
A: 

It very much depends what your application is.

I love Clarion. It was the first language I used in my career, and I still use it to build slick, low-maintenance data intensive applications. Not only for Windows desktop, but also server applications.

If your CEO is willing to pay for licenses, sure, why not. Who cares if it's closed or open. The support is good, the developer community is tightly-knit but large and helpful enough.

However, rewriting everything just because the CEO found a language more attractive... unless there are very strong reasons, probably no.

I also strongly discourage using Clarion if you need one of the following:

  • International support for Asian languages (it simply sucks, and while you can access Windows API, it is still a pain)
  • Regular expressions
  • Support for any of the new paradigms, foundations, frameworks, etc. Because Clarion is so different, it takes a while to catch up with the rest of the world.

Also remember that this is a primarily desktop small business application oriented environment. If your focus is elsewhere, it is probably not a good idea to adopt this language.

Vadim Berman
A: 

I program in Clarion for many years. Such a change seems to me completely wrong. Maybe in many years when someone will wirte Clarion for Ruby. Now my friend writes the template for JAVA.

passcode