JavaScript Affogato:编写一种即兴专业文化外文翻译资料

 2021-12-12 08:12

JavaScript Affogato: Programming a Culture of Improvised Expertise

Lennon, Brian.2018

Abstract:

This essay attempts a philological-meaning a both technically and socially attentive-historical study of an individual computer programming language, JavaScript. From its introduction, JavaScript#39;s reception by software developers, and its importance in web development as we now understand it, was structured by a continuous negotiation of expertise. I use the term 'improvised expertise' to describe both conditions for and effects of the unanticipated development of JavaScript, originally designed for casual and inexpert coders, into a complex of technical artifacts and practices whose range and complexity of use has today propelled it into domains previously dominated by other, often older and more prestigious languages. 'Improvised expertise' also marks the conditions for and effects of three specific developmental dynamics in JavaScript#39;s recent history: first, the rapidly accelerated development of the language itself, in the versions of its standard specification; second, the recent, abruptly emerging, yet rapid growth of JavaScript in server-side networking, data processing, and other so-called back-end development tasks previously off limits to it; third, the equally recent and abrupt, yet decisive emergence of JavaScript as the dominant language of a new generation of dynamic web application frameworks and the developer tool chains or tooling suites that support them.

Introduction:

2016 was an inconspicuously transitional year for the information space once commonly referred to as the World Wide Web. Those attentive to linguistic usage will recall that the 2016 edition of The Associated Press Stylebook and Briefing on Media Law released in June recommended that the words 'internet' and 'web' no longer be written with initial capital letters,1 in a sign that the propriety marked by their referents#39; novelty had finally settled, or worn off. For those more attuned to matters of technical infrastructure, what may come to mind instead is the announcement by Oracle Corporation that its Java web browser plugin would be deprecated in the forthcoming ninth version of its Java Development Kit (JDK), a platform for writing and packaging software applications in the Java programming language.2 Taking these two real, if lesser milestones together, it seems safe to say that for anyone who remembers the original promise made for Java applets as a common WWW technology, at their moment of emergence in the mid-1990s, this was a chapter of recent technological and cultural history quietly coming to an end.3

To be sure, Oracle#39;s hand had been forced by Microsoft, Google, and Apple, who had either reduced Java plugin support in their browser products or removed it entirely. And yet embedded Java applets had long since become a legacy technology, still useful for some computationally intensive graphical visualization tasks (disproportionately in scientific applications), but no longer in wide use outside that domain. Whether or not they are old enough to remember the role originally imagined for Java in the browser, in particular, most of those who design websites and program web applications for a living today would be unlikely to regret their eclipse. Even before the emergence of personal data security as a substantive public issue in 2012, Java applets presented grave, often intractable security risks that web developers had had to learn how to manage, or ignore. A more general reason for the irrelevance of Java browser applets by 2016 was a historical one, linked to changes in the profile of the Java programming language and Java programmers in the software development industry as a whole. When Fredrick P. Brooks Jr. chose for the seventh chapter of The Mythical Man-Month: Essays on Software Engineering (1975) the title 'Why Did the Tower of Babel Fail?,' he was reflecting on the biblical story of Babel as a fable of engineering (the hubristic or merely presumptuous construction of a tower tall enough to reach heaven), rather than a fable of language (divine punishment imposed in the form of linguistic difference and permanently impaired communication).4 Nevertheless, The Mythical Man-Month, the first widely read and still the most celebrated reflection on managing large software projects, was also an informal study of communication, not excluding the metaphorized communication that a software programmer struggles to achieve with a machine.

The present essay is about the negotiation of technical expertise, specifically the technical expertise involved in software programming, and in particular that involved in programming websites and applications-that is, what is today called 'web development.' I take my bearings from the present historical moment, understood as an interval of continued economic recession (or, if one insists, 'uneven recovery') shaped by both economic and political investment in 'coding' instruction as job retraining for unemployed and underemployed US blue- and white-collar workers alike. In recent years, sociologically oriented cultural studies scholars like Adrian Mackenzie have produced valuable work on cultures of software development, work that is laudable for being simultaneously technically informed and socially focused.5 While it has been receptive to such research in so-called software studies, scholarship in humanities disciplines has not displayed a proportionate interest in the specifically social and cultural dimensions of the specifically linguistic history of computing, and this is the case especially where individual programming languages and their development and usage cultures are concerned.6 The broad exception is, of course, the historiography of computing, and scien

题目:JavaScript Affogato:编写一种即兴专业文化

引言:

