0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

魏永明: MiniGUI的涅槃重生之路

电子工程师 来源:未知 作者:电子大兵 2017-09-04 17:01 次阅读

本文背景

MiniGUI是最负盛名的开源Linux图形用户界面支持系统之一。本文是魏永明老师于公元2017年9月1日最新原创的讨论MiniGUI的涅槃重生之路的文章。

作者简介

魏永明,获清华大学工学学士、硕士学位。其主持的 MiniGUI 项目,是早期国内最知名的几大开源软件项目之一,曾广泛应用于功能手机数码相框等嵌入式产品中。魏永明于2002年创立北京飞漫软件有限公司,成功实践了围绕开源软件的双许可证商业模式;于2015年10月联合创办北京玖柏图技术股份有限公司并担任 CEO。魏永明为 Linux 及开源软件在中国的普及和应用做了大量工作,翻译或编著若干技术著作(《Linux 实用教程》、《Linux 设备驱动程序》等);2013年,鉴于他在开源软件领域做出的突出贡献,被“中国开源软件推进联盟”评选为“开源软件杰出贡献人物”。


上周去深圳出差,约了几个飞漫的前同事一起吃饭喝酒,其中高总目前供职于深圳一家数控系统开发厂商。2000年开始,高总就在 TCL 和创维力推 Linux + MiniGUI 的智能电视方案,甚至还基于 MiniGUI 开发了自己的浏览器。然而大家都知道,智能电视这一类产品在十年之后(2010年)才获得了市场的认同并得到了大的发展和普及,其中 Android 从技术上保证了智能电视这类产品的成功,高总力推的方案在当时得不到产品部门的认同,其实无关技术,而是市场还不成熟。大家谈起这些往事,各个唏嘘不已。

MiniGUI 作为生长于国内土壤的一款开源软件,1999年发布了第一个版本,2003年左右成熟起来,并在嵌入式产品类型蓬勃发展的 2000年到2010年之间获得了大量的应用,广泛应用于工业控制系统、功能手机、数码相框等类型的产品中,其中尤以华为的数码相框、联芯的功能手机方案、RDA 的功能手机方案为代表。本人于 2002 年成立了飞漫软件,尝试利用开源和商业并举的方式(双许可证模式)运营 MiniGUI 及其产品,获得了一定意义上的成功,期间也有很多经验教训。

自上面这篇文章发布以来,又有八年时间过去了,斗转星移,AI 成为下一个高科技领域的竞争焦点。在操作系统及基础软件领域,Android 已经占据了除苹果之外的所有智能手机的市场份额,但并没有完全替代所有基于 Linux 的智能设备以及其他更多的嵌入式实时系统,仍然有很多客户在使用 MiniGUI 开发各类智能设备;另一方面,MiniGUI 当年的竞争对手 Qt 几易其主,但仍然在顽强生存着。当年时兴的“嵌入式系统”字眼,已被“物联网”取代,华为的 liteOS以及其他本土开发人员发展起来的 RT-Thread、SylixOS 等 RTOS(实时操作系统)产品,获得了政府部门甚至资本市场的支持,从而获得了新的发展契机。

作为 MiniGUI 的原创者,本人对这款软件的感情自不必说。但是,除了我本人之外,还有更多的飞漫软件同事(包括高总这些 MiniGUI 的早期用户及开发者)为 MiniGUI 的发展倾注了诸多心血。

万目前供职于深圳一家明星企业,是当年飞漫深圳研发团队的负责人,侯是架构师,现在珠海创业。2007年,飞漫深圳团队在万和侯的领导下,开始负责 MiniGUI 的维护工作。在2009年左右,这个团队为 MiniGUI 开发了一整套的动画支持框架和界面开发技术。若没有 Android 的横空出世,这些技术本可以应用于功能手机的升级改造中,为功能手机提供优秀的 UI/UX 解决方案。但 Android 的开源免费,Google 的大力推广,却让这些技术丧失了应用和发展的机会。

董目前供职于小米,是 miniStudio 产品的主要开发者。miniStudio 是一个基于 Eclipse 的集成开发环境,提供了“所见即所得”的 GUI 界面编辑工具。为了实现GUI 应用的编程便利性,董改造了 MiniGUI 控件的编程框架,开发了 mGNCS(新控件集)组件,并且引入外观渲染器这样一种高级的 UI 定制体系和方案,领导团队开发了 miniStudio 产品。时隔多年的今天,当我从服务器找到 miniStudio 1.0.8 for Windows 版本,安装到电脑上并运行时,我仍然惊讶于这款软件提供的可视化编程能力,就算在今天,也是难能可贵的!但飞漫软件并没有花精力推广和发展 miniStudio,也没有基于 miniStudio 发展出可以良性循环的商业模式出来,不禁令人扼腕叹息。

