{"id":{"repo_id":"mit","oai_identifier":"oai:dspace.mit.edu:1721.1/28388"},"canonical_url":"https://search.dev.ndltd.org/etd/mit/oai:dspace.mit.edu:1721.1/28388","repository":{"repo_id":"mit","name":"MIT","base_url":"https://dspace.mit.edu/oai/request"},"display":{"title":"Broadcast-based communication in a programming environment for novices","abstract":"This thesis proposes a model to make communication and processes in an object-oriented language accessible to novice programmers. For my thesis work, I developed a broadcast communication framework in the context of Scratch, an object-based programming language intended for children and being developed at the MIT Media Laboratory. Objects in this framework can broadcast events, which trigger other objects to start new processes. In this document, I identify the basic functionality required to support object communication in such a broadcast model, I describe my implementation of that functionality, and I consider the merits of various user interface metaphors to make these features accessible to novices. Finally, I compare the event broadcasting in this model with the use of procedures in more traditional programming languages, and raise questions as to whether the broadcast model's event handlers should supplement or supplant procedures in a beginner's programming language.","abstract_html":"This thesis proposes a model to make communication and processes in an object-oriented language accessible to novice programmers. For my thesis work, I developed a broadcast communication framework in the context of Scratch, an object-based programming language intended for children and being developed at the MIT Media Laboratory. Objects in this framework can broadcast events, which trigger other objects to start new processes. In this document, I identify the basic functionality required to support object communication in such a broadcast model, I describe my implementation of that functionality, and I consider the merits of various user interface metaphors to make these features accessible to novices. Finally, I compare the event broadcasting in this model with the use of procedures in more traditional programming languages, and raise questions as to whether the broadcast model&#x27;s event handlers should supplement or supplant procedures in a beginner&#x27;s programming language.","abstract_has_math":false,"creators":["Feinberg, David S. (David Scott), 1976-"],"institution":"Massachusetts Institute of Technology","degree_name":null,"degree_level":null,"degree_discipline":null,"degree_department":"Massachusetts Institute of Technology. Dept. of Electrical Engineering and Computer Science.","school":null,"contributors":[],"advisors":["Mitchel Resnick."],"committee_chairs":[],"committee_members":[],"year":2004,"date_issued":"2004","date_published":"2004","updated_at":"2026-07-22T22:21:39Z","subjects":["Electrical Engineering and Computer Science."],"languages":["en_US"],"rights":["M.I.T. theses are protected by copyright. They may be viewed from this source for any purpose, but reproduction or distribution in any format is prohibited without written permission. See provided URL for inquiries about permission."],"rights_urls":["http://dspace.mit.edu/handle/1721.1/7582"],"identifier_entries":[]},"links":{"outbound_url":"http://hdl.handle.net/1721.1/28388","outbound_label":"Handle","outbound_source":"dc:identifier.uri"},"metadata_groups":[{"id":"people","label":"People","entries":[{"key":"dc:contributor.advisor","label":"Advisor","values":["Mitchel Resnick."]},{"key":"dc:contributor.department","label":"Department","values":["Massachusetts Institute of Technology. Dept. of Electrical Engineering and Computer Science."]},{"key":"dc:contributor.other","label":"Dc Contributor Other","values":["Massachusetts Institute of Technology. Dept. of Electrical Engineering and Computer Science."]},{"key":"dc:creator","label":"Author","values":["Feinberg, David S. (David Scott), 1976-"]}]},{"id":"academic_context","label":"Academic Context","entries":[{"key":"dc:date.accessioned","label":"Dc Date Accessioned","values":["2005-09-26T20:10:56Z"]},{"key":"dc:date.available","label":"Dc Date Available","values":["2005-09-26T20:10:56Z"]},{"key":"dc:date.issued","label":"Date","values":["2004"]},{"key":"dc:publisher","label":"Institution","values":["Massachusetts Institute of Technology"]},{"key":"dc:type","label":"Dc Type","values":["Thesis"]}]},{"id":"subjects_keywords","label":"Subjects and Keywords","entries":[{"key":"dc:subject","label":"Dc Subject","values":["Electrical Engineering and Computer Science."]}]},{"id":"language_rights","label":"Language and Rights","entries":[{"key":"dc:language.iso","label":"Language (ISO)","values":["en_US"]},{"key":"dc:rights","label":"Dc Rights","values":["M.I.T. theses are protected by copyright. They may be viewed from this source for any purpose, but reproduction or distribution in any format is prohibited without written permission. See provided URL for inquiries about permission."]},{"key":"dc:rights.uri","label":"Rights URI","values":["http://dspace.mit.edu/handle/1721.1/7582"]}]},{"id":"identifiers","label":"Identifiers","entries":[{"key":"dc:identifier.uri","label":"Identifier URI","values":["http://hdl.handle.net/1721.1/28388"]}]},{"id":"additional","label":"Additional Metadata","entries":[{"key":"dc:description","label":"Description","values":["Thesis (M. Eng.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer Science, 2004.","Includes bibliographical references (p. 87-88)."]},{"key":"dc:description.abstract","label":"Abstract","values":["This thesis proposes a model to make communication and processes in an object-oriented language accessible to novice programmers. For my thesis work, I developed a broadcast communication framework in the context of Scratch, an object-based programming language intended for children and being developed at the MIT Media Laboratory. Objects in this framework can broadcast events, which trigger other objects to start new processes. In this document, I identify the basic functionality required to support object communication in such a broadcast model, I describe my implementation of that functionality, and I consider the merits of various user interface metaphors to make these features accessible to novices. Finally, I compare the event broadcasting in this model with the use of procedures in more traditional programming languages, and raise questions as to whether the broadcast model's event handlers should supplement or supplant procedures in a beginner's programming language."]},{"key":"dc:description.degree","label":"Dc Description Degree","values":["M.Eng."]},{"key":"dc:format.mimetype","label":"Dc Format Mimetype","values":["application/pdf"]},{"key":"dc:title","label":"Title","values":["Broadcast-based communication in a programming environment for novices"]}]}],"canonical_facts":{"dc:contributor.advisor":["Mitchel Resnick."],"dc:contributor.department":["Massachusetts Institute of Technology. Dept. of Electrical Engineering and Computer Science."],"dc:contributor.other":["Massachusetts Institute of Technology. Dept. of Electrical Engineering and Computer Science."],"dc:creator":["Feinberg, David S. (David Scott), 1976-"],"dc:date.accessioned":["2005-09-26T20:10:56Z"],"dc:date.available":["2005-09-26T20:10:56Z"],"dc:date.issued":["2004"],"dc:description":["Thesis (M. Eng.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer Science, 2004.","Includes bibliographical references (p. 87-88)."],"dc:description.abstract":["This thesis proposes a model to make communication and processes in an object-oriented language accessible to novice programmers. For my thesis work, I developed a broadcast communication framework in the context of Scratch, an object-based programming language intended for children and being developed at the MIT Media Laboratory. Objects in this framework can broadcast events, which trigger other objects to start new processes. In this document, I identify the basic functionality required to support object communication in such a broadcast model, I describe my implementation of that functionality, and I consider the merits of various user interface metaphors to make these features accessible to novices. Finally, I compare the event broadcasting in this model with the use of procedures in more traditional programming languages, and raise questions as to whether the broadcast model's event handlers should supplement or supplant procedures in a beginner's programming language."],"dc:description.degree":["M.Eng."],"dc:format.mimetype":["application/pdf"],"dc:identifier.uri":["http://hdl.handle.net/1721.1/28388"],"dc:language.iso":["en_US"],"dc:publisher":["Massachusetts Institute of Technology"],"dc:rights":["M.I.T. theses are protected by copyright. They may be viewed from this source for any purpose, but reproduction or distribution in any format is prohibited without written permission. See provided URL for inquiries about permission."],"dc:rights.uri":["http://dspace.mit.edu/handle/1721.1/7582"],"dc:subject":["Electrical Engineering and Computer Science."],"dc:title":["Broadcast-based communication in a programming environment for novices"],"dc:type":["Thesis"]},"updated_at":"2026-07-22T22:21:39Z"}