在软件开发课程中使用开源软件(一)

传统软件开发课程中一般使用小型、简单的项目来进行训练,学习者接触不到真实的软件项目。在课程中引入开源软件可以改善这个问题。有大量的开源软件,不同领域、规模、复杂度;展示真实世界问题的成熟度和广度;著名的开源软件是由积极的全球社区和开发者来维护的。

在教学中,给予学生选择开源软件项目的自由是很重要的。也要考虑项目和课程的适配。参与开源软件不止提高了技术能力,还提高了社交能力。课程的时间限制会对学生参与项目造成影响。

目前这个领域关注的问题有:如何选择适当的项目(不宜过于大和复杂,也不宜过小和简单),项目的规模是学生参与的明显障碍;使用的项目应当有活跃的问题跟踪,使用版本控制系统,有代码审查;每个项目至少要有一位导师;学生评分机制,评分可以基于个人努力,包括实施、排错、测试,还有架构,评分也可以基于团队(演讲,代码分析)和个人(代码审查,项目参与)。

如何选择一个好的开源软件项目?给学生选择的自由度,但要注意项目的活跃程度、流行程度、相关性;项目维护人员的响应速度对学生完成任务很重要;寻找一个导师,例如项目里的人员。

学生接触开源软件的好处。接触真实的项目,提高技术能力;接触到当前流行的技术和工具;获得对不同框架和API的经验;在和社区沟通中学习和发展社交技巧;在开源项目中掌握的工作能力可以为真实工作做准备;开源软件项目可以激励学生,做贡献使人感觉良好;增加个人简历的专业背景,更容易获得工作机会;新一代的学生对于真实项目更感兴趣,有助于老师提高课程效果。

使用开源软件的挑战。如何选择项目是一个问题,需要识别学生可以完成的任务,列出一个清单;寻找项目、理解代码、寻找做什么是正确的、提交和接受审查、放到项目中,这都是学生面临的阻碍;时间是一个问题,如何让学生更快的参与项目。

开源编程游戏codecombat

项目网站 https://codecombat.com/

项目代码 https://github.com/codecombat/codecombat

CodeCombat是一个让学生通过玩游戏学习计算机科学的平台。

CodeCombat 是一个开源的社区项目,上百名玩家创建了各种关卡,给我们的源代码添砖加瓦,添加新功能、修复Bug、测试、甚至是将其翻译为50种语言。职员、贡献者以及网站本身都在分享创意并奋斗中成长,这就是开源社区的力量。此网站在众多开源项目之上建立,我们为表感恩,也将网站开源奉献给社区,给好奇源码的玩家提供探索和实验的项目。每个人都能加入CodeCombat社区!看一下我们的贡献者页面了解更多信息。

我们的游戏编程课程尤其适用于教室教学的需求。无编程经验的教师也可轻松授课。

编程是一种魔法。这是一种从想象中创造万物的能力。我们开始了 CodeCombat 这个项目,是为了让学习者通过编写代码感受到他们指尖上的魔力。

同时,他们也能迅速学习,因为学习的方式变快了。学习就像是对话而不是阅读枯燥的手册。我们想将这种对话带给每所学校和每个学生,因为每个人都应有机会学习编程的魔法。

为什么通过游戏来学习编程很重要?

游戏是鼓励交流、发现、试错的媒介。好的游戏能够让玩家学习到技能,正如学生在学习过程中所做的那样。

游戏能提供奖励高效的奋斗” –这种奋斗能为学习提供动力并富有激励性,而不单调乏味。

当将基于游戏的学习方式与传统教学方式比较时,区别毋庸置疑:游戏能帮助学生记住知识,集中精力,以及取得更高成就.

游戏同时提供实时反馈,使得学生调整他们的解决方法,并且从整体理解概念,而不局限于“正确”或者“错误”的答案。

一个伟大的游戏不仅仅是勋章和成就。它包括了玩家的旅程,设计良好的关卡,以及用帮助和信心迎接挑战的能力。

