我与 IT 这三十年:2007,桌面开始失去中心
上一篇写 2006 年,我说服务器开始变得不一样。S3、EC2、Hadoop、jQuery、Twitter、Java 开源,这些东西都在把软件从“装在某台机器上”推向“运行在一整套基础设施里”。到了 2007 年,另一个方向也开始松动:桌面不再是计算世界的唯一中心。1 月 9 日,乔布斯在 Macworld 上发布 iPhone。6 月 29 日,第一代 iPhone 正式开卖。今天再看那场发布会,很多细节已经被反复讲过:多点触控、全屏浏览器、iPod + 电话 + 互联网通信设备,乔布斯说今天要发布三个产品,最后告诉大家其实是一个。可是如果把它放回 2007 年的程序员现场,它真正刺痛人的地方不只是“手机更好看了”,而是它改变了软件运行的重心。在很长时间里,软件的主战场是桌面。Windows 桌面、Linux 桌面、浏览器、Delphi、MFC、GTK、Qt、企业客户端,都是围绕“用户坐在电脑前”展开的。服务器当然重要,但很多业务软件的用户界面仍然假定用户面对的是一台电脑、一块屏幕、一只鼠标、一个键盘。iPhone 出现后,这个假定开始被动摇。那一年我并没有立刻转去做移动开发。我仍在 Linux 公司体系里,做的是偏底层、偏服务器、偏管理软件的活。可也正是因为这样,2007 年在我的记忆里有两条线并行:一条是手机把计算入口往口袋里拉;另一条是我继续在 Linux 服务器和桌面管理工具之间打转。手机不是小电脑,是新的入口早期智能手机当然不是从 iPhone 才开始。Palm、BlackBerry、Symbian、Windows Mobile 都已经存在。很多技术人甚至会觉得,iPhone 一开始不开放原生应用,功能也不够“专业”。但它真正改变的不是参数表,而是人和软件的关系。手机不再只是电话加一些功能。它开始成为随身的计算入口。桌面时代的软件,用户通常是“坐下来使用”。移动时代的软件,用户是“随时拿出来用”。这两个动作差别很大。坐下来意味着时间较长、上下文较稳定、输入设备完整;拿出来意味着碎片化、位置相关、网络不稳定、注意力随时被打断。软件如果要适应这种入口,就不能只把桌面界面缩小。它需要新的交互、新的状态管理、新的同步方式、新的网络容错、新的通知机制,也需要重新理解用户行为。2007 年当然还没有今天这样成熟的 App 生态。App Store 是 2008 年才出现的。可第一代 iPhone 已经把问题摆在那里:如果用户未来更多时间不在桌面前,桌面软件的中心地位还能维持多久?对我这样还在 Linux 桌面和服务器世界里工作的人来说,这个变化有点远,又有点近。远的是,我们日常仍然在写 C++、GTK、系统服务和管理工具;近的是,所有人都能感到,计算设备的重心开始移动。And

相关新闻

go-plugin实战:手把手教你开发第一个WebAssembly插件

go-plugin实战:手把手教你开发第一个WebAssembly插件

go-plugin实战:手把手教你开发第一个WebAssembly插件 【免费下载链接】go-plugin Go Plugin System over WebAssembly 项目地址: https://gitcode.com/gh_mirrors/gop/go-plugin 在Go语言生态中,WebAssembly(Wasm)正成为插…

2026/7/22 17:18:04 阅读更多 →
DOS命令全解析:从基础操作到高级应用

DOS命令全解析:从基础操作到高级应用

1. DOS命令概述:从历史到现代应用DOS(Disk Operating System)作为早期个人计算机的主流操作系统,其命令行工具至今仍在Windows系统中保留着重要地位。我最初接触计算机时就是从DOS 6.22开始入门的,那些黑白界面的命令提…

2026/7/22 17:17:04 阅读更多 →
嵌入式深度睡眠模式实战:从原理到代码实现与调试避坑

嵌入式深度睡眠模式实战:从原理到代码实现与调试避坑

1. 项目概述与低功耗设计核心思路在电池供电的嵌入式设备里,功耗管理从来都不是一个“锦上添花”的选项,而是决定产品能否成功落地的生死线。我经历过太多项目,前期功能跑得飞起,一到功耗测试就傻眼,待机电流几十个毫安…

2026/7/22 17:17:03 阅读更多 →

最新新闻

多语言收据解决方案:ReceiptLine编码配置与国际化支持

