Well, that's certainly what happened for me. After I started work on a piece of commercial software, even one in which most of the changes were contributed back to the open source community (!!) it was very dis-heartening to see people simply uploading it to warez sites. Occasionally I see people see asinine things like "software vendors shouldn't use copy protection, everyone I know would buy it anyway, it's not necessary". This software had no DRM or copy control and was widely copied illegally. Some of the asshats who did that even then attempted to get free tech support off us.
These episodes, as well as a few others, gave me a healthy respect for the work of others. So I guess at least for one person your theory is correct.
You think they should only complain when they start taking a loss on every movie they make? What kind of a business model is that? It's like saying store owners shouldn't complain when they get raided because the insurance will cover it and they'll still make money this year.
Don't like that we pass around cultural artifacts freely? Tough shit. You're on the wrong side of history, and you can't stop us.
What a dumb line of reasoning. So because you think maybe one day copyright infringement won't be illegal, you feel free to do it today? By that logic I should feel free to sell crack to kids on the street because in the future maybe selling Class A drugs won't be illegal. Fact is today "passing around cultural artifacts" (ie enjoying what somebody made without paying them for it) is illegal, and if you have respect for the law you shouldn't do it!
Please don't confuse copyright infringement with theft. It's annoying and you sound brainwashed.
Please don't confuse the debate by playing word games. It's annoying and helps nobody.
Econ 101: The point of copyright is to force something that isn't physical property to be treated as physical property. This is not rocket science, it's a requirement allowing content creators to be actors in the free market.
So in fact copyright infringement is theft, simply because we define it to be so. Why do we try and square the circle? Because nobody has any better ideas for how to let people get paid for making content.
There are alternatives to this regime, in which content is not hackily cludged to be like property by legislation, but unfortunately the most obvious is for all music/video/books/software.... anything that is "protected by copyright today.... to be funded by the state via taxes. In such a setup it doesn't matter that anybody can duplicate the content because the content creators get paid anyway. However I suspect such a scheme would go down like a ton of bricks amongst the Slashdot crowd.
The choice is simple: either we define copyrighted works to be property and so copyright infringement is theft... or we can use some alternative system in which it's not property and therefore cannot be traded on the open market. Nobody uses the second, so for now, regardless of what people might like copyright infringement is theft
With deb and RPM, you get a package that is not runnable, you first execute a local application that checks the integrity of the package if it is signed with a unknown signature, for instance, it will warn you.
Nothing stops you from checking an autopackage in the same way.
If a cracker break into a repository he could only upload a unsigned package or a package signed with other unknown key, but if the same cracker broke into a mirror of a autopackage file it could have a rootkit in your computer in no time.
Consider this:
You don't need to install autopackages as root, unlike RPMs or DEBs. So you can, if you wish, ensure that the software you install never gets root.
Cracked mirrors are rarely a problem in practice. How many malware installations on Windows are caused by cracked mirrors? I never heard of any. A much bigger problem in practice is software autors who are deliberately malicious - this is a different problem with different solutions. I think you're barking up the wrong tree.
It's quite easy to get root on your average Linux box anyway. Try attaching a debugger to the Ubuntu sudo frontend some time to see what I mean.
This is bad, my solution for this would be a unified "source packaging" that could be easily turned into a deb and rpm package.
This solves nothing. Now your imaginary hacker just puts the malicious code in the specfiles provided in the source tarball instead of the package itself. You made the user experience worse for no gain in security.
Most package formats are differently merely through being apart. The technical differences between RPM, DEBs, ebuilds etc are not tha large in terms of the fundamental primitives they work with. None has a clear advantage over the other.
The "diversity" you see is not really diversity for the reason given above, so, we pay the price in terms of poor user experience but we don't get any of the benefits
The splintering of it discourages innovation in distro design. No distro can get a large userbase without a large repository, because installing anything outside of the repositories is such a gigantic pain in the ass (unless you use autopackage;) - so "new" distros tend to merely be derivatives of existing distros with very minor changes.
In short, we get all the pain of diversity and none of the gain.
There's growing recognition of this fact in the upper echelons of the community. At LUGRadio Live Mark Shuttleworth talked about the need for standardised package management and the need to move away from the repository model of software distribution towards one where anybody could publish a package that works on any distribution. Of course Ubuntu is the poster child for centralised packaging, so who knows if it'll happen. Probably not.
Yep. And look at the story a while back about IPv6... riddled with extremely basic factual errors that the author could have found just by CCing somebody from the IT department. Something that would have not even required moving out of his seat, yet it wasn't done.
Basically, the only news source I really trust these days is the BBC. And if I read a newspaper, the Guardian, which at least has the benefit of being owned by some kind of non-profit trust rather than Murdoch.
I'll call you on that too. The BBC has no incentive to transmit infomercials, especially not from the government, indeed their competitors (Sky etc) would be all over them if they were caught doing such a thing.
Have you considered that maybe this "infomercial" you saw was in fact a natural history program written by peoeple who, in fact, happened to believe that the governments policies towards agriculture were a good thing? Have you got proof that the makers of this program were paid to say what they said, or is this merely wishful thinking from somebody who hates Blair so much they can't resist dumb name-calling?
It's a philosophical question, is a society where everyone is connected instantly to every one else but constantly working "better" than a society where everyone is happy and relaxed?
I think you hit the nail on the head with that. If only I had mod points.
At some point in the unseen future that might change, the solution might on the other hand sit gathering dust on a shelf as a mathematical curiosity until the universe dies.
Exactly. Merely because something is learned doesn't mean it's valuable. All kinds of crap is routinely churned out by academia and immediately forgotten, never to be used again.
Yeah, I'm 22 as well;) I think we were really the last of the generation that had access to home BASIC. I learned really on the BBC Basic, QuickBasic was cool but quite limited compared to that, and after that it turned into a desert of gaming. VB never really was up to much in the gaming arena and wasn't free anyway.
Yeah, that's pretty crappy I agree, but on the other hand it would encourage you to - you know - invite your friends over to play on your own console. It's not like this means only one person can ever play it. Write a good multiplayer game and friends/family can still have a blast playing it. And it sounds like fixing this to provide a Nintendo Virtual Console alike online wouldn't be too hard for them, who knows, if the program takes off and there are some good games there then hopefully they'll extend it so any XBox 360 owner can download the games (for a small fee or for free).
More likely, to sign the binaries you have to upload them to a protected Microsoft server and they take care of building/signing/distributing the actual binaries for you. Hence the $99/yr cost (which isn't much really, for a hobby).
I think this is fantastic news, if only because it offers a cool and enticing way into programming for the younger generation (shit that makes me sound old...)
If you interview a random sample of programmers in the world today I bet a lot of the 25-30 aged ones will have got started by writing cheesy games as kids for their {Commodore 64/Sinclair Spectrum/BBC Micro}, even if they then went into corporate software, operating systems, embedded work or whatever. Learning to write software by doing databases in Visual Basic is boring. Learning to write software by doing cool games you can add multiplayer to and beat your friends at is a much better proposition.
Wasn't the head of Nintendo saying that it's a shame games are no longer feasable for hobbyists and entry level studios? It's surprising Microsoft beat them to it, but then Visual Studio Express was designed for the home/hobbyist developer as well if I remember correctly so maybe not too surprising. Here's hoping it becomes a trend and the next generation of coders are learning threading by actually doing it, instead of memorizing lecture slides.
Yes, exactly, this privacy policy is a waste of space. It basically says they record searches and will happily sell or share that information with their partners, but in an anonymous fashion, ie they won't tell their partners who they are. Which is what you'd expect, as they don't know who you are either.
It also says they won't monitor what you click, but then, Google originally didn't either and ended up starting - probably as part of fighting web spam. Clusty could do exactly the same thing because they reserve the right to amend the document at any time, so, really, you don't know any more about what they will do with your information than before you started.
The reason drugs should be legal is because people should have dominion over their own bodies.
That'd work if everybody took complete responsibility for their own bodies. But they don't. They take drugs, get horribly sick and then expect the rest of us to take care of them either via taxes (in the UK) or higher insurance premiums (in the US).
To be honest, any behavior where people go "I am willing to fuck up my own body because I know if it comes to the crunch I'll be seen by a doctor" is highly questionable and probably should be illegal. Yes that goes for smoking too. I think if back when tobacco smoking was first invented the massive, massive health problems and subsequent costs had been known it would have been made illegal as well. The fact that it isn't says more about barn doors than anything else. Once it's legalised it's really hard to go back if it turns out to have been a mistake.
Well, I clicked on several in the past week alone. Usually because what was being advertised happened to be what I was looking for and the organic search results didn't show me anything interesting. Let's see, this happened for a couple of careers pages I was checking out for a friend, and an advert for an economics discussion forum. I don't remember clicking on any AdSense ads, but I guess it could happen. I don't remember actually buying anything, but then again, the advertisers weren't selling.
Remember that once the infrastructure is in place the cost per search is pretty low. So even if you hardly ever click on an advert, it can still be profitable.
What on earth makes you think IP addresses would be in any way useful?
IP address tells you sweet FA about anything these days. AOL used to run pretty much their entire userbase via a caching web proxy, so every single AOL user showed up with a single IP address. NAT is so widespread now that 2 clicks in a short timespan from the same IP address could mean a user clicking twice on an advert, or it could simply mean two entirely different people that happen to be behind the same caching proxy/NAT router clicking once, or it could be two users who happened to go through a DHCP reconfiguration in between the clicks.
I also find the idea that somehow there needs to be regulation like with TV advertising a bit weird. With pretty much any ad campaign except online advertising you get no reliable statistics at all about its impact. How many people saw it? You can only guess. How much traffic did it drive to your business? You cannot know. Even if traffic goes up after the advert run, it might have been due to other factors (mention in a newspaper, other website etc). No amount of regulation will ever give you the amount of transparency you already get with online advertising in another medium.
Er, no, you seem to have misunderstood me. I have never tried to write an FPS in Java. Evolution has many problems yes but it'd be a lot worse if the whole thing was written in Python.
I can't imagine Chandler needing to perform FFTs, and if it does there are bindings for other languages. How fast does your "wait for user input" loop need to cycle, anyway?
You can die a death of a thousand cuts. The idea that you can optimise a few hotspots then use something slow/inefficient for the rest just doesn't work when everything needs to be tight (like on desktop apps). Not me saying this, talk to the Unreal Engine authors about it.
Are there accurate ways to catch all of these in C or C++ applications at compile time or with a static tool? I'm not aware of anything with complete accuracy.
Not with complete accuracy but things like the eraser algorithm can detect some kinds of races, and something is better than nothing right? Static analysis tools are very helpful, I've found.
Sorry, that's just wrong.
How? Where does the Python interpreter do register allocation, cross-module inlining, dead code elimination etc.... if it does do this I never encountered it reading the code.
It's easy to pontificate on performance characteristics when you've done no profiling at all, but experienced programmers can and should wait for facts.
What makes you think I haven't? I've had to rescue at least one disaster caused by this kind of mentality before, though it was with Java and not Python (Java is if anything much less extreme than Python in this regard). In fact it couldn't be rescued, the project tanked, though after we rewrote a large part of the user interface to be only C++ user satisfaction in internal tests went way up.
I've also had the "fun" of writing embedded Java for mobile phones, where every byte counts. The sloppy and unprofessional approach to resource usage in the Java language and J2ME specifically caused much hand wringing. One reason BREW is competing so strongly with it is that BREW lets you use C++.
And finally I have tried to profile a Python app for memory usage, but gave up when I discovered that Python doesn't even try to be efficient with memory usage. No point trying to optimise the main app when the runtime makes memory inefficiency pervasive.
It only takes 12 in UTF-8 as well of course. Besides, you only need to use Unicode strings when you know it might contain non-ASCII characters. If you are reading, say, an XML file using a schema of your own devising, then you can say with certainty that there is no need to store the tag names using double byte encodings - this "one size fits all" string encoding choice of Javas is questionable and a serious resource hog.
Yes, I played with D a year or so ago. It's really nice and hopefully one day I'll get to write desktop software with it. It provides most of the benefits of more modern languages without the downsides.
I realised after I posted that I should back this up with some argument instead of just pointing to newly released commercial software.
The idea that if you have a fast GUI toolkit you can bind to it and use slow and inefficient languages is popular but IMHO wrong. Consider - most interesting apps actually do some work beyond putting widgets on the screen, usually manipulating data of some kind. The string "Hello World" takes about 61 bytes in Java (probably slightly less in Python but you have more of them floating around), but only 12 in a well written C++ app. A typical Python app has bazillions of strings for internal identifiers and such in the heap, so there's huge wastage there. You can't just ignore this overhead.
I think Python is only rapid if you are working at a certain scale, beyond that you start to go "hmm we can't really release beta 1 when it takes 500mb of RAM to get to the welcome screen", so you end up sinking a lot of time into optimisation and profiling; worse people who chose to go out on a limb and use Python for everything probably aren't going to sit down and go "Huh, maybe we should rewrite large chunks in C++". So it's rather self defeating for very large projects.
Don't get me wrong, I like and use Python. Unfortunately when programming language advocacy is allowed to overtake engineering realities you get problems like this. I have in the past profiled and tried to rescue an app that was meant to be released onto the market as a retail piece of corporate groupware. Unfortunately it was written in Java and used a bunch of Java libraries like JXTA - net result, 20 second startup even on high end hardware, massive bloat that was designed to lurk in the background and about 200-300 threads constantly starting up and shutting down. In the end, that project couldn't be salvaged. It wasn't killed by Java but it certainly didn't help.
It's a shame my original post was deemed to be "flamebait", hopefully meta-mod corrects that - I dislike the fact that C++ is the only credible mainstream language for clientside development these days too, but it doesn't change the basic facts of the market.
C++ is a big improvement over C and nobody knows or uses Haskell - outside of academia it's basically dead. So, no, my arguments suggest C++ and in fact that's what nearly all desktop apps running on peoples (Windows) desktops are.
Well, that's certainly what happened for me. After I started work on a piece of commercial software, even one in which most of the changes were contributed back to the open source community (!!) it was very dis-heartening to see people simply uploading it to warez sites. Occasionally I see people see asinine things like "software vendors shouldn't use copy protection, everyone I know would buy it anyway, it's not necessary". This software had no DRM or copy control and was widely copied illegally. Some of the asshats who did that even then attempted to get free tech support off us.
These episodes, as well as a few others, gave me a healthy respect for the work of others. So I guess at least for one person your theory is correct.
You think they should only complain when they start taking a loss on every movie they make? What kind of a business model is that? It's like saying store owners shouldn't complain when they get raided because the insurance will cover it and they'll still make money this year.
What a dumb line of reasoning. So because you think maybe one day copyright infringement won't be illegal, you feel free to do it today? By that logic I should feel free to sell crack to kids on the street because in the future maybe selling Class A drugs won't be illegal. Fact is today "passing around cultural artifacts" (ie enjoying what somebody made without paying them for it) is illegal, and if you have respect for the law you shouldn't do it!
Please don't confuse the debate by playing word games. It's annoying and helps nobody.
Econ 101: The point of copyright is to force something that isn't physical property to be treated as physical property. This is not rocket science, it's a requirement allowing content creators to be actors in the free market.
So in fact copyright infringement is theft, simply because we define it to be so. Why do we try and square the circle? Because nobody has any better ideas for how to let people get paid for making content.
There are alternatives to this regime, in which content is not hackily cludged to be like property by legislation, but unfortunately the most obvious is for all music/video/books/software .... anything that is "protected by copyright today .... to be funded by the state via taxes. In such a setup it doesn't matter that anybody can duplicate the content because the content creators get paid anyway. However I suspect such a scheme would go down like a ton of bricks amongst the Slashdot crowd.
The choice is simple: either we define copyrighted works to be property and so copyright infringement is theft ... or we can use some alternative system in which it's not property and therefore cannot be traded on the open market. Nobody uses the second, so for now, regardless of what people might like copyright infringement is theft
No, this isn't quite right.
Nothing stops you from checking an autopackage in the same way.
Consider this:
You don't need to install autopackages as root, unlike RPMs or DEBs. So you can, if you wish, ensure that the software you install never gets root.
Cracked mirrors are rarely a problem in practice. How many malware installations on Windows are caused by cracked mirrors? I never heard of any. A much bigger problem in practice is software autors who are deliberately malicious - this is a different problem with different solutions. I think you're barking up the wrong tree.
It's quite easy to get root on your average Linux box anyway. Try attaching a debugger to the Ubuntu sudo frontend some time to see what I mean.
This solves nothing. Now your imaginary hacker just puts the malicious code in the specfiles provided in the source tarball instead of the package itself. You made the user experience worse for no gain in security.
Most package formats are differently merely through being apart. The technical differences between RPM, DEBs, ebuilds etc are not tha large in terms of the fundamental primitives they work with. None has a clear advantage over the other.
The "diversity" you see is not really diversity for the reason given above, so, we pay the price in terms of poor user experience but we don't get any of the benefits
The splintering of it discourages innovation in distro design. No distro can get a large userbase without a large repository, because installing anything outside of the repositories is such a gigantic pain in the ass (unless you use autopackage ;) - so "new" distros tend to merely be derivatives of existing distros with very minor changes.
In short, we get all the pain of diversity and none of the gain.
There's growing recognition of this fact in the upper echelons of the community. At LUGRadio Live Mark Shuttleworth talked about the need for standardised package management and the need to move away from the repository model of software distribution towards one where anybody could publish a package that works on any distribution. Of course Ubuntu is the poster child for centralised packaging, so who knows if it'll happen. Probably not.
Hey that's great news. Let's hope that branch is merged into the trunk in time for 2.5
Yep. And look at the story a while back about IPv6 ... riddled with extremely basic factual errors that the author could have found just by CCing somebody from the IT department. Something that would have not even required moving out of his seat, yet it wasn't done.
Basically, the only news source I really trust these days is the BBC. And if I read a newspaper, the Guardian, which at least has the benefit of being owned by some kind of non-profit trust rather than Murdoch.
I'll call you on that too. The BBC has no incentive to transmit infomercials, especially not from the government, indeed their competitors (Sky etc) would be all over them if they were caught doing such a thing.
Have you considered that maybe this "infomercial" you saw was in fact a natural history program written by peoeple who, in fact, happened to believe that the governments policies towards agriculture were a good thing? Have you got proof that the makers of this program were paid to say what they said, or is this merely wishful thinking from somebody who hates Blair so much they can't resist dumb name-calling?
I think you hit the nail on the head with that. If only I had mod points.
Exactly. Merely because something is learned doesn't mean it's valuable. All kinds of crap is routinely churned out by academia and immediately forgotten, never to be used again.
Yeah, I'm 22 as well ;) I think we were really the last of the generation that had access to home BASIC. I learned really on the BBC Basic, QuickBasic was cool but quite limited compared to that, and after that it turned into a desert of gaming. VB never really was up to much in the gaming arena and wasn't free anyway.
Yeah, that's pretty crappy I agree, but on the other hand it would encourage you to - you know - invite your friends over to play on your own console. It's not like this means only one person can ever play it. Write a good multiplayer game and friends/family can still have a blast playing it. And it sounds like fixing this to provide a Nintendo Virtual Console alike online wouldn't be too hard for them, who knows, if the program takes off and there are some good games there then hopefully they'll extend it so any XBox 360 owner can download the games (for a small fee or for free).
More likely, to sign the binaries you have to upload them to a protected Microsoft server and they take care of building/signing/distributing the actual binaries for you. Hence the $99/yr cost (which isn't much really, for a hobby).
I think this is fantastic news, if only because it offers a cool and enticing way into programming for the younger generation (shit that makes me sound old ...)
If you interview a random sample of programmers in the world today I bet a lot of the 25-30 aged ones will have got started by writing cheesy games as kids for their {Commodore 64/Sinclair Spectrum/BBC Micro}, even if they then went into corporate software, operating systems, embedded work or whatever. Learning to write software by doing databases in Visual Basic is boring. Learning to write software by doing cool games you can add multiplayer to and beat your friends at is a much better proposition.
Wasn't the head of Nintendo saying that it's a shame games are no longer feasable for hobbyists and entry level studios? It's surprising Microsoft beat them to it, but then Visual Studio Express was designed for the home/hobbyist developer as well if I remember correctly so maybe not too surprising. Here's hoping it becomes a trend and the next generation of coders are learning threading by actually doing it, instead of memorizing lecture slides.
Yes, exactly, this privacy policy is a waste of space. It basically says they record searches and will happily sell or share that information with their partners, but in an anonymous fashion, ie they won't tell their partners who they are. Which is what you'd expect, as they don't know who you are either.
It also says they won't monitor what you click, but then, Google originally didn't either and ended up starting - probably as part of fighting web spam. Clusty could do exactly the same thing because they reserve the right to amend the document at any time, so, really, you don't know any more about what they will do with your information than before you started.
That'd work if everybody took complete responsibility for their own bodies. But they don't. They take drugs, get horribly sick and then expect the rest of us to take care of them either via taxes (in the UK) or higher insurance premiums (in the US).
To be honest, any behavior where people go "I am willing to fuck up my own body because I know if it comes to the crunch I'll be seen by a doctor" is highly questionable and probably should be illegal. Yes that goes for smoking too. I think if back when tobacco smoking was first invented the massive, massive health problems and subsequent costs had been known it would have been made illegal as well. The fact that it isn't says more about barn doors than anything else. Once it's legalised it's really hard to go back if it turns out to have been a mistake.
Well, I clicked on several in the past week alone. Usually because what was being advertised happened to be what I was looking for and the organic search results didn't show me anything interesting. Let's see, this happened for a couple of careers pages I was checking out for a friend, and an advert for an economics discussion forum. I don't remember clicking on any AdSense ads, but I guess it could happen. I don't remember actually buying anything, but then again, the advertisers weren't selling.
Remember that once the infrastructure is in place the cost per search is pretty low. So even if you hardly ever click on an advert, it can still be profitable.
What on earth makes you think IP addresses would be in any way useful?
IP address tells you sweet FA about anything these days. AOL used to run pretty much their entire userbase via a caching web proxy, so every single AOL user showed up with a single IP address. NAT is so widespread now that 2 clicks in a short timespan from the same IP address could mean a user clicking twice on an advert, or it could simply mean two entirely different people that happen to be behind the same caching proxy/NAT router clicking once, or it could be two users who happened to go through a DHCP reconfiguration in between the clicks.
I also find the idea that somehow there needs to be regulation like with TV advertising a bit weird. With pretty much any ad campaign except online advertising you get no reliable statistics at all about its impact. How many people saw it? You can only guess. How much traffic did it drive to your business? You cannot know. Even if traffic goes up after the advert run, it might have been due to other factors (mention in a newspaper, other website etc). No amount of regulation will ever give you the amount of transparency you already get with online advertising in another medium.
Er, no, you seem to have misunderstood me. I have never tried to write an FPS in Java. Evolution has many problems yes but it'd be a lot worse if the whole thing was written in Python.
You can die a death of a thousand cuts. The idea that you can optimise a few hotspots then use something slow/inefficient for the rest just doesn't work when everything needs to be tight (like on desktop apps). Not me saying this, talk to the Unreal Engine authors about it.
Not with complete accuracy but things like the eraser algorithm can detect some kinds of races, and something is better than nothing right? Static analysis tools are very helpful, I've found.
How? Where does the Python interpreter do register allocation, cross-module inlining, dead code elimination etc .... if it does do this I never encountered it reading the code.
What makes you think I haven't? I've had to rescue at least one disaster caused by this kind of mentality before, though it was with Java and not Python (Java is if anything much less extreme than Python in this regard). In fact it couldn't be rescued, the project tanked, though after we rewrote a large part of the user interface to be only C++ user satisfaction in internal tests went way up.
I've also had the "fun" of writing embedded Java for mobile phones, where every byte counts. The sloppy and unprofessional approach to resource usage in the Java language and J2ME specifically caused much hand wringing. One reason BREW is competing so strongly with it is that BREW lets you use C++.
And finally I have tried to profile a Python app for memory usage, but gave up when I discovered that Python doesn't even try to be efficient with memory usage. No point trying to optimise the main app when the runtime makes memory inefficiency pervasive.
It only takes 12 in UTF-8 as well of course. Besides, you only need to use Unicode strings when you know it might contain non-ASCII characters. If you are reading, say, an XML file using a schema of your own devising, then you can say with certainty that there is no need to store the tag names using double byte encodings - this "one size fits all" string encoding choice of Javas is questionable and a serious resource hog.
Yes, I played with D a year or so ago. It's really nice and hopefully one day I'll get to write desktop software with it. It provides most of the benefits of more modern languages without the downsides.
I realised after I posted that I should back this up with some argument instead of just pointing to newly released commercial software.
The idea that if you have a fast GUI toolkit you can bind to it and use slow and inefficient languages is popular but IMHO wrong. Consider - most interesting apps actually do some work beyond putting widgets on the screen, usually manipulating data of some kind. The string "Hello World" takes about 61 bytes in Java (probably slightly less in Python but you have more of them floating around), but only 12 in a well written C++ app. A typical Python app has bazillions of strings for internal identifiers and such in the heap, so there's huge wastage there. You can't just ignore this overhead.
I think Python is only rapid if you are working at a certain scale, beyond that you start to go "hmm we can't really release beta 1 when it takes 500mb of RAM to get to the welcome screen", so you end up sinking a lot of time into optimisation and profiling; worse people who chose to go out on a limb and use Python for everything probably aren't going to sit down and go "Huh, maybe we should rewrite large chunks in C++". So it's rather self defeating for very large projects.
Don't get me wrong, I like and use Python. Unfortunately when programming language advocacy is allowed to overtake engineering realities you get problems like this. I have in the past profiled and tried to rescue an app that was meant to be released onto the market as a retail piece of corporate groupware. Unfortunately it was written in Java and used a bunch of Java libraries like JXTA - net result, 20 second startup even on high end hardware, massive bloat that was designed to lurk in the background and about 200-300 threads constantly starting up and shutting down. In the end, that project couldn't be salvaged. It wasn't killed by Java but it certainly didn't help.
It's a shame my original post was deemed to be "flamebait", hopefully meta-mod corrects that - I dislike the fact that C++ is the only credible mainstream language for clientside development these days too, but it doesn't change the basic facts of the market.
C++ is a big improvement over C and nobody knows or uses Haskell - outside of academia it's basically dead. So, no, my arguments suggest C++ and in fact that's what nearly all desktop apps running on peoples (Windows) desktops are.