This is a real problem for me. Currently my laptop doesn't handle heat very well (freezes up on me), so I'm having to be extra careful about the CPU usage spiking. Unfortunately this happens pretty much any time I want to watch a flash-based video player on a website. Strangely, some sites are better on the CPU than others...
I find youtube's actually not bad for CPU usage.
Anyways, probably a better fix is to clean my laptop fan. But I find the CPU usage in Flash to be very annoying.
Just to clarify... don't get me wrong, I am actually really happy that they support Linux at all and generally seem happy working with "non-standard" operating systems and making their register-level descriptions open.
This is a big improvement over other manufacturers. We had one data acquisition manufacturer who made us sign an NDA just so we could write a lean driver. (Which was significantly faster than the one they shipped.) This made distributing to customers particularly difficult since most of our software is a sort of "shared source". (Unfortunately not open source, but almost all our customers have access to the source.)
We're very happy not to have to repeat this now that we've moved to NI.
The main complaint is just that one of the things that convinced us to go with NI is their support for Linux, and then we discovered it really wasn't what we expected. Commercial companies seem to have a really hard time understanding how to support Linux--- I don't think this is exactly Linux's fault. They just need to understand that it's not Windows; distributing a big self-installing executable once every 3 years is not the way to go with Linux.
actually afaik Pandora is an example of an "expert-driven" service. Songs were rated by experts on various categories and this metadata was used to organize them. Probably some automated analysis was also used to speed up the process.
This is different from LastFM which uses user-generated metadata, which is a concept that scales way better but may be less accurate.
Both of these can be mixed with automated techniques to enhance the results of course.
obviously their userbase already have a strong interest in Linux.
If so, they sure are ignoring us. The last release of their Linux driver package (NIDAQ) was in 2005. Installing it on a recent version of Linux proved practically impossible. Finally after a few days of installing and reinstalling different distros I got it working on a 2-year-old version of SuSE. But basically determined that outside of personal use, this is totally impossible to expect customers to use if we are to integrate an NI board into our product.
Finally discovered that their "register-level driver" is way more efficient and easier to integrate into a software package. Even open source! We're using it and are happy with it, but unfortunately due to the fact that they are using a "BSD license" (although it doesn't actually say that anywhere on the product, they confirmed it in a forum post.. the software just says "copyright national instruments") GPL-incompatibility issues are stopping us from adding new features, like for instance having it play nice with udev.
After contacting them they seemed interested in rectifying the issue but since seem to have dropped it.
I dunno, they just don't seem to be able to keep up with Linux. You'd think compiling against the latest distro and putting out a driver update or two in a 2-year period wouldn't be so hard for a company that's all about hardware.
A good side of course is that their hardware is fully documented. It's possible that a community effort like comedi is just a better solution in the long run. But I'd prefer it even more if there were an effort to get a standard interface for multifunction DAQs into the Linux kernel. Basically, the OSS model of long-term reliability is to play well with others and contribute your drivers to a larger project instead of trying to do everything yourself. That way everyone helps to port things forward when interfaces change. I wish more companies would realize this, but instead they fall back to NIH syndrome over and over again, making more work for themselves than necessary, and complaining that Linux support is too hard.
Meanwhile, is it _really_ necessary for the Windows driver package to be a freaking 1 GB DOWNLOAD!? When all I need is a couple of DLLs and some header files.
An editor would be a great addition to GRUB. I've used GRUB's "cat" command before to take a quick look at some text files. Being able to edit them would be a pretty simple additional command I would think, and it doesn't really need to "boot" at all.
Personally I do believe in intellectual property "rights", in an abstract sense, but I do NOT believe that such rights are actually physically enforcable. I don't condone copyright theft ("theft"), and I don't download music unless the artist or label posts it online for download. *However* I tend to think that DRM ("digital locks") and other technical methods of enforcing intellectual property rights are effectively useless, and thus whether or not these rights exist is, I feel, a moot point--- property is worthless if you can't defend it. So while I don't want to break copyrights myself, I really can't be bothered to tell other people off for doing it; they're merely taking the path of least resistance between themselves and the media they want to consume. The most it gets out of me is a shrug. If a company wants to invest millions of dollars into a medium that has no tangible existance, and therefore practically zero security in terms of profit, I figure that's their problem, not mine. I don't have to partake, but I don't really give a damn if they get ripped off, because it's a hole they dug themselves into.
(For full disclosure, I do download tv shows quite often, but most of these are viewable on their respective websites anyways.. that's a bit of a grey area for me, but it's a vice, perhaps a bit of a hypocritical one. Again.. *shrug*. Do as I say not as I do, and all that.)
Your example is *way* too simplistic though. You're not doing any sharing of information there, and thus not demonstrating anything that would happen in the real world.
First of all, you have two threads with their entire bodies looping on the same lock. What's going to happen? They are going to run one after the other, making the use of threads completely pointless in this context.
Secondly, in an actual application the real problem is how to share information between the worker threads and the main thread. Passing information to the thread usually isn't too hard -- give it a pointer and then delete your own copy of the pointer, so it's impossible for them to overwrite each other's data structures. Now use the lock to pass data back to the main thread on a queue or something. Fine, that'll work.
But there are lots of situations where passing a whole object off to a worker thread and having it come back when it's done won't cut it. What if the thread needs to calculate some value and give it to the member variable of a shared object? You either lock the object and write it, meaning you need to stick locking code everywhere the shared object is touched, or you use message passing so that the main thread can retrieve the value from a message queue. But then you're essentially using a custom implementation of an IPC mechanism. May as well just use a pipe or socket.
I find, generally speaking, that as threads because more and more useful in an application, the more they start to resemble processes, and the more you start to need to implement mechanisms that resemble IPC. May as well just use real IPC and processes in the first place, since this is what they are designed for, and it is the very reason they were designed to be so cheap and easy (fork(), socketpair()) on Unix in the first place.
After using threads for years and always implementing the same hackish techniques for stopping them from stepping on each other, I think I've decided at this point to never use them any more.
Programmers complain incessantly about users ignoring messages. Almost always it's the programmer's fault for not designing their user interface for their target audience.
whoa whoa whoa... what is the programmer doing designing the user interface??
I kid, I kid. I know it happens all the time, even I do it. But in the cases of companies like MS or even larger organizations like Mozilla, I'm not really joking..
This is the first time I've realized that the Oort cloud is only theoretical. I didn't realize we haven't really properly observed it. That kind of freaks me out... how can we NOT know whether or not we are completely surrounded by billions and billions of comets?
I felt the same way. I absolutely loved reading the Baroque Cycle books, I couldn't put them down. Now I'm reading that lots of people didn't enjoy them, which is too bad, but I really found them, if not profound, then really fun to read.
Particularly the last book, when he got into the history of economics, which I found both fascinating and entertaining. It felt like I learned a lot, maybe not about factual history, but about the history of how people have thought about things like money and politics, and how this history might have affected how we currently think about these things.
I fully agree with you. And how can we fix it? Mass protest? It's sad that there are so many issues to fight at least several of them get through the political sieve every year. Particularly with the conservatives in charge. It's just too much to fight.
Also it is beyond my understanding that someone tells us that what is being done is good for them without seeing there, talking to anyone working there. Don't you think it is way too arrogant to "know" what is good for them?
Though I don't necessarily agree with the grandparent post, I just wanted to point out here that you could replace the word "good" with "bad" in the above paragraph and it would be equally true.
And yes, I agree with you, I think it would be pretty enlightening to have an actual conversation with some of these "sweat factory" workers to see how really happy or unhappy they are. All the media attention on this subject is pretty much always biased one way or the other, I find it almost impossible to figure out what the actual situation is. Which is too bad, because I would let it affect my purchasing decisions if I actually knew the truth. As it is though, I can't even follow the number of boycotts that are called for left and right on every product under the sun, so I'd go crazy trying to do the "right thing".
What I find hilarious about this is that it shows how hardcore, bare-to-the-metal programmers have to deal with exactly the same stupid issues as web developers.
A nice thing about that model is that it caps the price at the value added. Think sun is charging too much? compile it yourself and support it yourself.
Until someone does figure out to compile and releases a nice auto-build tool under GPL that anyone can use with the click of a mouse. Then it's back to Litigation City.
For example, if I understand correctly, this is basically what happened with WineX, the custom Wine port for Cedega. They release the source as subversion (not tarball) but provided binaries for a cost. They even made it pretty difficult to find the svn repository, but it would be mentioned here or there on a forum, or maybe a single small link on their site. Finally someone managed to produce a script that would download the source and compile it in one easy shot. In fairness, they did not go legal on it. (Not sure they would have a case anyways.) But they did ask politely to have it removed, I think, from Gentoo for example, who complied. (With or without fuss, I don't remember.) But basically their business model relied on everyone being polite, which as I'm sure you'll agree can, unfortunately, only last so long. It's not a good long-term business plan.
Usually ideas based essentially on obfuscation (difficulty to decypher, or in this case, difficulty to compile) don't have much to them. It's just another example of false and temporary scarcity that the information economy relies on so heavily.
Cool, I hope it supports some kind of markup language though.
Re:separated images available?
on
Mars In 3D
·
· Score: 1
Yup, that works too.
separated images available?
on
Mars In 3D
·
· Score: 4, Interesting
Does anyone know if they post the left and right images separately anywhere?
For those of us who don't have immediate access to a pair of red-blue glasses, there are other ways..
For instance, they could provide an animated gif of both images alternating, which gives you a 3D impression as if you're moving your head to the left and right. This doesn't require glasses and can be a pretty effective way to get an image to "pop out" without actually being stereoscopic.
Forget the UI, it's usable and that's what matters. What Ubuntu needs now is support from other players in the software market.
Honestly, I'm pretty well convinced at this point that Ubuntu is "ready". I know tons of people that would switch to it if they could. The crux of the problem is that the major applications these people depend on (or at least, are used to using) don't run on it. What Ubuntu needs more than anything is to make deals with the major players in various software markets (graphics, video, gaming, CAD, simulation, RAD languages, etc) to port their applications. I don't know how this could happen, but I'm pretty sure it's necessary for us to see major adoption.
While there obviously are some amazing and great tools that come with Ubuntu, it needs to be possible for someone to use those few applications they need. Companies need to start offering Ubuntu versions of their products. If that happens, it's game, set, match. And I actually think this would be possible: considering how disheartened many people feel about Vista, convincing them to port to another platform in order to reduce their dependency on MS might not be so difficult anymore. People seem to be finally seeing the pattern than dependence on a moving target like Windows can come back to bite them.
I think a few deals in this direction might actually have the potential to push Ubuntu into the mass market.
This is a real problem for me. Currently my laptop doesn't handle heat very well (freezes up on me), so I'm having to be extra careful about the CPU usage spiking. Unfortunately this happens pretty much any time I want to watch a flash-based video player on a website. Strangely, some sites are better on the CPU than others...
I find youtube's actually not bad for CPU usage.
Anyways, probably a better fix is to clean my laptop fan. But I find the CPU usage in Flash to be very annoying.
wow.. that's crazy. it's not even a good photoshopping job. you can see the blurry lines around the foreheads, like it was done in 5 seconds.
Way funnier than my comment. Mod up! ;-)
Don't read Slashdot at work. :)
Just to clarify... don't get me wrong, I am actually really happy that they support Linux at all and generally seem happy working with "non-standard" operating systems and making their register-level descriptions open.
This is a big improvement over other manufacturers. We had one data acquisition manufacturer who made us sign an NDA just so we could write a lean driver. (Which was significantly faster than the one they shipped.) This made distributing to customers particularly difficult since most of our software is a sort of "shared source". (Unfortunately not open source, but almost all our customers have access to the source.)
We're very happy not to have to repeat this now that we've moved to NI.
The main complaint is just that one of the things that convinced us to go with NI is their support for Linux, and then we discovered it really wasn't what we expected. Commercial companies seem to have a really hard time understanding how to support Linux--- I don't think this is exactly Linux's fault. They just need to understand that it's not Windows; distributing a big self-installing executable once every 3 years is not the way to go with Linux.
actually afaik Pandora is an example of an "expert-driven" service. Songs were rated by experts on various categories and this metadata was used to organize them. Probably some automated analysis was also used to speed up the process.
This is different from LastFM which uses user-generated metadata, which is a concept that scales way better but may be less accurate.
Both of these can be mixed with automated techniques to enhance the results of course.
If so, they sure are ignoring us. The last release of their Linux driver package (NIDAQ) was in 2005. Installing it on a recent version of Linux proved practically impossible. Finally after a few days of installing and reinstalling different distros I got it working on a 2-year-old version of SuSE. But basically determined that outside of personal use, this is totally impossible to expect customers to use if we are to integrate an NI board into our product.
Finally discovered that their "register-level driver" is way more efficient and easier to integrate into a software package. Even open source! We're using it and are happy with it, but unfortunately due to the fact that they are using a "BSD license" (although it doesn't actually say that anywhere on the product, they confirmed it in a forum post.. the software just says "copyright national instruments") GPL-incompatibility issues are stopping us from adding new features, like for instance having it play nice with udev.
After contacting them they seemed interested in rectifying the issue but since seem to have dropped it.
I dunno, they just don't seem to be able to keep up with Linux. You'd think compiling against the latest distro and putting out a driver update or two in a 2-year period wouldn't be so hard for a company that's all about hardware.
A good side of course is that their hardware is fully documented. It's possible that a community effort like comedi is just a better solution in the long run. But I'd prefer it even more if there were an effort to get a standard interface for multifunction DAQs into the Linux kernel. Basically, the OSS model of long-term reliability is to play well with others and contribute your drivers to a larger project instead of trying to do everything yourself. That way everyone helps to port things forward when interfaces change. I wish more companies would realize this, but instead they fall back to NIH syndrome over and over again, making more work for themselves than necessary, and complaining that Linux support is too hard.
Meanwhile, is it _really_ necessary for the Windows driver package to be a freaking 1 GB DOWNLOAD!? When all I need is a couple of DLLs and some header files.
An editor would be a great addition to GRUB. I've used GRUB's "cat" command before to take a quick look at some text files. Being able to edit them would be a pretty simple additional command I would think, and it doesn't really need to "boot" at all.
Is this significantly different from tagging a release in a version control system?
Personally I do believe in intellectual property "rights", in an abstract sense, but I do NOT believe that such rights are actually physically enforcable. I don't condone copyright theft ("theft"), and I don't download music unless the artist or label posts it online for download. *However* I tend to think that DRM ("digital locks") and other technical methods of enforcing intellectual property rights are effectively useless, and thus whether or not these rights exist is, I feel, a moot point--- property is worthless if you can't defend it. So while I don't want to break copyrights myself, I really can't be bothered to tell other people off for doing it; they're merely taking the path of least resistance between themselves and the media they want to consume. The most it gets out of me is a shrug. If a company wants to invest millions of dollars into a medium that has no tangible existance, and therefore practically zero security in terms of profit, I figure that's their problem, not mine. I don't have to partake, but I don't really give a damn if they get ripped off, because it's a hole they dug themselves into.
(For full disclosure, I do download tv shows quite often, but most of these are viewable on their respective websites anyways.. that's a bit of a grey area for me, but it's a vice, perhaps a bit of a hypocritical one. Again.. *shrug*. Do as I say not as I do, and all that.)
This photo is just beautiful. Congratulations to the astronomers involved!
Your example is *way* too simplistic though. You're not doing any sharing of information there, and thus not demonstrating anything that would happen in the real world.
First of all, you have two threads with their entire bodies looping on the same lock. What's going to happen? They are going to run one after the other, making the use of threads completely pointless in this context.
Secondly, in an actual application the real problem is how to share information between the worker threads and the main thread. Passing information to the thread usually isn't too hard -- give it a pointer and then delete your own copy of the pointer, so it's impossible for them to overwrite each other's data structures. Now use the lock to pass data back to the main thread on a queue or something. Fine, that'll work.
But there are lots of situations where passing a whole object off to a worker thread and having it come back when it's done won't cut it. What if the thread needs to calculate some value and give it to the member variable of a shared object? You either lock the object and write it, meaning you need to stick locking code everywhere the shared object is touched, or you use message passing so that the main thread can retrieve the value from a message queue. But then you're essentially using a custom implementation of an IPC mechanism. May as well just use a pipe or socket.
I find, generally speaking, that as threads because more and more useful in an application, the more they start to resemble processes, and the more you start to need to implement mechanisms that resemble IPC. May as well just use real IPC and processes in the first place, since this is what they are designed for, and it is the very reason they were designed to be so cheap and easy (fork(), socketpair()) on Unix in the first place.
After using threads for years and always implementing the same hackish techniques for stopping them from stepping on each other, I think I've decided at this point to never use them any more.
whoa whoa whoa... what is the programmer doing designing the user interface??
I kid, I kid. I know it happens all the time, even I do it. But in the cases of companies like MS or even larger organizations like Mozilla, I'm not really joking..
This is the first time I've realized that the Oort cloud is only theoretical. I didn't realize we haven't really properly observed it. That kind of freaks me out... how can we NOT know whether or not we are completely surrounded by billions and billions of comets?
I felt the same way. I absolutely loved reading the Baroque Cycle books, I couldn't put them down. Now I'm reading that lots of people didn't enjoy them, which is too bad, but I really found them, if not profound, then really fun to read.
Particularly the last book, when he got into the history of economics, which I found both fascinating and entertaining. It felt like I learned a lot, maybe not about factual history, but about the history of how people have thought about things like money and politics, and how this history might have affected how we currently think about these things.
I fully agree with you. And how can we fix it? Mass protest? It's sad that there are so many issues to fight at least several of them get through the political sieve every year. Particularly with the conservatives in charge. It's just too much to fight.
Though I don't necessarily agree with the grandparent post, I just wanted to point out here that you could replace the word "good" with "bad" in the above paragraph and it would be equally true.
And yes, I agree with you, I think it would be pretty enlightening to have an actual conversation with some of these "sweat factory" workers to see how really happy or unhappy they are. All the media attention on this subject is pretty much always biased one way or the other, I find it almost impossible to figure out what the actual situation is. Which is too bad, because I would let it affect my purchasing decisions if I actually knew the truth. As it is though, I can't even follow the number of boycotts that are called for left and right on every product under the sun, so I'd go crazy trying to do the "right thing".
If you perform your bathroom operations in parallel, you've got bigger problems than dating.
What I find hilarious about this is that it shows how hardcore, bare-to-the-metal programmers have to deal with exactly the same stupid issues as web developers.
A nice thing about that model is that it caps the price at the value added. Think sun is charging too much? compile it yourself and support it yourself.
Until someone does figure out to compile and releases a nice auto-build tool under GPL that anyone can use with the click of a mouse. Then it's back to Litigation City.
For example, if I understand correctly, this is basically what happened with WineX, the custom Wine port for Cedega. They release the source as subversion (not tarball) but provided binaries for a cost. They even made it pretty difficult to find the svn repository, but it would be mentioned here or there on a forum, or maybe a single small link on their site. Finally someone managed to produce a script that would download the source and compile it in one easy shot. In fairness, they did not go legal on it. (Not sure they would have a case anyways.) But they did ask politely to have it removed, I think, from Gentoo for example, who complied. (With or without fuss, I don't remember.) But basically their business model relied on everyone being polite, which as I'm sure you'll agree can, unfortunately, only last so long. It's not a good long-term business plan.
Usually ideas based essentially on obfuscation (difficulty to decypher, or in this case, difficulty to compile) don't have much to them. It's just another example of false and temporary scarcity that the information economy relies on so heavily.
Cool, I hope it supports some kind of markup language though.
Yup, that works too.
Does anyone know if they post the left and right images separately anywhere?
For those of us who don't have immediate access to a pair of red-blue glasses, there are other ways..
For instance, they could provide an animated gif of both images alternating, which gives you a 3D impression as if you're moving your head to the left and right. This doesn't require glasses and can be a pretty effective way to get an image to "pop out" without actually being stereoscopic.
Forget the UI, it's usable and that's what matters. What Ubuntu needs now is support from other players in the software market.
Honestly, I'm pretty well convinced at this point that Ubuntu is "ready". I know tons of people that would switch to it if they could. The crux of the problem is that the major applications these people depend on (or at least, are used to using) don't run on it. What Ubuntu needs more than anything is to make deals with the major players in various software markets (graphics, video, gaming, CAD, simulation, RAD languages, etc) to port their applications. I don't know how this could happen, but I'm pretty sure it's necessary for us to see major adoption.
While there obviously are some amazing and great tools that come with Ubuntu, it needs to be possible for someone to use those few applications they need. Companies need to start offering Ubuntu versions of their products. If that happens, it's game, set, match. And I actually think this would be possible: considering how disheartened many people feel about Vista, convincing them to port to another platform in order to reduce their dependency on MS might not be so difficult anymore. People seem to be finally seeing the pattern than dependence on a moving target like Windows can come back to bite them.
I think a few deals in this direction might actually have the potential to push Ubuntu into the mass market.
You're talking about an embedded ARM board for $5? Where can you get such a thing?