CodeCombat是一款这样的游戏:它通过我们的完善的代码引擎,给玩家提供帮助和信心,使得初学者和高级学生都可以编写合适、有效的代码。

课程可用如下语言:JavaScript,Python,还有Java(即将推出!)

开源分布式社交网络Mastodon

项目网站 https://joinmastodon.org/

源代码 https://github.com/tootsuite/mastodon

https://kevq.uk/how-does-mastodon-work/

今年早些时候曾经设想过一个新型的社交网络。当前社交网络的形式高度一致化,发布文字和图片和视频、赞、评论、关注、加好友、聊天。各种不同垂直方向的社交网络本应从用户需求出发设计不同的产品形态,但因为创造力的匮乏以及抄袭成风,最后都采用了同一形式。最重要的一点,社交网络的用户对自己的数据没有所有权,数据发布后无法导出到本地,无法导出到其他网络。在一个社交网络上发布了数百数千内容后,如果社交网络环境变得糟糕或者不可用,用户就陷入一个进退两难的境地,个人数据面临丢失的巨大损失。更不用论隐私数据的滥用以及网络广告。

区块链技术代表业界和用户对去中心化的重视。个人对数据的所有权会成为社交网络的一个必要特征。因此当@种瓜 推荐Mastodon时,我看到了开源社区对去中心化和用户数据所有权的一个回答。

From WikiPedia

Mastodon(官方中文译万象,网民又称长毛象)是一个免费开源去中心化分布式微博客社交网络。它的用户界面和操作方式跟推特类似,但是整个网络并非由单一机构运作,却是由多个由不同营运者独立运作的服务器联邦方式交换数据而组成的去中心化社交网络。每个Mastodon的营运站点被称为“实体(Instance)”,用户可到任何开放登记的实体登记,任何一个实体上的用户可以与其他实体上的用户沟通。用户在推特中发布的内容称为“推文”,而在 Mastodon 中发布的内容则称为“嘟文(Toot)”,用户可以调整隐私设置限制嘟文被其他人或实体读取或查看。Mastodon吉祥物是一个棕色或灰色的长鼻目,描绘成正在使用平板电脑智能手机

此服务试图透过定位成独立运作的小型社群,而不是由上而下的审查。如同Twitter,Mastodon支持用户间直接、私密的消息,但与Twitter张贴的“推文”不同,Mastodon的“嘟文”可以是:对用户、用户的追踪者私密,对特定实体、或透过实体网络公开。联邦式的Mastodon实体组成联邦世界

Open edX社区捐赠计划

社区计划开发高级Open edX课程,提供给捐赠社区的企业学习。目前规划的内容包括:

  • 分布式部署
  • 常见的部署后配置(个性化、安全、购物车等)
  • Xblocks开发
  • 其他实践技巧

捐赠企业将获得一个访问高级课程的账号。更多具体信息请联系我们 info@edustack.org。

捐赠企业

广州英荔教育科技有限公司

 

Open edX开源合作模式的构想

基于http://edustack.org/2017/11/11/open-edx-community-china/的思考,我们设想了几种个人和企业集中力量办事情的方式:

  • 个人社区经费捐助机制
  • 企业社区经费捐助机制
  • 调研设计国内的公共需求
  • 根据需求设计阶段目标,组织项目组开发
  • 资源汇集,包括企业贡献开源代码,个人贡献的技术文章
  • 国内版镜像的协同开发

建立协作型技术社区的设想

这个想法起源了很久,最近英荔的朋友又提了出来。

最早的设想来自于与种瓜的交流,即Open edX这么复杂的系统,如果要在国内应用,需要不同的公司进行开源社区式的协作。因为整个链条内并没有大公司,即使是教育大公司,也往往只是要作为项目使用而不是参与研发。因此如果一些公用的需求和特性可以集合若干个小公司的力量来研发,整体是有协同效应的。技术型的公司可以保留自己独有的技术特性;内容型的公司则更不必在乎技术的共享。

因此我们有了一些最初的设想,可以看这里  https://github.com/edx/edx-platform/wiki/localization-and-development-in-china

