Jazz Forum Welcome to the Jazz Community Forum Connect and collaborate with IBM Engineering experts and users

Connecting CVS to RTC

Perhaps I just don't understand RTC, Jazz and it's relation to source control. Let me ask generally...

I've installed RTC. I have a CVS repository containing a web app written in PHP. I would ilke to connect this CVS area into RTC. How do I do that?

Is it such that I "import" a CVS project into a Jazz repository and thereafter forget about my CVS repository? IOW can I open a PHP file in RTC, edit it, debug it, and check it in and see the change in my CVS repository?

I'm confused.

0 votes



12 answers

Permanent link
Hello defaria,

there are at least the following options for you as far as I understand in
RTC 1.x.

- Option 1 migrate the CVS repository to Subversion SVN - there seem to be
solutions available. Create an SVN dump file, then import that dump file
. This would allow to keep the history
of your projects.

- Option 2 load the interesting projects from CVS into RTC. Disconnect them
from CVS. Share the projects RTC using the Jazz SCM. You can componentize
and create the Stream structure desired while doing this, create a snapshot
and baselines in Jazz SCM to be able to access the respective baselines later.
Doing this repetively would allow to preserve at least some historical data
and baselines. If you want to do it iteratively I think you should start
with the oldest baseline or create different streams. I can give no advice,
I haven't tried it except importing thr latest baseline/head.

- Option 3 you could use CVS and RTC. Use RTC for planning, work items etc.
Use CVS for versioning. You loose a lot of the cool automation and traceability
in RTC so I wouldn't opt for it, but it might be a desired scenarion in some
cases. If you do that I'd suggest to setup a small RTC project e.g. the tutorial
and workshop to understand what you loose and consider migrating CVS to RTC
later using one of the options above.

Hope this helps,

Ralph

Perhaps I just don't understand RTC, Jazz and it's relation to source
control. Let me ask generally...

I've installed RTC. I have a CVS repository containing a web app
written in PHP. I would ilke to connect this CVS area into RTC. How do
I do that?

Is it such that I "import" a CVS project into a Jazz
repository and thereafter forget about my CVS repository? IOW can I
open a PHP file in RTC, edit it, debug it, and check it in and see
the change in my CVS repository?
I'm confused.

0 votes


Permanent link
Perhaps I just don't understand RTC, Jazz and it's relation to source control. Let me ask generally...

I've installed RTC. I have a CVS repository containing a web app written in PHP. I would ilke to connect this CVS area into RTC. How do I do that?

Is it such that I "import" a CVS project into a Jazz repository and thereafter forget about my CVS repository? IOW can I open a PHP file in RTC, edit it, debug it, and check it in and see the change in my CVS repository?

I'm confused.


Hi

RTC is a self-contained SCM system that can replace CVS completely. You would effectively stop using CVS if you switched over to RTC. You can certainly develop/debug/etc your web app in RTC, and there is no need to put the content back into CVS.

Ralph points out the different options on how to get your code across to RTC. The last option is where you use RTC's other capabilities *except* the SCM part, and keep using CVS for the SCM bits. Not something I would advise as you do lose a lot of the integration that make RTC fun to work with.

A question for you - what environment are you using to develop your web app at the moment (Eclipse, etc)?

anthony

0 votes


Permanent link
Hi

RTC is a self-contained SCM system that can replace CVS completely. You would effectively stop using CVS if you switched over to RTC. You can certainly develop/debug/etc your web app in RTC, and there is no need to put the content back into CVS.


I'm not really looking at replacing CVS. I'm not really that much into this whole Eclipse thing either. I'm trying to learn and understand it, what the fuss is and determine if I should switch to it. Advantages that I see in using CVS are:

. Easy to use
. Command line oriented
. Lots of tools and free stuff work with it
. Lots of potential employers want people who know CVS (Much more than RTC)
. Nice web interface(s) to CVS

Quite frankly I still haven't quite seen what is so compelling about RTC that I (personally) should move to it. Indeed setting up the source control would be something to help show the integration aspect (though with bare Eclipse I can use CVS and not have to abandon it). All the added complexity of work items, work areas, project areas, team artifacts, builds (which developing primarily PHP and Perl there are no builds!), plans, etc. seem like tons of added complexity with very little payback for small teams who are not developing big Java based applications but rather quick Perl and PHP stuff. My web app I'm largely developing myself and perhaps one friend in another state who might help a little.

