What is Software Development?
Mục lục bài viết
The History and Future
The history of software development and the history of software developers is an interesting one and is intertwined with the history of computers. Early computers were mechanical machines, known as analog computers. Some consider that the first example in history of developing software was in 1810 when Joseph Marie Jacquard devised a system of holes punched in cards to guide the patterns used in his looms to make cloth. The technique of using holes punched into cards or paper tapes was later adopted to program early computers, including those made by IBM, Elliott, and GEC.
Others say that Ada Lovelace is often credited as the first software developer when in 1843, she created a rudimentary program for Charles Babbage’s ‘Difference Engine.’ This allowed sequences to be designed so that instructions could be given to select particular gears and shafts.
The big breakthrough was made by George Boole, who, in 1947, proved the link between logic and mathematics. Without this, we would not have the computers that we all use every day, including our smartphones and digital watches, but it wasn’t until 1948 that Claude Shannon wrote a thesis on how binary logic could be used in computing.
This paved the way so that when digital computers were first developed, they could be instructed on what to do using binary logic as the method. In 1949 John Mauchly developed ShortCode. This was the first programming language for electronic computing devices, but it required the software developer to change the statements from 0’s to 1’s by hand. In 1951 Grace Hopper wrote the first compiler that turned programming language statements into the required 0’s and 1’s. This lead to faster development, as the software developer no longer had to do it by hand.
In 1957 the first major programming language, FORTRAN, was developed. FORTRAN was excellent at handling numbers but was not so good at handling the inputs and outputs required for business computing. To address this, COBOL was developed in 1959, specifically for business computing. COBOL is still at the heart of many major systems used in the banking industry today.
Over time, more and more programming languages were developed, all aimed at speeding up the development process and improving the quality of the software for specific tasks. For example, in 1958, the LISP programming language was developed specifically to aid research into artificial intelligence. LISP looked nothing like the other programming languages of the time, but it is still in use today because of its highly specialized and abstract nature.
The popular languages Algol (1958) and BASIC (1964) led to a rapid growth in computer programming and the development of software, as they were cheap to deploy, easy to learn, and very flexible in what they could do. Many of today’s programming languages, including C, C+, C++, VB, and Java, have their roots in ALGOL and BASIC.
The history of lean development, which is the approach most used today, started in 2003. Mary and Tom Poppendieck were actively involved in the agile software development community. They authored a book called ‘Lean software development’ that restated lean principles as applied to developing software, and a set of 22 tools. The future of agile development was assured as more and more organizations realized the value that it could bring.
As the demand for more and more applications continues to accelerate across the globe, the future of software development and the future of development jobs is in no doubt. Even the best artificial intelligence is unlikely to replace the need for skilled, innovative, and motivated software developers.