About Me

I'm an undergraduate student at Indiana University-Bloomington with computer science major and Informatics minor. I currently study at School of Informatics and Computing also a member of Hutton Honors College as IUB honor student. My major specialization is data and search. The expected graduate time is 2017 May. If you want to contact me feel free to Send e-Mail to shiding@indiana.edu.

Areas: Algorithm, Artificial intelligence, Database, Data mining(analyzing), Machine learning, Security, Network, Web programming


Project Title: I101 individual project (INFO I 101, Fall 2013)
Member: Shikun Ding
Project Description: It is about designing websites for describe how I use technology and introduce to myself.
Individual Project

Project Title: I101 class project (INFO I 101, Fall 2013)
Member: Shikun Ding
Project Description: HTML,CSS,javaScript,SQL(database) learning.
A fun tiny game

Project Title: Webpage for a company (CSCI A110, Fall 2013)
Group member: Shikun Ding
Project Description: This project is about create a web page for a company, the company may not be real.
Company website

Project Title: technology (CSCI A110, Fall 2013)
Group Members: Shikun, Robert
Project Description: The assignment is about how technology is used in the field of our major(s). In this project, we searched some information about the technology "face reader" which is used to help aspergers build up ability on recognition of facial expression.
Project introduction

Project Title: X150 Final presentation (EDUC X 150, Fall 2014)
Member: Shikun Ding
Project Description: Educational related issues including tuition, fee, online education, value of college.
Educational value

Project Title:NIM game Tracking (CSCI A 290, topic:Python, Fall 2014)
I finished this by myself.
Project Description: This assignment is to program a game of NIM. NIM is played with a number of sticks or matches, from which two players alternate to remove 1, 2 or 3 matches at a time. The player who removes the last match loses. Your program must use 15 sticks (or matches), and one of the players must be the computer. Any method to guide the computer's play is acceptable, whether it is simply a random choice of 1, 2 or 3 sticks (if that many are available), or some algorithm such as may be found in the Wikipedia article on NIM. Keep it simple. Your program should ask who will start play (user or computer) then print out the sticks, IIIII IIIII IIIII and so forth, and then alternate play. The computer must keep track of play, and at the end print out who won the game.
Sample File Download Here

Project Title: LostCities by java (CSCI A 290, Topic: Java, Fall 2014)
Group members: Shikun Ding, Xiaohui Wang, Wente Jing. (Part of code collected from course Instructor Dimitar)
Project Description: This project's purpose is learning java by simulating LostCity Game. For security and copyright reasons, I deleted some classes. So, the sample I provide is uncompleted and can't be run.

Project Title: Data analyze by matlab (CSCI A 321, Spring 2015)
Member: Shikun Ding, Randall Bramley. (Follow the instruction of instructor: Randall Bramley)
Project Description: This project's purpose is learning matlab by implementing several task cases or files. The purposed of each task provided by the instructor. Project doenloads:

Project Title: Flood it (CSCI C 343 data structure, Spring 2015)
Member: Shikun Ding(For copyright reason, I post only the code I wrote)
Instructor:: Amr Sabry Project Description: This project's purpose is learning python and data structure by implementing a game called flood it. More information click here
Project doenload:
flood it

Project Title: Bus data mining (CSCI B 490 SEMINAR IN COMPUTER SCIENCE, topic: DATA MINING, Fall 2015)
Member: Shikun Ding, Wonyong Ha, Luit Saikia
Instructor: Predrag Radivojac
Project Description: The goal of our project includes study, understand and analyses IU bus data.
More information click: Presentation (pptx)

Project Title: Search Engine building (INFO I 427 Search Informatics Fall 2016)
Member: Skyler Booth,Shikun Ding
Instructor: Azadeh Nematzadeh Chekuvar
Class website: I 427 Search Informatics Fall 2016
Project Description: Techniques and tools to automatically crawl, parse, index, store, and search Web information, organizing knowledge that can help meet the needs of organizations, communities and individual users. Social and business impact of search engine technology. As a project, I will build a real search engine and compare it with Google.
More information click: The search Engine

Project Title: GPA calculator (CSCI A290 Topic: Android Programming, Spring 2017)
Member: Shikun Ding
Instructor: Jeff Whitmer
Class website: Tools for Computing: Android Application Interface Design and Programming.
Project Description: Android app project about GPA calculator. Used the android studio, in java and xml. Please download the zip file. More detail description in it.
More information click: GPA calculator app

Go to Top


IUB School of Informatics and Computing hire outstanding undergraduate students help teaching courses as TA which also called Undergraduate Instructor (UI) and Undergraduate Mentor (UM) at SoIC. UM is a preparation step for UI. I worked as UI for several courses at SoIC mostly as UI. My job including grading students' assignments/quizzes and exams, leading labs discussion/practice and holding office hour. Each course requires up to 10 hours work time per week.