多语言收据解决方案:ReceiptLine编码配置与国际化支持

多语言收据解决方案:ReceiptLine编码配置与国际化支持 【免费下载链接】receiptline Markdown for receipts. Printable digital receipts. Generate receipt printer commands and images. 项目地址: https://gitcode.com/gh_mirrors/re/receiptline 在全球…

2026/7/22 18:03:26 阅读更多 →
计算机毕业设计之基于springboot的社区人员信息服务系统

计算机毕业设计之基于springboot的社区人员信息服务系统

时代在飞速进步,每个行业都在努力发展现在先进技术,通过这些先进的技术来提高自己的水平和优势,社区人员信息服务系统当然不能排除在外。社区人员信息服务系统是在实际应用和软件工程的开发原理之上,运用java语言以及SpringBoot框…

2026/7/22 18:03:26 阅读更多 →
aws2tf革命性优化:86.5%代码缩减背后的处理系统原理揭秘

aws2tf革命性优化:86.5%代码缩减背后的处理系统原理揭秘

aws2tf革命性优化:86.5%代码缩减背后的处理系统原理揭秘 【免费下载链接】aws2tf aws2tf - automates the importing of existing AWS resources into Terraform and outputs the Terraform HCL code. 项目地址: https://gitcode.com/gh_mirrors/aw/aws2tf a…

2026/7/22 18:03:26 阅读更多 →
Jellium Desktop字幕描边设置:调整描边宽度与颜色的完整指南

Jellium Desktop字幕描边设置:调整描边宽度与颜色的完整指南

Jellium Desktop字幕描边设置:调整描边宽度与颜色的完整指南 【免费下载链接】jellium-desktop An unofficial desktop client for Jellyfin 项目地址: https://gitcode.com/GitHub_Trending/je/jellium-desktop Jellium Desktop作为一款非官方的Jellyfin桌面…

2026/7/22 18:03:26 阅读更多 →
小程序毕设选题推荐:基于Android的移动端建筑工程项目信息化管理平台 建筑工地施工资料归档管理安卓应用【附源码、mysql、文档、调试+代码讲解+全bao等】

小程序毕设选题推荐:基于Android的移动端建筑工程项目信息化管理平台 建筑工地施工资料归档管理安卓应用【附源码、mysql、文档、调试+代码讲解+全bao等】

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

2026/7/22 18:03:26 阅读更多 →
C2000 ePWM模块深度解析:从基础原理到高级应用配置

C2000 ePWM模块深度解析:从基础原理到高级应用配置

1. 深入解析C2000 ePWM模块:从基础原理到高级应用配置在电力电子和实时控制领域,无论是驱动一台伺服电机,还是稳定一台开关电源的输出电压,其核心“指挥官”往往是一个看似简单的数字信号——PWM(脉冲宽度调制&#xf…

2026/7/22 18:02:25 阅读更多 →

日新闻

TI DSP系统配置模块SYSCFG详解:中断机制与主设备优先级配置实战

TI DSP系统配置模块SYSCFG详解:中断机制与主设备优先级配置实战

1. 项目概述与SYSCFG模块的核心价值在嵌入式系统,尤其是像TI C6000系列这样的高性能DSP开发中,我们常常会与芯片手册里那些密密麻麻的寄存器打交道。很多开发者可能更关注算法实现、内存优化或者外设驱动,但对于一个稳定、高效的系统而言&…

2026/7/22 0:00:26 阅读更多 →
微信Server酱:高到达率的应急通知方案实践

微信Server酱:高到达率的应急通知方案实践

1. 为什么我们需要"最次"的通知方案? 在数字化协作环境中,消息通知系统的重要性不言而喻明。但现实情况是,企业级通知方案往往需要复杂的API对接(如企业微信、钉钉、飞书),个人开发者的小项目又经…

2026/7/22 0:00:26 阅读更多 →
甲方要的“简洁“PPT,到底是简洁还是省事?

甲方要的“简洁“PPT,到底是简洁还是省事?

甲方说"简洁一点",乙方听到的是"少做几页"。甲方说"不要太复杂",乙方理解成"别放图表了"。结果交过去,甲方说"我说的简洁不是这个意思"。"简洁"这个词在PPT语境里,是…

2026/7/22 0:00:26 阅读更多 →

周新闻

Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…

2026/7/22 8:58:19 阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/21 5:34:47 阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击: https://intelliparadigm.com 第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/22 12:54:44 阅读更多 →

月新闻