I was thinking: A server. Most server apps are multithreaded anyway, anything that has a GC for instance will benefit from any additional number of cores. Another possibility: A dev machine. Great for testing. Because bad threaded code tends to work on a single core. A third possibility: Use it as a home pc. Run any number of apps + your favoirite single-threaded game. It will work great.
Nonsense. 2000/XP are just the next versions of NT 4.0, which has *NOTHING* to do with Windows 98/ME, except the fact that you can run some of your apps on all of them.
There are programs that would run under 95/98/ME, but not on NT/2000/XP and vice versa. Those are competely different product lines that have nothing essensial in common.
Looks like someone doesn't like it when google proves them programmers can do a good job and win money at the same time. Too bad. I have no sympathy at people trying to win money through selling vaporware, then whining when someone good takes that money away from them, just because they suck at what it is they are supposed to do. Too, too bad.
People: Go get a clue about what it is you are trying to do, then whine when those who actually get it go in and take your deals away.
I don't really get it: do people who are so smart enough to manage millions can't get the fact that their customers will turn away if there is a better deal at hand? (What is a better deal? Let's see: It works and it costs next to nothing.) Or is it just that their contempt for people in general is beginning to show and they do indeed treat customers and employees alike like cattle?
The problem is, of course, that the reason the saleman was able to make the deal, was because the engineers had been working on the product over a long period of time. But that is much less conspicuous.
Who cares! Everybody knows writing GUI is like using Paint(TM) or something, we mean how hard can it be, and writing server-side DB code is like using Excell(TM), right? So what's taking those damn' monkeys so long to get their job done?! They keep blamig each other for bugs or something, and we perfeclty well know that restarting the PC fixes that! We mean, if *we* can write a requirements spreadsheet in like three hours, they must finish the jsps, the db code and the transport layers in the same time, right?
Seriously, as far as business types are concerned, code is just some fluff that gets copied/pasted or just dragged and dropped, after all that's been done so many times before, right? In a perfect world, that would be done by marketing droids themselves before the very customers' eyes, after the original system designers have been prudently sacked.
Re:C++ is cross-platform, dont know what your smok
on
Write Portable Code
·
· Score: 1
Yes, there is. See the javadoc for SecurityManager. Basically, you write your own SecurityManager that permits you to do that, then activate it and you are done. However, there's a catch. You can do that only once. As most big frameworks (J2EE app servers, OSGI frameworks, etc.) usually do that on startup, you can't.
Java Pros: 1. Zero memory fragmentation. The GC compacts the memory at runtime. This means indefinite uptimes. A server written in a refcounted script language might lack that. 2. Zero chance of a buffer overflow attack anywhere. Maybe if there is a bug in the VM, however, this might become possible. 3. All libraries in the standard distribution have been tested for almost a decade now. 4. Incredibly powerful multithreading and synchronization. 5. Rapid development of fast programs. Only someone well versed in Java can do that, but java is well worth it when you have the people. This can be done in other languages but at insane costs in security. 6. Performance costs for all of the above is within the 20% margin, which is great for a server app that does not do anything computationally expensive. Most of the work is offloaded to a fully optimized DB server anyway. 7. With the right framework, you can easily load and unload modules at runtime. Not easily done though.
Java Cons: 1. Incredibly slow startup time. It may take up to a minute for a large app to get fully loaded and JITed. This is a non-issue in a server environment, however. 2. Extreme memory usage. Up to 10 x the equivalent C++ app. However, the GC makes sure that memory usage remains almost constant under similar loads for months and years of uptime, because there is no memory fragmentation. 3. Due to 2, sometimes most of the memory gets swapped. This shouldn't happen in a server environment, but on a desktop running server apps (dev machines for instance) this is a great nuisance. It might take running a full GC manually to force your redmond-developed OS to re-load all the memory for the app. Again, a non-issue for servers. 4. The default Sun Java VM configuration makes Java run any program with a 64 megs of mem usage limit. This is ridiculous for a serious Java app. It takes passing a command-line param to fix that. People can get frustrated because of this.
There are quite a few online radios playing my favourite kind of music (trance), so maybe you can also find something like this to enjoy. A few months back while I was still in Norway, and connection speeds were decent, I enjoyed listening to one of those stations all the time. The music was varied and it was all good. No fees, just whatever you pay for your broadband.
A beginner programmer takes about $350 per month. An average programmer (2 years of work exp) takes about $750-$875 per month. A senior developer takes $1060 - $1500 per month. A project manager takes about $1930 per month.
That is cache, not the officially declared salary, which is usually lower to 'save' some costs for the companies.
These salaries are usually given by outsourcing western companies, German and American mainly. Bulgarian companies pay similar or lower salaries, depending on how well they manage to attract clients.
And we are happy with this, as the average salary in the country is lower than that of a beginner programmer. The good thing is, the TOC of living in Sofia is just a small fraction of that of living in, say, Norway or something.
Now, we all hope one day the salaries will reach their western counterparts... but the opposite could happen.
Well, why, counting lines of code would be a great way to measure my performance! You see, theoretical programming tells us there are infinitely many ways a program can be written, each longer than the previous one. So, all I would have to do would be to further perfect my nonsense code generator algorithms. You know, stuff like --i; ++i;, adding input checks inside every code branching, copying and pasting implementations of entire methods... Additional bonus: every design pattern this breaks is a plus, as it assures almost infinite job security!
A better way to do it: re-install their windows or just fix it, install the latest patches and updates, turn on autoupdate, turn on windows firewall, install a free-as-in-beer av program and a free-as-in-beer firewall (and tell it NOT to disable the windows firewall), and you are done. I'm running such a machine exposed with an external IP and I've had no problems at all.
The OS *has* to be the same for compatibility with third-party software. Even the browser for that matter. Just turn on the security to maximum and turn off the "accept active x" option or what ever the hell it's called.
OK, maybe what you've done is wrong, but when they come asking why some program isn't working, you could just do what I described using their own copy of windows (they must have one on a CD or something) so that windowsupdate doesn't freak out.
:D Nice.
However, funny as it may be, communists around here in eastern Europe used to teach their children that a certain "Grandpa Frost" arrives every new year to give presents. That guy wore chothes suspiciously similar to the western Santa.
Exactly. And that's why one might wish to licence things under (only GPL2) and (GLP2 or any future version) and (only GPL3, i mean when it becomes available). I mean, the same code under each license, seperately. But if you don't really care about the freedom of the code, you could just release it all into the public domain, this way anyone could take the code and use it with no obligations, and, if you are lucky, some of it may end up being used in GPL'ed programs.
I really didn't see the ".tga" bug:( . As for the %04i formatting, it's really neat, but I also didn't know it (that's because I'm writing mainly in another language for a living).
Sounds very interesting, I've thought about something similar, but it was like 5 years ago when I was thinking what would be the best way to describe a crypto system that allows the user to chain many crypto algorithms together, and then it struck me that it didn't have to be a chain at all, and rather a diagram.
Perhaps the easiness of comprehension of such a design would be the fact that you can actually see all the components layed out for you, and you can zoom in and out of them all, instead of digging through thousands of source code files, finding your way through interface definitions and constants and RPC calls, etc.
There was the idea, not so long ago seen right here on slashdot, of designing a visual system that lets the user zoom in and out. Couple this with this software design paradigm, and you've got yourself a very easy to work with system.
One more thing, having diagrams and such doesn't explicitly remove old-fashioned coding, I think it would be best to let simple things be coded the old way, having some components be composed of normal software, be it for backwards compatibility with old command-line tools, or just because a while loop is faster coded than dragged-and-dropped.
OK, maybe it's a little crackpot, but hey, we are geeks, and we should enjoy such ideas just for the sake of them, right? What if this turns out to be a better way of doing things...
P.S. Ironically, the slashdot log-in confirmation word is 'idealism'.:P
I was thinking: A server. Most server apps are multithreaded anyway, anything that has a GC for instance will benefit from any additional number of cores. Another possibility: A dev machine. Great for testing. Because bad threaded code tends to work on a single core. A third possibility: Use it as a home pc. Run any number of apps + your favoirite single-threaded game. It will work great.
Nonsense. 2000/XP are just the next versions of NT 4.0, which has *NOTHING* to do with Windows 98/ME, except the fact that you can run some of your apps on all of them.
There are programs that would run under 95/98/ME, but not on NT/2000/XP and vice versa. Those are competely different product lines that have nothing essensial in common.
Mod parent up: Creative thinking.
Mod parent up!
Looks like someone doesn't like it when google proves them programmers can do a good job and win money at the same time. Too bad. I have no sympathy at people trying to win money through selling vaporware, then whining when someone good takes that money away from them, just because they suck at what it is they are supposed to do. Too, too bad.
People: Go get a clue about what it is you are trying to do, then whine when those who actually get it go in and take your deals away.
I don't really get it: do people who are so smart enough to manage millions can't get the fact that their customers will turn away if there is a better deal at hand? (What is a better deal? Let's see: It works and it costs next to nothing.) Or is it just that their contempt for people in general is beginning to show and they do indeed treat customers and employees alike like cattle?
Seriously, as far as business types are concerned, code is just some fluff that gets copied/pasted or just dragged and dropped, after all that's been done so many times before, right? In a perfect world, that would be done by marketing droids themselves before the very customers' eyes, after the original system designers have been prudently sacked.
Why, then, do I prefer the green laser ;-)
Do you mean LGPL'ed rootkit? ;)
Yes, there is. See the javadoc for SecurityManager. Basically, you write your own SecurityManager that permits you to do that, then activate it and you are done. However, there's a catch. You can do that only once. As most big frameworks (J2EE app servers, OSGI frameworks, etc.) usually do that on startup, you can't.
So, if a person needs edit.com and grep to program, then (s)he is not a programmer, but merely an edit.com and grep operator?
Java Pros:
1. Zero memory fragmentation. The GC compacts the memory at runtime. This means indefinite uptimes. A server written in a refcounted script language might lack that.
2. Zero chance of a buffer overflow attack anywhere. Maybe if there is a bug in the VM, however, this might become possible.
3. All libraries in the standard distribution have been tested for almost a decade now.
4. Incredibly powerful multithreading and synchronization.
5. Rapid development of fast programs. Only someone well versed in Java can do that, but java is well worth it when you have the people. This can be done in other languages but at insane costs in security.
6. Performance costs for all of the above is within the 20% margin, which is great for a server app that does not do anything computationally expensive. Most of the work is offloaded to a fully optimized DB server anyway.
7. With the right framework, you can easily load and unload modules at runtime. Not easily done though.
Java Cons:
1. Incredibly slow startup time. It may take up to a minute for a large app to get fully loaded and JITed. This is a non-issue in a server environment, however.
2. Extreme memory usage. Up to 10 x the equivalent C++ app. However, the GC makes sure that memory usage remains almost constant under similar loads for months and years of uptime, because there is no memory fragmentation.
3. Due to 2, sometimes most of the memory gets swapped. This shouldn't happen in a server environment, but on a desktop running server apps (dev machines for instance) this is a great nuisance. It might take running a full GC manually to force your redmond-developed OS to re-load all the memory for the app. Again, a non-issue for servers.
4. The default Sun Java VM configuration makes Java run any program with a 64 megs of mem usage limit. This is ridiculous for a serious Java app. It takes passing a command-line param to fix that. People can get frustrated because of this.
There are quite a few online radios playing my favourite kind of music (trance), so maybe you can also find something like this to enjoy. A few months back while I was still in Norway, and connection speeds were decent, I enjoyed listening to one of those stations all the time. The music was varied and it was all good. No fees, just whatever you pay for your broadband.
Artists dont want it. ...
...
Managers don't understand it...
Consumers dont want it.
Exactly! :)
I'd like to see a game that licenses this thing.
In Bulgaria:
A beginner programmer takes about $350 per month.
An average programmer (2 years of work exp) takes about $750-$875 per month.
A senior developer takes $1060 - $1500 per month.
A project manager takes about $1930 per month.
That is cache, not the officially declared salary, which is usually lower to 'save' some costs for the companies.
These salaries are usually given by outsourcing western companies, German and American mainly. Bulgarian companies pay similar or lower salaries, depending on how well they manage to attract clients.
And we are happy with this, as the average salary in the country is lower than that of a beginner programmer. The good thing is, the TOC of living in Sofia is just a small fraction of that of living in, say, Norway or something.
Now, we all hope one day the salaries will reach their western counterparts... but the opposite could happen.
Well explained.
Well, why, counting lines of code would be a great way to measure my performance! You see, theoretical programming tells us there are infinitely many ways a program can be written, each longer than the previous one. So, all I would have to do would be to further perfect my nonsense code generator algorithms. You know, stuff like --i; ++i;, adding input checks inside every code branching, copying and pasting implementations of entire methods... Additional bonus: every design pattern this breaks is a plus, as it assures almost infinite job security!
I plead temporary insanity. [Come, see the violence inherent in the system!]
A better way to do it: re-install their windows or just fix it, install the latest patches and updates, turn on autoupdate, turn on windows firewall, install a free-as-in-beer av program and a free-as-in-beer firewall (and tell it NOT to disable the windows firewall), and you are done. I'm running such a machine exposed with an external IP and I've had no problems at all.
The OS *has* to be the same for compatibility with third-party software. Even the browser for that matter. Just turn on the security to maximum and turn off the "accept active x" option or what ever the hell it's called.
OK, maybe what you've done is wrong, but when they come asking why some program isn't working, you could just do what I described using their own copy of windows (they must have one on a CD or something) so that windowsupdate doesn't freak out.
:D Nice. However, funny as it may be, communists around here in eastern Europe used to teach their children that a certain "Grandpa Frost" arrives every new year to give presents. That guy wore chothes suspiciously similar to the western Santa.
Exactly. And that's why one might wish to licence things under (only GPL2) and (GLP2 or any future version) and (only GPL3, i mean when it becomes available). I mean, the same code under each license, seperately. But if you don't really care about the freedom of the code, you could just release it all into the public domain, this way anyone could take the code and use it with no obligations, and, if you are lucky, some of it may end up being used in GPL'ed programs.
... that some judges would put up with if given enough financial incentive is insane. I officialy need to get off this planet, now.
I stand corrected.
:( . As for the %04i formatting, it's really neat, but I also didn't know it (that's because I'm writing mainly in another language for a living).
I really didn't see the ".tga" bug
Sounds very interesting, I've thought about something similar, but it was like 5 years ago when I was thinking what would be the best way to describe a crypto system that allows the user to chain many crypto algorithms together, and then it struck me that it didn't have to be a chain at all, and rather a diagram.
:P
Perhaps the easiness of comprehension of such a design would be the fact that you can actually see all the components layed out for you, and you can zoom in and out of them all, instead of digging through thousands of source code files, finding your way through interface definitions and constants and RPC calls, etc.
There was the idea, not so long ago seen right here on slashdot, of designing a visual system that lets the user zoom in and out. Couple this with this software design paradigm, and you've got yourself a very easy to work with system.
One more thing, having diagrams and such doesn't explicitly remove old-fashioned coding, I think it would be best to let simple things be coded the old way, having some components be composed of normal software, be it for backwards compatibility with old command-line tools, or just because a while loop is faster coded than dragged-and-dropped.
OK, maybe it's a little crackpot, but hey, we are geeks, and we should enjoy such ideas just for the sake of them, right? What if this turns out to be a better way of doing things...
P.S. Ironically, the slashdot log-in confirmation word is 'idealism'.