许多人虽然从事开源项目,但对开源协议的具体规定理解仍然较为模糊。他们依然会本能地认为这些项目是属于自己的,尽管已经开源,但仍觉得使用权限由自己决定,最终解释权归自己所有。然而,开源并不是这样的。
对于市面上几乎所有的主流开源协议,如MIT、Apache、GPL等,当你选择开源时,意味着任何人都可以自由复制、使用、修改、分发你的代码。而且,注意,这并不要求必须在GitHub上点击fork才算符合协议的复制。任何形式的复制,包括将源代码打包传到自己的网站上,都是合法合规的。当然,每个协议在修改时都有其特定的规定,大多数协议要求保留原协议和署名,这里暂且不提。
但如果仅仅是复制你的开源代码并放在其他地方,是完全没有问题的。即使使用了你的用户名,用户名也不受法律保护。然而,这一切的前提是代码具有开源协议。有些人认为在GitHub上公开的仓库不都是开源代码,这种看法是错误的。公开源代码和开源是两个不同的概念。
开源的核心不是那些公开的源代码,而是规定源代码如何使用的协议,即仓库中最不起眼的许可证文件。有了这个文件,项目才是开源的;没有这个文件,即使源代码完全公开,也不能自由使用。公开的源代...
背景最近参加了“清澜好声音”需要扒谱一首音乐作为伴奏,沙克负责了旋律部分,将打击乐部分交给了我。由于找不到完美匹配的MIDI文件,于是我自己动手,花了一点时间写了一个能够通过敲击键盘来记录鼓点,并导出为MIDI文件的程序。
解决方案我请ChatGPT编写了一个简单的Python程序,它允许用户通过敲击键盘的空格键来模拟鼓点。程序记录下每次击打的时间点,并将它们转换成MIDI格式。
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748import midofrom mido import MidiFile, MidiTrack, Messageimport keyboardimport timebpm = 120 # 设置BPMbeats_per_second = bpm / 60print("Press and hold SPACE to start recording. Release to stop.")while True: ...
今天考了ACSL中级组第三轮,题目还是比较有意思的。是关于Rack-O游戏的模拟。
根据题目比较机翻的描述:Rack-O游戏是一种纸牌游戏,玩家需要在牌架上摆放卡牌,并且在抽取卡牌堆中的卡牌时,按照一定的规则进行替换。这次的题目就是要求我们模拟这个游戏的过程,并且计算最后的得分。
问题描述在 ACSL 版的 Rack-O 游戏中,玩家会被告知卡槽数量 s,以及卡牌数量 n。每张卡牌上都有一个在 1 到 n 之间(包括 1 和 n)的专属数字。玩家将会收到 s 张卡牌,然后将这些卡牌从前至后摆放在牌架上。除此之外,玩家还会收到一叠卡牌,形成一个抽牌堆,按照卡牌叠放顺序依次抽牌。如果牌架上的卡牌未按升序排列,那么对于每一张抽到的卡牌都要按以下顺序遵循下列规则:
除牌架上第一张卡牌之外,如果抽到的卡牌的数字比在牌架上某一张卡牌上的数字小 1,则用这张抽到的卡牌替换牌架上这张牌前面的卡牌。
除牌架上最后一张卡牌之外,如果抽到的卡牌的数字比牌架上某一张卡牌上的数字大 1,则用这张抽到的牌替换牌架上这张牌后面的卡牌。
对于牌架上任意三张在相邻卡槽中的卡牌,如果在中间位置的卡牌上的数字并...
前言这两天在捣鼓Hexo博客。我就在想,如果每次写完博客,我该如何发布到网上去呢?我第一个想到的就是Github pages的静态文件托管,但是每次都要手动执行hexo clean && hexo g && hexo d,这样太麻烦了。于是我就想到了Github Actions。
配置分享在经过了无数次的失败后,我终于成功了。我将我的配置分享出来,希望对你有所帮助。
1234567891011121314151617181920212223242526272829303132333435363738394041name: Deploy Hexoon: push: branches: - main # 或者你使用的是master分支,就改为masterjobs: deploy: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Setup Node.js uses: actions/setup-node@v1 ...
Long lost.I picked up my pen again.The story of the past let it be dusted off andNo one will ever know again.
Standing on the heights of stoneI realized I couldn’t seeMy past, my footprintsMy lost time and youth
The fields ahead are still turquoiseThe mountains are still high when I look back
And I kneel in reverenceMary told me.“Child, write.“before the truth is lost in the abyss.“before the future is still hopeful.Remember what was first.–It’s the only way. “
久违了。我再次拿起笔。过去的故事,就让它尘封起来吧,而且再无人...