mDolphin 是基于 WebKit的浏览器产品,张、吕为前后两名主力开发人员,该产品的开发历时多年持续演进,甚至成功应用于联芯的功能手机方案当中。mDolphin 是 MiniGUI 上的一款典型的大型应用软件,除了其本身的应用价值之外,也有力地证明了 MiniGUI 产品的成熟性。目前,张作为技术专家供职于阿里巴巴,吕在互联网领域创业。

上面提到的这些曾供职于飞漫软件的前同事,为 MiniGUI 的发展付出了自己的青春年华,他们的技术能力也得到了极大的提升和锻炼。不论他们后来从事什么行业,或打工或创业,在飞漫软件围绕 MiniGUI 所做的开发工作,仍然是其履历中重要的一笔。除了他们之外,在长达十多年的发展历程中,飞漫软件前后为业界培养了近百名优秀的高级软件工程师,限于篇幅不能一一列举。他们有的供职于腾讯、阿里等大型互联网公司的关键技术岗位,有的在移动互联网等领域创业,他们围绕着 MiniGUI 所做的开发和维护工作,让他们受益一生。

上周去深圳,当万在其供职的企业熟练地向他当前的同事演示和讲述 MiniGUI 之上的动画框架和相关技术时,我才深切感受到,高、万、侯、董以及其他为 MiniGUI 的发展倾注过精力的开发人员对 MiniGUI 的感情并不比我差多少。

和高总他们吃饭的时候,高总提到 MiniGUI 仍然有很旺盛的需求,仍然可以继续发展。其实就这个问题,几乎每次到深圳和高、侯他们吃饭喝酒,都会拿出来争论一番。他们认为 MiniGUI 仍然有旺盛的市场需求,应该继续发展,就这么丢下不管实在可惜;我则认为每个产品都有自己的生命周期,MiniGUI 从 1999 年到现在都已经十多年了,生命周期差不多到头了。

本人从 2010 年开始,领导原飞漫软件的团队开发过 Android 上的工具类 App(领航桌面、锁屏等),定制过智能电视方案,现在则另起炉灶在智能硬件和移动互联网领域创业。大概从2012 年开始,MiniGUI 的开发处于停滞状态,除了将万、侯他们开发的最新版本以及 mDolphin 开源发布之外,几乎没有再做过大的更新。但从2015年开始,MiniGUI 的需求又变得旺盛起来,每年都会有客户主动找飞漫软件获得 MiniGUI 的商业授权。

折腾多年以后,回过头来反思 MiniGUI 和飞漫软件走过的路,我之所以认为 MiniGUI 的生命周期已到,大致是由于飞漫软件未能取得心目中的成功。换句话说,我把技术和生意搞混淆了。一个生意可能无法持续按照单一的模式去运营,但技术却不会轻易过时。

举个典型的例子 MySQL。MySQL的早期运营公司使用双许可证模式,获得了一定程度上的商业成功,后来被 Oracle 收购,双许可证模式基本已经完成了它的历史使命,但 MySQL 的应用却随着互联网、移动互联网、云服务的发展而越发普及,就算后来出现了诸多 NoSQL 数据库,但 MySQL 仍然展现着其旺盛的生命力。

再比如 OpenGL 这类规范或者基础设施,发展了几十年,从未见过其过时。Apache、X Window 等等技术或开项目,几乎是开源世界的常青树,Linux 内核就更不用说了。

显然,只要是有市场需求和用户基础的基础软件,持续发展才是其主旋律;容易过时的是生意,而不是技术本身。

作为一款开源软件作品,MiniGUI 在技术上是成熟的,成功的;失败的只是生意:飞漫软件并没有因为 MiniGUI 而获得大的发展。我相信抛开生意,仍然有可能找到一种方法可以让 MiniGUI 继续发展下去。

就如何发展 MiniGUI 的问题,最近集中思考了几天。后来在宋宝华老师(知名 Linux 内核专家)的微信群里,宋老师找我约稿,我才确定了本文的题目:《MiniGUI 的涅槃重生之路》。


先谈最容易谈的:技术方面