经过了一两年的时间之后,Open edX在国内的应用在持续缓慢的增长,这一点从QQ群的人数看的出来。使用者大概分为几类:平台型企业、技术服务型企业、自用型企业、高校研究者(教师学生)、个人开发者。面临的问题依然在部署、配置、使用、本地化、功能扩展、二次开发方法当中。

因此,作为一个社区,为了促进软件的使用,需要提供的内容包括

  • 文档,包括安装、配置、使用的本地化文档
  • 语言,即高度可用的本地语言翻译
  • 本地化特性,即国内普遍需要的一些特性的开发和开源
  • Xblocks,通用的教学扩展组件

而经过和种瓜、英荔的沟通,行业内的企业可以协作的方式包括

  • 捐助社区经费
  • 提供人手参与工作
  • 贡献开源代码
  • 以技术Blog的方式分享知识
  • 参与国内版镜像的开发

而社区需要做的包括

  • 组织人手进行文档的编写
  • 组织人手进行文档的翻译
  • 协调人员进行公共需求的开发
  • 公开透明的使用捐助的经费
  • 以好的方式进行协作成果的发布

开源软件社区本身在国内也处在快速发展中,可以相信Open edX的国内社区也比以前有更好的发展机会。我们将和更多的公司、学校进行沟通,实现一个良好开源社区的构想。

国内第一家Open edX云平台服务商E-ducation

Open edX除了可以自己部署外,还有一些服务商提供了saas方案。

本月,广州的英荔团队也推出了国内的Open edX SAAS平台e-ducation。英荔加入了符合中国用户习惯的设计和修改,对国内机构组织的在线学习与培训需求提供了可立即使用的SaaS解决方案。

E-ducation(www.e-ducation.cn)是广州英荔教育科技有限公司旗下的互联网产品,面向有志开展互联网学习的组织提供基于SaaS的在线学习培训平台。E-ducation基于edX开源项目进行二次开发,涵盖视频、习题、文档、在线辅导、直播、学习报告等多种功能,支持全平台使用。在自有课程基础上,组织更可引入英荔教育优质的商业管理课程,借此帮助组织管理者有效整合学习资源。E-ducation致力于满足组织的个性化学习需求,为组织成员带来高效便捷的学习体验,提升组织综合竞争力;让组织走在全民学习时代的前端,以学习栽培人才、创造价值,以学习促进创新与变革。

之前国外已经有若干成熟的SAAS服务商,如 edunext 、 appsembleredcast等。

eduNEXT是一家成立于2013年的公司,当时edX公司跃然而至,开放了开源edX平台。我们的信念是,更好的在线学习既是可能的,也是非常需要的,而学习和教育是正确的,有真正的改善生活的力量。我们完全致力于开发和推广Open edX技术,为全球提供高质量的教育提供最好的技术。我们的在线学习专家团队已经在Open edX相关项目中工作超过4年,为各种各样的项目提供软件即服务托管解决方案,咨询服务,技术集成,内容创建以及专业电子学习解决方案和基础设施。在线教育,培训和评估活动在世界各地。

 

当开放edX在2012年发布时,我们很快意识到这个在线学习平台的无限潜力。我们也知道,作为一个开放源代码的平台,Open edX为各种学习需求提供了创新机会。作为最早的Open edX开拓者之一,Appsembler已经与来自世界各地的客户合作,了解他们的目标,并使Open edX平台适应他们的需求。早期,我们认识到客户面临的问题模式。培训师和教育工作者希望为学生和课程作者提供灵活,经济高效,可扩展且易于使用的解决方案。但最重要的是,他们需要一个解决方案,使他们能够把精力放在最重要的事情上 – 为学习者创造和提供在线学习体验。今天,我们是一个通过倾听客户而建立起来的软件公司。我们已经采用了多年的Open edX专业知识,并将其打包成一个易于使用的平台,使您能够快速创建和部署Open edX站点。凭借无与伦比的客户支持,全球托管和99.95%的服务器正常运行时间,Appsembler为全球的公司和大学提供在线学习支持。

 

