Still, the problem exists, and their documentation is wrong. I'm not nitpicking, I do maintain a legacy Galera cluster and this are the kind of issues you can't easily control on a prebuilt application or with eg. ORMs.
If you're using Galera, I'd recommend you to read this - https://aphyr.com/posts/327-ca... . Depending on your application requirements, you may have unwanted behaviour from your cluster.
That's not naivety, that's a deficiency in PHP, you're fobbing it off as a problem in understanding, when in reality it's simply that PHP is poorly designed.
Well, I did quite some work in assembly. I didn't have any thread mechanism available as a core feature of the language, so I'd assume you'd also say CPUs are poorly designed.
There's nothing inherently wrong with wanting to send something off for processing in the background so that the main execution thread can return a response to the user.
No, there's not. What is wrong is the notion that you can only accomplish this by using threads.
The fact PHP can't do that is a problem with PHP, not naivety on behalf of someone wanting to do that because it's sometimes a legitimate thing to be able to do.
Sometimes I want to be able to issue syscalls. Its a legitimate thing to be able to do, and PHP doesn't allow me to do it easily. Or manage how memory is allocated. Or see an assembly dump of what's being executed. Well, its a limitation. So what?
If you think thread usage is purely about performance
I have great difficulty in having a valid discussion with someone that only performs a naive syllogism when reading a sentence, but I'll bite. If you're deferring tasks to be background processed so you can continue execution, it IS about performance, even though it wasn't what I wrote.
So what you really mean here is that PHP has a 3rd party beta threading implementation that may or may not work on your host
You mean, a package? Like basically every functionality available in every other language or operating system? Hey, PHP doesn't support Memcache also. Its an external package. And in Linux, bad luck - all those basic I/O functionalities are also available in a separate package. You know, like the one the JVM uses (GlibC).
If you do not have enough experience of web applications to realistically understand why you would want threads
Ahh the ad hominem attack. Well, I could say that if you cannot solve your problems without using threads you should be doing something else instead of programming, it doesn't really add nothing to the conversation, does it? By your reasoning, I'd say you're against using eg. PostgreSQL as a database server because isn't threaded. Oh well.
All this ignores the absurdity of the broken argument being made here - PHP is fine because it doesn't need threads, but it's got a barely working threading implementation because it doesn't need it, what?
PHP also has Sybase and Oracle support. I'd guess most developers don't really need that, and the language itself doesn't really need that, but exists. At this point I realize why you prefer to stay anonymous.
Before that it was solved in the most absurd ways by firing up a whole extra process with cURL, but you probably wont understand the performance implications of such a heavyweight action either.
Yah, probably not. I usually don't cater to smart-asses in the internet.
The worst part is, most PHP developers are at such an early stage in their development careers that they're not even equipped to understand why it's broken
So, it's the newbies fault, huh? I often see shitty production code done in Java or C# than in PHP, but it's obvious we have a different definition of shit.
No they wont, this is absolute bullshit. I don't care how good a programmer thinks they are, if the language has more gotchas then code written in that language will over time, be inherently more buggy than code written in a language with less gotchas, and therein lies the problen
Well, since you're so full of certainties, can you demonstrate it? If you have a look at ht
(...) Java runtime not using the native multi threading implementation (...)
Well, AFAIK you cannot perform processing affinity on Java threads. And also AFAIK it's not part of the POSIX standard, so it's often up to the system scheduler (depending on whether you're using a userland implementation or a kernel-based one) to decide that. You ASSUME it will use all cores.
the realistic use case happens to support multiple processors
The realistic case is that you have no control over this in Java or a standard POSIX implementation. However, eg. Linux does provide extensions for this.
Also one of the features of multi threading is working around blocking API calls, one thread can work while the other is in sleep mode waiting for data from network or disk and the CPU would be otherwise idle ( of course using an async API when available is better ).
I'd suggest you look at some async subsystems to realize this often isn't really an advantage (GIANT was removed from Linux in 2011, not that long ago), and add it the complexity of syncing thread state and application state.
Contrary to popular belief, most applications doing real useful work wait the same time for the database, regardless of the language. Maybe a "hello world" is not a good example.
Well, threads aren't really that important in the PHP context. Keep in mind, most PHP applications are run via CGI or similar, so they are stateless from a request point of view - at each request the whole application is bootstrapped, run and then exits.The notion that you could fire a tread to do some heavy lifting while the rest of the application executes is, well, naive - the application only exits when all work is done. Also, in some languages (e.g. Java) there is no guarantee that threads will execute on a separate processor, so its not obvious threading will translate directly into performance gains. But hey, let me just point out that PHP actually has pthread support - http://php.net/manual/en/book...., so if anyone wants them, they can use them.
Like every language, PHP has its shortcomings. Some of them are quite ugly (I do identify with most of the issues pointed by "Fractal of Bad Design", and also think the rebuttal is somewhat hilarious), but what productive language doesn't require you to know more than 100 pages? Good programmers will write good code, regardless of the syntax. And its not a general purpose language - at all. Even in web development, there are a lot of situations where PHP is a poor choice. There are also a lot of situations where it is an acceptable choice, regardless of the flaws. Complaining about mysql_* when PDO and prepared statements exist for more than 10 years is also quite amateurish. Every language allows you to shoot yourself in the foot. Granted, PHP does give you a lot of options in this regard, but hey - you can shoot yourself in the foot with C, Java, Assembly, Perl, Python, Erlang or whatever is your poison. Every language has a niche, and failing to understand that is, well, dumb. And in the end it's all ones and zeros being executed in a processor.
Disposable/Virtual VISA cards can be bought at any convenience store anywhere (gas stations, 24/7 stores) - at least in Berlin and Munich. You can even top them with a small amount when you buy them. You can then top them via bank transfer, and the limit is defined by the amount of info about yourself you give the broker. In Portugal, you have MBNet, a free service that will generate one-time usage VISA or Mastercard numbers with a limit amount, debiting it right on your bank account, but disposable VISA cards (eg. for anonymous usage) basically don't exist.
I actually have currently probably > 200 tabs open in my 4 or 5 Chrome windows on a 2-year old i7 with 8GB of RAM without any major issues. The fact that I only had problems with Firefox is also a good clue it's not the number of tabs (had also used Opera with the same kind of load without major issues)
Unless you're one of the users running into those mysterious "memory leaks" that nobody can replicate once they file an actual bug
I stopped using Firefox a couple of years ago because of this. They're not mysterious, they were real. Try opening a reasonable amount of tabs (50-100), and leave the browser open for a day or two, and you'll probably be able to reproduce it.
It is funny, I've read many comments since the top of the page, and finally someone is actually asking for requirements. At this point, its buried at the middle of the scrollbar. And yet, someone blames slashdot moderation. I blame the users.
Given the liquidity problems the banks have had this last two weeks, I'd seriously doubt that. Even if so, who is going to buy such assets? At what price? A fraction of the real value?
The value of a thing is nothing more than more the price which people are willing to pay to acquire it.
So, why would you choose an unstable, national currency over a more stable, international one? As many african countries can attest, having your own currency is only effective if your economy is stable.
Or someone so fucking stupid it confuses advances in medicine with politics. There are several diseases that have treatment in Cuba that isn't easily available elsewhere (eg. psoriasis).
I've taken Longhorn for a spin like everybody else. Most of it seemed to be done in managed code. I find almost no resemblance to a typical Vista system, it seems they rewrote a huge part of the operating system (again). Or they just glued some concepts together (in c#) to show some progress. Either way, WinFS always seemed vaporware.
I'm actually not a fan of Linux, but basically Mint is - by far - the most usable *nix desktop I've ever tried. If they could solve the out-of-the-box wtf-is-this problem with the fonts in Java (I know, its not really the project's fault, but the nineties called and they want their defaults back), I'd probably be running it right now. And I'm a BSD guy.
On the other hand, what the f*ck happened with XDMCP? Everytime I tried it, its broken either by design (lxde login manager?) or just broken (gnome).
Well, you seem to be way more versed in it than I am. I've used both Solaris Express and OpenSolaris on x86-64, without ever having this problem (I did some simple cluster configurations with both Solaris-HA and Sun Grid Engine and I'd guess this would be a major issue). Their virtual networking features were ahead of their time (at least UNIX-wise, I do know VMS, but mostly from reputation - typing in commands on a 1985 machine doesn't really count as experience), but maybe the guys buying actual SPARC boxes had their own issues.
When famine people are pushed, no good comes from it. Giving money to their government, however, doesn't solve anything. Don't confuse my "macro economic opinions" and Greece's government and FUD campaign with lack of solidarity with their people (who elected them, btw). As a result of referendum, we will probably have a humanitarian crisis on our hands soon enough.
And if I've already paid taxes on the money,
For most of the civilized world, and if you're transferring reasonable amounts, taxes do apply. Its called currency export for some reason...
You may want to check the micro:bit platform http://microbit.org/
Still, the problem exists, and their documentation is wrong. I'm not nitpicking, I do maintain a legacy Galera cluster and this are the kind of issues you can't easily control on a prebuilt application or with eg. ORMs.
If you're using Galera, I'd recommend you to read this - https://aphyr.com/posts/327-ca... . Depending on your application requirements, you may have unwanted behaviour from your cluster.
That's not naivety, that's a deficiency in PHP, you're fobbing it off as a problem in understanding, when in reality it's simply that PHP is poorly designed.
Well, I did quite some work in assembly. I didn't have any thread mechanism available as a core feature of the language, so I'd assume you'd also say CPUs are poorly designed.
There's nothing inherently wrong with wanting to send something off for processing in the background so that the main execution thread can return a response to the user.
No, there's not. What is wrong is the notion that you can only accomplish this by using threads.
The fact PHP can't do that is a problem with PHP, not naivety on behalf of someone wanting to do that because it's sometimes a legitimate thing to be able to do.
Sometimes I want to be able to issue syscalls. Its a legitimate thing to be able to do, and PHP doesn't allow me to do it easily. Or manage how memory is allocated. Or see an assembly dump of what's being executed. Well, its a limitation. So what?
If you think thread usage is purely about performance
I have great difficulty in having a valid discussion with someone that only performs a naive syllogism when reading a sentence, but I'll bite. If you're deferring tasks to be background processed so you can continue execution, it IS about performance, even though it wasn't what I wrote.
So what you really mean here is that PHP has a 3rd party beta threading implementation that may or may not work on your host
You mean, a package? Like basically every functionality available in every other language or operating system? Hey, PHP doesn't support Memcache also. Its an external package. And in Linux, bad luck - all those basic I/O functionalities are also available in a separate package. You know, like the one the JVM uses (GlibC).
If you do not have enough experience of web applications to realistically understand why you would want threads
Ahh the ad hominem attack. Well, I could say that if you cannot solve your problems without using threads you should be doing something else instead of programming, it doesn't really add nothing to the conversation, does it? By your reasoning, I'd say you're against using eg. PostgreSQL as a database server because isn't threaded. Oh well.
All this ignores the absurdity of the broken argument being made here - PHP is fine because it doesn't need threads, but it's got a barely working threading implementation because it doesn't need it, what?
PHP also has Sybase and Oracle support. I'd guess most developers don't really need that, and the language itself doesn't really need that, but exists. At this point I realize why you prefer to stay anonymous.
Before that it was solved in the most absurd ways by firing up a whole extra process with cURL, but you probably wont understand the performance implications of such a heavyweight action either.
Yah, probably not. I usually don't cater to smart-asses in the internet.
The worst part is, most PHP developers are at such an early stage in their development careers that they're not even equipped to understand why it's broken
So, it's the newbies fault, huh? I often see shitty production code done in Java or C# than in PHP, but it's obvious we have a different definition of shit.
No they wont, this is absolute bullshit. I don't care how good a programmer thinks they are, if the language has more gotchas then code written in that language will over time, be inherently more buggy than code written in a language with less gotchas, and therein lies the problen
Well, since you're so full of certainties, can you demonstrate it? If you have a look at ht
(...) Java runtime not using the native multi threading implementation (...)
Well, AFAIK you cannot perform processing affinity on Java threads. And also AFAIK it's not part of the POSIX standard, so it's often up to the system scheduler (depending on whether you're using a userland implementation or a kernel-based one) to decide that. You ASSUME it will use all cores.
the realistic use case happens to support multiple processors
The realistic case is that you have no control over this in Java or a standard POSIX implementation. However, eg. Linux does provide extensions for this.
Also one of the features of multi threading is working around blocking API calls, one thread can work while the other is in sleep mode waiting for data from network or disk and the CPU would be otherwise idle ( of course using an async API when available is better ).
I'd suggest you look at some async subsystems to realize this often isn't really an advantage (GIANT was removed from Linux in 2011, not that long ago), and add it the complexity of syncing thread state and application state.
how slow it was
Contrary to popular belief, most applications doing real useful work wait the same time for the database, regardless of the language. Maybe a "hello world" is not a good example.
Well, threads aren't really that important in the PHP context. Keep in mind, most PHP applications are run via CGI or similar, so they are stateless from a request point of view - at each request the whole application is bootstrapped, run and then exits.The notion that you could fire a tread to do some heavy lifting while the rest of the application executes is, well, naive - the application only exits when all work is done. Also, in some languages (e.g. Java) there is no guarantee that threads will execute on a separate processor, so its not obvious threading will translate directly into performance gains. But hey, let me just point out that PHP actually has pthread support - http://php.net/manual/en/book...., so if anyone wants them, they can use them.
Like every language, PHP has its shortcomings. Some of them are quite ugly (I do identify with most of the issues pointed by "Fractal of Bad Design", and also think the rebuttal is somewhat hilarious), but what productive language doesn't require you to know more than 100 pages? Good programmers will write good code, regardless of the syntax. And its not a general purpose language - at all. Even in web development, there are a lot of situations where PHP is a poor choice. There are also a lot of situations where it is an acceptable choice, regardless of the flaws. Complaining about mysql_* when PDO and prepared statements exist for more than 10 years is also quite amateurish. Every language allows you to shoot yourself in the foot. Granted, PHP does give you a lot of options in this regard, but hey - you can shoot yourself in the foot with C, Java, Assembly, Perl, Python, Erlang or whatever is your poison. Every language has a niche, and failing to understand that is, well, dumb. And in the end it's all ones and zeros being executed in a processor.
Disposable/Virtual VISA cards can be bought at any convenience store anywhere (gas stations, 24/7 stores) - at least in Berlin and Munich. You can even top them with a small amount when you buy them. You can then top them via bank transfer, and the limit is defined by the amount of info about yourself you give the broker. In Portugal, you have MBNet, a free service that will generate one-time usage VISA or Mastercard numbers with a limit amount, debiting it right on your bank account, but disposable VISA cards (eg. for anonymous usage) basically don't exist.
I actually have currently probably > 200 tabs open in my 4 or 5 Chrome windows on a 2-year old i7 with 8GB of RAM without any major issues. The fact that I only had problems with Firefox is also a good clue it's not the number of tabs (had also used Opera with the same kind of load without major issues)
Unless you're one of the users running into those mysterious "memory leaks" that nobody can replicate once they file an actual bug
I stopped using Firefox a couple of years ago because of this. They're not mysterious, they were real. Try opening a reasonable amount of tabs (50-100), and leave the browser open for a day or two, and you'll probably be able to reproduce it.
It is funny, I've read many comments since the top of the page, and finally someone is actually asking for requirements. At this point, its buried at the middle of the scrollbar. And yet, someone blames slashdot moderation. I blame the users.
Given the liquidity problems the banks have had this last two weeks, I'd seriously doubt that. Even if so, who is going to buy such assets? At what price? A fraction of the real value?
Actually, its not. Have a look at what is the Federal Reserve.
The value of a thing is nothing more than more the price which people are willing to pay to acquire it.
So, why would you choose an unstable, national currency over a more stable, international one? As many african countries can attest, having your own currency is only effective if your economy is stable.
Or someone so fucking stupid it confuses advances in medicine with politics. There are several diseases that have treatment in Cuba that isn't easily available elsewhere (eg. psoriasis).
Try installing NetBeans, it will default to some ugly-ass fonts.
I've taken Longhorn for a spin like everybody else. Most of it seemed to be done in managed code. I find almost no resemblance to a typical Vista system, it seems they rewrote a huge part of the operating system (again). Or they just glued some concepts together (in c#) to show some progress. Either way, WinFS always seemed vaporware.
I'm actually not a fan of Linux, but basically Mint is - by far - the most usable *nix desktop I've ever tried. If they could solve the out-of-the-box wtf-is-this problem with the fonts in Java (I know, its not really the project's fault, but the nineties called and they want their defaults back), I'd probably be running it right now. And I'm a BSD guy. On the other hand, what the f*ck happened with XDMCP? Everytime I tried it, its broken either by design (lxde login manager?) or just broken (gnome).
Well, you seem to be way more versed in it than I am. I've used both Solaris Express and OpenSolaris on x86-64, without ever having this problem (I did some simple cluster configurations with both Solaris-HA and Sun Grid Engine and I'd guess this would be a major issue). Their virtual networking features were ahead of their time (at least UNIX-wise, I do know VMS, but mostly from reputation - typing in commands on a 1985 machine doesn't really count as experience), but maybe the guys buying actual SPARC boxes had their own issues.
When famine people are pushed, no good comes from it. Giving money to their government, however, doesn't solve anything. Don't confuse my "macro economic opinions" and Greece's government and FUD campaign with lack of solidarity with their people (who elected them, btw). As a result of referendum, we will probably have a humanitarian crisis on our hands soon enough.
And in that I do agree with you. But the greeks did put themselves where they are today.
Given that he actually is an american, It has almost credibility as you, right? You should come across the pond and actually learn some history.
FreeBSD kernel, Solaris networking/clustering capabilities, and a sort-of Windows UI (Imagine Windows 7, not the metro interface)
lol. Really.