"I strongly suspect that in reality France Telecom complained about how Skype is sending calls "for free over our domestic network and costing us money" and this is the real reason for the sudden regulatory interest."
Actually no, there is a global push for this.
It's in large part because of all the spam and scam calls that literally millions of people in the West are plagued by from countries like India and is part of a bigger push in general. Globally there are attempts at the ITU to try and get Caller ID passed between every international call successfully so that people like me can opt to completely and utterly block all calls from places like Bangladesh and India whom I have zero interest in every receiving a call from given that they only contact me about people who have never even lived at my address and whom I've never even ever given my number out to at 2am in the morning.
Currently I just block all caller ID unavailable incoming numbers - if you can't provide caller ID, I don't want to talk to you and thankfully the international calls I do receive are from non-backwards nations where caller ID is properly passed across. This solves the problem fine for me and I suspect always will because countries like India have too much of a vested interest in hiding incoming numbers as they've tried to boost their economy based on crap call centres, rather than doing real actual useful things like China, such as manufacturing.
But for others, they may receive calls via VOIP services such as Skype and so forth, they may have some currently "unavailable" numbers they do want to talk to. This is why countries internationally and VOIP providers are being targeted because they too are major sources of these Indian illegal spam and scam operations (illegal because in many of the countries they call such as the UK they legally have to have a valid caller ID number displayed if phoning on behalf of a company). People can't do caller ID whitelisting/blacklisting unless the likes of Skype start making that possible. Again though, like India, I suspect Skype makes a lot of money from these spam/scam operations which is why they will desperately try to fight this sort of thing.
There is a good valid reason for all this and it's not simply nationalism or any such thing.
"3. Don't let yourself assume I don't know what I'm talking about to avoid cognitive dissonance, I think I've clearly demonstrated I know the framework and am not some hobbyist WP advocate, and plenty of drupal or ex-drupal developers agree with me, see [1]"
I wont address this in detail again, merely point out that this is the image you have painted of yourself given that you have made numerous statements that are demonstrative of nothing other than a complete lack of understanding, or, alternatively, simple dishonesty for the sake of trying to make your point.
Note: Having to run to the "but other people think this too, including this guy who has a blog post about it!" argument doesn't reinforce your argument. On the internet you can find a handful of people that will hate or have problems with absolutely anything. For example, this Ben Buckman you keep quoting, I don't really know why you think we should care what he has to say given that I'd wager most Slashdot developers are more experienced than he is. Having a blog doesn't make someone an authority on a topic.
"A content neutral CMS is a *mistake* IMHO (nodes etc) - most CMS systems are tailored to the problem domain and rightly so. "
This is stupid, there's so many use-cases that you couldn't possibly have a CMS tailored to each and every one of them. This has the implication that not only do you simply not understand the purpose of Drupal, but that your understanding of the business world in general is extremely narrow in breadth. You simply do not seem to have the breadth of experience if you think it's possible to have a CMS tailored to every single problem domain, or even anything close to a sizeable minority of them. This is before you factor in the point that even CMSs across different problem domains will have shared fundamentals which means your solution is to have masses of duplicate codebases all reinventing that shared wheel differently. Wouldn't it be nice if instead of that you had say, a base CMS, that implemented the shared functionality without imposing anything much above that on you so that you could build on that for your domain specific CMS? Oh wait, that's exactly what Drupal is for.
"Not doing so leads to bad performance, inflexibility, complex db schemas, and ongoing problems with maintenance."
This is really just 100% FUD, given that Drupal has been implemented in good time on high performance sites that require extreme flexibility and where there have been no maintenance problems it's more a reflection again of your lack of experience or perhaps lack of ability with Drupal. The simple fact such sites, such case studies exist is demonstrative of the fact that if you have encountered these problems, these problems are specific to you or the projects you have inherited and are not inherent in Drupal itself.
You keep talking about the complexity of the database schema, but again, I don't know what you want people to take away from this? as others have pointed out to you it's not exactly a complex schema, if you find it problematic or horrible it once more speaks volumes about your own experience than anything else - that's not an attack on you, just a statement of fact, how else do you expect people to read it? It's not like we can't see the schema for ourselves and are just having to take your word on it, we can see it, and we don't find it problematic.
"If you haven't I would honestly recommend trying one of those in my list and giving it a go to build a simple site just to compare (not another PHP one)."
I don't really tend to work with toy frameworks any more, most stuff I work on needs to use more heavyweight technologies with a strong track record like Java EE, C# w/.NET, and C++. Play is nice for some simple stuff, but it's too immature and has it's deficiencies compared to the heavyweights.
Yes, but ending an armistice unilaterally basically means you have no way of complaining to the UN that other actors keep out of the war.
Unilateral termination of an armistice in this way means you've broken international agreements and means that you've opened the door for other nations, such as the US, who do at least try to respect some international laws to hit you hard because you are officially then an aggressor nation. If there was no unilateral breaking of the armistice then nations like the US will not be able to gather the legal basis for attacking North Korea. Not that this stopped them with Iraq, but still, the point is that generally sticking to the law puts you in a better international light - for example, interference in Libya didn't put Britain in such a bad light as interference in Iraq, this is because the former had legal basis, and the latter didn't.
So yes, North Korea can illegally unilaterally end the armistice, but at that point it's open season on them for whoever wants to get involved. If in some weird alternative reality both South Korea and North Korea said yeah, you know what, let's bilaterally scrap this agreement, then theoretically it should be harder for the likes of the US to get involved because the decision was made bilaterally and so the resultant war should be just between those two nations.
Of course as I say, much of it's really just theory, how a nation looks in practice as a result, and who gets involved in practice is usually a completely different story.
That's a fine workaround in some scenarios (like you say, many batch processing scenarios), but in other cases needing a persistence layer, and an additional full blown service and/including scheduler is rather a brutal workaround for a rather unacceptable deficiency in PHP. In some cases it's not even a solution at all.
I put some numbers against this the other day in the last discussion about North Korea, basically even if the whole entire population of North Korea crossed the border it would still only be about the same population increase China sees naturally despite having a one child policy in 2 years anyway, or a less than 2% increase in population.
This is still non-negligible and would be a big problem of course, but also as I pointed out the whole population wouldn't cross the border. When you factor in disease and famine, people who stay, people who die, people who flee elsewhere (to Japan, South Korea etc.) the actual figure is going to be fairly negligible. As there would be a hefty amount of international aid and support to boot it's likely that the border region of China may even actually see a net benefit - cheap labour and international funding to feed it, build accommodation, provide healthcare and so on.
Just to put this into context, Jordan saw 750,000 Iraqi refugees arrive in the three years between 2003 and 2006 which to them, was a 15% increase in population - drastically higher than anything China could suffer from war in the absolute worst case that would never come close to happening in practice of every single individual in North Korea going there.
I don't think the refugee argument is a legitimate one, I don't think that's China's concern at all.
More likely I think the real reason is simply that China doesn't want reunification - the last thing it wants is a successful Western ally backed by heavy US military presence right on it's doorstep, it prefers to maintain a buffer zone, that buffer zone being North Korea.
If this were to happen the bigger threat to China would likely be the emigration of it's brightest and best across the border into a new unified Korea, rather than emigration of North Koreans post-war.
"If Un started running his mouth stupidly, they'd probably pump him full of drugs until he started talking about rainbows instead. Killing him would be drastic."
This was my suspicion too, but the revenue generated by gTLDs is going to literally be in the billions and ICANN is a non-profit.
Does anyone know how ICANN intends to spend these billions of dollars? How do non-profits with excess cash in the US work? Here in the UK if a non-profit or charity ends up with too big a cash pile it can be redistributed to similar charities - does the US have the same sort of thing? Or has ICANN published plans for expenditure of these billions it will gain to spread it's influence and power even more?
It certainly sounds like a cash grab, are ICANN's wages published publicly at all? I'd be intrigued to see if there are hefty raises as a result of gTLDs.
There's a reason Apple shifted more devices last quarter but failed to grow profit - Samsung upped the price of components to them, shifting the cost of lawsuits onto them.
It's really quite clever on Samsung's behalf, whatever Apple does when it comes to lawsuits they lose. If Samsung wins the case, Apple loses, if Samsung loses the case, they just shift the burden of cost onto the key components Apple has to buy from Samsung.
What's really funny though is that Cook hasn't realised this and has authorised yet more lawsuits, what does he think is going to happen? Samsung aren't just going to reduce their competitiveness and whilst Apple can go to lower quality manufacturers for some components like LG's screens that weren't as good as the Samsung ones, they can't escape Samsung for everything they need, and they can't retain the level of quality and output they've had in the past on the components they do abandon Samsung over.
The only way Apple could make this plan work is if they spent that cash pile creating their own component production facilities, but that would take years and kill profits in the meantime by which time it might already be too late anyway.
The only practical way Apple can turn this situation around then is to stop the lawsuits, and start innovating again.
"Try not thinking of people who find drupal distasteful as automatically stupid, it might help"
But how can one view you any differently when you're out and out saying Drupal sucks and Wordpress is better when whilst the use cases intersect on a venn diagram there are also large areas outside that intersections where one or the other is superior? Your suggestion that Drupal is out and out worse can only be taken as a lack of understanding of where Drupal works, else your comments make no sense. You're basically saying a screwdriver is always better than a hammer, and then crying off and playing the victim when someone says you'd suck at DIY, especially if you ever needed to knock some nails into some wood.
"I do think rails, play, grails, django, revel, wp, all compete with drupal, not because I'm ignorant of what drupal can do, but because it tries to do too much, and does it in the wrong way."
Then that reaffirms the point doesn't it? If you think an underlying framework is directly comparable to a CMS then you really do suffer from a lack of understanding, it's really quite simple. They only compete to the point where you're figuring out what level of flexibility you need - if you need the ultimate level of flexibility even a framework wont cut it, if you can get away with the limitations of a particular framework then that's good enough, if you can restrict yourself further to Drupal then great. If you can restrict further again then Joomla or WP is fine. It's about balancing flexibility against speed of development. But here's the thing, Drupal hits a sweet spot for a lot of people - that's why it's so popular - a lot of people have a scenario where they don't want to build an entire site from scratch using a framework, but they also don't want to be horribly bound in inflexibility by Joomla and WP, hence, they choose Drupal. Again, if you can be bound by that inflexibility for your use cases then that's great - you don't need Drupal, it's not the for the tax at hand, but if you do need that level of flexibility but don't have time to build a full blown CMS from scratch and are somehow bound to PHP then Drupal is the choice for you. There's simply no better option.
"Abstracting all content to a node is a classic AA error IMHO and a source of lots of perf. and usability issues and modules are too interlinked."
So how exactly do you go about creating a content neutral CMS if you're not allowed a single generic underlying point of reference? I wont pretend that I'm not clean on Drupal's poor OO, but once again, that's par for the course in the PHP world where 90% of PHP developers brought up on PHP haven't the first clue about writing good code. The fact that you think that level of abstraction is always unnecessary simply once more shows inexperience with software architecture on your behalf.
Earlier you used the term architecture astronaut, I think you need to accept that there's a flip side to that - the architecture amateur, and that you're currently stuck at that level. I'd be intrigued to hear more about the Java frameworks you speak of, as you're clear experienced in that area judging by your ability to claim Java is full of frameworks that don't get the basics right.
Alternatively you could just admit that maybe the reason you thought Drupal sucks is because you haven't had the breadth of experience to encounter a scenario where the level of flexibility it provides was necessary which is why you've always preferred to just use the much less flexible Wordpress. That would be easier on everyone, and you'd even get to learn from the experience and move on as a bonus.
Look, I used to think things in certain frameworks, especially the Java world were excessively abstract too, but the thing I've learnt is that you really can't judge that unless you've had a good amount of experience with them, unless you understand the reasoning for those things being that way. When you do understand that you begin to realise that things are the way they are for good reason - a lot of abstraction in Java frameworks for example, particularly the IoC/DI related stuff are to support unit testing with mocking frameworks. That greatly improves code quality and greatly improves reusability.
"So, more code is usually the same as worse code if the stuff accomplished is more or less the same."
But that's exactly it isn't it? That's not a given. The Drupal code does substantially more, could be better commented, and could be less densely laid out to improve readability.
The latter two will increase quality of code, whilst also increasing line count, that's why it's a bad measure. Not to mention development methodology will play a bigger part than anything - 1,000 lines hacked together and not tested will be substantially lower quality than 2,000 lines built using thorough quality processes and with substantial testing that have been well.
So it's really not a good measure, unless you can prove that:
- Readability of code is of equal quality - The code was developed using equivalent quality and testing processes - The code is equally well commented - The code performs the same functionality
Only then can you say the lines of code is a factor in code quality, but not one of these is a given with the GGPs post.
The problem is you're assuming that a sane level of abstraction to provide a level of genericness for the task at hand is too much - you're taking a personal assertion that seemingly only you has made in this entire discussion, and then suggesting that this is what the likes of Joel would think of it too.
I'm also not entirely sure what the point of the appeal to authority fallacy you made with "I'm afraid a lot of smart people disagree" was. That's great, that's all very well, but a lot of smart people also are more than comfortable with levels of abstraction equivalent to, or higher than those in Drupal. Or to put it into context, if you struggle with the levels of abstraction in Drupal, you'd have absolutely no hope of working on large scale commercial systems written in Java using one of it's many popular frameworks such as Spring yet these are the sorts of systems are the ones in which many of the most talented developers around are employed to work on - in fact, this is where the highest wages in the industry are whether it's finance or Google, defense/aerospace or IBM, healthcare or Amazon, and it's not because these people are "architecture astronauts" but instead because they're the most competent developers going.
You're talking about over engineering as if this is the problem here, but it's not, Drupal isn't abstracted beyond a reasonable degree, it uses some fairly straightforward abstractions and any programmer worth their salt should be able to cope with them else even things like ASP.NET MVC is going to be out of your reach let alone aforementioned Java frameworks like Spring. Something isn't necessarily over engineered just because it's beyond your personal level of competence and understanding.
In your arrogance you suggest I look at other CMS's as if I haven't - what others am I meant to look at? Joomla? too inflexible, Wordpress? too inflexible and poor security track record. When you've listed other alternatives you've listed things like Rails- what? they're not even direct competitors for Drupal. They're frameworks, they sit alongside Zend, if you want something that low level then Drupal isn't it anyway - the whole reason you choose it is because part of what you need is there already. It may well be that if you're creating a run of the mill website that Joomla and Wordpress will do just fine, and that's great, but again, they sit at a higher level than Drupal.
Drupal sits in this middle ground which is a sweet spot for many developers - it's low level enough that you're not grossly constrained in your ability to do much like you are with Wordpress/Joomla, but it's not so low level that you have to invest many man hours of development time to build from scratch as you do with Zend, or to a lesser extent, CakePHP/Symfony. For some people it's too high level, others it's too low level, but for millions more it's just right.
So you talk about me starting a Drupal holy war for daring to respond to you but the reality is I think you neither understand what use case Drupal satisfies, nor do you understand why people might want better levels of abstraction than the likes of Wordpress offer. This strongly suggests you have very little experience outside extremely fixed type of websites, and that's fine, but it also means your problems with Drupal aren't problems with Drupal, but a misunderstanding of why Drupal is the way it is. As a result you have posted many many posts today on the topic - if there's a holy war it's your jihad against it because given that you seem to prefer Wordpress for your tasks and given that you find Drupal to abstract then the simple fact is you used the wrong tool for the job and have hated it ever since or whatever.
"but they have kept it much simpler and procedural than Drupal, which is incredibly complex when it comes to rendering or even the simplest helper modules. For example:
Drupal date module: 14kloc (YES > 14,000 lines) WP date helpers/calender: circa 1kloc Rails date helper: 970 sloc (doesn't include visible calendar, I'd use jquery-ui for that)"
I'm not sure what you're even trying to say with this, it's as if you think number of lines in a file or set of files is somehow an example of bad code.
Where is the comparison of features? what about code style? which ones are better commented?
Comparison of lines of code is utterly meaningless, literally, completely and utterly meaningless in terms of judging quality unless you can somehow prove alongside that that the code does less, is more poorly laid out, is less secure, and is more poorly commented.
It sounds like your complaints are mostly related to the thing that makes Drupal good - it's rather generic nature.
The problem with a lot of other PHP CMS' like Joomla is that if you want anything other than a basic website with a fairly fixed layout, then, well, you can't.
Drupal's generic nature may make it a bit more awkward to understand sometimes, but with that comes flexibility.
I notice a lot of developers struggle with generic, reusable designs in this manner because the abstract nature of such designs make them a little harder to understand, but for those who do get why generic is good - code reuse, testability and so forth, it's a godsend and allows us to build things we simply couldn't without starting from scratch if we were handed a fixed framework where we're not given the flexibility to do what we need.
Beyond that your complaints seem to be more about poorly written plugins rather than any inherent problem with Drupal, but I think that reflects the nature of the PHP world in general more than anything - what can you expect from a community where the tutorials still often build up SQL queries as strings and avoid parameterised SQL, and where most developers are the "my first dynamic website" types rather than seasoned professionals. You're bound to end up with a security headache.
P.S.: I'm not sure why you talk about the fractal of bad design article in terms of "early PHP", it still applies, that article was only written about a year ago or so I believe.
Because sometimes web sites are used to trigger some form of processing behind the scenes that you don't want the user to have to sit and wait for and that might otherwise result in a time out anyway?
Yet Facebook has recently increase ads in their mobile app and they're consistently completely and utterly irrelevant to me.
So I'd wager that a) they haven't learnt the lesson you suggest, given that they've increase amount of ads, and that they seem to have no relevance, and b) even with the data they do have they're not very good at targeting with it.
For example, I don't post much on Facebook but the times I do it's usually to friends about games. I've never really liked much other than a few gaming pages (such as Minecraft).
So why when I'm a pretty trivially determinable target for game related advertising do I only ever get adverts about Marriott Hotels? Or designer clothes outlets and other such silly things in which I have exactly zero interest?
I'd actually rather Google did have their data, or Amazon for that matter. At least they seem to be able to figure out at least basic interests, and not just spam me with irrelevant crap that just sits in my way and annoys me because it's serving no purpose other than to waste my time and hence make me annoyed at the brand in question. Of course, ideally none of them would have it, but they have to make their money somehow I guess, and it's my choice to use their service.
"Last year he won by almost 60% to 40%, and they had only two running candidates."
Isn't it amazing how if you round one figure up, and one figure down, you can turn a 10% difference in popular vote into a 20% difference and simply pretend the candidates who got next to no votes didn't exist at all.
Between that and pretending the USSR/Cuba are more democratic than the US I don't know how anyone upvoted you, let alone to +5.
I guess it shows how many dumb mods Slashdot really does have now, if you say something populist it's +5, no matter whether true or not.
A bit like the way Chavez won the Venezuelan elections in fact, well, this time at least. Last time he just rigged the vote instead.
To be fair, as PHP CMS' go, Drupal is one of the better ones.
Things like Joomla really are bloated in that they basically dictate how your site must be, and sure you can change that but you have to jump through so many hoops you're probably better off just starting from scratch unless you want anything other than their boiler plate.
Drupal at least was much more modular and generic and so made it easy to pick and choose what you do and don't use, and to decide how you wanted to do things so you could do more, and do them your way. As such I'd say it isn't bloated because you can strip it down to a fairly bare bones setup and it is fairly quick and easy to do, and fairly bare bones to start with even.
But at the end of the day it's still a PHP CMS and when you have Python now (a dynamic language that has at least some solid CS understanding behind it) then there's little point using any of the PHP CMS'. I've always been a best tool for the job type of person, but as time has gone by I've found that the jobs where PHP is the best tool have rapidly begun to dwindle towards extinction, simply put, there always just seems to be a better option now.
Personally though the more large projects I've done with dynamic interpreted languages the more I prefer to stick to compiled. They're great for getting something up and running quickly but when your code base reaches any reasonable size then it's far more useful to have the compiler catching things before execution that can only turn up as uncommon and hard to reproduce bugs with a dynamic language and as your project grows, the more the scope for that increases. This means that for larger projects, compiled languages actually often make development quicker because less time is wasted debugging. Beyond small projects interpreted languages quickly start lose their benefits, though this is in part also because compiled languages like Java, C#, or even C++ seem to have better, more mature toolsets built for them.
But regardless, whether you sit on the interpreted or compiled side of the fence there's little place for PHP now given that it doesn't even have for example, any proper threading support, the sort of thing which is becoming more and more important, and is outright essential to some applications.
"I've never stated that; I'm just challenging your assertion that they aren't."
I can only assume then that you're trying to make this argument without understanding what sort of things VPN logs could possibly show.
Your procedure is complete nonsense and that explains why once again it's an invalid way of doing things. It sounds like a classic attempt to justify something that makes sense by creating a lose scientific method that isn't very scientific to try and give it credence even though contrary to what you say there's absolutely zero evidence they did any of what you say, hence it's mere speculatory nonsense anyway. For example:
"- carefully considered how often a typical developer should need to use VPN, discussed it with respected senior devs and dev managers"
What is a typical developer? One that is working on high security internal systems where everything should be done over VPN, or one of Yahoo's developers who works on some of the open source projects they support and hence just commits to say a public SVN repository?
The rest of what you say is largely arbitrary, there's no real scientific method there, how do you predict the low performers? how is confirmation done in a verifiably objective manner?
The fact you're trying to make up a procedure that is a) flawed and for which there's zero existence of it ever happening shows you're just desperately trying to defend your viewpoint with no basis for doing so once more. Let's just check again what TFA says:
"Mayer consulted Yahoo's VPN logs to see if remote employees were checking in enough.
Mayer discovered they were not â" and her decision was made."
and:
"Kara Swisher first reported the news that Mayer was showing executives Yahoo's VPN logs to justify her work-from-home ban."
She simply said the logs show they didn't sign on enough- something completely arbitrary. As I made a joke in my other post, does this mean that if you sign on 10 times a day and do nothing once signed on you're 10 times as productive as someone who signs on once and works his arse off? It's clear from these statements that your made up faux-scientific methodology is something you've merely pulled out your arse in a further desperate attempt to back your stance. In other words, you're just digging your hole deeper when, if you want to talk about rational, the sensible option would've been to recognise your viewpoint is indefensible with the information available and simply accept that.
Even if for a moment we assume you were right, that they had done all this and had done it in a statistically sound manner, it still doesn't excuse the fact that removing work from home from all employees makes absolutely zero sense when there are bound to be at least some who use it properly and who would be a loss to Yahoo if they were pushed out the company. A blanket ban is a bad decision even if based on valid data, let alone that seems not to be the case.
If you think VPN logs are a valid metric for measuring productivity, and that some kind of citation is needed to show otherwise then there's no point you even discussing this sort of thing.
For a metric to be valid it has to reasonably show something, there's a number of reasons why VPN connections aren't a valid metric (using different access method, don't need to be connected to do some work, even if you are connected it doesn't mean you're doing anything) and so on. Even if you're measuring data transferred across that it tells you nothing - a programmer receiving an e-mail attachment with a new graphic to include for a 5 minute job is more productive than one who has spent a day tracking down a brutally difficult bug but that only required a few byte SVN commit? What metrics do you think those VPN logs can realistically show that will magically give an understanding of productivity?
It's really not rocket science to see that VPN access logs are a fundamentally flawed metric for assessing productivity, I'm not sure why you seem so offended by that rather simple glaring fact beyond the fact you seem desperate to defend Yahoo's actions but don't have any worthwhile argument to do so so are clutching at straws.
Hadn't seen this but just looked it up, it seems EA are denying it now at least. Moore's response was a little arrogant, he basically seemed to say that it was ad revenue generating FUD and that throwing in things like microtransactions was just there to get fans riled up.
If he recognises that microtransactions rile fans up then why the fuck as an exec of EA does he authorise and push for them?
It sounds like they do actually know they're a problem but feel the need to ruin their franchises and fans enjoyment anyway.
"Finally, why does having the **right to vote** matter to you, if you don't actually accept the rule of law?"
This isn't inconsistent with what he's saying. What he's saying is that he feels only he should decide when breaking the law does and doesn't matter, and that only he should decide who does and does not deserve to vote.
In other words, he's a fond supporter of dictatorship propped up by fake democracy, such as in Iran, Russia and so forth.
I'm not sure that believing something that need inherently be unprovable can ever be rational.
Where can one find one of these mystical rational religions?
I think you're confusing flexibility and features.
You've said yourself that it plugs into the admin module et. al. That's WYSIWYG support that Rails doesn't offer because Rails is a framework.
The two aren't comparable, Drupal never tried to be a base underlying framework, things like the Zend Framework already exist in PHP for that purpose.
"I strongly suspect that in reality France Telecom complained about how Skype is sending calls "for free over our domestic network and costing us money" and this is the real reason for the sudden regulatory interest."
Actually no, there is a global push for this.
It's in large part because of all the spam and scam calls that literally millions of people in the West are plagued by from countries like India and is part of a bigger push in general. Globally there are attempts at the ITU to try and get Caller ID passed between every international call successfully so that people like me can opt to completely and utterly block all calls from places like Bangladesh and India whom I have zero interest in every receiving a call from given that they only contact me about people who have never even lived at my address and whom I've never even ever given my number out to at 2am in the morning.
Currently I just block all caller ID unavailable incoming numbers - if you can't provide caller ID, I don't want to talk to you and thankfully the international calls I do receive are from non-backwards nations where caller ID is properly passed across. This solves the problem fine for me and I suspect always will because countries like India have too much of a vested interest in hiding incoming numbers as they've tried to boost their economy based on crap call centres, rather than doing real actual useful things like China, such as manufacturing.
But for others, they may receive calls via VOIP services such as Skype and so forth, they may have some currently "unavailable" numbers they do want to talk to. This is why countries internationally and VOIP providers are being targeted because they too are major sources of these Indian illegal spam and scam operations (illegal because in many of the countries they call such as the UK they legally have to have a valid caller ID number displayed if phoning on behalf of a company). People can't do caller ID whitelisting/blacklisting unless the likes of Skype start making that possible. Again though, like India, I suspect Skype makes a lot of money from these spam/scam operations which is why they will desperately try to fight this sort of thing.
There is a good valid reason for all this and it's not simply nationalism or any such thing.
"3. Don't let yourself assume I don't know what I'm talking about to avoid cognitive dissonance, I think I've clearly demonstrated I know the framework and am not some hobbyist WP advocate, and plenty of drupal or ex-drupal developers agree with me, see [1]"
I wont address this in detail again, merely point out that this is the image you have painted of yourself given that you have made numerous statements that are demonstrative of nothing other than a complete lack of understanding, or, alternatively, simple dishonesty for the sake of trying to make your point.
Note: Having to run to the "but other people think this too, including this guy who has a blog post about it!" argument doesn't reinforce your argument. On the internet you can find a handful of people that will hate or have problems with absolutely anything. For example, this Ben Buckman you keep quoting, I don't really know why you think we should care what he has to say given that I'd wager most Slashdot developers are more experienced than he is. Having a blog doesn't make someone an authority on a topic.
"A content neutral CMS is a *mistake* IMHO (nodes etc) - most CMS systems are tailored to the problem domain and rightly so. "
This is stupid, there's so many use-cases that you couldn't possibly have a CMS tailored to each and every one of them. This has the implication that not only do you simply not understand the purpose of Drupal, but that your understanding of the business world in general is extremely narrow in breadth. You simply do not seem to have the breadth of experience if you think it's possible to have a CMS tailored to every single problem domain, or even anything close to a sizeable minority of them. This is before you factor in the point that even CMSs across different problem domains will have shared fundamentals which means your solution is to have masses of duplicate codebases all reinventing that shared wheel differently. Wouldn't it be nice if instead of that you had say, a base CMS, that implemented the shared functionality without imposing anything much above that on you so that you could build on that for your domain specific CMS? Oh wait, that's exactly what Drupal is for.
"Not doing so leads to bad performance, inflexibility, complex db schemas, and ongoing problems with maintenance."
This is really just 100% FUD, given that Drupal has been implemented in good time on high performance sites that require extreme flexibility and where there have been no maintenance problems it's more a reflection again of your lack of experience or perhaps lack of ability with Drupal. The simple fact such sites, such case studies exist is demonstrative of the fact that if you have encountered these problems, these problems are specific to you or the projects you have inherited and are not inherent in Drupal itself.
You keep talking about the complexity of the database schema, but again, I don't know what you want people to take away from this? as others have pointed out to you it's not exactly a complex schema, if you find it problematic or horrible it once more speaks volumes about your own experience than anything else - that's not an attack on you, just a statement of fact, how else do you expect people to read it? It's not like we can't see the schema for ourselves and are just having to take your word on it, we can see it, and we don't find it problematic.
"If you haven't I would honestly recommend trying one of those in my list and giving it a go to build a simple site just to compare (not another PHP one)."
I don't really tend to work with toy frameworks any more, most stuff I work on needs to use more heavyweight technologies with a strong track record like Java EE, C# w/.NET, and C++. Play is nice for some simple stuff, but it's too immature and has it's deficiencies compared to the heavyweights.
Yes, but ending an armistice unilaterally basically means you have no way of complaining to the UN that other actors keep out of the war.
Unilateral termination of an armistice in this way means you've broken international agreements and means that you've opened the door for other nations, such as the US, who do at least try to respect some international laws to hit you hard because you are officially then an aggressor nation. If there was no unilateral breaking of the armistice then nations like the US will not be able to gather the legal basis for attacking North Korea. Not that this stopped them with Iraq, but still, the point is that generally sticking to the law puts you in a better international light - for example, interference in Libya didn't put Britain in such a bad light as interference in Iraq, this is because the former had legal basis, and the latter didn't.
So yes, North Korea can illegally unilaterally end the armistice, but at that point it's open season on them for whoever wants to get involved. If in some weird alternative reality both South Korea and North Korea said yeah, you know what, let's bilaterally scrap this agreement, then theoretically it should be harder for the likes of the US to get involved because the decision was made bilaterally and so the resultant war should be just between those two nations.
Of course as I say, much of it's really just theory, how a nation looks in practice as a result, and who gets involved in practice is usually a completely different story.
That's a fine workaround in some scenarios (like you say, many batch processing scenarios), but in other cases needing a persistence layer, and an additional full blown service and/including scheduler is rather a brutal workaround for a rather unacceptable deficiency in PHP. In some cases it's not even a solution at all.
I put some numbers against this the other day in the last discussion about North Korea, basically even if the whole entire population of North Korea crossed the border it would still only be about the same population increase China sees naturally despite having a one child policy in 2 years anyway, or a less than 2% increase in population.
This is still non-negligible and would be a big problem of course, but also as I pointed out the whole population wouldn't cross the border. When you factor in disease and famine, people who stay, people who die, people who flee elsewhere (to Japan, South Korea etc.) the actual figure is going to be fairly negligible. As there would be a hefty amount of international aid and support to boot it's likely that the border region of China may even actually see a net benefit - cheap labour and international funding to feed it, build accommodation, provide healthcare and so on.
Just to put this into context, Jordan saw 750,000 Iraqi refugees arrive in the three years between 2003 and 2006 which to them, was a 15% increase in population - drastically higher than anything China could suffer from war in the absolute worst case that would never come close to happening in practice of every single individual in North Korea going there.
I don't think the refugee argument is a legitimate one, I don't think that's China's concern at all.
More likely I think the real reason is simply that China doesn't want reunification - the last thing it wants is a successful Western ally backed by heavy US military presence right on it's doorstep, it prefers to maintain a buffer zone, that buffer zone being North Korea.
If this were to happen the bigger threat to China would likely be the emigration of it's brightest and best across the border into a new unified Korea, rather than emigration of North Koreans post-war.
"If Un started running his mouth stupidly, they'd probably pump him full of drugs until he started talking about rainbows instead. Killing him would be drastic."
Oh so THAT'S how the unicorn story came about!
This was my suspicion too, but the revenue generated by gTLDs is going to literally be in the billions and ICANN is a non-profit.
Does anyone know how ICANN intends to spend these billions of dollars? How do non-profits with excess cash in the US work? Here in the UK if a non-profit or charity ends up with too big a cash pile it can be redistributed to similar charities - does the US have the same sort of thing? Or has ICANN published plans for expenditure of these billions it will gain to spread it's influence and power even more?
It certainly sounds like a cash grab, are ICANN's wages published publicly at all? I'd be intrigued to see if there are hefty raises as a result of gTLDs.
Thankfully only the Apple consumer though.
There's a reason Apple shifted more devices last quarter but failed to grow profit - Samsung upped the price of components to them, shifting the cost of lawsuits onto them.
It's really quite clever on Samsung's behalf, whatever Apple does when it comes to lawsuits they lose. If Samsung wins the case, Apple loses, if Samsung loses the case, they just shift the burden of cost onto the key components Apple has to buy from Samsung.
What's really funny though is that Cook hasn't realised this and has authorised yet more lawsuits, what does he think is going to happen? Samsung aren't just going to reduce their competitiveness and whilst Apple can go to lower quality manufacturers for some components like LG's screens that weren't as good as the Samsung ones, they can't escape Samsung for everything they need, and they can't retain the level of quality and output they've had in the past on the components they do abandon Samsung over.
The only way Apple could make this plan work is if they spent that cash pile creating their own component production facilities, but that would take years and kill profits in the meantime by which time it might already be too late anyway.
The only practical way Apple can turn this situation around then is to stop the lawsuits, and start innovating again.
"Try not thinking of people who find drupal distasteful as automatically stupid, it might help"
But how can one view you any differently when you're out and out saying Drupal sucks and Wordpress is better when whilst the use cases intersect on a venn diagram there are also large areas outside that intersections where one or the other is superior? Your suggestion that Drupal is out and out worse can only be taken as a lack of understanding of where Drupal works, else your comments make no sense. You're basically saying a screwdriver is always better than a hammer, and then crying off and playing the victim when someone says you'd suck at DIY, especially if you ever needed to knock some nails into some wood.
"I do think rails, play, grails, django, revel, wp, all compete with drupal, not because I'm ignorant of what drupal can do, but because it tries to do too much, and does it in the wrong way."
Then that reaffirms the point doesn't it? If you think an underlying framework is directly comparable to a CMS then you really do suffer from a lack of understanding, it's really quite simple. They only compete to the point where you're figuring out what level of flexibility you need - if you need the ultimate level of flexibility even a framework wont cut it, if you can get away with the limitations of a particular framework then that's good enough, if you can restrict yourself further to Drupal then great. If you can restrict further again then Joomla or WP is fine. It's about balancing flexibility against speed of development. But here's the thing, Drupal hits a sweet spot for a lot of people - that's why it's so popular - a lot of people have a scenario where they don't want to build an entire site from scratch using a framework, but they also don't want to be horribly bound in inflexibility by Joomla and WP, hence, they choose Drupal. Again, if you can be bound by that inflexibility for your use cases then that's great - you don't need Drupal, it's not the for the tax at hand, but if you do need that level of flexibility but don't have time to build a full blown CMS from scratch and are somehow bound to PHP then Drupal is the choice for you. There's simply no better option.
"Abstracting all content to a node is a classic AA error IMHO and a source of lots of perf. and usability issues and modules are too interlinked."
So how exactly do you go about creating a content neutral CMS if you're not allowed a single generic underlying point of reference? I wont pretend that I'm not clean on Drupal's poor OO, but once again, that's par for the course in the PHP world where 90% of PHP developers brought up on PHP haven't the first clue about writing good code. The fact that you think that level of abstraction is always unnecessary simply once more shows inexperience with software architecture on your behalf.
Earlier you used the term architecture astronaut, I think you need to accept that there's a flip side to that - the architecture amateur, and that you're currently stuck at that level. I'd be intrigued to hear more about the Java frameworks you speak of, as you're clear experienced in that area judging by your ability to claim Java is full of frameworks that don't get the basics right.
Alternatively you could just admit that maybe the reason you thought Drupal sucks is because you haven't had the breadth of experience to encounter a scenario where the level of flexibility it provides was necessary which is why you've always preferred to just use the much less flexible Wordpress. That would be easier on everyone, and you'd even get to learn from the experience and move on as a bonus.
Look, I used to think things in certain frameworks, especially the Java world were excessively abstract too, but the thing I've learnt is that you really can't judge that unless you've had a good amount of experience with them, unless you understand the reasoning for those things being that way. When you do understand that you begin to realise that things are the way they are for good reason - a lot of abstraction in Java frameworks for example, particularly the IoC/DI related stuff are to support unit testing with mocking frameworks. That greatly improves code quality and greatly improves reusability.
"So, more code is usually the same as worse code if the stuff accomplished is more or less the same."
But that's exactly it isn't it? That's not a given. The Drupal code does substantially more, could be better commented, and could be less densely laid out to improve readability.
The latter two will increase quality of code, whilst also increasing line count, that's why it's a bad measure. Not to mention development methodology will play a bigger part than anything - 1,000 lines hacked together and not tested will be substantially lower quality than 2,000 lines built using thorough quality processes and with substantial testing that have been well.
So it's really not a good measure, unless you can prove that:
- Readability of code is of equal quality
- The code was developed using equivalent quality and testing processes
- The code is equally well commented
- The code performs the same functionality
Only then can you say the lines of code is a factor in code quality, but not one of these is a given with the GGPs post.
The problem is you're assuming that a sane level of abstraction to provide a level of genericness for the task at hand is too much - you're taking a personal assertion that seemingly only you has made in this entire discussion, and then suggesting that this is what the likes of Joel would think of it too.
I'm also not entirely sure what the point of the appeal to authority fallacy you made with "I'm afraid a lot of smart people disagree" was. That's great, that's all very well, but a lot of smart people also are more than comfortable with levels of abstraction equivalent to, or higher than those in Drupal. Or to put it into context, if you struggle with the levels of abstraction in Drupal, you'd have absolutely no hope of working on large scale commercial systems written in Java using one of it's many popular frameworks such as Spring yet these are the sorts of systems are the ones in which many of the most talented developers around are employed to work on - in fact, this is where the highest wages in the industry are whether it's finance or Google, defense/aerospace or IBM, healthcare or Amazon, and it's not because these people are "architecture astronauts" but instead because they're the most competent developers going.
You're talking about over engineering as if this is the problem here, but it's not, Drupal isn't abstracted beyond a reasonable degree, it uses some fairly straightforward abstractions and any programmer worth their salt should be able to cope with them else even things like ASP.NET MVC is going to be out of your reach let alone aforementioned Java frameworks like Spring. Something isn't necessarily over engineered just because it's beyond your personal level of competence and understanding.
In your arrogance you suggest I look at other CMS's as if I haven't - what others am I meant to look at? Joomla? too inflexible, Wordpress? too inflexible and poor security track record. When you've listed other alternatives you've listed things like Rails- what? they're not even direct competitors for Drupal. They're frameworks, they sit alongside Zend, if you want something that low level then Drupal isn't it anyway - the whole reason you choose it is because part of what you need is there already. It may well be that if you're creating a run of the mill website that Joomla and Wordpress will do just fine, and that's great, but again, they sit at a higher level than Drupal.
Drupal sits in this middle ground which is a sweet spot for many developers - it's low level enough that you're not grossly constrained in your ability to do much like you are with Wordpress/Joomla, but it's not so low level that you have to invest many man hours of development time to build from scratch as you do with Zend, or to a lesser extent, CakePHP/Symfony. For some people it's too high level, others it's too low level, but for millions more it's just right.
So you talk about me starting a Drupal holy war for daring to respond to you but the reality is I think you neither understand what use case Drupal satisfies, nor do you understand why people might want better levels of abstraction than the likes of Wordpress offer. This strongly suggests you have very little experience outside extremely fixed type of websites, and that's fine, but it also means your problems with Drupal aren't problems with Drupal, but a misunderstanding of why Drupal is the way it is. As a result you have posted many many posts today on the topic - if there's a holy war it's your jihad against it because given that you seem to prefer Wordpress for your tasks and given that you find Drupal to abstract then the simple fact is you used the wrong tool for the job and have hated it ever since or whatever.
That's great, but again, that's your problem.
Is it proper actual threading support? the closest I've seen to date in PHP have been based on hacks using curls.
"but they have kept it much simpler and procedural than Drupal, which is incredibly complex when it comes to rendering or even the simplest helper modules. For example:
Drupal date module: 14kloc (YES > 14,000 lines)
WP date helpers/calender: circa 1kloc
Rails date helper: 970 sloc (doesn't include visible calendar, I'd use jquery-ui for that)"
I'm not sure what you're even trying to say with this, it's as if you think number of lines in a file or set of files is somehow an example of bad code.
Where is the comparison of features? what about code style? which ones are better commented?
Comparison of lines of code is utterly meaningless, literally, completely and utterly meaningless in terms of judging quality unless you can somehow prove alongside that that the code does less, is more poorly laid out, is less secure, and is more poorly commented.
It sounds like your complaints are mostly related to the thing that makes Drupal good - it's rather generic nature.
The problem with a lot of other PHP CMS' like Joomla is that if you want anything other than a basic website with a fairly fixed layout, then, well, you can't.
Drupal's generic nature may make it a bit more awkward to understand sometimes, but with that comes flexibility.
I notice a lot of developers struggle with generic, reusable designs in this manner because the abstract nature of such designs make them a little harder to understand, but for those who do get why generic is good - code reuse, testability and so forth, it's a godsend and allows us to build things we simply couldn't without starting from scratch if we were handed a fixed framework where we're not given the flexibility to do what we need.
Beyond that your complaints seem to be more about poorly written plugins rather than any inherent problem with Drupal, but I think that reflects the nature of the PHP world in general more than anything - what can you expect from a community where the tutorials still often build up SQL queries as strings and avoid parameterised SQL, and where most developers are the "my first dynamic website" types rather than seasoned professionals. You're bound to end up with a security headache.
P.S.: I'm not sure why you talk about the fractal of bad design article in terms of "early PHP", it still applies, that article was only written about a year ago or so I believe.
Because sometimes web sites are used to trigger some form of processing behind the scenes that you don't want the user to have to sit and wait for and that might otherwise result in a time out anyway?
Yet Facebook has recently increase ads in their mobile app and they're consistently completely and utterly irrelevant to me.
So I'd wager that a) they haven't learnt the lesson you suggest, given that they've increase amount of ads, and that they seem to have no relevance, and b) even with the data they do have they're not very good at targeting with it.
For example, I don't post much on Facebook but the times I do it's usually to friends about games. I've never really liked much other than a few gaming pages (such as Minecraft).
So why when I'm a pretty trivially determinable target for game related advertising do I only ever get adverts about Marriott Hotels? Or designer clothes outlets and other such silly things in which I have exactly zero interest?
I'd actually rather Google did have their data, or Amazon for that matter. At least they seem to be able to figure out at least basic interests, and not just spam me with irrelevant crap that just sits in my way and annoys me because it's serving no purpose other than to waste my time and hence make me annoyed at the brand in question. Of course, ideally none of them would have it, but they have to make their money somehow I guess, and it's my choice to use their service.
"Last year he won by almost 60% to 40%, and they had only two running candidates."
Isn't it amazing how if you round one figure up, and one figure down, you can turn a 10% difference in popular vote into a 20% difference and simply pretend the candidates who got next to no votes didn't exist at all.
Between that and pretending the USSR/Cuba are more democratic than the US I don't know how anyone upvoted you, let alone to +5.
I guess it shows how many dumb mods Slashdot really does have now, if you say something populist it's +5, no matter whether true or not.
A bit like the way Chavez won the Venezuelan elections in fact, well, this time at least. Last time he just rigged the vote instead.
To be fair, as PHP CMS' go, Drupal is one of the better ones.
Things like Joomla really are bloated in that they basically dictate how your site must be, and sure you can change that but you have to jump through so many hoops you're probably better off just starting from scratch unless you want anything other than their boiler plate.
Drupal at least was much more modular and generic and so made it easy to pick and choose what you do and don't use, and to decide how you wanted to do things so you could do more, and do them your way. As such I'd say it isn't bloated because you can strip it down to a fairly bare bones setup and it is fairly quick and easy to do, and fairly bare bones to start with even.
But at the end of the day it's still a PHP CMS and when you have Python now (a dynamic language that has at least some solid CS understanding behind it) then there's little point using any of the PHP CMS'. I've always been a best tool for the job type of person, but as time has gone by I've found that the jobs where PHP is the best tool have rapidly begun to dwindle towards extinction, simply put, there always just seems to be a better option now.
Personally though the more large projects I've done with dynamic interpreted languages the more I prefer to stick to compiled. They're great for getting something up and running quickly but when your code base reaches any reasonable size then it's far more useful to have the compiler catching things before execution that can only turn up as uncommon and hard to reproduce bugs with a dynamic language and as your project grows, the more the scope for that increases. This means that for larger projects, compiled languages actually often make development quicker because less time is wasted debugging. Beyond small projects interpreted languages quickly start lose their benefits, though this is in part also because compiled languages like Java, C#, or even C++ seem to have better, more mature toolsets built for them.
But regardless, whether you sit on the interpreted or compiled side of the fence there's little place for PHP now given that it doesn't even have for example, any proper threading support, the sort of thing which is becoming more and more important, and is outright essential to some applications.
"I've never stated that; I'm just challenging your assertion that they aren't."
I can only assume then that you're trying to make this argument without understanding what sort of things VPN logs could possibly show.
Your procedure is complete nonsense and that explains why once again it's an invalid way of doing things. It sounds like a classic attempt to justify something that makes sense by creating a lose scientific method that isn't very scientific to try and give it credence even though contrary to what you say there's absolutely zero evidence they did any of what you say, hence it's mere speculatory nonsense anyway. For example:
"- carefully considered how often a typical developer should need to use VPN, discussed it with respected senior devs and dev managers"
What is a typical developer? One that is working on high security internal systems where everything should be done over VPN, or one of Yahoo's developers who works on some of the open source projects they support and hence just commits to say a public SVN repository?
The rest of what you say is largely arbitrary, there's no real scientific method there, how do you predict the low performers? how is confirmation done in a verifiably objective manner?
The fact you're trying to make up a procedure that is a) flawed and for which there's zero existence of it ever happening shows you're just desperately trying to defend your viewpoint with no basis for doing so once more. Let's just check again what TFA says:
"Mayer consulted Yahoo's VPN logs to see if remote employees were checking in enough.
Mayer discovered they were not â" and her decision was made."
and:
"Kara Swisher first reported the news that Mayer was showing executives Yahoo's VPN logs to justify her work-from-home ban."
She simply said the logs show they didn't sign on enough- something completely arbitrary. As I made a joke in my other post, does this mean that if you sign on 10 times a day and do nothing once signed on you're 10 times as productive as someone who signs on once and works his arse off? It's clear from these statements that your made up faux-scientific methodology is something you've merely pulled out your arse in a further desperate attempt to back your stance. In other words, you're just digging your hole deeper when, if you want to talk about rational, the sensible option would've been to recognise your viewpoint is indefensible with the information available and simply accept that.
Even if for a moment we assume you were right, that they had done all this and had done it in a statistically sound manner, it still doesn't excuse the fact that removing work from home from all employees makes absolutely zero sense when there are bound to be at least some who use it properly and who would be a loss to Yahoo if they were pushed out the company. A blanket ban is a bad decision even if based on valid data, let alone that seems not to be the case.
Well from the story that came out the other day the game ended up this way precisely because of EA wanting microtransactions etc. in Dead Space 3.
If you think VPN logs are a valid metric for measuring productivity, and that some kind of citation is needed to show otherwise then there's no point you even discussing this sort of thing.
For a metric to be valid it has to reasonably show something, there's a number of reasons why VPN connections aren't a valid metric (using different access method, don't need to be connected to do some work, even if you are connected it doesn't mean you're doing anything) and so on. Even if you're measuring data transferred across that it tells you nothing - a programmer receiving an e-mail attachment with a new graphic to include for a 5 minute job is more productive than one who has spent a day tracking down a brutally difficult bug but that only required a few byte SVN commit? What metrics do you think those VPN logs can realistically show that will magically give an understanding of productivity?
It's really not rocket science to see that VPN access logs are a fundamentally flawed metric for assessing productivity, I'm not sure why you seem so offended by that rather simple glaring fact beyond the fact you seem desperate to defend Yahoo's actions but don't have any worthwhile argument to do so so are clutching at straws.
Hadn't seen this but just looked it up, it seems EA are denying it now at least. Moore's response was a little arrogant, he basically seemed to say that it was ad revenue generating FUD and that throwing in things like microtransactions was just there to get fans riled up.
If he recognises that microtransactions rile fans up then why the fuck as an exec of EA does he authorise and push for them?
It sounds like they do actually know they're a problem but feel the need to ruin their franchises and fans enjoyment anyway.
"Finally, why does having the **right to vote** matter to you, if you don't actually accept the rule of law?"
This isn't inconsistent with what he's saying. What he's saying is that he feels only he should decide when breaking the law does and doesn't matter, and that only he should decide who does and does not deserve to vote.
In other words, he's a fond supporter of dictatorship propped up by fake democracy, such as in Iran, Russia and so forth.
I wouldn't worry too much about him.