I find your comment very interesting. I'm apt to agree with you except on the last point, that we can no longer look to the past for pointers. I think the past supports your arguments better than you think.:)
Historically, nations and states have fallen because of internal issues such as greed, corruption, and laziness.
- We're greedy, so we outsource to save a buck (I mean, what business owner gives a fuck if his 3rd-world employees starve?).
- We rip off the same countries we outsource to, and ANY country we can for that matter, whenever we think we can get away with it.
- There is little keeping the US federal government in check, and we know they lie to their own people on many fronts, so we're left to assume they're lying to us in most cases. Power without restrictions or limitations corrupts, regardless of the governmental structure, be it democratic, communist, or any other.
I'm just not sure whether to laugh, cry, or cry out, as I watch history repeat itself all over again.
I know that the Creative Commons makes licenses for other types of creative works than software, but I can't help feeling when I look at the list of software licensing possibilities in this story (Public Domain, BSD, GPL, Shared Source, Proprietary) that there's something missing here that is present in the licensing options from the Creative Commons.
I would throw in another license between GPL and Shared that allows more than just a glance at the code (ie. use it, modify it, do what you need to with it), but restricts redistribution more than the GPL does. The problems with this gap being there are several:
This is how many companies license their software, but while the Open Source community is happy to applaud and welcome the Creative Commons, it leaves these companies out in the cold.
Sometimes other forms of limiting redistribution are necessary to a business model. The only legit way of limiting redistribution in Open Source (the GPL's "worm" or "cancer" clause;) only really works for things that would be extended or linked to, but "out-of-the-box" software doesn't make money that way.
I know that Open Source isn't about money-making, and that redistribution of some kind is one of the fundamental Open Source requirements, but (especially in this economy) programmers need to eat too. So while many of us are compelled to make our work "as Open as possible", we're kicked in the butt when we're told it's "not Open enough". This means that a company falling somewhere between GPL and Shared Source can't use either well-known moniker, and since it's software they're talking about, can't use the Creative Commons as a point of reference either. I feel that one of the benefits of being Open Source is the reputation that comes along with it, one of not "locking people in".
So I guess my question is, why the double-standard? Or is Open Source just missing that gap and either a) willing to include qualifying Creative Commons-like licenses or b) willing to clarify its stance on the licenses of the Creative Commons?
Copyrights only exist to create artifical monopolys that do not exist!
No, licenses exist to protect the copyrights of the creator. Laws also exists to protect the fair use rights of the licensee. The fact of the matter is that the creator has the right to decide what he wants you to be allowed to do with his work. That is not a "monopoly" on his work, it's called ownership. But the law also says that certain rights must be granted to the licensee, such as the right to make personal copies (ie. for backup or use on another device of their own).
As to your other points: No it is NOT okay for a 14-year-old to violate copyright agreements with the RIAA/MPAA, just as it is not okay for Castle Tech. to do the same with the Linux Kernel. However, with "laws" like the DMCA which fly in the face of the American constitution, we take just issue. So your statement could be reversed to say that if the RIAA wants their licenses to be respected, they should respect our fair use rights as well.
Good point about success measurement. OpenBSD was also the project that gave us the widely used OpenSSH. OpenBSD may not get the commercial backing Linux does, but it's still an important project which has produced features and ideas that other projects now benefit from as well.
I think this is one of the aims of the Arch project (I can't post the link now because I can't find Arch's new home on Google... strange. I'll have to do it later when I'm on my own machine). It's a shame Arch doesn't get more publicity/support, it's an interesting project.
Interesting points. Isn't Perl well-regarded in academic circles though? I thought it was doing quite well in areas like bioinformatics...
I think your point #2 is also exactly the reason why practical people love Perl. At first glance, it makes Perl a horrible read, but after you know what those symbols do, they're perfect. People think in symbols and patterns (judging from many popular alphabets at least), and learning a new set of symbols is a lot easier than it sounds. We do it all the time without knowing it (street signs, washroom signs, colours, icons, the washing instructions on the tag of your shirt, etc).
That's exactly what always turned me off from Java. There's one spot in the Sun Java book (Core Java Vol 2) I have that compares equivalent code between C, Perl, and of course Java. The code implements a proxy server. The C code is the longest, pretty ugly, but fast as hell I'm sure. The Perl code is the shortest, not very complex, and relies on a regular expression to parse the request. The Java code isn't much shorter than the C code, plus it's THICK code (you know how Java programs have variablesThatDescribeEveryLittleThingAboutThem). Of course, they sum it up with a quick little explanation of how the C code is too long, the Perl code they describe as "completely unreadable", and show the example of the one regular expression in the Perl code to back this up. They try to explain this line of code then add in parentheses "No, we didn't figure that out ourselves. Like everybody else, we copied it from another script."
WTF is that? There was one -- ONLY ONE -- regular expression in the entire Perl script. But of course since the authors will be appealing to people they figure won't understand regular expressions yet, they can win them over by pointing out the ugliness of that one line.
I nearly burnt the book after reading that one (I collect old books, so that expression doesn't come lightly to me). If you Java advocates want to win people over, you should start doing it on the merits of the language, not by bashing others. It just makes you look ignorant.
I can code "enterprise" apps in lots of languages other than Java (and no, they aren't C#, C#, and C#). It comes down to the right tool for the job, and each language has merit. That's why Perl isn't far behind Java, and C is still popular today, so many years later.
I was talking with my marketing/sales guys about Wiki not long ago. I fell in love with Wiki long ago, and I think it is hugely useful for exactly what you describe. However, we seem to have trouble conveying Wiki as a solution to clients, and I wondered why they seemed to almost tune out of the idea. You start with the benefits, of course, but then when the question "how?" is posed and you're stuck explaining the concept, they're gone.
Wiki is not a familiar concept for them yet, so they try to avoid it. They fear they couldn't understand it because it's too technical, when it is just that the explanation is too conceptual.
What I'm starting to think Wiki needs is a phrase or one-liner that helps people visualize what it is/does/and what benefits it has, so that they just get it.
For example, ten years ago a web forum might not have made sense in the minds of a lot of people, but if you mention a web forum now they have a clear picture in their heads of this hierarchy of discussion. It makes sense. So you can say "it's like a web forum with..." and add your cool twist to it. People will listen, understand, and go for it.
Wiki still needs that, and when it does I think it'll take off like crazy (in the business world, outside of Open Source and software-related sites).
Anyone noticing? This news made/. about a month ago (too lazy to search for the link, sorry but DIY) when it was being proposed. I wrote to three MPs myself about it to say what I thought of it. The problem isn't a lack of the government making itself outwardly known, it's that too many citizens don't give a fuck. With something like a voting percentile of 20%, and a "what's in it for me" attitude, we're sure to look more and more like America soon enough.
Note: OTOH, there are lots of us Canucks who DO care and DO take interest as well as action, which can be said about any country I'm sure.
When the deadline of a project is shortened, your human resources are capped, and you can't cut back on the quality (any further), there's nothing left but scope. Tell them to take their pick, or make recommendations. Tell them you'll have to push some of the functionality back into a "phase two".
On the CCK project site, it's also saying they need more help, especially in the area of cross-platform support. Perhaps since the poster's network is multi-platform, he could help out with the necessary changes that might be missing (which could be big or small, but I'd be guessing to say) and with getting better cross-platform support in CCK. The benefit would very much be mutual, between himself and everyone else who might need CCK for the same purpose. Plus, for his volunteered efforts, I'm sure the other more experienced volunteers would be more than happy to throw him a line when he gets stuck along the way.
I agree. I always thought SMS had more of a use for things like urgent notifications when something goes wrong on your systems.
We're even adding SMS capabilities to our software (a web CMS) for such reasons, which will let the system notify the admin of hack attempts, error messages, support requests from confused users, things like that.
I find that mildly useful. Nothing to pose like you're in an IBM ad over, but mildly useful.
Marketing a service like this to teens ("Your girlfriend won't you on your vbox during the chick flick you agreed to see") is stupid.
a) You went to the chick flick to get a piece.
b) No teen is going to bother punching in messages on that tiny little keyboard (or worse, via up & down scroll buttons) to tell their friend a dirty joke or that they think they're gonna get some tonight.
Try is_int() or is_numeric(). The latter will return true for strings that are all number as well (ie. '123').
You can also convert that string to a number via:
$num = (int) $num;
Validation/filtration is pretty easy in PHP. I agree though, the tutorials usually don't provide enough references as to what functions are useful. Regexes can only take you so far (quite far albeit) before your application shows a noticeable drop in performance.
It would be nice to see PHP Security added to the list of topics.
They all seem to love to learn, about anything and everything.
Ain't that the definition of a hacker?:)
I've had discussions with friends about the girl/boy academic comparisons, and some girls I know who went to an all-girl high school had some interesting "facts" (you know when you read something but you can't remember where you saw it when someone asks "where'd you read that?"), namely that girls did better in Math than guys when they were in an all-girl class, but worse when they were in a coed class. I thought that was an interesting statistic.
Personally, I think women are equally capable in any area, and that it comes down to the individual anyway. As for interests, maybe there's something CS programs do to disuade women from entering. I doubt there's less interest in actuality, and in one web development course here in town (Internet Systems Specialist at the U of Winnipeg Continuing Education) I remember the ratio being much closer to 50/50 than 90/10.
Maybe those of us who are interested in unusual programming solutions and trying to take our skills to the limit in order to improve.
You could say he might as well program in befunge too. I'm inclined to agree. But love it or hate it, those Perl hackers "do it like nobody does", and that deserves props.:)
I develop software in PHP, and until gettext is built into PHP by default, and that gettext-enabled version has become common, then I'm forced to reinvent the gettext functionality in my own system. This is because I want the largest number of PHP users to be able to try and potentially buy my software.
The nice thing is that the gettext concept is really simple, and using essentially just a serialize()/unserialize() combination on an associative array can work just as well.
Printf() support can be had, or some sort of regex-based named substitution mechanism, and printf() %s's can be ordered by using %1\$s, %2\$s instead (ugly, but it works).
I haven't taken any university schooling yet, but when I do I plan to take philosophy, psychology, history and theatre history specifically, and lots of stuff like that.
In addition to being a self-taught programmer, I'm also a self-taught musician, and my strongest subject back in high school was always English. I took comp sci courses in high school that were flooded with math/science geniuses (I went to an "extended ed" school, so we had lots of "gifted" math kids), and the teacher in the comp sci courses doubled as a math teacher. I never had to study the comp sci stuff, and year after year I was tied for the highest mark in the class. None of them could understand how I did it, and I got a fair bit of hostility as a result, but I understand it completely now. They call them programming LANGUAGES because that's what they are. I also excelled in French and finished grade 13 French (OAC, an Ontario thing that's gone now) in grade 10.
Through my somewhat unorthodox approach to programming that I've development a reputation in the local programming community (now in Winnipeg, Manitoba), and I'm quite sought after. I now run my own software company, and I've started performing music in local coffee shops again. I've had a great response to both of these endeavours.
I'm sure I would be 10x more in demand abroad if I had a masters in comp sci/something cool, but I'm only 21, and I've only been a professional programmer for 3 or 4 years (I left high school early, and threw myself into programming a little early by moving to a new province by myself), and so far I've felt completely unaffected by any dot-com burst or economy shift. I'm quite confident that us naturals will always be in demand.
Aside from searching for music, I can see this being really useful in web conferencing software. Consider this:
You hold a meeting where each person's channel was recorded and stored as part of the meeting info. Upon saving the meeting minutes, the software builds a phonetic index of the entire conversation.
Searches later on would be no more taxing on the server than a fulltext search in MySQL is now.
Useful? Definitely. And that's just one possibility.
I find your comment very interesting. I'm apt to agree with you except on the last point, that we can no longer look to the past for pointers. I think the past supports your arguments better than you think. :)
Historically, nations and states have fallen because of internal issues such as greed, corruption, and laziness.
- We're greedy, so we outsource to save a buck (I mean, what business owner gives a fuck if his 3rd-world employees starve?).
- We rip off the same countries we outsource to, and ANY country we can for that matter, whenever we think we can get away with it.
- There is little keeping the US federal government in check, and we know they lie to their own people on many fronts, so we're left to assume they're lying to us in most cases. Power without restrictions or limitations corrupts, regardless of the governmental structure, be it democratic, communist, or any other.
I'm just not sure whether to laugh, cry, or cry out, as I watch history repeat itself all over again.
I know that the Creative Commons makes licenses for other types of creative works than software, but I can't help feeling when I look at the list of software licensing possibilities in this story (Public Domain, BSD, GPL, Shared Source, Proprietary) that there's something missing here that is present in the licensing options from the Creative Commons.
I would throw in another license between GPL and Shared that allows more than just a glance at the code (ie. use it, modify it, do what you need to with it), but restricts redistribution more than the GPL does. The problems with this gap being there are several:
I know that Open Source isn't about money-making, and that redistribution of some kind is one of the fundamental Open Source requirements, but (especially in this economy) programmers need to eat too. So while many of us are compelled to make our work "as Open as possible", we're kicked in the butt when we're told it's "not Open enough". This means that a company falling somewhere between GPL and Shared Source can't use either well-known moniker, and since it's software they're talking about, can't use the Creative Commons as a point of reference either. I feel that one of the benefits of being Open Source is the reputation that comes along with it, one of not "locking people in".
So I guess my question is, why the double-standard? Or is Open Source just missing that gap and either a) willing to include qualifying Creative Commons-like licenses or b) willing to clarify its stance on the licenses of the Creative Commons?
Copyrights only exist to create artifical monopolys that do not exist!
No, licenses exist to protect the copyrights of the creator. Laws also exists to protect the fair use rights of the licensee. The fact of the matter is that the creator has the right to decide what he wants you to be allowed to do with his work. That is not a "monopoly" on his work, it's called ownership. But the law also says that certain rights must be granted to the licensee, such as the right to make personal copies (ie. for backup or use on another device of their own).
As to your other points: No it is NOT okay for a 14-year-old to violate copyright agreements with the RIAA/MPAA, just as it is not okay for Castle Tech. to do the same with the Linux Kernel. However, with "laws" like the DMCA which fly in the face of the American constitution, we take just issue. So your statement could be reversed to say that if the RIAA wants their licenses to be respected, they should respect our fair use rights as well.
Also, how many companies are willing to invest the required amount of time into user testing and GUI guideline-adherance?
None around here, that's for sure, and it's a damn shame too.
not that Opera Software needs help, seven holes found in one week seems a bit severe
Seven holes fixed within 24 hours of being found is pretty tight though.
No, Canada. :)
Good point about success measurement. OpenBSD was also the project that gave us the widely used OpenSSH. OpenBSD may not get the commercial backing Linux does, but it's still an important project which has produced features and ideas that other projects now benefit from as well.
Found it!
http://www.fifthvision.net/open/bin/view/Arch
Maybe distributed CVS should be next?
I think this is one of the aims of the Arch project (I can't post the link now because I can't find Arch's new home on Google... strange. I'll have to do it later when I'm on my own machine). It's a shame Arch doesn't get more publicity/support, it's an interesting project.
Interesting points. Isn't Perl well-regarded in academic circles though? I thought it was doing quite well in areas like bioinformatics...
I think your point #2 is also exactly the reason why practical people love Perl. At first glance, it makes Perl a horrible read, but after you know what those symbols do, they're perfect. People think in symbols and patterns (judging from many popular alphabets at least), and learning a new set of symbols is a lot easier than it sounds. We do it all the time without knowing it (street signs, washroom signs, colours, icons, the washing instructions on the tag of your shirt, etc).
That's why we both put it in quotes. :)
That's exactly what always turned me off from Java. There's one spot in the Sun Java book (Core Java Vol 2) I have that compares equivalent code between C, Perl, and of course Java. The code implements a proxy server. The C code is the longest, pretty ugly, but fast as hell I'm sure. The Perl code is the shortest, not very complex, and relies on a regular expression to parse the request. The Java code isn't much shorter than the C code, plus it's THICK code (you know how Java programs have variablesThatDescribeEveryLittleThingAboutThem). Of course, they sum it up with a quick little explanation of how the C code is too long, the Perl code they describe as "completely unreadable", and show the example of the one regular expression in the Perl code to back this up. They try to explain this line of code then add in parentheses "No, we didn't figure that out ourselves. Like everybody else, we copied it from another script."
WTF is that? There was one -- ONLY ONE -- regular expression in the entire Perl script. But of course since the authors will be appealing to people they figure won't understand regular expressions yet, they can win them over by pointing out the ugliness of that one line.
I nearly burnt the book after reading that one (I collect old books, so that expression doesn't come lightly to me). If you Java advocates want to win people over, you should start doing it on the merits of the language, not by bashing others. It just makes you look ignorant.
I can code "enterprise" apps in lots of languages other than Java (and no, they aren't C#, C#, and C#). It comes down to the right tool for the job, and each language has merit. That's why Perl isn't far behind Java, and C is still popular today, so many years later.
I like it. It appeals strongly to the idealist in me. :)
I was talking with my marketing/sales guys about Wiki not long ago. I fell in love with Wiki long ago, and I think it is hugely useful for exactly what you describe. However, we seem to have trouble conveying Wiki as a solution to clients, and I wondered why they seemed to almost tune out of the idea. You start with the benefits, of course, but then when the question "how?" is posed and you're stuck explaining the concept, they're gone.
Wiki is not a familiar concept for them yet, so they try to avoid it. They fear they couldn't understand it because it's too technical, when it is just that the explanation is too conceptual.
What I'm starting to think Wiki needs is a phrase or one-liner that helps people visualize what it is/does/and what benefits it has, so that they just get it.
For example, ten years ago a web forum might not have made sense in the minds of a lot of people, but if you mention a web forum now they have a clear picture in their heads of this hierarchy of discussion. It makes sense. So you can say "it's like a web forum with..." and add your cool twist to it. People will listen, understand, and go for it.
Wiki still needs that, and when it does I think it'll take off like crazy (in the business world, outside of Open Source and software-related sites).
Anyone noticing? This news made /. about a month ago (too lazy to search for the link, sorry but DIY) when it was being proposed. I wrote to three MPs myself about it to say what I thought of it. The problem isn't a lack of the government making itself outwardly known, it's that too many citizens don't give a fuck. With something like a voting percentile of 20%, and a "what's in it for me" attitude, we're sure to look more and more like America soon enough.
Note: OTOH, there are lots of us Canucks who DO care and DO take interest as well as action, which can be said about any country I'm sure.
When the deadline of a project is shortened, your human resources are capped, and you can't cut back on the quality (any further), there's nothing left but scope. Tell them to take their pick, or make recommendations. Tell them you'll have to push some of the functionality back into a "phase two".
On the CCK project site, it's also saying they need more help, especially in the area of cross-platform support. Perhaps since the poster's network is multi-platform, he could help out with the necessary changes that might be missing (which could be big or small, but I'd be guessing to say) and with getting better cross-platform support in CCK. The benefit would very much be mutual, between himself and everyone else who might need CCK for the same purpose. Plus, for his volunteered efforts, I'm sure the other more experienced volunteers would be more than happy to throw him a line when he gets stuck along the way.
Time to put my tinfoil hat back on. I named mine 'Jimmy'. :)
I agree. I always thought SMS had more of a use for things like urgent notifications when something goes wrong on your systems.
We're even adding SMS capabilities to our software (a web CMS) for such reasons, which will let the system notify the admin of hack attempts, error messages, support requests from confused users, things like that.
I find that mildly useful. Nothing to pose like you're in an IBM ad over, but mildly useful.
Marketing a service like this to teens ("Your girlfriend won't you on your vbox during the chick flick you agreed to see") is stupid.
a) You went to the chick flick to get a piece.
b) No teen is going to bother punching in messages on that tiny little keyboard (or worse, via up & down scroll buttons) to tell their friend a dirty joke or that they think they're gonna get some tonight.
Try is_int() or is_numeric(). The latter will return true for strings that are all number as well (ie. '123').
You can also convert that string to a number via:
Validation/filtration is pretty easy in PHP. I agree though, the tutorials usually don't provide enough references as to what functions are useful. Regexes can only take you so far (quite far albeit) before your application shows a noticeable drop in performance.
It would be nice to see PHP Security added to the list of topics.
They all seem to love to learn, about anything and everything.
Ain't that the definition of a hacker? :)
I've had discussions with friends about the girl/boy academic comparisons, and some girls I know who went to an all-girl high school had some interesting "facts" (you know when you read something but you can't remember where you saw it when someone asks "where'd you read that?"), namely that girls did better in Math than guys when they were in an all-girl class, but worse when they were in a coed class. I thought that was an interesting statistic.
Personally, I think women are equally capable in any area, and that it comes down to the individual anyway. As for interests, maybe there's something CS programs do to disuade women from entering. I doubt there's less interest in actuality, and in one web development course here in town (Internet Systems Specialist at the U of Winnipeg Continuing Education) I remember the ratio being much closer to 50/50 than 90/10.
Maybe those of us who are interested in unusual programming solutions and trying to take our skills to the limit in order to improve.
:)
You could say he might as well program in befunge too. I'm inclined to agree. But love it or hate it, those Perl hackers "do it like nobody does", and that deserves props.
I develop software in PHP, and until gettext is built into PHP by default, and that gettext-enabled version has become common, then I'm forced to reinvent the gettext functionality in my own system. This is because I want the largest number of PHP users to be able to try and potentially buy my software.
The nice thing is that the gettext concept is really simple, and using essentially just a serialize()/unserialize() combination on an associative array can work just as well.
Printf() support can be had, or some sort of regex-based named substitution mechanism, and printf() %s's can be ordered by using %1\$s, %2\$s instead (ugly, but it works).
I agree 100%!
I haven't taken any university schooling yet, but when I do I plan to take philosophy, psychology, history and theatre history specifically, and lots of stuff like that.
In addition to being a self-taught programmer, I'm also a self-taught musician, and my strongest subject back in high school was always English. I took comp sci courses in high school that were flooded with math/science geniuses (I went to an "extended ed" school, so we had lots of "gifted" math kids), and the teacher in the comp sci courses doubled as a math teacher. I never had to study the comp sci stuff, and year after year I was tied for the highest mark in the class. None of them could understand how I did it, and I got a fair bit of hostility as a result, but I understand it completely now. They call them programming LANGUAGES because that's what they are. I also excelled in French and finished grade 13 French (OAC, an Ontario thing that's gone now) in grade 10.
Through my somewhat unorthodox approach to programming that I've development a reputation in the local programming community (now in Winnipeg, Manitoba), and I'm quite sought after. I now run my own software company, and I've started performing music in local coffee shops again. I've had a great response to both of these endeavours.
I'm sure I would be 10x more in demand abroad if I had a masters in comp sci/something cool, but I'm only 21, and I've only been a professional programmer for 3 or 4 years (I left high school early, and threw myself into programming a little early by moving to a new province by myself), and so far I've felt completely unaffected by any dot-com burst or economy shift. I'm quite confident that us naturals will always be in demand.
Aside from searching for music, I can see this being really useful in web conferencing software. Consider this:
You hold a meeting where each person's channel was recorded and stored as part of the meeting info. Upon saving the meeting minutes, the software builds a phonetic index of the entire conversation.
Searches later on would be no more taxing on the server than a fulltext search in MySQL is now.
Useful? Definitely. And that's just one possibility.