Looking at RTC and I see work items like:

Define permissions
Define team members
Define categories and releases for work items
Define sprints/iterations
Share code with Jazz Source Control
Define a new build
Define the initial Product Backlog
Define Sprint Backlog

None of these are important to get done in my project. For example, there is no builds! AFAICT all of this is just extra work and lots of overhead for a team of 1 and 1/2...

Why am I bothering you might ask? Well to learn RTC and to know it for my clients - but I'm still not convinced that it fits my specific needs.

My initial impression, and this has not changed that much, is that with a large group of developers all developing a common largely Java based application and who all wish to "play ball" in the same Eclipse pond, RTC must be great. To date however I've yet to have a single client that I can say that above statement is true for.

But for me I still can't seem to justify it enough to make it my development platform. Eclipse? Ah it's OK. With Emacs bindings it bearable (though there is still many powerful Emacs things that are missing). A PHP debugger would be nice but I have not been able to set that up to work yet. With just plain Eclipse and some PHP/Perl plugins I seem to be able to use CVS without having to get rid of it and I have a pretty nice development environment. Why then would I want RTC? (I'm not putting it down rather I'm just asking the question).

Ralph points out the different options on how to get your code across to RTC. The last option is where you use RTC's other capabilities *except* the SCM part, and keep using CVS for the SCM bits. Not something I would advise as you do lose a lot of the integration that make RTC fun to work with.


You call this fun!!! :D

Basically I'm a Clearcase guy and in real life I would think I would be using RTC with the Clearcase connector. At home, however, the software budget is a lot less (like $0) therefore Clearcase is not an option - hence CVS. IIRC RTC's integration to subversion is a connector like thing. In the connector scenario am I correct in assuming that the other end of the connector (Clearcase or SVN) is kept up to data with respect to changes in the source? I might have to switch from CVS to subversion. I've been wanting to do that anyway...

What "integration" would I lose that I would really care about? What is it that I'm missing?

A question for you - what environment are you using to develop your web app at the moment (Eclipse, etc)?


Largely XEmacs or Emacs! 8)

Seriously, I'm more of a command line kinda guy than somebody who needs pretty GUI images when I'm developing something. All inclusive IDEs are nice I guess if all you ever work in is one language. IOW if all I ever did was C++ development then Visual Studio would probably be a nice environment. But I work in Perl one minute, PHP the next then a bash script or a TCL thing - whatever. I need to be fast and dynamic. Learning a whole new IDE just because I need to get into Ruby is a waste of my time. The editor will be somewhat different, "this" will not be "here" but "there" in this new Ruby IDE, Ctrl-D - which normally deletes a character - will bring up a Ruby Define dialog box or whatever. In Emacs, you can do anything or at least lots of things well.

Eclipse seems to level the playing field a little bit in that it becomes cognizant of a number of different languages and tries to tie things together in a semi consistent manner. As I said, having Emacs bindings helps tremendously. Loosing some of the power of Emacs because all you have is Emacs bindings but not real Emacs may be a pain. For example something I would do all the time in Emacs is to split the window so I can view stuff at the top of a file while working on stuff in the middle of the file somewhere. Can't do that in Eclipse even with Emacs bindings. How do you look at two areas of the same file at the same time? Or two different files without having to toggle between views?!?

I'd love it if Eclipse tied things together such that I could easily double click a PHP file and it would open without fuss. It can in Eclipse but in RTC I get an error. It'd be great if the PHP debugger worked but it doesn't. At one time I was able to highlight a function call in PHP and right click on it and it would offer to go to php.net to describe that function. That broke too. Having an outline is OK I guess but I didn't find it that useful. And I have not even delved into Perl yet. Or shell scripting!

OK, I'll shut up now. Didn't mean to rant, rather I just wanted to present a perspective from a sysadmin/perl/php/scripting/emacs guy and how he sees this environment and his real world concerns. Hey maybe others will chime in and show me how Eclipse and RTC specifically can address my needs...

0 votes


Permanent link
Very interesting perspective - didn't come across as too much of a rant at all - just someone with a specific toolset that does what they need.

