当前位置: 首页 > news >正文

为什么北欧的顶级程序员数量远超中国?

说起北欧,很多人会想到寒冷的冬天,漫长的极夜,童话王国和圣诞老人,但是如果我罗列下诞生于北欧的计算机技术,恐怕你会惊掉下巴。

52a03ff4720eb0769a81ca99b4d8f833.png

Linux:世界上最流行的开源操作系统,最早的内核由Linus Torvalds开发,芬兰人

a07482bbee13f2e7a655d37f0bd3ca35.png

MySQL:世界上最流行的开源数据库,主要的开发者是Monty,芬兰人

abbc300cc16d8fb3423597d43271f39e.png

Chrome V8 :世界上最流行的JavaScript引擎,主要作者Lars Bak ,丹麦人

8e11f74c068b95f079ae932c793c4218.png

MineCrfat:世界上最流行的沙盒游戏,主要作者Markus Persson,瑞典人

5b930526288b04c4476c3b0507b2ebd5.png

cURL :世界上最流行的,支持各种网络协议的数据传输工具和库,被全球有100亿台设备使用,作者Daniel Stenberg,瑞典人。

8e4c5db579daef0fb3519f19356e4a06.png

SSH世界上最流行的加密的网络传输协议,最早由Tatu Ylönen开发,瑞典人

fa326ae9e2b3f96fa422805e478ddada.png

QT :  流行的跨平台GUI框架,最早由Haavard Nord 由 Eirik Chambe-Eng开发,芬兰人

01ae9ab0dd48c8e370d8d78f587884c8.png

Unity: 世界流行的游戏引擎,由3个丹麦人发明

面向对象技术:Dahl 和 Nygaard 于上世纪60年代发明, 挪威人

这些技术哪怕在中国出现一个,绝对会吹上天。

更不用说北欧还诞生了Turbo Pascal(丹麦),即时通信软件Skype(瑞典+丹麦),在线流媒体平台Spotify(瑞典),浏览器Opera(挪威)......

要知道,北欧包括丹麦(587万人)、芬兰(554万人)、冰岛(37万人)、挪威(540万人)和瑞典(1042万),合计2760万人,还没有中国一个省人多。

北欧为什么能诞生这么多改变世界的计算机技术?

难不成是因为身处高纬度地区,长夜漫漫,总想着搞点儿发明创造?

这个问题我很好奇,搜索了一番,发现了这些可能的原因:

1. 教育优势

北欧的教育非常发达,拥有高质量的教育体系,许多人接受了高质量的教育,包括计算机科学和软件工程领域。

2018年,各国公共财政教育支出占GDP比例,按从高到低排名,前五名是挪威,丹麦,芬兰,冰岛,瑞典,北欧5国霸榜,遥遥领先。

e3b04dc5ed0a0119603549f8ebc06417.png

尤其是挪威和丹麦,超过了7%, 其他三国也在5.5%以上。

不仅投入高,北欧的教育特别注重学生的自主学习和实践能力培养,同时也致力于为学生提供多元的学科背景和跨学科研究的机会。

例如瑞典,从小就注重提高公民科学素质,小学课程设置以培养兴趣为主,除语文、数学和自然等必修课外,还有家政课和手工课等培养动手能力的课程。

高中毕业后的学生一般先工作1-4年后再读大学,由于学生具有了一定的工作经验和社会经验,知道自己需要学习什么,对什么感兴趣,所以学习起来思路和灵感就会很多。

2. 重视IT技术

像Linux之父,MySQL之父,还有很多其他北欧大佬,都是十几岁就有了自己的电脑,开始玩游戏,玩不过瘾自己写游戏,从此走上编程之路。要知道这是在七十年代末,八十年代初,电脑还属于贵重物品,北欧发达的经济为孩子们提供了接触最前沿IT技术的机会。

对于一些不富裕家庭,政府会承担起责任,例如瑞典在1998年推出了“每个家庭至少一台电脑”的政策,对推动IT技术发展影响极为深远。

政府鼓励企业付费给员工买家用电脑,就能减免税费,员工不论职位高低,连清洁工都包含在内。

这个计划实施了3年,到2001年已经有85万个家庭购买了电脑,涵盖了瑞典将近25%的家庭。

Klarna(网络支付公司)的创始人西米亚特科夫斯基对此非常感慨,他说:像我们这样的低收入家庭,根本负担不起买电脑的开支,但是当政府一推出改革措施,我母亲第二天便买了一台电脑。

西米亚特科夫斯基在16岁起就可以在家中学习编程,20多年后,他的Klarna网络支付公司估值达到460亿美元。