本文试图用语言学 - 意味着对个人计算机编程语言JavaScript的技术和社会关注历史研究。从它的介绍,软件开发人员的JavaScript接收,以及它在我们现在所理解的Web开发中的重要性,是通过不断的专业知识协商来构建的。我使用术语“即兴专业知识”来描述最初为休闲和非熟练编码人员设计的JavaScript的意外开发的条件和影响,将其用于技术工件和实践的复杂性,其范围和使用的复杂性今天将其推进到域中以前由其他,通常是较老的和更有声望的语言主导。 “简易专业知识”也标志着JavaScript近期历史中三种特定发展动态的条件和影响:首先,语言本身的快速加速发展,在其标准规范的版本中;第二,最近,在服务器端网络,数据处理以及其他所谓的后端开发任务中,JavaScript突然出现但却迅速增长,以前不受限制;第三,JavaScript作为新一代动态Web应用程序框架的主导语言以及支持它们的开发人员工具链或工具套件的同样最近和突然但决定性的出现。

简介:

对于通常被称为万维网的信息空间而言,2016年是一个不显着的过渡年。那些关注语言用法的人会记得,6月份发布的2016年版美联社时尚手册和媒体法简报建议,“互联网”和“网络”这两个词不再用首字母大写,1表示以他们的指称新奇为标志的礼仪最终已经解决或磨损。对于那些更关注技术基础设施问题的人来说,可能会想到的是Oracle公司宣布其Java Web浏览器插件将在即将发布的第九版Java开发工具包(JDK)中弃用,这是一个用于编写和编写的平台。用Java编程语言打包软件应用程序。将这两个真实的,如果不太重要的里程碑放在一起,似乎可以肯定地说,对于那些记得Java小程序作为一种常见的WWW技术的最初承诺的人来说, 20世纪90年代中期,这是近期科技历史悄然走到尽头的一个章节
可以肯定的是,甲骨文的手被微软,谷歌和苹果所迫,他们在浏览器产品中减少了对Java插件的支持,或者完全删除了它。然而,嵌入式Java小程序早已成为传统技术,对于某些计算密集型图形可视化任务(在科学应用程序中不成比例)仍然有用,但不再在该领域之外广泛使用。无论他们是否足够老,都能记住浏览器中最初想象的Java角色,特别是大多数设计网站和编程网络应用程序的人今天都不会后悔自己的日食。甚至在2012年个人数据安全作为一个实质性的公共问题出现之前,Java applet就提出了严重的,通常难以处理的安全风险,Web开发人员不得不学习如何管理或忽略。到2016年Java浏览器小程序无关的一个更普遍的原因是历史原因,它与整个软件开发行业中Java编程语言和Java程序员的概况变化相关联。当弗雷德里克·布鲁克斯(Fredrick P. Brooks Jr.)选择“神话人月:软件工程论文集”(1975年)的第七章“为什么巴别塔失败了?”时,他反思巴贝尔作为圣经的故事。工程的寓言(傲慢或仅仅是冒险建造一座高到足以达到天堂的塔),而不是语言的寓言(以语言差异和永久受损的沟通形式强加的神圣惩罚).4尽管如此,神话人月,第一个广泛阅读,仍然是最着名的管理大型软件项目的反思,也是一个非正式的通信研究,不排除软件程序员努力用机器实现的隐喻通信。