The RTC SCM system is much more sophisticated than CVS (but again, if you don't need that, it is not really something to worry about). I find being able to suspend work and switch to another version of the code (say to fix a production defect) is very useful - not something that you can do automatically in CVS (or Subversion). The whole stream paradigm makes more sense to me - but I don't have years of CC/CVS/etc experience where keeping x branches in my head comes naturally :-)

We do have small teams using RTC - including teams of 1, but again, their work may not overlap what you do. Totally agree that defining permissions, etc is not something you need to do. You can easily switch to another process (like the Simple Team process) or build your own that does have the initial work items you want to record. I find work items and the plans useful in the sense that I can keep better track of my own time - not to satisfy anyone else but just so I am not taking on too much or being too optimistic in my planning. Then when I close out a work item, I like having this update the plan and having that work item associated with a set of source code so I can back out things latter if required.

When you work with your friend in the other state - RTC could help connect you up a little better. Having everything as a URL helps if you spend time on IM rather than a phone line or something else.

re: PHP and Eclipse - if something works in Eclipse with your PHP plugin but not in RTC, I would be very suspicious of the PHP plugin. RTC has been built by pretty much the same people who built/build Eclipse - and it is a *very* well-behaved Eclipse plugin.

I don't think anyone here would want to force you to use RTC but I would definitely keep an eye on jazz.net. You have free access to the RTC Express-C version if you did ever need some of the capabilities.

Your questions are interesting - helps people see another perspective, and lets us all hear of areas that confuse you. It does not sound like many of the things you are working on require RTC yet, but if you do, please remember us.

Keep asking questions, and we will keep answering (well, at least Ralph and I will :-)

anthony

0 votes


Permanent link
Very interesting perspective - didn't come across as too much of a rant at all - just someone with a specific toolset that does what they need.


Thanks. I tend to be strong in stating my opinions and people often mistake that for ranting and get upset. That you recognize I just have my own set of concerns is good...

The RTC SCM system is much more sophisticated than CVS (but again, if you don't need that, it is not really something to worry about). I find being able to suspend work and switch to another version of the code (say to fix a production defect) is very useful - not something that you can do automatically in CVS (or Subversion). The whole stream paradigm makes more sense to me - but I don't have years of CC/CVS/etc experience where keeping x branches in my head comes naturally :-)


At work I use Clearcase. In Clearcase one tends to use Clearcase views or UCM streams and the like to do such things. Sure, it's useful when you have multiple lines of development or as you say need to switch to a production version, etc. In this home based project, well we just don't have that sort of complexity - yet...

We do have small teams using RTC - including teams of 1, but again, their work may not overlap what you do. Totally agree that defining permissions, etc is not something you need to do. You can easily switch to another process (like the Simple Team process) or build your own that does have the initial work items you want to record. I find work items and the plans useful in the sense that I can keep better track of my own time - not to satisfy anyone else but just so I am not taking on too much or being too optimistic in my planning. Then when I close out a work item, I like having this update the plan and having that work item associated with a set of source code so I can back out things latter if required.


Personally I find it more important to do coding than planning. Oh I'm sure the purists will have their day with that - but at the end of the day it's the code produced that matters to me, not the lines of planning items, story boards, work items, etc. All of that is to "manage" doing what you are doing - that is coding. It's always seemed to me that coding is much more productive than planning. I'm not trying to say that planning has no place or that it's not important - but if my friend says "we need X" and I figure out how to implement X and simply implement it then that's much better than spending all kinds of time planning how to accomplish X, tracking how many hours it takes, etc., etc. In fact, that's what I think of when I think of "agile" development - doing - not simply planning.

When you work with your friend in the other state - RTC could help connect you up a little better. Having everything as a URL helps if you spend time on IM rather than a phone line or something else.


At this point I'm still trying to get him to use any IM client!

However, any IM client will work - it doesn't need to be embedded in Eclipse. And as for having things available via a URL - we already have a web page for that!

re: PHP and Eclipse - if something works in Eclipse with your PHP plugin but not in RTC, I would be very suspicious of the PHP plugin. RTC has been built by pretty much the same people who built/build Eclipse - and it is a *very* well-behaved Eclipse plugin.