技术方面,在围绕 MiniGUI 的软件栈当中,应重点做好如下三方面的工作:

  1. 在底层,为适配最新的硬件和 Linux 内核技术(主要指 GPU、OpenGL ES、Open VG 和 Direct Rendering Manager),做一些相关的工作。MiniGUI 3.0 当中,以窗口为单位,MiniGUI 支持虚拟缓冲区渲染,以进程为单位,通过使用特定的图形引擎,可以将单个进程显示在单独的显示平面(Surface)上。在这两点基础上结合 GPU 渲染,就可以实现 Android、iOS 等智能手机操作系统的 UI 效果了。

  2. 为方便MiniGUI应用的开发,需要发展集成开发环境,可以探索更高级的编程接口封装,甚至使用脚本语言来编写 MiniGUI 应用程序甚至一般的嵌入式应用程序。董在飞漫工作期间发展的 mGNCS 和 miniStudio 是一个非常好的尝试,可以作为继续发展的基础。但由于这几年移动互联网的大力发展,导致 C/C++ 开发者越来越稀缺,如果新的编程框架仍然使用 C/C++ 作为编程语言,则会对产品或技术的推广造成很大的影响。作为工具,需要考虑降低开发者的入门门槛。另外,新的编程接口封装,不应该仅仅限于 GUI 编程,而应该在一个统一的应用开发模型下,将嵌入式、物联网设备开发的其他部分也有机整合起来。这方面,近几年发展起来的服务器端 JavaScript 框架 Node.js 是一个可以参考的成功案例。当然,嵌入式或者物联网设备的开发有资源受限的问题,在开发效率和程序性能方面需要作出一些权衡,这有难度,但这也许就是可以创新的地方。

  3. 和其他开源项目合作,将 MiniGUI 作为其原生支持选项,比如 WebKit。此举可一方面发展 MiniGUI 之上的关键应用软件,另一方面可以扩大 MiniGUI 的生态体系,得到更多人的关注。

以上技术方面的未尽事宜,只要有开发者,假以时日,都是可以做出来的。但最麻烦的是谁来养这些开发者,或者,说白了钱从哪儿来?

如果是生意,该如何做?

这么多年靠技术创业,我发现单纯靠技术做生意是最难的,要难过任何一种传统的生意模式,比如开饭馆,做代理等等。大家都知道,在中国市场,软件的价值往往会被低估,通过卖软件副本来赚钱的时代也已经一去不复返,所以中国这篇土壤上从来没有孕育出微软这样的巨头。在这样的一个大环境下,飞漫之所以能够依靠 MiniGUI 这样一个单一业务坚持十多年,在 MiniGUI 停止更新后还能有一些收入,可以说完全是因为运气。但任何事情都有双面性,中国企业在互联网商业模式方面的探索,促进了腾讯、阿里等企业的飞速发展。所以,这里我可以探讨一个假设:假如能够重来,我会选择什么样的模式来做 MiniGUI 这个生意?

首先,我不会天真地认为 MiniGUI 这个生意可以做到每年上亿的营业收入,我认为一千万元的年收入规模对这样一个软件来讲就已经很好了。

其次,我认为 2010 年之前飞漫软件采取的双许可证商业模式是正确的,是当时条件下的正确选择,为飞漫软件的进一步发展积累了资金。但在 2010 年或更早,应该作出商业模式上的调整(当然,前提是本人不认为 MiniGUI 的生命周期已结束,这是眼界的局限性问题)。

最后,围绕 MinIGUI 的生意模式,正确的做法应该是:利用开源软件优势,持续扩大用户(开发者)群体,维持一个小规模(10到15人左右)的软件公司,在确保公司可以长期生存的情况下,静候市场发生变化,寻找爆发的机会或者被收购。

就我目前的状况,我的精力不允许再组建一个完整的团队来运营MiniGUI,将其作为一个生意来做。但在这里,我可以给出一个供参考的商业模式,当然,这个商业模式亦可供 RT-Thread、SylixOS 等基础软件创业团队参考:

  1. 使用 Apache许可证发布基础软件(比如操作系统、函数库等),不要再使用 GPL/LGPL 等条款发布。这样可以迅速获得最大程度的商业应用,扩大市场占有率。要知道,假如 Android 使用 GPL 许可证发布,是绝对不可能获得如此大的成功的。

  2. 提供收费的开发工具,比如 MiniGUI 的集成开发环境miniStudio,并按开发人员数量及使用年限提供许可。开源这类工具软件的意义不大,但这类工具软件运行在桌面电脑上,所以可以通过云端来控制其许可证,还可以通过云端来分发一些收费的模块或者提供技术支持服务。这样的模式下,工具软件的销售成本就会变得非常低,用户甚至可以在网页上实现在线下单,并通过邮件获得许可证。

假如采取以上的商业模式,通过适当推广,每年在全球范围内发展和保持 500 名付费开发者,则基本上可以养活一个 15人规模的小软件公司。假如推广得力,达到一千万元的年销售规模也是可能的。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 开源软件
    +关注

    关注

    0

    文章

    204

    浏览量

    15657
  • MiniGUI
    +关注

    关注

    5

    文章

    45

    浏览量

    28656
  • Linux
    +关注

    关注

    87

    文章

    10981

    浏览量

    206687