瑞典还积极投资建设网络基础设施,1995 – 2005短短十年间,网络渗透率由5%暴涨到85%,手机渗透率由22%到超过100%(意思是平均每个人拥有超过一只以上的手机)。相比发明网络与手机的美国,在2005年的网络及手机渗透率却分别只有68%和69%。

网络的普及,成为信息科技创新企业的温床,这一点中国也应该深有体会,4G普及以后,中国移动互联网产业大爆发,一下子涌现出了大量的互联网公司,深入生活的方方面面。

3. 社会福利兜底

北欧五国是全世界著名的高税收高福利国家,丹麦72%的税收用于各种福利,挪威和瑞典社会福利支出占GDP的34%和38%,高支出建立了让人羡慕的福利体系,我这里不想再列举枯燥的数字了,总结来说就是:

不用担心生孩子,国家每月发钱,产假极长,亲子假机多。

不用担心上学,教育免费,还有补贴。

不用害怕生病,医疗完全免费或者费用极少。

不用害怕失业,失业补助非常可观。

在这样的环境中,人们不会那么焦虑,可以把更多的精力和时间投入到自己真正喜欢的领域,而没有后顾之忧。

新创业的太阳能公司 Trine 的创办人 Sam Manaberi 说:“良好的社会福利制度就像安全网,让我更能无后顾之忧地投入创业之中。(创业失败)最坏的情况就是我没有薪水,但是我的小孩还是能享有医疗及教育。”

Klarna的创始人西米亚特科夫斯基表示,自己的巨大成功可以归功于国家的福利制度。如果生意失败或者失业,也不用担心破产。

我时常会想,如果中国也能提供这样的福利,以中国的人口数量,会不会有大量的天才追随自己的兴趣,实现发明创造呢?

4. 鼓励创新的文化氛围

“创新者需要有独立的人格,而不是对权威惟命是从;他要有独立的思考能力和判断能力,而不是人云亦云;他要有平常心,而不是患得患失;他是一个安宁的、踏实的人,而不是心情浮躁,急于求成。”---易纲

北欧尤其是瑞典的教育从小学开始就是讲究和谐、平等,一切都任由天性和本能,从小就树立和培养出放松心态,让有创新能力的人基于个人兴趣,而不是带有功利思想,从容地进行发明创造。

瑞典上大学免费,基本想上就能上,但是瑞典青年上大学的比例在欧美国家并不算高,很多人更喜欢去职业学校学习自己喜欢的东西,

当然,这种心态也需要高水平的社会经济做支撑,需要和民族的文化积淀联系在一起,别的国家不一定有这样的土壤,更不能全盘照搬。

结语我写公众号这几年,遇到过不少小天才,有的在六年级就开始读《计算机程序设计艺术》,谈起C++编译优化头头是道;有的在初三写虚拟机,手搓操作系统...... 考虑到中国庞大的人口基数,这样的孩子应该还有很多,如果在成长的过程中如果有良好的环境,未来的生活没有后顾之忧,一定会迸发出强大的创造力,可以像北欧的程序员那样开发出众多世界流行的软件。

如果他们长大后还像如今程序员那样,被繁重的工作、高昂的房价、被医疗、教育等问题压得喘不过气来,恐怕我们只能继续去羡慕别人了。

参考资料: http://www.malaysiaeconomy.net/id_232321/d32vaa4z1a11/2016-02-11/37059.html

可以点击下方图片,进一步了解北欧各位大佬的故事

40f477b6a802dfbeaf4bf7e10aedf9ee.png

a82252940d82d07a2259012fd3048498.png

9ddc9478fd11f61d0bfd188855b34102.png

b03120761ce4ad078d40aceeffce8d37.png

相关文章:

为什么北欧的顶级程序员数量远超中国?

说起北欧,很多人会想到寒冷的冬天,漫长的极夜,童话王国和圣诞老人,但是如果我罗列下诞生于北欧的计算机技术,恐怕你会惊掉下巴。Linux:世界上最流行的开源操作系统,最早的内核由Linus Torvalds开…...

vuex getters的作用和使用(求平均年龄),以及辅助函数mapGetters

getters作用:派生状态数据mapGetters作用:映射getters中的数据使用:方法名自定义,系统自动注入参数:state,每一个方法中必须有return,其return的结果被该方法名所接收。在state中声明数据listst…...

20230311给Ubuntu18.04下的GTX1080M安装驱动

20230311给Ubuntu18.04下的GTX1080M安装驱动 2023/3/11 12:50 2. 安装GTX1080驱动 安装 Nvidia 驱动 367.27 sudo add-apt-repository ppa:graphics-drivers/ppa 第一次运行出现如下的警告: Fresh drivers from upstream, currently shipping Nvidia. ## Curren…...

