One of the most complex occupations that are in demand today is software engineers or software developers. Now, these developers use various tools for each of their projects, especially in handling millions of lines of computer codes. They run those codes using different tools in order to help edit, construct and test systems and also for project management to get their programs running smoothly.
A team of computer scientists at the University of British Columbia has turned Amazon’s Alexa into a tool for software developers, making the virtual assistant take care of some routine programming tasks, which helps to increase their productivity and accelerate workflow.
The Origin of the Idea
Switching between different tools can become fairly complicated because each tool uses a unique syntax and you have to be familiar with how they are put together.
According to Nick Bradley, who is the lead researcher for this research, “The idea to use Alexa came out of my frustration from using these different tools and having to spend so much time looking up how to do it and use those tools together.”
Bradley, along with computer science professors Reid Holmes and Thomas Fritz, decided to do an experiment to find out whether Amazon’s Alexa could help with this process. They sought to provide software engineers with an easy and conversational language that they could use to ask Alexa to accomplish some of their tasks in the same way that you would ask the virtual assistant for a weather forecast or to play your favorite songs.
Bradley and his colleagues said that it was more than just training Alexa with some important phrases and mapping different commands to the work, they also had to determine the usual multi-step tasks that software engineers are performing and then create a system that is capable of automating those tasks. After going through all of that, the researchers then asked 21 engineers from local Vancouver software companies to try out their system and evaluate it.
Setbacks or Hurdles
The tool was indeed useful and provided lots of positive feedback; however, there was still one stumbling block. As stated by Bradley, “The biggest problem with this venture was using voice commands in an office setting since they found it distracting to their neighbors.”
According to the computer scientists, their next development will be to create a chatbot that will carry out a similar function so that engineers can type nominal requests and have the system execute their multi-step tasks in order for them to focus on the more important parts of their jobs.
The Goal of the Research
Reid Holmes, who is a computer science professor at the University of British Columbia and one of the contributors in this research, says that their research is part of an endeavor to figure out how software engineers carry out their jobs.
“The pace of change in the software field is so fast that engineers don’t have time to be introspective and think about the way they work,” he said. “Our job in academia is to step back and really think about how we can better support engineers to quickly and correctly build the kinds of software we depend upon in our modern society. Systems keep getting larger and more complex and using personal assistants could be one way to help developers be more effective in this fast-paced environment.”
Bradley and his colleagues also acknowledge that these virtual assistants could also be programmed to work for people with a different profession like accounting, law, or even medicine.
These virtual assistants are indeed most flexible; in fact, I can just imagine seeing a doctor who is reading a patient’s medical history and asking Alexa to look for relevant information on the patient’s condition so that he or she can go on doing other critical tasks.