Eric Rubin-Smith

Eric Rubin-Smith

Arlington, Virginia, United States
688 followers 500+ connections

About

I have specific, large-scale project experience in:

* Founding start-up…

Activity

Experience

Education

Licenses & Certifications

Publications

Patents

Courses

  • Algorithms

    COSC025

  • American Music

    MUS001

  • Beginning Spanish

    SPAN001

  • Computer Architecture

    COSC037

  • Computer Networks

    COSC078

  • Current Trends and Ethical Issues in Computer Science

    COSC099

  • Design and Implementation of Programming Languages

    COSC048

  • Discrete Math in Computer Science

    COSC021

  • English Literature and Composition

    ENGL005

  • Historical Linguistics

    LING015

  • History of the English Language

    LING018

  • International Politics

    GOVT005

  • Introduction to Physics I: Honors

    PHYS015

  • Introductory Linguistics

    LING001

  • Introductory Psychology

    PSYC001

  • Introductory Spanish

    SPAN002

  • Language Study Abroad: Intermediate Spanish

    SPAN003

  • Language Study Abroad: Mexican History

    SPAN006

  • Language Study Abroad: Mexican Literature

    SPAN005

  • Linear Algebra

    MATH024

  • Semantics and Pragmatics

    LING023

  • Seminar: College Learning

    EDUC007

  • Software Design and Implementation

    COSC023

  • Spanish Literature

    SPAN009

  • Stars and the Milky Way

    ASTR015

  • Structure and Interpretation of Computer Programs

    COSC018

  • Theoretical Computer Science: Distributed Algorithms

    COSC085

  • Theory of Computation

    COSC049

Projects

  • Implement Consensus on a U.S. Navy Guided Missile Destroyer

    -

    A U.S. Navy Guided Missile Destroyer, or DDG, has multiple computers communicating over an IP network. Among other tasks, they control the flow of water through the ship (for the purposes of fighting fires) by opening and closing valves.

    If multiple computers attempt to change a valve's state concurrently, then the valve breaks and lives could be lost.

    Conversely, if no computer is able to change a valve's state, then seamen will be unable to fight fires effectively and lives…

    A U.S. Navy Guided Missile Destroyer, or DDG, has multiple computers communicating over an IP network. Among other tasks, they control the flow of water through the ship (for the purposes of fighting fires) by opening and closing valves.

    If multiple computers attempt to change a valve's state concurrently, then the valve breaks and lives could be lost.

    Conversely, if no computer is able to change a valve's state, then seamen will be unable to fight fires effectively and lives could be lost.

    So the computers must implement a distributed protocol to determine which computer is the owner of the valves. The computers must reach a joint decision even in the face of torpedos destroying some percentage of them during a run of the protocol.

    The task was to address the above constraints by writing a C module that would provide an API to a Tcl application.

    When I was handed the task, I identified this as the Consensus Problem from distributed algorithms, and implemented a solution provided in the academic literature by Tushar Chandra and Sam Toueg in 1996.

Languages

  • Spanish

    Limited working proficiency

  • English

    Native or bilingual proficiency

View Eric’s full profile

  • See who you know in common
  • Get introduced
  • Contact Eric directly
Join to view full profile

Other similar profiles

Explore collaborative articles

We’re unlocking community knowledge in a new way. Experts add insights directly into each article, started with the help of AI.

Explore More

Add new skills with these courses