week4
History:Commercialization and Growth
Explosive Growth of the Internet and Web
The Year of the Web
老师介绍了在1994年所发生的关于web的几个重要的事件。

网景公司在当时是开发浏览器的前列。他们的产品能够支持Mac、Linux、Windows。而微软在自己的操作系统里面配置了以TCP/IP协议为标准的浏览器。因此两家的竞争也是相当的激烈。微软曾经尝试收购Netscape,但是双方在价格方面没谈拢。因而微软公司就发誓要毁了网景公司。但是网景公司就开始致力于开发更好的软件,例如采用JavaScript。并且让原来闭源开始更加走向开源。Netscape成立了Mozilla基金会,开发出了火狐浏览器。
Mitchell Baker:The Mozilla Foundation
本节主要是对Mitchell Baker的采访。她是Mozilla的创始人之一。她首先介绍了Netscape公司之所以出名是因为生产的网页浏览器Netscape Navigator而闻名。Mozilla采取开源。当时Netscape已经被AOL收购了,流失了一些客户。而在Mozilla的他们的主要目的是构建一个成功的开源项目。当时是对于Mozilla是黑暗的几年,因为Baker她们明白要重构一些核心的技术,要花费很长的时间。
不幸的是Netscape 6失败了,这也直接或间接导致了Netscape系列的终结。当时使用Netscape 4的人们都希望能升级。但是等到升级的时候,他们就放弃了这个想法。这也说明了Netscape 6是个失败的产品,也正是这个原因AOL对他们的支持也不如以前了。之后Mitchell Baker就开始致力于UI设计这一块,当时他们的老板AOL也提出了一些要求,例如提供链接到AOL的网站或者投放一些收益广告。但是这和当初做开源项目的初衷相悖,所以导致了很激烈的fights。
由于Nestscape 6的失败,AOL收益受损,因此开始大规模的裁员。不过Baker还是以志愿者的身份领导这个开源项目好几年。经过不懈的努力,Mozilla产品发布了,不过这款产品的用户体验并不是很好。之后Baker加入了另一个开源项目,和Mitch Kapor一起工作了一段时间。
2003年Mozilla Foundation成立,Mitch was the first chairman.他们设计LOGO,设计start page,开发search box。所以他们和Google协商,Google提供支持,在start page提供搜索服务。之后,FireFox是一个成功的产品。FireFox的搜索栏也给Mozilla Foundation带来了很多的收益。
Brendan Eich - Inventor of JavaScript
1995年Eich被Netscape公司雇佣,当时Netscape公司已经发布了Mosaic Killer 1.0。Eich没有选择加入Mosaic Killer的开发,而是选择开发一种跟HTML一样的编程语言,不需要编译就能运行。也就是他写的JavaScript。
JavaScript和Java实际上没有什么联系。它的特点之一就是malleable(可扩展性)。JavaScript的语法和C比较相近。在20世纪90年代中期:
it was mainly used for annoyances like scrolling messages in the status bar at the bottom of your browser or flashing images or things that popped up windwos massively
可见刚开始JavaScript的用途并不是很让人喜欢。不过好在Firefox压制了这些现象,made it much better.两者在2004-2005年引起了Web 2.0 revolution.JQuery是一个非常流行的JavaScript库,它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,这也是JavaScript可扩展性的体现。
Commercialization of the Web
Assume the Web

如果说不是微软的相逼,Netscape会如此成功吗?在当时操作系统是没有自带浏览器的,所以Netscape就卖浏览器。正因为微软的策略导致了Firefox and Mozilla的诞生以及World Wide Web Consortium.

standars produced by the World Wide Web Consortium are high quality
The World Wide Web Consortium is a real important part of today's web
引用老师的两句原话,来说明W3C的重要性。
接着是罗列一些重要的人物以及他们的贡献:

Jeff Bezos - Founder of
杰夫在纽约的时候发现web的使用率每年以2300的百分比在增长。所以杰夫开始在网上卖书,取得了巨大的成功。接着卖Music CDs。
杰夫说:
capture mindshare on the Internet is extremely difficult。
也就是说当时要引起人们的注意是相当困难的。而当时很多媒体的报道以及顾客的口口相传,还是让Amazon走上了成功。
The Modern Internet
光纤的普及使得我们能够传输更多的数据。光纤相比于以前的铜线传输,距离已经不再是影响Internet的主要因素了。

