|
I am looking for ideas for avoiding contamination of proprietary code by a GPL application. I need to be able to use the GPL application without opening up my code to GPL. I would like to get feedback from folks who may have encounter this issue and considered using some RPC mechanism to establish client/server type architecture potentially using shared memory for data passing. This is for a multimedia type application. Thanks. Fred
|
|
|
|
|
If I understand GPL correctly, you are toast either way.
If you derive, use, intaract with a GPL product you have to go GPL.
The only way I know of to bypass it is to ask the developers if you may buy the right to use it w/o GPL.
|
|
|
|
|
Simple answer - find an alternative component that doesn't use GPL. Maybe find one that uses LGPL or is closed source. You can't arbitrarily decide to ignore the GPL license - the author's have decided to license the component that way, and if you use it you agree to abide by the decision.
|
|
|
|
|
Fred Garvin wrote: avoiding contamination of proprietary code by a GPL application
This sounds like a twist in reality, are you an IT manager?
Anyway, here are some possibilities. First, there speaks nothing against using GPL-ed applications, e.g. using the Apache web server does not require your web applications or content to fall under the same license. Secondly, consider contacting the author (copyright holder) and ask if you may purchase the product under an alternative license, e.g. some software is dual-licensed to fit proprietary needs. Finally, consider going open source yourself and possibly benefit from community/developer feedback.
Hope it helps.
/M
|
|
|
|
|
That is in part because the Apache web server is licensed under the Apache license - which is not very much like the GPL at all...
|
|
|
|
|
I've been using the following pattern with transactions for some time now, without problems.
try
{
}
catch ( System.Exception err )
{
}
I have been operating under the assumption that if Commit or Rollback is called for a non-existent transaction, then throwing an exception is the right thing to do. The Commit and Rollback in question are my methods that check for null and throw InvalidOperationException rather than NullReferenceException.
But recently I've run into some problems. For some reason (which I still need to investigate further, but I have an idea) the Commit fails because the transaction doesn't exist, which means the Rollback will also fail. Having an exception thrown through the catch is, of course, nasty.
I could change the methods to raise an event instead of throwing.
I could filter the exception to log but not rollback on certain exceptions (like InvalidOperationException).
Has anyone else had to deal with this situation?
Does anyone have a better pattern for this?
|
|
|
|
|
Well, the transaction can easily be checked by looking at the transaction on your command, e.g
if (myCommand.Transaction != null)
{
myCommand.Transaction.Commit();
}
|
|
|
|
|
Yes, and I do, but if it is null, I throw InvalidOperationException, because I feel that the caller should know about it.
I don't want to continue as if everything was okey-dokey.
I check the same thing in my Rollback method as well, which is causing the trouble.
|
|
|
|
|
Where can find these (Skipjack and RC5) ciphers latest materials such as international paper, book or reference. I saw some of them but they published around 10 years ago. That is too old to use. Is this any new materials for them? Help to find it? Thank you
|
|
|
|
|
I've implemented Skipjack recently on a small micro as well as in VB. I don't have the code handy, and since it belongs to my client I really couldn't share it, but a Google search for Skipjack encryption will turn up some good stuff within a page or two (if you don't mention encryption, you'll get information about boats and other stuff).
I haven't seen anything to suggest that Skipjack has been "broken", though cryptosystems that are very close to Skipjack have been. I would not recommend tampering with the internal workings of Skipjack, since such tampering is apt to make it significantly weaker. If interoperability with existing Skipjack implementations is not required, however, increasing the number of rounds to 48 (from 32) might not be a bad idea. Note that if the number of rounds is reduced at all, cryptanalytic attacks become easier than brute force. By my understanding, increasing the number of rounds to 48 would improve security (an attack on a 31-round version of Skipjack has been discovered; using only 32 rounds would seem to be cutting things rather 'close').
|
|
|
|
|
I had no idea this was here.
I'll have to start lurking here now, this stuff is right up my alley.
Cheers all!
"The pursuit of excellence is less profitable than the pursuit of bigness, but it can be more satisfying."
- David Ogilvy
|
|
|
|
|
It's fairly new. It's only been here about a year now. You need to get out of the lounge more.
|
|
|
|
|
Yeah I do.
"The pursuit of excellence is less profitable than the pursuit of bigness, but it can be more satisfying."
- David Ogilvy
|
|
|
|
|
Hi Everyone,
I have gotten myself into a project who's design is far beyond my abilities. I'm a rookie when it comes to good object oriented design. I understand the basics, but am not familiar with all of the patterns and such. I am the only programmer at my company and don't have anyone to bounce ideas off, so I'm posting here hoping for some coaching and guidance on a good class diagram.
That being said, the project is a reporting system that allows spreadsheet entry via a website. The website is currently operational and used for other purposes. We are currently using FarPoint Spread for other spreadsheet data entry. We have a folder on our web server that is called forms and holds each report spreadsheet.
I have identified what I think are the main objects.
What I don't know how to handle is the validation and processing. I assume I would create a validation interface and a form processing interface, but I don't know how to lay that out.
I've typed up a summary of this project:
Abstract:
Professional Hospitality, a hotel management company, has each hotel report back to the home office on a monthly basis. The current arrangement requires the manager to type up all of the information on spreadsheets. The spreadsheets are then printed and mailed via postal to the Home Office. The Home Office, then opens and sorts the mail and types in the data from the spreadsheets. The new spreadsheets are then printed and delivered to the appropriate regional managers around the home office. After the regional managers review the information, the printed spreadsheets are then sorted and filed in file cabinets.
Problems:
The current process involves large amounts of manual labor, postage, printing costs, filing costs, and data entry costs. The goal of this project is to reduce or eliminate these cost burdens and therefore increase company profitability. Professional Hospitality would like to be able to create other reports to be submitted on differing intervals. Current examples are a Sales month-end, bi-weekly rate reporting, or annual reports.
Requirements:
• Web based data entry that is similar to Excel spreadsheets
• Templates (master spreadsheets) used to format each form and also ensure consistent entry
• Enter data on multiple templates for each reporting period
• Submit the entire group of spreadsheets when the period has lapsed
• Ability to create multiple report periods. AKA, a monthly report, bi-weekly report etc.
• Ability to setup validation rules in spreadsheet cells. Validations would be enforced when trying to submit the report.
• Ability to setup automatic value transfer rules from one reporting period to another. In other words ability to copy cell E10 from the last reporting period to the current.
Definitions:
Periods: A collection of “Periods”.
Period: Required reports to be submitted at a specified interval. A period contains a collection of period reports. (Month-End, Bi-Weekly, Sales Reports, Rate Reports etc).
Period Reports: A collection of reports for the specified period. If this were a month-end period, then you would see January 2008, Feb 2008, Mar 2008 month-ends.
Report: A collection of forms to be submitted for the reporting period. An example of a report would be January 2008 Month-End.
Form: Individual report-specific instance of a template fill with the periods information
Template: Excel spreadsheet used to standardize data entry
|
|
|
|
|
i am sure it's your home work and you are just making up about the company and stuff .
innit
|
|
|
|
|
Actually, no...it is my day job. The company is Professional Hospitality.
You can see more info here. http://www.prohospitality.com/staff[^]
Since, you mentioned it though... I could see where people would take advantage of resources like this to help them solve their homework.
~Wauna?~
|
|
|
|
|
Wauna wrote: I have gotten myself into a project who's design is far beyond my abilities. I'm a rookie when it comes to good object oriented design. I understand the basics, but am not familiar with all of the patterns and such.
First and foremost, don't get bogged down in the abstract of design without understanding the nuts and bolts of the technology you'll be using to build this system (or add functionality to an existing system as it sounds like part of it is already built). Have a firm understanding of the tools you'll be using. Once you have that knowledge, then you can begin to think in the abstract and play with the pieces, so to speak, fitting them in different ways until you have something that works for you.
Other than that, I don't have much to offer at this time. Web based apps are not my forte. But perhaps in the future if you have a specific design question I may be able to help.
|
|
|
|
|
Would anyone be willing to help me via email correspondance?
|
|
|
|
|
Wauna wrote: Would anyone be willing to help me via email correspondance?
I would seriously doubt that people here have the time. Most of the people on this site are busy professionals, who have enough on their plate just answering in the forums. Sorry.
|
|
|
|
|
Time to find a new job, me thinks.
Gary
|
|
|
|
|
Wow Gary,
That wasn't very nice. I was asking for help, not insults.
Mental note to self... "Don't use this message board anymore"
|
|
|
|
|
You're silly Wauhoo.
I offered not an insult, but advice. You may take it or ignore it, but I think if you can't do the basics of your job, you should be looking for another. Just kindly advice.... Just because you can spell coder doesn't mean you are one.
Is a "mental note to self" a mental note to self when it is public and to everyone?
Gary
|
|
|
|
|
Gotta say, with 10 years experience in something that hasn't existed for 10 years, I'd expect you to know a little more that what's evidenced in your post.
You should take advantage of "Professional Hospitality offers competative [SIC] compensation and a comprehensive benefit package which includes:
* Career training program"
Gary
|
|
|
|
|
Wow..... you are really a mean and nasty person.
Why do you want to insult me so much?
What on earth do you have to gain by rubbing my face in the sand?
You've made a lot of judgements about me with extremely little information.
It's hard not to take it personal when someone says you are not good at the job you've been doing for over 10 years.
|
|
|
|
|
" but I think if you can't do the basics of your job.."
How do you know that I cannot do the basics of my job?
Have you ever heard the statement "Two heads are better than one?"
It's always beneficial to have people review your designs, whether you're a veteran or a rookie.
|
|
|
|