2023腾讯面试真题:

​【腾讯】面试真题: 1、Kafka 是什么?主要应用场景有哪些? Kafka 是一个分布式流式处理平台。这到底是什么意思呢? 流平台具有三个关键功能: 消息队列:发布和订阅消息流,这个功能类似于消息…...

23种设计模式-建造者模式(Android应用场景介绍)

什么是建造者模式 建造者模式是一种创建型设计模式,它允许您使用相同的创建过程来生成不同类型和表示的对象。在本文中,我们将深入探讨建造者模式的Java实现,并通过一个例子来解释其工作原理。我们还将探讨如何在Android应用程序中使用建造者…...

English Learning - L2 语音作业打卡 双元音 [ʊə] [eə] Day17 2023.3.9 周四

English Learning - L2 语音作业打卡 双元音 [ʊə] [eə] Day17 2023.3.9 周四💌发音小贴士:💌当日目标音发音规则/技巧:🍭 Part 1【热身练习】🍭 Part2【练习内容】🍭【练习感受】🍓元音 [ʊə…...

【动态规划】多重背包问题,分组背包问题

Halo,这里是Ppeua。平时主要更新C语言,C,数据结构算法......感兴趣就关注我吧!你定不会失望。 🌈个人主页:主页链接 🌈算法专栏:专栏链接 我会一直往里填充内容哒! &…...

JAVA面向对象特征之——封装

4.封装 private关键字 是一个权限修饰符 可以修饰成员(成员变量和成员方法) 作用是保护成员不被别的类使用,被private修饰的成员只在本类中才能访问 针对private修饰的成员变量,如果需要被其他类使用,提供相应的操作 提供 “get变量名()…...

【数据结构】二叉树相关OJ题

文章目录一、单值二叉树二、检查两颗树是否相同三、判断一棵树是否为另一颗树的子树四、对称二叉树五、二叉树的前序遍历六、二叉树中序遍历七、二叉树的后序遍历八、二叉树的构建及遍历一、单值二叉树 单值二叉树 题目描述 如果二叉树每个节点都具有相同的值,那…...

Windows安装Hadoop

当初搭建Hadoop、Hive、HBase、Flink等这些没有截图写文,今为分享特重装。下载Hadoop下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/以管理员身份运行cmd切换到所在目录执行start winrar x -y hadoop-3.3.4.tar.gz,解压。配置…...

ICG-Hydrazide,吲哚菁绿-酰肼,ICG-HZ结构式,溶于二氯甲烷等部分有机溶剂,

ICG-Hydrazide,吲哚菁绿-酰肼 中文名称:吲哚菁绿-酰肼 英文名称:ICG-Hydrazide 英文别名:ICG-HZ 性状:粉末或固体 溶剂:溶于二氯甲烷等部分有机溶剂 稳定性:-20℃密封保存、置阴凉干燥处、防潮 分子…...

【论文阅读】浏览器扩展危害-Helping or Hindering? How Browser Extensions Undermine Security

本文来源于ACM CCS 2022; https://dl.acm.org/doi/10.1145/3548606.3560685 摘要 “浏览器扩展”是轻量级的浏览器附加组件,使用各个浏览器特定的功能丰富的JavaScript api,为用户提供了额外的Web客户端功能,如改进网站外观和与…...

线性和非线性最小二乘问题的常见解法总结

线性和非线性最小二乘问题的各种解法 先看这篇博客,非常好:线性和非线性最小二乘问题的各种解法 1. 线性最小二乘问题有最优解 但是面对大型稀疏矩阵的时候使用迭代法效率更好。 迭代法 有Jacobi迭代法、 Seidel迭代法及Sor法 【数值分析】Jacobi、Se…...

数据库知识点

数据库是指按照一定规则存储、组织和管理数据的系统。在现代化的信息化社会中,数据库已经成为了各种应用系统中不可或缺的一部分。因此,对于数据库的知识掌握不仅是计算机专业人员必备的技能,也是各个行业从业者必须具备的基本素质之一。 数…...

Maven打包构建Docker镜像并推送到仓库

Maven打包构建Docker镜像并推送到仓库 文章目录Maven打包构建Docker镜像并推送到仓库一,服务器Docker配置二,本地项目maven配置2.1 pom.xml2.2 dockerfile2.3 验证2.4 统一dockerfile对于开发完成的服务要发布至服务器Docker时,我刚学习了解D…...

TypeScript 基础学习之泛型和 extends 关键字

越来越多的团队开始使用 TS 写工程项目, TS 的优缺点也不在此赘述,相信大家都听的很多了。平时对 TS 说了解,仔细思考了解的也不深,借机重新看了 TS 文档,边学习边分享,提升对 TS 的认知的同时,…...

《数据分析-JiMuReport04》JiMuReport报表设计入门介绍-页面优化

报表设计 2 页面优化 如上图所示的报表,仅仅是展示数据,不过这样看起来似乎太草率了,所以再优化一下吧 保存报表后,在积木报表中就可以看到对应的报表文件 此时我们如果还需要编辑报表,就点击这个报表即可 2.1 居中…...

带头双向循环链表及链表总结

1、链表种类大全 1、链表严格来说可能用2*2*28种结构,从是否带头,是否循环,是否双向三个角度区分。 2、无头单向循环链表一般不会在实际运用中直接存储数据,而会作为某些更复杂结构的一个子结构,毕竟它只在头插、头删…...

(八十)MySQL是如何基于各种规则去优化执行计划的?(中)

今天我们来讲一下子查询是如何执行的,以及他的执行计划是如何优化的。比如说类似于下面的SQL语句: select * from t1 where x1 (select x1 from t2 where idxxx) 这就是一个典型的子查询 也就是说上面的SQL语句在执行的时候,其实会被拆分为…...

第一章:命题与命题公式

1.命题与命题联结词 1.命题与命题的表示 1. 命题 由一个或几个已知的前提,推导出来一个未知的结论的思维过程称为推理,推理的基本要素就是表达这些前提的一些陈述句,可以将这些陈述句理解为命题。 (1)地球是行星 (2)8不是素数 (3)1 + 2 = 22. 命题真值 一个陈述句不…...

网络六边形受到攻击

大家读完觉得有帮助记得关注和点赞!!! 抽象 现代智能交通系统 (ITS) 的一个关键要求是能够以安全、可靠和匿名的方式从互联车辆和移动设备收集地理参考数据。Nexagon 协议建立在 IETF 定位器/ID 分离协议 (…...

Qt Widget类解析与代码注释

#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this); }Widget::~Widget() {delete ui; }//解释这串代码,写上注释 当然可以!这段代码是 Qt …...

关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案

问题描述:iview使用table 中type: "index",分页之后 ,索引还是从1开始,试过绑定后台返回数据的id, 这种方法可行,就是后台返回数据的每个页面id都不完全是按照从1开始的升序,因此百度了下,找到了…...

《通信之道——从微积分到 5G》读书总结

第1章 绪 论 1.1 这是一本什么样的书 通信技术,说到底就是数学。 那些最基础、最本质的部分。 1.2 什么是通信 通信 发送方 接收方 承载信息的信号 解调出其中承载的信息 信息在发送方那里被加工成信号(调制) 把信息从信号中抽取出来&am…...

Java 加密常用的各种算法及其选择

在数字化时代,数据安全至关重要,Java 作为广泛应用的编程语言,提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景,有助于开发者在不同的业务需求中做出正确的选择。​ 一、对称加密算法…...

HBuilderX安装(uni-app和小程序开发)

下载HBuilderX 访问官方网站:https://www.dcloud.io/hbuilderx.html 根据您的操作系统选择合适版本: Windows版(推荐下载标准版) Windows系统安装步骤 运行安装程序: 双击下载的.exe安装文件 如果出现安全提示&…...

【python异步多线程】异步多线程爬虫代码示例

claude生成的python多线程、异步代码示例,模拟20个网页的爬取,每个网页假设要0.5-2秒完成。 代码 Python多线程爬虫教程 核心概念 多线程:允许程序同时执行多个任务,提高IO密集型任务(如网络请求)的效率…...

Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决

Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决 问题背景 在一个基于 Spring Cloud Gateway WebFlux 构建的微服务项目中,新增了一个本地验证码接口 /code,使用函数式路由(RouterFunction)和 Hutool 的 Circle…...

[ACTF2020 新生赛]Include 1(php://filter伪协议)

题目 做法 启动靶机,点进去 点进去 查看URL,有 ?fileflag.php说明存在文件包含,原理是php://filter 协议 当它与包含函数结合时,php://filter流会被当作php文件执行。 用php://filter加编码,能让PHP把文件内容…...

认识CMake并使用CMake构建自己的第一个项目

1.CMake的作用和优势 跨平台支持:CMake支持多种操作系统和编译器,使用同一份构建配置可以在不同的环境中使用 简化配置:通过CMakeLists.txt文件,用户可以定义项目结构、依赖项、编译选项等,无需手动编写复杂的构建脚本…...