今天 Steve Sprang 已合并了#100提交请求,Inkpad即将在AppStore上发布简体中文版了!

20天前因一个偶然原因启动翻译的:

当晚(周六)我想对iPad上的矢量绘图软件进行交互界面功能分析,就上AppStore上找了一遍,无意间发现一个软件和Inkpad雷同,但只字不提Inkpad。这是严重的盗版行为,违反了开源许可证和作者版权声明,当然要抵制的。于是联系了官方,32Beat和rejon顺带查出一堆雷同软件,邀请我进行翻译。我欣然接受,这么好的参与机会可不能错过!

即使是文字翻译,也要有版本管理,那种干几天别人都看不到结果万万不行。于是第二天上午上GoogleStable.com找了一下,crowdin 就是它了,建个项目很容易。下午(送孩子上英语课,等待下课)用了4个小时基本翻译完,赶快通知Inkpad官方,开源就要及时发布,当然得到了表扬,哈哈。然后继续翻译和校对,6点坐车回家。就在路上(到家才知道的),另一个译者 Pillow Tse 出现了,给我发了个邮件说明他这几天也在翻译,结果等他翻译得差不多时发现翻译项目都建好了!(可不能悄悄干好几天)接下来我们两人就继续翻译和校对,合作相当愉快,在线翻译平台就是好用!

两天后基本翻译完毕。帮助页面是个重活,Pillow Tse花了一周的业余时间才翻译完,辛苦Pillow Tse了。整个翻译过程中,Google翻译网站功不可没,将自动翻译结果进行校正,结合Photoshop、百度百科等习惯用语,基本符合行业习惯。其实我不懂素描软件的行话,翻译得较轻松都是网络资源丰富。AppStore页面的翻译得感谢开源中国的Inkpad页面,捡了个便宜,当然也改动不少,见最终稿

8天后正式提交给官方,3天后 Steve Sprang 回复将去看,再过8天合并到主库,算是彻底完成了。有两点体会:Steve Sprang 在检查合并时非常仔细、慎重,艺术品当然得高度认真;对待提交请求,感谢溢于言表,每次回复都很多文字(我每次都是憋出的很少文字,惭愧)。

在翻译过程中学到了很多:翻译平台和协作习惯、行业用语、iOS程序本地化、Inkpad交互技术、认识了新朋友、得到官方表扬和留名。一些体会:开源要尽早发布、多次发布;多交流,别闷头干;多感谢别人,多替合并者考虑;帮助别人就是帮助自己。

原文在开源中国

Inkpad中文翻译已合并到官方项目的更多相关文章

  1. Umbraco官方技术文档 中文翻译

    Umbraco 官方技术文档中文翻译 http://blog.csdn.net/u014183619/article/details/51919973 http://www.cnblogs.com/m ...

  2. Go 语言官方包函数中文翻译

    Go官方包函数中文翻译 *** import "strings" func Join(a []string, sep string) string Join concatenate ...

  3. [中文翻译] ASP.NET 5 简介(Introducing ASP.NET 5,原作ScottGu 2015/2/23)

    本文出处  [中文翻译] ASP.NET 5 简介(Introducing ASP.NET 5,原作ScottGu 2015/2/23) 这是我的文章备份 http://www.dotblogs.co ...

  4. Objective-C 编程艺术 (Zen and the Art of the Objective-C Craftsmanship 中文翻译)

    # 禅与 Objective-C 编程艺术 (Zen and the Art of the Objective-C Craftsmanship 中文翻译) - 原文 <https://githu ...

  5. Xcode菜单功能中文翻译

    Xcode菜单功能中文翻译 File  文件 Edit  编辑 View 视图 Navigate 导航 Editor 编辑 Product 产品 Window  窗口 Help 帮助 File  文件 ...

  6. PHP 7:真实世界的应用开发(中文翻译)

    前言 PHP 7:真实世界的应用开发(中文翻译) 作者:Doug Bierer, Altaf Hussain, Branko Ajzele 原书名称:<PHP 7: Real World App ...

  7. 《Entity Framework 6 Recipes》中文翻译系列 目录篇 -持续更新

    为了方便大家的阅读和学习,也是响应网友的建议,在这里为这个系列做一个目录.在目录开始这前,我先来回答之前遇到的几个问题. 1.为什么要学习EF? 这个问题很简单,项目需要.这不像学校,没人强迫你学习! ...

  8. Spark官方文档 - 中文翻译

    Spark官方文档 - 中文翻译 Spark版本:1.6.0 转载请注明出处:http://www.cnblogs.com/BYRans/ 1 概述(Overview) 2 引入Spark(Linki ...

  9. Spark SQL 官方文档-中文翻译

    Spark SQL 官方文档-中文翻译 Spark版本:Spark 1.5.2 转载请注明出处:http://www.cnblogs.com/BYRans/ 1 概述(Overview) 2 Data ...