week4的更多相关文章
- Spark小课堂Week4 从控制台看Spark逻辑结构
Spark小课堂Week4 从控制台看Spark逻辑结构 层级关系: 从监控控制台,我们可以看到如下关系: 一个 Job 包含 n Stage 一个 Stage 包含 n Task Job0解决什么问 ...
- 20165214 2018-2019-2 《网络对抗技术》Exp1+ 逆向进阶 Week4
<网络对抗技术>Exp2 PC平台逆向破解之"MAL_简单后门" Week4 一.实验内容 Task1 自己编写一个64位shellcode.参考shellcode指导 ...
- 20165214 2018-2019-2 《网络对抗技术》Exp2 后门原理与实践 Week4
<网络对抗技术>Exp2 PC平台逆向破解之"MAL_简单后门" Week4 一.实验内容 本次实验对象为名为pwn1的pwn1的linux可执行文件.程序正常执行流程 ...
- 21 week4 submit buidAndRun() node-rest-client
. 我们想实现一个提交代码的功能 这个功能有nodeserver 传到后边的server 验证 在返回给nodeserver 我们稍微修改一下ui ATOM修改文件权限不够 用下面命令 我们 Cont ...
- 20135202闫佳歆--week4 两种方式使用同一个系统调用--实验及总结
实验四 使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用 在这里我选择的是第20号系统调用,getpid. 1.使用库函数API: 代码如下: /* getpid.c */ #incl ...
- Internet History, Technology and Security (Week4)
Week4. We are now moving into Week 4! This week, we will be covering commercialization and growth. T ...
- 【Python学习笔记】Coursera课程《Using Databases with Python》 密歇根大学 Charles Severance——Week4 Many-to-Many Relationships in SQL课堂笔记
Coursera课程<Using Databases with Python> 密歇根大学 Week4 Many-to-Many Relationships in SQL 15.8 Man ...
- 《程序员思维修炼》读书笔记——week4
<程序员思维修炼>读书笔记——week4 PB16061441 陈昶金 这周读的是Andy Hunt的著作<程序员思维修炼>,这本书对于我这种刚刚入门的新手很友好,大多是讲一些 ...
- week4 作业
week4 作业 1.定义一个对所有用户都生效的命令别名,例如:lftps='lftp 172.168.0.1 /pub' 在 ~/.bashrc中添加命令: alias = 'rm -i' 2.显示 ...
- 《Using Python to Access Web Data》Week4 Programs that Surf the Web 课堂笔记
Coursera课程<Using Python to Access Web Data> 密歇根大学 Week4 Programs that Surf the Web 12.3 Unicod ...
随机推荐
- Android 7.0以上版本 系统解决拍照的问题 exposed beyond app through ClipData.Item.getUri()
解决方案1: android.os.FileUriExposedException: file:///storage/emulated/0/ilive/images/photophoto.jpeg e ...
- helm 部署
Helm 基本概念 Helm 可以理解为 Kubernetes 的包管理工具,可以方便地发现.共享和使用为Kubernetes构建的应用,它包含几个基本概念 Chart:一个 Helm 包,其中包含了 ...
- Node.js实战(十)之EventEmitter
Node.js 所有的异步 I/O 操作在完成时都会发送一个事件到事件队列. Node.js 里面的许多对象都会分发事件:一个 net.Server 对象会在每次有新连接时触发一个事件, 一个 fs. ...
- 深入C#学习系列一:序列化(Serialize)、反序列化(Deserialize)
序列化概述: 序列化 (Serialization)将对象的状态信息转换为可以存储或传输的形式的过程.在序列化期间,对象将其当前状态写入到临时或持久性存储区.以后,可以通过从存储区中读取或反序列化对象 ...
- 如何为一个类型为Color的属性设置默认值
最近在研究GDI+的时候,用winform来写自定义控件遇到需要为控件的属性设置默认值,但这个属性的类型是System.Drawing.Color.本文只是总结一下各种设置的方法. Example [ ...
- Python2.7-codecs
codecs 自然语言编码转换模块 模块内的主要方法如下: codecs.encode(obj[, encoding[, errors]]):对obj用encoding编码codecs.decode( ...
- day34
今日内容: 1.开启子进程的两种方式 2.join方法 3.进程之间内存空间相互隔离 4.僵尸进程和孤儿进程 5.守护进程 6.互斥锁 7.进程对象其他相关的属性和方法 1.开启子进程的两种方式 方式 ...
- sql语句之随机查询记录和批量插入--基于mysql
本周遇到了好几次数据库方面的问题,一个是上一篇文章提到的因为要修改数据结构引起的在表间复制字段的需求,另一个就是这篇文章要写的:1,从某个数据表中按照某个字段不重复的随机选取几百条记录:2,然后把这些 ...
- ucos获得系统时间OSTimeGet();
OSTimeGet() 获得系统节拍值OSTime,滴答定时器中断一次OSTime++.
- StringUtils类方法归纳
StringUtils方法概览 IsEmpty/IsBlank - checks if a String contains text IsEmpty/IsBlank – 检查字符串是否有内容. Tri ...