Re:What about the other ones?
on
Google's new toys
·
· Score: 5, Insightful
I could imagine "beta" testing means beta testing attractiveness to customers. I.e. if one of the "beta" sides gets a lot of hits, google decide to put it out of beta.
Google will remain my favourite search-engine but they in my opinion they could be a bit faster in offering new services.
You are joking, right? If not, who is better in that game than google? Two or three years ago, nearly each of the ideas which google has already implemented in their "labs" could have gained a shitload of venture capital in order to implement it. Google not fast? I think not.
Well...it's a little bit harder to manage this time around. As transistors get smaller, if I remember correctly, one of the main reasons for current leakage is quantum tunneling between the source and drain of a given transistor as the channel length decreases (I think).
I guess in 2-3 years, they will have managed to get the Heisenberg Compensator small enough to be integrated in CPUs.
As everyone knows, Open Source software is the wave of the future. With the market share of GNU/Linux and *BSD increasing every day, interest in Open Source Software is at an all time high.
Developing software within the Open Source model benefits everyone. People can take your code, improve it and then release it back to the community. This cycle continues and leads to the creation of far more stable software than the 'Closed Source' shops can ever hope to create.
So you're itching to create that Doom 3 killer but don't know where to start? Read on!
2. First Steps
The most important thing that any Open Source project needs is a Sourceforge page. There are tens of thousands of successful Open Source projects on Sourceforge; the support you receive here will be invaluable.
OK, so you've registered your Sourceforge project and set the status to '0: Pre-Thinking About It', what's next?
3. Don't Waste Time!
Now you need to set up your SourceForge homepage. Keep it plain and simple - don't use too many HTML tags, just knock something up in VI. Website editors like FrontPage and DreamWeaver just create bloated eye-candy - you need to get your message to the masses!
4. Ask For Help
Since you probably can't program at all you'll need to try and find some people who think they can. If your project is a game you'll probably need an artist too. Ask for help on your new Sourceforge pages. Here is an example to get you started:
"Hi there! Welcom to my SorceForge page! I am planing to create a Fisrt Person Shooter game for Linux that is going to kick Doom 3's ass! I have loads of awesome ideas, like giant robotic spiders! I need some help thouh as I cant program or draw. If you can program or draw the tekstures please get in touch! K thx bye!"
Thousands of talented programmers and artists hang out at Sourceforge ready to devote their time to projects so you should get a team together in no time!
5. The A-Team
So now you have your team together you are ready to change your projects status to '1: Pre-Bickering'. You will need to discuss your ideas with your team mates and see what value they can add to the project. You could use an Instant Messaging program like MSN for this, but since you run Linux you'll have to stick to e-mail.
Don't forget that YOU are in charge! If your team doesn't like the idea of giant robotic spiders just delete them from the project and move on. Someone else can fill their place and this is the beauty of Open Source development. The code might end up a bit messy and the graphics inconsistant - but it's still 'Free as in Speech'!
6. Getting Down To It
Now that you've found a team of right thinking people you're ready to start development. Be prepared for some delays though. Programming is a craft and can take years to learn. Your programmer may be a bit rusty but will probably be writing "hello world" programs after school in no time.
Closed Source games like Doom 3 use the graphics card to do all the hard stuff anyhow, so your programmer will just have to get the NVidia 'API' and it will be plain sailing! Giant robot spiders, here we come!
7. The Outcome
So it's been a few years, you still have no files released or in CVS. Your programmer can't get enough time on the PC because his mother won't let him use it after 8pm. Your artist has run off with a Thai She-Male. Your project is still at '1: Pre-Bickering'...
Congratulations! You now have a successful Open Source project on Sourceforge! Pat yourself on the back, think up another idea and do it all again! See how simple it is?
But you'd better make damn sure that your GA doesn't improve the algorithm specifically for your "virtual machine". I.e. if pointer arithmetics were very slow (pulling that example out of my ass, btw.), your GA might tend to penalize algorithms using them more often then others.
I'm quite sure that even (just joking;) ) Real has nice employees, and you are a very good example for that. I just want to thank you for you patience answering sometimes overly critical, sometimes clueless questions here, and assure you that the bold move Real is doing with this is well appreciated by many - I know a lot of people looking forward for the releases.
On flipping the idiot bit on slashdot, take into account that - because of the size of the community here - it may just be a better sample of the general population than smaller ones.
Servers" don't run as CGI scripts, dynamic web applications do.
Really, I don't want to offend you, but I'm really not sure if you know what cgi is.
Fact is, almost nothing on apache runs as cgi nowadays. mod_perl, mod_python, mod_whatever are *not* cgi applications. I'm also quite sure that your 200 hits per second scripts are *not* cgi applications. It is also wrong that the overhead of "starting a cgi-script" is negligible, because it involves starting the whole friggin interpreter if you use perl or other scripting languages.
I think this is scary because people like us who actually need/use higher end hardware will end up paying more.
The best example for that are IMO ink jet printers. I can't convince any of my computer illiterate friend to not buy an el cheapo hp color printer, because they really don't care any more about price of cartridges.
They tell me that they will just buy a new printer if the cartridge is empty. Unfortunately, I fear HP thought of that strategy and adapted the fill level of the cartridges in new printers.
And similtanously, good non-toy color inkjets get more and more expensive.
I have a friend at SETI, and he sent me the code for the best signal. They are waiting for computing time at the Lawrence Livermore National Laboratory to further analyze it:
Well, that linux can't only be recompiled for a new platform in nearly every case is clear, since parts of it are coded in assembly, it needs drivers for the mb-chipsets and whatnot. This is where the arch/ subdir from the kernel tree comes into play.
For userland apps the story is completely different, the needed changes nearly all are cleanups, where the code wasn't 64bit clean. IOW, the statement that you can do CFLAGS="-m64" on any app isn't true.
I'm admining 5 linux servers and one nt server. The nt server is definately more work to keep it running.
About installation, as soon as you have to install a serious server application, linux wins hands down in many cases. This is because installing something like sql-server+iis on microsoft needs a lot of patching and disabling stuff. Go to MS's website and search for installation procedures for something like siteserver, there are a lot of steps involved. This get's worse if the os ages more and more, but you want to install a newer application, because you first have to update the os with a lot of stuff before the application is even able to run. Contrast that to the typical linux distribution, which, while additionally being a lot cheaper, enables you to install a updated OS together with a matching version of the app, both configured&compiled to work together. I'm quite sure I'd install a production ready system with a sql server and a webserver with SuSE (or Redhat etc.) in less than half the time than a competent windows admin a system with the same functionality (more or less) an windows based system.
On the implementation side, I notice that you did not show the first line of the help, which states "built-in function". Why is it a built-in? Can't you write something like that in Python?
built-in in python doesn't mean that you can't implement it in python, it just means the you doesn't need to import a module to use it. It would be trivial to re-implement it in python, I just didn't do that.
Another nit: the use of __cmp__ instead of < is not very convincing. The < concept is mapped in a relatively unnatural way.
I can't follow here, maybe you misunderstood me, maybe I don't understand you. I don't use __cmp__ instead of <, at most I use cmp instead of <. But
The brackets around the ints are there to signal that the 4 is to be used as an instance of its type (class), so we can get at its methods - don't ask me why, this would not be needed with strings etc.). Note that since version 2.2, there are more special comparison functions to distinguish every possible comparison (=,!=, <, ), and that if the left type doesn't have the right method, the right side might have the reflected version (i.e. instead of >), so this is looked up on the right side, and used if found. And yes, you can destroy the mathematical meaning of these operators with this power, but that's life, as long as you don't deliver a __cmp__ function which fdisks the hard disk as a side effect;). I think this also answers your next paragraph.
What is wrong is when you use for what it was not designed for.
Well, that's right with any tool;).
Note that for all these examples, I think that XL could perform very well, given the right "plug-ins".
Well, python is extremely friendly to other languages, esp C, C++, Java. See for instance Extending and Embedding the Python Interpreter . So, IMO python lends itself very well to numeric computing (see also the numpy module etc.), as it's easy to first write the code and later implement critical sections in a compiled language. For realtime embedded applications, see for instance this thread on comp.lang.python. Btw. there are a lot of very friendly and competent people which are always interested in language wars^H^H^H^Hcomparisons. I bet if you asked your question about the derivative notation (which can't be translated literally to python, I'm sure), this might lead to interesting discussions.
The same limit exists for more complicated concepts in any non-extensible language. Lisp or Python are somewhat more extensible than C or Java, but you can still hit the ceiling pretty easily. . In Lisp or SmallTalk, for instance, it would be doing math-intensive work, because you don't want to write (+ 1 2) when 1+2 is shorter and nicer.
I don't want to do language evangelism, but I'd be interested in what is wrong with python. I know it sounds silly to insist on that, but my next question would be why you don't just use python, because I find nothing on that site (didn't read everything, though) which python couldn't do.
And here you give an example about C++ which is a critique against the language, not the underlying "paradigm", AFAIK.
Hmm, read that comparison and thought of python, which I'm most intimate with. There we have module or global functions (methods), in order to represent something like "max".
I mean, it's trival to find "things" which are _not_ well represented by "objects", that's why pure object oriented languages are not soo omnipresent as not-so-pure ones. Every mathematical function comes to mind etc., do we really need a new paradigm for that - and if yes, why don't we just call it "not-so-pure-OO"?
Thanks for the reply, I asked as I was really surprised that these interfaces to the car electronics are open (but I assume probably only the passive ones are open).
Now I learned through google that there a real scene around car electronics reverse engineering, which I didn't know before. There's even a open source suite for that stuff at http://freediag.sourceforge.net/ which you probably know.
Or maybe there's always my doubt that maybe I don't know enough about the "other" system, so that the shortcomings I perceive are not really shortcomings, but only caused by me just overseeing something.
I read on heise.de some days ago that there was indeed a microsoft corporate server with some directories open for public which clearly shouldn't, exposing internal documents. I guess it's from there.
I could imagine "beta" testing means beta testing attractiveness to customers. I.e. if one of the "beta" sides gets a lot of hits, google decide to put it out of beta.
Google will remain my favourite search-engine but they in my opinion they could be a bit faster in offering new services.
You are joking, right? If not, who is better in that game than google? Two or three years ago, nearly each of the ideas which google has already implemented in their "labs" could have gained a shitload of venture capital in order to implement it.
Google not fast? I think not.
Take for instance an cd from david hasselhof, let's say this and others.
You'll find:
Really, I bet the people at amazon are laughing their ass of when they see something like that.
PS:The song Hot Shot City is particularly good.
I want a cpu that sits idle 100% of the time, regardless what I do.
Imagine the large reducement of the energy consumption if we could put it in power save mode the whole time!
Well...it's a little bit harder to manage this time around. As transistors get smaller, if I remember correctly, one of the main reasons for current leakage is quantum tunneling between the source and drain of a given transistor as the channel length decreases (I think).
I guess in 2-3 years, they will have managed to get the Heisenberg Compensator small enough to be integrated in CPUs.
Problem solved.
1. Introduction
As everyone knows, Open Source software is the wave of the future. With the market share of GNU/Linux and *BSD increasing every day, interest in Open Source Software is at an all time high.
Developing software within the Open Source model benefits everyone. People can take your code, improve it and then release it back to the community. This cycle continues and leads to the creation of far more stable software than the 'Closed Source' shops can ever hope to create.
So you're itching to create that Doom 3 killer but don't know where to start? Read on!
2. First Steps
The most important thing that any Open Source project needs is a Sourceforge page. There are tens of thousands of successful Open Source projects on Sourceforge; the support you receive here will be invaluable.
OK, so you've registered your Sourceforge project and set the status to '0: Pre-Thinking About It', what's next?
3. Don't Waste Time!
Now you need to set up your SourceForge homepage. Keep it plain and simple - don't use too many HTML tags, just knock something up in VI. Website editors like FrontPage and DreamWeaver just create bloated eye-candy - you need to get your message to the masses!
4. Ask For Help
Since you probably can't program at all you'll need to try and find some people who think they can. If your project is a game you'll probably need an artist too. Ask for help on your new Sourceforge pages. Here is an example to get you started:
Thousands of talented programmers and artists hang out at Sourceforge ready to devote their time to projects so you should get a team together in no time!5. The A-Team
So now you have your team together you are ready to change your projects status to '1: Pre-Bickering'. You will need to discuss your ideas with your team mates and see what value they can add to the project. You could use an Instant Messaging program like MSN for this, but since you run Linux you'll have to stick to e-mail.
Don't forget that YOU are in charge! If your team doesn't like the idea of giant robotic spiders just delete them from the project and move on. Someone else can fill their place and this is the beauty of Open Source development. The code might end up a bit messy and the graphics inconsistant - but it's still 'Free as in Speech'!
6. Getting Down To It
Now that you've found a team of right thinking people you're ready to start development. Be prepared for some delays though. Programming is a craft and can take years to learn. Your programmer may be a bit rusty but will probably be writing "hello world" programs after school in no time.
Closed Source games like Doom 3 use the graphics card to do all the hard stuff anyhow, so your programmer will just have to get the NVidia 'API' and it will be plain sailing! Giant robot spiders, here we come!
7. The Outcome
So it's been a few years, you still have no files released or in CVS. Your programmer can't get enough time on the PC because his mother won't let him use it after 8pm. Your artist has run off with a Thai She-Male. Your project is still at '1: Pre-Bickering'...
Congratulations! You now have a successful Open Source project on Sourceforge! Pat yourself on the back, think up another idea and do it all again! See how simple it is?
But you'd better make damn sure that your GA doesn't improve the algorithm specifically for your "virtual machine". I.e. if pointer arithmetics were very slow (pulling that example out of my ass, btw.), your GA might tend to penalize algorithms using them more often then others.
Hey,
;) ) Real has nice employees, and you are a very good example for that.
I'm quite sure that even (just joking
I just want to thank you for you patience answering sometimes overly critical, sometimes clueless questions here, and assure you that the bold move Real is doing with this is well appreciated by many - I know a lot of people looking forward for the releases.
On flipping the idiot bit on slashdot, take into account that - because of the size of the community here - it may just be a better sample of the general population than smaller ones.
Unfortunately.
Servers" don't run as CGI scripts, dynamic web applications do.
Really, I don't want to offend you, but I'm really not sure if you know what cgi is.
Fact is, almost nothing on apache runs as cgi nowadays. mod_perl, mod_python, mod_whatever are *not* cgi applications. I'm also quite sure that your 200 hits per second scripts are *not* cgi applications.
It is also wrong that the overhead of "starting a cgi-script" is negligible, because it involves starting the whole friggin interpreter if you use perl or other scripting languages.
I think this is scary because people like us who actually need/use higher end hardware will end up paying more.
The best example for that are IMO ink jet printers. I can't convince any of my computer illiterate friend to not buy an el cheapo hp color printer, because they really don't care any more about price of cartridges.
They tell me that they will just buy a new printer if the cartridge is empty. Unfortunately, I fear HP thought of that strategy and adapted the fill level of the cartridges in new printers.
And similtanously, good non-toy color inkjets get more and more expensive.
Well, that linux can't only be recompiled for a new platform in nearly every case is clear, since parts of it are coded in assembly, it needs drivers for the mb-chipsets and whatnot. This is where the arch/ subdir from the kernel tree comes into play.
For userland apps the story is completely different, the needed changes nearly all are cleanups, where the code wasn't 64bit clean.
IOW, the statement that you can do CFLAGS="-m64" on any app isn't true.
I'm admining 5 linux servers and one nt server. The nt server is definately more work to keep it running.
About installation, as soon as you have to install a serious server application, linux wins hands down in many cases. This is because installing something like sql-server+iis on microsoft needs a lot of patching and disabling stuff. Go to MS's website and search for installation procedures for something like siteserver, there are a lot of steps involved.
This get's worse if the os ages more and more, but you want to install a newer application, because you first have to update the os with a lot of stuff before the application is even able to run.
Contrast that to the typical linux distribution, which, while additionally being a lot cheaper, enables you to install a updated OS together with a matching version of the app, both configured&compiled to work together.
I'm quite sure I'd install a production ready system with a sql server and a webserver with SuSE (or Redhat etc.) in less than half the time than a competent windows admin a system with the same functionality (more or less) an windows based system.
What about 49 cents per MMS?
That's an easy one, you play Phil Connors.
built-in in python doesn't mean that you can't implement it in python, it just means the you doesn't need to import a module to use it. It would be trivial to re-implement it in python, I just didn't do that.
Another nit: the use of __cmp__ instead of < is not very convincing. The < concept is mapped in a relatively unnatural way.
I can't follow here, maybe you misunderstood me, maybe I don't understand you. I don't use __cmp__ instead of <, at most I use cmp instead of <. But in python. I could have also written .
To show a more esoteric example:The brackets around the ints are there to signal that the 4 is to be used as an instance of its type (class), so we can get at its methods - don't ask me why, this would not be needed with strings etc.). Note that since version 2.2, there are more special comparison functions to distinguish every possible comparison (=,!=, <, ), and that if the left type doesn't have the right method, the right side might have the reflected version (i.e. instead of >), so this is looked up on the right side, and used if found.
And yes, you can destroy the mathematical meaning of these operators with this power, but that's life, as long as you don't deliver a __cmp__ function which fdisks the hard disk as a side effect
What is wrong is when you use for what it was not designed for.
;).
Well, that's right with any tool
Note that for all these examples, I think that XL could perform very well, given the right "plug-ins".
Well, python is extremely friendly to other languages, esp C, C++, Java. See for instance Extending and Embedding the Python Interpreter . So, IMO python lends itself very well to numeric computing (see also the numpy module etc.), as it's easy to first write the code and later implement critical sections in a compiled language.
For realtime embedded applications, see for instance this thread on comp.lang.python. Btw. there are a lot of very friendly and competent people which are always interested in language wars^H^H^H^Hcomparisons. I bet if you asked your question about the derivative notation (which can't be translated literally to python, I'm sure), this might lead to interesting discussions.
The same limit exists for more complicated concepts in any non-extensible language. Lisp or Python are somewhat more extensible than C or Java, but you can still hit the ceiling pretty easily. . In Lisp or SmallTalk, for instance, it would be doing math-intensive work, because you don't want to write (+ 1 2) when 1+2 is shorter and nicer.
I don't want to do language evangelism, but I'd be interested in what is wrong with python. I know it sounds silly to insist on that, but my next question would be why you don't just use python, because I find nothing on that site (didn't read everything, though) which python couldn't do.
And here you give an example about C++ which is a critique against the language, not the underlying "paradigm", AFAIK.
Hmm, read that comparison and thought of python, which I'm most intimate with.
There we have module or global functions (methods), in order to represent something like "max".
I mean, it's trival to find "things" which are _not_ well represented by "objects", that's why pure object oriented languages are not soo omnipresent as not-so-pure ones. Every mathematical function comes to mind etc., do we really need a new paradigm for that - and if yes, why don't we just call it "not-so-pure-OO"?
Well, it's a nice change to get Nietcheian Republican moderator rather than the usual bunch of limp-wristed Socialist momma's boys.
LOL
btw, I too found the first troll funny. If you really intended to flamebait, you've overpaced, and landed in funnyland. But I liked it.
Thanks for the reply, I asked as I was really surprised that these interfaces to the car electronics are open (but I assume probably only the passive ones are open).
Now I learned through google that there a real scene around car electronics reverse engineering, which I didn't know before.
There's even a open source suite for that stuff at
http://freediag.sourceforge.net/
which you probably know.
Nice stuff
My car also has an OBDII connector, so I can play with the engine management computer. Which is nice. Serial at 1900-baud - very strange rate.
Sounds interesting, care to elaborate?
What kind of "interface" does the mgmt software have? Is there some kind of "client" software out there which is able to speak to your engine mgmt?
Or maybe there's always my doubt that maybe I don't know enough about the "other" system, so that the shortcomings I perceive are not really shortcomings, but only caused by me just overseeing something.
Unless there's a DNS server or router compromised.
I read on heise.de some days ago that there was indeed a microsoft corporate server with some directories open for public which clearly shouldn't, exposing internal documents. I guess it's from there.