ITA/ENG
di Andrea Lupo
Translation by Mattia Fantuzzi
Lo scopo di questo articolo è portare alla ribalta in modo divulgativo, quindi più fruibile ad un pubblico con scarse conoscenze in materia, alcuni particolari personaggi femminili che hanno contribuito allo sviluppo dell’informatica o di tecnologie in uso tutt’oggi.
Vorrei iniziare con l’origine del termine “bug”.
Sicuramente almeno una volta nella vostra vita vi sarete imbattuti in questa parola, che in italiano significa “insetto”, e vi sarete forse chiesti cosa potrebbe centrare un insetto con un computer.
Per capirlo dobbiamo andare un po’ indietro nel tempo, nello specifico al giorno 9 settembre dell’anno 1947. Ci troviamo all’interno di un computer Harvard Mark II, il quale occupava una superficie di 370 m^2 e dal peso complessivo di circa 25 tonnellate. Il suo funzionamento si basava su una logica circuitale costituita interamente da componenti meccaniche dette relay [1]. La presenza massiva di tali elementi presentava un evidente problema, ovvero un’alta percentuale di probabilità di guasti meccanici dovuti all’usura delle parti. Dal momento che il numero di queste componenti si aggirava sull’ordine delle migliaia, distribuite su un’enorme superficie, individuare il singolo componente guasto in tempo reale risultava molto difficile, se non impossibile.
[1]: Un relay è costituito da una bobina di rame la quale, quando è attraversata da una data corrente, crea un campo magnetico indotto che chiude o apre un contatto elettrico facendo passare o meno corrente sullo stesso. Questo componente è usato per pilotare grossi carichi di corrente ed in passato prima dell’invenzione dei Transistors era usato per creare porte logiche all’interno dei circuiti di un calcolatore.
Per verificare che tutto fosse integro si caricava un primo programma il cui risultato atteso era ben noto e lo si confrontava con quello uscito dalla macchina: in caso di incoerenza si procedeva alla ricerca del guasto nell’area del circuito interessata dal calcolo. Successivamente in caso di test superato oppure di un guasto risolto si caricava il vero programma ed alla fine si effettuava un ulteriore controllo, per avere la sicurezza che non si fossero verificati guasti durante la vera e propria esecuzione.
Quel giorno però il test di avvio fallì per la tenente Grace Hopper, e mentre si arrovellava assieme al suo team per capirne il motivo, alle ore 15.45 si accorse che una falena era entrata all’interno della circuiteria, causandone il malfunzionamento.
In realtà il termine bug era già stato usato in ambito teorico in precedenza, sin dal 1870, ma questa fu la prima volta che il problema si riscontrò nella pratica ed infatti, come annotò Hopper nel suo registro dopo averci anche incollato sopra l’insetto: «1545. Relay #70 Panel F (moth) in relay. First actual case of bug being found».
Come accennato in precedenza il computer (in italiano elaboratore o calcolatore) esegue “programmi”. Per programma informatico si intende una serie di istruzioni ben definite scritte in un linguaggio di programmazione che serve a risolvere un problema matematico più o meno complesso oppure ad automatizzare compiti ridondanti e tediosi per l’essere umano.
A sua volta un linguaggio di programmazione è una convezione di idiomi e simboli (come lo è anche il linguaggio umano) in grado di mettere in comunicazione ed impartire gli ordini da parte di un uomo ad una macchina.
Introduciamo brevemente uno dei tanti linguaggi di programmazione esistenti: il BASIC.
La sigla sta per “Beginner's All-purpose Symbolic Instruction Code”, in italiano “codice simbolico di istruzioni adatto a ogni esigenza dei principianti”. un linguaggio ad alto livello [2] fortemente tipizzato [3] sviluppato nel 1964 con lo scopo di essere un linguaggio semplice e rapido da implementare e da imparare (contrariamente ad altri linguaggi come Fortran o ALGOL).
[2]: Un linguaggio di programmazione si definisce di alto livello quando la sua sintassi si avvicina molto a quella del linguaggio umano (lingua inglese) e non dipende necessariamente dall’hardware della macchina, in opposizione ai linguaggi di basso livello (linguaggio macchina e assembly) i quali prevedono una conoscenza dell’hardware della macchina su cui si va ad operare e le istruzioni sono codificate da numeri binari.
[3]: Un linguaggio di programmazione si dice fortemente tipizzato quando richiede da parte del programmatore la dichiarazione esplicita del tipo di una variabile in fase di dichiarazione (se è di tipo intero, con la virgola, booleano, stringa etc.). Quando una variabile viene dichiarata di un certo tipo, questo non può essere modificato in futuro.
Un personaggio interessante che si occupò dello sviluppo di questo linguaggio fu Suor Mary Kenneth Keller. Nata nel 1913 a Cleveland, essa fu la prima donna nella Storia degli Stati uniti ad ottenere un PhD in informatica e, oltre ad essere stata una monaca cristiana, è stata anche una pioniera dell’informatica. Nel 1958 durante il suo dottorato partecipò come già detto allo sviluppo di BASIC e nel ‘65 iniziò ad insegnare al Clarke College di Dubuque nell’ Iowa, con l’obiettivo di rendere più fruibili e diffuse le poche informazioni sull’informatica presenti all’epoca.
Concludiamo con un’ultima tecnologia, il “wireless” (in italiano “senza fili”), di cui fanno parte il WiFi e il bluetooth. Questi sono strumenti ormai essenziali nella vita di tutti i giorni perché ci permettono di scambiare informazioni tra dispositivi senza essere fisicamente collegati gli uni agli altri.
Tra le due tecnologie vi sono similitudini e sostanziali differenze: entrambe operano ad una frequenza di 2.4GHz ma il bluetooth ha un raggio di azione molto minore del WiFi (10 metri contro 100) ed ha una velocità inferiore. Di contro il bluetooth usa meno energia del WiFi, permettendo un uso prolungato in presenza di un’ alimentazione a batteria (cellulari, cuffie wireless, tastiere wireless etc.). Ritornando alla frequenza operativa, anche in questo caso in realtà vi è una piccola differenza: il bluetooth ha una larghezza di banda divisa in 79 canali ed è in grado di cambiare canale con una velocità di circa 1600 canali/secondo, rendendo questa tecnologia più resistente alle interferenze (anche per esempio i forni a microonde operano sui 2.4GHz creando interferenza) della tecnologia WiFi in quanto riesce a cercare la “frequenza libera” ed a sintonizzarsi su di essa molto più velocemente.
Un’ultima differenza tra le due tecnologie è data dal fatto che la tecnologia WiFi è più sicura con standard di sicurezza più elevati (il bluetooth ad esempio non è protetto da password).
Agli albori della tecnologia wireless un contributo fondamentale è stato dato da Hedy Lamarr, pseudonimo di Hedwig Eva Maria Kiesler: nata nel 1914, è principalmente conosciuta per essere stata una diva del cinema hollywoodiano e la prima attrice nella storia a recitare una scena completamente nuda. Ma prima di intraprendere questa carriera, è stata una studentessa di ingegneria ed inventrice: essa sviluppò assieme a George Antheil (un pianista, compositore ed inventore statunitense) un sistema di guida a distanza per i siluri ed un protocollo di trasmissione tramite il quale, via radio, l’apparato ricevente otteneva le informazioni nello stesso ordine con il quale erano state trasmesse. Le basi di questa tecnologia, sebbene non presa in considerazione durante la Seconda Guerra Mondiale, sono servite per lo sviluppo delle tecnologie in uso tutt’oggi in ambito della telefonia, Gps ed in generale nelle reti wireless viste in precedenza.
HOPPER, KELLER AND LAMARR: THEIR CONTRIBUTION TO TECHNOLOGY
The purpose of this article is to show in an informative way, therefore more usable to a public with little knowledge on the subject, some particular female characters, who have contributed to the development of information technology or technologies in use today.
I would like to start with the origin of the term "bug".
Surely at least once in your life you will have run into this word, and you may have wondered what it can have to do with a computer.
To figure out, we have to go back in time exactly to 9 september 1947. We find ourselves inside Harvard Mark II’s computer, which occupies 370 square meter and weighs about 25 tons. It operated on a circuit logic based on mechanical components called relay [1]. The sheer amount of those elements caused a noticeable issue, a high rate of breakage due to components worn. Since the amount of those elements amounted in the orders of the thousands, on a massive area, it was extremely difficult to point out the worn out component, if not impossible.
[1]: A relay is made of a copper coil that, when electric current is made to flow through, creates an induced magnetic field that closes or opens an electric contact making current flowing or not. This component is used to drive high current flows and in the past, before transistors were invented, it was used to create logic gates inside circuits of a calculator.
To verify if the machine was working properly, a first program - that had a well known output - was loaded in, and the response of the machine was then confronted with the known answer. If it was not the right solution the machine would undergo a diagnosis of the state of the components of the circuit’s area that was used to calculate. After it was assured that there were no broken components, or those had been swapped out for new ones, the actual program was loaded in and was run another time so it could be assured that there were no breakage during the processing.
But that day the starting test failed on rear admiral Grace Hopper, and while looking for the reason of the malfunction, at 15.45 she noticed that a moth got into the computer’s circuits, causing the machine to fail.
Actually the word “bug” had already been used in the scientific field before, since 1870, but that was the very first time that it was encountered during functioning. In fact Hopper glued the insect on the notebook over writing down "1545. Relay #70 Panel F (moth) in relay. First actual case of bug found".
As said before the computer executes “programs”. For program is intended a series of defined instructions written in a programmer language that have the purpose to solve a more or less difficult mathematical function or to take care of tedious or repetitive tasks for humans. The programmer language is made of an amount of idioms and symbols (just like human’s languages) capable of communicating between man and machine and obeying man’s orders.
We are now introducing one of many programming languages now existing: BASIC.
The acronym stands for “Beginner's All-purpose Symbolic Instruction Code”. It is a high level [2], highly typed [3] language developed in 1964 with the focus of being simple, fast and easy to learn (opposed to other languages like Fortran or ALGOL).
[2]: A programming language is defined as high level when it’s syntax is close to the human language (precisely english) and it does not necessarily depend on the hardware, opposing to low level languages that foresee a knowing on the machine’s hardware and the instructions are coded with binary strings of numbers.
[3]: A programming language is defined as high typed when it requests from the programmer the explicit declaration of the type of the variable in the declaration stage (variable could be an integer number type), float (comma notation), Boolean (True or False), string (a word such as “Hello”), etc.). When a variable is declared of a certain type it cannot be changed afterwards.
An interesting character that worked on developing this language was Sister Mary Kenneth Keller.
Born in 1913 in Cleveland, she was the first woman ever in the history of the USA to graduate with a PhD in informatics and, other than being a christian nun, she has also been a pioneer of informatics. In 1958 during her PhD attended the development of BASIC and in 1965 started teaching at the Dubuque Clark College in Iowa, with the intent to make the little knowledge known at the time more usable and widespread.
Closing out with the last technology: the wireless technology, which comprehends WiFi and Bluetooth. Those are nowadays essential daily instruments because they allow us to exchange data between two terminals without actually being linked together.
Between these two technologies there are similarities and differences. They both work a 2.4GHz frequency but bluetooth has a far less working area (10 against 100 of the WiFi) and a lower data exchange speed. On The Other side bluetooth uses less energy than WiFi, allowing a longer use in the case of battery powered devices (phones, wireless headphones, wireless keyboards, etc.). Back on working frequencies, actually, there is a difference too: Bluetooth had a band spread on 79 channels and is capable of changing channels at 1600 channels/second, making this technology less affected by interferences (for example microwaves work around 2.4GHz) than WiFi since it finds a “free frequency” and pairs to it faster.
A last difference is that the WiFi technology is safer as it has higher security standards (bluetooth for example is not protected by a password).
At the beginning of developing wireless technology, a fundamental contribution was given by Hedy Lamarr, pseudonym of Hedwig Eva Maria Kiesler: born in 1914, she was mainly known for being a Hollywood star and the very first actress to act completely naked. But before taking this path she has been an engineering student and inventor: she developed with George Antheil (a pianist, composer and inventor from the USA) a remote control system for torpedoes, and a system that by radio, allowed the receiving end to receive the informations in the same order they were sent. The fundamentals of this technology, even if not used during WW2, were extensively used to develop nowadays technologies in the fields of phones, gps, and overall progression of wireless nets.
ความคิดเห็น