Here's the deal. Remember I'm new to Eclipse. I ran the eclipse that came with my Ubuntu set up. No PHP support. So I googled "PHP eclipse" and found http://www.eclipse.org/pdt/ then went to downloads and downloaded the package. It came as a 140 meg package and after unpacking it I had yet another eclipse executable. Played with that one and it worked well.

But I wanted to have PHP plugins in RTC so I read more about it and it turns out that I should have configured the plugins by specifying the update sites and just installing the PHP plugins into RTC. I tried doing that and it complained. I think I just told it to install all dynamic language plugins and hit dependency errors, etc. Eventually I seemed to have gotten it to work. I say that because the PHP Explorer appeared in RTC and it seemed to recognize PHP files. But that broke. I'd like to totally uninstall the PHP stuff and then properly install stuff for PHP and Perl. Can you help me do that?

I don't think anyone here would want to force you to use RTC but I would definitely keep an eye on jazz.net. You have free access to the RTC Express-C version if you did ever need some of the capabilities.


Speaking of which, I've installed the Express-C version. I thought I was told that for teams of < 10 then it's free. Yet it keeps telling me my licenses will be expiring...

Your questions are interesting - helps people see another perspective, and lets us all hear of areas that confuse you. It does not sound like many of the things you are working on require RTC yet, but if you do, please remember us.


I'm trying to see the value add and I know for some of my client's it may be just the thing. It may not fit well for my particular development paradigm though as I said, if the links to things like php.net, outlines, debugger and integration to CVS.. ahem... subversion might be enough to use it over just plain Emacs...

Keep asking questions, and we will keep answering (well, at least Ralph and I will :-)

anthony


Great. And thanks for being open minded...

0 votes


Permanent link
So this is turning into one of those "conversations to be held at the pub" - but that's fine too.

re: coding vs planning - agreed, but the way to use work items and plans in this case is more to keep track of stuff. I rarely get told "we need X", more like "we need X, Y, Z and how about A, B, C". Also - if people get an idea, they throw it into RTC as a work item and there are various ways to make sure you get notified (RSS feeds, event popups) when they come in. Now I suspect that this might all sound like a nightmare environment for you - but it does work rather well (IMHO) for many teams, even small teams.

re: we already have a web page for that - sure, but I really mean everything is a URL, so your work items, builds (if you needed them), baselines, plans, etc are URL's.

re: PHP plugin - never tried to install PHP bits in Eclipse before, so not sure how much help I would be. However, if you look at the Update mechanism - there is a way to roll back to before you installed these bits. It may just be easier to trash the RTC client and start again. If you keep your RTC server, you will be able to carry on without messing up your work done so far.

re: Express-C gives license warnings. To explain, the licensing model is a server license (which sets the number of users the server will support) and client licenses - you get 3 free client licenses as part of the download for Express-C. This should keep most people going. You can buy more if you need more RTC clients. We should pick up this problem in a new thread as I would not expect you to see license warnings on the 1.0.1.1 version - unless you are using the pre-release versions of 2. If you are using the pre-release versions of 2.0 - these betas/rc's expire on the 31st July because the 2.0 release is due in the next few days according to the plan here on jazz.net.

regards

anthony

0 votes


Permanent link
So this is turning into one of those "conversations to be held at the pub" - but that's fine too.


Yes it is. Too bad we're not at the pub... I'd buy you a beer..

re: coding vs planning - agreed, but the way to use work items and plans in this case is more to keep track of stuff. I rarely get told "we need X", more like "we need X, Y, Z and how about A, B, C". Also - if people get an idea, they throw it into RTC as a work item and there are various ways to make sure you get notified (RSS feeds, event popups) when they come in. Now I suspect that this might all sound like a nightmare environment for you - but it does work rather well (IMHO) for many teams, even small teams.


Oh I get X, Y and Z as well as A, B and C too. I was just making an example. Some people live to plan - others plan on living. It's just a difference in style I guess. Me, I'd much rather be coding in code than writing about what I'm about to code because then I still have to be coding in code. IMHO, that's just extra work...

re: we already have a web page for that - sure, but I really mean everything is a URL, so your work items, builds (if you needed them), baselines, plans, etc are URL's.


