We are all waiting for people with nicks like cybrpnk, telling us how easy it would be to make a simulation of something nobody understands, by linking all the computers in the world together in unrealistic ways in order to achieve an ill-defined and unverifiable goal because he claims it is already being done in the small scale (without success, I might add), without explaining what would make it happen simply by adding more computers.
It definitely will. Lossy image compression seems less and less attractive as higher bandwidth and more storage space becomes available. For any professional use, i.e. when you really need all the detail you can get, it's certainly not what you want.
The same can obviously be said about lossy audio and video compression, but for the moment (at least when it comes to video), it is totally unpractical to use anything else. So they will stay much longer.
I can have a PHYSICALLY BIGGER hard drive! A full-height 5 1/4 one, like the old IBM PC ones, but with superdense and 10000RPM spinning platters.
So that could bring me up to maybe 512GB, or more.
Remember, big means slow, as they will tear apart if you run them too fast. It would be better to add more platters.
And who the fuck can fill up a terabyte in an appreciable amount of time?
Well, what's the write speed of the disk?
Seriously, if you are working with seismic data, it's obviously not a problem. I guess experimental nuclear physicists and radio-astronomers feel the same way. And, as storage capacity increases, I can certainly not see the media industy having problems using it all up (I guess Industrial light and magic already do).
Even for home users, it is hard to see an end to the cry for storage space. Ok, you can store a lot of mp3's now, but not really that many DVD-quality movies. And DVD is certainly not the end of the search for better quality. Remember the hype around VR a few years ago? How much storage will your average Holodeck need?
Ah, no. But what you see, is only the binary. It's only after it is compiled with gcc (genetic code compiler) that it seems messy. It's like viewing a binary in texteditor. As I remember, God used to be especially picky on intendation and variable naming, and listed preconditions and postconditions for all his functions, as well as invariants for all of his datastructures.
To not get spammed by the content provider as I register my personal info.
Privacy. I seldom leave much personal info when I buy something with cash in a store, so why would I have to tell everything when I buy something over the Internet.
Security. I try to minimize my use of credit cards over the net (as well as anywhere else) as much as possible.
Simplicity. I don't want to fill in lot's of details simply to view a page. Paying for anything on the Internet today often takes at least a few minutes.
Pay only for what I use. I don't want to "subscribe" to a zillion websites with different usernames and passwords having them charging me monthly fees long after I've lost interest in them and forgotten all about it.
Cheap rates for low usage. If I am going to access the content on a site only three or four times a year, I don't want to pay large monthly fees, or even pay for 100's of accesses beforehand.
Good previews. Going into a bookstore, I can look at the book for as long as I want, as long as I never leave the shop. That is how I decide whether or not to buy the book. It is very rare for me to buy a book simply based on the title or recommendations from others.
As you can see, all of my grieves would be solved by micropayments. If I could simply access a site, find information, look at it, and after a certain amount of time a dialog box would pop up, saying something like:
You have looked at this long enough. You can preview some more, but it will cost you $0.02 for 5 more minutes. Or you can buy the content for $20.00. When you buy, you will also be able to download the content locally, and print as many copies as you like (for personal use only) [preview][buy][cancel].
and any payments I would do were automatic, anonymous, and as simple as pressing the [buy] button (no forms to fill out, no hassle), then I would be more than happy to pay for content as well as anything else over the Internet.
I'm curious. Why don't you allow interpreted code? Does this really help security? I can't imagine it would help security in any way, but I might be wrong. Have you removed/bin/sh as well?
You can't use Python like Perl even though it has a strong, Perl-compatible regular expression library. And you can't ues it like Smalltalk even though it has OO and can even support meta-OO types of programming. And it doesn't support functional programming even though it has map, filter, lambda and list comprehensions.
Actually, I couldn't have said it better myself. That is exactly why I don't use Python much. The regexps might be good, but can you do
while (<>) {
$between_markers =/foo/../bar/;
$text.= $_ if $between_markers;
if ($between_markers =~/E0/) {
dosomethingwith $text;
$text = "";
}
}
easily? It might have map and filter, but does that make it a functional language? It certainly doesn't feel like one, and I for one feel that e.g. C++ with STL comes much more close to being a functional language than Python ever will. Likewise, it might support OO, but is it SmallTalk? Even java come closer if you ask me. Not that there is anything inherently wrong with any of those examples of Python features, but I find it easier to use more languages if each of them can do one thing well.
Well, if you are constantly hassled by more codebase to use (more to learn, more bloat to be added), better development tools (that take more time to learn than the time you might save), more documentation (for new products that does exactly the same as the old products, except everything is different), how are you supposed to get the time to work? When are you going to sit down and simply hack?
Besides, I doubt more shit means better jobs. A good job is somewhere where you can simply do your thing, and get paid for it, not somewhere where you will have to incorporate every buzzword in a project description to be able to get something done (even if you get paid more). Let's face it, new doesn't mean better. For what it does, Fortran is a great language. It lets you get things done.
And if you really believe open source will magically give you faster development, then you really need a reality check. While it might be true of some specific projects, it is certainly not a universal truth. Put 3-5 fulltime developers on a project, or 100 student hobbyists and watch who can keep up with deadlines. Open source certainly has some benefits (especially for the customer), but it is certainly not a silber bullet.
Why doesn't more people use Ruby?
on
Why not Ruby?
·
· Score: 2
Ok, I'll try to bite, although I'm not a heavy user of scripting languages.
I first discovered Ruby about 1 1/2 year ago, and was greatly impressed. The language combines most of the good qualities of both Perl (ability to write compact code, TMTOWTDI, useful one-liners, etc) and Python (readability, orthogonality, actual language design and not just evolution), and adds a few other goodies from Smalltalk (code-blocks, garbage collection, etc).
But my immediate reaction was also: Why do we need yet another scripting language? We already have Perl, Python and Tcl, which together should fill most niches people have for scripting in the Unix world. And the few people who aren't happy with e.g. reference counting, but want something academically pleasing would probably not look for a "practical" scripting language, but go with something like Scheme, Haskell or other "clean" languages. (I know, as I've been using SML for scripting purposes myself, simply because SML was the programming language I worked in mostly at the time).
The timing of Ruby's arrival couldn't be much worse. Back in the days of only Perl and Tcl, many people (including myself) were looking for something cleaner. After Python arrived, this niche was mostly filled, and the few people who wasn't at least 80% happy with one of the three scripting languages doesn't make up enough people to really make a difference. Besides, Ruby had all the disadvantages of a newcomer, immaturity (I notices some serious GC performance problems when I tested it on some toy problems in mathematics), incomplete documentation, few users, and so on.
So who would the Ruby user be? To be true, I wouldn't want to convince my company to use Ruby. Ruby is still immature, underdocumented, and it still haven't found it's niche market. For problems suitable to Perl, I use Perl, not Ruby. Why? Because code has to be maintained later (hopefully not by me), and because we don't want to install third party software everywhere to suit every developers whim.
Unless you can point me to a task where Ruby is really much better than all of Perl, Python and Tcl, then I will not adopt it. It is too much of a hassle for me, compared to the tiny benefits it might have if I took the time to learn it properly enough for me to be as effective in Perl.
In summary, the enthusiasm over Ruby is not bad. It is a great language, and certainly better than Python, Ruby or Tcl when it comes to language design, although most likely not implementation (unless something drastically happened while I were away). But the benefits of using it is simply not great enough for all the disadvantages in learning yet another scripting language and supporting it where we need to use it.
Actually, the pogo.com games are Java based so he has to be capturing regions of the screen and comparing the blob to a set of blobs he has representing the entire deck to determine which cards were dealt.
Or disassemble the java code, and rewrite it with some AI, which, depending on your hacking mindset may or may not be easier than reading the screen and moving the mouse. But I digress... it was a wonderful hack.
Actually, that was quite fun, because the machine would lock up in such a funny state. Any key you pressed on the keyboard or the mouse would result in a clicking sound, and even moving the mouse would result in this sound for each "tick". Thus, you could make funny roaring sounds simply by moving the mouse around. It's almost sad they took it away. I'm not sure if it could cause any serious damage, but I guess the press this eventually got forced them to remove the "feature".
I was surprised that they actually translate the speech to text, then run it through a translator, and then translate text back to audio. While that's certainly the best approach for getting something out the door quickly, it seems it would be better to take the three technologies and merge them into something that performs the translation from the original speech without turning it into text first.
I can't possibly imagine that direct translation would be a better solution. What is audio for a computer? It is a sequence of samples, there are no easily visible patterns inside it. The audio signal needs to be simplified into a sequence of phonemes, which can then be analyzed by the translation/parsing unit. And text happens to be a relatively reasonable representation of phonemes (phonetic writing is also a kind of text, you know). Of course, using actual idiosyncratic, but "correct" spelling is incredibly stupid, but some kind of text makes very much sense to me.
If Free Software developers can get a version of.NET that
is as good or better than the Microsoft version at the same time (or before) the Microsoft version is released...
Well, even easier is to use a random combination of letters (in upper and lower case), numbers and punctuation. As you're supposed to do for passwords... So, just choose one of your old passwords (that you still remember), and use that as your username.
I'd never thought beginning CS students would ever care for this. For God's sake, it's intro to CS. You don't really expect the students to produce something even remotely useful, do you?
Now, when it comes to a major thesis, then it becomes interesting to start discussing who should own copyrights to works, but for a basic CS course it should have no interest to anyone. As long as the students deliver their assignments in a form that is technically and legally readable, it doesn't matter to anyone.
It has always striked my as a bit strange, why gold has always been singled out as something that is good to use for currency. Even today, it's mostly true that money is basically gold cheques, where the currency can be said to be an equivalent of so and so much gold in said countrys central bank. And countries issuing currency without a backing in gold, will experience inflation. Ok, that makes some sense, you can't have something for nothing, but why exactly most this thing you back your currency on be gold?
Let's face it, gold is just another merchandice. It's not even very stable, gold prices has been known to have relatively big variations. Why not silver, plastic, tobacco, oil, stock bonds, toothbrushes or even bananas? Well the last two are somewhat silly, and bananas are pretty volatile, but the idea remains, and at least bonds seems to be a very attractive idea (with proper care they will even increase value, meaning you can issue more of the currency without inflationary effects). But there are many other choices as well...
What is it that is so special about gold that it always remains a popular choice to base a currency upon? I don't know...
Re:how can I keep two versions of gcc..
on
GCC 3.0 Released
·
· Score: 2
By setting your environment variables properly, so that you only use one at a time (and needs to run a shell alias each time you want to switch the compiler you use)
But really, that is only nessecary if you use a prebuilt compiler by someone else. If you download the source and read the build instructions you will see that it is no problem at all. I don't remember any details, but it was definitely not an issue last time I experimented a bit with the gcc source (as an expirement in using it as a backend for my own toy language, but gcc turned out to be much too difficult for a toy language:-)
Re:its all quite unambiguous...
on
GCC 3.0 Released
·
· Score: 2
"They" (the standardisation committee) didn't. However, some early C++ compilers did. VC++ and pre 5.x versions of Sun Workshop at least. Maybe also some old gcc versions (I even think the ARM recommended it, back in the days when it described what most people called C++)
This made somewhat sense in that declarations in one scope should last until the end of that scope, so it made the language simpler (for compiler writers (not users)), but it was definitely wrong in the sense that it wasn't very useful.
In summary: The standard got it right, and the original poster got it backwards.
Yang said. "Lab-on-a-chip" devices could contain small laser analysis kits -- nanodetectors -- capable of such things as Raman spectroscopy, a laser technique that can be used to identify chemicals.
would I be correct in guessing that the optical discs resulting from this new technology would store 100 times more data (or maybe 10000 times, if it works in two dimesions)?
No, it's not the size of the laser that matters for data density, it's the wavelength.
However, if they are 100 times smaller (and cheaper) you could put a hundred of them into your device of choice to improve data throughput and access time (even if they can't be controlled independently, there would still be much less head-movement).
to be able to carry a little clear crystal in my pocket with several terabytes of information on it and I just set it in a device with these nice lasers that can read/write the information from it.
Nah, it would just be usual stuff by the time it happens...
Technology is only cool untill it's available. Then it becomes daily life and nobody cares unless it stops working.
Do you daily think about how incredibly cool it is to have a computer thousand times more powerful than computers 50 years ago in your pocket? Having a cell-phone? Running a multi-user OS on your PC? Crossing the atlantic ocean in less than 8 hours? Using satellites for mass communication? Being able to cure almost any decease that used to kill people before they reached 40 just a few hundred years ago? Manipulating the genetic code in plants and animals? Paying with plastic cards? Controlling nuclear energy? Drilling for oil hundreds of meters below the seabed? Surfing and communicating worldwide on the Internet? Driving your own car? Having automated appliances in your house doing your laundry and dishes? We live in an incredibly advanced world, it's just that because things become commonplace we stop seeing the wonders technology already performs for us.
We are all waiting for people with nicks like cybrpnk, telling us how easy it would be to make a simulation of something nobody understands, by linking all the computers in the world together in unrealistic ways in order to achieve an ill-defined and unverifiable goal because he claims it is already being done in the small scale (without success, I might add), without explaining what would make it happen simply by adding more computers.
It definitely will. Lossy image compression seems less and less attractive as higher bandwidth and more storage space becomes available. For any professional use, i.e. when you really need all the detail you can get, it's certainly not what you want.
The same can obviously be said about lossy audio and video compression, but for the moment (at least when it comes to video), it is totally unpractical to use anything else. So they will stay much longer.
Yes, it is.
Remember, big means slow, as they will tear apart if you run them too fast. It would be better to add more platters.
And who the fuck can fill up a terabyte in an appreciable amount of time?
Well, what's the write speed of the disk?
Seriously, if you are working with seismic data, it's obviously not a problem. I guess experimental nuclear physicists and radio-astronomers feel the same way. And, as storage capacity increases, I can certainly not see the media industy having problems using it all up (I guess Industrial light and magic already do).
Even for home users, it is hard to see an end to the cry for storage space. Ok, you can store a lot of mp3's now, but not really that many DVD-quality movies. And DVD is certainly not the end of the search for better quality. Remember the hype around VR a few years ago? How much storage will your average Holodeck need?
And more platters, more heads per platter, heads moving individually instead of together, as well as good old-fashioned caching.
Ah, no. But what you see, is only the binary. It's only after it is compiled with gcc (genetic code compiler) that it seems messy. It's like viewing a binary in texteditor. As I remember, God used to be especially picky on intendation and variable naming, and listed preconditions and postconditions for all his functions, as well as invariants for all of his datastructures.
perl -e 'print "a nuclear bomb\n";'
As you can see, all of my grieves would be solved by micropayments. If I could simply access a site, find information, look at it, and after a certain amount of time a dialog box would pop up, saying something like:
and any payments I would do were automatic, anonymous, and as simple as pressing the [buy] button (no forms to fill out, no hassle), then I would be more than happy to pay for content as well as anything else over the Internet.
I'm curious. Why don't you allow interpreted code? Does this really help security? I can't imagine it would help security in any way, but I might be wrong. Have you removed /bin/sh as well?
Actually, I couldn't have said it better myself. That is exactly why I don't use Python much. The regexps might be good, but can you do
while (<>) { /foo/ .. /bar/; .= $_ if $between_markers; /E0/) {
$between_markers =
$text
if ($between_markers =~
dosomethingwith $text;
$text = "";
}
}
easily? It might have map and filter, but does that make it a functional language? It certainly doesn't feel like one, and I for one feel that e.g. C++ with STL comes much more close to being a functional language than Python ever will. Likewise, it might support OO, but is it SmallTalk? Even java come closer if you ask me. Not that there is anything inherently wrong with any of those examples of Python features, but I find it easier to use more languages if each of them can do one thing well.
Besides, I doubt more shit means better jobs. A good job is somewhere where you can simply do your thing, and get paid for it, not somewhere where you will have to incorporate every buzzword in a project description to be able to get something done (even if you get paid more). Let's face it, new doesn't mean better. For what it does, Fortran is a great language. It lets you get things done.
And if you really believe open source will magically give you faster development, then you really need a reality check. While it might be true of some specific projects, it is certainly not a universal truth. Put 3-5 fulltime developers on a project, or 100 student hobbyists and watch who can keep up with deadlines. Open source certainly has some benefits (especially for the customer), but it is certainly not a silber bullet.
I first discovered Ruby about 1 1/2 year ago, and was greatly impressed. The language combines most of the good qualities of both Perl (ability to write compact code, TMTOWTDI, useful one-liners, etc) and Python (readability, orthogonality, actual language design and not just evolution), and adds a few other goodies from Smalltalk (code-blocks, garbage collection, etc).
But my immediate reaction was also: Why do we need yet another scripting language? We already have Perl, Python and Tcl, which together should fill most niches people have for scripting in the Unix world. And the few people who aren't happy with e.g. reference counting, but want something academically pleasing would probably not look for a "practical" scripting language, but go with something like Scheme, Haskell or other "clean" languages. (I know, as I've been using SML for scripting purposes myself, simply because SML was the programming language I worked in mostly at the time).
The timing of Ruby's arrival couldn't be much worse. Back in the days of only Perl and Tcl, many people (including myself) were looking for something cleaner. After Python arrived, this niche was mostly filled, and the few people who wasn't at least 80% happy with one of the three scripting languages doesn't make up enough people to really make a difference. Besides, Ruby had all the disadvantages of a newcomer, immaturity (I notices some serious GC performance problems when I tested it on some toy problems in mathematics), incomplete documentation, few users, and so on.
So who would the Ruby user be? To be true, I wouldn't want to convince my company to use Ruby. Ruby is still immature, underdocumented, and it still haven't found it's niche market. For problems suitable to Perl, I use Perl, not Ruby. Why? Because code has to be maintained later (hopefully not by me), and because we don't want to install third party software everywhere to suit every developers whim.
Unless you can point me to a task where Ruby is really much better than all of Perl, Python and Tcl, then I will not adopt it. It is too much of a hassle for me, compared to the tiny benefits it might have if I took the time to learn it properly enough for me to be as effective in Perl.
In summary, the enthusiasm over Ruby is not bad. It is a great language, and certainly better than Python, Ruby or Tcl when it comes to language design, although most likely not implementation (unless something drastically happened while I were away). But the benefits of using it is simply not great enough for all the disadvantages in learning yet another scripting language and supporting it where we need to use it.
Or disassemble the java code, and rewrite it with some AI, which, depending on your hacking mindset may or may not be easier than reading the screen and moving the mouse. But I digress... it was a wonderful hack.
Actually, that was quite fun, because the machine would lock up in such a funny state. Any key you pressed on the keyboard or the mouse would result in a clicking sound, and even moving the mouse would result in this sound for each "tick". Thus, you could make funny roaring sounds simply by moving the mouse around. It's almost sad they took it away. I'm not sure if it could cause any serious damage, but I guess the press this eventually got forced them to remove the "feature".
I can't possibly imagine that direct translation would be a better solution. What is audio for a computer? It is a sequence of samples, there are no easily visible patterns inside it. The audio signal needs to be simplified into a sequence of phonemes, which can then be analyzed by the translation/parsing unit. And text happens to be a relatively reasonable representation of phonemes (phonetic writing is also a kind of text, you know). Of course, using actual idiosyncratic, but "correct" spelling is incredibly stupid, but some kind of text makes very much sense to me.
...exercising wishful thinking here...?
Well, even easier is to use a random combination of letters (in upper and lower case), numbers and punctuation. As you're supposed to do for passwords... So, just choose one of your old passwords (that you still remember), and use that as your username.
Well, that's sort of the point isn't it. Learn to take control of the situation. Learn to deal with civilians...
Now, when it comes to a major thesis, then it becomes interesting to start discussing who should own copyrights to works, but for a basic CS course it should have no interest to anyone. As long as the students deliver their assignments in a form that is technically and legally readable, it doesn't matter to anyone.
Why bother?
Let's face it, gold is just another merchandice. It's not even very stable, gold prices has been known to have relatively big variations. Why not silver, plastic, tobacco, oil, stock bonds, toothbrushes or even bananas? Well the last two are somewhat silly, and bananas are pretty volatile, but the idea remains, and at least bonds seems to be a very attractive idea (with proper care they will even increase value, meaning you can issue more of the currency without inflationary effects). But there are many other choices as well...
What is it that is so special about gold that it always remains a popular choice to base a currency upon? I don't know...
By setting your environment variables properly, so that you only use one at a time (and needs to run a shell alias each time you want to switch the compiler you use)
But really, that is only nessecary if you use a prebuilt compiler by someone else. If you download the source and read the build instructions you will see that it is no problem at all. I don't remember any details, but it was definitely not an issue last time I experimented a bit with the gcc source (as an expirement in using it as a backend for my own toy language, but gcc turned out to be much too difficult for a toy language :-)
This made somewhat sense in that declarations in one scope should last until the end of that scope, so it made the language simpler (for compiler writers (not users)), but it was definitely wrong in the sense that it wasn't very useful.
In summary: The standard got it right, and the original poster got it backwards.
Wow, tricorder, here I come!
No, it's not the size of the laser that matters for data density, it's the wavelength.
However, if they are 100 times smaller (and cheaper) you could put a hundred of them into your device of choice to improve data throughput and access time (even if they can't be controlled independently, there would still be much less head-movement).
Nah, it would just be usual stuff by the time it happens...
Technology is only cool untill it's available. Then it becomes daily life and nobody cares unless it stops working.
Do you daily think about how incredibly cool it is to have a computer thousand times more powerful than computers 50 years ago in your pocket? Having a cell-phone? Running a multi-user OS on your PC? Crossing the atlantic ocean in less than 8 hours? Using satellites for mass communication? Being able to cure almost any decease that used to kill people before they reached 40 just a few hundred years ago? Manipulating the genetic code in plants and animals? Paying with plastic cards? Controlling nuclear energy? Drilling for oil hundreds of meters below the seabed? Surfing and communicating worldwide on the Internet? Driving your own car? Having automated appliances in your house doing your laundry and dishes? We live in an incredibly advanced world, it's just that because things become commonplace we stop seeing the wonders technology already performs for us.