Sunday, July 4, 2010

Work

Work:

Most people arrive between 8 and 10 and leave between 4 and 7. I arrive at 9ish and leave a little after 6.

We usually take long lunches at a local eatery.

The environment is very relaxed and social. I think that that is the biggest difference in my work habits between Stanford and here. At Stanford, I'm always overwhelmed with the number of things that I have to finish by the next day, so when I work, I am very focused, efficient, and fast. Last term, I finished most of my CS110 assignments in one ten-hour sitting, with one or two half-hour meal breaks. When doing those assignments, I would have little contact with the outside world, but I would get done two weeks of work. At the InSTEDD office, I work with others rather than alone, and we share our experiences. It's a job, but it's also a cultural exchange and a learning experience, and it's a job where I help others and others help me.

Before I started working, I was asked to estimate how long it would take to finish the first part of my project. My estimate was a few days, and my boss said that he thought the estimate was off. Based on my experience in the first week, I think that if programming were the only thing that I did, it wouldn't have been too hard to finish in a few days, but since there's more to working than just programming, I'll finish in the coming week.

I still feel slow, but the people I'm working with say that I'm coming along very quickly.

The content of my work is making a machine learning (artificial intelligence) service in Ruby on Rails. The cause for the service is so that InSTEDD's other projects can have easy access to machine learning without having to reinvent the wheel every time. For instance, SeenTags, which 'tags' text messages based on previous examples (for instance, if I give Seen Tags the text message "cases:10, disease:malaria " followed by the text message "5 cholera", it will tag it as "cases:8, disease:cholera") had to make its own machine learning solution rather than just getting its data in the correct format and sending it off to another machine learning service.

Rather than writing all of the machine learning algorithms myself, I'm making the service plug in to external services (ie, Google Prediction, Open Calais, Tag This). The brunt of my work is figuring out how to accept data in a range of formats (so that the client service that wants machine learning doesn't have to do any conversion) and get everything in the correct format for the external services while making sure that my code is modular enough that it can easily be extended as new external machine learning services become available.

Ruby on Rails is a web programming language that is currently all the rage. Ruby is the language itself, and Rails automates some common tasks and makes everything work in a standard format. It was harder for me to get the hang of than other languages that I have tried. I think that part of it is that, in an effort to automate and standardize everything, it hides the underlying architecture from the programmer, and the way that I understand things best is by looking at the underlying architecture (which is why I like lower level languages like C and C++ a lot -- everything is exposed). I do think that, once I understand it a little better, it will make web programming tasks very quick and collaboration very easy.

InSTEDD:

InSTEDD (InSTEDD.org; it used to stand for International System for Total Early Disease Detection, but now it stands for Innovative Support To Emergencies, Diseases, and Disasters) solves the information problems of the public health world.

One challenge is identifying disease outbreaks. In the US, we're used to every hospital having an internet connection and quickly reporting any outbreaks to the CDC. Globally, that isn't the case. There may not be one central agency to take in reports, and there might not be an infrastructure for the people on the front lines to report to an agency if one exists.

Riff is a technology that tries to identify disease outbreaks without any central agency. It was inspired by GPHIN (Global Public Health Information Network), the technology that caught SARS and helped prevent it from becoming a pandemic. It scrapes news articles online to figure out where the outbreaks are and what disease they are.

When nonprofits are working somewhere without a stable telecommunications infrastructure, GeoChat steps in. Some areas lack the infrastructure because they are underdeveloped; some areas are conflict ridden, so nonprofits can't freely use the infrastructure; some areas had the infrastructure recently destroyed by a disaster. GeoChat lets people working for public health communicate to each other by any means available. If SMS is the only thing that works, you can send a text to one number and it will be relayed to your whole organization. If you have access to the internet, you can visualize everyone's location and see their messages coming in.

One thing that they're working on now is how to get reports from people who probably don't speak English, who don't have computers, and who don't live somewhere with a very good telecommunications infrastructure -- InSTEDD makes the work that Google does seem easy. In other words, public health agencies need data in computers, but it's hard to get the data from the people into the computers. Their latest technological solution to this problem is a wheel. No, not the millennia-old version: a reporting wheel. There will be a front cover with instructions in their native language; they turn the wheel until it displays the desired word (ie, "malaria" or "5 cases"); they call a phone number; they input the numbers that the wheel displays. They make it easy to design a wheel of your own and print it out, and after you print it out, everything is analog. Thus, it's easy for any nonprofit in the world to use it to help with their reports, and it can be used practically anywhere in the world.

Because InSTEDD is one of the leaders in solving the information problems associated with disease and disaster response, they often work with the UN or in international projects like the Haiti earthquake response. In short, they're a very cool group of people, and it's an honor to work with them.

No comments:

Post a Comment