Bugs are when the software doesn't fulfill the specification; defects are when the specification doesn't fulfill the requirements. These problems are introduced at different stages of development. As one professor put it there are two questions "Did I implement the thing right?" and "Did I implement the right thing?" Early on in the software design it's important to make sure that the specifications that are written for the software actually meet what the customer wants. These are the problems that can potentially be very costly to fix later on. You can implement an entire software system that perfectly meets the specs (i.e. no bugs), but if the specs were flawed it could take a lot of time to revise the specs and fix the system to implement the right thing.
Bug testing is another thing completely. You can't find bugs until they've actually been written in the code. This is the reason for the "test early, test often" philosophy and code reviews. It's important to find bugs early too, but you're right that it isn't feasible to find bugs before the implementation phase.
I don't play golf myself, but TV and movies constantly portray golfers getting frustrated and throwing or breaking clubs however no one attributes violence to golfing. Of course I don't even necessarily believe that a person acting somewhat violently is bad. I've pounded on my keyboard and desk, hit my computer, etc. in frustration though I am about the most even-tempered person you'll find. Violence can be cathartic. I'm not suggesting you go punch the next person you see, or throw your monitor out the window, but non-destructive ways of unleashing a little violence like hitting a punching bag or blowing away a few guys in your favorite video game can be a great stress reliever.
Yeah, I still use XMMS since it gets the job done, but I'd like to see something better. I've tried Rythmbox, but it seems to screw up on some of the ID3 tags on my files and it can't edit them. I'd like to see a media library app integrate with MusicBrainz, not just for getting info for CD ripping, but also to check the tags on existing music files.
Well if you're set on AAC I can't help you, but if you're simply looking for an MP3 alternative, tkcPlayer for the Zaurus will do Ogg Vorbis which is about even with AAC in terms of quality. You can find it here.
Well as was said before, MP3 is really only usefull if you need to be able to play it on a portable device that doesn't support other formats. AAC and MPC are currently give you the best quality for the bitrate. Vorbis lags slightly behind, but I still use it since it's supported by default in XMMS and Winamp (it's also nice to know it will always remain free). MP3 has really been outclassed by the newer formats, but we need users to start realizing this and pushing for hardware to support something better. We're in a position right now where portable players are supporting MP3 since it's the most widely used and people keep using MP3 since that's what their players will play.
Well, it really doesn't matter since open source DRM can't work. For DRM to work the decrypting mechanism needs to be a blackbox. This is why the MPAA cares so much about DeCSS. If the users know how the protection works they can simply remove it.
I don't know about the main Knoppix distro, but a derivative Morphix has good nVidia support and it runs great on my AthlonXP (I'm running a HD install of it now). You can actually enable the nvidia accelerated driver by typing "morphix xmodule=nvidia" at the boot prompt. Morphix also offers modularization of the system so it's easier to make your own custom ISOs. They provide ISOs for Gnome, KDE, or XFCE plus a game ISO which comes with a bunch of cool Linux games including Enemy Territory.
I prefer RadialContext myself. It makes things just as quick as the mouse gestures, but since you still have a visible menu you don't have the problems of screwing up a gesture. I remember some gestures where if you screwed up a little it would end up doing the wrong thing. I never have this problem with the RadialContext, plus you don't have any of the complicated gestures either. Some of the gestures I found to be frustrating, like drawing an 'S' to view the source, or an 'h' to go home.
The mp3elf looks pretty neat. I've been thinking about how I'll do my audio setup when I move soon and this looks like a really neat solution. What I'd really like though is to have the device be wireless (802.11 b or g). Since the mp3elf requires a separate TINI board for the network interface is it possible to get a wireless version of the TINI? I think that would be nice so I could have my music portable to anywhere in the house.
What this needs is structured light in order to be able to actually create a 3D model from the scans. Do one scan with the structured light to get the model, then another normal scan to get the texture to map onto it.
What you're referring to is only part of what makes a computer complex. Certainly you can simulate a more complex processor than the one that is running the machine, but you can't simluate a computer with as much or more memory/storage than the one that's simulating it.
Yes, and given enough monkeys, typewriters and time they'll eventually type out the source code to Linux or something, but that doesn't mean they're smart enough to do it intentionally.
Well, Black Body Radiation is the phenomenon where something emits light as it is heated up, and yes this means that you can make pretty much anything give off light by making it really hot. This is how incandescent light bulbs work, the tungsten filament has a high resistance, so when electricity passes through it heats up and gives off light. Though this article is slim on the details, I imagine this new discovery does not involve simply causing the molecules to heat up to the point where they emit light. We all know the current problems processors have with heat dissipation, so I believe this is something that would be avoided.
Apparently they're going to be "Action/Adventure" games, which Full Throttle had some action elements to begin with, but I'm afraid they may end up making them mostly action and very little adventure like they did with the new Indiana Jones games. I'm really looking forward to these games and I hope they don't disappoint me like the Indiana Jones ones did.
I believe there's still a market for adventure games with young audiences too, not just the nostalgic gamers who grew up on them. I've got my 10 year old brother playing Curse of Monkey Island now and he's really enjoying it. One of the things I think has hurt adventure games is the push for 3d graphics, mainly because I haven't found the 3d control schemes quite as easy to use as the 2d mouse interface. I thought Grim Fandango was an excelent game, though I did find the control to be frustrating at times, like if I didn't turn quite right to look at the item I was trying to get. I understand that game developers feel they need to try to keep up with the graphics trends, but I think they need to realize that gameplay should be first, and so they should only develop a 3d adventure game if they can make the controls work well.
2gigs of files playing for 2 weeks??? Based on the size of the Divx movies I typically watch that would only be about 5-6 hours of video. Are you watching really low quality video, or have you been watching the same movies over 50 times?
Yes, Chromium would work, but it tends to introduce a noticable decrease in performance. In some cases this may be ok, but since wallhacking doesn't require most of Chromium's features, a more specific OpenGL wrapper would allow for much less of an impact on performance. Chromium has other cool applications to gaming though, watching Quake III run on a screen made up of 3 projectors side-by-side is really cool.
I don't know what you're talking about. I signed up for a new account because I was getting tired of the junk mail on my Hotmail account and even though I hadn't given out my address yet I started getting junk mail a couple days later. I abandoned that account without ever actually using it because I got at least as much mail as with Hotmail.
How long will it take for hard drives to catch up?
on
8.6 GB Internet?
·
· Score: 5, Insightful
While this is pretty cool theoretically, current hard drives don't even come close to handling this kind of bandwidth, so there isn't much use for this until we can actually manage to store the data fast enough to keep up with the connection.
This article claims they can fit 30 hours of music on a CD using MiniDisc compression, which from what I've read only provides a 5:1 compression ratio, or about 6.7 hours on an 80 minute disc. In order to compress 30 hours of music into 700MB you'd need to compress it at about 53kbps, which I don't know of any compression format which provides decent audio quality at that rate. Even the claims of 100 hours of music on a DVD (assuming a standard single layer 4.7GB recordable DVD) would only allow for 110kbps which is getting kind of low.
In Australia some lawyer obtained a patent to the wheel back in 2001.
Here it is!
He took advantage of a new program for 8 year "Innovation Patents" which basically don't get reviewed. This was basically a stunt to prove that the new program was flawed.
They will bait you to their site, and when you go onto their site to retrieve some file they say they have and attempt to download it, they will log where their server is sending it to.
And a letter from their legal counsel will go out in the next day's mail.
Well, IANAL, but that sounds like entrapment, which is illegal.
The suggestions at the end of the article include avoiding alcohol, however they do suggest aspirin to thin the blood. Doesn't alcohol thin the blood as well? It seems that alcohol should actually reduce the risk of a blood clot rather than increase it.
Re:Practical Applications
on
Effective Java
·
· Score: 1
Well, I believe C# is a good alternative for VB programmers. You still have the GUI design tool that you'd be accustomed to, though with all the benefits of a good object-oriented language. C# is also makes it easier to integrate pieces of a program written in multiple languages, or link to DLLs. JNI is alright, but is not as straight-forward as in C#.
I like Java a lot, though primarily for use in building web applications, not stand-alone client applications.
Good, but need to avoid a few problems
on
Java Gets Templates
·
· Score: 5, Informative
Doing mainly C++ development I've learned to love the STL and most recently the Boost libraries and I've long regretted that Java didn't support templates. It always confused me that with as much emphasis was placed on strong typing in Java that there was so much need for casting.
Although I'm glad to see the introduction of templates, I'm also concerned about how some of the problems I've encountered with C++ templates will be avoided. The biggest problem I've encountered has been the lack of interface checking.
For example the templated function for_each(begin, end, function) iterates from 'begin' to 'end' calling 'function' on each item inbetween. However there is no mechanism to specify that the type of passed to 'begin' and 'end' must have an equality operator and an operator* and 'function' must take one parameter of the type returned by *begin. This can cause very strange compiler errors when a user tries to pass a variable that doesn't support the proper operations to be compatible with the function. These errors actually appear to occur within the templated code, not the user-written code and can make determining the cause of these errors very difficult.
The Boost Concept Check library provides a way for programmers writing templated C++ code to enforce the interface requirements on the templated parameters in a way that gives more informative error messages. However this is rarely used, even in the Boost libraries. The documentation on the Boost Concept Check gives a good example of the kind of errors that C++ programmers dread.
In order for Java templates to be successful they will need to provide some manner of enforcing requirements on the interface necessary for the templated code to work and provide useful errors at compile time if it doesn't.
Bugs are when the software doesn't fulfill the specification; defects are when the specification doesn't fulfill the requirements. These problems are introduced at different stages of development. As one professor put it there are two questions "Did I implement the thing right?" and "Did I implement the right thing?" Early on in the software design it's important to make sure that the specifications that are written for the software actually meet what the customer wants. These are the problems that can potentially be very costly to fix later on. You can implement an entire software system that perfectly meets the specs (i.e. no bugs), but if the specs were flawed it could take a lot of time to revise the specs and fix the system to implement the right thing.
Bug testing is another thing completely. You can't find bugs until they've actually been written in the code. This is the reason for the "test early, test often" philosophy and code reviews. It's important to find bugs early too, but you're right that it isn't feasible to find bugs before the implementation phase.
I don't play golf myself, but TV and movies constantly portray golfers getting frustrated and throwing or breaking clubs however no one attributes violence to golfing. Of course I don't even necessarily believe that a person acting somewhat violently is bad. I've pounded on my keyboard and desk, hit my computer, etc. in frustration though I am about the most even-tempered person you'll find. Violence can be cathartic. I'm not suggesting you go punch the next person you see, or throw your monitor out the window, but non-destructive ways of unleashing a little violence like hitting a punching bag or blowing away a few guys in your favorite video game can be a great stress reliever.
Yeah, I still use XMMS since it gets the job done, but I'd like to see something better. I've tried Rythmbox, but it seems to screw up on some of the ID3 tags on my files and it can't edit them. I'd like to see a media library app integrate with MusicBrainz, not just for getting info for CD ripping, but also to check the tags on existing music files.
Well if you're set on AAC I can't help you, but if you're simply looking for an MP3 alternative, tkcPlayer for the Zaurus will do Ogg Vorbis which is about even with AAC in terms of quality. You can find it here.
Well as was said before, MP3 is really only usefull if you need to be able to play it on a portable device that doesn't support other formats. AAC and MPC are currently give you the best quality for the bitrate. Vorbis lags slightly behind, but I still use it since it's supported by default in XMMS and Winamp (it's also nice to know it will always remain free). MP3 has really been outclassed by the newer formats, but we need users to start realizing this and pushing for hardware to support something better. We're in a position right now where portable players are supporting MP3 since it's the most widely used and people keep using MP3 since that's what their players will play.
Well, it really doesn't matter since open source DRM can't work. For DRM to work the decrypting mechanism needs to be a blackbox. This is why the MPAA cares so much about DeCSS. If the users know how the protection works they can simply remove it.
I don't know about the main Knoppix distro, but a derivative Morphix has good nVidia support and it runs great on my AthlonXP (I'm running a HD install of it now). You can actually enable the nvidia accelerated driver by typing "morphix xmodule=nvidia" at the boot prompt. Morphix also offers modularization of the system so it's easier to make your own custom ISOs. They provide ISOs for Gnome, KDE, or XFCE plus a game ISO which comes with a bunch of cool Linux games including Enemy Territory.
I prefer RadialContext myself. It makes things just as quick as the mouse gestures, but since you still have a visible menu you don't have the problems of screwing up a gesture. I remember some gestures where if you screwed up a little it would end up doing the wrong thing. I never have this problem with the RadialContext, plus you don't have any of the complicated gestures either. Some of the gestures I found to be frustrating, like drawing an 'S' to view the source, or an 'h' to go home.
The mp3elf looks pretty neat. I've been thinking about how I'll do my audio setup when I move soon and this looks like a really neat solution. What I'd really like though is to have the device be wireless (802.11 b or g). Since the mp3elf requires a separate TINI board for the network interface is it possible to get a wireless version of the TINI? I think that would be nice so I could have my music portable to anywhere in the house.
What this needs is structured light in order to be able to actually create a 3D model from the scans. Do one scan with the structured light to get the model, then another normal scan to get the texture to map onto it.
What you're referring to is only part of what makes a computer complex. Certainly you can simulate a more complex processor than the one that is running the machine, but you can't simluate a computer with as much or more memory/storage than the one that's simulating it.
Yes, and given enough monkeys, typewriters and time they'll eventually type out the source code to Linux or something, but that doesn't mean they're smart enough to do it intentionally.
Well, Black Body Radiation is the phenomenon where something emits light as it is heated up, and yes this means that you can make pretty much anything give off light by making it really hot. This is how incandescent light bulbs work, the tungsten filament has a high resistance, so when electricity passes through it heats up and gives off light. Though this article is slim on the details, I imagine this new discovery does not involve simply causing the molecules to heat up to the point where they emit light. We all know the current problems processors have with heat dissipation, so I believe this is something that would be avoided.
Hmm, no problem on Phoenix build 20030407. Tried it turning on and off the ability for JavaScript to raise and lower windows.
Apparently they're going to be "Action/Adventure" games, which Full Throttle had some action elements to begin with, but I'm afraid they may end up making them mostly action and very little adventure like they did with the new Indiana Jones games. I'm really looking forward to these games and I hope they don't disappoint me like the Indiana Jones ones did.
I believe there's still a market for adventure games with young audiences too, not just the nostalgic gamers who grew up on them. I've got my 10 year old brother playing Curse of Monkey Island now and he's really enjoying it. One of the things I think has hurt adventure games is the push for 3d graphics, mainly because I haven't found the 3d control schemes quite as easy to use as the 2d mouse interface. I thought Grim Fandango was an excelent game, though I did find the control to be frustrating at times, like if I didn't turn quite right to look at the item I was trying to get. I understand that game developers feel they need to try to keep up with the graphics trends, but I think they need to realize that gameplay should be first, and so they should only develop a 3d adventure game if they can make the controls work well.
2gigs of files playing for 2 weeks??? Based on the size of the Divx movies I typically watch that would only be about 5-6 hours of video. Are you watching really low quality video, or have you been watching the same movies over 50 times?
Yes, Chromium would work, but it tends to introduce a noticable decrease in performance. In some cases this may be ok, but since wallhacking doesn't require most of Chromium's features, a more specific OpenGL wrapper would allow for much less of an impact on performance. Chromium has other cool applications to gaming though, watching Quake III run on a screen made up of 3 projectors side-by-side is really cool.
I don't know what you're talking about. I signed up for a new account because I was getting tired of the junk mail on my Hotmail account and even though I hadn't given out my address yet I started getting junk mail a couple days later. I abandoned that account without ever actually using it because I got at least as much mail as with Hotmail.
While this is pretty cool theoretically, current hard drives don't even come close to handling this kind of bandwidth, so there isn't much use for this until we can actually manage to store the data fast enough to keep up with the connection.
This article claims they can fit 30 hours of music on a CD using MiniDisc compression, which from what I've read only provides a 5:1 compression ratio, or about 6.7 hours on an 80 minute disc. In order to compress 30 hours of music into 700MB you'd need to compress it at about 53kbps, which I don't know of any compression format which provides decent audio quality at that rate. Even the claims of 100 hours of music on a DVD (assuming a standard single layer 4.7GB recordable DVD) would only allow for 110kbps which is getting kind of low.
In Australia some lawyer obtained a patent to the wheel back in 2001. Here it is! He took advantage of a new program for 8 year "Innovation Patents" which basically don't get reviewed. This was basically a stunt to prove that the new program was flawed.
They will bait you to their site, and when you go onto their site to retrieve some file they say they have and attempt to download it, they will log where their server is sending it to.
And a letter from their legal counsel will go out in the next day's mail.
Well, IANAL, but that sounds like entrapment, which is illegal.
The suggestions at the end of the article include avoiding alcohol, however they do suggest aspirin to thin the blood. Doesn't alcohol thin the blood as well? It seems that alcohol should actually reduce the risk of a blood clot rather than increase it.
Well, I believe C# is a good alternative for VB programmers. You still have the GUI design tool that you'd be accustomed to, though with all the benefits of a good object-oriented language. C# is also makes it easier to integrate pieces of a program written in multiple languages, or link to DLLs. JNI is alright, but is not as straight-forward as in C#.
I like Java a lot, though primarily for use in building web applications, not stand-alone client applications.
Doing mainly C++ development I've learned to love the STL and most recently the Boost libraries and I've long regretted that Java didn't support templates. It always confused me that with as much emphasis was placed on strong typing in Java that there was so much need for casting.
Although I'm glad to see the introduction of templates, I'm also concerned about how some of the problems I've encountered with C++ templates will be avoided. The biggest problem I've encountered has been the lack of interface checking.
For example the templated function for_each(begin, end, function) iterates from 'begin' to 'end' calling 'function' on each item inbetween. However there is no mechanism to specify that the type of passed to 'begin' and 'end' must have an equality operator and an operator* and 'function' must take one parameter of the type returned by *begin. This can cause very strange compiler errors when a user tries to pass a variable that doesn't support the proper operations to be compatible with the function. These errors actually appear to occur within the templated code, not the user-written code and can make determining the cause of these errors very difficult.
The Boost Concept Check library provides a way for programmers writing templated C++ code to enforce the interface requirements on the templated parameters in a way that gives more informative error messages. However this is rarely used, even in the Boost libraries. The documentation on the Boost Concept Check gives a good example of the kind of errors that C++ programmers dread.
In order for Java templates to be successful they will need to provide some manner of enforcing requirements on the interface necessary for the templated code to work and provide useful errors at compile time if it doesn't.