本文是关于技术专业知识的谈判,特别是涉及软件编程的技术专业知识,特别是涉及编程网站和应用程序的技术专业知识,即今天所谓的“网络开发”。我从目前的历史时刻开始,被理解为持续经济衰退的区间(或者,如果一个人坚持认为,“不均衡的复苏”)由“编码”指令中的经济和政治投资所塑造,作为失业和就业不足的美国的就业再培训。蓝领和白领都一样。近年来,像Adrian Mackenzie这样的社会学文化研究学者在软件开发文化方面做出了宝贵的工作,这些工作对于同时具有技术知识和社会关注性而言是值得称赞的.5虽然它在所谓的软件研究中接受了这种研究。人文学科的奖学金并没有表现出对特定语言计算历史的特定社会和文化维度的相称兴趣,特别是在个别编程语言及其发展和使用文化受到关注的情况下.6除了广泛的例外情况。当然,计算史和科学技术研究的范围更广。但即使在这里,马克普里斯特利肯定是正确的,他认为编程语言的早期纯技术历史已经被软件作为一般对象和领域的社会关注历史所遵循,使得个别语言成为技术和社会可能同等对象的对象。 study.7
允许不必重复早期的,狭隘的技术历史 - 它们是细致的,如果不出所料地在字符8中不成比例地传闻 - 我们如何描述人文研究空间将编程语言的早期历史编纂分开,这与Fortran,Lisp一样古老, Algol和Cobol语言本身(起源,也就是说,在20世纪50年代后期),以及软件概念的近期社会历史,如Martin Campbell-Kelly的“从航空公司预订到Sonic the Hedgehog:软件产业的历史”9我建议,威廉·保尔森在一篇题为“为了一个宇宙政治语言学:科学研究的经验教训”的文章中找到了一条线索,10就在那篇文章中,保尔森提出了引入科学技术研究(STS)的价值。奖学金与旧文学人文主义文献学传统接触:一种传统,其方法论具有全球性的比较性和多语言性,其模式是研究多种语言的文本(需要对语言本身进行深入研究),这些文本植根于特定的西方知识 - 历史传统,即世俗或历史人文主义的传统。如果我们抛弃后一种传统(STS学者肯定会将自己理解为与“语言学家”共享,即与语言和文学学者共享),语言学的特征模式,基于语言特异性的任务,即使是不可通约性,也不能说是STS奖学金的强大力量甚至必然是正常的特征。
从接近保尔森自己的位置,人们可能会邀请软件研究和所谓的关键代码研究,以及STS本身,以建立一个与文献学相关的想象的联系。我们可能会问,一项特定计算机编程语言的语言学研究 - 即技术和社会导向的史学最低限度 - 是什么样的?有关如何在信息科学的学科背景下提出这个问题的例子,而不是在人文学科的范围内(我将在这里做),我们可以参考最近的工作,如Andrew J. Ko的“什么是编程语言” ,真的吗?“ “在计算方面,”Ko评论说,“我们通常采用编程语言(PL)的技术观点,将它们定义为指定计算机行为的正式手段。这种观点形成了我们对PL做的大部分研究,确定了我们的问题询问他们,我们对他们所做的改进,以及我们如何教人们使用它们。但对很多人来说,PL不是纯技术性的东西,而是社会技术的东西。“11尽管如此,像Ko这样的文章非常少而且在技​​术科学领域,在社会科学和人文科学领域,通常,在这个特殊情况下,也许是不可避免的敷衍。无论我们如何选择解释它,Ko在2016年得出的结论是“[o]议程,特别是那些探讨PL的人类,社会,社会和道德维度的议题,几乎没有被探索过”12当然是有道理的。

Java和JavaScript

1995年12月,Sun Microsystems和Netscape Communications发布联合新闻稿,宣布“JavaScript,企业网络和互联网的开放式,跨平台对象脚本语言”,14 Sun的Java编程语言已经很好地实现了几乎无可争议的市场支配地位,比较声望和特权作为一种教学语言,它将享受十年甚至更长时间。尽管Java 1.0是第一个公开发布,仅在同一年出现,但Sun对Java Runtime Environment真正的平台中立性和可移植性的承诺立即吸引了企业软件开发人员厌倦了C和C 语言对它们的要求。然后广泛使用。 Java承诺会缓和C和C 提供给低级内存管理的访问所带来的一些复杂性,以及C 所设想的特定复杂性,这些复杂性被设想为“C with classes”,而不会降低这些语言的功能和表现力。特别提供给企业系统程序员。虽然它最初是为嵌入可编程消费类设备的轻量级硬件应用程序而设计的,后来只适用于HTML页面中的服务和嵌入,但Java本身就是一种专业语言,限制了它对数据类型的要求(静态和强大)在推广单一编程风格时,面向对象编程(OOP)范例将有助于普及,以及这些形式的限制产生的冗长。作为C和C 的专业替代品,而不是两者的根本偏离,Java的相对易用性包括对没有经验的编码员或非专业人员的特殊声称。

JavaScript是不同的。 Sun和Netscape的新闻稿使用“互补”一词三次来描述JavaScript与Java的关系:“JavaScript作为Java的补充”(在文档的副标题中)。 “JavaScript语言补充了Java。” “[JavaScript]是对Java的补充和集成。” Java,新闻稿强调,“程序员使用它来创建新对象和小程序”,而“JavaScript”旨在供HTML页面作者和企业应用程序开发人员使用,以动态编写在客户端或服务器上运行的对象的行为脚本“。如果提到“企业应用程序开发人员”和服务器端应用程序在Java开发的既定行业中提出了JavaScript的位置,那么后面的句子更好地说明了HTML页面作者的想象方式,以及他们如何想象JavaScript在Java中的补充。不同的意义。 “JavaScript类似于Visual Basic,”它读到,“它可以被很少或没有编程经验的人用来快速构建复杂的应用程序。
从它的介绍,软件开发人员的JavaScript接收,以及它在“网络开发”中的重要性,我们现在理解它(作为软件开发或图形设计的一个领域,取决于一个人的要求),是通过不断的专业知识谈判构建的。特别是今天,很少遇到初学者的入门教程或教科书,在开始涵盖甚至基础知识之前没有停下来消除Java的歧义.17大多数情况下,尤其是今天,这种消歧的动机不是为了澄清这两种语言的历史关系,而不是通过将Java与特定Java的关联,Java的冗长及其面向对象的编程范例,以及Java与企业应用程序编程的关联,软件工程的苦差事,将JavaScript空间分离开来。 - 它在2000年代和2010年的更灵活和实验性的创业文化中的存在也减少了。虽然这种姿态在Java的声誉或多或少明显下降的时刻是可以理解的,但是它们可以掩盖这两种语言的历史缠绕,其结果令人遗憾,除了最纯粹的实践或工具性观点。

