or
or
By clicking below, you agree to our terms of service.
New to HackMD? Sign up
Syntax | Example | Reference | |
---|---|---|---|
# Header | Header | 基本排版 | |
- Unordered List |
|
||
1. Ordered List |
|
||
- [ ] Todo List |
|
||
> Blockquote | Blockquote |
||
**Bold font** | Bold font | ||
*Italics font* | Italics font | ||
~~Strikethrough~~ | |||
19^th^ | 19th | ||
H~2~O | H2O | ||
++Inserted text++ | Inserted text | ||
==Marked text== | Marked text | ||
[link text](https:// "title") | Link | ||
 | Image | ||
`Code` | Code |
在筆記中貼入程式碼 | |
```javascript var i = 0; ``` |
|
||
:smile: | ![]() |
Emoji list | |
{%youtube youtube_id %} | Externals | ||
$L^aT_eX$ | LaTeX | ||
:::info This is a alert area. ::: |
This is a alert area. |
On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?
Please give us some advice and help us improve HackMD.
Do you want to remove this version name and description?
Syncing
xxxxxxxxxx
Versioning and Releasing Open Hardware content
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →Date of release: 16-09-2022
Is publishing content openly enough to call it an open source release? Not all open content has the same quality, relevance, adoption, and implementation of requirements that comply with open source practices and standards. How is content released in projects that involve the active participation of many contributors and users? In this lesson we aim to cover what a release is in a broader and technical sense. We will cover what is the relationship between versioning and releasing to communicate important aspects of the lifecycle of an open source project.
By the end of this lesson you should be able to
Learning objectives
Introduction
As found in the first lesson of the Open Hardware Academy, the definition of open source hardware is: "hardware whose design is made publicly available so that anyone can study, modify, distribute, make, and sell the design or hardware based on that design." Read more on the OSHWA definition of open source hardware. This lesson focuses on the activities associated to the distribution of open hardware design documents/data.
Some useful definitions and ideas
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →Release:
Versioning:
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →A small portion of a version tree of RepRap printers retrieved from link
Semantic versioning conventions for software that has applicability for hardware
Given a version number MAJOR.MINOR.PATCH, increment the:
Additional labels for pre-release and build metadata are available as extensions to the MAJOR.MINOR.PATCH format.
Release channels: This is an important aspect of releasing activities. Examples include Github, Wikifactory, Gitlab, Hackaday, Thingiverse, among many others. OSWHA has a list of interesting channels that include HardwareX, The Journal of Open Hardware and The Journal of Open Engineering.
Open source release management
Some characteristics of open source releases
In advanced projects releasing is only a milestone in the lifecycle of an open source project. In fact, it is a life cycle management activity. In this section we explain briefly key aspects that explain releasing as a complex project development activity:
Alpha and Beta releases
Alpha and beta releases are very concrete examples of product/project lifecycle management that also incorporate versioning and audience engagement.
When a project is released as an alpha version it means that a major intent behind the release is to get feedback often referred to as "acceptance testing". Basically, it means that contributors/users are invited to help the developers to check if the requirements of the design are met.
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →Getting started
In the context of open source projects, there are clear definitions, practices, and standards that constrain or specify an open source release. These requirements can be found in the OSHWA declaration of principles as well as definitions. These requirements, therefore, set some minimum deliverables for open source projects which includes the documentation, licensing and publishing of the design to be released.
Planning an open source release
Think of it as an activity within the lifecycle management of your project where you try to match your expectations and goals, with the final deliverables of your project. In our context, a release needs to contain all the information needed to reproduce and rebuild a hardware design (this is independent of whether is an experiment, a hack, a prototype, or a fully featured product). This is what constitutes a unit of work or useful outcome that can be used to build upon.
Tips and examples
Tools and methods to plan your release
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →Exercises
Exercise 1: Define what kind of release you are working towards
Instructions:
Exercise 2: Make a release checklist that you can easily incorporate as tasks in a project board
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →Instructions
References
[1] “Open Hardware Makers Curriculum : Open Hardware Canvas.” https://curriculum.openhardware.space/articles/01-welcome-to-ohm/canvas/ (accessed Sep. 15, 2022).
[2] “Product Release Management? Definitions and Examples.” https://www.aha.io/roadmapping/guide/release-management (accessed Sep. 15, 2022).
[3] S. Newell, “Release Management.” https://www.productplan.com/glossary/release-management/ (accessed Sep. 15, 2022).
[4] G. Hall, “A Pocket Guide to Product Development & Release Management,” Blackstar, May 21, 2021. https://medium.com/blackstar/a-pocket-guide-to-product-development-release-management-b8240a9591a8 (accessed Sep. 15, 2022).
[5] “What is a Product Release? - Definition from Techopedia,” Techopedia.com.
http://www.techopedia.com/definition/24628/product-release-software (accessed Sep. 15, 2022).
[6] F. Arndt et al., DIN SPEC 3105-1: Open Source Hardware. 2020. doi: 10.31030/3173063.
[7] BuiltByBrainbow, “Version Control for Open Source Hardware,” Instructables. https://www.instructables.com/Version-Control-for-Open-Source-Hardware/ (accessed Sep. 13, 2022).
[8] J. Bonvoisin and R. Mies, “Measuring Openness in Open Source Hardware with the Open-o-Meter,” Procedia CIRP, vol. 78, pp. 388–393, Jan. 2018, doi: 10.1016/j.procir.2018.08.306.