Hey, I'm Josh Kayani, a student and fledgling software developer. Here, I rant and rave about tech and other topics.
This past month, I was graciously given the opportunity to work on an undergraduate research project in NC State’s CSC (Computer Science) department! The project is part of an REU (Research Experience for Undergraduates), which is an initiative sponsored by the National Science Foundation to get undergrads into research. It’s pretty surprising (at least to me), that I was able to start research as a freshman, but it’s a lot more accessible than I’d previously thought!
Every semester at NC State, professors and researchers in the Computer Science department hold a series of “Lightning Talks”; these are just brief presentations about their research, used to pique the interest of potential undergrads like myself. I figured I’d go this semester, thinking that the worst case scenario was a wasted hour of my time (free food was included).
Long story short, I met with a professor working on the topic of “code search”; essentially, what developers do whenever they’re stuck on a problem, or need to know more about an API. The project aims to study how developers search for code and analyze behaviors behind searches, not only in an effort to improve existing code search tools, but perhaps even predict the success of searches!
If the topic interests you, the professor I’m working with co-authored a study on the same subject here: http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/43835.pdf
So what am I doing? Currently, I’m developing a Chrome browser extension that would be employed to collect data on code searches; the extension logs searches to a server, recording different pieces of information depending on the website being searched; for example, the position of a search result and it’s associated query on Google would be recorded, whereas navigating directly to a website would just have it’s URL. Ideally, the tool would be distributed to developers in another phase of the project, where the actual data analysis would be conducted.
I’m really enjoying the work I’m doing so far, and can’t wait to see it an action, used to advance the field as a whole; it’s a great time to be in college, and a great time to contribute to research!