The reason is related to bootstrapping. The computer runs its instructions, you have to still have a translation from what ever layer over it to the form the processor handles.
Yes you can use images and graphics that represent functionality and bolt things together. But customisation will still be required and that will probably fall back on using a keyboard. And that same abstraction can be turned into another graphical representation that just happens to be built from a few quickly entered taps on a keyboard such as "map(some_function, some_data)" - that for someone experienced in their chosen language assuming it is expressive enough to have an equivalent is able to be typed in about as much time as it takes to reach for the mouse and start moving to the appropriate button to click or icon to drag.
When you add context sensitive completion in your chosen advanced IDE filling in items is made even quicker.
Then when you need to drop to some lower level to create some new abstraction you are already there.
What's lacking in text based coding packed with powerful abstraction (increasingly so in newer languages to the point I see lots of good programmers reinventing rather than learning the facilities already there - shows there could be too many) is the strategic overview. That is where I think good visualisation tools come in. People scoff as outdated things like Data Flow but it's the kind of thing that gives a good overview of the system but every tool for that or (to me the rubbish) OOD tools fail to give an easy flow.
The failure of linking code to the design adequately is probably that too much code even on large things like GCC are hacked together (I mean coded) rather than as is done in places having a design at the top and the functionality in each region coded. In other words decomposition because in reality no one person can understand the details of each area along with seeing and reading all the lines of code.
What I'm getting at with the design separation from coding is that up to a point just code with the powerful abstractions in text form is more than adequate for the job. It is only when a system passes a boundary of complexity that the graphical overview grows valuable. Even then you can probably represent the assembled system textually more than adequately using another form of abstract, but still textual, representation.
Finally there's a practical difficulty. We still mainly use keyboard and mouse. Personally I think that will always trump touch and visual input and only be surpassed when we start wearing communication caps and think to interact with the computer (I'm bypassing speech input as always being pants).
Like you I too like (liked?) Ubuntu but I'm not going to be moving on from 12.04 due to the disagreeable features being add. Yes they can currently apparently be turned off but I don't want to be messing like that. Question is where to move to.
Seems mad. Google might want to advertise their services so they seek out the most successful on line advertiser which is hmmmm Google? So they place their adds with them self and charge the going rate for advertising your own products which is nothing; meanwhile the users are completely able to go use a different search because unlike the world of OS or proprietary office formats the users aren't locked in?
I don't get it unless members of the EU Commission all happen to be iPad users:-)
In the long run intensive farming destroys the productivity of the soil and the side affects of the run off fertilisers severely harm other neighbouring eco-systems like waterways. So in the short term yes "modern" intensive farming boosts production but long term the balanced more "natural" organic approach is sustainable because it nurtures a healthy biodiversity. Go and read the UN millennium report on biodiversity and human health, perhaps the biggest pulling together of science on the affect of man and farming practises.
My first thought was "if you don't know then don't do it unless you want to die young.". Realistically you have to as others have said treat it as very dangerous unless you know just because you know that circuit boards and potentially components are made with chemicals and metals. Although they do get made into mouse mats so can't (you'd think) be that toxic.
Until you know what you are doing is sounds daft to be trying new things before understanding the essentials. Write a list of the things you already need it for and make sure you can look after it for those.
What will inevitably be the case is confusion. Like now with phones and mobile phones people barely know what their bills mean or if the option they have is the cheapest for them according to all the bit of this and that deals available. Thus will be the case with provision of the internet until some genius comes up with a simplified service where you charge one fee and just use it, how radical would that be (in 3 or 4 years time I mean:-).
I think Nokia brought in a former Microsoftie to run their company because they knew they were going to be licensing WP7. I'm sure they are getting a crazy good deal and plenty of promises from Microsoft. It's probably the biggest gamble that Nokia was willing to make and I think it's only going to prolong their descent into irrelevance.
I think they brought him in with the expectation that all roads would then lead to Microsoft. Rather than the way you put it; but the result is the same. Which is a sign Nokia are desperate.
I disagree with regards Qt; Qt has moved along beautifully to this point where QML really is the best solution to quick production of apps for devices as targets that I've seen and comes as a great SDK. The problem has been taking too long to commit to Maemo/MeeGo, if they'd thrown themselves fully at it two years ago the OS under Qt/Declaritive apps would perhaps be quick enough for the applications to appear as slick as Android and iPhone ones. The hardware and facilities on the N900 are as good an anything in the market but they put the wrong type of screen on it and the OS just isn't quick enough (compared to Android).
I've bought about 12 books for my Kindle so far and 11 of them have been priced at £0.00. So I'm with the suspicion that they are including those in the numbers for what sells the most.
And I'm disappointed with the one book I have paid for; it doesn't really fit well even in landscape so I think I'll be sticking to web pages, pdf and Gutenberg items after that one failed purchase.
I tend to find that as soon as you mention population management people start leaping around and accusing you of talking about genocide. Actually my plan is always to advocate equal (or superior) education of women and equal rights. Wherever that happens the birth rate drops below death rate and you have a suitable planet saving decline in humans.
The genocide fear just shows the small minds of those who squeal about it.
Your best bet is to simply add tests for each thing you fix. Don't bother with wider testing. But do add a new test every time you break something (for the thing you broke) when fixing another bug.
And if you are adding tests make sure they are for run automatically after changes to the code base so that they are always run shortly after changes are submitted (I'm assuming it's under source control, if not get that sorted first).
Such metrics exist. I've seen the evidence in the past with regards to software for automotive control (running the engine). Basically if you have to recall 300000 cars to be fixed at your cost (even just an ECU software upgrade) you have at the very least say 300000 hours of technician time and all the rest. Plus possibly if it was bad a few lawsuits to burn cash defending or paying out on.
I think full life cycle metrics in automotive put bug fixing once a vehicle was out the door at something like 50 - 200 times the cost of finding it early on during design reviews, code reviews and ultimately testing of unit, module and system as different stages.
But in that instance you are talking scale of units in the millions ultimately with many years of life so many millions of operational years in which bugs can bite! Plus the goods are high value. If you are talking low value goods and a few thousand copies well loose it under GPL with suitable disclaimers of suitability of anything is denied:-)
You get the picture, you might not be able to prove what you want because it is a time money equation with varied parameters.
In short you need the metrics for what you are focussed on and gathering those metrics may cost more than it's worth. The collection cost itself is a similar time money equation to consider in advance. Reality for contractor style companies is they don't want to bother testing because they get to fix the things they break in adding features for you or fixing other bugs. Testing is a path to being redundant.
Surely this is just proof of gravity and relativity. The more persons in a queue with full trolleys the slower time moves for them due to the gravitational distortion of the trolleys and shopping mass?
"see the light" - you are making the assumption of it being something that casts light; I suspect Linus Torvalds judges on presented evidence and so far apparently judges the argument hasn't been carried.
Surely he sues them for breach of copyright as they clearly had no right to distribute his copyright work. He can after all show loss directly consequent of the copyright material being distributed.
I agree from a different view that goes like this. Good programmers/software engineers are expensive so companies like to pay cheaper people. To enable use of cheaper people tools and processes are introduced.
One such tool is languages that have buckets of libraries or core tools that the new people merely have to extend or tweak.
Knuth is lucky that most things he needed didn't exist then so using libraries wasn't an option. If everything he needed already existed he'd have picked a different area to work in.
Tomorrows World a UK science show demoed a fold up suitcase car decades ago
http://www.roadraceengineering...
Even then the writing of the requirements will probably best be done in text! With overly ambiguous words automatically rejected by the "compiler".
But I see your point and agree.
The reason is related to bootstrapping. The computer runs its instructions, you have to still have a translation from what ever layer over it to the form the processor handles.
Yes you can use images and graphics that represent functionality and bolt things together. But customisation will still be required and that will probably fall back on using a keyboard. And that same abstraction can be turned into another graphical representation that just happens to be built from a few quickly entered taps on a keyboard such as "map(some_function, some_data)" - that for someone experienced in their chosen language assuming it is expressive enough to have an equivalent is able to be typed in about as much time as it takes to reach for the mouse and start moving to the appropriate button to click or icon to drag.
When you add context sensitive completion in your chosen advanced IDE filling in items is made even quicker.
Then when you need to drop to some lower level to create some new abstraction you are already there.
What's lacking in text based coding packed with powerful abstraction (increasingly so in newer languages to the point I see lots of good programmers reinventing rather than learning the facilities already there - shows there could be too many) is the strategic overview. That is where I think good visualisation tools come in. People scoff as outdated things like Data Flow but it's the kind of thing that gives a good overview of the system but every tool for that or (to me the rubbish) OOD tools fail to give an easy flow.
The failure of linking code to the design adequately is probably that too much code even on large things like GCC are hacked together (I mean coded) rather than as is done in places having a design at the top and the functionality in each region coded. In other words decomposition because in reality no one person can understand the details of each area along with seeing and reading all the lines of code.
What I'm getting at with the design separation from coding is that up to a point just code with the powerful abstractions in text form is more than adequate for the job. It is only when a system passes a boundary of complexity that the graphical overview grows valuable. Even then you can probably represent the assembled system textually more than adequately using another form of abstract, but still textual, representation.
Finally there's a practical difficulty. We still mainly use keyboard and mouse. Personally I think that will always trump touch and visual input and only be surpassed when we start wearing communication caps and think to interact with the computer (I'm bypassing speech input as always being pants).
Like you I too like (liked?) Ubuntu but I'm not going to be moving on from 12.04 due to the disagreeable features being add. Yes they can currently apparently be turned off but I don't want to be messing like that. Question is where to move to.
The Government is not at fault it is made up of people and the people are at fault. Government would probably be much better if we remembered that.
Seems mad. Google might want to advertise their services so they seek out the most successful on line advertiser which is hmmmm Google? So they place their adds with them self and charge the going rate for advertising your own products which is nothing; meanwhile the users are completely able to go use a different search because unlike the world of OS or proprietary office formats the users aren't locked in?
I don't get it unless members of the EU Commission all happen to be iPad users:-)
To add to myself; what's bad for the environment is the other population by humans wiping out balanced eco systems.
That's crap.
In the long run intensive farming destroys the productivity of the soil and the side affects of the run off fertilisers severely harm other neighbouring eco-systems like waterways. So in the short term yes "modern" intensive farming boosts production but long term the balanced more "natural" organic approach is sustainable because it nurtures a healthy biodiversity. Go and read the UN millennium report on biodiversity and human health, perhaps the biggest pulling together of science on the affect of man and farming practises.
OK no evidence for that.
My first thought was "if you don't know then don't do it unless you want to die young.". Realistically you have to as others have said treat it as very dangerous unless you know just because you know that circuit boards and potentially components are made with chemicals and metals. Although they do get made into mouse mats so can't (you'd think) be that toxic.
Until you know what you are doing is sounds daft to be trying new things before understanding the essentials. Write a list of the things you already need it for and make sure you can look after it for those.
They won't die they'll adopt Win P 7 and be saved just like Nokia with their share price whizzing back into the dizzy heights.
Oh hand on Nokia are doomed aren't they?
What will inevitably be the case is confusion. Like now with phones and mobile phones people barely know what their bills mean or if the option they have is the cheapest for them according to all the bit of this and that deals available. Thus will be the case with provision of the internet until some genius comes up with a simplified service where you charge one fee and just use it, how radical would that be (in 3 or 4 years time I mean:-).
I think Nokia brought in a former Microsoftie to run their company because they knew they were going to be licensing WP7. I'm sure they are getting a crazy good deal and plenty of promises from Microsoft. It's probably the biggest gamble that Nokia was willing to make and I think it's only going to prolong their descent into irrelevance.
I think they brought him in with the expectation that all roads would then lead to Microsoft. Rather than the way you put it; but the result is the same. Which is a sign Nokia are desperate.
I disagree with regards Qt; Qt has moved along beautifully to this point where QML really is the best solution to quick production of apps for devices as targets that I've seen and comes as a great SDK. The problem has been taking too long to commit to Maemo/MeeGo, if they'd thrown themselves fully at it two years ago the OS under Qt/Declaritive apps would perhaps be quick enough for the applications to appear as slick as Android and iPhone ones. The hardware and facilities on the N900 are as good an anything in the market but they put the wrong type of screen on it and the OS just isn't quick enough (compared to Android).
I've bought about 12 books for my Kindle so far and 11 of them have been priced at £0.00. So I'm with the suspicion that they are including those in the numbers for what sells the most.
And I'm disappointed with the one book I have paid for; it doesn't really fit well even in landscape so I think I'll be sticking to web pages, pdf and Gutenberg items after that one failed purchase.
I tend to find that as soon as you mention population management people start leaping around and accusing you of talking about genocide. Actually my plan is always to advocate equal (or superior) education of women and equal rights. Wherever that happens the birth rate drops below death rate and you have a suitable planet saving decline in humans.
The genocide fear just shows the small minds of those who squeal about it.
Your best bet is to simply add tests for each thing you fix. Don't bother with wider testing. But do add a new test every time you break something (for the thing you broke) when fixing another bug.
And if you are adding tests make sure they are for run automatically after changes to the code base so that they are always run shortly after changes are submitted (I'm assuming it's under source control, if not get that sorted first).
Such metrics exist. I've seen the evidence in the past with regards to software for automotive control (running the engine). Basically if you have to recall 300000 cars to be fixed at your cost (even just an ECU software upgrade) you have at the very least say 300000 hours of technician time and all the rest. Plus possibly if it was bad a few lawsuits to burn cash defending or paying out on.
I think full life cycle metrics in automotive put bug fixing once a vehicle was out the door at something like 50 - 200 times the cost of finding it early on during design reviews, code reviews and ultimately testing of unit, module and system as different stages.
But in that instance you are talking scale of units in the millions ultimately with many years of life so many millions of operational years in which bugs can bite! Plus the goods are high value. If you are talking low value goods and a few thousand copies well loose it under GPL with suitable disclaimers of suitability of anything is denied:-)
You get the picture, you might not be able to prove what you want because it is a time money equation with varied parameters.
In short you need the metrics for what you are focussed on and gathering those metrics may cost more than it's worth. The collection cost itself is a similar time money equation to consider in advance. Reality for contractor style companies is they don't want to bother testing because they get to fix the things they break in adding features for you or fixing other bugs. Testing is a path to being redundant.
Surely this is just proof of gravity and relativity. The more persons in a queue with full trolleys the slower time moves for them due to the gravitational distortion of the trolleys and shopping mass?
"see the light" - you are making the assumption of it being something that casts light; I suspect Linus Torvalds judges on presented evidence and so far apparently judges the argument hasn't been carried.
Surely he sues them for breach of copyright as they clearly had no right to distribute his copyright work. He can after all show loss directly consequent of the copyright material being distributed.
But both should exist if the lines that mark interfaces are drawn in the right place.
Faster hardware tends to be the source of the problem. It makes people lazy because they don't have to attend to the details.
So it's about the worst cure that could be taken.
You presume that a month or twenty down the line the original author can still maintain it. Most crappy code that doesn't holds as true.
I agree from a different view that goes like this. Good programmers/software engineers are expensive so companies like to pay cheaper people. To enable use of cheaper people tools and processes are introduced.
One such tool is languages that have buckets of libraries or core tools that the new people merely have to extend or tweak.
Knuth is lucky that most things he needed didn't exist then so using libraries wasn't an option. If everything he needed already existed he'd have picked a different area to work in.