Andrew Thangaraj

Title: Learning from IITM's Data Science Program

Abstract: : IIT Madras' undergraduate data science program (onlinedegree.iitm.ac.in), started in Jan 2021, with online course delivery and in-person exams, has more than 15,000 enrolled students today. How can high quality education in data science be delivered to such a large number of students? How is quality measured and maintained? How are the students really doing? The talk will touch upon answers to the above questions and further elaborate on the promise such programs hold for the future.

Bio : Andrew Thangaraj is a Professor in the Department of Electrical Engineering, Indian Institute of Technology (IIT) Madras. His bachelors was from IIT Madras (1998) and PhD from Georgia Institute of Technology, Atlanta, USA (2003). His research interests are in the areas of information theory and error-control coding, and he has served on the editorial boards of the IEEE Transactions on Communications and the IEEE Transactions on Information Theory. From Nov 2011, he has been one of the Coordinators of the National Programme on Technology Enhanced Learning (NPTEL, nptel.ac.in), a multi-institutional project funded by the Ministry of Education and managed by IIT Madras. At NPTEL, he played a key role in the starting of online courses and certification on a massive scale through the SWAYAM portal (swayam.gov.in). He is currently the Principal Investigator for SWAYAM. At IIT Madras, he led a team of faculty that started the Bachelor of Science Degree in Data Science & Applications (onlinedegree.iitm.ac.in), launched in June 2020, with online course content delivery and in-person exams. He is currently a coordinator for this program.

Sriram Rajamani

Title: AI Assisted Programming

Abstract: : We present a vision for a futuristic programming environment, where ML models and logical rules co-exist and evolve over time. We substantiate our vision using three case studies: (1) safe code generation using large language models, (2) Heterogeneous data extraction, and (2) regulatory compliance for online advertising. Using these case studies, we hypothesize what such a futuristic programming system can do to balance productivity with safety, security and reliability, present new research results, and point to directions for future work.

Bio : Sriram Rajamani is Distinguished Scientist and Managing Director of Microsoft Research India. Sriram is an ACM fellow, INAE fellow, and winner of the Computer Aided Verification Award. His work has impacted both academic and industrial practice in programming languages, systems, security, and formal verification. He is currently working on reimagining programming by combining machine learning with program analysis and synthesis. Sriram did his PhD in Computer Science at UC Berkeley.

N S Kumar

Title: Teaching Data Structures - My View

Abstract: : Data structure remains to be a core course in the study for a degree in Computer Science. Is this being taught the right way? More often than not, a data structure is taught as an implementation than an interface. A list is always considered as a linked list. Alternate implementations for the interface of a data structure are rarely discussed. Separation of interface from implementation leading to flexibility in changing the implementation without affecting the client is not highlighted. Any data structure would have number of components. Could we refer to a component without exposing the implementation? Could we have an opaque structure standing for the position? Could we have a way to traverse the data structure if it is semantically allowed? Do all data structure libraries support this concept? If yes, why is that we do not teach this concept in our courses? This talk shall try to address the following features:

  1. Highlight the concepts of interface and implementation
  2. Provide an opaque data structure for locating a component and traversing the data structure
  3. Show that an interface can remain immutable when the implementation is changed

Bio : N S Kumar completed his Bachelors degree in Mechanical Engineering from U V C E, Bangalore in 1983 and Masters in Computer Science from I I T, Madras in 1986. He was Scientist in I S R O Satellite Center and Gas Turbine Research Establishment. In 1988, he started a company called Hitech Computer Institute and ran the company successfully for 10 years. He joined SystemLogic as General Manager (Edu) in 1998 and became General Manager (Projects) in 1999. He quit SystemLogic in April, 2000 and since then he is Director of M/s Kumaradhara Consultancy Pvt Ltd. He taught as a visiting professor in the depart of Computer Science at PESU, Bangalore from July 2010 till now. He also offered a course “CS for non CS students” at IIT Dharwad. He is also active in ACM and is the vice-chair of iSIGCSE – Indian chapter of special interest group in Computer Science Education. He has been in Training, Consulting & Software Development for over 35 years. He offers consultancy in Object Oriented Analysis and Design. He has offered consultancy in porting legacy applications and interfacing software components. He has also offered consulting in system programming in unix domain. He is well known as a trainer offering training in various skills to number of Corporates in and outside Bangalore. He has a unique method of training where no slides are used and solutions are developed right from scratch in front of the participants. His lectures are interactive and he involves the participants throughout the sessions. His talks make the participants think and also make them gain a very deep insight into the subject being taught. He specializes in programming in various languages , operating systems and design methodologies.

Brett Becker

