If I had to throw away all my nice dev tools and start over from popping in a byte at a time with 8 toggles and an enter key, the first thing I would do is code a Forth interpreter/compiler; even before I wrote an assembler (it's easier).
The only reason I don't use Forth now is because I've got the entire UNIX dev environment to support me, which is almost as efficient as Forth and gives you some hint of portability.
But Forth builds good programmers. You learn never to make a mistake, because mistakes eat your machine. You learn to debug your code by eyeball and brainpower, not with any machine aid. You learn to rewrite everything every time, and you learn that this can be faster than reading the docs for a library.
(BTW, none of this applies to ANS Forth, which is a bad joke from the people who made Ada; Forth is something you should rewrite for every machine you use it on, just ask Chuck)
Oh, you laugh now, but just you wait until we start writing massively parallel systems and you're begging Chuck to burn a thousand of his 250 MIPS (with a cheap fab) 10k transistor (with video processing!) processors on one chip.
Few people use C++ for object oriented programming. Java was a bad idea that should be forgotten as quickly as possible. UnrealScript is a special purpose language for a game; in that cases you throw out the rulebook and make it efficient for the narrow task at hand.
The ideas in C++ and Java have been around for a long time, they've just been hyped relatively recently. They are neither the present nor the future of programming languages; they are the past: the idea of the One True Language. The present is a babel of special purpose languages, as is the future. The only difference in the future is that they will be easier to tie together.
Certainly there will be more attempts to build the One True Language, but they will fall as short of the goal as did Standard C++, Java, and Ada, and blend into the background noise.
My personal favorite programming method is to generate C (well, C++ using struct methods to shorten function names) code with Perl (while it has other uses, it stands out for me as the best quick-hack text processing language out there). If you can't express it readably with the language you've got, express it in a mess generated with readable code in another language. Perl is handy because you can dump a whole other text file into it's midst with the $var = <<'END_OF_C'; syntax.
You just use make to run the Perl script (I use the extension p2c) and redirect the output into a.c file.
I don't stick to one language when another does the job better, a typical small "C" project of mine involves 3 or 4 languages, while a large project of mine might involve a dozen or more mini-languages I wrote to express a class of GUI widgets or text-parsing details. You might want to try it, I find it very efficient.
But free ISPs like this one run banner ads. What they run is even worse than banner ads: they're banner ads with forced click-through.
A better example of effective web advertising is affiliate programs. Give people valuable content, then try to sell them something related to that content right there, integrated with the content.
This post is another example. I'm advertising the link at the bottom of the post, and getting a pretty damn good click-through, at that (my apologies, BTW, to people who anyone who went through the previous evil link, which I will now erase from my memory to go on with my life). Not by spamming, but by posting the best stuff I can come up with and still have something to say (my karma has doubled since last week).
In the last few days, I've put up more posts on slashdot.org than in the last few weeks before that, because I've got a new web page that I want to promote. Usually I have to slap my own hands to keep myself from wasting too much time slashdotting, but for the moment I consider it productive. (yes, there's a certain irony to this which you'll understand if you look at my site - my site with banner ads, and broken ones at that... ^_^ )
Bad studies rate advertising on the web as good for branding. They ask the user to look at websites they wouldn't normally look at, and with no purpose beyond "evaluating" them. The bored user looks at the most interesting thing on the page: the banner advertisements.
Good studies give people access to the web and let people screw around and do whatever they want (or at least give them realistic tasks to perform), while tracking which ads were viewed. The result: web surfers never even look at ads, unless they are really bored or the ads are cleverly disguised in a form the viewer hasn't seen. Believe the data.
Claiming that because studies disagree they are, as a whole, inconclusive is a well known logical fallasy (the name of which escapes me).
And the points it makes are still valid (read through his more recent articles, and you'll hear him say "told you so!" several times).
Typical click-through rates have fallen to under 0.5%, and are continuing to fall. Advertising networks are shifting to pay-per-click systems, from pay-per-impression ones.
And the vast majority websites which advertise make pocket change with it (I remember banner advertising network uses the slogan "it's found money!"). The reason so many sites advertise is because it's free and easy to do so, and if it brings in some cash, great! A very tiny proportion of them actually support employees and such producing the content. Profitable websites are mostly ones which leverage the work of others (no offense, but/. is just such a one; it's the posters who create 95% of the value).
Click-through value will suck mightily, as customers will be forced by the "health bar" to click through an ad or other button every once in a while, and will immediately return to their previous surfing. This will cost the advertisers money, as wasted bandwidth, not produce additional sales.
There are lots of internet ad-based businesses coming out now, but I don't think they're going to hang around a lot longer. People just don't look at internet ads, and very rarely do they click on them. There is some chance of making money at it with a website that is cheap to run and has thousands and thousands of visitors per month, but there is no way is this advertising worth the cost of running and supporting an internet provider. Advertisers will learn this sooner or later.
Containment is a major problem, as is producing sufficiently dense and stable antimatter (anti-hydrogen just ain't gonna cut it if you want to safely carry the equivalent of a strategic nuke in your pocket).
You know it's only a matter of time. Imagine it, perfect control over explosive power from strategic nuke to radioactive firecracker that can be hidden in your pocket (okay, maybe not, I guess the containment hardware will probably start out around the size of a house; but eventually... ).
That will really change the world. Who cares about wimpy chemical explosives?
Re:Whoops... (why not public domain?)
on
GPL for Books?
·
· Score: 2
Placing a work in the public domain does not entitle anyone to edit it and still claim that you are the sole author; in cases where this is undesirable (like someone inserting long racist speeches in the middle of your public domain novel, for example) it's fraud or libel.
You can (superfluously) disclaim warrantee in a public domain release, too. If someone edits that out, it doesn't make you responsible for it.
Also, it is pretty generally accepted that by using something in the public domain you accept full responsibility for the consequences of your own action. In selling something, there is an implied warrantee (which can't be disclaimered away in a legally binding manner, regardless), in giving something away there is no such thing. No court would award damages to someone suing the author of a public domain work, unless it was deliberately harmful (in that case, you're screwed and you deserve it, no matter what weaselly licence you've used).
Everybody hates public domain.
on
GPL for Books?
·
· Score: 2
I have no idea why, they just do.
The problems with public domain that forced the creation of the GPL do not exist for natural-language documents.
To distinguish their licencing from public domain, they have to add more restrictions.
Sorry, I just can't come up with a better explanation than an irrational hatred of placing anything in the public domain, it seems like they always have to have just a hair more restriction than the public domain allows, so they can step on someone's toes.
Whoops... (why not public domain?)
on
GPL for Books?
·
· Score: 3
Hit send a little quickly (why can't the preview button and the submit button be on opposite sides of the page, I'm a clumsy clicker).
Anyway, this looks pretty good to me, but why not release it into the public domain? It's not like some evil corporation can grab chunks of text and hide them away where you can't see it, like when you compile source code into binaries. Sure, they could claim their ownership of their own changes, but what are the odds of that ever mattering?
3 words: Open Content Licence
on
GPL for Books?
·
· Score: 4
This is a truly fascinating area of research. The sheer wierdness of it makes any papers you can find worth reading. It takes a while to let the idea of thinking of light in individual chunks sink in.
Imagine having stateless logic gates that you can send a thousand signals through simultaneously, or having a device as tiny as a pair of glasses that beams a perfect 3D image at higher resolution than your eyes can distinguish directly onto your retinas.
I have a rabid hatred of XML. It's just such a hideously ugly language that I could never stand to use it. Markup languages seem more or less acceptable for text formatting, though they aren't much fun to write by hand, but they are just about my last choice for configuration (or for general data description, or programming). They're also hideously verbose, wasting keystrokes and network bandwidth alike.
I still don't see any advantage to XML. Standardizing on a completely general language is about as useful as standardizing on "an ordered list of bits." If you're going to extend it you still need code somewhere that actually understands the data. Parsing a configuration language is trivial compared to actually deciding what the content and structure should be.
Yes, I know, you can make a GUI editor that understands the format of your XML-based language, and gives the user options, but I really don't think this is more than a superficial benefit. People should get used to editing plain text; it's the basic skill of running Unix systems, and a damn good thing to standardize on. Text editors have been tuned for a long time, and they can be used very efficiently with a little practice - much more so than a configuration GUI.
A more useful thing might be to start having a standard script for each plain text configuration file, which interleaves it with a man file, putting all the relevant entries right beside where they'd be used, allows the user to edit the file in this way, then removes the man comments (for efficiency in reading the config file) when he is done. This way you could get what is IMHO the main benefit of GUIs: having configuration options laid out in front of the user to select, with all of the traditional benefits of plain text (or rather, unique syntax) config files.
Well, yes. That part of the digital hardware spec shouldn't be patentable, as it's just the hardware expression of an algorithm. There is a special category of IP just for IC lithography, so patents are superfluous in the same way that they are for copywritable software. Other things like new ways of implementing transistors on silicon are fine.
The fact that this guy uses a hardware example in his patent application doesn't change the fact that it covers software implementations as well.
Many of the most important mathematical ideas are only ways to speed up calculations.
Price fixing plus preventing movies from being distributed on DVD before being released in the cinemas in the same countries. I hear that they sell much better in these "late release" countries, because everyone has been watching reviews and trailers for ages.
Actually this has been ruled illegal in some countries (or at least one: New Zealand). It probably would be in the US, if it wasn't that it is profit mainly for US companies, and most of the releases come out first in the US.
Class is an English word with many meanings.
Besides, inclusion of OO concepts where appropriate is beneficial, I don't dispute that. Pure OO enforced by the language is a pain in the ass.
Hey! Forth rules!
If I had to throw away all my nice dev tools and start over from popping in a byte at a time with 8 toggles and an enter key, the first thing I would do is code a Forth interpreter/compiler; even before I wrote an assembler (it's easier).
The only reason I don't use Forth now is because I've got the entire UNIX dev environment to support me, which is almost as efficient as Forth and gives you some hint of portability.
But Forth builds good programmers. You learn never to make a mistake, because mistakes eat your machine. You learn to debug your code by eyeball and brainpower, not with any machine aid. You learn to rewrite everything every time, and you learn that this can be faster than reading the docs for a library.
(BTW, none of this applies to ANS Forth, which is a bad joke from the people who made Ada; Forth is something you should rewrite for every machine you use it on, just ask Chuck)
Oh, you laugh now, but just you wait until we start writing massively parallel systems and you're begging Chuck to burn a thousand of his 250 MIPS (with a cheap fab) 10k transistor (with video processing!) processors on one chip.
Few people use C++ for object oriented programming. Java was a bad idea that should be forgotten as quickly as possible. UnrealScript is a special purpose language for a game; in that cases you throw out the rulebook and make it efficient for the narrow task at hand.
.c file.
The ideas in C++ and Java have been around for a long time, they've just been hyped relatively recently. They are neither the present nor the future of programming languages; they are the past: the idea of the One True Language. The present is a babel of special purpose languages, as is the future. The only difference in the future is that they will be easier to tie together.
Certainly there will be more attempts to build the One True Language, but they will fall as short of the goal as did Standard C++, Java, and Ada, and blend into the background noise.
My personal favorite programming method is to generate C (well, C++ using struct methods to shorten function names) code with Perl (while it has other uses, it stands out for me as the best quick-hack text processing language out there). If you can't express it readably with the language you've got, express it in a mess generated with readable code in another language. Perl is handy because you can dump a whole other text file into it's midst with the $var = <<'END_OF_C'; syntax.
You just use make to run the Perl script (I use the extension p2c) and redirect the output into a
I don't stick to one language when another does the job better, a typical small "C" project of mine involves 3 or 4 languages, while a large project of mine might involve a dozen or more mini-languages I wrote to express a class of GUI widgets or text-parsing details. You might want to try it, I find it very efficient.
yahoo.com averages over 300 million hits per day (at least it did recently; maybe they went downhill since google started?).
I keep hitting that reply button instead of the preview one...
"Believe the Data" was the title of the article, not a suggestion regarding the article.
But free ISPs like this one run banner ads. What they run is even worse than banner ads: they're banner ads with forced click-through.
A better example of effective web advertising is affiliate programs. Give people valuable content, then try to sell them something related to that content right there, integrated with the content.
This post is another example. I'm advertising the link at the bottom of the post, and getting a pretty damn good click-through, at that (my apologies, BTW, to people who anyone who went through the previous evil link, which I will now erase from my memory to go on with my life). Not by spamming, but by posting the best stuff I can come up with and still have something to say (my karma has doubled since last week).
In the last few days, I've put up more posts on slashdot.org than in the last few weeks before that, because I've got a new web page that I want to promote. Usually I have to slap my own hands to keep myself from wasting too much time slashdotting, but for the moment I consider it productive. (yes, there's a certain irony to this which you'll understand if you look at my site - my site with banner ads, and broken ones at that... ^_^ )
Bad studies rate advertising on the web as good for branding. They ask the user to look at websites they wouldn't normally look at, and with no purpose beyond "evaluating" them. The bored user looks at the most interesting thing on the page: the banner advertisements.
Good studies give people access to the web and let people screw around and do whatever they want (or at least give them realistic tasks to perform), while tracking which ads were viewed. The result: web surfers never even look at ads, unless they are really bored or the ads are cleverly disguised in a form the viewer hasn't seen. Believe the data.
Claiming that because studies disagree they are, as a whole, inconclusive is a well known logical fallasy (the name of which escapes me).
And the points it makes are still valid (read through his more recent articles, and you'll hear him say "told you so!" several times).
/. is just such a one; it's the posters who create 95% of the value).
Typical click-through rates have fallen to under 0.5%, and are continuing to fall. Advertising networks are shifting to pay-per-click systems, from pay-per-impression ones.
And the vast majority websites which advertise make pocket change with it (I remember banner advertising network uses the slogan "it's found money!"). The reason so many sites advertise is because it's free and easy to do so, and if it brings in some cash, great! A very tiny proportion of them actually support employees and such producing the content. Profitable websites are mostly ones which leverage the work of others (no offense, but
Click-through value will suck mightily, as customers will be forced by the "health bar" to click through an ad or other button every once in a while, and will immediately return to their previous surfing. This will cost the advertisers money, as wasted bandwidth, not produce additional sales.
There are lots of internet ad-based businesses coming out now, but I don't think they're going to hang around a lot longer. People just don't look at internet ads, and very rarely do they click on them. There is some chance of making money at it with a website that is cheap to run and has thousands and thousands of visitors per month, but there is no way is this advertising worth the cost of running and supporting an internet provider. Advertisers will learn this sooner or later.
Follow this link for a good article on this.
Containment is a major problem, as is producing sufficiently dense and stable antimatter (anti-hydrogen just ain't gonna cut it if you want to safely carry the equivalent of a strategic nuke in your pocket).
...the first practical antimatter explosives.
You know it's only a matter of time. Imagine it, perfect control over explosive power from strategic nuke to radioactive firecracker that can be hidden in your pocket (okay, maybe not, I guess the containment hardware will probably start out around the size of a house; but eventually... ).
That will really change the world. Who cares about wimpy chemical explosives?
Placing a work in the public domain does not entitle anyone to edit it and still claim that you are the sole author; in cases where this is undesirable (like someone inserting long racist speeches in the middle of your public domain novel, for example) it's fraud or libel.
You can (superfluously) disclaim warrantee in a public domain release, too. If someone edits that out, it doesn't make you responsible for it.
Also, it is pretty generally accepted that by using something in the public domain you accept full responsibility for the consequences of your own action. In selling something, there is an implied warrantee (which can't be disclaimered away in a legally binding manner, regardless), in giving something away there is no such thing. No court would award damages to someone suing the author of a public domain work, unless it was deliberately harmful (in that case, you're screwed and you deserve it, no matter what weaselly licence you've used).
I have no idea why, they just do.
The problems with public domain that forced the creation of the GPL do not exist for natural-language documents.
To distinguish their licencing from public domain, they have to add more restrictions.
Sorry, I just can't come up with a better explanation than an irrational hatred of placing anything in the public domain, it seems like they always have to have just a hair more restriction than the public domain allows, so they can step on someone's toes.
Hit send a little quickly (why can't the preview button and the submit button be on opposite sides of the page, I'm a clumsy clicker).
Anyway, this looks pretty good to me, but why not release it into the public domain? It's not like some evil corporation can grab chunks of text and hide them away where you can't see it, like when you compile source code into binaries. Sure, they could claim their ownership of their own changes, but what are the odds of that ever mattering?
I think this is what you're looking for.
They're watching you, you know.
But I listen to them on the way to work too.
Ha!
Ha ha ha!
Ha hahaha ha ha!
Does that mean that a dead-halt traffic jam will look exactly the same as a responsible driver pulling over to use the phone?
This is a truly fascinating area of research. The sheer wierdness of it makes any papers you can find worth reading. It takes a while to let the idea of thinking of light in individual chunks sink in.
Imagine having stateless logic gates that you can send a thousand signals through simultaneously, or having a device as tiny as a pair of glasses that beams a perfect 3D image at higher resolution than your eyes can distinguish directly onto your retinas.
This stuff is da bomb.
I have a rabid hatred of XML. It's just such a hideously ugly language that I could never stand to use it. Markup languages seem more or less acceptable for text formatting, though they aren't much fun to write by hand, but they are just about my last choice for configuration (or for general data description, or programming). They're also hideously verbose, wasting keystrokes and network bandwidth alike.
I still don't see any advantage to XML. Standardizing on a completely general language is about as useful as standardizing on "an ordered list of bits." If you're going to extend it you still need code somewhere that actually understands the data. Parsing a configuration language is trivial compared to actually deciding what the content and structure should be.
Yes, I know, you can make a GUI editor that understands the format of your XML-based language, and gives the user options, but I really don't think this is more than a superficial benefit. People should get used to editing plain text; it's the basic skill of running Unix systems, and a damn good thing to standardize on. Text editors have been tuned for a long time, and they can be used very efficiently with a little practice - much more so than a configuration GUI.
A more useful thing might be to start having a standard script for each plain text configuration file, which interleaves it with a man file, putting all the relevant entries right beside where they'd be used, allows the user to edit the file in this way, then removes the man comments (for efficiency in reading the config file) when he is done. This way you could get what is IMHO the main benefit of GUIs: having configuration options laid out in front of the user to select, with all of the traditional benefits of plain text (or rather, unique syntax) config files.
Well, yes. That part of the digital hardware spec shouldn't be patentable, as it's just the hardware expression of an algorithm. There is a special category of IP just for IC lithography, so patents are superfluous in the same way that they are for copywritable software. Other things like new ways of implementing transistors on silicon are fine.
The fact that this guy uses a hardware example in his patent application doesn't change the fact that it covers software implementations as well.
Many of the most important mathematical ideas are only ways to speed up calculations.
...we don't have to worry about everything we know being invalidated by the complete change nanotech would bring about.
If he comes through with the money, it will kill nanotech progress as effectively as NASA has killed space exploration and travel.
After all, mathematical equations are specifically unpatentable. As Knuth says, "algorithms are math".
Maybe this will finally be the example so ridiculous that something is done about it.
"Something smells fishy about all this..."
"Here's Bill Gate's email address and the raw sewage tag!"
"Just imagine the potential for pr0n sites!"
"Given the typical hacker's regard for personal hygiene, how useful could it be?"
"We just hacked MS's home page, and it doesn't just stink figuratively anymore!"
Price fixing plus preventing movies from being distributed on DVD before being released in the cinemas in the same countries. I hear that they sell much better in these "late release" countries, because everyone has been watching reviews and trailers for ages.
Actually this has been ruled illegal in some countries (or at least one: New Zealand). It probably would be in the US, if it wasn't that it is profit mainly for US companies, and most of the releases come out first in the US.