I sympathise with you, I found out long ago that I have the same problem. I am now 38, and have my programming job, but I realise that I could have done much better.
There is no one who could help me, so I had to help myself. What I am constantly trying to do is rebuild myself, by saying that what needs to be done should be done, and by trying to concentrate on the tasks to be done.
It is not easy, but I am making progress.
The best thing you can do is try to find a coach, someone who helps you focus and set your priorities. This must be someone you trust and can talk to unrestricted. I found out that talking about the current problem at hand does help, it makes you focus on the global picture.
You should try to find an archive containing old Byte Magazines. When Smalltalk-82 came out, they devoted a whole magazine to it and the Xerox Alto.
In the magazine you will find that the people based Smalltalk indeed on the work done for Simula, also for the first version of Smalltalk (Smalltalk-76, I think).
Yeah, and that Eburonic part (Limburg) has probably one of the largest mixed populations of Belgium. All descendants of foreign coal mine workers.
My adjutant in the army was from that part. His father was an Italian, but he spoke a Limburg dialect of Dutch/German that neither Dutch speaking nor German speaking people could understand.
I think that the reasons for management failure lies deep in the way people are trained for a certain job.
There used to be a time that people who got in management where technically competent people, trained in their material and trained in the course of their career to manage people.
Then there came schools which thought that they could train managers, people who only have a background in economics and beancounting, and these have replaced the technically competent people.
But assigning someone with such a background to a certain problem area of which he knows nothing, is like assigning a programmer who knows his language, to a project in which he neither has a background.
In programming and in management, you need to know two things : your problem domain and the application of your background (managing or programming) to the particular problem domain.
I do not have any problem with planning and executing military campaigns, but I found the diplomatic parts of all those games the part that was the least understandable.
I also loved to play Master of Magic, and the great thing of the game for me was discovering the nodes and towers and fallen temples and trying to get into the astral plane.
Yep, although I am not a practicing christian (catholic or otherwise), I have read the bible and everytime such a thing is published about The Bill and Melinda Gates Fund, I must think about those passages.
Sometimes it does benefit some descendants, like in the case of Philip K. Dick's children. When he died, they were poor. So many years after his death, they are now able to lead a (mare than?) decent life.
It is not the first time in history that the dead have representation.
I remember from history that in the 19th century England, votes came from villages that didn't exist anymore, at the expense of villages which were created as a result of the industrial revolution.
I tend to use an analogy of a drawing for revision control.
When you have created a drawing which is accepted for production or implementation, then it is stored in a filing cabinet for future reference (check in).
When you need it as a reference, you can retrieve it and look at it. When you need to draft changes, then you use the previous version as reference, but you start a new sheet, instead of doing the drawing on the original.
And this way you can build up a whole history of the project from day 1.
The main problem with software is that it is too easy to change things in a file, so one needs a little bit of self-discipline in these things.
If it ain't broke, do not try to fix the current version, but fix a new version.
Btw, SVN rocks! Is there a graphical front-end for SVN available ?
We seem to have the same problem here, with a change management tool called Continuus. While it fullfills change management and versioning for simple to medium complex tasks, we are really going far beyond its scalability.
E.g. the problem tracking part had to be extended with an external database, because Continuus itself is too slow for the rate of changes which goes on here. We also had to add our own web interface, because what is delivered is not enough customisable for us.
So indeed, for some things you can buy COTS, or you buy a COTS framework, but if you see how much work you have to add afterwards, it seems that such things only deliver short term gains.
Like Henessy and Patterson say inthis book, there is only one way to measure the performance of your computer, and that is by measuring the time needed to perform your job.
Now, I understand that this is somewhat impossible for a long running desktop, but I think there are benchmarks for measuring the reaction times of desktop operations, and of course you can create your own benchmarks for the work that you really like to do.
I have the articles at home (Linux Journal) about the SGI systems. First they do measurements on their systems, and then patch the bottlenecks in the kernel.
I don't think these patches can easily be put into a standard kernel.
One of the rules that influenced the design of Smalltalk-80 and the Alto workstation, was that the computer response time to a command should be not more than 100 ms. This way, a user can develop a train of thoughts and which is fluid.
Longer response times interrupt this train of thought, which makes the user then think harder/concentrate more.
With all the advancements in computer speed nowadays, most software does not respect this guideline, which leads to lots of frustration.
It seems to me that as a consulting firm, you must be able to generate more money than e.g. a transport company.
I worked in a transport company with 20 people, and I did the IT, which was based upon a minicomputer with a relational database and a rapid application development, with programming in COBOL.
It seems they started out with a custom built solution, done by an external company, and delivered completely with sources, so that the local IT responsible could update and add applications.
It seems that as a consulting company with the necessary knowledge of the requirements, you should be able to hire one or two persons, help them with the requirements and the design, and then pass the rest of the work to one person doing updates and adding functionality.
The biggest problem is not programming, it is domain knowledge transfer from you to the person doing the programming and the maintenance.
Around 1990/1991 I had a booklet from the FSF about their filosophy and their products. I think that you paid $250 to $500 for a tape containing all their then current software including the source. It depended on the platform, you could buy GNU software for 10 or 15 platforms then.
I sympathise with you, I found out long ago that I have the same problem. I am now 38, and have my programming job, but I realise that I could have done much better.
There is no one who could help me, so I had to help myself. What I am constantly trying to do is rebuild myself, by saying that what needs to be done should be done, and by trying to concentrate on the tasks to be done.
It is not easy, but I am making progress.
The best thing you can do is try to find a coach, someone who helps you focus and set your priorities. This must be someone you trust and can talk to unrestricted. I found out that talking about the current problem at hand does help, it makes you focus on the global picture.
Wang has been bought by Getronics.
I think that Maarten Luther and his contemporary Johannes Calvijn where pretty scary people in their own times too.
You should try to find an archive containing old Byte Magazines. When Smalltalk-82 came out, they devoted a whole magazine to it and the Xerox Alto.
In the magazine you will find that the people based Smalltalk indeed on the work done for Simula, also for the first version of Smalltalk (Smalltalk-76, I think).
Yeah, and that Eburonic part (Limburg) has probably one of the largest mixed populations of Belgium. All descendants of foreign coal mine workers.
My adjutant in the army was from that part. His father was an Italian, but he spoke a Limburg dialect of Dutch/German that neither Dutch speaking nor German speaking people could understand.
Besides, I thought that the Dutch where the largest immigrant group in Belgium, followed by the Turks or the Moroccans.
Synaptic works under Debian and Red Hat.
Two things should be added.
When launched for the first time, a panel explaining why you need to enter the root password before installing software.
When selecting a package, the possibility that it does not show all related dependencies.
I think that the reasons for management failure lies deep in the way people are trained for a certain job.
There used to be a time that people who got in management where technically competent people, trained in their material and trained in the course of their career to manage people.
Then there came schools which thought that they could train managers, people who only have a background in economics and beancounting, and these have replaced the technically competent people.
But assigning someone with such a background to a certain problem area of which he knows nothing, is like assigning a programmer who knows his language, to a project in which he neither has a background.
In programming and in management, you need to know two things : your problem domain and the application of your background (managing or programming) to the particular problem domain.
I got the same feelings about such games.
I do not have any problem with planning and executing military campaigns, but I found the diplomatic parts of all those games the part that was the least understandable.
I also loved to play Master of Magic, and the great thing of the game for me was discovering the nodes and towers and fallen temples and trying to get into the astral plane.
Yep, although I am not a practicing christian (catholic or otherwise), I have read the bible and everytime such a thing is published about The Bill and Melinda Gates Fund, I must think about those passages.
Sometimes it does benefit some descendants, like in the case of Philip K. Dick's children. When he died, they were poor. So many years after his death, they are now able to lead a (mare than?) decent life.
It is not the first time in history that the dead have representation.
I remember from history that in the 19th century England, votes came from villages that didn't exist anymore, at the expense of villages which were created as a result of the industrial revolution.
I tend to use an analogy of a drawing for revision control.
When you have created a drawing which is accepted for production or implementation, then it is stored in a filing cabinet for future reference (check in).
When you need it as a reference, you can retrieve it and look at it. When you need to draft changes, then you use the previous version as reference, but you start a new sheet, instead of doing the drawing on the original.
And this way you can build up a whole history of the project from day 1.
The main problem with software is that it is too easy to change things in a file, so one needs a little bit of self-discipline in these things.
If it ain't broke, do not try to fix the current version, but fix a new version.
Btw, SVN rocks! Is there a graphical front-end for SVN available ?
We seem to have the same problem here, with a change management tool called Continuus. While it fullfills change management and versioning for simple to medium complex tasks, we are really going far beyond its scalability.
E.g. the problem tracking part had to be extended with an external database, because Continuus itself is too slow for the rate of changes which goes on here. We also had to add our own web interface, because what is delivered is not enough customisable for us.
So indeed, for some things you can buy COTS, or you buy a COTS framework, but if you see how much work you have to add afterwards, it seems that such things only deliver short term gains.
Like in a goat licking the bare soles of their feet ?
The wattage on your PSU is not the wattage that if effectively uses.
If you connect a load of 10 W to a PSU of 300W or 500W, then both will only consume 10W.
Like Henessy and Patterson say inthis book, there is only one way to measure the performance of your computer, and that is by measuring the time needed to perform your job.
Now, I understand that this is somewhat impossible for a long running desktop, but I think there are benchmarks for measuring the reaction times of desktop operations, and of course you can create your own benchmarks for the work that you really like to do.
Clipper 5.0 was already extensible back in 1991.
Using a meta-language you could define new syntactic constructs.
Lisp is extensible, read On Lisp, Advanced Techniques for Common Lisp.
Heck, if you do your homework you can probably even extend Perl with new constructs, making use of the BEGIN, CHECK and INIT block constructs.
This is about an unmodified 2.6 kernel.
I have the articles at home (Linux Journal) about the SGI systems. First they do measurements on their systems, and then patch the bottlenecks in the kernel.
I don't think these patches can easily be put into a standard kernel.
One of the rules that influenced the design of Smalltalk-80 and the Alto workstation, was that the computer response time to a command should be not more than 100 ms. This way, a user can develop a train of thoughts and which is fluid.
Longer response times interrupt this train of thought, which makes the user then think harder/concentrate more.
With all the advancements in computer speed nowadays, most software does not respect this guideline, which leads to lots of frustration.
It seems to me that as a consulting firm, you must be able to generate more money than e.g. a transport company.
I worked in a transport company with 20 people, and I did the IT, which was based upon a minicomputer with a relational database and a rapid application development, with programming in COBOL.
It seems they started out with a custom built solution, done by an external company, and delivered completely with sources, so that the local IT responsible could update and add applications.
It seems that as a consulting company with the necessary knowledge of the requirements, you should be able to hire one or two persons, help them with the requirements and the design, and then pass the rest of the work to one person doing updates and adding functionality.
The biggest problem is not programming, it is domain knowledge transfer from you to the person doing the programming and the maintenance.
O, yes it does, but you have to set the type explicitly to binary.
Or use gnome-switchdesk, which should be somewhere in the preferences menu.
Unless you count a spinning jenny as a computer, the punch card was even invented before computers.
Around 1990/1991 I had a booklet from the FSF about their filosophy and their products. I think that you paid $250 to $500 for a tape containing all their then current software including the source. It depended on the platform, you could buy GNU software for 10 or 15 platforms then.