Textbook software engineering is about identifying what the client needs, and delivering it on time and on budget. What is sad is that we still fail in that objective a good portion of the time.
Ironically I don't think that it is true at all that OSS development is faster or more efficient. Basically coding is coding, so I don't see anything explicit to OSS that will make us faster directly.
On a large project however we might be more carefull with our coding, as many other developers will see the code. This may initially be actually slower. However, more care and less defects has a longer term benefit in not needing so much bug fixing. However, I don't see that benefit unless the project is at a size that other developers will see your code.
It is certainly less efficient in terms of manpower, a business can at least concentrate their resources, have people work on a project full time. I can't imagine employing a copy of the OSS approach - ie distributing specifications around the world over the net, and paying people an hourly rate for any work.
The thing is that in OSS you don't pay for time, so you don't have to worry about efficiency. To be clear - this is not a bad thing at all. If you look at many creatures in nature they do not nessasarily optimise efficiency. If what really matters is having excellent security and stability with few defects, then perhaps OSS shows the way.
But OSS is not a rapid applications development approach - and nor does it try to be. Thats not to say that the principles of OSS cannot be applied to commercial development, systems like XP use pair programming for peer review. They also employ unit testing as a stand in for many eyes. In fact test harnesses are great on OSS projects as well.
OSS development is a good idea not because of its efficiency and speed, but because of its quality and freedom.
If you are a company which supports Linux, develops software for use on Linux, or uses Linux in some way, simply offer a discount of - say 25% - for all services related to migrating SCO users from SCO products to Linux.
Next thing to do is write press releases to the local papers telling them about it. You should point out that SCO customers face an uncertain future, since SCO will proably loose its fight with IBM, and will then be taken to court for its actions. You can also describe how SCO's new path is not developing new and better software for you, but simply based on taking advantage of its "IP".
Obviously there are many potential Linux converts out there, and it would be a good idea for Linux companies to compete for those users by offering them discounts to move away from SCO first.
I also believe that companies should cease supporting SCO versions of software - but at the same time offer existing clients a migration path to a more solid platform - such as Linux.
I know the SCO's lack of revenue is hardly a worry to them now, however it will make great news, and possibly make their stock price reflect reality.
After watching a recent program on the Apollo Project, I believe that the achievement of landing men on the moon was far greater than simply returning some rock samples. It was a statement about ourselves - that we can rise above our petty issues, and think about doing something that is historical.
Some argue we should not shoot for Mars until we solve our problems here. The thing is we will never solve the problems of hunger, disease and poverty. If we wait until we have justice and world peace for all we will be waiting a long time.
When sojourner landed on mars it was great. It inspired me - that perhaps doing great things had not ended with Apollo. What the world needs is something positive, another grand journey. The US doesn't need to invade countries to show how powerfull it is - it could instead go to Mars - and perhaps continue its cooperation with other agencies.
This mars mission is simply another step towards going to mars to stay and live. Getting off the earth is the first step to becoming a spacefaring civilization.
It has been a diffcult time recently, with various recent Linux issues creating problems for us in the NZOSS from a public relations point of view. Our concern when reporting the issue we had with Software Images to the NZ Herald was that the problem of exclusivity agreements could become widespread, and that this would restrict our ability to compete.
However, as a result of this story Software Images has received threats and abusive email to such an extent that they will probably report this to the NZ Police. And to be clear, I support this 100%. I and the society have been professional and polite in our dealings with Software Images, and the same is true in return.
It is simply not acceptable for people to be making threats to companies and their employees. I am deeply upset that people would take it on themselves to write abusive and threatening emails, and abuse people by phone.
Its not a good look for open source in New Zealand, but more importantly its JUST WRONG! These abusive emails were not appreciated by the NZOSS.
To be clear I am not refering to people who communicate respectfully and intelligently about the issues. Being passionate about open source is good. However, the abuse I am talking about stepped way over the line.
A few years ago I found out that a manager was viewing and copying pornographic pictures to his hard drive. He actually asked me whether files were "really" deleted when he deletes them from Windows explorer. Little did he know that all his web surfing was logged anyway, so it really didn't matter what he did on his local drive, we still had evidence of his habit.
I was actually concerned at the time that his habit was actually impacting on the business, as at the time we had only a single dial in line, and his web surfing was slowing down email and other company communications.
I cut off his access to the web, and when he asked for reinstatement I refused. This pissed him off a bit, but he could hardly take it higher without me revealing to higher management *why* had taken the action.
In the case of Child Porn I think that it should be taken up with senior management first. Senior management will probably then fire their ass and report it to the police themselves. This way they get to look morally rightous, and get good PR.
If you tell the Police without first telling management you havn't given management the opportunity to deal with the internal issues. If management attempt to cover it up and continue employment of the offender then perhaps you have justification to go to the Police directly.
To start with, the guy dosn't live in the good ole US of A, he lives in New Zealand - a country with an Air Force without Strike Aircraft. To me this is dumb beyond words after the lessons in war about air superiority.
Yes I think he will need help. Fortunatly I have experience with writing software for interfaces between GPS and PC's, and aircraft guidance, and intelligent agents. I will be more than happy to provide the expertise - but not for $5000.
What Americans seem to fail to understand is that we in New Zealand are not at all concerned about Terrorists attacking us - we are concerned about America. The explicit declaration it will attack anyone who threatens it militarily or economically puts every country in the world on edge.
Last year it was Afghanistan, this year it was Iraq, next year it will be Syria or North Korea. If you do not obey the US you will be next is the message.
Perhaps the guy lives outside the United States in a small country with an "Air Force" with no strike aircraft - thats right - NO STRIKE AIRCRAFT.
Two or three hundred of these things hidden around the country loaded up with intelligent agent software and a reasonable range would provide an effective self defence mechanism that is reasonably cheap to maintain.
Its all very well to call a guy nuts when you are protected by a few thousand ICBM's, however we have exactly zip in terms of air defence, and to be quite frank a cruise missile program would be money well spent compared to 16 or so obselete F16's.
I think the expectations meany grads had of good salaries straight into their first job was unrealistic. There is nothing wrong with a bit of humility to temper those expectations:)
In a job interview thejob interviewer will have exactly two things to judge you on. Hw will have your C.V and you.
Your C.V will probably have something along the lines of previous employment, qualifications etc. If you are in the interview the interviewer already knows everything from your C.V anyway, which leaves.... you.
When it comes down to it the person who gets hired isn't the person who is technically the best on paper, but the one who relates best to the interviewer.
Some pointers:
1. Be happy. Being a Grump is a one way ticket out the door.
2. Don't complain about previous employer. Same effect as #1.
3. Answer questions with reasonable length. Nothing worse than trying to force information out of people,
4. Don't argue with the Interviewer.
Finally - tests are usually fairly simple because employers use them to weed out the incompetents. If a test seems amazingly easy doesn't mean there is anything 'hidden'.
When you contract someone to do something - whether its writing software or taking a photograph, you own the copyright. The only exception is when you sign a contract giving the copyright to the contractor.
So in effect it is up to the client who contracts the work to decide on the license, as they are the owner, not the contractor. This does not depend on any "Art WantsTo Be Free" argument - it is simply a fact of law.
The project you are working on is doomed. What you are in effect saying is that the people in charge of planning this project stuffed up, the sales people promised a unrealistic timeframe, and now - as usual - the developers are on a death march which will very probably - say 95% certain or better - result in total failure.
I'm assuming we are talking about a late project because if we are talking about working 15 hour days just because the boss wants to screw more work out of you all for the same money they are either in a very seriously bad financial situation or the boss is just plain greedy bastard (or the stockholder).
If you read all the bibles on project management of software you will find the one thing that you can't do is simply increase hours worked. My policy as a software development manager is to only allow 8 hour days. I actually told one employee to stop working 10-12 hour days, since there was no need to. In this case we had to keep repairing his work because he wasn't on the ball.
There was only one occation where overtime was warrented, and that was only for a couple of weeks. Bottom line is that regardless of the quality of work issues, this is simple abuse. We are not living in the industrial revolution, people shouldn't be expected to sacrifice their social life and their relationships with their family to their job.
First of all many of the development team work for Sun, who I suspect are paying the developers very well. Sun will be paying the team through the proceeds from the sale of StarOffice, although I think they could package OpenOffice and sell distributions and support much like Red Hat. The model now is for companies to cooperate to fund development of mainstream apps as open source, rather than pay ongoing license fees for the same type of software as closed source.
The second point is that there is no god given right for software developers to be able to make great gobs of money. Its a bit like a farmer complaining that people can grow their own food. Open source is here to stay - its part of the software ecosystem - deal with it.
It is perfectly possible to install and use mainstream Linux distributions without being a geek. OpenOffice and StarOffice provide very easy to use installations. Perhaps Linux used to be for geeks only, however it is now a capable mainstream desktop OS.
Regarding training, you will probably have to do an equal amount of training moving to WindowsXP, since it looks so radically different from previous versions, and everything has moved around. Yes once again Microsoft expect everyone to relearn everything just because of a new release.
By the way, who here thinks the new XP default wallpaper looks like the TellyTubbies hill? I think they are getting their GUI ideas from games for three year olds. Perhaps this is a result of trying to appeal to the lowest common denominator?
Bottom line is that you can get a Linux and OpenOffice to replace a Windows and Office system. The main issue will be porting any custom built software or accounting systems.
If you wish I can offer my services as a Linux Migration Manager.
Also, the.NET toolkit looks very competent and building and deploying.asp's is quite simple as compared to deploying a java solution.
You must be kidding. NetBeans and Tomcat allow you to develop and deploy with amazing ease. Besides which, have you ever seen that junk programming that goes into ASP? I'm not saying you can't write nice ASP's, but I have yet to see a system that separates business logic from the ASP. One system had the login logic repeated on every page
Okay so which of the principles below does Open Source not conform to? The issue here is that the Open Source movement saw that the term "free software" was damaging the cause, and decided on a new name that isn't scary as hell to people who actually make their living writing software.
The fact is that software isn't free. Just because Richard gives his software away it doesn't mean it didn't cost *him* anything. It cost him his time.
- The freedom to run the program, for any purpose (freedom 0).
- The freedom to study how the program works, and adapt it to your needs (freedom 1).
- Access to the source code is a precondition for this. The freedom to redistribute copies so you can help your neighbor (freedom 2).
- The freedom to improve the program, and release your improvements to the public, so that the whole community benefits. (freedom 3). Access to the source code is a precondition for this.
Humans have short lives. Long Term to us is twenty or thirty years. Our own evolution is crawling along, virtually undetectable for thousands of years.
In comparision machines - both computers and robotics - are charging ahead, doubling their abilities every two years. There have been some stumbling blocks - such as the top down approach to AI, however we are slowly starting to create systems that are very lifelike in behaviour.
However, even at what we might consider a slow and bumbling pace, it is still many thosands of times faster than human evolution. At the current rate of progress we can expect machines capable of human intelligence within the next 50 years.
The problem is that they won't stop at just human intelligence. They will just keep going - getting more intelligent, more capable.
Many seem to think that a 'terminator' senerio is very far away. Well what do you think Afghanistan was? Weapons are capable of removing humans from conflict now. It is only a matter of time before warfare will be the domain of machines.
From fighter aircraft to ships and submarinbes, all could have the human factor removed - not tommorow when some new technology is developed - but now. The fact is that machines - the dumb type we all use - already makes defacto decisions for many of us.
For example, when you get a loan from the bank, they type all you credit info into their computer, and the computer makes the decision. Now you might like to say that the computer only makes a recommendation, or is a 'decision support' tool, however if you are a loan manager, and the computer says "don't give Mr Smith the loan", and you do anyway, what happens when the loan goes bad, and your boss finds out you ignored the computer?
Once Intelligent Machines are built they will be compulsory for big business, primarily because without them you quickly become a small business because the opposition will be smarter. No robots need enter into it. Some Humans will rubber stamp decisions made by machines, and the lower level employees will carry out the decisions. Deviate from the decision or question it, and the HR department - which will probably BE a machine - will let you know of your error with a pink slip.
Intelligent machines won't need armies - but our armies will need them.
This is all simply evolutionary. We cannot just decide not to develop intelligent machines because that will put us at a massive disadvantage to those who do. They will not need to fight for control - we have already given control to the machines.
Just in case you are wondering : I'm all for this. Machines controlling humans couldn't do any worse than humans controlling humans:-)
In my early experience in programming I found there was an advantage to up front planning. It seemed like the more planning you did the better the project would do. So there was a tendancy to do more and more up front planning, getting into more minute detail.
However although we spent more and more time planning the payoff in terms of being able to predict schedule and budget diminished. Its classic diminishing return. But why?
Planning a project is like forcasting the weather. You can plan a small project in minute detail for a short time (like being able to predict the weather a day in advance), and you can make vauge predictions for some time out (ie you can know the probability of rain based on the month - statistically on previous years), however you can't plan a large project in minute detail.
The reason is that if you get any of the initial decisions wrong, and there is a minor deviation from the plan early on, this will be reinforced to cause more changes, and this will snowball to change many parts of the final system.
An analogy is trying to get somewhere with a set of instructions. If the instructions are faulty at the very start of the list it doesn't matter that the rest of the instructions are correct - you still get lost. Detailed plans are a little like a set of precise instructions. There is no assurance that all of the instructions are fault free. In fact there is a good chance they will be faulty as they will almost always be written by someone who hasn't been to the destination (ie hasn't written the same program before).
It is better to be an explorer. Your "plan" should be like a map. Only you start out not knowing the terrain - only the general direction of your destination. You map your first days travel and set off. Every day fill in some detail on the map and plan the next days walk - always keeping in mind where you final destination is.
Programming is a journey - not through any physical space, but through the endless possibilies of the programming solution space. This space is filled with broken, useless programs. Its your job to navigate your way to the best solution.
PS : I know this hasn't been very practical, however I have previously posted some more concrete real life advice under this article.
The sign of a *professional* programmer is that they don't care about programming languages. The rule of thumb is to use whatever tool gets the job done the fastest, with the best quality.
Personally I pick up new languages like I pick up colds:-) I use Delphi for Windows GUI apps, Java for Web Apps (serlvets), and Kylix for Linux GUI apps - which can be the same code base as the Delphi Apps.
Delphi, Java, VB, C++, C, Fortran, Kylix - its all the same stuff. Except perhaps Prolog - thats one language I never had time
The ignorance is yours, because it is Patents and Trademarks which must be enforced, not Copyright. If you write and publish a book, and some individuals copy the book without your permission, you do not have to sue them in order to retain your rightfull copyright in future.
In this case Sony seems to have totally lost the plot. The idea that a large number of Aibo's are purchased for hacking means that they are actually harming their customers with this action, even if they are legally correct (which I actually doubt).
Perhaps in future we should suggest to robotics companies that they apply for a mark like the OSI Mark, which indicates they are happy for people to play with the hardware. This way robotics people will know up front that they will have no legal worries.
This could be backed up with release of the software specifications, and even developers kits. I think Lego has the right idea. I purchased Mindstorms myself. I will now never consider purchasing an Aibo.
I filled my form in with Jedi as the religion in the NZ Election. I havn't seen the results however. I havn't been arrested and put in prision either.
I had a rather in depth talk with the lady who took the papers. Apparently there was a change of procedure this year, in that they were less strict about the census answers.
Previous years they apparently checked the papers, and came back to people who had filled in the forms incorrectly. While this is still done, I think they are a little less determined, and it is mainly aimed at correcting geniune mistakes.
I can't believe the US would even consider using Nukes. Let me see if I can put this in perspective:
Afghanistan is right next to Pakistan and India, who have just both got themselves some shiny new Nukes themselves. Currently these two countries are having a dispute over some land - as countries do. In Pakistan there is currently significant support for the Taleban, which could destabalize the Government. There is a possibility that events in Pakistan could result in control of their Nukes to become uncertain.
If the US start using Nukes this could set a precident that using them is okay in a War for 'tactical' reasons, thus giving Pakistan the 'moral' right to use them in the disputed land between Pakistan and India. From there its just a small step to all out Nuclear confrontations.
To complete the analogy we should also look at the relitive size of the participants. The terrorists are using the methods they have because they don't have the big mean sticks that the US does.
So in relitive terms its like a small boy has kicked Hulk Hogan in the shin. Sure it hurts, but its not going to kill him. Hulk Hogan then has a choice:
a) Hit the kid full force - probably killing him.
b) Give the kid a bit of a slapping around.
c) Give the kid a stern warning.
I think the US is trying the slapping around path.
In Star Wars the Death Star is a weapon of mass destruction. Prior to being blown into little bits it is used by the empire to destroy an entire planet - just as a demonstration to other planets to fall into line. The Death Star is clearly a military target.
The WTC was not a military target. It was not a threat to Terrorists, and was filled with non-military innocent civilians. The Death Star was filled with a massive 'laser', thousands of storm-troopers, fighters, and other weapons - with every intent to destroy opposition.
Textbook software engineering is about identifying what the client needs, and delivering it on time and on budget. What is sad is that we still fail in that objective a good portion of the time.
Ironically I don't think that it is true at all that OSS development is faster or more efficient. Basically coding is coding, so I don't see anything explicit to OSS that will make us faster directly.
On a large project however we might be more carefull with our coding, as many other developers will see the code. This may initially be actually slower. However, more care and less defects has a longer term benefit in not needing so much bug fixing. However, I don't see that benefit unless the project is at a size that other developers will see your code.
It is certainly less efficient in terms of manpower, a business can at least concentrate their resources, have people work on a project full time. I can't imagine employing a copy of the OSS approach - ie distributing specifications around the world over the net, and paying people an hourly rate for any work.
The thing is that in OSS you don't pay for time, so you don't have to worry about efficiency. To be clear - this is not a bad thing at all. If you look at many creatures in nature they do not nessasarily optimise efficiency. If what really matters is having excellent security and stability with few defects, then perhaps OSS shows the way.
But OSS is not a rapid applications development approach - and nor does it try to be. Thats not to say that the principles of OSS cannot be applied to commercial development, systems like XP use pair programming for peer review. They also employ unit testing as a stand in for many eyes. In fact test harnesses are great on OSS projects as well.
OSS development is a good idea not because of its efficiency and speed, but because of its quality and freedom.
How is this for an idea:
If you are a company which supports Linux, develops software for use on Linux, or uses Linux in some way, simply offer a discount of - say 25% - for all services related to migrating SCO users from SCO products to Linux.
Next thing to do is write press releases to the local papers telling them about it. You should point out that SCO customers face an uncertain future, since SCO will proably loose its fight with IBM, and will then be taken to court for its actions. You can also describe how SCO's new path is not developing new and better software for you, but simply based on taking advantage of its "IP".
Obviously there are many potential Linux converts out there, and it would be a good idea for Linux companies to compete for those users by offering them discounts to move away from SCO first.
I also believe that companies should cease supporting SCO versions of software - but at the same time offer existing clients a migration path to a more solid platform - such as Linux.
I know the SCO's lack of revenue is hardly a worry to them now, however it will make great news, and possibly make their stock price reflect reality.
After watching a recent program on the Apollo Project, I believe that the achievement of landing men on the moon was far greater than simply returning some rock samples. It was a statement about ourselves - that we can rise above our petty issues, and think about doing something that is historical.
Some argue we should not shoot for Mars until we solve our problems here. The thing is we will never solve the problems of hunger, disease and poverty. If we wait until we have justice and world peace for all we will be waiting a long time.
When sojourner landed on mars it was great. It inspired me - that perhaps doing great things had not ended with Apollo. What the world needs is something positive, another grand journey. The US doesn't need to invade countries to show how powerfull it is - it could instead go to Mars - and perhaps continue its cooperation with other agencies.
This mars mission is simply another step towards going to mars to stay and live. Getting off the earth is the first step to becoming a spacefaring civilization.
It has been a diffcult time recently, with various recent Linux issues creating problems for us in the NZOSS from a public relations point of view. Our concern when reporting the issue we had with Software Images to the NZ Herald was that the problem of exclusivity agreements could become widespread, and that this would restrict our ability to compete.
However, as a result of this story Software Images has received threats and abusive email to such an extent that they will probably report this to the NZ Police. And to be clear, I support this 100%. I and the society have been professional and polite in our dealings with Software Images, and the same is true in return.
It is simply not acceptable for people to be making threats to companies and their employees. I am deeply upset that people would take it on themselves to write abusive and threatening emails, and abuse people by phone.
Its not a good look for open source in New Zealand, but more importantly its JUST WRONG! These abusive emails were not appreciated by the NZOSS.
To be clear I am not refering to people who communicate respectfully and intelligently about the issues. Being passionate about open source is good. However, the abuse I am talking about stepped way over the line.
Regards,
Peter Harrison
NZOSS
A few years ago I found out that a manager was viewing and copying pornographic pictures to his hard drive. He actually asked me whether files were "really" deleted when he deletes them from Windows explorer. Little did he know that all his web surfing was logged anyway, so it really didn't matter what he did on his local drive, we still had evidence of his habit.
I was actually concerned at the time that his habit was actually impacting on the business, as at the time we had only a single dial in line, and his web surfing was slowing down email and other company communications.
I cut off his access to the web, and when he asked for reinstatement I refused. This pissed him off a bit, but he could hardly take it higher without me revealing to higher management *why* had taken the action.
In the case of Child Porn I think that it should be taken up with senior management first. Senior management will probably then fire their ass and report it to the police themselves. This way they get to look morally rightous, and get good PR.
If you tell the Police without first telling management you havn't given management the opportunity to deal with the internal issues. If management attempt to cover it up and continue employment of the offender then perhaps you have justification to go to the Police directly.
Just my opnion...
Perhaps hes building it to protect the country against just this kind of thing - after all we have no Strike Aircraft in the "Air Force".
To start with, the guy dosn't live in the good ole US of A, he lives in New Zealand - a country with an Air Force without Strike Aircraft. To me this is dumb beyond words after the lessons in war about air superiority.
Yes I think he will need help. Fortunatly I have experience with writing software for interfaces between GPS and PC's, and aircraft guidance, and intelligent agents. I will be more than happy to provide the expertise - but not for $5000.
What Americans seem to fail to understand is that we in New Zealand are not at all concerned about Terrorists attacking us - we are concerned about America. The explicit declaration it will attack anyone who threatens it militarily or economically puts every country in the world on edge.
Last year it was Afghanistan, this year it was Iraq, next year it will be Syria or North Korea. If you do not obey the US you will be next is the message.
Perhaps the guy lives outside the United States in a small country with an "Air Force" with no strike aircraft - thats right - NO STRIKE AIRCRAFT.
Two or three hundred of these things hidden around the country loaded up with intelligent agent software and a reasonable range would provide an effective self defence mechanism that is reasonably cheap to maintain.
Its all very well to call a guy nuts when you are protected by a few thousand ICBM's, however we have exactly zip in terms of air defence, and to be quite frank a cruise missile program would be money well spent compared to 16 or so obselete F16's.
I think the expectations meany grads had of good salaries straight into their first job was unrealistic. There is nothing wrong with a bit of humility to temper those expectations :)
In a job interview thejob interviewer will have exactly two things to judge you on. Hw will have your C.V and you.
:
Your C.V will probably have something along the lines of previous employment, qualifications etc. If you are in the interview the interviewer already knows everything from your C.V anyway, which leaves.... you.
When it comes down to it the person who gets hired isn't the person who is technically the best on paper, but the one who relates best to the interviewer.
Some pointers
1. Be happy. Being a Grump is a one way ticket out the door.
2. Don't complain about previous employer. Same effect as #1.
3. Answer questions with reasonable length. Nothing worse than trying to force information out of people,
4. Don't argue with the Interviewer.
Finally - tests are usually fairly simple because employers use them to weed out the incompetents. If a test seems amazingly easy doesn't mean there is anything 'hidden'.
When you contract someone to do something - whether its writing software or taking a photograph, you own the copyright. The only exception is when you sign a contract giving the copyright to the contractor.
So in effect it is up to the client who contracts the work to decide on the license, as they are the owner, not the contractor. This does not depend on any "Art WantsTo Be Free" argument - it is simply a fact of law.
The project you are working on is doomed. What you are in effect saying is that the people in charge of planning this project stuffed up, the sales people promised a unrealistic timeframe, and now - as usual - the developers are on a death march which will very probably - say 95% certain or better - result in total failure.
I'm assuming we are talking about a late project because if we are talking about working 15 hour days just because the boss wants to screw more work out of you all for the same money they are either in a very seriously bad financial situation or the boss is just plain greedy bastard (or the stockholder).
If you read all the bibles on project management of software you will find the one thing that you can't do is simply increase hours worked. My policy as a software development manager is to only allow 8 hour days. I actually told one employee to stop working 10-12 hour days, since there was no need to. In this case we had to keep repairing his work because he wasn't on the ball.
There was only one occation where overtime was warrented, and that was only for a couple of weeks. Bottom line is that regardless of the quality of work issues, this is simple abuse. We are not living in the industrial revolution, people shouldn't be expected to sacrifice their social life and their relationships with their family to their job.
First of all many of the development team work for Sun, who I suspect are paying the developers very well. Sun will be paying the team through the proceeds from the sale of StarOffice, although I think they could package OpenOffice and sell distributions and support much like Red Hat. The model now is for companies to cooperate to fund development of mainstream apps as open source, rather than pay ongoing license fees for the same type of software as closed source.
The second point is that there is no god given right for software developers to be able to make great gobs of money. Its a bit like a farmer complaining that people can grow their own food. Open source is here to stay - its part of the software ecosystem - deal with it.
It is perfectly possible to install and use mainstream Linux distributions without being a geek. OpenOffice and StarOffice provide very easy to use installations. Perhaps Linux used to be for geeks only, however it is now a capable mainstream desktop OS.
Regarding training, you will probably have to do an equal amount of training moving to WindowsXP, since it looks so radically different from previous versions, and everything has moved around. Yes once again Microsoft expect everyone to relearn everything just because of a new release.
By the way, who here thinks the new XP default wallpaper looks like the TellyTubbies hill? I think they are getting their GUI ideas from games for three year olds. Perhaps this is a result of trying to appeal to the lowest common denominator?
Bottom line is that you can get a Linux and OpenOffice to replace a Windows and Office system. The main issue will be porting any custom built software or accounting systems.
If you wish I can offer my services as a Linux Migration Manager.
Everybody seems to be making the assumption that there won't be drivers. Why not?
The primary problem will be when MS or the hardware companies patent the system, or use encryption. This will mean that:
You won't be able to reverse engineer it because reverse engineering will be considered illegal, just like Adobe and Elmsoft or DeCSS
Even if you figure it out you won't be able to distribute a driver because it will infringe the software patents MS filed.
Bottom line is that MS will encourage this kind of thing on all hardware wherever possible. They will try to make the PC a Windows Only platform.
Also, the .NET toolkit looks very competent and building and deploying .asp's is quite simple as compared to deploying a java solution.
You must be kidding. NetBeans and Tomcat allow you to develop and deploy with amazing ease. Besides which, have you ever seen that junk programming that goes into ASP? I'm not saying you can't write nice ASP's, but I have yet to see a system that separates business logic from the ASP. One system had the login logic repeated on every page
Okay so which of the principles below does Open Source not conform to? The issue here is that the Open Source movement saw that the term "free software" was damaging the cause, and decided on a new name that isn't scary as hell to people who actually make their living writing software.
The fact is that software isn't free. Just because Richard gives his software away it doesn't mean it didn't cost *him* anything. It cost him his time.
- The freedom to run the program, for any purpose (freedom 0).
- The freedom to study how the program works, and adapt it to your needs (freedom 1).
- Access to the source code is a precondition for this. The freedom to redistribute copies so you can help your neighbor (freedom 2).
- The freedom to improve the program, and release your improvements to the public, so that the whole community benefits. (freedom 3). Access to the source code is a precondition for this.
Humans have short lives. Long Term to us is twenty or thirty years. Our own evolution is crawling along, virtually undetectable for thousands of years.
:-)
In comparision machines - both computers and robotics - are charging ahead, doubling their abilities every two years. There have been some stumbling blocks - such as the top down approach to AI, however we are slowly starting to create systems that are very lifelike in behaviour.
However, even at what we might consider a slow and bumbling pace, it is still many thosands of times faster than human evolution. At the current rate of progress we can expect machines capable of human intelligence within the next 50 years.
The problem is that they won't stop at just human intelligence. They will just keep going - getting more intelligent, more capable.
Many seem to think that a 'terminator' senerio is very far away. Well what do you think Afghanistan was? Weapons are capable of removing humans from conflict now. It is only a matter of time before warfare will be the domain of machines.
From fighter aircraft to ships and submarinbes, all could have the human factor removed - not tommorow when some new technology is developed - but now. The fact is that machines - the dumb type we all use - already makes defacto decisions for many of us.
For example, when you get a loan from the bank, they type all you credit info into their computer, and the computer makes the decision. Now you might like to say that the computer only makes a recommendation, or is a 'decision support' tool, however if you are a loan manager, and the computer says "don't give Mr Smith the loan", and you do anyway, what happens when the loan goes bad, and your boss finds out you ignored the computer?
Once Intelligent Machines are built they will be compulsory for big business, primarily because without them you quickly become a small business because the opposition will be smarter. No robots need enter into it. Some Humans will rubber stamp decisions made by machines, and the lower level employees will carry out the decisions. Deviate from the decision or question it, and the HR department - which will probably BE a machine - will let you know of your error with a pink slip.
Intelligent machines won't need armies - but our armies will need them.
This is all simply evolutionary. We cannot just decide not to develop intelligent machines because that will put us at a massive disadvantage to those who do. They will not need to fight for control - we have already given control to the machines.
Just in case you are wondering : I'm all for this. Machines controlling humans couldn't do any worse than humans controlling humans
No Don't!
In my early experience in programming I found there was an advantage to up front planning. It seemed like the more planning you did the better the project would do. So there was a tendancy to do more and more up front planning, getting into more minute detail.
However although we spent more and more time planning the payoff in terms of being able to predict schedule and budget diminished. Its classic diminishing return. But why?
Planning a project is like forcasting the weather. You can plan a small project in minute detail for a short time (like being able to predict the weather a day in advance), and you can make vauge predictions for some time out (ie you can know the probability of rain based on the month - statistically on previous years), however you can't plan a large project in minute detail.
The reason is that if you get any of the initial decisions wrong, and there is a minor deviation from the plan early on, this will be reinforced to cause more changes, and this will snowball to change many parts of the final system.
An analogy is trying to get somewhere with a set of instructions. If the instructions are faulty at the very start of the list it doesn't matter that the rest of the instructions are correct - you still get lost. Detailed plans are a little like a set of precise instructions. There is no assurance that all of the instructions are fault free. In fact there is a good chance they will be faulty as they will almost always be written by someone who hasn't been to the destination (ie hasn't written the same program before).
It is better to be an explorer. Your "plan" should be like a map. Only you start out not knowing the terrain - only the general direction of your destination. You map your first days travel and set off. Every day fill in some detail on the map and plan the next days walk - always keeping in mind where you final destination is.
Programming is a journey - not through any physical space, but through the endless possibilies of the programming solution space. This space is filled with broken, useless programs. Its your job to navigate your way to the best solution.
PS : I know this hasn't been very practical, however I have previously posted some more concrete real life advice under this article.
The sign of a *professional* programmer is that they don't care about programming languages. The rule of thumb is to use whatever tool gets the job done the fastest, with the best quality.
:-) I use Delphi for Windows GUI apps, Java for Web Apps (serlvets), and Kylix for Linux GUI apps - which can be the same code base as the Delphi Apps.
Personally I pick up new languages like I pick up colds
Delphi, Java, VB, C++, C, Fortran, Kylix - its all the same stuff. Except perhaps Prolog - thats one language I never had time
The ignorance is yours, because it is Patents and Trademarks which must be enforced, not Copyright. If you write and publish a book, and some individuals copy the book without your permission, you do not have to sue them in order to retain your rightfull copyright in future.
In this case Sony seems to have totally lost the plot. The idea that a large number of Aibo's are purchased for hacking means that they are actually harming their customers with this action, even if they are legally correct (which I actually doubt).
Perhaps in future we should suggest to robotics companies that they apply for a mark like the OSI Mark, which indicates they are happy for people to play with the hardware. This way robotics people will know up front that they will have no legal worries.
This could be backed up with release of the software specifications, and even developers kits. I think Lego has the right idea. I purchased Mindstorms myself. I will now never consider purchasing an Aibo.
I filled my form in with Jedi as the religion in the NZ Election. I havn't seen the results however. I havn't been arrested and put in prision either.
I had a rather in depth talk with the lady who took the papers. Apparently there was a change of procedure this year, in that they were less strict about the census answers.
Previous years they apparently checked the papers, and came back to people who had filled in the forms incorrectly. While this is still done, I think they are a little less determined, and it is mainly aimed at correcting geniune mistakes.
I can't believe the US would even consider using Nukes. Let me see if I can put this in perspective:
Afghanistan is right next to Pakistan and India, who have just both got themselves some shiny new Nukes themselves. Currently these two countries are having a dispute over some land - as countries do. In Pakistan there is currently significant support for the Taleban, which could destabalize the Government. There is a possibility that events in Pakistan could result in control of their Nukes to become uncertain.
If the US start using Nukes this could set a precident that using them is okay in a War for 'tactical' reasons, thus giving Pakistan the 'moral' right to use them in the disputed land between Pakistan and India. From there its just a small step to all out Nuclear confrontations.
To complete the analogy we should also look at the relitive size of the participants. The terrorists are using the methods they have because they don't have the big mean sticks that the US does.
So in relitive terms its like a small boy has kicked Hulk Hogan in the shin. Sure it hurts, but its not going to kill him. Hulk Hogan then has a choice:
a) Hit the kid full force - probably killing him.
b) Give the kid a bit of a slapping around.
c) Give the kid a stern warning.
I think the US is trying the slapping around path.
In Star Wars the Death Star is a weapon of mass destruction. Prior to being blown into little bits it is used by the empire to destroy an entire planet - just as a demonstration to other planets to fall into line. The Death Star is clearly a military target.
The WTC was not a military target. It was not a threat to Terrorists, and was filled with non-military innocent civilians. The Death Star was filled with a massive 'laser', thousands of storm-troopers, fighters, and other weapons - with every intent to destroy opposition.