A person. C ++ creator Bjarne Straustrup, who “never loved” programming languages



    The creator of C ++ had very few chances to “go out into the people”: a poor family, the worst school in the city, lack of pronounced tendencies towards something. He was not even "brilliant."

    This is a man who can be called self-made. His main goal was to achieve real success in whatever.

    Perhaps all of us are lucky that it "brought" into programming. Because it is now very difficult to imagine a modern IT industry without a C ++ legacy.

    Bjarne Straustrup was born on December 30, 1950 in the Danish city of Aarhus. This is the second largest (250 thousand inhabitants) city of Denmark, located on the east coast of Jutland.

    Despite the fact that his parents were not “academics,” he did well at school. Although, as Bjarne later found out, it was one of the worst schools in the city.

    As a child, the future engineer loved to play football, ride a bicycle. He was also a scout. Like most boys at the time, Straustrup earned money by delivering newspapers and milk.

    After graduation, he still enrolled in a local university in the computer technology department. Bjarne admitted that he could become an architect, a historian, and a sociologist. But in the end, he settled on mathematics and computer science. His decision was influenced by a school math teacher who instilled in the boy a love of this science.

    University


    He first met with a computer already in the walls of the university. Algol-60 was the first programming language that Bjarne learned.



    Aarhus University was in the TOP-100 higher educational institutions of the world. Straustrup with fear thought that he would have to work as a mathematics teacher if there was no job in the programming field. He was convinced that mathematics should have a practical application.

    However, in his second year, he realized that programming, and computer technology in general, is not only and not so much mathematics. In addition, it turned out that Bjarne was not as good at mathematics as he thought.

    In one of the interviews, Straustrup outlined his position regarding programming training:

    I rate education above training courses. In most cases, I will choose a specialist with a broad outlook and deep basic knowledge than someone with a certificate of completion of highly specialized courses. In general, my ideal is a combination of academic knowledge and practical skills.

    During his university years, Straustrup worked part-time by writing small programs for the Burroughs company in Aarhus. Then he realized that commercial development has little to do with writing programs for himself or friends, and even more so, with the implementation of laboratory work at the university. Bjarne gained experience in communicating with users, experience in supporting and maintaining the code.

    The student spent part of the proceeds to pay for his own tuition. Besides the fact that he benefited from himself, his developments helped bring the company to a new level: Burroughs later merged with Sperry, as a result of which Unisys, the world manufacturer of complex software and hardware solutions, was formed.

    In addition, the student developed software for the needs of the university. In 1975, Straustrup graduated from it and received a master's degree.

    Cambridge


    Toward the end of training, Bjarne became interested in microprogramming. Interest increased after an internship in Cambridge. Therefore, Straustrup moved to England to continue his education at Cambridge University. There was all the necessary equipment for research in the field of microprogramming.



    In addition, the new university helped him increase his demands on himself. At this university, the level of students and teachers was much higher than at Aarhus University. This motivated Straustrup to develop more actively.

    In Cambridge, in the Computing Laboratory, he was engaged in the design of distributed systems. In 1979, Bjarne received his doctorate.

    In the same year, Straustrup and his wife Marian moved to New Jersey (USA), where he began working at the Bell Labs Computer Research Center. At that time, the company was in a "friendly" relationship with Cambridge University.



    C ++


    When Straustrup was engaged in research at the company, he needed to write several simulation programs for modeling distributed computing. SIMULA-67 - an object-oriented language - could be an ideal tool for solving such problems, if not for its relatively low speed of program execution. By the way, Bjarne used this language while writing his dissertation in Cambridge - there he developed a simulator of distributed systems.

    Prior to this, Stroustrup was not interested in developing programming languages. He was interested in microprogramming, operating systems, architecture of computers, development of virtual machines. True, even before graduating from the university he managed to study twenty programming languages. But despite this, Bjarne claims that he still did not feel much interest in languages.

    However, Straustrup decided to start work on a new programming language.

    If you have to choose between writing “good” and “fast” code, then something is wrong here. Because a “good” code should be “fast,” Straustrup explains in an interview.

    This was how the C ++ programming language was created, originally dubbed C with classes. The name "C ++" was coined by Rick Maschitti. "++" is an increment operator in C, which, as it were, hints that the C ++ language is more than just C.

    In 1983, the language underwent significant changes. Straustrup designed his language so that the code was not compiled into a machine language, but converted into a set of C preprocessor commands. This opened up access to hundreds of thousands of C programmers who had the appropriate compiler.

    In 1984, Bell Labs was reorganized to become AT&T Bell Labs. The first to whom the company offered C ++, and almost free of charge, were universities.

    In 1985, Straustrup published one of the most widely known books, The C ++ Programming Language, which has survived four editions (1985, 1991, 1997, 2000), and has been translated into 19 languages.



    As Tom Duffy writes: “Many discoveries owe their origin to chance. But there are many others that have become possible thanks to hard work and foresight. The C ++ programming language, first proposed by Bell Labs to universities in 1985, certainly falls into the second category. ”

    Community building


    The language quickly found its audience. In 1987, 200 people gathered at a C ++ conference. The next year, the number of participants increased to 600, and in the early 90s the number of developers in C ++ was approaching 500 thousand. This has made this language the world leader in speed of distribution.

    In 1990, Straustrup's next book, The Annotated C ++ Reference Manual, was published, which later was awarded an award for unsurpassed skill in technical documentation, according to Dr. Dobb's Journal.

    In addition, according to Fortune magazine, Straustrup was recognized as one of the "Twelve Best Young American Scientists."

    Straustrup, meanwhile, continued to work at AT&T Bell Labs, where he headed the large-scale program research unit, was actively involved in improving his language and creating its standard. The ANSI / ISO C ++ standard was released in 1999.

    Straustrup was head of programming research at Bell Labs from 1995 to 2002.



    Bjarne Straustrup - about C / C ++


    “I came up with C ++, wrote down its initial definition, and completed the first implementation. I selected and formulated the design criteria for C ++, developed its main features and was responsible for the fate of the proposals for expanding the language in the C ++ standardization committee, wrote its author. - The C ++ language owes much to the C language, and the C language remains a subset of the C ++ language (but in C ++ several serious gaps in the C type system have been eliminated). I also kept C tools that are low-level enough to handle the most critical system tasks. The C language, in turn, owes much to its predecessor, BCPL. ”

    In a 2003 interview, Straustrup spoke about his attitude to C and C ++ compatibility issues:
    I think that the existing problems of C and C ++ incompatibility are the worst thing that could happen in the history of these languages. Ideally, these languages ​​should be combined. And it seems to me that this is technically feasible only if changes are made to both languages. However, due to the reluctance to make these changes, languages ​​continue to move away from each other, poisoning the life of almost every C- and C ++ developer.

    I am trying to get people to see the positives in the union. I wrote a series of articles on this topic. But someone is interested in preventing this from happening. In addition, I do not see much interest from the community. Probably the majority, as usual, hopes that everything will "resolve itself".

    After AT&T Bell Labs


    Since 2002, Bjarne has been a professor at Texas A&M University. He worked in the industry for almost a quarter of a century, so he has something to say to students.

    In addition, he collaborates with Columbia University as a visiting professor of computer science.

    In 2014, Bjarne was offered a job by one of the largest financial conglomerates in the world - Morgan Stanley.

    Straustrup began to cooperate with this company, as he decided to return from the field of pure pedagogy to solving real problems. His vast experience proved to be useful for Morgan Stanley Bank in resolving issues related to performance, reliability and safety.

    In addition, he wanted to move to New York to be closer to his children and grandchildren.

    Bjarne Straustrup was elected a member of the National Academy of Engineering in the United States (“National Academy of Engineering”) in 2004 with the wording “for the creation of the C ++ language”. As the first computer scientist, he received an award ("William Procter Prize for Scientific Achievement from Sigma Xi") by the American research community in 2005. He also received the IEEE Computer Community Award "for starting the development and commercialization of object-oriented technology for creating programs and for the big changes made to business and industry."

    Also popular now: