Posts

Ada the Language: Alive and in Flight

Today is Ada Lovelace Day, so there’s no better time than the present to talk about the programming language named after her. Everyone sort of knows that there was a programming language named after Ada, who developed the first known computational algorithm for a machine. What most don’t know: What Ada, Countess of Lovelace, was to abstract big thinking, the Ada language is to big doing. Presumed dead by many, Ada is still the go-to language for many applications — including the Boeing 787 and Airbus 380.

The most expensive, extensive code project ever

Ada was designed in the mid-1970’s for the Department of Defense, by four different teams of contractors whose proposals were winnowed down to one specification over two years, it was to be the standard language of the US military, which at the time wallowed in at least 450 languages. Many of them were tied to one hardware architecture, and few were amenable to the sort of modular programming needed to build scalable, reliable systems for life-and-death applications, such as airplane control systems.

Ada was intended from the start for use in very large, long-lived systems, many of which are built around “embedded” computers such as those in satellites and military gear. A top goal was to reduce the likelihood of programmer errors. Another was to minimize the likelihood that a program would fail unexpectedly. Robust exception handling and run-time error checking served those goals.

adasource

Ada source code. This simple function creates an array of arrays.

Strong typing was a must, but Ada also incorporated several computing approaches that were then only emerging:

  • Object-oriented programming, at the time a new approach to create abstract objects and methods, rather than directly manipulating memory structures.
  • Concurrent programming, which let a computer run multiple, independent tasks at once.
  • Real-time programming, for software which can keep up with what’s happening right this second (or microsecond) in the real world.
  • Systems programming, which lets programmers operate close to the hardware in use, rather than having it abstracted away.
  • High integrity systems. Ada was to be used for American military and intelligence systems. Data loaded for one purpose couldn’t be covertly accessed for another.

The initial Ada specification was delivered in 1980, and became an ANSI standard in 1983. Government moves slowly, though, so it wasn’t until 1991 that Congress’ Ada and Its Integration Mandate declared that nearly all government systems would be coded in Ada, which was updated in 1995 to be the first object-oriented language standardized under the International Organization for Standardization, or ISO.

Jean Ichbiah, Ada architect

ada-creator

Jean Ichbiah, Ada’s inventor and lead architect.

Claims that Ada was designed by committee underestimate the role of French computer scientist Jean Ichbiah, a Honeywell employee whose Green language, one of the four candidates, was chosen as the basis for Ada. Ichbiah led Ada’s design until it was finished in 1980, then founded his own company to continue Ada standardization and build compilers. Later, he invented the FITALY keyboard layout optimized for stylus input on tablets and PDAs.  Ichbiah passed away in 2007.

What happened to the “Ada mandate”?

Even as the government standardized on Ada, mass-market computers and software were beginning to replace — actually, to overrun specialized systems. Why use a $50,000 computer when a PC from the mall could do the job, one which nearly all developers were familiar? The Department of Defense, seeing the opportunity to spend less and have fewer arcane systems, abandoned the Ada Mandate in 1997 and began to look to what were then called “commercial off-the-shelf systems.” These cheaper, more widely known systems had better support for C and Java than for Ada, which was seen as a niche opportunity by tech vendors.

Ada today: Going to the moon

Lunar IceCube

The Lunar IceCube, a “pathfinder experiment” for NASA’s future small planetary missions, runs JavaScript. Haha no, it’s being programmed in SPARK, which is based on Ada.

Ada is still in use today. The language spec has been updated and modernized several times, most recently in 2012. It’s deemed a must in many defense-related systems where reliability and safety are critical, or where thousands of programmers may work on a single code base. Much of it isn’t discussed on Reddit’s Ada subreddit, though, because many Ada programmers are sworn to government secrecy for security. They literally can’t tell you what they’re working on. There are

NASA’s CubeSat project launched a dozen satellites built at universities into orbit in 2013. Carl Brandon, a physics professor at Vermont Tech, says, “The Vermont CubeSat is the only university CubeSat that successfully completed its mission: eight were never heard from, one fried its batteries the first day (software error), one worked a little for less than a week, and one for four months.” Vermont Tech had used SPARK, a language based on the Ada spec, for their flight software. Their Lunar IceCube, scheduled for launch in 2018 to search for ice on the Moon, is likewise being programmed in SPARK.

Lunar IceCube

Arists’s rendering of Lunar IceCube at work.

In civilian airspace, Boeing’s 777 airplane, which revolutionized airliner avionics, was software largely built on Ada. The newer 787 Dreamliner, and Airbus’ A380 and A350, are also programmed largely with Ada. Aircraft makers choose Ada both for safety and for scalability of the project itself — some 10,000 people worked on the 777 project.

Ada is not as widely used as languages such as C, C++ or Java, and it’s not a language intended for home hacking. There are a relatively small number of Ada projects on GithubThen again, Ada Lovelace’s own algorithm was never run, because Charles Babbage never built a Difference Engine on which to run it. Sometimes, a concept itself can be world-changing. The Countess of Lovelace showed how a machine could do math, and explained that it could just as well make music. Ada the language showed how algorithms for the Difference Engine’s descendants could be more reliable, more scalable, and more amenable to handling the most complex ideas human minds could conceive.

Ada links for today’s engineers

Development firm AdaCore‘s engineers, many with decades of experience, provided us with a terrific reading list to explore Ada’s current role in the world:


Are you a woman interested in exploring a career in engineering alongside likeminded women? Hackbright Academy offers a 12-week intensive software engineering fellowship for women. You can learn more about what Hackbright has to offer at our upcoming Info Session this Wednesday, October 12th in person or via livestream.

 



Ada Lovelace Day 2016 – A Map of Events Worldwide

Today is Ada Lovelace Day, the international celebration of achievements of women in science, technology, engineering and math. There’s a huge, interactive database of events to attend.

Ada Lovelace Day Events

Click to go to the interactive map, list, or calendar.

British activist and journalist Suw Charman-Anderson founded Ada Lovelace Day in 2009. Her official site hosts an interactive database of 2016 events and activities. You can view them as a calendar, a list, a map, or photos. You can narrow events to your local area, and export them to an ICS file to load onto your personal calendar.

In Hackbright’s San Francisco / Silicon Valley neighborhood, there are three events worth checking out:

  • Oct 11, Tuesday, 6:30-9:00 pm
  • Oct 12, Wednesday, 5:30-8:00 pm
  • Now through December 12
    • The Computer History Museum’s exhibit Thinking Big: Ada, Countess of Lovelace features historical documents from Ada’s childhood, correspondence with her tutors including Charles Babbage, and paintings and photographs from her life. Admission is $15.

Charman-Anderson says the goal of Ada Lovelace Day is to “increase the profile of women in STEM and, in doing so, create new role models who will encourage more girls into STEM careers and support women already working in STEM.”

She adds:

The inspiration for Ada Lovelace Day came from psychologist Penelope Lockwood, who carried out a study which found that women need to see female role models more than men need to see male role models. “Outstanding women can function as inspirational examples of success,” Lockwood said, “illustrating the kinds of achievements that are possible for women around them. They demonstrate that it is possible to overcome traditional gender barriers, indicating to other women that high levels of success are indeed attainable.”

She chose Ada as her archetypical role model. In 1842 the Countess of Lovelace wrote down what is believed to be the first known algorithm meant for a machine, her friend Charles Babbage’s Difference Engine. A working Difference Engine wasn’t built until 1991, as a museum piece. But the Countess’ pseudo-code has inspired engineers from the start.

Hackbright Academy is eager to promote Ada Lovelace Day, as we work to help women software engineers become just such “inspirational examples of success” by raising awareness, access, and the size of the candidate pool.

If you know of an event not listed on the site, you can create an account and add it yourself.

Any questions or problems? We love puzzles! Please do email me and we’ll help you participate in the day with us.


Inspired to become a programmer? You can become a software engineer in 3 months at Hackbright Academy, the leading engineering school for women in San Francisco. Learn more about our program at our upcoming Info Session on October 12th in person or via livestream.



10 Girl Geeks Who Rule – Celebrating Ada Lovelace Day

For the annual celebration of women in science, technology, engineering and math – “Ada Lovelace Day” – we celebrate the women engineers who have climbed the ladder to leadership positions. Women make up 5% of the technology industry and yet fill only 9% of executive roles in the field. These women executives who can code are role models who inspire, motivate and give back to the next generation of female technologists by blogging and speaking.By Angie Chang (Director of Growth, Hackbright Academy)

For the annual celebration of women in science, technology, engineering and math – “Ada Lovelace Day” – we celebrate the women engineers who have climbed the ladder to leadership positions. Women make up 5% of the technology industry and yet fill only 9% of executive roles in the field.

These women executives who can code are role models who inspire, motivate and give back to the next generation of female technologists by blogging and speaking.

#1 – Marissa Mayer

Sitting pretty at Yahoo!’s helm as CEO (and in the September issue of Vogue magazine), Google’s first female engineer has climbed the corporate ladder – by jumping companies – to the highest position possible at Yahoo! Along with her role as CEO at Yahoo!, Marissa is a board member, angel investor, wife and mother who lives in San Francisco. Follow her at @marissamayer.

#2 – Padmasree Warrior

The former CTO of Motorola, Padmasree Warrior is currently the CTO of Cisco Systems. She is also a board member at Gap, Inc and an occasionally contributes to the Huffington Post. She loves art, photography, Haiku, food, and is passionate about helping women in tech. Follow her at @padmasree.

#3 – Selina Tobaccowala

An entrepreneur who started Evite out of her Stanford dorm room (and sold the company to Ticketmaster in 2001), Selina Tobaccowala is currently the Senior Vice President of Engineering and Product at SurveyMonkey. She has spoken at conferences and to engineering fellows at Hackbright Academy, where women are trained to become software engineers. Follow her at @selinato.

#4 – Kimber Lockhart

Kimber Lockhart was a computer science major who started Increo Solutions with some friends from Stanford University. In 2009, Increo was acquired by online file sharing and enterprise cloud solution company Box (for their in-browser content viewing and sharing capabilities). Today, Kimber is now the Senior Director of Web Application Engineering at Box and frequent speaker. Follow her at @kimber_lockhart‎.

#5 – Sandra Lerner

Publicly-traded American multinational corporation Cisco Systems (a leader in the design, manufacture and sale of computer networking equipment) was co-founded by Sandra “Sandy” Lerner. After Cisco, animal welfare advocate Sandy started Urban Decay cosmetics (acquired by Moet-Hennessy Louis Vuitton in 2000). She holds master’s degrees in computer science, statistics and econometrics, and a bachelor’s degree in political science. Follow her at @Ava_Farmer.

#6 – Jocelyn Goldfein

From a software engineer intern at Netscape in 1995 to Vice President of Engineering and Product at VMware in 2010, Jocelyn Goldfein has successfully climbed the Silicon Valley career ladder – and gives advice to young women in technology. Today, she is an engineering director at Facebook, where she has worked on products including the newsfeed. Follow her at Facebook.

#7 – Shilpa Dalmia

Mompreneur Shilpa Dalmia co-founded ActivityHero to remove the project management from parenting, making it easy to find engaging classes and activities for kids. As ActivityHero’s CTO, Shilpa has spoken at Hackbright about the dev stack. She speaks candidly about picking up new programming languages and venturing back to the workforce after having kids. Follow her at @shilpa_dalmia.

#8 – Joyce Park

Joyce Park is the co-founder and CTO at PandaWhale, a fun Internet service for consuming, saving, and organizing great content found on Twitter, Facebook, and the Web. She is the former co-founder and CTO of Renkoo, and was an engineer at Friendster, KnowNow and Epinions. Joyce holds a multiple graduate degrees in history and this photo credit goes to her co-founder Adam Rifkin. Follow her at @troutgirl.

#9 – Liz Crawford

A serial CTO and entrepreneur, Liz Crawford is currently the CTO at Birchbox, a New York-based beauty subscription service. Liz previously was CTO at Aprizi (“Pandora for shopping”) and had co-founded time management startup Crono as CTO. She studied computer science in undergraduate studies in Australia (where she grew up!) and then earned a Ph.D in computer science from Carnegie Mellon University. Follow her at @liscrawford.

#10 – Niniane Wang

Niniane Wang is the CTO at Minted, a global community of independent graphic designers and an online store that prints and sells the best of their designs in the form of paper goods. Previously, Niniane co-founded a coworking space and was an engineering manager at Google and Microsoft, spending five years at each. She graduated from Caltech at the age of 18 with a degree in computer science, and is a co-inventor on 30 patents (in various stages of filing). Follow her at @niniane.