Well as I said, I don't need builds nor do I need much of work items, plans, sprints, todos, maybes, etc. IOW I'm much more interested in the artifacts produced.

re: PHP plugin - never tried to install PHP bits in Eclipse before, so not sure how much help I would be. However, if you look at the Update mechanism - there is a way to roll back to before you installed these bits. It may just be easier to trash the RTC client and start again. If you keep your RTC server, you will be able to carry on without messing up your work done so far.


This might be what I do, maybe this weekend. Take notes. Get it right. The only real problem is that RTC doesn't really help me much with my CVS repository. So it's either go through a migration to subversion then mess with that, or give up on RTC and just do Eclipse with PHP and CVS...

re: Express-C gives license warnings. To explain, the licensing model is a server license (which sets the number of users the server will support) and client licenses - you get 3 free client licenses as part of the download for Express-C. This should keep most people going. You can buy more if you need more RTC clients. We should pick up this problem in a new thread as I would not expect you to see license warnings on the 1.0.1.1 version - unless you are using the pre-release versions of 2. If you are using the pre-release versions of 2.0 - these betas/rc's expire on the 31st July because the 2.0 release is due in the next few days according to the plan here on jazz.net.


Well I'm on the 2.0 stuff so that's probably why I see stuff about expiring licenses.

regards

anthony


Thanks much Anthony...

0 votes


Permanent link
Hello defaria,

I have a customer/partner using RTC Express in small teams. To me, in case
you want to do planning, especially agile methods e.g. SCRUM.
Also, if you want to provide your customers a way to provide feedback, work
items would be the way how to do that. To use these capabilities and the
tracing you have to do some minimal set up for a new project (around 5 minutes
in case you know where to go). I think with some templates for 2.0 even that
is going to be reduced.
Just using the simple Project or SCRUM template should do almost everything
except setting the dates.

If you have no builds, you don't have to use them. We believe in the value
of continuous integration but if you can't build, no problem. However you
might consider building usefull even then, just running a build that does
nothing other than creating a snapshot and a build record, maybe enhanced
to contain the product in a deployable format would allow you to create a
release from the build. This could be used to track issues from customers
easily and these builds would allow to theck which fixes got in there. This
can be avoided creating a snapshot/baseline similar to CVS. In the minimal
case, you can then create the release manually (in the project editor) and
store the label there for convenience later.

You don't have to define permissions if you just share internally, if you
want your customers to participate you should however. E.g. if you don't
want to expose the sourcecode but share work items with the customer follow
the article Jean-Michell Lamieux published recently for RTC 2.0.

You have to define who is in the team which is almost trivial and accepting
the invitation generated will open up all the member needs.
You don't have to fine tune the process.
You need one cathegory for the project and should at least have one for each
team to allow proper planning.
You don't need the planning, so you would not need to create plans. I assume
you could even work without a proper timeline for the project. However, how
do you plan then? More important, how do you know you are on track - no plan,
no reports. And how do you know you are doing things in the right priority?
And the things the customer requested? And how can you get better in estimating
how long certain things would take.

Loads of questions you will only be able to anser in case you do at least
some basic planning which would be to set a timeline for the project/team,
specify at least one iteration with start and end date and release to be
sheduled. Then create a plan for that and start entering your work items,
start coding them....

Then look at the dasboards and figure your velocity and if you can deliver
in time. If not, what happened? Then start getting even better.....

Just using SCM is also an option. I have used several SCM solutions over
the years and I am happy as can be about Jazz SCM, especially having repository
workspace on the server, where I can simply suspend or "park" change sets
I am not yet willing to deliver because it would mess up the stream. Even
accepting these into another users Repo Workspace is cool. Also the ability
to isolate changes etc.

That is all I can say about RTC - I wish I would have had it years before
and I am happy with it even if I am no longer a full time developer or teamlead
any more.
I am so convinced it is a great tool that I am trying to help people here
in the forums as good as
I can.

Thanks,

Ralph

PS: ther is loads of good readings that does not require to install the tool
at all:

There is loads of stuff in
The blog: http://jazz.net/blog/
The library: http://jazz.net/library/


You could read this for a small testimony from a user.
http://jazz.net/forums/viewtopic.php?t=4383

You could go to

