~~NOTOC~~ ====== Proposed Projects For Winter 2023 ====== Below is a list of 4080/4088/4480 projects proposed by faculty members. More projects may be added once they come in. Please contact the supervisor directly you are interested in a project. You can also contact faculty members individually to discuss possible projects. Click [[https://lassonde.yorku.ca/eecs/faculty/|here]] to see a list of faculty members, their research areas and their contact information. ====== Mining the Dark Web for Cybersecurity Threats ====== **Course:** EECS4080/4480 **Supervisor:** Prof. Uyen T. Nguyen **Contact:** utn@eecs.yorku.ca The student will be responsible for one or more tasks on the following list depending on the complexity and scope of a task. * Searching internet resources (Google, reddit, dark web link archives, etc.) for links to dark web sites of interest * Grouping and categorizing dark web pages * Developing graphs representing the data present on the found dark web sites * Assisting in the development of a dark web crawler * Assisting in the development of an information retrieval system * Optimizing the performance of the crawler and information retrieval system **Required technical skills:** * Experience building programs in Python * Good understanding of object-oriented design * Some experience with HTML and JavaScript * Experience with Windows and Linux environments * Experience with Excel and/or a commonly used graph generation program **Required non-technical skills:** * Strong teamwork skills * Strong communication skills * Good organizational skills * Good analytical thinking skills * Good time management skills (there will be weekly check-ins) **Desired skills:** *Knowledge of information retrieval methods **Notes:** * Email Prof. Uyen T. Nguyen (utn@eecs.yorku.ca) a resume listing courses, projects and prior experience relevant to the project. * Some of the tasks listed above require the use of Scrapy. A student can learn Scrapy in the winter 2023 term and take the project course in summer 2023. Please contact the professor to make arrangements for this case. ====== TA Assignment Application and Preference System ====== **Course:** EECS4080/4088/4090 (For Winter 2023, only EECS4080 is offered. EECS4088/EECS4090 start in a Fall term and lasts for two terms.) **Supervisor:** Prof. Jonatan Schroeder **Contact:** jonatan@yorku.ca The EECS department hires over 200 teaching assistants (TAs) every term. Like many other departments at York and elsewhere, the requirements to assign each of these TAs to an individual course include many complexities, such as: * Guaranteed positions for graduate students that depend on such positions for their funding; * Seniority requirements, which give TAs with experience priority in choosing their courses; * Course demands and instructor preferences; * Scheduling constraints based on TA availability for individual sections; * Different skills and requirements in each course; * Changes in availability as the term starts, requiring changes that can snowball into other courses. One of the biggest challenges in assigning TAs is getting access to the information required to perform an optimal assignment. In this project you will create a Web application that gathers two of the most important aspects of the required information: - TA applications, course preference, schedule availability, qualification, general skills, and experience; - Instructor preference: identify qualified TAs, rank applicants, add notes. This project should allow the information above to be provided using a Web interface, accessible on the Web. All information should be gathered in a database in tables that can be used (separately) to inform the assignment process. The application should maintain a reasonable level of security, and should ensure that any sensitive information about TA applications and instructor preferences is kept private and secure. Nobody should have access to the information submitted by a TA other than the TA itself and the instructors assigned to the courses that the TA applied for. The output of this project will be delivered as an open-source project, and although it will focus on requirements in the EECS department, it is intended to be developed in a manner that is still useful in any context outside EECS where such an input is expected. This project may be split between two students working in coordination with each other. **Required skills:** EECS 1012 or equivalent experience. Ability to work with Web development, including backend and frontend development. Ability to work independently. **Recommended skills:** EECS 3311 or equivalent is strongly recommended. Experience with open-source development, including Git and typical project management (issues, pull requests, etc.). Experience with packaging and deployment of Web applications. Experience with interpreting strict formal requirements. /* ====== Visualization of Course Maps at YorkU ====== **Course:** EECS4070/80/88/90/4480 **Supervisor:** Prof. James Andrew Smith **Contact:** drsmith@yorku.ca Students at York have long been missing the ability to visualize the connections between courses when planning or reviewing their progress through their program. We would like to make a web-centric visualization tool available to students that scrapes data from the official online course calendar so that students can better inform the decisions they make while studying at York. This is a continuation of an existing open-source project written in Python. Interested students will be asked to improve the existing code base so that: 1. A visualization can be produced and displayed on the web 2. Corrections to the existing data set (the University's calendar website) can be submitted to an online repository and reused Students involved in the project will be required to maintain public-facing documentation. The result of this project will remain open source for further development by students, staff and faculty. **Required skills:** General programming skills **Recommended skills:** Experience in Python (and perhaps Beautiful Soup) and web-centric tools ====== Privacy assessment of online services and platforms ====== **Course:** EECS4480/4080 **Supervisor:** Yan Shvartzshnaider **Contact:** Please complete this form: https://forms.gle/oVVg6hEConSNf9p28 For any question email: yansh@yorku.ca This project involves performing privacy assessment of online services and platforms. The student will help design usable-privacy tools that analyze information handling practices of online services. For prior project, see work https://wiki.eecs.yorku.ca/course_archive/2021-22/F/4080_4088_4090_4480_4070/4088_presentation_schedule **Required skills:** Ability to work indepently. Experience in full-stack development and using Jupyter and R notebooks for data analysis. **Recommended skills:** Experience with Machine Learning, Natural Language Processing techniques, HCI design. Interest in usable privacy, critical analysis of privacy policies and privacy related regulation. */