原文标题:魏永明: MiniGUI的涅槃重生之路

文章出处:【微信号:LinuxDev,微信公众号:Linux阅码场】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    基于MiniGUI的嵌入式媒体播放器的设计与实现

    具有设计简单,占用系统资源少等特点,可作为开发基于嵌入式图形界面系统的应用软件的参考。 参考文献 [1] .M 
    发表于 09-25 17:17

    MiniGUI技术白皮书 Tech WhitePaper

    MiniGUI技术白皮书 Tech WhitePaper1 MiniGUI 简介
    发表于 03-28 12:23

    基于minigui音频播放器设计

    我做的是minigui界面,播放器是madplay,如何用线程的方式用minigui界面控件来控制madplay播放,暂停,下一首,上一首。有谁能帮助我解决一下吗?
    发表于 12-25 15:29

    请问怎样对MiniGUI进行移植?

    MiniGUI的特点是什么?MiniGUI的体系结构是怎样构成的?怎样对MiniGUI进行移植?
    发表于 04-26 07:18

    MiniGUI技术白皮书

    1 MiniGUI 简介 11.1 什么是 MiniGUI ...11.2 MiniGUI 的起源和发展11.3 MiniGUI 的应用领域22 M
    发表于 03-28 09:45 59次下载

    minigui是什么

    minigui是什么 由北京飞漫软件技术有限公司开发的 MiniGUI,是面向实时嵌入式系统的轻量级图形用户界面支持系统。自 1999 年初遵循 GPL 条款1发布第一个版
    发表于 03-28 11:51 1469次阅读

    MiniGUI 的技术特点

    MiniGUI 的技术特点MiniGUI 为实时嵌入式操作系统提供了非常完善的图形(Graphics)及用户界面(UI,UserInterface)支持。MiniGUI 本身的可移植性设计,使得不论在哪
    发表于 03-28 11:58 1382次阅读

    MiniGUI的技术优势

    MiniGUI的技术优势 和其它针对嵌入式产品的图形系统相比,MiniGUI 在对系统的需求上具有如下几大优势: 1) 可伸缩
    发表于 03-28 11:59 826次阅读

    MiniGUI 的软件架构

    MiniGUI 的软件架构 4.1 基于 MiniGUI 的嵌入式系统结构为什么 MiniGUI 能够在如此众多的嵌入式操作系统上运行?这是因为 MiniGUI 具有良
    发表于 03-28 12:04 2441次阅读
    <b class='flag-5'>MiniGUI</b> 的软件架构

    MiniGUI 特性说明书 概要设计

    MiniGUI 特性说明书 概要设计
    发表于 10-27 15:06 9次下载
    <b class='flag-5'>MiniGUI</b> 特性说明书 概要设计

    MiniGUI 用户手册

    MiniGUI 用户手册
    发表于 10-27 15:08 23次下载
    <b class='flag-5'>MiniGUI</b> 用户手册

    互联网+下的中国制造业需通过转型模式来涅槃重生走向中国智造

    在“互联网+”的业态形势下,中国制造业互联网化迫在眉睫。另一方面,迫于全球制造业格局的迁移,中国制造业需通过转型模式来涅槃重生,不断缩小与制造强国的技术与创新差距,才能迈入制造强国,从而走向“中国智造”。
    的头像 发表于 12-27 11:39 5879次阅读

    MiniGUI与嵌入式系统的关系 MiniGUI移植的过程

    MiniGUI是分层设计的,层次结构如图2所示。在底层,GAL和IAL为MiniGUI提供了底层的Linux控制台或者X Window上的图形接口以及输入接口。中间层是MiniGUI的核心层,其中包括了窗口系统必不可少的各个模
    发表于 03-30 14:27 4675次阅读
    <b class='flag-5'>MiniGUI</b>与嵌入式系统的关系 <b class='flag-5'>MiniGUI</b>移植的过程

    电动汽车的重生之路还有多长

    电动汽车的重生之路还有多长
    发表于 03-21 12:23 16次下载
    电动汽车的<b class='flag-5'>重生</b><b class='flag-5'>之路</b>还有多长

    封测巨头长电科技经历了怎样的涅槃重生

    又再上升至第三。 在这个华丽转身的过程中,公司到底经历了怎样的涅槃重生?公司领导人又是以怎样的眼光和布局主导了这一幕的精彩呈现? 一、长电科技的历史渊源 那是在1972年,当时我国还处于计划经济时代,全国各地掀起了建立晶体管厂的小
    的头像 发表于 04-08 17:38 3642次阅读