Forum OpenACS Q&A: Port ACS to .NET ?

Collapse
Posted by Nemanja Stanarevic on
Has anyone ever thought about porting ACS to MS .NET?

In fact, I think that Philip wrote that Microsoft has offered aD to
make ACS the first third party .NET toolkit, but that the aD
management refused that offer.

Anyway, since there is a port to Java already, I was thinking that a
port to C# wouldn’t be too hard thing to do. Is anyone interested to
start a little team to do a voluntary independent project, maybe
something similar to Open ACS but for .NET?

Regards,
Nemanja

Collapse
Posted by Rafael Calvo on
I had Phillip in very high standards until I read that...
Collapse
Posted by Talli Somekh on
Nemanja,

I encouraged you to see if you can find other people to do the port, and I think if you can find people interested in it that would be cool. But I wouldn't trust Philip's opinion on anything when it comes to the ACS, just as I wouldn't trust aD's position on Philip anymore. I have a feeling he said that just to get give aD management the bird.

But it may be a good idea, if .NET is actually worthwhile then it may be a nice project. But I would recommend you search through the bulletin boards of OpenACS and notice how much blood, sweat and tears has gone into doing this port, which is probably easier than what you are talking about (considering that .NET hasn't even been released yet.)

talli

Collapse
Posted by Ben Adida on
Be very careful when you use the term ".NET" a bit too generically,
because you're falling into the very carefully thought-out Microsoft
bundling propaganda. dotNET is composed of many unrelated elements:
the Common Language Runtime, the C# programming language, SOAP
services, and Hailstorm user services. Which do you mean? All of them?
I hope not!

If you mean you want to enable SOAP services in ACS, I completely
agree with you. There is a need to interface with ACS components in a
platform-independent way.

If you mean you want to authenticate ACS users against Hailstorm,
again, I'm in agreement with you. Sounds useful.

If you mean you want to build a Tcl-to-Common-Language-Runtime
compiler, I am still in agreement with you, although I suspect that
won't immediately allow our Tcl code to run within the .NET framework.

However, if what you mean is that you want to convert 250,000 lines of
Tcl code to C#, then I completely disagree with you. You'll waste
thousands of programmer hours producing absolutely zero additional
end-user functionality. In fact, people who are currently simply
porting their stuff to the Java language (Vignette comes to mind) are
going to start seeing
marketing competition from C# in the next few months. If their
reasoning is purely marketing based (and not technology-backed), I
suspect they'll be sorely disappointed.

Collapse
Posted by Roberto Mello on
I agree with Ben on the C# thing (and probably on the other points too 😊). What's the Hailstorm module and what is it purpose in the framework?
Collapse
Posted by Nemanja Stanarevic on
Ben -

Please, read the question I asked again. I didn't mention converting TCL code to C# since that would be rather stupid thing to do - there is Java version of ACS already. Converting Java to C# would be significantly easier. Microsoft even announced some automated tools for converting Java code to C# (and I don't think that this tools will work 100%, but at least they might be helpful).

N.

Collapse
Posted by Ben Adida on
Okay, fair enough, I missed that one detail. However, it makes little
difference to my argument. At the end of the day, you're still trying
to simply make the ACS available under a different programming
language. Not to mention that I suspect the move to C# and to a real
.NET architecture (as opposed to a straight language port) will be
significantly more difficult than you imply. This doesn't help the
end-user. If it's a more pleasant environment for you to work in,
however, go for it.
Collapse
Posted by Adam Farkas on
"I agree with Ben on the C# thing (and probably on the other points too 😊). What's the Hailstorm module and what is it purpose in the framework? "

Hailstorm is typical microsoft: convenient, but with frightening implications. It will probably be highly successful.

It provides common authentication across sites. Picture a "users" table that worked on every site that you accessed on the net.

It also allows users to store their data (like calendars, etc..) in a common place, so groups can access the data as well. Microsoft controls the repository. Sweet dreams...

http://news.cnet.com/news/0-1003-200-5181485.html

Collapse
Posted by Jamie Ross on
All technical issues aside (and I agree with Ben on his points), I fail to understand why anyone who believes in Open Source or the Free Software movement (I find myselft agreeing more and more with Richard Stallman these days) would want to support Microsoft's .NET abortion.  As Adam mentioned, the implications of Microsoft holding everyone's personal data is very frightening.  The concept of server based services on the other hand is a good one and we should be working to develop around personal or group/community servers which can be accessed via SOAP etc.  to provide network services using  free opensource  software.  (Free as in liberty, not in price necessarily).

This by the way, could be a goal for OpenACS as an extension to existing services

Collapse
Posted by Michel Henry de Generet on
I just read an article on tapesty in Javaworld. Is it related? The content of the article seems to be related to the party mechanism of ACS4 augmented with universal access (SOAP). A first look, I like this idea to separate access control and web server.
Collapse
Posted by Talli Somekh on
Jamie, I don't think that's the point and it's not worth attacking anyone for wanting to use .NET, which scary Msoft stuff aside, might have some technical merit.

Free software ought to also imply using it where you feel it can be done. I imagine that because the ACS is GPL, everything that Nemanja would do with it and the .NET would necessarily be GPL as well. I would actually like to see this kind of mix of Msoft and GPL if for no other reason than as an experiment.

talli

Collapse
Posted by Jamie Ross on
Sorry, it wasn't meant as an attack on anyone, more of a comment on social/political implications of technical choices.  We as engineers tend to look at technical issues aside from the social implications of what we do.  Read Stallman on the  GNU and Free Software movement for the political vision behind FSF and GNU (http://www.gnu.org/philosophy/philosophy.html#AboutFreeSoftware).  I think it is fair to say we wouldn't have GNU/Linux or any of the opensource tools we enjoy now if it wasn't for his groups recognition of the implications of proprietary software models.

My point is that perhaps it is better to develop and support around tools and protocols which promote the freedoms and protections most of us would like rather than supporting organizations who goal is to end privacy and non-proprietary software.  The techncial concepts behind .NET on the other hand perhaps can be implemented in a way which provides and alternative to relying on Microsoft and I believe that would be a very good thing.

Collapse
Posted by David Walker on
Interestingly enough, Microsoft is not above sticking free code into their products. According to http://www.msnbc.com/news/588803.asp?cp1=1 there is FreeBSD code in Windows.
Collapse
Posted by Rafael Calvo on
I do not know enough about the technical issues in .NET.
But I do agree with Jamie that engineers should look at the implications of their work. I do not think MS will be doing anything for the good of open source, not even as Talli says getting people to use it.
MS on the other side gets a big benefit by getting more applications running on their platform. That is the difference between vaporware and a real product.

I would prefer that my efforts go into integrating the web services of openACS with office applications like openoffice.