I have, and I do it today (and with MFC-based code. It doesn't get harder than that!)
The trick to making it easy is to have a single thread handling the UI, and worker threads fetching data or performing calculations. the threads change data that is shared with the main thread (I conceptualise this by passing a pointer to the object that has the UI methods, so I have data local to the worker, and data that is owned by the main object that I access indirectly). Anytime I access that UI data, I put a critical section round it, and I either post messages to the UI thread to get it to perform whatever updates I need it to do with that data. Decoupling the threads like this works really well, it never deadlocks and you never have race conditions, and it doesn't take much discipline either - just remember some data doesn't belong to you, and you follow simple rules to access it, and never try to call UI functions directly from the worker thread.
After reading his blog entry, I think that I know the reason he doesn't like threads. If he codes even a tiny bit like he writes then I wouldn't be surprised if his single-threaded apps had race conditions and deadlocks.
I think he's also a little stuck in the 80s - 'virtual method calls cost'. yup they do, but on a 3GHz machine, the cost is literally negligible. The cost to allocate 1 byte of memory from main ram costs more than the entire time spent fixing up virtual method calls for an entire day! (and if I exaggerate about the comparison, let me remind you firefox allocates a little more than 1 byte of memory...)
He could easily put 1 thread per tab and not have any concurrency issues, no race conditions, no deadlocks. As long as he slapped a single mutex around memory shared between tabs and held it for as short a time as possible, then there will be no problems. Simple, easy, safe and yet so effective! You don't need to add threading within a javascript script - that'd be overengineering worthy of the FF memory leak.
Mozilla needs a new CTO, someone who can talk abotu stuff they know what they're talking about, not someone who likes to speak as eruditely as possibly (probably to make himself sound more intelligent) and leave the incomprehensible, management-style buzzword-speak alone.
it matters because if you have good rep on slashdot, chances are you're not a complete mumpty. On the other hand, if you have a dreadful karma on slashdot, you'll be saying the same old pants on other sites too.
It really ensures that if you post good stuff somewhere you can be trusted to post good stuff on other sites too. What that means to a particular site depends on that site, for something like ebay that can matter quite a lot, at least it would allow good posters to be recognised as such, and then I think sites would start to implement policies on posting that restrict non-recognised 'nyms until they gain a good reputation.
Wouldn't it be safe to say that more platforms support C than Python?
You have no idea what you are talking about, do you? Any platform that supports C also supports Python, unless you count really tiny ones that do not have enough memory. So therefore, what you're saying is that more platforms support C than Python.
ah, but developers of such applications have fast LAN networks and fast processors and lots of ram, so no they don't get annoyed at all 'cos the program doesn't hang logn enough to annoy them on their boxes.
The OP is not reinventing the wheel WRT an installer, but a way to get those packaged msis to the end-user in a easier-to-use fashion.
The OP should have a look at Wix (on sourceforge), which was MS's very first foray in to the world of open source. Its a XML-based msi creation tool. It may not help the package manager but will provide the tools for OSS developers to create msi packages (especially if you provide easy-to-modify simple packages) ready to slot into your manager.
If I took an app, "lost" 95% of the code, then I guarantee it'd work faster. Of course, by "work" I mean, "do nothing" but lets not let a little semantics get in that way of some technical self-aggrandisement.:)
Now lighttpd serves 6 out of the top 250 sites. Do you think the other 246 run IIS or something?
Lighttpd is good, but is best used in specialised instances, for specific (mainly static content) tasks. Its pointless using it for PHP as the cost of forking out a process to run the script will outweigh any saving from running a lighter-weight http server.
(x) Requires too much cooperation from spammers (x) Requires immediate total cooperation from everybody at once (x) Many email users cannot afford to lose business or alienate potential employers nope, requires no coop from spammers, however you're right in that it requires everybody else to sign up to it. Usually these systems are a pie-in-the-sky 'nice idea', but the difference here is the backing of a standards body which will help takeup. Hopefully, enough implementations will crop up that it snowballs.
The email users bit is just tosh, lose business from where? viagra selling businesses?(x) Armies of worm riddled broadband-connected Windows boxes (x) Extreme profitability of spam (x) Joe jobs and/or identity theft (x) Extreme stupidity on the part of people who do business with spammers (x) Dishonesty on the part of spammers themselves (x) Outlook Well, its true that the worms will get round this a little (in that the spammer will not be paying the generate-a-key cost), but it will stop joejobs - this really is the point here. Before, you'd send out a spam with a forged header saying it came from the whitehouse.gov, and when it got filtered and rejected, some poor sod at the whitehouse would receive the spam email that had been bounced from whoever you sent it to. This enables servers to tell if the sender is the sender, and can just delete the spam if it doesn't match.
True, MS isn't on the list, so Outlook may not support it... pity.
The big problem is the high-takeup of the system, if not recipients will continue to have to check spam using the old familiar tools, and and DKIM-signed mails can be whitelisted as genuine (maybe not from a company you'd like to rceive email from, but at least you'll know for sure who they are).
This seems to solve 2 things that people have always said would fix spam - a small cost of sending a mail, and authenticaton of the sender.
Yes, thousands of people were arrested once their CC numbers cropped up, but then the police used that as a (admittedly excellent) source to investigate further. No-one was convicted solely on the CC information.
I mean, if my CC number was on that list, the police would knock on my door in the early morning, show me the warrant and demand my computer, and I'd panic that they would find out about my secret custard fetish.
As for the flaws on Operation Ore - Wikipedia (yes, I know) says that 7,250 suspects identified, 4,283 homes searched, 3,744 arrests, 1,848 charged, 1,451 convictions, 493 cautioned. So only 50% were even arrested, let alone charged. How many of those arrested do you think were charged simply because of their CC numbers being in the list?
the biggest flaw with CVS is the fact its a client->files system, ie your client writes data directly to the repository. If you lose your network connection halfway through writing... uh-oh. SVN fixes this by making it all a client-server model instead. It is better.
However, SVN does have soem disadvantages (and some say these are so bad its not worth using it). SVN only manages whole directories - you cannot operate on a single file, try checking out a single file and you'll find you cannot. SVN also has a strange tagging/branching system, based on a kind of 'symbolic link' system that is efficient, but seems to be an engineering solution to a problem that needs to be solved by something more intuitive to a human operator. (eg. you cannot 'tag' a set of files, you have to make a branch and name the branch to the tag you want, it is great back at the server, but useless from the client POV).
So, SVN is better is many respects to CVS, but it is worse is others, and unfortunately it is not the ultimate source-control system I wish it was.
(oh, and as for the article - good stats, but ultimately useless - what's the point of tarring your files and storing them just so checkins go faster. Now if he'd supplied a patch to the client that tarred all files you were checking in, and to the server to untar them before checkin now *that* would make an excellent article.)
That means one day there will be massive Dyke Nerd Orgies and slashdotters will never get laid.
Yep, but just think of the webcam site - a thousand webcams scattered all over the clone dorm, each one connected wirelessly to a linux distribution streaming server that has multiple NICs and redundant bandwidth and.. oh err.. sorry, got sidetracked a little - just think of the boobies!
I remember it, it ended badly too - of course, in these stories, the men are always shown to be power-crazed sex maniacs who can't sit still without fighting something over someone. you never read sci-fi stories where an all-women crew spend all the time bitching, backstabbing and gossipping, but I suppose all these stories are written from an insecure male perspective.
C.J. Cherryh did write a story about male/female role reversal though - the Chanur series. Basically took the idea of 'lions in space' where the females do all the work and the males are just brutes not good for anything other than fighting and f*cking. She shows a different side to the male/female stereotypes in the end too.
However, I think the 'lose to those who provide it' will not readily happen. The issue will be with cost - any new ISP who bases their usage pattern on full downloads of streaming or video bandwidth will have their customers using a lot of bandwidth, and so their prices will have to reflect this. As such it will be a minority of customers who are willing to pay the premium for it, and so the old ISPs will continue providing their solutions.
I hope that it will slowly make the backbone providers put more and more capacity into the networks so ISPs can purchase it cheaper and cheaper, and then eventually we'll have all the bandwidth we want for a nice cheap price (well, we'll never get that, once you start getting enough bandwidth for medium-sized movies, you'll want full widescreen, then you'll want HD, then one day you'll want holographic images etc etc - it'll never, ever be enough)
worse, even if you choose not to use Google (for whatever reason you might have in the future, say because it starts targetting ads at you from your inbox contents), you might end up using it anyway because your ISP has outsourced mail to them.
I worry the same - but then I stared using Mozy with my own encryption key (2gb space for free), and it backs up my thunderbird folder every half hour so I don't worry about that anymore, now I just worry about forgetting my key:)
It is the same Atmail software, although I hear that Plusnet made custom modifications to the software. Difficult to say, perhaps a programmer made changes and he is no longer working there, perhaps its an older version of the software they won't/can't upgrade. I did see Atmail has an update out on the 17th...
lol, but wasn't BIND in the top ten of all-time exploitable apps ever, and Sendmail is a byword for dodgy applications, and Apache is so-named because of all the patches that it had applied to it.
Of course, that was then, are they really as bad now as they are reputed to be?
I have, and I do it today (and with MFC-based code. It doesn't get harder than that!)
The trick to making it easy is to have a single thread handling the UI, and worker threads fetching data or performing calculations. the threads change data that is shared with the main thread (I conceptualise this by passing a pointer to the object that has the UI methods, so I have data local to the worker, and data that is owned by the main object that I access indirectly). Anytime I access that UI data, I put a critical section round it, and I either post messages to the UI thread to get it to perform whatever updates I need it to do with that data. Decoupling the threads like this works really well, it never deadlocks and you never have race conditions, and it doesn't take much discipline either - just remember some data doesn't belong to you, and you follow simple rules to access it, and never try to call UI functions directly from the worker thread.
After reading his blog entry, I think that I know the reason he doesn't like threads. If he codes even a tiny bit like he writes then I wouldn't be surprised if his single-threaded apps had race conditions and deadlocks.
I think he's also a little stuck in the 80s - 'virtual method calls cost'. yup they do, but on a 3GHz machine, the cost is literally negligible. The cost to allocate 1 byte of memory from main ram costs more than the entire time spent fixing up virtual method calls for an entire day! (and if I exaggerate about the comparison, let me remind you firefox allocates a little more than 1 byte of memory...)
He could easily put 1 thread per tab and not have any concurrency issues, no race conditions, no deadlocks. As long as he slapped a single mutex around memory shared between tabs and held it for as short a time as possible, then there will be no problems. Simple, easy, safe and yet so effective! You don't need to add threading within a javascript script - that'd be overengineering worthy of the FF memory leak.
Mozilla needs a new CTO, someone who can talk abotu stuff they know what they're talking about, not someone who likes to speak as eruditely as possibly (probably to make himself sound more intelligent) and leave the incomprehensible, management-style buzzword-speak alone.
and even the BSD one has a buffer overflow in it. Perhaps you consider the BSD devs 'dumbfucks' too?
it matters because if you have good rep on slashdot, chances are you're not a complete mumpty. On the other hand, if you have a dreadful karma on slashdot, you'll be saying the same old pants on other sites too.
It really ensures that if you post good stuff somewhere you can be trusted to post good stuff on other sites too. What that means to a particular site depends on that site, for something like ebay that can matter quite a lot, at least it would allow good posters to be recognised as such, and then I think sites would start to implement policies on posting that restrict non-recognised 'nyms until they gain a good reputation.
You have no idea what you are talking about, do you? Any platform that supports C also supports Python, unless you count really tiny ones that do not have enough memory. So therefore, what you're saying is that more platforms support C than Python.
He keeps bitching all the time: about customer feature request
are we talking about the SVN development team? Especially when people ask for tags...
lol. and the car parks at the places these guys work at are empty, right?
They mean - "everybody *else* needs to stop being dependant on the automobile, they're really hampering our enjoyment of driving".
ah, but developers of such applications have fast LAN networks and fast processors and lots of ram, so no they don't get annoyed at all 'cos the program doesn't hang logn enough to annoy them on their boxes.
..... make him delete all the spam emails he sent out, individually.
The OP is not reinventing the wheel WRT an installer, but a way to get those packaged msis to the end-user in a easier-to-use fashion.
The OP should have a look at Wix (on sourceforge), which was MS's very first foray in to the world of open source. Its a XML-based msi creation tool. It may not help the package manager but will provide the tools for OSS developers to create msi packages (especially if you provide easy-to-modify simple packages) ready to slot into your manager.
If I took an app, "lost" 95% of the code, then I guarantee it'd work faster. Of course, by "work" I mean, "do nothing" but lets not let a little semantics get in that way of some technical self-aggrandisement. :)
They are for static content.
Now lighttpd serves 6 out of the top 250 sites. Do you think the other 246 run IIS or something?
Lighttpd is good, but is best used in specialised instances, for specific (mainly static content) tasks. Its pointless using it for PHP as the cost of forking out a process to run the script will outweigh any saving from running a lighter-weight http server.
From what I've read about it.. my comments:
... pity.
(x) Requires too much cooperation from spammers
(x) Requires immediate total cooperation from everybody at once
(x) Many email users cannot afford to lose business or alienate potential employers nope, requires no coop from spammers, however you're right in that it requires everybody else to sign up to it. Usually these systems are a pie-in-the-sky 'nice idea', but the difference here is the backing of a standards body which will help takeup. Hopefully, enough implementations will crop up that it snowballs.
The email users bit is just tosh, lose business from where? viagra selling businesses? (x) Armies of worm riddled broadband-connected Windows boxes
(x) Extreme profitability of spam
(x) Joe jobs and/or identity theft
(x) Extreme stupidity on the part of people who do business with spammers
(x) Dishonesty on the part of spammers themselves
(x) Outlook Well, its true that the worms will get round this a little (in that the spammer will not be paying the generate-a-key cost), but it will stop joejobs - this really is the point here. Before, you'd send out a spam with a forged header saying it came from the whitehouse.gov, and when it got filtered and rejected, some poor sod at the whitehouse would receive the spam email that had been bounced from whoever you sent it to. This enables servers to tell if the sender is the sender, and can just delete the spam if it doesn't match.
True, MS isn't on the list, so Outlook may not support it
The big problem is the high-takeup of the system, if not recipients will continue to have to check spam using the old familiar tools, and and DKIM-signed mails can be whitelisted as genuine (maybe not from a company you'd like to rceive email from, but at least you'll know for sure who they are).
This seems to solve 2 things that people have always said would fix spam - a small cost of sending a mail, and authenticaton of the sender.
Yes, thousands of people were arrested once their CC numbers cropped up, but then the police used that as a (admittedly excellent) source to investigate further. No-one was convicted solely on the CC information.
I mean, if my CC number was on that list, the police would knock on my door in the early morning, show me the warrant and demand my computer, and I'd panic that they would find out about my secret custard fetish.
As for the flaws on Operation Ore - Wikipedia (yes, I know) says that 7,250 suspects identified, 4,283 homes searched, 3,744 arrests, 1,848 charged, 1,451 convictions, 493 cautioned. So only 50% were even arrested, let alone charged. How many of those arrested do you think were charged simply because of their CC numbers being in the list?
the biggest flaw with CVS is the fact its a client->files system, ie your client writes data directly to the repository. If you lose your network connection halfway through writing... uh-oh. SVN fixes this by making it all a client-server model instead. It is better.
However, SVN does have soem disadvantages (and some say these are so bad its not worth using it). SVN only manages whole directories - you cannot operate on a single file, try checking out a single file and you'll find you cannot. SVN also has a strange tagging/branching system, based on a kind of 'symbolic link' system that is efficient, but seems to be an engineering solution to a problem that needs to be solved by something more intuitive to a human operator. (eg. you cannot 'tag' a set of files, you have to make a branch and name the branch to the tag you want, it is great back at the server, but useless from the client POV).
So, SVN is better is many respects to CVS, but it is worse is others, and unfortunately it is not the ultimate source-control system I wish it was.
(oh, and as for the article - good stats, but ultimately useless - what's the point of tarring your files and storing them just so checkins go faster. Now if he'd supplied a patch to the client that tarred all files you were checking in, and to the server to untar them before checkin now *that* would make an excellent article.)
That means one day there will be massive Dyke Nerd Orgies and slashdotters will never get laid.
.. oh err.. sorry, got sidetracked a little - just think of the boobies!
Yep, but just think of the webcam site - a thousand webcams scattered all over the clone dorm, each one connected wirelessly to a linux distribution streaming server that has multiple NICs and redundant bandwidth and
I remember it, it ended badly too - of course, in these stories, the men are always shown to be power-crazed sex maniacs who can't sit still without fighting something over someone. you never read sci-fi stories where an all-women crew spend all the time bitching, backstabbing and gossipping, but I suppose all these stories are written from an insecure male perspective.
C.J. Cherryh did write a story about male/female role reversal though - the Chanur series. Basically took the idea of 'lions in space' where the females do all the work and the males are just brutes not good for anything other than fighting and f*cking. She shows a different side to the male/female stereotypes in the end too.
... and my other car is a Porsche...
However, I think the 'lose to those who provide it' will not readily happen. The issue will be with cost - any new ISP who bases their usage pattern on full downloads of streaming or video bandwidth will have their customers using a lot of bandwidth, and so their prices will have to reflect this. As such it will be a minority of customers who are willing to pay the premium for it, and so the old ISPs will continue providing their solutions.
I hope that it will slowly make the backbone providers put more and more capacity into the networks so ISPs can purchase it cheaper and cheaper, and then eventually we'll have all the bandwidth we want for a nice cheap price (well, we'll never get that, once you start getting enough bandwidth for medium-sized movies, you'll want full widescreen, then you'll want HD, then one day you'll want holographic images etc etc - it'll never, ever be enough)
worse, even if you choose not to use Google (for whatever reason you might have in the future, say because it starts targetting ads at you from your inbox contents), you might end up using it anyway because your ISP has outsourced mail to them.
I worry the same - but then I stared using Mozy with my own encryption key (2gb space for free), and it backs up my thunderbird folder every half hour so I don't worry about that anymore, now I just worry about forgetting my key :)
It is the same Atmail software, although I hear that Plusnet made custom modifications to the software. Difficult to say, perhaps a programmer made changes and he is no longer working there, perhaps its an older version of the software they won't/can't upgrade. I did see Atmail has an update out on the 17th...
This has a little bit about the situation:
http://www.thinkbroadband.com/news/i/3088.html
lol, but wasn't BIND in the top ten of all-time exploitable apps ever, and Sendmail is a byword for dodgy applications, and Apache is so-named because of all the patches that it had applied to it.
Of course, that was then, are they really as bad now as they are reputed to be?