https://jazz.net/projects/rational-team-concert/ to have a look at what will
be new in 2.0.
http://jazz.net/library/LearnItem.jsp?href=content/docs/rtc1.0-capabilities/index.html
is a good overview about what RTC does in general.
http://jazz.net/blog/index.php/2009/01/06/webcast-using-rational-team-concert-in-a-globally-distribute-team/
is a good recording about how it works over all.






kestertowrote:

Hi

RTC is a self-contained SCM system that can replace CVS completely.

You would effectively stop using CVS if you switched over to RTC. You
can certainly develop/debug/etc your web app in RTC, and there is no
need to put the content back into CVS.

I'm not really looking at replacing CVS. I'm not really that much into
this whole Eclipse thing either. I'm trying to learn and understand
it, what the fuss is and determine if I should switch to it.
Advantages that I see in using CVS are:

Easy to use
Command line oriented
Lots of tools and free stuff work with it
Lots of potential employers want people who know CVS (Much more than
RTC)
Nice web interface(s) to CVS
Quite frankly I still haven't quite seen what is so compelling about
RTC that I (personally) should move to it. Indeed setting up the
source control would be something to help show the integration aspect
(though with bare Eclipse I can use CVS and not have to abandon it).
All the added complexity of work items, work areas, project areas,
team artifacts, builds (which developing primarily PHP and Perl there
are no builds!), plans, etc. seem like tons of added complexity with
very little payback for small teams who are not developing big Java
based applications but rather quick Perl and PHP stuff. My web app I'm
largely developing myself and perhaps one friend in another state who
might help a little.

Looking at RTC and I see work items like:

Define permissions
Define team members
Define categories and releases for work items
Define sprints/iterations
Share code with Jazz Source Control
Define a new build
Define the initial Product Backlog
Define Sprint Backlog
None of these are important to get done in my project. For example,
there is no builds! AFAICT all of this is just extra work and lots of
overhead for a team of 1 and 1/2...

Why am I bothering you might ask? Well to learn RTC and to know it for
my clients - but I'm still not convinced that it fits my specific
needs.

My initial impression, and this has not changed that much, is that
with a large group of developers all developing a common largely Java
based application and who all wish to "play ball" in the
same Eclipse pond, RTC must be great. To date however I've yet to
have a single client that I can say that above statement is true
for.
But for me I still can't seem to justify it enough to make it my
development platform. Eclipse? Ah it's OK. With Emacs bindings it
bearable (though there is still many powerful Emacs things that are
missing). A PHP debugger would be nice but I have not been able to set
that up to work yet. With just plain Eclipse and some PHP/Perl plugins
I seem to be able to use CVS without having to get rid of it and I
have a pretty nice development environment. Why then would I want RTC?
(I'm not putting it down rather I'm just asking the question).

Ralph points out the different options on how to get your code

across to RTC. The last option is where you use RTC's other
capabilities *except* the SCM part, and keep using CVS for the SCM
bits. Not something I would advise as you do lose a lot of the
integration that make RTC fun to work with.

You call this fun!!! :D

Basically I'm a Clearcase guy and in real life I would think I would
be using RTC with the Clearcase connector. At home, however, the
software budget is a lot less (like $0) therefore Clearcase is not an
option - hence CVS. IIRC RTC's integration to subversion is a
connector like thing. In the connector scenario am I correct in
assuming that the other end of the connector (Clearcase or SVN) is
kept up to data with respect to changes in the source? I might have to
switch from CVS to subversion. I've been wanting to do that anyway...

What "integration" would I lose that I would really care about? What
is it that I'm missing?

A question for you - what environment are you using to develop your

web app at the moment (Eclipse, etc)?

Largely XEmacs or Emacs! 8)

