Well maybe. I'd argue the problem is the extent to which C allows you to shoot yourself in the foot, and therefore its suitability in security-critical environments like openSSL.
There are 7 billion people in the world. It doesn't take a large percentage of people to look at the code for there to be a large number
I'm sorry, but that's a really silly argument. You can't create a significant number of people doing a particular thing by doing the 'big number times small number = medium size number' trick. We hear that from marketing here at work, and it doesn't make any sense there either.
Choose safer programming languages that don't admit certain kinds of programmer error in the first place.
This. Have you seen the code that the heart bleed bug lay within? This love affair with bare-metal C, with hand-managing memory, etc etc - needs a really hard re-examination. Calling memcpy in a security-critical application? Seriously?
They may well think that - but the point is that they're wrong. Isn't it better to know that, than to continue to labor under the misapprehension that you're doing something useful?
But firmly believing that you absolutely do have the 'flu, will also cure your 'flu. So I'm not completely sure what your point is.
I submit to you that even if there were no god, you would still know that it was wrong to hurt other people. I don't see why we need to imagine the existence of an external arbiter of morality to support that it's a bad idea to hurt each other. And that honesty is probably a good plan too - and that it's not generally conductive of a productive society to steal each other's shit.
It seems to me that these moral rules are pretty damn self-evident. I don't believe in a god of any kind, let alone a Christian one, and yet these moral laws seem obvious.
Be nice. Be nice to other people. Why do we need a supreme being to work this one out?
Ok, fine that's all great. I get that.
But why, then, would this great experimentalist want us to worship him?
Throw in an hour for testing.
And that, ladies and gentleman, is the problem. An hour for testing, and its good, right?
Screen rotates, that's great. Buttons tend to stay in the same place though. It honestly does take me three goes to turn the thing on.
Fair enough. The air is actually larger than the mini, it's just thinner and lighter than the older models. I do agree that the Nexus 7 is a nice form factor, I just wish it was easier to figure out which way up it was so I could turn the thing on without trying four times (somehow I get the wrong corner three times in a row before finding the little button).
If you're using tablets for hours at a time, you've got more patience than me
On both iOS and Android you can use something called Puffin browser. Five minutes using that thing, and you realise why no mobile OS has any interest in supporting Flash. But if you really need Flash, it's there.
... because it's the form factor of a kindle
I'm wondering, if you wanted a 7" tablet, why you didn't buy an iPad mini instead? Seems a bit unfair to criticise the iPad on size, when the mini is available and is pretty much the same size as a Nexus 7. Not to mention a bit cheaper than the full size iPad.
As a counter-datapoint, I took a couple of Nexus 7's home during the Christmas holidays. And the kids didn't like them at all, and instead fought over the one iPad. Now, this might just be because kids are dumb and like the bigger thing just because it's bigger, and also I'm beginning to suspect that they also quite like fighting just for the hell of it. But the Nexus' didn't charge their batteries while in use and plugged in, whereas the iPad did. Pretty annoying.
That's slightly obtuse isn't it? Your boss is not your client in the sense that I mean at all. Surely this is obvious? Your boss is, I would hope, if he or she is charged with managing programmers, going to provide sort sort of translation layer between his or her talent pool and those who would pay for it.
In any case, bugs happen, and programmers are not super-human and cannot foresee every eventuality present in every line of code.
Also: You did earlier on call programmers 'idiots'. I thought that was a little bit broad, didn't you?
You do seem to be stuck in a "everyone else's job is easier than mine" mentality though. Programming is hard simply because large software programs are the most complex machines built anywhere today. And there are many varieties of programming - your example of 'validating user input before inserting it into an SQL database" is of course something that should be part of standard components. And it's no accident that this is exactly the sort of thing that *is* part of standard components.
But your argument seems to be that everything should be just built out of standard components - and that's the end of it. But what about writing embedded software for machine control? Or something that runs inside your TV? Or a new video compression codec? It just doesn't work that way. Any more than every new car that rolls off the production line is built using the same components that a Model T Ford was constructed from.
What about new Operating Systems? or the implementation of newly designed algorithms? Or writing drivers for new hardware components? It seems that you may live in a world of nothing-but-web, and also that you may have had some bad experiences. Bugs in software are a fact of life, simply because software is written by humans and has to perform a task more complex that we have asked of any automatic system than ever before.
A final point is this, it sounds like you're commenting on a scenario in which a 'programmer' is talking directly to a client. A human whose most marketable skill is his or her ability to talk to a computer often isn't the best person to talk to the client. There are a few for whom these skills intersect, but mostly client interaction should be taken care of by someone skilled in that area. Unless you're a one-man-shop (perhaps you are?) try to have someone good at suggesting different approaches to clients in the room instead.
For the most part, for most people, learning new languages in high school is too late. Primary school, perhaps, preschool or Kindergarten for sure. By the time people are in high school, the plasticity that exists in the infant brain regarding language acquisition is all but gone.