...making Linux just a little more fun!
Aviongoo Sales [sales at aviongoo.com]
Jim,
I'm looking for a "simple" client server solution. I just want to upload files from my PC to my server under program control.
The client is Windows XP and the server is Linux.
I was recently forced to write a VB application to collect files on the Windows PC. Now, I need to upload the files to my Linux server. I usually use FileZilla, however, there is no easy accepted way to automate the queue building process in Filezilla, therefore manual intervention is still required.
I need to get rid of all manual intervention.
My old PHP applications had a custom server to server file transfer implemented. So, I can use that solution on the server if the client were cooperative. I setup up an Apache server on the PC client but dynamic DNS is no longer allowed by my ISP (as far as I can determine).
So, I started looking for a simple custom program solution. VB.NET was my first choice since I can reuse alot of my recently developed code.
I've looked for days (weeks) now and tried 20 or so pieces of code that claimed to allow client to server file transfer. None have worked so far.
So, the challenge is this - come up with a solution (preferably PHP on Linux and VB.NET on Windows) that a programmer can implement in five minutes that will upload a file from the VB.NET Windows client machine to the PHP Linux server machine. I just want to copy the code and have it work. I can't believe it's that hard!!!!
If you get something to work and document it well, I've got to believe millions of folks will be viewing your result. The various search terms I use in Google to try to discover a solution indicate millions are looking!
Thanks, Bill
Paul Sephton [paul at inet.co.za]
On Mon, 2009-06-15 at 01:10 -0400, Aviongoo Sales wrote:
> Jim, > > I'm looking for a "simple" client server solution. I just want to > upload files from my PC to my server under program control. > > The client is Windows XP and the server is Linux. > > I was recently forced to write a VB application to collect files on > the Windows PC. Now, I need to upload the files to my Linux server. > I usually use FileZilla, however, there is no easy accepted way to > automate the queue building process in Filezilla, therefore manual > intervention is still required. > > I need to get rid of all manual intervention. > > My old PHP applications had a custom server to server file transfer > implemented. So, I can use that solution on the server if the client > were cooperative. I setup up an Apache server on the PC client but > dynamic DNS is no longer allowed by my ISP (as far as I can > determine). > > So, I started looking for a simple custom program solution. VB.NET > was my first choice since I can reuse alot of my recently > developed code. > > I've looked for days (weeks) now and tried 20 or so pieces of code > that claimed to allow client to server file transfer. None have > worked so far. > > So, the challenge is this - come up with a solution (preferably PHP on > Linux and VB.NET on Windows) that a programmer can implement in five > minutes that will upload a file from the VB.NET Windows client machine > to the PHP Linux server machine. I just want to copy the code and > have it work. I can't believe it's that hard!!!! > > If you get something to work and document it well, I've got to believe > millions of folks will be viewing your result. The various search > terms I use in Google to try to discover a solution indicate millions > are looking! > > Thanks, > Bill
I can't help thinking this is a bit of a troll.
There are several solutions, but the easiest that comes to mind is to use SAMBA as the server, and simply copy the file.
Ben Okopnik [ben at linuxgazette.net]
On Mon, Jun 15, 2009 at 01:10:14AM -0400, Aviongoo Sales wrote:
> Jim,
I suspect that you were trying to contact Jim Dennis. A number of years have passed since then: Jim is no longer associated with LG (although he's always welcome here), and the Linux Gazette now has The Answer Gang instead of The Answer Guy. We do, however, still answer Linux-related (and sometimes other) questions.
> I'm looking for a "simple" client server solution. I just want to upload files > from my PC to my server under program control. > > The client is Windows XP and the server is Linux.
[...]
> So, the challenge is this - come up with a solution (preferably PHP on Linux > and VB.NET on Windows) that a programmer can implement in five minutes that > will upload a file from the VB.NET Windows client machine to the PHP Linux > server machine. I just want to copy the code and have it work. I can't > believe it's that hard!!!!
So... you're looking for a solution to a problem in a Windows application, written in a proprietary (Windows-only) programming language. So far, so good.
May I ask why you're asking that question of the Linux Gazette? It does not seem likely to produce results.
Now, had you asked that question about a Linux application, the answer would be trivial: e.g., a cron job that will run a shell script to tar up a bunch of files and then FTP (or rsync, or whatever) the tarball elsewhere. Case closed, problem solved.
> If you get something to work and document it well, I've got to believe millions > of folks will be viewing your result. The various search terms I use in Google > to try to discover a solution indicate millions are looking!
So, Aviongoo Sales (some parents should be shot. I'm just sayin'.) - since you are, theoretically, a VB programmer, why don't you study the language a bit more, come up with a solution, and sell it to all those people clamoring for a solution? Given that there are millions of them, you're sure to make out quite well.
-- * Ben Okopnik * Editor-in-Chief, Linux Gazette * https://LinuxGazette.NET *
Robos [robos at muon.de]
Am 15.06.2009 7:10 Uhr, schrieb Aviongoo Sales:
> Jim, > I'm looking for a "simple" client server solution. I just want to upload > files from my PC to my server under program control. > The client is Windows XP and the server is Linux. > I was recently forced to write a VB application to collect files on the > Windows PC. Now, I need to upload the files to my Linux server. I > usually use FileZilla, however, there is no easy accepted way to > automate the queue building process in Filezilla, therefore manual > intervention is still required. > *I need to get rid of all manual intervention.*
Hi Bill, I'd go with rsync and a ssh connection with a pre-shared key. That you can easily trigger from various scripts and it builds the file list itself. There are lots of howtos on the net or come back if you need more help, regards Udo 'robos' Puetz
Ben Okopnik [ben at linuxgazette.net]
Hi, Bill -
[Please remember to CC the list the next time. We'd all really apreciate it if you didn't top post, either.]
----- Forwarded message from Aviongoo Sales <sales@aviongoo.com> -----
> Ben, > > I love PHP. Unfortunately not all people do.
I teach the stuff - just came back from a week of teaching an advanced course at a major insurance company - and I don't love it at all. PHP is, in my opinion, unforgivably buggy, has way too many functions and way too little flexibility, makes it too easy to write bad code, and has too few testing/validation tools. It's relatively easy to learn/use initially, but it quickly runs out of power; it uses a horribly-broken imitation of OO which is missing much of the point of OO methodology, and it is responsible for more than a third of all vulnerabilities in the National Vulnerability Database last year (it was almost half of all vulns back in 2006.) The only way to make it even marginally better requires using a closed-source app with a truly weird licensing scheme (Zend), and even that solution is less than wonderful.
In essence, PHP reminds me of those brightly-colored ices that are sold by ice cream trucks: they're pretty and sweet and pleasant on a hot day, but in just a few minutes, they melt and run all over your clothes, staining them forever with potentially toxic chemicals.
But that could just be the result of intense contact with it over the past week. A month down the road, I'll probably have a somewhat milder opinion of it.
> I was forced into writing > part of a solution using VB.NET on a PC to connect to my PHP software on a > Linux server. > > And, I've already cobbled together a solution to meet my personal needs. > > However, the bigger issue remains the same. Before I developed my own > solution (I used command-line ftp code - MSDOS lives!!!!), I searched for a > "PHP-VB.NET solution". I can understand the Microsoft community not > wanting to provide a solution, however, I can not understand why the PHP > community would not document a solution! Throughout my searches I have > never discovered a "drop in the code and go" solution. > > I even have an Apache server and PHP installed on my PC - but that solution > does not work all the time. For example, currently my ISP seems to have > configured something so that Dynamic DNS does not work.
Why not configure your PC to connect to your server via, say, SSH and download the files that you want? At that point, it doesn't matter whether DynDNS works or not; as long as you have network connectivity, you'll have your files.
> So, in my mind it is a PHP community task to be able to talk to any client > - after all, PHP is primarily for servers. I especially think the PHP > community is missing the boat by not providing a simple seamless solution > to connect a Windows client to a Linux server.
Why do you consider that to be something that PHP should do? This is like saying that PHP should include a web browser: from some odd perspective, that may sound reasonable (after all, PHP is designed to work with the Web, it's a programming language, and so on), but in reality, it makes no sense at all.
> That's why I mentioned a > "5-minute" solution.
What I've suggested above won't take much more than that - assuming that you already have the tools installed on your machine.
> Because these days when you want to get a project > done, there is no time to search for hours for a solution. You either find > it from a search or build it yourself. But, when you build it yourself, it > is generally a custom solution. > > Are you telling me that a simple solution to programmatically upload a > single file from a VB.NET application to a PHP server is not somthing that > would be useful to the PHP community? I beg to differ!
If VB.NET supports something like a 'system' call, then you're already done. The PuttySSH site, for example (https://www.chiark.greenend.org.uk/~sgtatham/putty/) provides you with a Wind0ws version of 'scp'; that's really all you need.
-- * Ben Okopnik * Editor-in-Chief, Linux Gazette * https://LinuxGazette.NET *
Aviongoo Sales [sales at aviongoo.com]
[[[ Appended quotation, top-posting style, elided. -- Kat ]]]
Ben,
Sorry, but I have no idea what "We'd all really apreciate it if you didn't top post, either." means. So, if I've done it again please explain.
In my opinion, trying to teach PHP as an object-oriented language is simply wrong! PHP was not designed to be an object-oriented language and I do not use a CLASS in anything I develop. And, most of the PHP code I see implemented by others is not object-oriented either.
On the other hand when an advertisement specifically asks for a PHP5 person, I always ask if they have ever implemented object-oriented PHP. Often they are seeking a replacement for someone that has left them a whole bunch of PHP5 code they do not understand.
And, who in their right mind would use "->" for anything other than something to do with "minus" or "greater than"!!!!! Whomever did that in PHP development was just not thinking.
Of course, I've been writing PHP code for well over a decade so there was no attempt at object-orientation back then. I was previously a VB 6 programmer and before that I coded in ASM, BAL, Fortran, Algol, COBOL, APL, PL/I, C, C++ and several other languages. Out of all the languages my favorite is PHP. I love it because of all the functions that exist to do precisely what you need to accomplish. I hate to reinvent the wheel. I find PHP to be very flexible as a language on the server. There is not a server-based application development project where PHP can not be used.
You said, "Why not configure your PC to connect to your server via, say, SSH and download the files that you want?". The task I defined is UPLOAD not download. Secondly, I guess I am still not explaining myself well. I'll try again. I'll explain it in terms of 1) what I want to accomplish, and 2) what I want to do to achieve what I want to accomplish.
1) I want to implement a file upload program where a custom PC-based application can determine and specify the file to be uploaded at a specific time without human intervention 2) I want to go to Google and enter something like "vb.net code to upload a file to Linux server" (without quotes). I want working code to be displayed that I can copy and use. I want to have a solution implemented within five minutes (300 seconds) and no more.
As I said, I already have a solution. While I thank you for your "SSH" suggestion (I usually use PuTTY), and while I might develop a solution that uses SSH - your suggestion misses the point. Using "SSH" in a google search "code for programmatic use of SSH to upload a file to Linux server" does not come close to presenting me with code I can use.
Seriously, the key point is this - I find it incredible that after entering numerous Google, Bing, and Yahoo queries similar to "vb.net code to upload a file to Linux server" and not a single one has produced a result where I can copy and paste working vb.net code or even old vb code. When code was displayed it was usually in the form of a question i.e. "why doesn't this code work?".
I simply can not believe a working solution has not been documented and indexed in Google. But it hasn't!
And that is why I thought the Linux community would be interested. Since Linux is not close to replacing Windows client machines, at least Linux should want to make it easy for programmers to do basic client/server operations - such as implement a file upload under program control solution. I guess I was wrong that the Linux community would be interested.
PLEASE, ANYONE ON THIS LIST, DO NOT SEND ME A SOLUTION. I already have a working solution.
Thanks, Bill
Jason Wigg [jw5801 at gmail.com]
@#$ Reformatted slightly for legibility. -- Kat #$@
On 17/06/09 13:51, Aviongoo Sales wrote:
> Ben, > > Sorry, but I have no idea what "We'd all really apreciate it if you > didn't top post, either." means. So, if I've done it again please > explain.
Hi Bill,
Top posting is the usual form of business email reply (ie. keeping a complete copy of the email you're replying to after your reply). It doesn't play nicely with the archiving for this list, so it's preferred if you don't do it. If you are replying to a certain part of a message, quote it beforehand (as I've done here).
> 2) I want to go to Google and enter something like "vb.net code to > upload a file to Linux server" (without quotes). I want working code > to be displayed that I can copy and use. I want to have a solution > implemented within five minutes (300 seconds) and no more. > > As I said, I already have a solution. While I thank you for your > "SSH" suggestion (I usually use PuTTY), and while I might develop a > solution that uses SSH - your suggestion misses the point. Using > "SSH" in a google search "code for programmatic use of SSH to upload a > file to Linux server" does not come close to presenting me with code I > can use. > > Seriously, the key point is this - I find it incredible that after > entering numerous Google, Bing, and Yahoo queries similar to "vb.net > code to upload a file to Linux server" and not a single one has > produced a result where I can copy and paste working vb.net code or > even old vb code. When code was displayed it was usually in the form > of a question i.e. "why doesn't this code work?". > > I simply can not believe a working solution has not been documented > and indexed in Google. But it hasn't! > > And that is why I thought the Linux community would be interested. > Since Linux is not close to replacing Windows client machines, at > least Linux should want to make it easy for programmers to do basic > client/server operations - such as implement a file upload under > program control solution. I guess I was wrong that the Linux community > would be interested.
I think the answer to this one is simple, most people involved in the Linux community have a rather intense dislike for .NET based solutions. I don't understand why anyone would want to code in such a horrendous proprietary language which is completely useless away from Windows. I don't think the Linux community has any interest in coding in vb.net, hence why you won't be able to find a documented working solution using it.
Cheers, Jason
Rick Moen [rick at linuxmafia.com]
Quoting Jason Wigg (jw5801@gmail.com):
> On 17/06/09 13:51, Aviongoo Sales wrote:
Oops, you seem to have just droped querent from your distribution. Re-added.
> Top posting is the usual form of business e-mail reply (i.e., keeping a > complete copy of the e-mail you're replying to, after your reply).
I personally prefer the term "corporate-moron quoting style". ;->
However, line order is actually by far the less-significant aspect. The need to snip pointless quotation -- i.e., to lose all quoted upthread text except any bits actually needed as context for your individual comments -- is really the key bit. Even GMail users can accomplish that, albeit with difficulty, using a feature I believe is commonly called "the clipboard" and its "cut" function.
-- Cheers, Notice: The value of your Hofstadter's Constant Rick Moen (the average amount of time you spend each month rick@linuxmafia.com thinking about Hofstadter's Constant) has just McQ! (4x80) been adjusted upwards.
Ben Okopnik [ben at linuxgazette.net]
On Wed, Jun 17, 2009 at 02:20:32PM +1000, Jason Wigg wrote:
> Top posting is the usual form of business email reply (ie. keeping a > complete copy of the email you're replying to after your reply). It > doesn't play nicely with the archiving for this list, so it's preferred > if you don't do it. If you are replying to a certain part of a message, > quote it beforehand (as I've done here).
Jason -
You are, unfortunately, incorrect on several counts.
1) Top posting is not the usual form of business email. It is, however, the usual form of clueless email, business or otherwise (people who accept the default settings of Outlook, for example, have this kind of problem.)
2) It has nothing to do with archiving; frankly, Mailman doesn't care whether you top-post, post sideways, or in multiply-reversing curlicues, or even (the preferred approach on this list) if you reply according to the Netiquette Guidelines (RFC1855). Text is text, and writing that text out to a file is not influenced by any human-perceived order within it.
The actual problem with top-posting is that it breaks the continuity and flow of the conversation: in order to find out who said what, and in what order, you have to keep scrolling up and down repeatedly. People in technical forums, at the very least, consider top-posting to be extraordinarily rude, especially when asking for help. In fact, many people simply refuse to respond to a top-posted reply, no matter how urgent or pitiful it may sound. It is, therefore, strongly in the interest of the person making the request to obey this basic rule of netiquette.
3) I don't want to sound rude, but... before you start explaining to others how email etiquette works, perhaps you should take a look at your own writing. A blank line between paragraphs - i.e., before you begin your reply - is also one of the standard points of that etiquette.
> > And that is why I thought the Linux community would be interested. > > Since Linux is not close to replacing Windows client machines, at > > least Linux should want to make it easy for programmers to do basic > > client/server operations - such as implement a file upload under > > program control solution. I guess I was wrong that the Linux community > > would be interested. > I think the answer to this one is simple, most people involved in the > Linux community have a rather intense dislike for .NET based solutions.
Really? I think the Mono community, at the very least, would find your assertion rather shocking.
Linux, these days, encompasses much more than it used to.
-- * Ben Okopnik * Editor-in-Chief, Linux Gazette * https://LinuxGazette.NET *
Jason Wigg [jw5801 at gmail.com]
On 17/06/09 16:46, Ben Okopnik wrote:
> Jason - > You are, unfortunately, incorrect on several counts. > > 1) Top posting is not the usual form of business email. It is, however, > the usual form of clueless email, business or otherwise (people who > accept the default settings of Outlook, for example, have this kind of > problem.) >
I wouldn't completely rule it out offhand, it's useful if you wish to keep a record of the entire conversation current for whatever purpose but don't want the receiver to go wading through everything to find whatever new information it is that you are adding to the scenario.
> 2) It has nothing to do with archiving; frankly, Mailman doesn't care > whether you top-post, post sideways, or in multiply-reversing curlicues, > or even (the preferred approach on this list) if you reply according to > the Netiquette Guidelines (RFC1855). Text is text, and writing that text > out to a file is not influenced by any human-perceived order within it. > > The actual problem with top-posting is that it breaks the continuity and > flow of the conversation: in order to find out who said what, and in > what order, you have to keep scrolling up and down repeatedly. People in > technical forums, at the very least, consider top-posting to be > extraordinarily rude, especially when asking for help. In fact, many > people simply refuse to respond to a top-posted reply, no matter how > urgent or pitiful it may sound. It is, therefore, strongly in the > interest of the person making the request to obey this basic rule of > netiquette. >
All of these posts are available on the net, are they not? I meant merely that top posting would be even more inconvenient to read in an online archive than it would be in an email client. Personally I don't particularly mind if there's a bunch of junk after the meaningful content in an email, but if I have to scroll past it in a forum style layout, it's a right pain in the arse. I didn't mean that comment in any technical sense, merely taking the lack of readability as implied and extending from there.
> 3) I don't want to sound rude, but... before you start explaining to > others how email etiquette works, perhaps you should take a look at your > own writing. A blank line between paragraphs - i.e., before you begin > your reply - is also one of the standard points of that etiquette. >
My apologies for that, the formatting Thunderbird gave when writing the email looked like there was white space there when there wasn't, so I didn't notice until after I'd already sent.
>>> And that is why I thought the Linux community would be interested. >>> Since Linux is not close to replacing Windows client machines, at >>> least Linux should want to make it easy for programmers to do basic >>> client/server operations - such as implement a file upload under >>> program control solution. I guess I was wrong that the Linux community >>> would be interested. >>> >> I think the answer to this one is simple, most people involved in the >> Linux community have a rather intense dislike for .NET based solutions. >> > > Really? I think the Mono community, at the very least, would find your > assertion rather shocking. > > https://www.mono-project.com/ > > Linux, these days, encompasses much more than it used to. >
Perhaps I was exaggerating with `most'. I'm sure the Mono community would disagree, however to put the shoe on the other foot, Mono itself leaves a bad taste in the mouth of many, with all the legal greywater surrounding Moonlight and the use of it by anyone other than direct Novell customers. Personally I have the utmost respect for the Mono guys and hope they can bring a complete adaptation of the .NET platform to Linux, as it will make any desktop applications (the Wizards of the Coast D&D 4e Character Builder springs to mind) on it that much more easy to use for *nix customers. However, I don't really see the advantage of using .NET for portable applications at this stage, when one could sidestep all the legal issues and use something like Python, which already exists on the three main desktop platforms.
That's getting kind of off topic, so, opinions of .NET aside, I don't think `the Linux community' would be particularly interested in writing code for Windows client machines. Linux server vendors might be, but probably not the community at large. That's probably a better answer to the original statement.
Cheers, Jason
Ben Okopnik [ben at linuxgazette.net]
On Wed, Jun 17, 2009 at 05:53:53PM +1000, Jason Wigg wrote:
> On 17/06/09 16:46, Ben Okopnik wrote: > > Jason - > > You are, unfortunately, incorrect on several counts. > > > > 1) Top posting is not the usual form of business email. It is, however, > > the usual form of clueless email, business or otherwise (people who > > accept the default settings of Outlook, for example, have this kind of > > problem.) > > I wouldn't completely rule it out offhand, it's useful if you wish to > keep a record of the entire conversation current for whatever purpose > but don't want the receiver to go wading through everything to find > whatever new information it is that you are adding to the scenario.
"Wading" is just a bit hyperbolic, there: either setting your email client to place the cursor at the bottom of the email or holding the "Page Down" key for a second gets you to where the new content needs to be added. "Wading" would be having to scroll through all the previous emails, backwards, in order to see that history that's supposed to be so valuable.
> All of these posts are available on the net, are they not? I meant > merely that top posting would be even more inconvenient to read in an > online archive than it would be in an email client. Personally I don't > particularly mind if there's a bunch of junk after the meaningful > content in an email, but if I have to scroll past it in a forum style > layout, it's a right pain in the arse. I didn't mean that comment in any > technical sense, merely taking the lack of readability as implied and > extending from there.
It appears that your preferences run counter to those of the typical net fora. In any case, that's the preferred style here; hence, my request to "Aviongoo" Bill.
> > 3) I don't want to sound rude, but... before you start explaining to > > others how email etiquette works, perhaps you should take a look at your > > own writing. A blank line between paragraphs - i.e., before you begin > > your reply - is also one of the standard points of that etiquette. > > My apologies for that, the formatting Thunderbird gave when writing the > email looked like there was white space there when there wasn't, so I > didn't notice until after I'd already sent.
No worries. Thanks for correcting it.
> >> I think the answer to this one is simple, most people involved in the > >> Linux community have a rather intense dislike for .NET based solutions. > >> > > > > Really? I think the Mono community, at the very least, would find your > > assertion rather shocking. > > > > https://www.mono-project.com/ > > > > Linux, these days, encompasses much more than it used to. > > Perhaps I was exaggerating with `most'. I'm sure the Mono community > would disagree, however to put the shoe on the other foot, Mono itself > leaves a bad taste in the mouth of many, with all the legal greywater > surrounding Moonlight and the use of it by anyone other than direct > Novell customers.
To be honest, I'm a part of that "many". I believe that buying into .NET supports a Microsoft-dominant development paradigm and locks developers into a smaller (and less free) universe. As I've noted, however, there are many people who disagree.
> That's getting kind of off topic, so, opinions of .NET aside, I don't > think `the Linux community' would be particularly interested in writing > code for Windows client machines. Linux server vendors might be, but > probably not the community at large. That's probably a better answer to > the original statement.
There's a large number of things that will work fine on legacy OSes as well as on Linux: Perl, PHP, even shell scripting given any one of the Unix toolkits. In the past, we have often helped querents with Windows questions by suggesting a Linux-but-will-work-anyway solution; these serve the Linux community as well as helping the querent. "Aviongoo" Bill clearly didn't want to hear anything like that; too bad for him, I suppose. We don't provide "Windows-only" support.
-- * Ben Okopnik * Editor-in-Chief, Linux Gazette * https://LinuxGazette.NET *
Paul Sephton [paul at inet.co.za]
On Wed, 2009-06-17 at 11:23 -0500, Ben Okopnik wrote:
> > Perhaps I was exaggerating with `most'. I'm sure the Mono community > > would disagree, however to put the shoe on the other foot, Mono > itself > > leaves a bad taste in the mouth of many, with all the legal > greywater > > surrounding Moonlight and the use of it by anyone other than direct > > Novell customers. > > To be honest, I'm a part of that "many". I believe that buying > into .NET > supports a Microsoft-dominant development paradigm and locks > developers > into a smaller (and less free) universe. As I've noted, however, there > are many people who disagree.
As it so happens, there is a spate of attention around recent moves from some of the Debian guys to include Mono in the Gnome distribution for the latest Debian release. The whole argument seems to be around the Tomboy applet, which is a simple notebook like GNote. For the privilege of the Mono based Tomboy, you get an added 50MB of dependencies introduced. The size is a relatively minor issue though...
The argument for Mono seems to be: "It's open source, so it's ok".
What some people are missing with Mono, is that it is an implementation of Microsoft's intellectual property, protected by numerous patents for aspects of the .NET API, as well as patents against the C# language.
Perhaps it would be pertinent to point out the recent action Microsoft instated against TomTom GPS systems; TomTom used Linux as the base OS, but used the VFAT file system to access flash storage. TomTom came to an out of court settlement with Microsoft, and although the details of the agreement are unavailable, one might speculate that this entails either replacing Linux, or paying the royalty.
The same situation applies to future a Gnome desktop dependent on Mono. How long before the first company is sued for royalties?
Why anyone would prefer C# over C/C++ for development is beyond me.
For interest, see https://np237.livejournal.com/23901.html and the discussion at OsNews.
Steve Brown [steve.stevebrown at gmail.com]
On 17/06/2009 18:04, Paul Sephton wrote:
> As it so happens, there is a spate of attention around recent moves from > some of the Debian guys to include Mono in the Gnome distribution for > the latest Debian release. The whole argument seems to be around the > Tomboy applet, which is a simple notebook like GNote. For the privilege > of the Mono based Tomboy, you get an added 50MB of dependencies > introduced. The size is a relatively minor issue though...
[...]
> Why anyone would prefer C# over C/C++ for development is beyond me.
It seems that some agree - Gnote is a port of Tomboy to C++
Why add the bloat?
-- Steve
Jimmy O'Regan [joregan at gmail.com]
2009/6/17 Paul Sephton <paul@inet.co.za>:
> On Wed, 2009-06-17 at 11:23 -0500, Ben Okopnik wrote: >> > Perhaps I was exaggerating with `most'. I'm sure the Mono community >> > would disagree, however to put the shoe on the other foot, Mono >> itself >> > leaves a bad taste in the mouth of many, with all the legal >> greywater >> > surrounding Moonlight and the use of it by anyone other than direct >> > Novell customers. >> >> To be honest, I'm a part of that "many". I believe that buying >> into .NET >> supports a Microsoft-dominant development paradigm and locks >> developers >> into a smaller (and less free) universe. As I've noted, however, there >> are many people who disagree. > > As it so happens, there is a spate of attention around recent moves from > some of the Debian guys to include Mono in the Gnome distribution for > the latest Debian release. Â The whole argument seems to be around the > Tomboy applet, which is a simple notebook like GNote. Â For the privilege > of the Mono based Tomboy, you get an added 50MB of dependencies > introduced. Â The size is a relatively minor issue though...
'Like GNote' -- other way around, in fact: GNote is a C++ rewrite of Tomboy. Tomboy is included by default, because it is part of GNOME 2.6 - GNote isn't.
> > The argument for Mono seems to be: "It's open source, so it's ok". > > What some people are missing with Mono, is that it is an implementation > of Microsoft's intellectual property, protected by numerous patents for > aspects of the .NET API, as well as patents against the C# language. >
https://en.wikipedia.org/wiki/.NET_Framework#Standardization_and_licensing
"While Microsoft and their partners hold patents for the CLI and C#, ECMA and ISO require that all patents essential to implementation be made available under "reasonable and non-discriminatory terms". In addition to meeting these terms, the companies have agreed to make the patents available royalty-free." "However, this does not apply for the part of the .NET Framework which is not covered by the ECMA/ISO standard, which includes Windows Forms, ADO.NET, and ASP.NET. Patents that Microsoft holds in these areas may deter non-Microsoft implementations of the full framework."
Tomboy uses GNOME-specific APIs on top of the ECMA part: there are no realistic patent fears here.
FWIW, the Free Software Foundation have their own implementation of the ECMA part of .Net called Portable.Net.
> Perhaps it would be pertinent to point out the recent action Microsoft > instated against TomTom GPS systems; Â TomTom used Linux as the base OS, > but used the VFAT file system to access flash storage. Â TomTom came to > an out of court settlement with Microsoft, and although the details of > the agreement are unavailable, one might speculate that this entails > either replacing Linux, or paying the royalty. >
It's still just speculation, though.
The TomTom case strikes me as a particularly ridiculous example to be used to advocate the removal of Mono for (potentially) infringing Microsoft patents: wouldn't that also advocate the removal of Linux itself?
I certainly wouldn't encourage anyone to trust Microsoft blindly, but given their track record, I happen to think it's a good thing that they're taking tentative steps into the worlds of open standards and open source.
Paul Sephton [paul at inet.co.za]
On Wed, 2009-06-17 at 19:18 +0100, Jimmy O'Regan wrote:
> 2009/6/17 Paul Sephton <paul@inet.co.za>: > > As it so happens, there is a spate of attention around recent moves from > > some of the Debian guys to include Mono in the Gnome distribution for > > the latest Debian release. The whole argument seems to be around the > > Tomboy applet, which is a simple notebook like GNote. For the privilege > > of the Mono based Tomboy, you get an added 50MB of dependencies > > introduced. The size is a relatively minor issue though... > > 'Like GNote' -- other way around, in fact: GNote is a C++ rewrite of > Tomboy. Tomboy is included by default, because it is part of GNOME 2.6 > - GNote isn't.
I stand corrected.
> > The argument for Mono seems to be: "It's open source, so it's ok". > > > > What some people are missing with Mono, is that it is an implementation > > of Microsoft's intellectual property, protected by numerous patents for > > aspects of the .NET API, as well as patents against the C# language. > > > > https://en.wikipedia.org/wiki/.NET_Framework#Standardization_and_licensing > > "While Microsoft and their partners hold patents for the CLI and C#, > ECMA and ISO require that all patents essential to implementation be > made available under "reasonable and non-discriminatory terms". In > addition to meeting these terms, the companies have agreed to make the > patents available royalty-free."
"reasonable and non-discriminatory terms": Everyone is charged exactly the same reasonable royalty in a non-discriminatory way.
> Tomboy uses GNOME-specific APIs on top of the ECMA part: there are no > realistic patent fears here.
Permit me to respectfully disagree.
> FWIW, the Free Software Foundation have their own implementation of > the ECMA part of .Net called Portable.Net. > > > Perhaps it would be pertinent to point out the recent action Microsoft > > instated against TomTom GPS systems; TomTom used Linux as the base OS, > > but used the VFAT file system to access flash storage. TomTom came to > > an out of court settlement with Microsoft, and although the details of > > the agreement are unavailable, one might speculate that this entails > > either replacing Linux, or paying the royalty. > > > > It's still just speculation, though.
Yes it is speculation. Can you think of any other agreement they might have reached?
> The TomTom case strikes me as a particularly ridiculous example to be > used to advocate the removal of Mono for (potentially) infringing > Microsoft patents: wouldn't that also advocate the removal of Linux > itself?
The TomTom case is an example of Microsoft enforcing their intellectual property rights. Please understand that although many people infringe on the FAT patent every day, Microsoft normally has no interest in actually enforcing it. Instead, it is in their best interest that FAT usage becomes as ubiquitous as possible, and the de facto standard. This leads to situations such as that where TomTom have no choice other than to use FAT.
Far from being a "ridiculous example", the TomTom case has an extrordinary bearing on Mono, and the adoption of C#. FAT was considered to be "free" for a great many years (around 15 years) until MS patented it. It is still considered by many to be free, but it is not. Just as with FAT, it is clearly in Microsoft's best interests for DotNet & C# to become as entrenched as can be. Although Microsoft have indicated that they will not "for now" be enforcing their C# and DotNet patents, they have not relinquished their right to do so in future.
Implicit in your last question, is that Linux itself is so riddled with instances of patent breach, that this should "advocate the removal of Linux itself". According to IP law, users of Linux would be liable for royalty to Microsoft for the extent to which they use features made available by Linux, which are covered by Microsoft patents. This is evidenced in the TomTom case.
This "Devil be damned" attitude towards the intellectual property rights (patents, trademarks,logos,copyright) of others is a very dangerous path for the open source world to travel.
> I certainly wouldn't encourage anyone to trust Microsoft blindly, but > given their track record, I happen to think it's a good thing that > they're taking tentative steps into the worlds of open standards and > open source.
Microsoft is not making overtures to the open source world out of love. They are doing it for the money. As is the case with any corporate, their sole fudiciary duty is to their shareholders. Please don't disappoint me by believing their marketing blurb. I am not saying MS is any more evil than any other coproration; this is not a religious matter, but a logical one.
Jimmy O'Regan [joregan at gmail.com]
2009/6/17 Paul Sephton <paul@inet.co.za>:
> On Wed, 2009-06-17 at 19:18 +0100, Jimmy O'Regan wrote: >> 2009/6/17 Paul Sephton <paul@inet.co.za>: >> > As it so happens, there is a spate of attention around recent moves from >> > some of the Debian guys to include Mono in the Gnome distribution for >> > the latest Debian release. Â The whole argument seems to be around the >> > Tomboy applet, which is a simple notebook like GNote. Â For the privilege >> > of the Mono based Tomboy, you get an added 50MB of dependencies >> > introduced. Â The size is a relatively minor issue though... >> >> 'Like GNote' -- other way around, in fact: GNote is a C++ rewrite of >> Tomboy. Tomboy is included by default, because it is part of GNOME 2.6 >> - GNote isn't. > > I stand corrected. > >> > The argument for Mono seems to be: "It's open source, so it's ok". >> > >> > What some people are missing with Mono, is that it is an implementation >> > of Microsoft's intellectual property, protected by numerous patents for >> > aspects of the .NET API, as well as patents against the C# language. >> > >> >> https://en.wikipedia.org/wiki/.NET_Framework#Standardization_and_licensing >> >> "While Microsoft and their partners hold patents for the CLI and C#, >> ECMA and ISO require that all patents essential to implementation be >> made available under "reasonable and non-discriminatory terms". In >> addition to meeting these terms, the companies have agreed to make the >> patents available royalty-free." > > "reasonable and non-discriminatory terms": Â Everyone is charged exactly > the same reasonable royalty in a non-discriminatory way. >
Uhuh. But read the 'In addition' part.
>> Tomboy uses GNOME-specific APIs on top of the ECMA part: there are no >> realistic patent fears here. > > Permit me to respectfully disagree. > >> FWIW, the Free Software Foundation have their own implementation of >> the ECMA part of .Net called Portable.Net. >>
Perhaps your respectful disagreement, then, would be better redirected to the FSF.
>> > Perhaps it would be pertinent to point out the recent action Microsoft >> > instated against TomTom GPS systems; Â TomTom used Linux as the base OS, >> > but used the VFAT file system to access flash storage. Â TomTom came to >> > an out of court settlement with Microsoft, and although the details of >> > the agreement are unavailable, one might speculate that this entails >> > either replacing Linux, or paying the royalty. >> > >> >> It's still just speculation, though. > > Yes it is speculation. Â Can you think of any other agreement they might > have reached? >
Other than mere speculation?
>> The TomTom case strikes me as a particularly ridiculous example to be >> used to advocate the removal of Mono for (potentially) infringing >> Microsoft patents: wouldn't that also advocate the removal of Linux >> itself? > > The TomTom case is an example of Microsoft enforcing their intellectual > property rights. Â Please understand that although many people infringe > on the FAT patent every day, Microsoft normally has no interest in > actually enforcing it. Â Instead, it is in their best interest that FAT > usage becomes as ubiquitous as possible, and the de facto standard. > This leads to situations such as that where TomTom have no choice other > than to use FAT. > > Far from being a "ridiculous example", the TomTom case has an > extrordinary bearing on Mono, and the adoption of C#. Â FAT was > considered to be "free" for a great many years (around 15 years) until > MS patented it. Â It is still considered by many to be free, but it is > not. Â Just as with FAT, it is clearly in Microsoft's best interests for > DotNet & C# to become as entrenched as can be. Â Although Microsoft have > indicated that they will not "for now" be enforcing their C# and DotNet > patents, they have not relinquished their right to do so in future. > > Implicit in your last question, is that Linux itself is so riddled with > instances of patent breach, that this should "advocate the removal of > Linux itself". Â According to IP law, users of Linux would be liable for > royalty to Microsoft for the extent to which they use features made > available by Linux, which are covered by Microsoft patents. Â This is > evidenced in the TomTom case. >
Maybe you need to reread what I wrote, or I need to rephrase what I wrote, but your answer is almost completely disconnected from it.
> This "Devil be damned" attitude towards the intellectual property rights > (patents, trademarks,logos,copyright) of others is a very dangerous path > for the open source world to travel. >
Quite true. The 'do nothing, for fear of litigation' attitude would be worse.
>> I certainly wouldn't encourage anyone to trust Microsoft blindly, but >> given their track record, I happen to think it's a good thing that >> they're taking tentative steps into the worlds of open standards and >> open source. > > Microsoft is not making overtures to the open source world out of love.
https://en.wikipedia.org/wiki/Ignoratio_elenchi
Deividson Okopnik [deivid.okop at gmail.com]
>>> I certainly wouldn't encourage anyone to trust Microsoft blindly, but >>> given their track record, I happen to think it's a good thing that >>> they're taking tentative steps into the worlds of open standards and >>> open source. >> >> Microsoft is not making overtures to the open source world out of love. > > https://en.wikipedia.org/wiki/Ignoratio_elenchi >
While this is not the point of this discussion, what I see about Microsoft's (small) steps torward the open-source world are very limited "open-ness" that gets you tied to then one way or another (like the ms's OOXML, or the so called "open-source parts of ms office") - "heres your free beer, but the licence says you must drink it on licenced cups only" comes to my mind.
Might just be me, but I find it pretty weird when I notice wolves advocating for sheeps - like MS selling those 3$ windows licences in africa - sounds like 21th century slavery, they just dont use mirrors for the trade anymore.
Ben Okopnik [ben at linuxgazette.net]
On Thu, Jun 18, 2009 at 02:44:13PM -0300, Deividson Okopnik wrote:
> > While this is not the point of this discussion, what I see about > Microsoft's (small) steps torward the open-source world are very > limited "open-ness" that gets you tied to then one way or another > (like the ms's OOXML, or the so called "open-source parts of ms > office") - "heres your free beer, but the licence says you must drink > it on licenced cups only" comes to my mind. > > Might just be me, but I find it pretty weird when I notice wolves > advocating for sheeps - like MS selling those 3$ windows licences in > africa - sounds like 21th century slavery, they just dont use mirrors > for the trade anymore.
Not only is he my distant cousin (although we haven't quite figured out the connection yet) - he's really smart, too. Well said, Deividson!
-- * Ben Okopnik * Editor-in-Chief, Linux Gazette * https://LinuxGazette.NET *
Rick Moen [rick at linuxmafia.com]
Quoting Aviongoo Sales (sales@aviongoo.com):
> And that is why I thought the Linux community would be interested.
I continue to be perplexed at why you think _Linux Gazette_ magazine would be interested in developing PHP Web code to do some vaguely described file-uploading service for the benefit of some sort of MS-Wind0ws VB.net Internet-client codebase. Seems like a pretty automatic "Not our department" to me.
I was going to say "Maybe I'm missing something" to be extra polite, but, let's face it, I doubt I'm missing anything.
-- Cheers, Notice: The value of your Hofstadter's Constant Rick Moen (the average amount of time you spend each month rick@linuxmafia.com thinking about Hofstadter's Constant) has just McQ! (4x80) been adjusted upwards.
Rick Moen [rick at linuxmafia.com]
(Querent dropped "tag" from distribution. Restoring.)
Quoting Aviongoo Sales (sales@aviongoo.com):
> Rick, > > Linux Gazette magazine? Never heard of it.
Are you attempting to crack a joke? In case you're not: You've been writing to the e-mail address of "The Answer Gang" at _Linux Gazette_.
-- Cheers, Notice: The value of your Hofstadter's Constant Rick Moen (the average amount of time you spend each month rick@linuxmafia.com thinking about Hofstadter's Constant) has just McQ! (4x80) been adjusted upwards.
Steve Brown [steve.stevebrown at gmail.com]
Hi Bill,
On Wed, Jun 17, 2009 at 4:51 AM, Aviongoo Sales<sales@aviongoo.com> wrote:
> I simply can not believe a working solution has not been documented and > indexed in Google. But it hasn't! > > > PLEASE, ANYONE ON THIS LIST, DO NOT SEND ME A SOLUTION. I already have a > working solution. >
Out of curiosity - have you documented your solution such that it can be found on the net?
Steve
Jimmy O'Regan [joregan at gmail.com]
2009/6/17 Aviongoo Sales <sales@aviongoo.com>:
> Ben, > > Sorry, but I have no idea what "We'd all really apreciate it if you didn't > top post, either." means. Â So, if I've done it again please explain. >
'Top posting' refers to the practice of including the original message to which you are replying verbatim, with your reply at the top. The preferred style when replying to a message on a public list is to reply inline, as I am doing, so that it is instantly clear to what you are replying. It is also good practice to delete parts of the original mail to which you are not replying.
> And, who in their right mind would use "->" for anything other than > something to do with "minus" or "greater than"!!!!! Â Whomever did that in > PHP development was just not thinking. >
'->' is quite a standard idiom among programming languages: it's used in C, C++, and Perl, among others, for more or less the same purpose.
> Of course, I've been writing PHP code for well over a decade so there was no > attempt at object-orientation back then. Â I was previously a VB 6 programmer > and before that I coded in ASM, BAL, Fortran, Algol, COBOL, APL, PL/I, C, > C++ and several other languages.
If you've used C and C++, why do you question PHP's use of '->'?
>Â There is not a server-based > application development project where PHP can not be used. >
If the server is a web server, perhaps.
> 2) I want to go to Google and enter something like "vb.net code to upload a > file to Linux server" (without quotes). Â I want working code to be displayed > that I can copy and use. Â I want to have a solution implemented within five > minutes (300 seconds) and no more. >
I assume from your repeated mentions of PHP that you want this file transfer to take place via HTTP - or even 'to a web server'. As it is, asking about 'a linux server' makes it seem as though you are looking for something /specific/ to Linux, which doesn't seem to be the case at all.
> As I said, I already have a solution. Â While I thank you for your "SSH" > suggestion (I usually use PuTTY), and while I might develop a solution that > uses SSH - your suggestion misses the point. Â Using "SSH" in a google search > "code for programmatic use of SSH to upload a file to Linux server" does not > come close to presenting me with code I can use. >
Again; the question/query is overly specific.
> Seriously, the key point is this - I find it incredible that after entering > numerous Google, Bing, and Yahoo queries similar to "vb.net code to upload a > file to Linux server" and not a single one has produced a result where I can > copy and paste working vb.net code or even old vb code. Â When code was > displayed it was usually in the form of a question i.e. "why doesn't this > code work?".
Also; I'll freely admit that I'm not quite familiar with .Net etc., but my understanding is that the whole point of it is to have a common API for use among multiple programming languages. I also seem to recall that SharpDevelop, an open source .Net IDE for Windows, has a facility to convert C Sharp code to VB.Net (specifically because there are so few VB.Net examples around); perhaps if, in future, you search for .Net solutions generally, rather than VB.Net specifically, you'll have a better time finding what you're looking for.
> PLEASE, ANYONE ON THIS LIST, DO NOT SEND ME A SOLUTION. I already have a working solution.
Well, good for you. However, we answer questions for the benefit of the readers of Linux Gazette, so...
Searching for 'vb.net upload via http' gets me this page, from Microsoft: https://msdn.microsoft.com/en-us/library/system.net.webclient.uploadfile(VS.71).aspx
Filtering it down, the relevant lines are:
Dim myWebClient As New WebClient() Dim responseArray As Byte() = myWebClient.UploadFile(uriString, "POST", fileName)
(FWIW, that took less than 5 minutes
Rick Moen [rick at linuxmafia.com]
Quoting Jimmy O'Regan (joregan@gmail.com):
> 2009/6/17 Aviongoo Sales <sales@aviongoo.com>:
Looks like you didn't CC querent.
Rick Moen [rick at linuxmafia.com]
I think we have here a dead loss on time spent. (I'm tempted to quote USA Vice-President John Nance Garner's famous saying, circa 1936, where he opined about the value of his office, but it would be a bit profane.)
----- Forwarded message from Aviongoo Sales <sales@aviongoo.com> -----
From: Aviongoo Sales <sales@aviongoo.com> To: Rick Moen <rick@linuxmafia.com> Date: Wed, 17 Jun 2009 01:07:33 -0400X-Mailer: Microsoft Outlook Express 6.00.2900.5512 X-Spam-Status: No, score=-1.0 required=4.0 tests=AWL,BAYES_00,RCVD_IN_SORBS, STOX_REPLY_TYPE autolearn=no version=3.2.5
Subject: Re: [TAG] Jim, HELP needed, 5-minute solution needed bycomputer industry
Rick,
Linux Gazette magazine? Never heard of it.
If it is a technical issue and "Linux Gazette magazine" does not come up on page one of a Google search result I would likely never read it.
Bill
----- Original Message ----- From: "Rick Moen" <rick@linuxmafia.com>
To: "Aviongoo Sales" <sales@aviongoo.com> Cc: "Ben Okopnik" <ben@linuxgazette.net>; <tag@lists.linuxgazette.net>Sent: Wednesday, June 17, 2009 12:29 AM
Subject: Re: [TAG] Jim, HELP needed, 5-minute solution needed bycomputer industry
> Quoting Aviongoo Sales (sales@aviongoo.com): > >> And that is why I thought the Linux community would be interested. > > I continue to be perplexed at why you think _Linux Gazette_ magazine > would be interested in developing PHP Web code to do some vaguely > described file-uploading service for the benefit of some sort of > MS-Wind0ws VB.net Internet-client codebase. Seems like a pretty > automatic "Not our department" to me. > > I was going to say "Maybe I'm missing something" to be extra polite, > but, let's face it, I doubt I'm missing anything. > > -- > Cheers, Notice: The value of your Hofstadter's > Constant > Rick Moen (the average amount of time you spend each > month > rick@linuxmafia.com thinking about Hofstadter's Constant) has > just > McQ! (4x80) been adjusted upwards.
----- End forwarded message -----
Ben Okopnik [ben at linuxgazette.net]
On Tue, Jun 16, 2009 at 10:26:38PM -0700, Rick Moen wrote:
> I think we have here a dead loss on time spent. (I'm tempted to quote > USA Vice-President John Nance Garner's famous saying, circa 1936, where he > opined about the value of his office, but it would be a bit profane.)
In this case, it's not even worth a cup. Or would a cup be worth more than a bucket, due to less odious content? In any case, the amusement value was quite high:
> ----- Forwarded message from Aviongoo Sales <sales@aviongoo.com> ----- > > Rick, > > Linux Gazette magazine? Never heard of it. > > If it is a technical issue and "Linux Gazette magazine" does not come up on > page one of a Google search result I would likely never read it.
You can't get much better than that.
-- * Ben Okopnik * Editor-in-Chief, Linux Gazette * https://LinuxGazette.NET *
+-+--------------------------------------------------------------------+-+ You've asked a question of The Answer Gang, so you've been sent the reply directly as a courtesy. The TAG list has also been copied. Please send all replies to tag@lists.linuxgazette.net, so that we can help our other readers by publishing the exchange in our monthly Web magazine: Linux Gazette (https://linuxgazette.net/) +-+--------------------------------------------------------------------+-+
Rick Moen [rick at linuxmafia.com]
[[[ Elided fully-quoted content from another round of top-posting. -- Kat ]]]
----- Forwarded message from Aviongoo Sales <sales@aviongoo.com> -----
From: Aviongoo Sales <sales@aviongoo.com> To: Rick Moen <rick@linuxmafia.com> Date: Sat, 20 Jun 2009 00:48:33 -0400X-Mailer: Microsoft Outlook Express 6.00.2900.5512 X-Spam-Status: No, score=-1.2 required=4.0 tests=AWL,BAYES_00,RCVD_IN_SORBS, STOX_REPLY_TYPE autolearn=no version=3.2.5
Subject: Re: [TAG] Jim, HELP needed, 5-minute solution neededbycomputer industry
No joke. I had never heard of it. The only printed publication I read anymore is "Network World". And, when "Network World" finally drops their print addition, my home will totally be devoid of all newspapers and magazines.
Also, your domain name is "linuxmafia.com" and you or someone else told me to add the "lists.linuxgazette.net" reference. I had no intention of writing to a group. I had originally written to someone as a result of a google search result. Someone wrote to, in essense, inform me that they were responding instead of the other person.
Then, I was being criticized for making my original suggestion.
I was just looking for a solution so I did not have to develop my own solution. I had to cobble together my own solution. It certainly was not the simple solution I wanted - but it gets the job done.
Thanks. I hope we are done with this conversation. It is taking up too much of my time and your organization, publication, gang or whatever you want to call it has already informed me that, in essense, they do not care to develop/document solutions for "Linux-server/Windows-client" automated custom file upload solutions. I certainly have no interest in documenting my solution because it is not elegant. It just gets the job done for me.
Sam Bisbee [sbisbee at computervip.com]
Greetings - Disclaimer: PHP is one of my favorite languages.
>> Ben, >> >> I love PHP. Unfortunately not all people do. > >I teach the stuff - just came back from a week of teaching an advanced >course at a major insurance company - and I don't love it at all. PHP >is, in my opinion, unforgivably buggy, has way too many functions and >way too little flexibility, makes it too easy to write bad code, and has >too few testing/validation tools. It's relatively easy to learn/use >initially, but it quickly runs out of power; it uses a horribly-broken >imitation of OO which is missing much of the point of OO methodology, >and it is responsible for more than a third of all vulnerabilities in >the National Vulnerability Database last year (it was almost half of >all vulns back in 2006.)
To me this reads as one big "the coders suck" argument under cover as "the language sucks". The majority of those National Vulnerability Database issues are caused by sloppy coding, but that's the same with any language (Wikipedia notes 1% of those vulnerabilities were in the language itself) - I think back to my first C program and cringe at my memory "management".
Your points, security related included, could be said about any language. That's the nature of programming: it gives the programmer power. And with great power ... well, you get my point. The reason PHP and several other languages get so much of the type of flack you flung is that they're newbie friendly. You have web designers who barely understand HTML copying and pasting PHP and making slight modifications to poll you on your favorite ice cream flavor. This is okay in theory, but can be scary - then again, a lot of what so called professional programmers create to charge your credit card for electronic payment or route packets is even scarier. The same thing happens with other languages.
>The only way to make it even marginally better >requires using a closed-source app with a truly weird licensing scheme >(Zend), and even that solution is less than wonderful. >
Never had to touch the stuff, "enterprise class" platforms included.
[snip]
>But that could just be the result of intense contact with it over the >past week. A month down the road, I'll probably have a somewhat milder >opinion of it. >
I have strategically timed this e-mail to come in just short of the one month mark. ;-)
p.s. Sorry for being in such lurk mode recently on the list, but I recently left my big-to-do corporate job to return to owning a business.
Ben Okopnik [ben at linuxgazette.net]
On Sat, Jun 27, 2009 at 09:42:51PM +0000, Samuel Bisbee-vonKaufmann wrote:
> Greetings - Disclaimer: PHP is one of my favorite languages.You've just bolstered my argument against it immensely.
> To me this reads as one big "the coders suck" argument under cover as > "the language sucks". The majority of those National Vulnerability > Database issues are caused by sloppy coding, but that's the same with > any language (Wikipedia notes 1% of those vulnerabilities were in the > language itself) - I think back to my first C program and cringe at my > memory "management".
That would be true, except for... well, everything. It is probably accurate to say that there are more sucky PHP coders, percentage-wise, than there are for most other languages; this does not mean that PHP itself does not suck. In fact, it strongly implies the opposite. As to the number of vulnerabilities, 1% of PHP is quite a large chunk - and this has nothing to do with PHP coders; these functions are part of the language, which is not itself written in PHP. I seem to recall that a recent version of PHP had something like 4000+ core functions - and tens of thousands of non-core ones. By contrast, Perl has somewhere in the low 200s range for the core funcs. 1% of PHP - i.e., 40 or more functions that are broken - is a very large and ugly number.
In addition to that, I suggest you try googling for 'month of PHP bugs' sometime. This was a month-long attempt to crack at least a function a day by a frustrated developer; it succeeded, with a ridiculously high number of functions.
> Your points, security related included, could be said about any language.
The point you're missing, Sam, is that of degree. No, there are no 100%-foolproof languages; fools are too ingenuous. Some, however, practically drag the fools into paths where angels fear to tread - and PHP, if not #1 in that lineup, is certainly in the running for that top spot.
As a counter-example, take a look at Perl - a language that a lot of people consider to be difficult to write well (and yes, there's quite a number of bad Perl coders out there.) The language itself, however, provides a large variety of tools for testing your code *automatically*:
-w/-W Enable many/all warnings 'use warnings;' Similar to '-w' 'use strict;' Fail on a large number doubtful constructs -T Require pre-processing of all user data
In fact, Perl will give you as much critique/criticism as you can stand:
Or you can install Perl::Critic as a module, and have your own machine harsh on you any time you think you're perfect.
By contrast, PHP has... nothing. Someone tried, some years ago, to have a sorta-'lint' for PHP4 (Pixy - written in Java, as I recall) - and that was about it.
In short, the language itself is broken, and neither the developers nor the users care. If you do decide to care, there's little or nothing you can do about it.
> That's the nature of programming: it gives the programmer power. And > with great power ... well, you get my point. The reason PHP and > several other languages get so much of the type of flack you flung is > that they're newbie friendly. You have web designers who barely > understand HTML copying and pasting PHP and making slight > modifications to poll you on your favorite ice cream flavor. This is > okay in theory, but can be scary - then again, a lot of what so called > professional programmers create to charge your credit card for > electronic payment or route packets is even scarier. The same thing > happens with other languages.
I disagree, completely. Other languages don't force dangerous weapons into the hands of little children.
> >The only way to make it even marginally better > >requires using a closed-source app with a truly weird licensing scheme > >(Zend), and even that solution is less than wonderful. > > Never had to touch the stuff, "enterprise class" platforms included.
Sam, feel free to send me a couple of hundred lines of your favorite PHP code. If I can't find a number of bugs in it, I'll a) be very surprised, and b) admit that you are a superlative PHP coder. If you lose, though, you'll have to write a detailed explanation of why and how PHP sucks.
> p.s. Sorry for being in such lurk mode recently on the list, but I > recently left my big-to-do corporate job to return to owning a > business.
Poor bugger. I guess you like pain.
-- * Ben Okopnik * Editor-in-Chief, Linux Gazette * https://LinuxGazette.NET *
Deividson Okopnik [deivid.okop at gmail.com]
2009/6/27 Sam Bisbee <sbisbee@computervip.com>:
> Greetings - Disclaimer: PHP is one of my favorite languages. > > Your points, security related included, could be said about any language. That's the nature of > programming: it gives the programmer power. And with great power ... well, you get my point. > The reason PHP and several other languages get so much of the type of flack you flung is that > they're newbie friendly. You have web designers who barely understand HTML copying and > pasting PHP and making slight modifications to poll you on your favorite ice cream flavor. This > is okay in theory, but can be scary - then again, a lot of what so called professional > programmers create to charge your credit card for electronic payment or route packets is even > scarier. The same thing happens with other languages. >
Something that makes it worse for PHP is the fact that it is a web-developing language - makes it have way more users than "desktop" languages, what makes user-related problems way more aparent than anywhere else.
Try googling for asp vulnerabilities (ok, that was a joke) or ror vulnerabilities - it is more fair for the comparison.