When Sharon Choy came to graduate school from industry, she couldn't have imagined that she'd be thinking about how to tie her shoes. As a student, she'd been doing algorithms and studying artificial intelligence. Originally, after attending the SHAD Valley program, she thought that a math and business double degree would be the way to go. As a student in the master's program in distributing computing, she chose to explore transaction processing in the cloud.
Sharon remembers a "eureka moment" that shows it's still possible to be successful in CS without having much of a background in computer science. She hadn't taken a programming course before coming to UW.
I wasn't particularly interested in computer science during high school, mainly due to the lack of promotion and the rumors of difficulty.
She's now grateful that CS was mandatory for all math and business students here at UW.
Otherwise, I would probably never have discovered how useful and fun CS really is.
Sharon admits to struggling through the first two months of the introductory course (CS 125).
I felt like I was writing Java code blindly, hitting the compile button, and then hoping that the code works. Then, I came across this one piece of advice which was, 'when writing a program, write what you would do in English and then translate it into Java.'
Sharon tells prospective students that it was at that moment when she realized that CS was about finding logical ways to solve problems. It wasn't about simply writing Java code. This approach, she explains, was analogous to solving the problem of putting on shoes. "You undo the laces, put your feet in the shoes, and then tie the laces, instead of tying the laces first and then trying to put your feet into the shoes."
It wasn't long before Sharon found that she was writing programs to solve problems in her business classes, such as for solving cost benefit analysis problems and for doing balance sheets. She discovered that computer science is both applicable and rewarding. In her second first-year course (CS 134), her TA, Terry Anderson, inspired her interest. Later, in CS 341, she was encouraged a great deal by her TA, Christine Boucher. Sharon found that CS is broad and appeals to many interests. She reminds students that they can always change areas of emphasis.
It's a very versatile subject,
she says. She points out classmates in a variety of fields. One has joined Bloomberg in New York, and others now work in health informatics, software development, management, and verification.
Sharon is now looking at fault-tolerance, scalability, and performance of different distributed transaction designs. The use of cloud computing has many administrative and economic benefits. The cloud is easier to manage and businesses pay for the resources they use, so there isn't a large setup cost for servers. She points out the challenges: how to add more nodes or computers in a cloud data centre, but retain efficiency, is an example. This problem of horizontal scalability can result in both users and applications having to forgo transactions. Sharon is building a system that provides transactions in the cloud (so that applications such as web services, which are hosted in the cloud, can use transactions).
Sharon has also been a mentor to prospective CS students at UW events. Students want to know what it is really like to be here, she says. She remembers a high school student who was hesitant about going into CS because she thought that she'd have to constantly learn new programming languages. Sharon told her that isn't true. She also lets students know that WICS allows students to connect socially and academically.
Gatherings and events that include lots of other women in CS create a supportive atmosphere," she explains. "I tell prospective students that CS isn't all socially awkward gamers! We have diverse interests. Computer science is really about problem solving.
Sharon defies the stereotype by enjoying running, exploring culinary arts, and writing blogs. She has also been playing the piano for 20 years. All of these activities keep her engaged with the world around her and help make her the interesting person she is.