我使用术语“即兴专业知识”来描述JavaScript的意外开发的条件和效果,仅仅是为休闲和不熟练的程序员设计的Java的补充,到一种语言,其范围和使用的复杂性现在推动它超前于Java在某些方面,甚至(通过一些措施,在某些领域)Java曾经占主导地位。我的论点是,这种“即兴的专业知识”将JavaScript至少部分地与其他类似的实验区分开来,这些实验在非专家的编程中可以使用原始的BASIC语言,该语言是在20世纪60年代开始作为达特茅斯学院的教学语言开发的。
即兴专业知识的概念也包含了JavaScript近期历史中三种特定发展动态的条件和影响。首先是语言本身发展的快速加速,现在正以这样的速度发展,即ECMAScript(JavaScript所依据的规范)在2015年从使用传统的序数版本号转换为基于年份的指定(因此ECMAScript版本6的官方名称现在是ECMAScript 2015,新版本将每年发布。其次是最近JavaScript在服务器端网络,数据处理和其他所谓的后端开发任务中的突然出现和极快速增长,这个领域传统上与面向用户的,面向设计的前端站点分开处理Sun和Netscape 1995年新闻稿中提出的开发将是JavaScript的主要用例。第三是JavaScript作为新一代动态Web应用程序框架(主要是Ember.js,AngularJS,Facebook的React,还有Meteor,Express等)和开发人员的主导语言同样最近且突然但决定性的出现。支持它们的工具套件,部分取代了在21世纪后期普及的基于Ruby语言的Rails框架。
这种快速的,基本上无法预料的JavaScript应用范围的增长及其在软件行业的普遍重要性甚至已经看到它作为首选语言进入初级计算机科学教学,在某些情况下取代了Python(它本身有选择地取代了Java)在课堂上。在这里,短语“即兴专业知识”标志着一个悖论:虽然核心JavaScript在使用JavaScript从应用程序,网站和应用程序开发的主要领域中抽象出来时仍然是一种小而易于理解的语言。如果没有对语言的高级功能和对多种编程范例的支持以及基于JavaScript的新开发框架和工具套件的非常实质性的持续研究,今天在这些领域的专业性几乎是不可能的,其疯狂的开发速度实际上确保了在它们出现beta状态和相应的文档级别之前,它们将被其他更新的框架和工具所取代。这确保了新专业JavaScript开发人员的学习曲线 - 更不用说非程序员JavaScript最初的设计服务 - 确实非常非常陡峭,并且它表明,JavaScript的即兴专业知识迟早会在其中发挥作用。最近推动“人人享有计算机科学”和其他经济管理计划的失望,这些计划将编码技能与基本识字(即人类语言的阅读和写作)以及基本的所谓计算机知识混为一谈(即,有效地使用通用和特定于域的预打包软件应用程序)。 JavaScript作为一种编程语言的历史在许多方面都是常规的,如果简化产生复杂性的有趣情况,“为所有人编码”及其变体的逻辑可以说是对软件生产本身复杂性管理的神奇思考的重复,在这个意义上,我们称之为“JavaScript”的不仅仅是一种编程语言,而不仅仅是支持编程语言的环境和工具的集合,包括规范和其他文档,实现,以及这两种动态。主要和次要程序工件(从开发工具和框架到特定解释器或“引擎”,编译器和转换器,以及嵌入在浏览器或服务器应用程序中的其他软件组件)。 JavaScript,至少在目前和近期,可以被理解为更广泛的技术和技术 - 历史动态,劳动和管理实践和安排的集合,以及关于教育,职业培训和生产的话语,这些都是技术专长的特权,但也寻求在历史间隔中概括它。

虽然这些细节仅仅与我在本文中关注的主题,JavaScript编程语言的历史,每一个细节,新近私有化和新近可公开访问的互联网服务,新的经济治理机

资料编号:[5686]

原文和译文剩余内容已隐藏,您需要先支付 20元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。