Name: Virginia King (Gin - so much harder to misspell)
Email Address: email@example.com
IRC Nick: pindy
Web Page / Blog / Microblog:
I do not have these things. Give me a day or so. In the mean time, I run a company that teaches kids to be excellent nerds during the school holidays. If you are interested in that then have a look at www.inventtheworld.com.au
EDIT: I have resurrected an old wiki that I am now using to store my notes as I try different things and make initial contributions. Please forgive the language as it's very much just my attempt to keep track of what I am leaarning rather than intended for others. OPWNotes
Location: Melbourne, Australia (GMT+10)
Education completed or in progress (i.e., university, major/concentration, degree level, and graduation year):: Graduated in 2013 with a Bachelor of Computer Science with distinction (Royal Melbourne Institute of Technology). My major was in Application Programming.
How did you hear about this program?: Following the Ada Initiative on Twitter.
Please describe your experience with Debian as a user and as a contributor (Please include the information about the required contribution you made to the project you are interested in here):
I have been using Debian and Debian (Ubuntu, Mint, Raspbian etc) derivatives for 8 years now. My experience as a coder and computer scientist has all been based in Unix systems and primarily in Debian based systems. As such I find it a little difficult to think about what parts of my experience as a user are unique to Debian. If I picked one thing that I would say keeps me with the Debian project then Apt is it. It is simple, elegant and easy to use.
- Cloned and branched the git repo for debbugs.
- Added a "Contributing" section to the README detailing how to get the source code and submit patches using git.
- Converted the document to markdown syntax.
- Updated some outdated information.
- Generated .patch files for my changes and submitted them to the project mentor using git format-patch.
Please describe your experience with any other FOSS projects as a user and as a contributor::
I teach C (and C++), and Java at the Royal Melbourne Institute of Technology as a tutor. I use and teach the use of FOSS tools every day. I don't think I would be anywhere near as good a coder if I hadn't had such a fantastic set of tools available to me, for Free, built in to my OS. Terminator, vim and/or geany, git, gcc, valgrind, gdb (forever and ever gdb), ssh, scp and so many other incredibly powerful tools. Instructions just three letters away and help so freely and voraciously available in the community.
I also run school holiday programs for kids, teaching them about games, games programming and lego robotics. There is a heavy focus on the use of Raspberry Pi computers (running a custom build of Raspbian). Kids code using Scratch, Python and Pygame, all invaluable FOSS tools that I have been able to take advantage of.
I am not a contributor. But I should be and I plan to be. OPW is where I would like to start.
Please describe any relevant projects that you have worked on previously and what knowledge you gained from working on them::
Capstone research project – Reinforcement Learning for Capture the Flag
As part of my final year of uni I was part of a three person team who adapted and extended an Open Source third party reinforcement learning toolkit written in Python to create an agent to play Capture the Flag using reinforcement learning techniques to model human strategies to the problem.
The complex nature of the problem meant that I faced a very steep initial learning curve, I didn't know Python and I didn't know about reinforcement learning. This project taught me a lot about how to research and find information, from peers, from mentors and from written research and practice. It taught me to be happy asking stupid questions.
The project was very research focussed and involved processing, management and analysis of large sets of data in order to form hypotheses relating to the performance of the agent and extrapolate the impact of particular state variables on overall outcomes. It brought home the importance of time and planning in large scale data and analysis, especially when you're talking about minute, iterative improvements over long periods.
I came to the project six months in when the backbone of the agent was already in place. A large part of my involvement was testing, tracing and fixing bugs in other people's code. This gave me a deep appreciation for the joys of git and in-depth, descriptive commenting and documentation.
I implemented a Python/XML logging module to capture state information and plot movement and state data and a heat map generation module (using matplotlib) in Python to plot average movement across multiple games.
As part of a team of three, I contributed to the creation of a distributed rendering system for a 2D graphical game simulation using multiple Raspberry Pi computers.
I created code base for graphics display in C using Open VG and Open GL ES and I helped to create a code base to test and evaluate comparative performance in Python and Flash. I largely learned from this that I do not want to be a graphics programmer.
Assisted with the implementation of multithreaded bi-directional TCP messaging and with the implementation of Automake for cross platform development and distribution. I gained a lot of exposure to basic networking issues as our initial implementation moved from UDP to TCP. I was exposed to multi-threading using pthread.h to manage the CPU cycles of the network listener on the client machines and to manage the graphical display.
What project(s) are you interested in (these can be in the same or different organizations)?:
Writing and Improving Debbugs documentation and Move forward reproducible builds
Who is a possible mentor for the project you are most interested in?:
Please describe the details and the timeline of the work you plan to accomplish on the project you are most interested in (discuss these first with the mentor of the project)::
Will you have any other time commitments, such as school work, another job, planned vacation, etc., between December 10, 2013 and March 10, 2014?:
Two weeks in February where I will be in the UK and France, I will be able to work during this time but probably not as consistently. I am also hoping to attend Linux Conf Australia from the 12th to the 16th of January but plans are not set in stone (and very little travel time). Both of these could be reassessed if this application was to be successful.
Background: something about yourself: technical skills, experience, etc. Who are you?:
This is my first proper foray into the FOSS community. I have skated around the edges for years and never been quite sure where to start, so I am a combination of thrilled and nervous about this application.
I got into tech through games. I play a lot of games and I love them, as a way of teaching, of telling stories and as art.
What it turns out I actually like about tech? I am a tutor who teaches C at university (among other things: C++, Java, basix Unix skills and project management) and it's the language I am most comfortable in. So needless to say I enjoy debugging, I enjoy thinking about efficient ways to do things, I enjoy that I go to my job every day and I am challenged. I enjoy that there are no simple answers to the questions that I get asked.
I also teach kids various techy things, mostly to do with games, games programming and robotics using a bunch of FOSS tools.
Why Debian? Why are you choosing Debian? What attracts you about Debian? :
I believe in FOSS, I have benefitted hugely from it's existence and the work of the thousands of contributors to it. I use Debian every day and it seems the logical place to try and start giving back.
Are you applying for other projects in OPW? Note that letting us know about this does not impact your chances of acceptance or rejection with us; we ask this because it helps us to resolve deduplications wherein an applicant is accepted for multiple projects.:
Apart from both of the projects listed here, I have not yet applied for any other projects with OPW.