INFO I 101:Introduction to Informatics & Computing
UI/UM description

January 2014 - May 2014(UM)

August 2014 - December 2015(UI/TA)

I was promoted and taught INFO I 101 as Undergraduate Instructor (Teaching Assistant) in Fall 2014 semester.

The primary instructors are Nina Onesti and Dan Richert

CSCI C 211: Introduction to Computer Science

August 2014 - December 2014(UI/TA)

The primary instructors are Dan-Adrian German, Sam Tobin-Hochstadt and Eric Wennstrom

CSCI H 241: Discrete Structures for Computer Science: Honor
January 2015 - May 2015(UI/TA)
The primary instructor is Saul Blanco.

INFO I 201: Math Foundations of Informatics
August 2015 - December 2016 (UI/TA)
The primary instructors are Saul Blanco and John Duncan.

CSCI C 241: Discrete Structures for Computer Science
January 2016 - May 2016(UI/TA)
The primary instructor is Dirk Van Gucht.

INFO I 231: Introduction to Math of Cybersecurity
January 2017 - May 2017(UI/TA)
The primary instructors are Saul Blanco and Erik Wennstrom .

CSCI C 343: Data Structures
January 2017 - May 2017(UI/TA)
The primary instructors is Suzanne Menzel.

Research & Independent Study

• Implementing different efficient algorithms for allocating CPU registers to program variables and compare their performance. Spring 2015
Implemented several algorithms including linear-scan and graph coloring about CPU register allocation.

Since the speend of linear scan algorithm linearly increase as the number of variables increase. However, the speend graph coloring less impacted by the number of variables.

Graduate Mentor: Deyaaeldeen Almahallawi

A Survey on Register Allocation by Fernando Magno Q. Pereira
Linear Scan Register Allocation, MASSIMILIANO POLETTO Laboratory for Computer Science, MIT and VIVEK SARKAR IBM Thomas J. Watson Research Center
A Problem Course in Compilation: From Python to x86 Assembly Revised June 28, 2012 Jeremy G. Siek Bor-Yuh Evan Chang

• Understanding universal patterns of cultural creative processes. Fall 2015
Research mentor: Yong-Yeol Ahn
This project at large aims to understand universal patterns of human creation by constructing and analyzing the complex networks of collaborations, creations, and citations of cultural products, such as scientific papers, music, paintings, and films. The goal of this UROC project is to collect the network of collaborations and citations in music by mining various websites that contain the information. The team members will learn and use web mining techniques and potentially engage in complex network analysis.
my sample code
• Stocks and inter-bank loan data analyze. Spring 2016
Research mentor: Saurav Chakraborty
The project we will be analyzing hidden relationships/trends in stocks or inter-bank loans market data. We will study and apply Machine Learning regression algorithms.

• IU bus data analyze second stage. Fall 2015 - Spring 2016
Research mentor: Predrag Radivojac
This research is continuous study with CSCI B 490 topic: data mining class project. This project aims at implementing different algorithms to accurately analyze IU bus data in orger to improve the efficiency of IU bus by decreasing or increasing the number of running IU bus at given time.

Honor& Award

School of Informatics and Computing Dean's List (Spring 2015 - Present)
• Named in School of Informatics and Computing dean's list based on academic achievement (full time student with GPA>3.7).

Indiana University Founder Scholar (Fall 2014 - Present)
• Student are selected based on academic achievement (GPA >= 3.8).

Computer Science Program Undergraduate Instrucor(UI) Award Nominee (2014-2015)
• Nominated by computer science faculty for efforts in support of students and love of teaching.

Indiana University Wells Scholar Nominee (2014)
•Nominated by IUB faculty for IU Wells Scholar. All nominees have top 1% GPA in the university. Based on academic achievement, leadership, school activities participation and contribution to the university. Totally 33 nominees in whole university in 2014.

School of Informatics and Computer Corporate Partner Scholarship (Fall 2014 - Spring 2016)
• Selected based on academic excellence, leadership skills and teaching contribution to school. $1000 per year.

School of Informatics and Computing Anurag & Aruna Mendhekar Scholarship (Fall 2016 - Spring 2017)
• Most selective scholarship in the school for current student (except scholarships for incoming freshman). $2000 per year.

Scholarships description

Go to Top


1.Big Bytes/ Small bits Program
• Work as mentor. Paired with other 2 mentors and 10 mentees. Most mentees are freshmen. The goal of this program is help menttes getting familar and be successful at SoIC. Leading every week disscussion and email about resources, experiences for variety of topics at university. See this website for more information: Info& Log

2.A fun fiction : Human Live Forever