EdCast是一个用于统一发现,知识管理和个性化学习的支持智能云的知识云。其获奖平台由财富500强公司和政府机构在全球范围内使用,解决内部,内部和隐性知识源内容碎片化的发现,处理和推荐问题。 EdCast的解决方案包括其学习体验平台(LXP),SalesU销售支持套件以及GuideMe的多语言应用内内容制作工具,其中包括GE,HPE,Dell EMC和埃森哲在内的高瞻远瞩公司正在使用这些工具。EdCast的管理团队拥有建立大规模转型技术解决方案的良好记录,并热衷于为全球各地的组织提高企业知识共享,培训和学习经验。

在Open edX推出5年之际,国内终于出现了业务级别的Open edX SAAS平台,这是值得高兴的事情。而且英荔也有积极意愿对开源社区做自己的贡献,这是一个正规公司的商业道德体现。对于Open edX的AGPL V3许可证来说,不分公司大小,涉及的代码均需开源。但正是国内这种只榨取价值,不付出回报,公然违背版权的普遍行为,让开源在中国步履维艰。封闭而不开源,实际上是削弱自己实力,国外的OpenCraft、Appsembler都是Open edX开源的积极参与者。

E-ducation分基础版和专业版,两个版本都能使用全部功能。基础版永久免费,支持50个以内的学习账号,适合初创型组织和团队。超过50个账号使用,需升级专业版,按账号数量梯级收费,配赠专业课程制作工具,不限空间、流量。非营利公益组织和慈善机构可无账号限制地免费使用。可访问e-ducation.cn了解更多信息。

开源少儿编程之路

少儿编程是近期的一个热门话题。其实在国内,很早前就有很多中小学在开设编程兴趣班。80年代曾经在小学用AppleII编写过Basic。但那时候多是为了兴趣和比赛,而非必须。

随着计算机科技在全行业全世界的普及,编程教育正在变成一种必须。

https://www.csteachers.org/page/standards

https://developers.google.com/blockly/

http://microbit.org/

http://scratched.gse.harvard.edu

https://medium.com/mit-media-lab/scratch-google-next-generation-of-programming-blocks-for-kids-5f377ec9ff0

2017 OSSummit将于9月11日在洛杉矶召开

http://events.linuxfoundation.org/events/open-source-summit-north-america

LinuxCon, ContainerCon, CloudOpen and the new Open Community Conference combine under one umbrella name in 2017 – the Open Source Summit. At the Open Source Summit, you will collaborate, share information and learn across a wide variety of topics, with 2,000 technologists and community members.

本次会议邀请了一些有趣的嘉宾

首先是盗梦空间中的囧瑟夫高登。为什么他和OpenSource扯上了关系呢?

Joseph Gordon-Levitt’s acting career spans the last three decades, and ranges from television (3rd Rock From The Sun) to arthouse (Mysterious Skin, Brick) to multiplex (Inception, 500 Days Of Summer, Snowden). He made his feature screenwriting and directorial debut with Don Jon (Independent Spirit Award nomination, Best First Screenplay). He also founded and directs HITRECORD, an online community of over half a million artists emphasizing collaboration over self-promotion. HITRECORD has evolved into a “community-sourced” production company, publishing books, putting out records, producing videos for brands from LG to the ACLU, and winning an Emmy for its variety show Hit Record On TV.

原来囧瑟夫成立并指导了HITRECORD,HITRECORD是一个超过五百万艺术家的在线社区,强调协作自我推广。

另外有一位13岁的开发者TANMAY BAKSHI,他有很多身份,重要的是He is on a mission to help at least 100,000 aspiring coders innovate through open-source coding, and take it to the next level – AI。

当然,Linus本人也来了。

演讲者JONO BACON也参加了去年的Open edX年会, 一位社区开发的咨询者。His clients include Huawei, GitLab, Microsoft, Sony Mobile, Deutsche Bank, HackerOne, Mattermost, SAP, data.world, Creative Commons, and others

会议的议题在这里 http://events.linuxfoundation.org/events/open-source-summit-north-america/program/schedule   ,应该稍后Youtube会有会议视频。