Virtual assistant
Student: Oliver Moloney
Meet me here :)
Criteria
Process planning
​
The initial research question I wanted to investigate was "How can creating a personal assistant improve my programming skills?", another inquiry question of mine was "Does a personal assistant improve your life?". I used a lot of similar resources, for example coding websites and courses, like GitHub, Udemy, CodeAcademy, and I used resources like video tutorials for specific functions. I chose the global context 'Scientific and technical innovation'. I didn't encounter many problems it as just a matter of finding the right resources. I already knew that this project would be quite difficult, but I just discovered that I'd need to do a lot of research into the python documentation.
These are pictures of my source code.
Link to my files for my product on GitHub
Process taking action
]Since I was creating a digital product, I didn't need any materials, I only needed my computer. In the process of creating my product, I first looked at what I packages and modules I needed to include, and I went from there. As I was developing my product, I constantly was creating new lines of code, referring to my sources like the python documentation, and any videos for certain parts. I encountered constant errors in my code, as I went on I had to continually fix and edit, which led to the process being very long. Another issue I encountered was I actually couldn't achieve one of my criteria, I couldn't make my program have an interface, which was disappointing, I trie so many variations of my code, but I just couldn't make it work.
Pictures
1. My final product must function on Mac OS.
2. My final product must have an interface, like an application, this can be a standalone application or using tkinter.
3. My final product must be able to respond to questions or statements I've programed.
4. My final product must be able to have voice recognition.
5. My final product must be able to "speak".
6. My final product must have a calendar and be able to connect to google calendar calendar and tell if I have events on a certain day.
7. My final product must be able to take notes for me.
Motivation/personal interest
My personal motivation for this personal project is that I was always interested in programming. I created some small things in other languages before, but I never had a lot of motivation to continue or finish products, however because this was for school I had to finish it, so I suppose I chose this project because I was interested, and school gave me a good motivation.
This is a terminal it creates where the user can see what's said. (They can also hear what's being said though)
The "Listening, speak please", is not actually said by the virtual assistant, I just incorporated to know if the listening function was working.
This is my favourite feature, and I was really glad I was able to incorporate it, basically I can just have the program running in the background, you can say multiple things, but it's all similar to "Take a note.". Then you can dictate, as long as you want, and when you stop, a note, or a 'txt' file will open on your desktop, and you can save it for later.