Framework wrote:
dadabe wrote:
"I'am a newsbie with only half a year programming experience in C++ and 3 weeks in Visual Studio 2008 C++"
dadabe wrote:
"I also became an expert in finding bugs." |
Yes,
newsbie in C++. Sorry I didn't think it would be important, to tell about C, assembly and other programming languages.
Maybe you can remember the home computer age.
This was the time before internet, before PCs became cheap and had graphics and had Windows.
People wanted to learn about programming. So they bought home computers like Commodore 64 and home computer magazines and typed in the programs, which they found there for learning.
Commodore 64 was quite expensive - about 500 $, but then there were simliar Home Computers, which were a Flop of business, like C16, C160 and Plus4, and these were sold very cheep (Plus4: 50 $).
I bought one, bought such a magazine, wanted to type in such a program listing and saw a bug.
I wanted to complain about the bug, looked for the address of the publishing house, found at the backside of the magazine a job advertisement for an editorial journalist in this home computer magazine publishing house, wrote a job application, came there, worked one week for probation and got the employment.
The wirst what they needed, was: people who typed in the listings, made mistakes during typing and complained about bugs in the listings. Another big publishing house had a solution. An editor - many pages of listing - with which the people could type in their code and saw a checksum, which showed them, they had typed correct. Such a program also was needed by this publishing house.
I gave them my solution: 40 bytes of machine code, which a BASIC program poked to the RAM memory, using the function "poke(address,value)", for calculating a checksum and print on the screen, and a bended pointer, that this would happen after people had typed in a line of code and pressed return. Maybe nobody in the world had thought of such a solution. And this solution worked very fine.
The publishing house got many listings, which learning people had written, who liked, these programs should be published and sold, so they could get some money, which a student with not much money could need.
There were many programs which would have been fine, if they wouldn't have contained a few or a lot bugs.
I thought, if I would fix such bugs, the publishing house would be delighted and also the students and other youngs and olds would be this. And so I did, and got many letters of thanks, because the listings were published and I had shown them, how to write a fine working and fine code. I don't know for how much such programs, I never had seen before - I had fixed the bugs during fife years. I estimate a number between 500 or 1000, and this wasn't the real work of an editorial journalist, just a hobby, which I did by the way in the office.
Another hobby was to impart knowledge about computers, hardware, processor and assembler, and how to write a fine code. For example I wrote an assembler course for 8086 processor, of maybe only 20 pages, but got so much thanks, of a man, who had tried to learn this of books, which were published, but he had tried this in vain. And my course he had understood immediately and now could program assembler.
Another hobby were some small hardware inventions. People could use Commodore printers. If they wanted to use other printers, they had to buy a hardware interface, maybe about 50 $. Some peoble liked to get such things cheeper. So I made for them a small program (similiar the checksum program), so that they could connect a cable, with a centronics connector and another connector to the user interface connector of the plus4, C64, C128. But C16 und C160, didn't have such a user interface connector, only a serial connector for Commodore hardware with only 3 lines for data transfer. A shift register and a nand gate, soldered into a centronics connector (10 lines needed) and a small software program was a cheap solution for them.
I liked these times, although they were stressy, with such hobbies besides the editorial work. But about 1990 the home computer age ended, because PCs became cheap and with graphics and Windows - the good old age never will come back - what a pity. And how could I do such things, when I never had studied informatics and rarely had read any book?
Maybe because before I had 2 years of experience in programming. A gynecologist had bought a PC and needed a program for managing his practice. And before I had some months of programming dBase, a data base with basic like programming language.
The gynecologist had looked the market for such a program, but there was none, which he thought would be fitting. Then I made this program for him. But dBase was too slow for him and other products even so. The best would have been, if he would have decided to buy C for programming an own data base system. Because he didn't buy this, but because he had a book with register and command description for the 8086 processor, I took this book and implemented the practice managing program including the data base system in assembler and this program was so much faster as all the other programs. But this I would never do again, because what should he do, after I found a better paid job and maybe the program needed attendance and update.
There would be much stories to tell. After I had read a book about C, I didn't try a program like "Hello World", but I implemented a text editor, which was very useful for me and was much faster than others with much less code, because it had a nice trick.
I can't tell all my stories, but maybe you now may imagine more about me.
If you know someone with as much bug fixing experience for programs he didn't ever had seen before and without any specification and only a meager or none user documentation, so that I had to test the programs, for looking, what they would do and writing the documentation also by myself - if you know anybody with such an experiece, please tell me, I would be much delighted, if I could meet him.
And if you would think, my experience would not be so much, then you should consider, that I also did something the last 20 years and not only before.
A will try, to remember the books:
- description of the home computer including the programming language BASIC
- book about microprocessor hardware
- register and command description of the 6502 processor from an home computer magizine article
- ROM listing (listing of the home computer firmware in assembler with not much comments)
- dBase book
- book with 8086 register and command description
- book about FORTH
- book about C (Kernighan and Ritchie)
- book about C++
- book about digital electronics
- book about analogue electronics
- book about JAVA
- book about HTML
Other documentations from Web - PHP, Perl, MySQL, JavaScript, Apache ..
Could be a few more, but can't remember jet