随机推荐

  1. Atiti.ui原理与gui理论

    Atiti.ui原理与gui理论 1. 概论2 2. ui的类型2 2.1. RMGUI vs IMGUI2 2.2. Cli2 2.3. Gui2 2.4. Nui natural user int ...

  2. atitit. web 在线文件管理器最佳实践(1)--- elFinder 的使用流程解决之道 。打开浏览服务器文件夹java .net php

    atitit. web 在线文件管理器最佳实践(1)--- elFinder 的使用流程解决之道 .打开浏览服务器文件夹java .net php 1. 环境:::项目java web,需要打开浏览服 ...

  3. atitit.添加win 系统服务 bat批处理程序服务的法总结instsrv srvany java linux

    atitit.添加win 系统服务 bat批处理程序服务的法总结instsrv srvany  java linux 系统服务不同于普通视窗系统应用程式.不可能简简单单地通过运行一个EXE就启动视窗系 ...

  4. Leetcode 119 Pascal's Triangle II 数论递推

    杨辉三角,这次要输出第rowIndex行 用滚动数组t进行递推 t[(i+1)%2][j] = t[i%2][j] + t[i%2][j - 1]; class Solution { public: ...

  5. 通过MSSQL连接服务器连接至Oracle数据库

    前言 有很多时候,我们需要MSSQL与Oracle进行跨库查询或数据交互.本篇随笔将阐述如何通过MSSQL的连接服务器连接至Oracle数据库,并且读取数据的示例. 具体步骤 首先需要到Oracle的 ...

  6. hdu 2955 01背包

    http://acm.hdu.edu.cn/showproblem.php?pid=2955 如果认为:1-P是背包的容量,n是物品的个数,sum是所有物品的总价值,条件就是装入背包的物品的体积和不能 ...

  7. android: 内容提供器简介

    我们学了 Android 数据持久化的技术,包括文件存储.SharedPreferences 存 储.以及数据库存储.不知道你有没有发现,使用这些持久化技术所保存的数据都只能在当 前应用程序中访问.虽 ...

  8. 关于 MySQL 的 boolean 和 tinyint(1)

    boolean类型MYSQL保存BOOLEAN值时用1代表TRUE,0代表FALSE,boolean在MySQL里的类型为tinyint(1),MySQL里有四个常量:true,false,TRUE, ...

  9. runtime MethodSwizzle 实践之 奇怪crash : [UIKeyboardLayoutStar release]: message sent to deallocated instance

    情景: 使用MethodSwizzle 实现对数组.字典 等系统方法的安全校验.显然能达到预期效果,但实际发现当 键盘显示的情况下  home app 进入后台,再单击app  图标 切换回前台时 发 ...

  10. cocos2d-x 3.0rc2中读取sqlite文件

    cocos2d-x 3.0rc2中读取sqlite文件的方式,在Android中直接读取软件内的会失败.须要复制到可写的路径下 sqlite3* dbFile = NULL; std::string ...