"The DPRK is once again being used for fear mongering. Fear mongering is the main reason why nobody has gone to war to end the regime. The US, UK, and everyone else in NATO loves the DPRK because "scare the populace to get what you want without revolt". "
This is nonsense, it's a completely US centric view. No one outside the US inside NATO really gives the slightest fuck about North Korea because North Korea is both completely out of range as a threat and because we're just not in North Korea's gunsights anyway. When it comes to talks about North Korea in contrast to talks about, say, Iran's nuclear programme, Europe is rarely even around the table other than perhaps to just stay in the loop and find out what's going on.
Given that I'm not sure how NK can be used for fear mongering in the UK or NATO (except the US) because there's nothing scary to us about it. I understand why some people in the US might be concerned, because the US is regularly the target of North Korea's rhetoric, but I really can't remember the last time NK threatened the UK and even if it did the threat would be entirely hollow because there's literally nothing it could do to touch us right now even if it wanted to. The same is true for the rest of Europe - NK just isn't on our threat radar over here, so it can't possibly be used for fear mongering, whatever you wish to theorise about that possibility.
NK only has limited military assets, even if it can weaponise a nuke (rather than just blow one up underground after months of preparation) it's just not going to waste one on any European nation no matter what happens so the whole "Western World Fear Mongering (tm)" conspiracy theory that lazily gets pulled out every time someone even loosely related to the Western world complains about a foreign state just makes absolutely no sense outside the US in this particular case.
I assure you, if Europe is worried about anything right now it's Russia, because Russia actually has invaded, annexed, and de-facto annexed the sovereign territory of a number of European nations in recent years (e.g. Georgia, Ukraine, Moldova). If anyone's going to fear monger the UK and other NATO states they're at least going to do it with the one country that's proven itself to be a genuine threat where there is actually something to potentially fear.
North Korea is pretty much entirely a South Korean/American/Japanese/Chinese problem. The rest of us just don't care enough for it to be possible to use it for fear mongering.
"Well, you seem to be using a different definition of meritocracy from everyone else. But OK, let's use your definition."
I'm using the dictionary definition, if you have a problem with that then don't take it up with me, take it up with the whole of the rest of the world who you seem intent on rallying against.
"Well, by your definition then the Linux dev community is not a meritocracy because the asshole element is causing some of the best people to leave, lowering the overall quality of the contributors."
That's probably quite true. I can think of some examples where you're absolutely right, but I'm really not interested in flying off on a tangent and arguing about drama in the open source world. That doesn't mean that merit doesn't count for anything, of course it does, but it's certainly not the whole picture there.
"Your definition seems to be a rather holostic thing where people are promoted on merit as defined by something that optimizes the performance criteria you're interested in. That's OK, an by that definition, then yeah sure you can have a meritocracy. It's just a different definition from the one everyone else seems to use."
I don't know who this everyone else you talk of is, everyone else is typically content with the dictionary definition which defines a meritocracy as the holding of power by those with the most merit to complete the task at hand, and in business that means those most able to fulfil the business needs, such as figuring out how to can the most tuna.
You're on one hand asserting that a meritocracy can only determine merit on one single thing - in your example, technical capability - and yet, you're then judging that meritocracy on things that are outside it's definition of merit. This is entirely nonsensical.
If you feel that niceness to team members is an important merit in your meritocracy then you must also include that in your judgement of merit. Thus someone with high technical skill but beats other members of the team up would end up with low merit.
The problem is not that a meritocracy cannot exist, the problem is that you do not understand what a meritocracy is - you're arguing that a meritocracy can only judge merit on one single trait, and this is patently untrue. You have effectively taken the GP's mistake of suggesting only technical merit is necessary and then expanded it to imply that this is true for all meritocracies and therefore meritocracies cannot exist.
A simple example is imagine I run a tuna canning factory, and all the workers sit such that they can't interfere with each other, but one worker consistently cans double the amount of tuna in a day than any of the others with no reduction in quality or other detriment to the company. I promote him because he's figured out a way to be more efficient than everyone else. That is a meritocracy.
Feel free to argue why you don't like meritocracies, or why you think they're bad (i.e. you may want to argue that they're not fair on people who only have one arm so can never can as much tuna even if those people try way harder and put more hours in), but pretending they cannot exist based on a nonsensical argument following on from an argument you're complaining about yourself doesn't make a whole lot of sense.
"But playful workdays implies lowering expectations and less time working, which is the antithesis of productivity."
This is the number one thing bad managers fail to understand. Time spent working != productivity. It's quite possible to become more productive if you spend less time working and are more refreshed, happier, and more focused.
There is a balance, but the idea that more time at work inherently means more productivity is complete nonsense, there's a point where your returns not only diminish, but go into reverse. Someone working 7 hours a day who loves their job with a passion will typically still get more done than someone who works 10 hours a day and fucking hates it.
If you're in management, please step out, or learn a few things about how to make sure staff are effective and productive, because based on your comment you're part of the productivity problem.
"The ones who marked it troll are probably jealous of his wealth, which is stupid because there're plenty of other reasons to dislike the man."
Actually to be honest, I think it was completely unrelated and it's the same reason a number of my posts have been downmodded in the last 24 hours. A bunch of real actual fascists got angry because I confronted them with facts:
As is usual for fascists, they get a bit upset when confronted with reality and go on their little censorship sprees - I don't think my downmodding in this thread was anything to do with what I said in this thread for what it's worth but the more general down-modding I received for explaining why UKIP fascists are wrong with facts and figures.
The amusing thing is that they think that censoring random people on the internet will actually change the fact they're wrong, they'll keep telling us about how right they are, how important they are, and yet their grand dictator Farage will still keep failing to get elected regardless, though he'll still keep coming back of course because he's the world's sorest loser in the politics game and not a man of his word. Luckily as any UKIP conference will show you these people are nearly all dead, so we wont have to put up with them much longer and no one will give a shit about them and their views when they're 6 foot under. They're also mostly poor underachievers, so maybe they are also jealous of people like Bill Gates too mind you:
Only 23% earn more than combined £40k a year in their household (this threshold is below the national average for a household), 71% are over 50, over half have no qualifications past GCSE level (you finish GCSEs at 16), not even A-Level and a mere 13% have a degree.
Yeah, actually, I think your jealousy theory probably does have some relevance to them after all:)
Of course there is, but we're not even remotely close to it. The countries that are are places like Jordan, where they've had more than 20% of their population enter their country as refugees in the space of a year.
Constant drivel about how the UK is "full" makes no sense when Japan has less usable land mass than us and double our population (they're also wealthier too per head of population).
The problem is folks like you insist on cutting your nose off to spite your face. You hate people who are different to you and you'd rather focus on that even if it means you will be less wealthy, and there will be less healthcare and school places available as a result. You can't accept that if something is wrong in this country that maybe, just maybe, you're the cause, not people who haven't been here long enough to be a problem and who actually for the most part benefit the country.
Immigration isn't remotely at a level where it's unmanageable in the UK and it is a net benefit to our country, those are unavoidable facts. That's why frankly anyone making it out to be a big deal is either ignorant of the facts (in the GPs case, wilfully ignorant because even with the facts he wants to deny it) or has other motives for complaining about immigration - the obvious ones being nationalism, racism, and xenophobia or some combination of.
Again I don't deny we have problems related to immigration, I think we go way too easy on immigrants who commit crimes, and I'd be happy to support instant no-questions deportation for someone convicted of a serious crime like rape or murder, but the general influx of people? It's really not a problem, on the contrary, it's a good thing, but just like the Germans in 1939 people like you are willing to be useful idiots in the hate game spread by populist hate and fear mongers like Farage.
"No, my argument against your unnamed "study" (undoubtedly made by someone who got the result they were looking for and who published their study in a journal refereed by their fellow travelers) is that they had thumbs on the scale the whole way."
So on one hand you're complaining about not being given the study, but on the other you're professing to be able to discredit it anyway? I know UKIPers like you are anti-intellectual, but must you really persist in arguments that don't make sense? There isn't just one study, there are many:
I know it's inconvenient to your foreigner hating viewpoint, but these aren't fly by night vested interests. These are real actual top of the league table universities doing real actual analysis into the causes, impacts, and effects of immigration across the globe. The whole point in their existence is to analyse the facts of migration, whether it's positive or negative.
Once again, your entire argument boils down to "I hate foreigners so everyone that has studied this properly is wrong because I say so.".
Even outside of academia, there are corporations doing similar studies and that want the facts so that they can guide their business:
For them it's not about some political leaning, it's about profit.
Like it or not, you're wrong and you're a typical UKIPer- you simply cannot accept the fact that the real problem is that you are a xenophobic hatemonger so instead you just tell yourself people who have actually put effort into it, rather than people like you that have just decided, are wrong, because that makes you feel uncomfortable and ruins your attempt at blame gaming.
I'd have thought that pointing out that computer science made daddy the richest man in the world would be sufficient to get them interested in science quite frankly.
Chapter 11 is basically a default on your debt. Whether you go bankrupt depends on whether you can convince your creditors that they should give you more time, accept reduced payments, or somehow otherwise let you restructure your debt.
If you can't convince them, that's when bankruptcy hits and that's when the legal battles start over the remains - this is where it starts to get nasty and becomes a gamble for creditors as everyone starts to try and fight to get as much of their investment back as they can, but given the company has reached that point it's unlikely there are assets available for everyone to get their investment back, and so someone loses out.
As you say, this means a judge that goes against you, as a creditor, can really fuck you over. The worst part is typically for employees who may be owed pay, or pensions and so forth - all too often they end up bottom of the pile so the billionaire institutional investors manage to use the courts to recoup their investment, but the workers who put in the effort and didn't get their last few paychecks get screwed.
The reason companies like Facebook will pick Ireland is because it's a tax haven, and because it's where they amass many billions of otherwise unproductive dollars.
If they try and take it somewhere more useful then they'll have to inevitably pay the tax that, if they weren't avoiding (possibly even evading in some cases) it, they'd have had to have paid in the first place.
So they have the following choices
1) They have it sat in an Irish bank not really doing anything, and possibly depreciating in value due to lack of worthwhile investments in country
2) They bring it back to a more useful jurisdiction. By useful I mean one that has a high concentration of skilled tech professionals that can grow their business with new products and so on, or where they can use it to acquire other companies in that jurisdiction. The fact is, there is only so much you can spend in a country with a population of 4.6million before you've hired all the worthwhile tech professionals, and bought and invested in all the worthwhile companies. The combined fortunes of money stockpiled by big tech in Ireland is way more than is available to sensibly spend on so Ireland isn't that "useful" as a place to invest in people or businesses because there's just nowhere near enough to go around. The downside of moving it to a different jurisdiction is they'll lose a sizable proportion of it to tax, so they don't.
3) They spend it on something in Ireland that doesn't need much man power and doesn't involve trying to find a company to invest in or buy up.
This is an obvious case of option 3 - it's something they can build to use some of that stockpiled cash but that doesn't really cause too much of a problem in trying to fight with all the other hundreds of billions of stockpiled money in Ireland to get the resources for it - there's no point building a large high skilled software/product development office there for example because the population of Ireland will never ever be able to sustain the required levels of staff to make it work.
You could push the Irish government to allow for a new immigration scheme to allow them to bring in the necessary talent but then you'd get all the unskilled natives moaning about how they took their jobs even though they were never talented enough or qualified to do those jobs in question in the first place, which is a shame, because that ruins it for everyone because it means such a centre can't be built and the handful of people in the country who are talented and qualified enough don't have that opportunity made available to them.
So you're stuck with things like data centres that require few staff, and call centres that require unskilled staff, but even they're becoming less common in Ireland because places like India can provide unskilled staff far more cheaply.
They may as well use the money somehow, and this is about the best option available to them. It's probably near a village for the simple fact that that local council offered them the best local rates or subsidy to bring the handful of jobs and wealth it creates to their area.
So your argument against a sound scientific study boils down to "I'm right" and a sound scientific study is wrong because I'm going to claim it's below par without any evidence?
Like all UKIPers you're basically just not willing to accept evidence that conflicts with your hate of those from a different background to you. Your hate overrules everything you do.
I'm not claiming immigrants don't cluster together, I'm merely claiming that they're not net leeches on society because that's demonstrably not true, regardless of what you say about such studies. The argument that the people studying have beliefs that align with their results is entirely nonsensical, of course they do, any rational mind when faced with a set of compelling well evidenced results is going to weigh their belief in the direction of that result - you're effectively arguing that unless these people deny their own science then the results aren't credible. That makes no sense.
It doesn't really matter if one Rupert Murdoch balances out a bunch of leeches, the point is that you don't want immigrants, and that means throwing out the beneficial with the non-beneficial. Could we improve the amount that immigrants contribute by weeding out the non-beneficial better? Sure, but it'll become increasingly expensive to carry out that monitoring, measuring and deportation- more so than dealing with our actual native benefits leech problem. You're talking about making a big issue and spending money on something that'll have vastly diminishing returns compared to actual prominent more obvious, but more politically sensitive issues. I'm not denying there aren't some who are problematic, but merely making the point that making that a big deal is nonsensical when there are far larger more expensive problems that we should be prioritising first, like the complete lack of effort put into making sure the wealthiest segment of society - pensioners - have also born the brunt of austerity that everyone else has had to suffer by ditching nonsense such as free TV licenses and free bus passes - they're already the wealthiest demographic, so why do they need this when no one else gets it. They're the real leeches, but they're politically untouchable.
Yep, don't get me wrong I'm not suggesting that devs can code 40 hours a week solidly, I think they'll always need some kind of break and I agree that this sort of environment can deprive them of that.
Ideally devs would just work 30 - 35 hour weeks so that when they do work they're working with fresh minds to write better software in probably less overall time, but unfortunately we're still completely stuck under this archaic Victorian work ethic where too many people view a good worker as one that puts in the hours still, rather than one that churns out the goods to the best quality in the least time.
"You might be amazed how much "code" that is not web-pages still interfaces with people."
I don't need to be amazed, because I'm an architect and have worked on many such projects, but the people they're interfacing with are technically competent enough to know what they need - there's no real formula to always get a front end system right first time, but there are plenty of well defined ways of doing back end systems right first time.
"If libraries and compilers aren't used by at least 100x as many programmers as the ones required to write and maintain them, I'd call "you're doing it wrong" on the libraries and compilers."
The people writing them are themselves end users though, so (if they're half way competent) they don't need an outside subject matter expert because they are one - at least they should be if they're writing the library and compiler in the first place. Besides, many people don't even use compilers directly now, they use them indirectly through an IDE, and it's really the IDE that matters. The idea of a compiler as just being this individual thing that is only used in one way seems naive, compilers are used in a variety of circumstances even beyond this where users don't even realise compilation is occurring. Case in point we're building right now a system for defining workflows in a visual manner that generates code and compiles it to bytecode so that it performs incredibly fast when executed - the only other people even knowing anything about that compiler will be those of us working on it.
"I'll grant that "large back end systems" require a lot of effort, and maintenance, but in this case your "customers" are the programmers that interface to the system - and, in a way, the specifications of those interfaces."
But this doesn't require daily interaction, it's the sort of thing that can be typically well defined up front in a waterfall style way. It's not like a user focused application where you need regular iterative cycles with user feedback to refine it. I've trained people in Agile methods (scrum specifically) so it's not like I'm some old school guy who can't move on, but I do realise that there are vast differences between different projects and some techniques work better than others depending on those circumstances.
"If a coding problem is clearly defined, unchanging, in other words: academic"
This is nonsense and I'd frankly question your experience if you think only academic problems fulfil this criteria. When we build systems for major financial institutions it's typical for them to have these systems in place for 10, 20, even 30 years. They don't need anything other than an agreed interface to access the system from the outset and from there on out we simply build it. Some projects simply necessitate (especially given the sums of money involved) that we put in the effort to get it right, and get it stable from the outset. If we built these systems in an Agile manner we'd simply lose all respect and they'd have no confidence, when they're talking about something with a long life time they don't want it to look like we're winging it and figuring it out as we go. We do however sometimes offer additional services, including building user focused front ends that interface with these systems, and in those cases we do use Agile methods, we do constantly get feedback and so on and so forth, these systems aren't going to stay static like the back end for an extended period, they'll either change, or just be outright replaced on a much shorter cycle because front end technology tends to change much more frequently than back end.
There's a time and place for each and every tool, but you're sounding an awful lot like one of those guys who believes you can and should throw agile at absolutely everything. It's not a silver bullet, in fact, there is no silver bullet. Don't criticise people because you assume they're working on the same sorts of project as you and doing it wrong, there's every chance they're doing it exactly right and that it's merely your assumptions that are wrong.
"Your experience is probably both typical -- of a native -- and misleading. Do you spend much time in places where immigrants tend to cluster together and form fairly closed communities?"
For it to be misleading, you need to show that such places actually exist, but it's really not clear that they do.
All evidence points to immigrants being net contributors, so this idea that there are a sizable number sponging off the state seems to be entirely speculative with no real evidence behind it.
You're effectively using the same tactic the likes of The Daily Mail, The Daily Express, and other far-right propaganda papers use - when someone questions you're theory, you're just creating another non-disprovable myth to argue that you're right. You might as well just say "Benefits tourists exist, because god told me so.", that argument has as much merit to it.
Fact is no such communities really can exist, if nothing else they'd have to head into a multi-cultural city centre and talk to people on a regular basis to be eligible and for and to receive benefits in the first place. They don't just get sent to your address when you arrive in the country, you have to go regularly to a job centre and justify why you need job seekers allowance for example, you have to go and by your food, and clothes, and beds and so forth. If they have kids and they're claiming tax credits then they're going to see other parents at school, speak to teachers, and if they don't, have social services and the police come and talk to them. It's kind of hard for an entire community to stay so utterly secretive that not one of them has ever declared to an outsider whether or not they and those around them typically have jobs and similarly one would wonder why the census, which is legally binding to fill in, never picked this up. On the contrary, all it found was a bunch of deprived largely native-British areas, which led to locations for such wonderous TV as Benefits Street (that was sarcasm if you didn't figure it out).
I'd say if you're doing architectural stuff every day that you're doing it wrong. There's no way you should be pratting around with tools selection on a daily basis, and even your customers are unlikely to need to be pestered daily.
I suspect the problem is you've assumed everyone is working on the type of project you are, you're probably doing some customer facing UI type application like a web page. Not everyone is, some people work on libraries, others on compilers, others on large back end systems. These sorts of projects can very well allow a developer to just concentrate on coding them after the initial architectural description has been devised and a plan made for implementation.
Because then we couldn't have a geeky discussion about the best way to represent two and a half tons, although, I'm convinced that 21/2 is not it. Even 2 + (2^-1) is more readable.
Yep, in fact, with the new European Court of Human Rights ruling that states employers can snoop on private data on a machine used at work I would refuse to ever bring my own device in to a work place now. It's too risky, there's not a chance I'm going to enter into a situation where my employer potentially has the legal right to look through all my personal e-mails, photos, communications and so forth ever.
For me BYOD is a big no no, I wouldn't touch it with a barge pole, the slightest chance that an employer might be allowed access to pillage data from my personal devices is enough to push me away.
Even outside of that with devices like phones, I like a separation between my personal phone and my work phone because I can turn my work phone off out of hours. I don't want to be pestered by work on my personal phone in my time, when I'm off sick, when I'm on holiday, perhaps even after I've quit the company. I made the mistake early in my career of allowing people at work my personal phone number as well as my work one as my work one didn't always get reception. After a shitty call on a day off from a user that shouldn't have even had the number but had obviously been handed it by someone, about a support issue that didn't even have anything to do with me, I demanded that my personal number be removed altogether and I always switched my work phone off the second I left work making it clear if they want me to answer in my own time they need to pay me on-call pay.
Frankly as I see it BYOD is basically just an attempt to merge personal life and work life so that exploitative companies can further entrench themselves in every aspect of your life to make sure that you're always on the clock.
Yes, it's not just about sandboxing with regards to Lua, there are a number of factors, performance is indeed a key issue - right now there's just far too much of a performance hit martialling between Lua's unmanaged responses and our managed caller (part of the performance issue is our fault, the legacy code base is atrocious in the way it passes stuff back and forth with no caching of the scripts either meaning a full parse for every call) but of course, as I say the other issue is that we want to support more than just Lua, and ideally without having to have a plethora of different managed and unmanaged libraries for each language in the server that all require their own interfaces. That's why I was quite keen on the concept of compiling to something common like CLR bytecode, and executing that, but whether it's practical is what I'm still not really sure about.
"I think that very long-term, the bet is still on the WinRT stuff, which should be more palatable now that these apps can actually run in a window rather than fullscreen, and sandbox restrictions have been significantly relaxed. Obviously, the prerequisite here is widespread adoption of Win10+, so it'll take quite a while longer."
Where does this leave Microsoft's own products like Visual Studio and Office etc.? These sorts of applications just don't seem to fit the RT format, and Microsoft's own reluctance to move to them from a more classical desktop format seems to be an admittance in itself that if nothing else RT just isn't a format that is going to work for every desktop application. Maybe it's me that's at fault, but I just can't see how I can build our application decently to suit this "app" format that RT pushes - it's like switching Visual Studio to this "app" format, I just don't see it happening without crippling the product. In fact, Visual Studio hasn't of course even made the switch to ribbons and so presumably there must be at least some recognition at MS that not everything can be a tablet friendly app and that more classic development support is still going to be necessary for the foreseeable future? Unless we regress back to MFC, which does of course seem to be supported at least I don't see how WPF or at least something very much like it can ever go away.
"Also, the problem with the DLR approach is compatibility with the stock implementation. For example, you want to let them run Python scripts? That's great, but it's highly likely that they'll also want to use some popular Python packages at some point"
Yes, I think this is really my biggest concern, but our user's needs aren't that complex. We essentially support decision making processes for the financial sector and typically all they really therefore need is the ability to manipulate strings and numbers and to call various bespoke interfaces- I think therefore it'd be sufficient that whilst we support the languages they're most comfortable with to provide our own.NET standard library. For the most part though I think we can generally move away from them writing code altogether, the people using our system aren't developers, they're typically underwriters and so whilst they have some programming knowledge from technologies like R, SAS and so forth I suspect we can eventually build them a tool that ultimately just generates code from a WYSIWYG process flow editor.
In terms of sandboxing therefore, I think it'd be sufficient to merely restrict the methods they can call to those in our standard library.
All this still bothers me somewhat, I feel like we're reinventing the wheel in many ways and I don't like the fact we'll be pushing our clients down a very bespoke path (although they already are and it doesn't seem to bother them), but I don't really see any other way to defining these sorts of things whilst giving them freedom of language choice, yet restriction of actions within that language and whilst also making sure it all executes on a common platform. One thing is for sure though and that's that we can't simply persist with a setup that allows execution of arbitrary Lua using the standard unmanaged interpreter and all the problems that brings.
"I've heard this many times, but you need to understand one simple thing. Developers aren't just fungible resources to be arbitrarily assigned to projects. They have their own preferences, and the same guy that's doing X won't suddenly start doing Y if X is cut (I've seen people leave over such things before); and even if they do, there is a big difference in productivity between working on something you love, and working for a paycheck, no matter how big."
I don't disagree with the general idea that it'd be awesome if developers could work on only what they wanted, and in fact, if anyone could only do the job they wanted, but it's just not reality. Whilst I sympathise with your arguments I think there are two problems with them in practice - Microsoft does have the requisite people, and Microsoft does pay enough to get developers on board who should be capable of being fairly flexible. My reasoning? Windows RT - Microsoft has been investing in UI development but it's been doing it on things that have failed, rather than things that work.
I've long held the belief that the advantage of commercial software over software developed as say, spare time FOSS projects is that pay actually acts as an incentive to do the things that are necessary to produce good software but are otherwise less interesting. This is in large part why so much FOSS software is fucking atrocious in terms of usability - most programmers have no interest in learning about UX stuff, they just want to write code and they do that. That doesn't work in a commercial environment, you provide money to get people with UX experience in to do that stuff that otherwise wouldn't get done.
So this reiterates my concern with Microsoft now in that they seem to be blowing an awful lot of money to get what are, in large part, spare time projects.
That aside though, does Microsoft really struggle to recruit these people? Is it really so hard to find people to sort out say WPF and keep it uptodate? With Microsoft's pay and benefits I can think of plenty of people that would more than happily do exactly that and wouldn't be competent enough to boot. Is Microsoft really looking to hire people like that? I believe most people would assume that Microsoft would be inundated with people with that sort of skillset, and so have simply never bothered to look to apply.
As I say I don't really have a problem with a move to openness, god only knows Microsoft needed it. My problem is that they seem to have gone from one extreme to the other, when they really need to move back to the center - we had this large stuffy monolithic secretive corporation where everything seemed to be tightly controlled including pushing of standards, and now we've gone to this completely laissez faire company that seems to offer no stability, or assurance that it's customers have come to depend on.
P.S. You may be as good as anyone to ask, I'm intrigued if you can offer any thoughts, we have a setup that allows customers to define process flows, and a server application that executes them. We have our own development environment and as part of defining these flows they can use Lua scripts for logic. This is all fairly legacy stuff, and I've taken on the stuff recently and am beginning to look at replacing it (not least because some of it is just plain awful - the Lua isn't sandboxed in any way, so customers can pretty much call out and do whatever they want to the server with their scripts. Yes. Really.). Moving forward we want to move away from just purely supporting Lua, but we do wish to maintain Lua support. Part of the problem also is performance on the server, I think we're taking quite a hit martialling between the managed and unmanaged Lua libraries because there are a hell of a lot of scripts and variables being passed between managed and unmanaged. I've been pondering the possibility of using.NET, and simply having our development environment compile scripts (in various languages so we can support things like Python, R, and C# as well as Lu
The problem seems to be what Microsoft has lost along the way. Whilst it's great that Microsoft has moved towards openness it also seems to have been accompanied by more freedom for developers at Microsoft dicking around on pet projects rather than focusing on things that actually help their customers.
So for example, it's all well and good that they have R Tools for Visual Studio, but it's an absolute travesty that they have this, and yet no up to date managed framework for building modern Windows desktop applications. It should, in theory, be WPF, and yet WPF's ribbon control, the control that the Windows team is pushing as the new standard for Windows applications seems to have died a death circa Office 2007/2010.
Even projects that are actively maintained though seem to have become a bit of a clusterfuck - ASP.NET MVC has always been excellent, and always been maintained, but somewhere between the release of MVC4 and MVC5 we seem to have gone through about 4 different ways of doing authentication and authorisation, starting with the classic role and membership providers, switching to the WebMatrix libraries, then onto Identity 1.0, and now Identity 2.0 and 2.1. That's all well and good, but what have we gained? Sure we can now do "social" authentication against Facebook etc. but for some god unknown reason all the configuration now looks like it has to be done in code, and the code isn't even consistent between authentication mechanisms. Writing a web application that can be trivially configured between AD and SQL authentication has gone from trivial to a massive pain in the ass.
Microsoft needs to calm the fuck down with all the hipster technologies it's desperate to support, because giving their devs free reign to work on whatever the fuck they want (or at least, that's how it appears) seems to mean that they no longer have anyone working on the things they need to work on.
Not everything can be a web application written using whatever the new cool is, there is still a massive body of industry that needs the stability and confidence that Microsoft used to provide. I'd always hoped that the mess that was Microsoft graphics/games libraries over the year was confined to that area of Microsoft, but rather than that getting better, the problem seems to have spread throughout.
I just wish Microsoft could've managed it's transition towards openness without seemingly fucking up everything that made it successful in the first place. I can very well see why Java has become resurgent despite Oracle's poor stewardship - it's hard to have much confidence in modern Microsoft's development lineup.
If you want respect from the developer community, you need to have a look at what built you one of the largest development communities on the planet, not what some hipster is telling you is the new cool, but that relatively few people use in practice (relative to what have been historically your main technologies). Microsoft needs to take a step back and ask who is the customer, is it the people who have always been the customer, or is it a handful of vocal bloggers telling us to use some shitty poorly designed technology that fuck all of value gets built in in practice?
I'm not referring to R here, I know what R is, and have a lot of respect for it. I'm just fed up of the fact that Microsoft seems to have it's priorities completely wrong now. Openness is good, but not if it means you're producing nothing worthwhile to open up - the internet already provides me with loads of stuff that's open, but shit or of minimal use. Why would I need more?
Because the content providers provide the content and if Netflix has no content it ceases to exist. That's why Netflix is trying so hard to make it's own content.
But to be honest I think I'd quit Netflix if they had reduced content. They're already incredibly expensive compared to Amazon Prime.
It costs me £83.88 a year to have Netflix (soon to be £90) and for that I get to use Netflix on 2 devices at once and only get 1080p HD content. Compare and contrast to Amazon Prime which is cheaper at £79 and I get:
- 4k HD content - Can watch on as many devices as I want - Massive streaming music library - Free guaranteed next day delivery on most their items 7 days a week if I order before 8:15pm - Kindle Lending Library - Unlimited cloud storage
Netflix doesn't really have an edge on content over Amazon's Instant Video, I find them pretty much neck and neck, so the fact Prime is cheaper and gives me way more (even if I don't use all of it) means it comes out way on top in terms of value.
So consider if Netflix starts also dropping even more content just to make a point, do you really think people will keep paying for it when the competition offers a far better deal? Netflix are already dropping content whilst increasing their prices, they can only push so far before consumers will have had enough of it.
If Netflix wasn't already such relatively poor value for money people might have more sympathy to support such a move, but frankly they're greedy and so wouldn't have the necessary customer good will to survive it.
Yeah, to be honest, in my experience, technical debt largely increases as developer competence decreases. A highly competent developer knows how to think through a problem well, and to build a solution that satisfies not just the requirement now, but is flexible enough to cope with potential future changes. A good developer doesn't just ask "How can I solve this problem?" they ask "How can I solve this problem in a way that'll be flexible enough to also solve future problems?". The amateur balks at that, they say, "But I don't have time to do anything other than fix the immediate problem!" and yet the reality is the flexible and future-proof solution is typically no more time consuming to implement than the quick hack to solve the immediate issue.
So in my experience, a good developer just doesn't really leave much technical debt, they have the capability for clear thought as you say, and the knowledge and experience to solve a problem in a way that doesn't leave any (or at least leaves very little) technical debt behind in the first place.
Typically, technical debt is usually a sign of poor architectural experience - many bad programmers scoff at software architecture, but really that's what software architecture does, it teaches you to think clearly through a solution to a problem and to do so in a way that shrinks or eliminates the technical debt that you leave behind.
Learning a language teaches you how to write code, learning maths and algorithms give you a toolbox of solutions, and learning architectural concepts teaches you how to implement without leaving a trail of technical debt. Good programmers know to keep learning, but the best programmers know to keep learning both the soft and the hard skills - it's not about just learning a new language, or technology, or algorithm, you have to learn about things like design patterns, you have to know your respective language paradigm(s) and how to map problems to it, you need to know how to plan, how to think through a problem and produce a solution in a structured and methodical manner, and you need to know how to organise your code.
For every SICP you should be reading a Mythical Man Month, for every K&R's The C Programming Language you should be reading the GOF Design Patterns book, and for every Introduction to Algorithms you should be reading a Software Systems Architecture. Personally I sympathise with those who don't want to or struggle to do this because I find the less technical side of things hard going as I find them less interesting and hence less captivating, but unless you fight your way through it you're only going to be half the developer you could and should be. You can't just learn one side of the equation and expect to be a great developer - there are plenty who think they are, but they're the ones thinking they're rocking through their list of tasks because they're awesome whilst leaving a massive trail of technical debt behind them for everyone else to clear up.
Maybe morale is good and they get to spend their days blogging and going to conferences because they leave QA to the users?
"The DPRK is once again being used for fear mongering. Fear mongering is the main reason why nobody has gone to war to end the regime. The US, UK, and everyone else in NATO loves the DPRK because "scare the populace to get what you want without revolt". "
This is nonsense, it's a completely US centric view. No one outside the US inside NATO really gives the slightest fuck about North Korea because North Korea is both completely out of range as a threat and because we're just not in North Korea's gunsights anyway. When it comes to talks about North Korea in contrast to talks about, say, Iran's nuclear programme, Europe is rarely even around the table other than perhaps to just stay in the loop and find out what's going on.
Given that I'm not sure how NK can be used for fear mongering in the UK or NATO (except the US) because there's nothing scary to us about it. I understand why some people in the US might be concerned, because the US is regularly the target of North Korea's rhetoric, but I really can't remember the last time NK threatened the UK and even if it did the threat would be entirely hollow because there's literally nothing it could do to touch us right now even if it wanted to. The same is true for the rest of Europe - NK just isn't on our threat radar over here, so it can't possibly be used for fear mongering, whatever you wish to theorise about that possibility.
NK only has limited military assets, even if it can weaponise a nuke (rather than just blow one up underground after months of preparation) it's just not going to waste one on any European nation no matter what happens so the whole "Western World Fear Mongering (tm)" conspiracy theory that lazily gets pulled out every time someone even loosely related to the Western world complains about a foreign state just makes absolutely no sense outside the US in this particular case.
I assure you, if Europe is worried about anything right now it's Russia, because Russia actually has invaded, annexed, and de-facto annexed the sovereign territory of a number of European nations in recent years (e.g. Georgia, Ukraine, Moldova). If anyone's going to fear monger the UK and other NATO states they're at least going to do it with the one country that's proven itself to be a genuine threat where there is actually something to potentially fear.
North Korea is pretty much entirely a South Korean/American/Japanese/Chinese problem. The rest of us just don't care enough for it to be possible to use it for fear mongering.
"Well, you seem to be using a different definition of meritocracy from everyone else. But OK, let's use your definition."
I'm using the dictionary definition, if you have a problem with that then don't take it up with me, take it up with the whole of the rest of the world who you seem intent on rallying against.
"Well, by your definition then the Linux dev community is not a meritocracy because the asshole element is causing some of the best people to leave, lowering the overall quality of the contributors."
That's probably quite true. I can think of some examples where you're absolutely right, but I'm really not interested in flying off on a tangent and arguing about drama in the open source world. That doesn't mean that merit doesn't count for anything, of course it does, but it's certainly not the whole picture there.
"Your definition seems to be a rather holostic thing where people are promoted on merit as defined by something that optimizes the performance criteria you're interested in. That's OK, an by that definition, then yeah sure you can have a meritocracy. It's just a different definition from the one everyone else seems to use."
I don't know who this everyone else you talk of is, everyone else is typically content with the dictionary definition which defines a meritocracy as the holding of power by those with the most merit to complete the task at hand, and in business that means those most able to fulfil the business needs, such as figuring out how to can the most tuna.
You're on one hand asserting that a meritocracy can only determine merit on one single thing - in your example, technical capability - and yet, you're then judging that meritocracy on things that are outside it's definition of merit. This is entirely nonsensical.
If you feel that niceness to team members is an important merit in your meritocracy then you must also include that in your judgement of merit. Thus someone with high technical skill but beats other members of the team up would end up with low merit.
The problem is not that a meritocracy cannot exist, the problem is that you do not understand what a meritocracy is - you're arguing that a meritocracy can only judge merit on one single trait, and this is patently untrue. You have effectively taken the GP's mistake of suggesting only technical merit is necessary and then expanded it to imply that this is true for all meritocracies and therefore meritocracies cannot exist.
A simple example is imagine I run a tuna canning factory, and all the workers sit such that they can't interfere with each other, but one worker consistently cans double the amount of tuna in a day than any of the others with no reduction in quality or other detriment to the company. I promote him because he's figured out a way to be more efficient than everyone else. That is a meritocracy.
Feel free to argue why you don't like meritocracies, or why you think they're bad (i.e. you may want to argue that they're not fair on people who only have one arm so can never can as much tuna even if those people try way harder and put more hours in), but pretending they cannot exist based on a nonsensical argument following on from an argument you're complaining about yourself doesn't make a whole lot of sense.
"But playful workdays implies lowering expectations and less time working, which is the antithesis of productivity."
This is the number one thing bad managers fail to understand. Time spent working != productivity. It's quite possible to become more productive if you spend less time working and are more refreshed, happier, and more focused.
There is a balance, but the idea that more time at work inherently means more productivity is complete nonsense, there's a point where your returns not only diminish, but go into reverse. Someone working 7 hours a day who loves their job with a passion will typically still get more done than someone who works 10 hours a day and fucking hates it.
If you're in management, please step out, or learn a few things about how to make sure staff are effective and productive, because based on your comment you're part of the productivity problem.
My point was intended to be more general - that without science there wouldn't be computers for daddy to get so rich in the first place.
"The ones who marked it troll are probably jealous of his wealth, which is stupid because there're plenty of other reasons to dislike the man."
Actually to be honest, I think it was completely unrelated and it's the same reason a number of my posts have been downmodded in the last 24 hours. A bunch of real actual fascists got angry because I confronted them with facts:
http://slashdot.org/comments.p...
As is usual for fascists, they get a bit upset when confronted with reality and go on their little censorship sprees - I don't think my downmodding in this thread was anything to do with what I said in this thread for what it's worth but the more general down-modding I received for explaining why UKIP fascists are wrong with facts and figures.
The amusing thing is that they think that censoring random people on the internet will actually change the fact they're wrong, they'll keep telling us about how right they are, how important they are, and yet their grand dictator Farage will still keep failing to get elected regardless, though he'll still keep coming back of course because he's the world's sorest loser in the politics game and not a man of his word. Luckily as any UKIP conference will show you these people are nearly all dead, so we wont have to put up with them much longer and no one will give a shit about them and their views when they're 6 foot under. They're also mostly poor underachievers, so maybe they are also jealous of people like Bill Gates too mind you:
https://yougov.co.uk/news/2013...
Only 23% earn more than combined £40k a year in their household (this threshold is below the national average for a household), 71% are over 50, over half have no qualifications past GCSE level (you finish GCSEs at 16), not even A-Level and a mere 13% have a degree.
Yeah, actually, I think your jealousy theory probably does have some relevance to them after all :)
Of course there is, but we're not even remotely close to it. The countries that are are places like Jordan, where they've had more than 20% of their population enter their country as refugees in the space of a year.
Constant drivel about how the UK is "full" makes no sense when Japan has less usable land mass than us and double our population (they're also wealthier too per head of population).
The problem is folks like you insist on cutting your nose off to spite your face. You hate people who are different to you and you'd rather focus on that even if it means you will be less wealthy, and there will be less healthcare and school places available as a result. You can't accept that if something is wrong in this country that maybe, just maybe, you're the cause, not people who haven't been here long enough to be a problem and who actually for the most part benefit the country.
Immigration isn't remotely at a level where it's unmanageable in the UK and it is a net benefit to our country, those are unavoidable facts. That's why frankly anyone making it out to be a big deal is either ignorant of the facts (in the GPs case, wilfully ignorant because even with the facts he wants to deny it) or has other motives for complaining about immigration - the obvious ones being nationalism, racism, and xenophobia or some combination of.
Again I don't deny we have problems related to immigration, I think we go way too easy on immigrants who commit crimes, and I'd be happy to support instant no-questions deportation for someone convicted of a serious crime like rape or murder, but the general influx of people? It's really not a problem, on the contrary, it's a good thing, but just like the Germans in 1939 people like you are willing to be useful idiots in the hate game spread by populist hate and fear mongers like Farage.
"No, my argument against your unnamed "study" (undoubtedly made by someone who got the result they were looking for and who published their study in a journal refereed by their fellow travelers) is that they had thumbs on the scale the whole way."
So on one hand you're complaining about not being given the study, but on the other you're professing to be able to discredit it anyway? I know UKIPers like you are anti-intellectual, but must you really persist in arguments that don't make sense? There isn't just one study, there are many:
Oxford University's Migration Analysis Centre:
http://www.migrationobservator...
University College London's Migration Research Centre:
https://www.ucl.ac.uk/news/new...
I know it's inconvenient to your foreigner hating viewpoint, but these aren't fly by night vested interests. These are real actual top of the league table universities doing real actual analysis into the causes, impacts, and effects of immigration across the globe. The whole point in their existence is to analyse the facts of migration, whether it's positive or negative.
Once again, your entire argument boils down to "I hate foreigners so everyone that has studied this properly is wrong because I say so.".
Even outside of academia, there are corporations doing similar studies and that want the facts so that they can guide their business:
https://www.rapidformations.co...
For them it's not about some political leaning, it's about profit.
Like it or not, you're wrong and you're a typical UKIPer- you simply cannot accept the fact that the real problem is that you are a xenophobic hatemonger so instead you just tell yourself people who have actually put effort into it, rather than people like you that have just decided, are wrong, because that makes you feel uncomfortable and ruins your attempt at blame gaming.
I'd have thought that pointing out that computer science made daddy the richest man in the world would be sufficient to get them interested in science quite frankly.
Chapter 11 is basically a default on your debt. Whether you go bankrupt depends on whether you can convince your creditors that they should give you more time, accept reduced payments, or somehow otherwise let you restructure your debt.
If you can't convince them, that's when bankruptcy hits and that's when the legal battles start over the remains - this is where it starts to get nasty and becomes a gamble for creditors as everyone starts to try and fight to get as much of their investment back as they can, but given the company has reached that point it's unlikely there are assets available for everyone to get their investment back, and so someone loses out.
As you say, this means a judge that goes against you, as a creditor, can really fuck you over. The worst part is typically for employees who may be owed pay, or pensions and so forth - all too often they end up bottom of the pile so the billionaire institutional investors manage to use the courts to recoup their investment, but the workers who put in the effort and didn't get their last few paychecks get screwed.
The reason companies like Facebook will pick Ireland is because it's a tax haven, and because it's where they amass many billions of otherwise unproductive dollars.
If they try and take it somewhere more useful then they'll have to inevitably pay the tax that, if they weren't avoiding (possibly even evading in some cases) it, they'd have had to have paid in the first place.
So they have the following choices
1) They have it sat in an Irish bank not really doing anything, and possibly depreciating in value due to lack of worthwhile investments in country
2) They bring it back to a more useful jurisdiction. By useful I mean one that has a high concentration of skilled tech professionals that can grow their business with new products and so on, or where they can use it to acquire other companies in that jurisdiction. The fact is, there is only so much you can spend in a country with a population of 4.6million before you've hired all the worthwhile tech professionals, and bought and invested in all the worthwhile companies. The combined fortunes of money stockpiled by big tech in Ireland is way more than is available to sensibly spend on so Ireland isn't that "useful" as a place to invest in people or businesses because there's just nowhere near enough to go around. The downside of moving it to a different jurisdiction is they'll lose a sizable proportion of it to tax, so they don't.
3) They spend it on something in Ireland that doesn't need much man power and doesn't involve trying to find a company to invest in or buy up.
This is an obvious case of option 3 - it's something they can build to use some of that stockpiled cash but that doesn't really cause too much of a problem in trying to fight with all the other hundreds of billions of stockpiled money in Ireland to get the resources for it - there's no point building a large high skilled software/product development office there for example because the population of Ireland will never ever be able to sustain the required levels of staff to make it work.
You could push the Irish government to allow for a new immigration scheme to allow them to bring in the necessary talent but then you'd get all the unskilled natives moaning about how they took their jobs even though they were never talented enough or qualified to do those jobs in question in the first place, which is a shame, because that ruins it for everyone because it means such a centre can't be built and the handful of people in the country who are talented and qualified enough don't have that opportunity made available to them.
So you're stuck with things like data centres that require few staff, and call centres that require unskilled staff, but even they're becoming less common in Ireland because places like India can provide unskilled staff far more cheaply.
They may as well use the money somehow, and this is about the best option available to them. It's probably near a village for the simple fact that that local council offered them the best local rates or subsidy to bring the handful of jobs and wealth it creates to their area.
So your argument against a sound scientific study boils down to "I'm right" and a sound scientific study is wrong because I'm going to claim it's below par without any evidence?
Like all UKIPers you're basically just not willing to accept evidence that conflicts with your hate of those from a different background to you. Your hate overrules everything you do.
I'm not claiming immigrants don't cluster together, I'm merely claiming that they're not net leeches on society because that's demonstrably not true, regardless of what you say about such studies. The argument that the people studying have beliefs that align with their results is entirely nonsensical, of course they do, any rational mind when faced with a set of compelling well evidenced results is going to weigh their belief in the direction of that result - you're effectively arguing that unless these people deny their own science then the results aren't credible. That makes no sense.
It doesn't really matter if one Rupert Murdoch balances out a bunch of leeches, the point is that you don't want immigrants, and that means throwing out the beneficial with the non-beneficial. Could we improve the amount that immigrants contribute by weeding out the non-beneficial better? Sure, but it'll become increasingly expensive to carry out that monitoring, measuring and deportation- more so than dealing with our actual native benefits leech problem. You're talking about making a big issue and spending money on something that'll have vastly diminishing returns compared to actual prominent more obvious, but more politically sensitive issues. I'm not denying there aren't some who are problematic, but merely making the point that making that a big deal is nonsensical when there are far larger more expensive problems that we should be prioritising first, like the complete lack of effort put into making sure the wealthiest segment of society - pensioners - have also born the brunt of austerity that everyone else has had to suffer by ditching nonsense such as free TV licenses and free bus passes - they're already the wealthiest demographic, so why do they need this when no one else gets it. They're the real leeches, but they're politically untouchable.
Yep, don't get me wrong I'm not suggesting that devs can code 40 hours a week solidly, I think they'll always need some kind of break and I agree that this sort of environment can deprive them of that.
Ideally devs would just work 30 - 35 hour weeks so that when they do work they're working with fresh minds to write better software in probably less overall time, but unfortunately we're still completely stuck under this archaic Victorian work ethic where too many people view a good worker as one that puts in the hours still, rather than one that churns out the goods to the best quality in the least time.
"You might be amazed how much "code" that is not web-pages still interfaces with people."
I don't need to be amazed, because I'm an architect and have worked on many such projects, but the people they're interfacing with are technically competent enough to know what they need - there's no real formula to always get a front end system right first time, but there are plenty of well defined ways of doing back end systems right first time.
"If libraries and compilers aren't used by at least 100x as many programmers as the ones required to write and maintain them, I'd call "you're doing it wrong" on the libraries and compilers."
The people writing them are themselves end users though, so (if they're half way competent) they don't need an outside subject matter expert because they are one - at least they should be if they're writing the library and compiler in the first place. Besides, many people don't even use compilers directly now, they use them indirectly through an IDE, and it's really the IDE that matters. The idea of a compiler as just being this individual thing that is only used in one way seems naive, compilers are used in a variety of circumstances even beyond this where users don't even realise compilation is occurring. Case in point we're building right now a system for defining workflows in a visual manner that generates code and compiles it to bytecode so that it performs incredibly fast when executed - the only other people even knowing anything about that compiler will be those of us working on it.
"I'll grant that "large back end systems" require a lot of effort, and maintenance, but in this case your "customers" are the programmers that interface to the system - and, in a way, the specifications of those interfaces."
But this doesn't require daily interaction, it's the sort of thing that can be typically well defined up front in a waterfall style way. It's not like a user focused application where you need regular iterative cycles with user feedback to refine it. I've trained people in Agile methods (scrum specifically) so it's not like I'm some old school guy who can't move on, but I do realise that there are vast differences between different projects and some techniques work better than others depending on those circumstances.
"If a coding problem is clearly defined, unchanging, in other words: academic"
This is nonsense and I'd frankly question your experience if you think only academic problems fulfil this criteria. When we build systems for major financial institutions it's typical for them to have these systems in place for 10, 20, even 30 years. They don't need anything other than an agreed interface to access the system from the outset and from there on out we simply build it. Some projects simply necessitate (especially given the sums of money involved) that we put in the effort to get it right, and get it stable from the outset. If we built these systems in an Agile manner we'd simply lose all respect and they'd have no confidence, when they're talking about something with a long life time they don't want it to look like we're winging it and figuring it out as we go. We do however sometimes offer additional services, including building user focused front ends that interface with these systems, and in those cases we do use Agile methods, we do constantly get feedback and so on and so forth, these systems aren't going to stay static like the back end for an extended period, they'll either change, or just be outright replaced on a much shorter cycle because front end technology tends to change much more frequently than back end.
There's a time and place for each and every tool, but you're sounding an awful lot like one of those guys who believes you can and should throw agile at absolutely everything. It's not a silver bullet, in fact, there is no silver bullet. Don't criticise people because you assume they're working on the same sorts of project as you and doing it wrong, there's every chance they're doing it exactly right and that it's merely your assumptions that are wrong.
"Your experience is probably both typical -- of a native -- and misleading. Do you spend much time in places where immigrants tend to cluster together and form fairly closed communities?"
For it to be misleading, you need to show that such places actually exist, but it's really not clear that they do.
All evidence points to immigrants being net contributors, so this idea that there are a sizable number sponging off the state seems to be entirely speculative with no real evidence behind it.
You're effectively using the same tactic the likes of The Daily Mail, The Daily Express, and other far-right propaganda papers use - when someone questions you're theory, you're just creating another non-disprovable myth to argue that you're right. You might as well just say "Benefits tourists exist, because god told me so.", that argument has as much merit to it.
Fact is no such communities really can exist, if nothing else they'd have to head into a multi-cultural city centre and talk to people on a regular basis to be eligible and for and to receive benefits in the first place. They don't just get sent to your address when you arrive in the country, you have to go regularly to a job centre and justify why you need job seekers allowance for example, you have to go and by your food, and clothes, and beds and so forth. If they have kids and they're claiming tax credits then they're going to see other parents at school, speak to teachers, and if they don't, have social services and the police come and talk to them. It's kind of hard for an entire community to stay so utterly secretive that not one of them has ever declared to an outsider whether or not they and those around them typically have jobs and similarly one would wonder why the census, which is legally binding to fill in, never picked this up. On the contrary, all it found was a bunch of deprived largely native-British areas, which led to locations for such wonderous TV as Benefits Street (that was sarcasm if you didn't figure it out).
I'd say if you're doing architectural stuff every day that you're doing it wrong. There's no way you should be pratting around with tools selection on a daily basis, and even your customers are unlikely to need to be pestered daily.
I suspect the problem is you've assumed everyone is working on the type of project you are, you're probably doing some customer facing UI type application like a web page. Not everyone is, some people work on libraries, others on compilers, others on large back end systems. These sorts of projects can very well allow a developer to just concentrate on coding them after the initial architectural description has been devised and a plan made for implementation.
Because then we couldn't have a geeky discussion about the best way to represent two and a half tons, although, I'm convinced that 21/2 is not it. Even 2 + (2^-1) is more readable.
Yep, in fact, with the new European Court of Human Rights ruling that states employers can snoop on private data on a machine used at work I would refuse to ever bring my own device in to a work place now. It's too risky, there's not a chance I'm going to enter into a situation where my employer potentially has the legal right to look through all my personal e-mails, photos, communications and so forth ever.
For me BYOD is a big no no, I wouldn't touch it with a barge pole, the slightest chance that an employer might be allowed access to pillage data from my personal devices is enough to push me away.
Even outside of that with devices like phones, I like a separation between my personal phone and my work phone because I can turn my work phone off out of hours. I don't want to be pestered by work on my personal phone in my time, when I'm off sick, when I'm on holiday, perhaps even after I've quit the company. I made the mistake early in my career of allowing people at work my personal phone number as well as my work one as my work one didn't always get reception. After a shitty call on a day off from a user that shouldn't have even had the number but had obviously been handed it by someone, about a support issue that didn't even have anything to do with me, I demanded that my personal number be removed altogether and I always switched my work phone off the second I left work making it clear if they want me to answer in my own time they need to pay me on-call pay.
Frankly as I see it BYOD is basically just an attempt to merge personal life and work life so that exploitative companies can further entrench themselves in every aspect of your life to make sure that you're always on the clock.
Yes, it's not just about sandboxing with regards to Lua, there are a number of factors, performance is indeed a key issue - right now there's just far too much of a performance hit martialling between Lua's unmanaged responses and our managed caller (part of the performance issue is our fault, the legacy code base is atrocious in the way it passes stuff back and forth with no caching of the scripts either meaning a full parse for every call) but of course, as I say the other issue is that we want to support more than just Lua, and ideally without having to have a plethora of different managed and unmanaged libraries for each language in the server that all require their own interfaces. That's why I was quite keen on the concept of compiling to something common like CLR bytecode, and executing that, but whether it's practical is what I'm still not really sure about.
"I think that very long-term, the bet is still on the WinRT stuff, which should be more palatable now that these apps can actually run in a window rather than fullscreen, and sandbox restrictions have been significantly relaxed. Obviously, the prerequisite here is widespread adoption of Win10+, so it'll take quite a while longer."
Where does this leave Microsoft's own products like Visual Studio and Office etc.? These sorts of applications just don't seem to fit the RT format, and Microsoft's own reluctance to move to them from a more classical desktop format seems to be an admittance in itself that if nothing else RT just isn't a format that is going to work for every desktop application. Maybe it's me that's at fault, but I just can't see how I can build our application decently to suit this "app" format that RT pushes - it's like switching Visual Studio to this "app" format, I just don't see it happening without crippling the product. In fact, Visual Studio hasn't of course even made the switch to ribbons and so presumably there must be at least some recognition at MS that not everything can be a tablet friendly app and that more classic development support is still going to be necessary for the foreseeable future? Unless we regress back to MFC, which does of course seem to be supported at least I don't see how WPF or at least something very much like it can ever go away.
"Also, the problem with the DLR approach is compatibility with the stock implementation. For example, you want to let them run Python scripts? That's great, but it's highly likely that they'll also want to use some popular Python packages at some point"
Yes, I think this is really my biggest concern, but our user's needs aren't that complex. We essentially support decision making processes for the financial sector and typically all they really therefore need is the ability to manipulate strings and numbers and to call various bespoke interfaces- I think therefore it'd be sufficient that whilst we support the languages they're most comfortable with to provide our own .NET standard library. For the most part though I think we can generally move away from them writing code altogether, the people using our system aren't developers, they're typically underwriters and so whilst they have some programming knowledge from technologies like R, SAS and so forth I suspect we can eventually build them a tool that ultimately just generates code from a WYSIWYG process flow editor.
In terms of sandboxing therefore, I think it'd be sufficient to merely restrict the methods they can call to those in our standard library.
All this still bothers me somewhat, I feel like we're reinventing the wheel in many ways and I don't like the fact we'll be pushing our clients down a very bespoke path (although they already are and it doesn't seem to bother them), but I don't really see any other way to defining these sorts of things whilst giving them freedom of language choice, yet restriction of actions within that language and whilst also making sure it all executes on a common platform. One thing is for sure though and that's that we can't simply persist with a setup that allows execution of arbitrary Lua using the standard unmanaged interpreter and all the problems that brings.
I appreciate your response!
"I've heard this many times, but you need to understand one simple thing. Developers aren't just fungible resources to be arbitrarily assigned to projects. They have their own preferences, and the same guy that's doing X won't suddenly start doing Y if X is cut (I've seen people leave over such things before); and even if they do, there is a big difference in productivity between working on something you love, and working for a paycheck, no matter how big."
I don't disagree with the general idea that it'd be awesome if developers could work on only what they wanted, and in fact, if anyone could only do the job they wanted, but it's just not reality. Whilst I sympathise with your arguments I think there are two problems with them in practice - Microsoft does have the requisite people, and Microsoft does pay enough to get developers on board who should be capable of being fairly flexible. My reasoning? Windows RT - Microsoft has been investing in UI development but it's been doing it on things that have failed, rather than things that work.
I've long held the belief that the advantage of commercial software over software developed as say, spare time FOSS projects is that pay actually acts as an incentive to do the things that are necessary to produce good software but are otherwise less interesting. This is in large part why so much FOSS software is fucking atrocious in terms of usability - most programmers have no interest in learning about UX stuff, they just want to write code and they do that. That doesn't work in a commercial environment, you provide money to get people with UX experience in to do that stuff that otherwise wouldn't get done.
So this reiterates my concern with Microsoft now in that they seem to be blowing an awful lot of money to get what are, in large part, spare time projects.
That aside though, does Microsoft really struggle to recruit these people? Is it really so hard to find people to sort out say WPF and keep it uptodate? With Microsoft's pay and benefits I can think of plenty of people that would more than happily do exactly that and wouldn't be competent enough to boot. Is Microsoft really looking to hire people like that? I believe most people would assume that Microsoft would be inundated with people with that sort of skillset, and so have simply never bothered to look to apply.
As I say I don't really have a problem with a move to openness, god only knows Microsoft needed it. My problem is that they seem to have gone from one extreme to the other, when they really need to move back to the center - we had this large stuffy monolithic secretive corporation where everything seemed to be tightly controlled including pushing of standards, and now we've gone to this completely laissez faire company that seems to offer no stability, or assurance that it's customers have come to depend on.
P.S. You may be as good as anyone to ask, I'm intrigued if you can offer any thoughts, we have a setup that allows customers to define process flows, and a server application that executes them. We have our own development environment and as part of defining these flows they can use Lua scripts for logic. This is all fairly legacy stuff, and I've taken on the stuff recently and am beginning to look at replacing it (not least because some of it is just plain awful - the Lua isn't sandboxed in any way, so customers can pretty much call out and do whatever they want to the server with their scripts. Yes. Really.). Moving forward we want to move away from just purely supporting Lua, but we do wish to maintain Lua support. Part of the problem also is performance on the server, I think we're taking quite a hit martialling between the managed and unmanaged Lua libraries because there are a hell of a lot of scripts and variables being passed between managed and unmanaged. I've been pondering the possibility of using .NET, and simply having our development environment compile scripts (in various languages so we can support things like Python, R, and C# as well as Lu
The problem seems to be what Microsoft has lost along the way. Whilst it's great that Microsoft has moved towards openness it also seems to have been accompanied by more freedom for developers at Microsoft dicking around on pet projects rather than focusing on things that actually help their customers.
So for example, it's all well and good that they have R Tools for Visual Studio, but it's an absolute travesty that they have this, and yet no up to date managed framework for building modern Windows desktop applications. It should, in theory, be WPF, and yet WPF's ribbon control, the control that the Windows team is pushing as the new standard for Windows applications seems to have died a death circa Office 2007/2010.
Even projects that are actively maintained though seem to have become a bit of a clusterfuck - ASP.NET MVC has always been excellent, and always been maintained, but somewhere between the release of MVC4 and MVC5 we seem to have gone through about 4 different ways of doing authentication and authorisation, starting with the classic role and membership providers, switching to the WebMatrix libraries, then onto Identity 1.0, and now Identity 2.0 and 2.1. That's all well and good, but what have we gained? Sure we can now do "social" authentication against Facebook etc. but for some god unknown reason all the configuration now looks like it has to be done in code, and the code isn't even consistent between authentication mechanisms. Writing a web application that can be trivially configured between AD and SQL authentication has gone from trivial to a massive pain in the ass.
Microsoft needs to calm the fuck down with all the hipster technologies it's desperate to support, because giving their devs free reign to work on whatever the fuck they want (or at least, that's how it appears) seems to mean that they no longer have anyone working on the things they need to work on.
Not everything can be a web application written using whatever the new cool is, there is still a massive body of industry that needs the stability and confidence that Microsoft used to provide. I'd always hoped that the mess that was Microsoft graphics/games libraries over the year was confined to that area of Microsoft, but rather than that getting better, the problem seems to have spread throughout.
I just wish Microsoft could've managed it's transition towards openness without seemingly fucking up everything that made it successful in the first place. I can very well see why Java has become resurgent despite Oracle's poor stewardship - it's hard to have much confidence in modern Microsoft's development lineup.
If you want respect from the developer community, you need to have a look at what built you one of the largest development communities on the planet, not what some hipster is telling you is the new cool, but that relatively few people use in practice (relative to what have been historically your main technologies). Microsoft needs to take a step back and ask who is the customer, is it the people who have always been the customer, or is it a handful of vocal bloggers telling us to use some shitty poorly designed technology that fuck all of value gets built in in practice?
I'm not referring to R here, I know what R is, and have a lot of respect for it. I'm just fed up of the fact that Microsoft seems to have it's priorities completely wrong now. Openness is good, but not if it means you're producing nothing worthwhile to open up - the internet already provides me with loads of stuff that's open, but shit or of minimal use. Why would I need more?
"why can't Netflix stand up to them?"
Because the content providers provide the content and if Netflix has no content it ceases to exist. That's why Netflix is trying so hard to make it's own content.
But to be honest I think I'd quit Netflix if they had reduced content. They're already incredibly expensive compared to Amazon Prime.
It costs me £83.88 a year to have Netflix (soon to be £90) and for that I get to use Netflix on 2 devices at once and only get 1080p HD content. Compare and contrast to Amazon Prime which is cheaper at £79 and I get:
- 4k HD content
- Can watch on as many devices as I want
- Massive streaming music library
- Free guaranteed next day delivery on most their items 7 days a week if I order before 8:15pm
- Kindle Lending Library
- Unlimited cloud storage
Netflix doesn't really have an edge on content over Amazon's Instant Video, I find them pretty much neck and neck, so the fact Prime is cheaper and gives me way more (even if I don't use all of it) means it comes out way on top in terms of value.
So consider if Netflix starts also dropping even more content just to make a point, do you really think people will keep paying for it when the competition offers a far better deal? Netflix are already dropping content whilst increasing their prices, they can only push so far before consumers will have had enough of it.
If Netflix wasn't already such relatively poor value for money people might have more sympathy to support such a move, but frankly they're greedy and so wouldn't have the necessary customer good will to survive it.
Yeah, to be honest, in my experience, technical debt largely increases as developer competence decreases. A highly competent developer knows how to think through a problem well, and to build a solution that satisfies not just the requirement now, but is flexible enough to cope with potential future changes. A good developer doesn't just ask "How can I solve this problem?" they ask "How can I solve this problem in a way that'll be flexible enough to also solve future problems?". The amateur balks at that, they say, "But I don't have time to do anything other than fix the immediate problem!" and yet the reality is the flexible and future-proof solution is typically no more time consuming to implement than the quick hack to solve the immediate issue.
So in my experience, a good developer just doesn't really leave much technical debt, they have the capability for clear thought as you say, and the knowledge and experience to solve a problem in a way that doesn't leave any (or at least leaves very little) technical debt behind in the first place.
Typically, technical debt is usually a sign of poor architectural experience - many bad programmers scoff at software architecture, but really that's what software architecture does, it teaches you to think clearly through a solution to a problem and to do so in a way that shrinks or eliminates the technical debt that you leave behind.
Learning a language teaches you how to write code, learning maths and algorithms give you a toolbox of solutions, and learning architectural concepts teaches you how to implement without leaving a trail of technical debt. Good programmers know to keep learning, but the best programmers know to keep learning both the soft and the hard skills - it's not about just learning a new language, or technology, or algorithm, you have to learn about things like design patterns, you have to know your respective language paradigm(s) and how to map problems to it, you need to know how to plan, how to think through a problem and produce a solution in a structured and methodical manner, and you need to know how to organise your code.
For every SICP you should be reading a Mythical Man Month, for every K&R's The C Programming Language you should be reading the GOF Design Patterns book, and for every Introduction to Algorithms you should be reading a Software Systems Architecture. Personally I sympathise with those who don't want to or struggle to do this because I find the less technical side of things hard going as I find them less interesting and hence less captivating, but unless you fight your way through it you're only going to be half the developer you could and should be. You can't just learn one side of the equation and expect to be a great developer - there are plenty who think they are, but they're the ones thinking they're rocking through their list of tasks because they're awesome whilst leaving a massive trail of technical debt behind them for everyone else to clear up.