Seriously, I'm more of a command line kinda guy than somebody who
needs pretty GUI images when I'm developing something. All inclusive
IDEs are nice I guess if all you ever work in is one language. IOW if
all I ever did was C++ development then Visual Studio would probably
be a nice environment. But I work in Perl one minute, PHP the next
then a bash script or a TCL thing - whatever. I need to be fast and
dynamic. Learning a whole new IDE just because I need to get into
Ruby is a waste of my time. The editor will be somewhat different,
"this" will not be "here" but "there"
in this new Ruby IDE, Ctrl-D - which normally deletes a character -
will bring up a Ruby Define dialog box or whatever. In Emacs, you
can do anything or at least lots of things well.
Eclipse seems to level the playing field a little bit in that it
becomes cognizant of a number of different languages and tries to tie
things together in a semi consistent manner. As I said, having Emacs
bindings helps tremendously. Loosing some of the power of Emacs
because all you have is Emacs bindings but not real Emacs may be a
pain. For example something I would do all the time in Emacs is to
split the window so I can view stuff at the top of a file while
working on stuff in the middle of the file somewhere. Can't do that in
Eclipse even with Emacs bindings. How do you look at two areas of the
same file at the same time? Or two different files without having to
toggle between views?!?

I'd love it if Eclipse tied things together such that I could easily
double click a PHP file and it would open without fuss. It can in
Eclipse but in RTC I get an error. It'd be great if the PHP debugger
worked but it doesn't. At one time I was able to highlight a function
call in PHP and right click on it and it would offer to go to php.net
to describe that function. That broke too. Having an outline is OK I
guess but I didn't find it that useful. And I have not even delved
into Perl yet. Or shell scripting!

OK, I'll shut up now. Didn't mean to rant, rather I just wanted to
present a perspective from a sysadmin/perl/php/scripting/emacs guy and
how he sees this environment and his real world concerns. Hey maybe
others will chime in and show me how Eclipse and RTC specifically can
address my needs...

0 votes


Permanent link
Hello defaria,

I have a customer/partner using RTC Express in small teams. To me, in case you want to do planning, especially agile methods e.g. SCRUM.


I don't want to do planning as much as I want to do coding.

If you have no builds, you don't have to use them.


Of course. My point was that RTC often focuses on, and has facilities about things that are not useful for what I'm doing.

We believe in the value of continuous integration but if you can't build, no problem. However you might consider building usefull even then, just running a build that does nothing other than creating a snapshot and a build record, maybe enhanced to contain the product in a deployable format would allow you to create a release from the build.


I'm a firm believer of making your working environment and your deployed environment exactly the same. Then there is no "make it into a deployable format". Indeed I also firmly believe in running things out of your SCM too. In Clearcase terms that would be a view. With CVS that would be a checked out workspace. So then there's no need for a "build record" other than having the baseline (or release tag in CVS terms). Simply use CVS to checkout and viola! You have your release. And, in fact, that's exactly what I do.

This could be used to track issues from customers easily and these builds would allow to theck which fixes got in there. This can be avoided creating a snapshot/baseline similar to CVS. In the minimal case, you can then create the release manually (in the project editor) and store the label there for convenience later.


Sounds great I guess but I don't have those needs...

You don't have to define permissions if you just share internally, if you want your customers to participate you should however. E.g. if you don't want to expose the sourcecode but share work items with the customer follow the article Jean-Michell Lamieux published recently for RTC 2.0.


Customers would not be sharing the code.

You have to define who is in the team which is almost trivial and accepting the invitation generated will open up all the member needs.
You don't have to fine tune the process.You need one cathegory for the project and should at least have one for each team to allow proper planning.


Again with the planning thing. When's the coding start?

You don't need the planning, so you would not need to create plans. I assume you could even work without a proper timeline for the project.


I have for quite literally decades...

However, how do you plan then?


I use my head. I think. I write. I converse. I might even write notes. Some people use all sorts of formal methods. Others user various types of informal ones. Studies have shown both to be effective.

More important, how do you know you are on track - no plan, no reports.


When things are completed they are done. One does not always need to write down and track what's happening in a formal way. Reminds me of a saying - "Budget: A method for going broke methodically". Now I could watch how broke I am, or I can go out and make more money. I prefer to do the later (though I've tried the former for years - it was only after concentrating on the later that I became debt free). YMMV.

And how do you know you are doing things in the right priority? And the things the customer requested?


When the stake holder communicates to me "Hey when's X gonna be done" I know to increase the priority of X...

And how can you get better in estimating how long certain things would take.


Rarely do I want that question answered. Frequently my manager wants that question answered. Said differently - I'm the coder, not the manager. I hate estimations and find them largely a waste of my time when I could be doing instead of planning to do. Again, my motto is "Some people manage... I manage to do!". I'm sure you've met my type - the engineer. We are many. We are the ones who thought this product was for us to help us complete our jobs more efficiently and effectively - not a tool to make more process but a tool to help the process flow through. You seem to be constantly highlighting the former and not understanding I want the latter...

