Allow me to repeat myself (as you seem a little hard of hearing):
"Even if you are just using it for internal, non-distributable software (such as a web app), many companies would rather pay up a small licensing fee rather than tango with Oracle in court."
Except that PostgreSQL is pretty darn stable at this point. There's not much that's absolutely necessary to the future of the database. (Unlike MySQL which is in the process of getting their act together to make it a Real Database(TM).) The development that they're doing now is simply making PostgreSQL more and more of a competitor to Oracle for large, enterprise databases. If Oracle hired away the developers, they'd gain maybe six months to a year before someone needs to scratch an itch and pulls the project back on track.
It's not like the open source MySQL is going to go away if they buy MySQL AB.
No, but it gives Oracle and excellent barganing position. They can effectively kill the upgrades to MySQL that would turn it into a real database. (Look Gepeto, I'm a real boy!) Then when customers come through looking to use MySQL, Oracle will try to upsell them to Oracle or one of their other properties. Even if the customer decides on MySQL, that's still revenue for Oracle.
If Oracle wanted to be really nasty, they could start legally enforcing MySQL's interpretation of the GPL. i.e. If your software uses MySQL but isn't GPLed, Oracle could sue you for failing to keep up the licensing terms. Even if you are just using it for internal, non-distributable software (such as a web app), many companies would rather pay up a small licensing fee rather than tango with Oracle in court.
I suppose though, that is where AJAX and DHTML/XHTML comes into play. You aren't going to be able to create complex animations, but basic pleasing looking animation and transistion can be done.
If SVG ever becomes standard, we'll be able to do all the animation we want. Current DHTML libraries aren't bad for this, but scaling is hackish, rotation is nonexistent, and shearing is simply out of the question. Not to mention more complex animations like shaped loops (such as the hollow "splats" you might see in an animation as "sound waves" from a speaker). SVG has all these capabilities, and is designed to allow the DOM to be modified.
Some enterprising individuals have already been using XBM files for this, but XBM is only a black and white raster.:(
Note: the results (we ran many different trials) weren't ALWAYS about running out of oil and petroleum. On a few occasions there were severe food and water crises. A very interesting lesson.
I could see a freshwater crisis (we've already had some of those), but such a crisis isn't anything that technology can't solve. (Desalination stations could become a big business.) I'm much more interested in how you came up with a food crisis. North and South America already produce way more food than is necessary, with options to increase production through farming more land or (in the case of South America) improving farming technology. To create an actual crisis, you'd need a population explosion that would make the Baby Boomers look outright tiny.
As for other resources, petrol is probably the biggest concern, bar none. It's the only material that we can't recycle, replace with nuclear power, sythesize, or mine from elsewhere in our solar system. If it doesn't exist as petroleum that can be refined with far less energy than it provides, then it's useless to us. The only option I see (if we actually want to get off of petroleum, not necessarily because we've completely run out) is to move to an alternate fuel such as ethanol. Even if we accept that ethanol is energy negative (which I don't), we can at least target the harvest and production processes to obtain their energy from the nuclear power grid rather than from ethanol. That would allow us to effectively store energy from the grid in a portable fuel form that can completely replace petroleum.
One thing about Javascript is that it is very aware of the client's environment--we can use it to determine screen size, colour depth, browser type, browser history and so forth.
The browser history is not available for security reasons. Off the top of my head, I don't remember if anything more than the screen resolution can be obtained. Really, you're not getting back anything useful. Just a lot of statistics that the Javascript uses to do its job.
Until the introduction of the XMLHTTPRequest object, developers were limited in how they could bring this information into the server.
Hidden IFrames have all the power of XMLHTTPRequest. There is a "click" in Internet Explorer, but all other cues are missing.
Browsers like Firefox can limit the use of javascript to do popo-up ads, alter toolbars and such, but I see nothing regarding security control of the XMLHTTPRequest object.
Depends on the browser, but many browsers chose the path provided by Java Applets. i.e. An AJAX application can only ship back data to the server it was downloaded from. That means that the server needs to act as a proxy if it wants to send calls elsewhere on the Internet.
But see, Second Life allows you to simulate Entreprenuralship, not working for someone else at a thankless job. Becoming an entreprenure is a huge step up for most people. Call me when there are Second Life jobs that have you stuck in a little cube pounding out spreadsheets and word documents.:-P
I'm still waiting for Virtual Jobs to support your Virtual Life. Then you can work at a thankless job all day just so you can go home and relax by working at a thankless Virtual Job all night! Isn't technology wonderful?
I hope its better then the virtualboy from nintendo.
Um, yeeeeaah. Homebrew VR equipment was available in far better quality than the Virtual Boy at the time of its release. As the Virtual Reality Contruction Kit by Joe Gradecki explained, a simple, hi-res Head Mounted Display could be built by canabalizing parts from a portable television or laptop display. Given that homebrewers tended to lack sophisticated tools, it was generally recommended that homebrewers build a single screen device rather than trying to work out the optics for a dual-display device. (One display for each eye.) However, he did include instructions for building such a device, though the optics weren't cheap.
The data glove was easily supplied by purchasing a Nintendo Power Glove and building a NES -> Parallel port adaptor. Such an adaptor was nothing more than a matter of soldering a few wires together. (I still have mine stitched together with electrical tape. I was too lazy to solder it after testing.:P) The communications protocol used by the Power Glove had long been decoded, so programming for it was quite easy.
His book also contained instructions on how to build a HMD boom for position tracking, and how to code for these devices. All released before the market had even heard of the Virtual Boy.
Once these come out in color, imagine having one of these babies inside your laptop.
I have a better idea. Imagine a portable LaserMAME console. You could project classic Asteroids or Gravitar games onto walls! OR, they could use it to bring back the Vectrex in all its "portable" glory! (Perhaps even Game Boy sized?):)
You weren't allowed to export more than 40, and AFAIK that hasn't changed.
The cryptographic export regulations were relaxed in 1996 to better allow electronic communications between the U.S. and other countries. The key restrictions currently in place are:
* No export of militarized or military-intended cryto equipment * No export of cryptography software to countries on the "rogue states" list (i.e. The bad guys of the moment. aka The "Axis of EVIL!".)
You could stuff extra RAM and processing units into the cartridge to expand the ability of the base console. Nothing like that in today's optical drives.
It's not like a modern system needs the extra components, though. They've got so much horsepower that any change would be pretty marginal. Thus you tend to get much more bang for your buck by trying to extract more out of tighter and better optimized code. On the Atari 2600 that wasn't an option since you:
a) Only had 128 bytes of RAM (the SuperChip in some carts added another 128) b) Had 2-4K of ROM (without bankswitching tricks that later extended the carts) c) Couldn't fit an entire screen of data in RAM. (That 6K in the SuperCharger really helped here.) d) Had exactly 1 clock with which to draw to the screen for every three pixels. e) Had slightly more than 1MHz of processing time to work with. f) Had to draw the screen since you had no GPU to count on. (The TIA didn't do much more than plot swaths of pixels, I'm afraid.)
Back then you counted clocks for all you were worth. Today you count millions of lines of code for fun. My how times have changed.:)
You added a sound card for Wolfenstein 3D? That's hardly a game that required sound. Now Wing Commander...
(Got my first Sound Blaster for $89 just so I could hear the cool sound and music in WC that everyone was raving about.)
Doom: 486/66
For most people I think it was memory. 4MB was not all that common except in brand new machines. I actually called up Id (I think they were a bit annoyed about this) to ask them if 4MB meant a total of 4MB or 640K + 3MB XMS. Thankfully, it was the latter and I grabbed a copy of shareware Doom. A few months later the shareware magazines started printing "640K + 3MB XMS". Guess I wasn't the only one annoying them.:)
Quake: Diamond Monster 3D
??? What did you have before that? I ran Quake on an S3 (not virge) and got excellent performance. Or are you referring to GL Quake?
Now I have a conflict. I have a Gameboy Color and I really love Tetris Attack. I'd like to get Tetris Attack, but it's only available in Black & White. There is, however, a color version available, except that it's Pokemon (*shudder*) Puzzle Challenge. To go for the Black and White and be free (but ugly), or stare at the annoying Pokemon in exchange for color? ARRGGGHH!
More standard than the DOM? There is no "standard" here or there. There's an API and suggested design methods. That and 50 cents will buy you a cup of coffee.
* A way to have your own events.
Your own events? You mean, pass the function handle to a given object, then wait for it to call you back with an event object? This is basic JavaScript.
* A way to do positioning. (moving objects)
It's called CSS. It's part of the DOM. Depending on what type of graphics you're doing, it usually only takes a few lines of code to create an object with an API that wraps these data elements.
* A way to do animation.
You definitely don't do much AJAX, do you? The only reason why it hasn't replaced Flash is because there's no reliable method for rotating and shearing graphics. Irregular shapes also represent a serious problem for DHTML, but one that can be worked around. Once SVG is standard in every browser, AJAX will be finally capable of replacing Flash for web animations.
* All that in one - three lines of code.
Correction, all that in ~10,000 lines of code from Yahoo!, plus your 3 lines of code for a simple demo. By the time you're done doing what you need to do, it will be ~20,000 lines of code from you, ~10,000 form Yahoo!, and only ~3,000 lines of Yahoo!'s actually utilized.
I've said it before, and I'll say it again: Most of us already have this stuff. If you yourself don't, then have at it. It's a nice library. It's just not Earth shattering.
How difficult would it be to implement a graphical color picker be wheh you have the slider already implemented for you?
Hard. You'd be amazed at how many niggling details are inherent in trying to write a good component. Which is my point. We already all have the "core" utilities. For most AJAX programmers, that's not a useful thing. What we don't have are well-designed, well-debugged, and well-tested components. Yahoo! shows an example of a color chooser on the slider page. They conveniently forget to mention, however, the thousand or so lines of code that it took to implement that. I would have much rather they taken that Color Chooser, make it into a pluggable component, give it a proper API and feature set, and then test the hell out of it. That would have been far more useful to me than a slider that I already have with a demo of a non-reusable component.
I'm not sure how it's really "Well Played." It's a nice try, but I don't see anyone buying this. Pornography is *not* illegal in the US, despite what many people think of it. And we certainly don't setup nation-wide firewalls to enforce laws that we don't have. Nor do we raid and shutdown free speech projects like FreeNET, even if bad guys abuse it to spread illegal materials.
I don't think that our Chinese government friends really have any idea how Amercians will view their statements. They seem to think that they can control international disinformation in the same way they can their own country. Too bad that doesn't fly.
(Let's just hope they never figure out how to actually market something. If China managed to make themselves seem "good" in the eyes of the average joe, they'd have a lot more opportunity for misinformation.)
Yeah, I saw that after I posted. Basically, he learned many of the same lessons I and many other OSS organizers have learned. In short: It is really $#%# difficult to get an OSS project going.:)
I think his project ultimately would have been successful if he'd started with a strong architectural design.
Strong architectural design definitely helps. However, it's not the be-all-to-end-all. In OSS development you have to be aware that your programmers are volunteers. They can and WILL step out the door at inopportune times, start arguements over architectural designs, and spend time working on what they think is cool rather than what is needed.
To get a project to absorb much of this chaos, you can do a few things to help the project:
Start with an existing codebase, usually an intial version written by a single author.
Hire programmers who you can tell what to do (and fire if they don't) to get a core going.
Get your architect to contribute code to the vision.
Start a competition between areas of the project to see who can hit more milestones. (This isn't easy, but it's great motivation when it works.)
State that something is impossible just so that someone produces the "impossible" code. (Sneaky, I know.:-P)
The back button doesn't work if you land directly on the page. Breadcrumbs also provide information to the user about their location independent from the ability to move to those locations. Pay attention, young padewon.
Except that PostgreSQL is pretty darn stable at this point. There's not much that's absolutely necessary to the future of the database. (Unlike MySQL which is in the process of getting their act together to make it a Real Database(TM).) The development that they're doing now is simply making PostgreSQL more and more of a competitor to Oracle for large, enterprise databases. If Oracle hired away the developers, they'd gain maybe six months to a year before someone needs to scratch an itch and pulls the project back on track.
It's not like the open source MySQL is going to go away if they buy MySQL AB.
No, but it gives Oracle and excellent barganing position. They can effectively kill the upgrades to MySQL that would turn it into a real database. (Look Gepeto, I'm a real boy!) Then when customers come through looking to use MySQL, Oracle will try to upsell them to Oracle or one of their other properties. Even if the customer decides on MySQL, that's still revenue for Oracle.
If Oracle wanted to be really nasty, they could start legally enforcing MySQL's interpretation of the GPL. i.e. If your software uses MySQL but isn't GPLed, Oracle could sue you for failing to keep up the licensing terms. Even if you are just using it for internal, non-distributable software (such as a web app), many companies would rather pay up a small licensing fee rather than tango with Oracle in court.
I suppose though, that is where AJAX and DHTML/XHTML comes into play. You aren't going to be able to create complex animations, but basic pleasing looking animation and transistion can be done.
:(
If SVG ever becomes standard, we'll be able to do all the animation we want. Current DHTML libraries aren't bad for this, but scaling is hackish, rotation is nonexistent, and shearing is simply out of the question. Not to mention more complex animations like shaped loops (such as the hollow "splats" you might see in an animation as "sound waves" from a speaker). SVG has all these capabilities, and is designed to allow the DOM to be modified.
Some enterprising individuals have already been using XBM files for this, but XBM is only a black and white raster.
Note: the results (we ran many different trials) weren't ALWAYS about running out of oil and petroleum. On a few occasions there were severe food and water crises. A very interesting lesson.
I could see a freshwater crisis (we've already had some of those), but such a crisis isn't anything that technology can't solve. (Desalination stations could become a big business.) I'm much more interested in how you came up with a food crisis. North and South America already produce way more food than is necessary, with options to increase production through farming more land or (in the case of South America) improving farming technology. To create an actual crisis, you'd need a population explosion that would make the Baby Boomers look outright tiny.
As for other resources, petrol is probably the biggest concern, bar none. It's the only material that we can't recycle, replace with nuclear power, sythesize, or mine from elsewhere in our solar system. If it doesn't exist as petroleum that can be refined with far less energy than it provides, then it's useless to us. The only option I see (if we actually want to get off of petroleum, not necessarily because we've completely run out) is to move to an alternate fuel such as ethanol. Even if we accept that ethanol is energy negative (which I don't), we can at least target the harvest and production processes to obtain their energy from the nuclear power grid rather than from ethanol. That would allow us to effectively store energy from the grid in a portable fuel form that can completely replace petroleum.
One thing about Javascript is that it is very aware of the client's environment--we can use it to determine screen size, colour depth, browser type, browser history and so forth.
The browser history is not available for security reasons. Off the top of my head, I don't remember if anything more than the screen resolution can be obtained. Really, you're not getting back anything useful. Just a lot of statistics that the Javascript uses to do its job.
Until the introduction of the XMLHTTPRequest object, developers were limited in how they could bring this information into the server.
Hidden IFrames have all the power of XMLHTTPRequest. There is a "click" in Internet Explorer, but all other cues are missing.
Browsers like Firefox can limit the use of javascript to do popo-up ads, alter toolbars and such, but I see nothing regarding security control of the XMLHTTPRequest object.
Depends on the browser, but many browsers chose the path provided by Java Applets. i.e. An AJAX application can only ship back data to the server it was downloaded from. That means that the server needs to act as a proxy if it wants to send calls elsewhere on the Internet.
But see, Second Life allows you to simulate Entreprenuralship, not working for someone else at a thankless job. Becoming an entreprenure is a huge step up for most people. Call me when there are Second Life jobs that have you stuck in a little cube pounding out spreadsheets and word documents. :-P
I'm not following you. What does a Dalek avatar have to do with working a virtual job?
I'm still waiting for Virtual Jobs to support your Virtual Life. Then you can work at a thankless job all day just so you can go home and relax by working at a thankless Virtual Job all night! Isn't technology wonderful?
Ah, but it's so much more fun to drive the point home by repeating yourself. :-P
1) What's "The Happening"?
Click on the link.
2) What's "Second Life"?
Click on the link.
3) What's "The Electric Sheep Company"?
Click on the link. (I suppose they should get brownie points for the Blade Runner/"Do Androids Dream of Electric Sheep?" reference.)
4) How are they developing Stephenson's "Metaverse"?
See the link to Second Life for more info.
5) What's "R&B Coffee"?
Damn good question.
6) What's a "Mixed Reality Party"
RTFSummary.
I hope its better then the virtualboy from nintendo.
:P) The communications protocol used by the Power Glove had long been decoded, so programming for it was quite easy.
Um, yeeeeaah. Homebrew VR equipment was available in far better quality than the Virtual Boy at the time of its release. As the Virtual Reality Contruction Kit by Joe Gradecki explained, a simple, hi-res Head Mounted Display could be built by canabalizing parts from a portable television or laptop display. Given that homebrewers tended to lack sophisticated tools, it was generally recommended that homebrewers build a single screen device rather than trying to work out the optics for a dual-display device. (One display for each eye.) However, he did include instructions for building such a device, though the optics weren't cheap.
The data glove was easily supplied by purchasing a Nintendo Power Glove and building a NES -> Parallel port adaptor. Such an adaptor was nothing more than a matter of soldering a few wires together. (I still have mine stitched together with electrical tape. I was too lazy to solder it after testing.
His book also contained instructions on how to build a HMD boom for position tracking, and how to code for these devices. All released before the market had even heard of the Virtual Boy.
Once these come out in color, imagine having one of these babies inside your laptop.
:)
I have a better idea. Imagine a portable LaserMAME console. You could project classic Asteroids or Gravitar games onto walls! OR, they could use it to bring back the Vectrex in all its "portable" glory! (Perhaps even Game Boy sized?)
You weren't allowed to export more than 40, and AFAIK that hasn't changed.
The cryptographic export regulations were relaxed in 1996 to better allow electronic communications between the U.S. and other countries. The key restrictions currently in place are:
* No export of militarized or military-intended cryto equipment
* No export of cryptography software to countries on the "rogue states" list (i.e. The bad guys of the moment. aka The "Axis of EVIL!".)
Nope. That's some random screenshot I pulled off the internet. The joke is that Safari is "degayified". I'm laughing on the inside. Really.
You could stuff extra RAM and processing units into the cartridge to expand the ability of the base console. Nothing like that in today's optical drives.
:)
It's not like a modern system needs the extra components, though. They've got so much horsepower that any change would be pretty marginal. Thus you tend to get much more bang for your buck by trying to extract more out of tighter and better optimized code. On the Atari 2600 that wasn't an option since you:
a) Only had 128 bytes of RAM (the SuperChip in some carts added another 128)
b) Had 2-4K of ROM (without bankswitching tricks that later extended the carts)
c) Couldn't fit an entire screen of data in RAM. (That 6K in the SuperCharger really helped here.)
d) Had exactly 1 clock with which to draw to the screen for every three pixels.
e) Had slightly more than 1MHz of processing time to work with.
f) Had to draw the screen since you had no GPU to count on. (The TIA didn't do much more than plot swaths of pixels, I'm afraid.)
Back then you counted clocks for all you were worth. Today you count millions of lines of code for fun. My how times have changed.
Wolfenstein 3D: sound card
:)
You added a sound card for Wolfenstein 3D? That's hardly a game that required sound. Now Wing Commander...
(Got my first Sound Blaster for $89 just so I could hear the cool sound and music in WC that everyone was raving about.)
Doom: 486/66
For most people I think it was memory. 4MB was not all that common except in brand new machines. I actually called up Id (I think they were a bit annoyed about this) to ask them if 4MB meant a total of 4MB or 640K + 3MB XMS. Thankfully, it was the latter and I grabbed a copy of shareware Doom. A few months later the shareware magazines started printing "640K + 3MB XMS". Guess I wasn't the only one annoying them.
Quake: Diamond Monster 3D
??? What did you have before that? I ran Quake on an S3 (not virge) and got excellent performance. Or are you referring to GL Quake?
Pokemon hate. I can't stand those little buggers. :-/
on OSX I've actually started using Safari more than FF
Same here. I use FireFox for development work, but Safari better meets my needs for general browsing. Personally, I had thought Camino was dead.
Is it just me, or does this new Camino look an aweful lot like Safari without the brushed metal theme?
It wouldn't surprise me. Tetris Attack was just a remake of Panel de Pon for US markets.
Now I have a conflict. I have a Gameboy Color and I really love Tetris Attack. I'd like to get Tetris Attack, but it's only available in Black & White. There is, however, a color version available, except that it's Pokemon (*shudder*) Puzzle Challenge. To go for the Black and White and be free (but ugly), or stare at the annoying Pokemon in exchange for color? ARRGGGHH!
I seriously doubt that you got the point.
You don't write much AJAX/DHTML, do you?
* A standard way to do Ajax.
More standard than the DOM? There is no "standard" here or there. There's an API and suggested design methods. That and 50 cents will buy you a cup of coffee.
* A way to have your own events.
Your own events? You mean, pass the function handle to a given object, then wait for it to call you back with an event object? This is basic JavaScript.
* A way to do positioning. (moving objects)
It's called CSS. It's part of the DOM. Depending on what type of graphics you're doing, it usually only takes a few lines of code to create an object with an API that wraps these data elements.
* A way to do animation.
You definitely don't do much AJAX, do you? The only reason why it hasn't replaced Flash is because there's no reliable method for rotating and shearing graphics. Irregular shapes also represent a serious problem for DHTML, but one that can be worked around. Once SVG is standard in every browser, AJAX will be finally capable of replacing Flash for web animations.
* All that in one - three lines of code.
Correction, all that in ~10,000 lines of code from Yahoo!, plus your 3 lines of code for a simple demo. By the time you're done doing what you need to do, it will be ~20,000 lines of code from you, ~10,000 form Yahoo!, and only ~3,000 lines of Yahoo!'s actually utilized.
I've said it before, and I'll say it again: Most of us already have this stuff. If you yourself don't, then have at it. It's a nice library. It's just not Earth shattering.
How difficult would it be to implement a graphical color picker be wheh you have the slider already implemented for you?
Hard. You'd be amazed at how many niggling details are inherent in trying to write a good component. Which is my point. We already all have the "core" utilities. For most AJAX programmers, that's not a useful thing. What we don't have are well-designed, well-debugged, and well-tested components. Yahoo! shows an example of a color chooser on the slider page. They conveniently forget to mention, however, the thousand or so lines of code that it took to implement that. I would have much rather they taken that Color Chooser, make it into a pluggable component, give it a proper API and feature set, and then test the hell out of it. That would have been far more useful to me than a slider that I already have with a demo of a non-reusable component.
Well played, China. Well played.
I'm not sure how it's really "Well Played." It's a nice try, but I don't see anyone buying this. Pornography is *not* illegal in the US, despite what many people think of it. And we certainly don't setup nation-wide firewalls to enforce laws that we don't have. Nor do we raid and shutdown free speech projects like FreeNET, even if bad guys abuse it to spread illegal materials.
I don't think that our Chinese government friends really have any idea how Amercians will view their statements. They seem to think that they can control international disinformation in the same way they can their own country. Too bad that doesn't fly.
(Let's just hope they never figure out how to actually market something. If China managed to make themselves seem "good" in the eyes of the average joe, they'd have a lot more opportunity for misinformation.)
Yeah, I saw that after I posted. Basically, he learned many of the same lessons I and many other OSS organizers have learned. In short: It is really $#%# difficult to get an OSS project going. :)
Strong architectural design definitely helps. However, it's not the be-all-to-end-all. In OSS development you have to be aware that your programmers are volunteers. They can and WILL step out the door at inopportune times, start arguements over architectural designs, and spend time working on what they think is cool rather than what is needed.
To get a project to absorb much of this chaos, you can do a few things to help the project:
* AKAImBatman thwacks nagora upside the head
The back button doesn't work if you land directly on the page. Breadcrumbs also provide information to the user about their location independent from the ability to move to those locations. Pay attention, young padewon.