Title: It's a Two-Way Street: From the Computing Classroom to Computing Education Research

Abstract: There is much discussion in computing education about turning research into practice because research-informed teaching could (or should) be more effective. However, it is often noted that there is a disconnect between practice and research. A lot of research rarely informs classroom practice, and often classroom practice is not informed by research. Nonetheless, for research to inform practice we need research. Where does this research come from? How does it become research? In addition to being informed by research, classroom practice can be one source of research, and the classroom itself can be the laboratory. The result is a two-way street between practice and research. While some research - for instance the presentation of some theories, literature reviews, and research not directly involving students - may not originate in the classroom, much research does originate in, or takes place in, the classroom. This talk describes several routes from the classroom to research. It will cover topics such as scoping classroom-based research studies, ethical review, approaches and methods, data collection and analysis, the role of curriculum, research presentation and paper types, venue choice, the submission and review process, publication, and post-publication considerations. The goals are to help those that are less familiar with computing education research to conduct research in their classrooms and additionally to help those in the classroom use research in their practice.

Bio : Brett Becker is Vice-Chair of SIGCSE, Chair of the ACM CompEd Steering Committee, and Board Liaison to the ACM ITiCSE Steering Committee. He also serves on the ACM/IEEE/AAAI CS2023 Steering Committee and Chairs the Society, Ethics and Professionalism Subcommittee. For the last several years he has been an Associate Editor for ACM Transactions on Computing Education, a member of the ACM ICER Senior Program Committee, and an Associate Program Chair for ACM ITiCSE and the SIGCSE Technical Symposium. Brett has won two Best Computing Education Research Paper Awards at the SIGCSE Technical Symposium, the Best Reviewed Paper Award at ACM ICER, and the Best Research Paper Award at the Australasian Computing Education Conference. Educated in the US and Ireland, Teaching in Ireland and China, and researching everywhere in-between, Brett is a proponent of global research partnerships and in global participation in the computing education community.

Yogesh Simmhan

Title: Pedagogic Practices for Teaching Distributed Systems Courses

Abstract: : Parallel and Distributed systems such as cluster computing, cloud computing and Internet of Things (IoT) have become pervasive technologies that are essential not just to computer science but also to design and deploy applications from interdisciplinary and data science domains. Under-graduate and post-graduate curriculum needs to incorporate these as essential or elective courses to ensure that students are well trained for their careers. This requires imparting systems concepts, teaching programming models and conducting hands-on labs to translate theory to practise. This talk will discuss experiences and best practices in teaching systems courses and designing systems labs, and briefly review a model curriculum for distributed and cloud systems micro-specialization.

Bio : Yogesh Simmhan is an Associate Professor in the Department of Computational and Data Sciences and a Swarna Jayanti Fellow at the Indian Institute of Science, Bangalore. His research explores scalable software platforms, algorithms and applications on distributed systems. He is an Associate Editor-in-Chief of the Journal of Parallel and Distributed Systems (JPDC) and an Associate Editor of Future Generation Computing System (FGCS). He teaches post-graduate courses on scalable systems, cloud computing, big data platforms and data engineering at IISc. Yogesh has a Ph.D. in Computer Science from Indiana University, Bloomington, and was previously a Research Assistant Professor at the University of Southern California (USC), Los Angeles, and a Postdoc at Microsoft Research, San Francisco. He is a Distinguished Member of ACM, a Distinguished Contributor of the IEEE Computer Society and serves on the ACM India Executive Council.

Hemangee K. Kapoor

Title: DEI activities at the ACM and How to make CS education more inclusive

Abstract: : Research has demonstrated that diverse teams are more innovative and productive. At the ACM, as a computing professional community, it is our responsibility to make the resources and services cater to the needs of all members of the society. To ensure that the governance and activities of ACM involve members from diverse background and perspectives, the Diversity, Equity and Inclusion (DEI) council has been established. The talk will begin by describing the charter of the DEI council and its main responsibilities. We would then discuss how the responsibilities can be achieved by making three broad categories. The various initiatives that are planned to be executed in each category will be discussed; followed by the ongoing activities. Case studies/events/contributions/ done in order to bring DEI in our daily professional activities will be highlighted. These will include achievements and initiatives at ACM global as well as ACM India level. Subsequently, we shall have an open discussion on how to inculcate DEI in CSE education.