Loads of questions you will only be able to anser in case you do at least some basic planning which would be to set a timeline for the project/team, specify at least one iteration with start and end date and release to be sheduled. Then create a plan for that and start entering your work items, start coding them....


I'm not saying planning it totally useless, mind you. In larger projects and teams it's probably very useful. For some analytical project manager types who have to have everything be a plan, work item and being tracked to death I'm sure it makes them very happy. Might even help with us engineering types to more easily generate and give those manager types the estimates they so dearly desire. But do realize that some people plan and work a lot more informally.

I used to plan more myself, making little lists of things I wanted/needed or at least thought important to get done. Then one day I found one of those simple lists in a file. I hadn't seen it in years and I had been going without it ever since I lost it. It was a simple list of things I personally wanted to get done or look into. In reviewing the list I found that even without the list I got just about everything done on the list without having the list. That's when I learned that focusing on the planning is not necessary and only takes time away from focusing on the doing.

Then look at the dasboards and figure your velocity and if you can deliver in time. If not, what happened? Then start getting even better.....


At this time the "project" I'm working on is an after work project that is just a side job for me. And I'm not getting paid one cent for it though maybe in the future with some sales... IOW I'm saying it's not that important to me. I don't have deadlines or customers barking at me to get X, Y or Z done.

Just using SCM is also an option. I have used several SCM solutions over the years and I am happy as can be about Jazz SCM, especially having repository workspace on the server, where I can simply suspend or "park" change sets I am not yet willing to deliver because it would mess up the stream. Even accepting these into another users Repo Workspace is cool. Also the ability to isolate changes etc.


There are many advantages with staying with a more industry standard solution like CVS...

That is all I can say about RTC - I wish I would have had it years before and I am happy with it even if I am no longer a full time developer or teamlead any more. I am so convinced it is a great tool that I am trying to help people here in the forums as good as I can.


I really do appreciate your effort and advocacy. Suffice to say however that RTC is perhaps not for everyone and definitely not for every situation. As I said before, if you have a large team developing Java based stuff and everybody is committed to playing in the same Eclipse pond, you have needs for multiple releases, streams and rigid requirements for planning and tracking then RTC is probably very good. Remember the "T" is for team and therefore it's not a surprise that its emphasis would be on team development. The "C" being concert, having everything work together. But for certain projects and the like it may be overkill.


PS: ther is loads of good readings that does not require to install the tool
at all:

There is loads of stuff in
The blog: http://jazz.net/blog/
The library: http://jazz.net/library/


You could read this for a small testimony from a user.
http://jazz.net/forums/viewtopic.php?t=4383

You could go to

https://jazz.net/projects/rational-team-concert/ to have a look at what will
be new in 2.0.
http://jazz.net/library/LearnItem.jsp?href=content/docs/rtc1.0-capabilities/index.html
is a good overview about what RTC does in general.
http://jazz.net/blog/index.php/2009/01/06/webcast-using-rational-team-concert-in-a-globally-distribute-team/
is a good recording about how it works over all.


These are all probably very good reading that unfortunately my spare time will not allow me to read. I'll probably need these years down the road when I get into a client that really uses RTC and needs me to further expand my knowledge of it. And, of course, at that time the links above will probably have changed...

0 votes


Permanent link
Hello defaria,

I understand your points and I guess it always depends on the situation and
the perspective.
Change is always painfull and if you feel your current environemt is suficcient
for your needs there is no point arguing aboiut it.

I hope you'll have the opportunity to use RTC in a customer project - and
fall in love with it 8-)

Ralph

0 votes

1–15 items
page 1of 1 pagesof 2 pages

Your answer

Register or log in to post your answer.

Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.

Search context
Follow this question

By Email: 

Once you sign in you will be able to subscribe for any updates here.

By RSS:

Answers
Answers and Comments
Question details

Question asked: Jun 23 '09, 1:32 a.m.

Question was seen: 16,748 times

Last updated: Jun 23 '09, 1:32 a.m.

Confirmation Cancel Confirm