Talento

A interseção de matemática, computadores e tudo o mais
Senior Shardul Chiplunkar pretende ser um tradutor entre o mundo da tecnologia e o resto da sociedade.
Por Sandi Miller - 06/12/2021

Rubrica:“Como softwares complexos agora são tão importantes no mundo, eu quero que a indústria de computação - e eu - tenhamos mais capacidade para se envolver com um público mais amplo”, disse Shardul Chiplunkar, sênior do MIT. Créditos:Foto: Steph Stephens


Shardul Chiplunkar, aluno do último ano do Curso 18C (matemática com ciência da computação), entrou no MIT interessado em computadores, mas logo estava tentando de tudo, desde girar o fogo até construir firewalls. Ele se envolveu em engenharia de áudio e sopro de vidro , foi tenor do grupo a capella do MIT / Wellesley Toons e aprendeu a navegar.

“Quando estava entrando no MIT, pensei que me interessaria apenas por matemática e ciência da computação, acadêmicos e pesquisa”, diz ele. “Agora, o que mais aprecio é a diversidade de pessoas e ideias”.

Academicamente, seu foco está na interface entre as pessoas e a programação. Mas suas atividades extracurriculares o ajudaram a descobrir seu objetivo secundário, ser uma espécie de tradutor entre o mundo técnico e os usuários profissionais de software.

“Quero criar melhores estruturas conceituais para explicar e compreender sistemas de software complexos e desenvolver melhores ferramentas e metodologias para o desenvolvimento de software profissional em grande escala, por meio de pesquisas fundamentais na teoria de linguagens de programação e interação homem-computador”, diz ele.

É um papel que ele praticamente nasceu para desempenhar. Criado no Vale do Silício, quando a bolha das pontocom estava no auge, ele foi atraído pelos computadores desde muito jovem. Ele tinha 8 anos quando sua família se mudou para Pune, Índia, para trabalhar com seu pai como engenheiro de software de rede. Em Pune, sua mãe também trabalhou como tradutora, editora e locutora de rádio. Chiplunkar acabou falando inglês, hindi, francês e seu nativo Marathi.

Na escola, ele participava ativamente de competições de matemática e codificação, e um amigo o apresentou a quebra-cabeças linguísticos, que ele lembra "eram como matemática". Ele passou a se destacar na Olimpíada de Linguística, onde alunos do ensino médio resolvem problemas baseados no estudo científico das línguas - a linguística.

Chiplunkar veio para o MIT para estudar o que ele chama de “o curso perfeito”, curso 18C. Mas, como filho de um pai técnico e de uma mãe tradutora, talvez fosse inevitável que Chiplunkar descobrisse como combinar os dois assuntos em uma trajetória profissional única.

Embora ele fosse um nativo em linguagens humanas, foi um Programa de Oportunidades de Pesquisa de Graduação do Laboratório de Ciência da Computação e Inteligência Artificial que cimentou seu interesse em pesquisar linguagens de programação. Sob o professor Adam Chlipala , ele desenvolveu uma linguagem de especificação para firewalls de internet e um compilador formalmente verificado para converter essas especificações em código executável, usando a síntese de software correta por construção e técnicas de prova.

“Suponha que você queira bloquear um determinado site”, explica Chiplunkar. “Você abre seu firewall e digita o endereço do site, por quanto tempo deseja bloqueá-lo e assim por diante. Você tem alguns parâmetros em uma linguagem inventada que informa ao firewall qual código executar. Mas como você sabe que o firewall vai traduzir essa linguagem em código sem cometer erros? Essa era a essência do projeto. Eu estava tentando criar uma linguagem para especificar matematicamente o comportamento dos firewalls e para convertê-lo em código e provar que o código fará o que você deseja. O software viria com uma garantia matematicamente comprovada. ”

Ele também explorou interesses adjacentes em linguagens de programação probabilísticas e inferência de programas por meio de pesquisas em ciências cognitivas, trabalhando com o professor Tobias Gerstenberg na Universidade de Stanford e, posteriormente, com Joshua Rule no laboratório Tenenbaum no Departamento de Cérebro e Ciências Cognitivas do MIT.

“Em linguagens de programação regulares, os dados básicos com os quais você lida, os átomos, são números fixos”, diz Chiplunkar. “Mas em linguagens de programação probabilísticas, você lida com distribuições de probabilidade. Em vez da constante cinco, você pode ter uma variável aleatória cujo o valor médio é cinco, mas toda vez que você executa o programa está em algum lugar entre zero e 10. Acontece que você também pode calcular com essas probabilidades - e é uma maneira mais poderosa de produzir um modelo de computador de alguns aspectos da cognição humana. linguagem permite expressar conceitos que você não poderia expressar de outra forma. "

“Muitos dos motivos pelos quais gosto das ciências cognitivas computacionais são os mesmos motivos pelos quais gosto de programação e da linguagem humana”, explica ele. “A cognição humana muitas vezes pode ser expressa em uma representação que é como uma linguagem de programação. É mais uma representação abstrata. Não temos ideia do que realmente acontece no cérebro, mas a hipótese é que em algum nível de abstração, é um bom modelo de como a cognição funciona. ”

Chiplunkar também espera trazer uma melhor compreensão dos sistemas de software modernos para a esfera pública, para capacitar comunidades curiosas por tecnologia, como advogados, legisladores, médicos e educadores. Para ajudar nessa busca, ele fez cursos no MIT sobre política de internet e lei de direitos autorais e segue avidamente o trabalho de ativistas de direitos e liberdades digitais. Ele acredita que os programadores precisam fundamentalmente de uma nova linguagem e conceitos para falar sobre a arquitetura de sistemas de computador para fins sociais mais amplos.

“Quero que possamos explicar por que um cirurgião deve confiar em um assistente de cirurgia robótica ou como uma lei sobre armazenamento de dados precisa ser atualizada para sistemas modernos", diz ele. "Acho que criar linguagens conceituais melhores para software complexo é tão importante quanto criar melhores ferramentas práticas. Como softwares complexos agora são tão importantes no mundo, quero que a indústria da computação - e eu - tenhamos melhores condições de interagir com um público mais amplo. ”

 

.
.

Leia mais a seguir