That's a sticky phrasing; perhaps it's partly the translation. Does this mean that the user has the right to free redistribution, or that the license must guarantee free redistribution?
The law says that the license must allow the user to be able to redistribute the software under the sme license [but not necessarily force it]. i.e., BSD license is allowed by the law
I am one of the people suppoting this law in Argentina.
I agree with you: I think Free Software will win in the end because of superiority.
But meanwhile, *my* public records (and records from other Argentinian citizens, and most people in the world) are being handled by propietary software. That is a security risk for me, so as a citizen I am claiming for a right to know what the hell is the software doing with my data, even if that data is mantained by the state.
Note that the preceding point is valid, even if free software doesn't win in the long rang, even if it is more expensive, and even if it works worse.
Argentina is not (yet) part of the FTAA. Eventually it could be (there's a big debate about that), so thanks for the information, I'll try to find out how it would affect the law.
That would be a consequence of using Free Software, because most FS stores the data in standard formats. Even when it doesn't, you have the source code, so you can write another program that reads the data, and/or converts it to an standard data format
> The law probably ought to contain some kind of
> back door-- like, something where a person at a
> state university can appeal this law and be
> given an exception based on usage of free
> software being unreasonable given a lack of
> free software alternatives to a closed source
> program they need to use--
That's true. We're discussing alternatives for setting a method of providing exceptions and proposing it for the law. We have a couple of suits and lawyers assisting us; but it's a complex matter (how to ensure that there won't be a lot of exceptions request annd the law will finish ignored). I'm interested in feedback about this...
The law states that software used by the state must be Free Software
That means, it doesn't disallow a propietary, profit-based software industry. It just limits the range of applications that the National Administrartion can use. This would benefit the state (perhaps a reduction of software costs, but more probably, improve quality and security, and avoid technological dependence)
As said in a previous reply, the law covers just government use.
A law is needed because presently, state resources are trapped inside propietary applications and data formats. It's a must to get out of that trap, but there's a lot of effort involved. A law would make possible the enforcing of such a policy.
Software used by the state manipulates information about citizens (tax records, for example). That manipulation should be public, the same way that the national budget is public, the laws are public, etc.
The financial savings are not the biggest benefit. I realize that there will be a huge pice to pay in training and development, that could be similar to the cost of propietary licenses.
But there are strong arguments for government use fo free software, like "National Security" (because the ability to guarantee no backdoors), "Technological independence" (remember that this is a 3rd world country, and propietary software involves depending on a foreign corporation), and "Control of information" (Citizens may be harmed when their public records are stored ("kidnapped") into propietary file formats)
There's a meeting next week with the congress commission discussing this law and a a local geek was invited to give advice. We (we=people that has promoted this law and is trying to move it forward) are interested in interesting opinions about how the law might be improved, so he can propose them.
Please, comments wanted. Let's hack a bug-free law together!
I haven't ever written/read/used programs in FORTRAN, but I've done somo programming in Eiffel, and programs look a little Eiffel-like... That shouldn't be surprising, because it's intended to give C programmers some Eiffel-like features.
Why? Because a lot of people are forced to program in C...
I'm not a fan of C, the library has some horrid things (like routines without buffer-overrun checking), and the language is very low level. But when working with other people, sometimes C is a necessary evil What to do? You can get some higher level programming using BetterC, a C library that gives you Eiffel-like exception checking with a minimum efficience penalty, and without leaving your favorite C compiler. It's my Nirvana, I don't use debuggers anymore...
This is a language-level problem... A warning like this in a C compiler should appear every time you do an array access, unless the array size and the index are constants. A compiler could implement bound-checks, but I guess a lot of code will stop working, because some programs use "off-buffer access" as a feature.
In my university (not in the US), the Computer Science Carreer is taught this way: First semester: Calculus, Number Theory, Logic, Group Algebra, Graphs, Automathon Theory, Grammars... (some of this topics are just overviewed, others are studied more deeply).
That gives a good mathematical basis; in the second semester, in the course named "Algorithms & Data structures", first programming is taught... in Haskell. With goods maths, that is very easily understood, the language is not an obstacle. We do some formal derivations and that... after Haskell, we learn to translate (ugly word in programming) that into imperative (Pascal).
So, functional, in my experience is not "innately harder", as I see a lot of people getting used more to that than to imperative (Pascal, or C, given later), it's just an issue of getting used to it.
StarOffice is quite memory-consuming (but it is not a serious load on the processor... better than M$ in that sense).
But Star Office is efficient in a network environment, running in a server and displayed locally...
The first soffice session you open consumes about 30/40MB... then, each additional session is just 2MB more. (that means, with a 128MB server you can have several of users, with 512MB, a lot).
You cannot build a shell just with calls to system(); all that system() does is exec'ing/bin/sh. That means you need a shell to run any program that uses system()
This program (if you get to compile it) is provided with the following warranty:
The program foobar-0.42 (referred as "the free software") will do at least one of the following
+ Do what the documentation states (I promise I'll document it soon). + Get loaded by your OS + Produce a core dump
If the free software fails to meet any of these three goals, you'll get a full refund, equivalent to the cost of receiving the free software downloaded freely from my site.
Most comments I've read here talk about open source. That's an advantage, but not the only one.
You have: * flexibility: scripting, make, and that kind of tools allow you to easy recompile a project, tweak all the compile-time options comfortably and easily. Command line tools are MUCH more flexible than their GUI counterparts * stability: When coding, you have to usually test a program. It's quite possible that your program will have bugs on the first run, so it will hang. I prefer having a core dump instead of having to reboot my machine * language/compiler availability * codebase availability: It's quite usual to find some code that already does what you want, or part of it. * documentation: Documentation is usually much better in open source environments. And when that fails, RTFS.... * portability: most linux libs are standard based, and much more easily portable to windows (or other unices) than windows libs...
First point: By "solving" it, it means that proving that P!=NP IS A SOLUTION. And that won't help you to solve "every protection algorithm in polynomial time".
Even if you proved that P=NP, and, say, RSA can be cracked in O(P(n)), it could still take a very long time to crack it, even with massive parallel efforts.
O(P(n)), means that There are some m,r, that, for all n>m, r.P(n)>(the time of your algorithm for n bits).
That indicates several things: * if m>(bits in RSA), the upper bound (r.P(n))in the solving time of that algorithm is not useful * if r=bignum, and P(n)=x^bignum2, that only says that the cracking time is polynomial, but it could take bignum.x^bignum2 time units... and that could be a looong time (even with all the computer power of today acting together).
The law says that the license must allow the user to be able to redistribute the software under the sme license [but not necessarily force it]. i.e., BSD license is allowed by the law
It's an interesting proposal to add to the law, the requirement of the use of standard public formats. That would avoid the problem you wrote about.
I am one of the people suppoting this law in Argentina.
I agree with you: I think Free Software will win in the end because of superiority.
But meanwhile, *my* public records (and records from other Argentinian citizens, and most people in the world) are being handled by propietary software. That is a security risk for me, so as a citizen I am claiming for a right to know what the hell is the software doing with my data, even if that data is mantained by the state.
Note that the preceding point is valid, even if free software doesn't win in the long rang, even if it is more expensive, and even if it works worse.
Argentina is not (yet) part of the FTAA. Eventually it could be (there's a big debate about that), so thanks for the information, I'll try to find out how it would affect the law.
Yes it is. it is libre (free speech). Several times is not gratis (free beer). But that's not a news flash, RMS, keeps saying that since '83.
That's another interesting point.
There's a discussion going on about what kind of responsability would assume law breakers. Several lawyers have told us it's a quite complex issue.
I'm interested in your opinions
That would be a consequence of using Free Software, because most FS stores the data in standard formats. Even when it doesn't, you have the source code, so you can write another program that reads the data, and/or converts it to an standard data format
It affects the citizens, indirectly.
All your tax records, for example, are manipulated by government software, that would be affected by the law.
And to a lesser extent, the Federal Disctrict of Mexico, for educational institutions.
> The law probably ought to contain some kind of
> back door-- like, something where a person at a
> state university can appeal this law and be
> given an exception based on usage of free
> software being unreasonable given a lack of
> free software alternatives to a closed source
> program they need to use--
That's true. We're discussing alternatives for setting a method of providing exceptions and proposing it for the law. We have a couple of suits and lawyers assisting us; but it's a complex matter (how to ensure that there won't be a lot of exceptions request annd the law will finish ignored). I'm interested in feedback about this...
Daniel - TrixX
There seems to be a confusion about this.
The law states that software used by the state must be Free Software
That means, it doesn't disallow a propietary, profit-based software industry. It just limits the range of applications that the National Administrartion can use. This would benefit the state (perhaps a reduction of software costs, but more probably, improve quality and security, and avoid technological dependence)
As said in a previous reply, the law covers just government use.
A law is needed because presently, state resources are trapped inside propietary applications and data formats. It's a must to get out of that trap, but there's a lot of effort involved. A law would make possible the enforcing of such a policy.
Software used by the state manipulates information about citizens (tax records, for example). That manipulation should be public, the same way that the national budget is public, the laws are public, etc.
The financial savings are not the biggest benefit. I realize that there will be a huge pice to pay in training and development, that could be similar to the cost of propietary licenses.
But there are strong arguments for government use fo free software, like "National Security" (because the ability to guarantee no backdoors), "Technological independence" (remember that this is a 3rd world country, and propietary software involves depending on a foreign corporation), and "Control of information" (Citizens may be harmed when their public records are stored ("kidnapped") into propietary file formats)
There's a meeting next week with the congress commission discussing this law and a a local geek was invited to give advice. We (we=people that has promoted this law and is trying to move it forward) are interested in interesting opinions about how the law might be improved, so he can propose them.
Please, comments wanted. Let's hack a bug-free law together!
Thanks,
Daniel (TrixX)
hispanoamerican speech in Guanajuanto and Rio are quite different, specially because Rio is in Brazil and people there speaks Portuguese.
I haven't ever written/read/used programs in FORTRAN, but I've done somo programming in Eiffel, and programs look a little Eiffel-like...
That shouldn't be surprising, because it's intended to give C programmers some Eiffel-like features.
Why?
Because a lot of people are forced to program in C...
I'm not a fan of C, the library has some horrid things (like routines without buffer-overrun checking), and the language is very low level. But when working with other people, sometimes C is a necessary evil
What to do? You can get some higher level programming using BetterC, a C library that gives you Eiffel-like exception checking with a minimum efficience penalty, and without leaving your favorite C compiler.
It's my Nirvana, I don't use debuggers anymore...
This is a language-level problem...
A warning like this in a C compiler should appear every time you do an array access, unless the array size and the index are constants.
A compiler could implement bound-checks, but I guess a lot of code will stop working, because some programs use "off-buffer access" as a feature.
In my university (not in the US), the Computer Science Carreer is taught this way:
First semester: Calculus, Number Theory, Logic, Group Algebra, Graphs, Automathon Theory, Grammars... (some of this topics are just overviewed, others are studied more deeply).
That gives a good mathematical basis; in the second semester, in the course named "Algorithms & Data structures", first programming is taught... in Haskell. With goods maths, that is very easily understood, the language is not an obstacle. We do some formal derivations and that... after Haskell, we learn to translate (ugly word in programming) that into imperative (Pascal).
So, functional, in my experience is not "innately harder", as I see a lot of people getting used more to that than to imperative (Pascal, or C, given later), it's just an issue of getting used to it.
StarOffice is quite memory-consuming (but it is not a serious load on the processor... better than M$ in that sense).
But Star Office is efficient in a network environment, running in a server and displayed locally...
The first soffice session you open consumes about 30/40MB... then, each additional session is just 2MB more. (that means, with a 128MB server you can have several of users, with 512MB, a lot).
just a note:
/bin/sh. That means you need a shell to run any program that uses system()
You cannot build a shell just with calls to system(); all that system() does is exec'ing
This program (if you get to compile it) is provided with the following warranty:
The program foobar-0.42 (referred as "the free software") will do at least one of the following
+ Do what the documentation states (I promise I'll document it soon).
+ Get loaded by your OS
+ Produce a core dump
If the free software fails to meet any of these three goals, you'll get a full refund, equivalent to the cost of receiving the free software downloaded freely from my site.
Most comments I've read here talk about open source.
That's an advantage, but not the only one.
You have:
* flexibility: scripting, make, and that kind of tools allow you to easy recompile a project, tweak all the compile-time options comfortably and easily. Command line tools are MUCH more flexible than their GUI counterparts
* stability: When coding, you have to usually test a program. It's quite possible that your program will have bugs on the first run, so it will hang. I prefer having a core dump instead of having to reboot my machine
* language/compiler availability
* codebase availability: It's quite usual to find some code that already does what you want, or part of it.
* documentation: Documentation is usually much better in open source environments. And when that fails, RTFS....
* portability: most linux libs are standard based, and much more easily portable to windows (or other unices) than windows libs...
x=142857
1*x=142857
3*x=428571
2*x=285714
6*x=857142
4*x=571428
5*x=714285
(If you don't get it, try to look at the diagonals...)
oh, and
7*x=999999
and obviously, 1/7=0.142857 142857 142857...
First point: By "solving" it, it means that proving that P!=NP IS A SOLUTION. And that won't help you to solve "every protection algorithm in polynomial time".
Even if you proved that P=NP, and, say, RSA can be cracked in O(P(n)), it could still take a very long time to crack it, even with massive parallel efforts.
O(P(n)), means that
There are some m,r, that, for all n>m, r.P(n)>(the time of your algorithm for n bits).
That indicates several things:
* if m>(bits in RSA), the upper bound (r.P(n))in the solving time of that algorithm is not useful
* if r=bignum, and P(n)=x^bignum2, that only says that the cracking time is polynomial, but it could take bignum.x^bignum2 time units... and that could be a looong time (even with all the computer power of today acting together).