Bio : Hemangee K. Kapoor is a Professor in the Department of Computer Science and Engineering at Indian Institute of Technology Guwahati, India. She received her B.Eng. degree in Computer Engineering from the College of Engineering, Pune, India, M.Tech. degree in CSE from the IIT Bombay, and Ph.D. degree in CSE from London South Bank University, U.K. Her research interest spans the broad area of computer architecture and specifically in multicore caches, emerging non-volatile memory technologies, network-on-chip and design of accelerators for neural networks. She has published at reputed venues and has supervised several PhD and post-graduate students. She is a Senior Member of the IEEE and ACM. She is Associate Editor on Journal of Systems Architecture (Elsevier) and IEEE Design and Test. Prof. Kapoor has actively participated in the ACM India council: as a member (2014-22) and as Vice President (2020-22). She also serves as a member on the ACM international council for Diversity, Equity and Inclusion (ACM-DEI) (2021-23).

Smruti R. Sarangi

(OCCE Award Winner 2022)

Title: Perspectives on Teaching Computer Architecture in Developing Countries

Abstract: : Different areas of computer science have different challenges with respect to curriculum development, textbook writing, and teaching. Computer architecture represents one extrema in this hyper-dimensional space: it is an applied discipline, the theory for many sub-areas is still in development, and unlike traditional theoretical areas, problem-solving and tutorial based teaching is still uncommon. Students typically appreciate the rigor of traditional algorithm courses because they are similar to the courses they have seen in high school, however computer architecture is an engineering discipline: it is a science, an art, and sometimes a combination of both. As the name suggests, it is quite like traditional "architecture" (designing beautiful buildings ... ). To further complicate matters, most textbooks in this subject have originally been written in the late nineties and fail to capture most of the developments that have happened over the last two decades, which are fundamental and revolutionary at the same time. In the late nineties the field was an applied discipline where the design of systems, the specific design choices made by engineers, and a description of important architectures was considered proper pedagogical practice. This was probably acceptable in developed countries where students had an adequate exposure to computers since their teenage years. However, this approach did not work in India and a few other developing countries where I taught. Hence, there was a need to grow the field and instead focus on providing timeless insights that are not dependent on specific architectures or specific technologies. There was a need to bring the field in line with other fields such as chemistry, physics, biology, and of course traditional CS (data structures, algorithms, discrete math, etc.). This was the nature of the challenge that I faced when I started writing my two books on computer architecture (www.basiccomparch.com and www.advcomparch.com). There was a need to formalize basic notions, provide a theoretical framework, and create a discipline that is more in line with traditional theoretical subjects, which the students (at least in developing countries) are more used to. Hence, a novel pedagogical approach was developed where the connect between Turing machines and basic architectures was shown. The same approach was followed to explain all the major concepts by relating them to other other concepts in traditional math or CS: caches were connected with hashtables, virtual memory was connected with indexing, I/O was connected with networking, OOO processing was connected with graph algorithms, and memory models were re-explained with novel concepts developed by the verification community. The end result of doing so was 1500 pages of computer architecture (captured in my two books). Many concepts appear to be intuitive such as memory consistency and routing algorithms in on-chip networks. However, this never leads to a deeper understanding and cannot lead to practical designs because there is not enough knowledge to write real code and capture corner cases. This is where formal training and a connect with well-established CS concepts is required. In my second book on Advanced Computer Architecture, especially in the later half, I focused on power management, security, reliability, and architectures for AI/ML. Here again, the theory was not well developed and thus there were no popular mathematical formalisms. New notations and new theoretical tools were introduced to put these areas on a sound footing. This is by far the most important contribution of my two books, which is to formalize and "mathematicalize" concepts in computer architecture that hitherto had very applied definitions that were often prone to misinterpretations. Towards the end of the talk, we will also digress into some of my other academic adventures such as co-chairing a committee to create the CBSE CS curriculum for schools, a lab course on processor design and kernel hacking (future of OS teaching), and my take on the future of teaching and learning (in general).

Bio : Prof. Smruti R. Sarangi is the Usha Hasteer Chair Professor at the Computer Science and Engineering Department at IIT Delhi. He holds a joint appointment with the department of Electrical Engineering and is currently the Head of the Department of the Educational Technology Services Center. He works in computer architecture and operating systems. He has published roughly 120 papers in reputed conferences and journals, and has written two books on computer architecture: Basic Computer Architecture (WhiteFalcon, 2021), and Advanced Computer Architecture (McGrawHill, 2021). He has been extensively involved in remote teaching (India and abroad), and has co-chaired the committee to develop a new CS and data science curriculum for school children (CBSE board: classes 9 to 12). Prof. Sarangi joined IIT Delhi in 2011. Prior to that he spent some time in industry: IBM Research Labs and Synopsys Research. He obtained his Ph.D from the University of Illinois at Urbana Champaign in 2006, and his B.Tech in Computer Science from IIT Kharagpur in 2002.