home.social

#mit0 — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #mit0, aggregated by home.social.

  1. Open source licences are one of those cans of worms I mostly try to avoid. Except it really annoys me when I want to borrow some code and I can't work out what the licence is.

    If you're writing sample code or something small, you should include a #licence. However which to use? One of the *BSD or MIT licences is usually a good choice (but be careful which version!), they place minimal requirements on you. However the requirement to include a copyright notice is just annoying for everyone involved (when the code is small). Android Toybox (en.wikipedia.org/wiki/Toybox) solved this with the Zero-clause BSD licence (aka #0BSD); it is a modification of the ISC license, not a BSD one, but the name doesn't matter really.

    My attempt to make this easier to use is now available at ©.st (think copyright street? © can be obtained with Option+G on a Mac, Ctrl+Atl+C on Windows, Compose o c on X11 or use the emoji selector). It's really just a way to make it easier to apply 0BSD, as it gives you some very short copy pastable comment lines. Consider 0BSD next time you write some small piece of code.

    Also you can use it to test your #IDN support.

    While 0BSD may not be perfect, I believe it (or MIT-0, which is nearly identical) achieves the best balance of all the "do what you want" licences. I'm mainly talking about "small" pieces of code here; for larger projects it's understandable the licence choice is more nuanced and you may want Apache, #GPL, etc. This is not legal advice. Talk to a lawyer if in doubt.

    #OSS #opensource #license #licences #bsd #mit0

  2. Open source licences are one of those cans of worms I mostly try to avoid. Except it really annoys me when I want to borrow some code and I can't work out what the licence is.

    If you're writing sample code or something small, you should include a #licence. However which to use? One of the *BSD or MIT licences is usually a good choice (but be careful which version!), they place minimal requirements on you. However the requirement to include a copyright notice is just annoying for everyone involved (when the code is small). Android Toybox (en.wikipedia.org/wiki/Toybox) solved this with the Zero-clause BSD licence (aka #0BSD); it is a modification of the ISC license, not a BSD one, but the name doesn't matter really.

    My attempt to make this easier to use is now available at ©.st (think copyright street? © can be obtained with Option+G on a Mac, Ctrl+Atl+C on Windows, Compose o c on X11 or use the emoji selector). It's really just a way to make it easier to apply 0BSD, as it gives you some very short copy pastable comment lines. Consider 0BSD next time you write some small piece of code.

    Also you can use it to test your #IDN support.

    While 0BSD may not be perfect, I believe it (or MIT-0, which is nearly identical) achieves the best balance of all the "do what you want" licences. I'm mainly talking about "small" pieces of code here; for larger projects it's understandable the licence choice is more nuanced and you may want Apache, #GPL, etc. This is not legal advice. Talk to a lawyer if in doubt.

    #OSS #opensource #license #licences #bsd #mit0

  3. Open source licences are one of those cans of worms I mostly try to avoid. Except it really annoys me when I want to borrow some code and I can't work out what the licence is.

    If you're writing sample code or something small, you should include a #licence. However which to use? One of the *BSD or MIT licences is usually a good choice (but be careful which version!), they place minimal requirements on you. However the requirement to include a copyright notice is just annoying for everyone involved (when the code is small). Android Toybox (en.wikipedia.org/wiki/Toybox) solved this with the Zero-clause BSD licence (aka #0BSD); it is a modification of the ISC license, not a BSD one, but the name doesn't matter really.

    My attempt to make this easier to use is now available at ©.st (think copyright street? © can be obtained with Option+G on a Mac, Ctrl+Atl+C on Windows, Compose o c on X11 or use the emoji selector). It's really just a way to make it easier to apply 0BSD, as it gives you some very short copy pastable comment lines. Consider 0BSD next time you write some small piece of code.

    Also you can use it to test your #IDN support.

    While 0BSD may not be perfect, I believe it (or MIT-0, which is nearly identical) achieves the best balance of all the "do what you want" licences. I'm mainly talking about "small" pieces of code here; for larger projects it's understandable the licence choice is more nuanced and you may want Apache, #GPL, etc. This is not legal advice. Talk to a lawyer if in doubt.

    #OSS #opensource #license #licences #bsd #mit0

  4. CW: ノートをBibLaTeX形式で引用するプラグイン作りました。 #MIT-0

    以下の殊塊をプラグインのインストールに貼り付けることで使へます。

    /// @ 0.13.0
    ### {
      name: "このノートを引用する"
      version: "1.0.1"
      author: "@[email protected]"
      description: "Misskeyでの投稿を參考文獻として引用したいときなど用に、BibLaTeX形式でノートのメタデータを出力します。"
      permissions: []
      config: {}
    }
    
    
    @functionCiteThisNote(notes){
    
    
    	var noteCreatedAt = `{notes.createdAt}` // ノートが生成された日時
    
    
    	//しせるにゃんの助言を基にノートのURLを生成
    	//ありがとうしせるにゃんにゃん♥️ https://misskey.io/notes/9lhy3ug03g
    	let noteURL = `{Mk:url()}notes/{notes.id}`
    	
    	// {} `などの越化
    	var leftCurlyBraces = "{" //このテクニックはMisskey Pagesで學んだ。
    	var rightCurlyBraces = "}" //ありがとう、しゅいろ。
    	var threeBackticks = "```"
    	
    	//	Reference: https://github.com/aiscript-dev/aiscript/blob/master/docs/std.md#datenow-num
    	//Tkg氏の助言を基にした https://misskey.io/notes/9lhwq42479
    	//今年を入れる
    	var currentYear = Date:year()
    	
    	// @[email protected] の example.com部分。
    	//ここは紗々さんから教へてもらふた https://misskey.io/notes/9lhsh1umas
    	var SERVER_NAME = Mk:url().split('/')[2]
    	//地元鯖が初期値として入ってる仕組み
    	var noteUserHost = `{SERVER_NAME}`
    	//notes.user.hostがnull以外だと{notes.user.host}を入れる
    	//このif文はしせるにゃんの助言 https://misskey.io/notes/9lgj0l6d02 を基にした
    	if (notes.user.host != null) {
    		noteUserHost = `{notes.user.host}`
    	}
    
    	//未實裝機能
    /*
    	note = {leftCurlyBraces}filename = {leftCurlyBraces}{notes.files.name}{rightCurlyBraces},
    	fileurl = {leftCurlyBraces}{notes.files.url}{rightCurlyBraces},
    	filemd5 = {leftCurlyBraces}{notes.files.md5}{rightCurlyBraces},
    	unixtime = {leftCurlyBraces}{Date:now()}{rightCurlyBraces}{rightCurlyBraces},
    */
    
    //蟲捕り用
    //Mk:dialog("" `@online{leftCurlyBraces}{notes.user.username}_{Date:year()},`) //This works
    
    	//この殊の核心となる部分がこちらです↓
    
    Mk:dialog("" `{threeBackticks}
    @online{leftCurlyBraces}{notes.user.username}_{Date:year()},
    	title = {leftCurlyBraces}{leftCurlyBraces}{notes.user.name}{rightCurlyBraces}の投稿{rightCurlyBraces},
    	url = {leftCurlyBraces}{noteURL}{rightCurlyBraces},
    	abstract = {leftCurlyBraces}{leftCurlyBraces}{notes.text}{rightCurlyBraces}{rightCurlyBraces},
    	type = {leftCurlyBraces}microblogging{rightCurlyBraces},
    	author = {leftCurlyBraces}@{notes.user.username}@{noteUserHost}{rightCurlyBraces},
    	urldate = {leftCurlyBraces}{notes.createdAt}{rightCurlyBraces},
    	date = {leftCurlyBraces}{Date:year()}-{Date:month()}-{Date:day()}{rightCurlyBraces},
    	keywords = {leftCurlyBraces}{notes.tags}{rightCurlyBraces}
    {rightCurlyBraces}
    {threeBackticks}`)
    }
    
    Plugin:register_note_action(`このノートを引用する` functionCiteThisNote)

  5. CW: ノートをBibLaTeX形式で引用するプラグイン作りました。 #MIT-0

    以下の殊塊をプラグインのインストールに貼り付けることで使へます。

    /// @ 0.13.0
    ### {
      name: "このノートを引用する"
      version: "1.0.1"
      author: "@[email protected]"
      description: "Misskeyでの投稿を參考文獻として引用したいときなど用に、BibLaTeX形式でノートのメタデータを出力します。"
      permissions: []
      config: {}
    }
    
    
    @functionCiteThisNote(notes){
    
    
    	var noteCreatedAt = `{notes.createdAt}` // ノートが生成された日時
    
    
    	//しせるにゃんの助言を基にノートのURLを生成
    	//ありがとうしせるにゃんにゃん♥️ https://misskey.io/notes/9lhy3ug03g
    	let noteURL = `{Mk:url()}notes/{notes.id}`
    	
    	// {} `などの越化
    	var leftCurlyBraces = "{" //このテクニックはMisskey Pagesで學んだ。
    	var rightCurlyBraces = "}" //ありがとう、しゅいろ。
    	var threeBackticks = "```"
    	
    	//	Reference: https://github.com/aiscript-dev/aiscript/blob/master/docs/std.md#datenow-num
    	//Tkg氏の助言を基にした https://misskey.io/notes/9lhwq42479
    	//今年を入れる
    	var currentYear = Date:year()
    	
    	// @[email protected] の example.com部分。
    	//ここは紗々さんから教へてもらふた https://misskey.io/notes/9lhsh1umas
    	var SERVER_NAME = Mk:url().split('/')[2]
    	//地元鯖が初期値として入ってる仕組み
    	var noteUserHost = `{SERVER_NAME}`
    	//notes.user.hostがnull以外だと{notes.user.host}を入れる
    	//このif文はしせるにゃんの助言 https://misskey.io/notes/9lgj0l6d02 を基にした
    	if (notes.user.host != null) {
    		noteUserHost = `{notes.user.host}`
    	}
    
    	//未實裝機能
    /*
    	note = {leftCurlyBraces}filename = {leftCurlyBraces}{notes.files.name}{rightCurlyBraces},
    	fileurl = {leftCurlyBraces}{notes.files.url}{rightCurlyBraces},
    	filemd5 = {leftCurlyBraces}{notes.files.md5}{rightCurlyBraces},
    	unixtime = {leftCurlyBraces}{Date:now()}{rightCurlyBraces}{rightCurlyBraces},
    */
    
    //蟲捕り用
    //Mk:dialog("" `@online{leftCurlyBraces}{notes.user.username}_{Date:year()},`) //This works
    
    	//この殊の核心となる部分がこちらです↓
    
    Mk:dialog("" `{threeBackticks}
    @online{leftCurlyBraces}{notes.user.username}_{Date:year()},
    	title = {leftCurlyBraces}{leftCurlyBraces}{notes.user.name}{rightCurlyBraces}の投稿{rightCurlyBraces},
    	url = {leftCurlyBraces}{noteURL}{rightCurlyBraces},
    	abstract = {leftCurlyBraces}{leftCurlyBraces}{notes.text}{rightCurlyBraces}{rightCurlyBraces},
    	type = {leftCurlyBraces}microblogging{rightCurlyBraces},
    	author = {leftCurlyBraces}@{notes.user.username}@{noteUserHost}{rightCurlyBraces},
    	urldate = {leftCurlyBraces}{notes.createdAt}{rightCurlyBraces},
    	date = {leftCurlyBraces}{Date:year()}-{Date:month()}-{Date:day()}{rightCurlyBraces},
    	keywords = {leftCurlyBraces}{notes.tags}{rightCurlyBraces}
    {rightCurlyBraces}
    {threeBackticks}`)
    }
    
    Plugin:register_note_action(`このノートを引用する` functionCiteThisNote)

  6. @youronlyone Ok, I think I found what I'm looking for: #CCPlus. A particular CC license with additional permissions granted, or agreement, on top of.

    I want a license:
    1. that is #ShareAlike / #Copyleft
    2. but without the Attribution requirement
    3. and without the State Changes requirement
    4. and is applicable to every derivative

    Under CCPlus:
    1. License the work under #CCBYSA first
    2. Then state the additional permissions, like #NoAttribution and #NoStateChanges

    However, I don't think #4 is posssible? I think it is contradictory, since the license is CC-BY-SA and the “Plus” is not, it's only a waiver of additional rights. But, then again, it is also a separate agreement, so, shouldn't it be possible if #4 is stated?

    See: wiki.creativecommons.org/wiki/

    n.b. This is for non-software, or #literature, works. There are situations where I personally don't think an attribution is needed, and stating changes is too much. But, it is beneficial for the community that any derivative are under the same #license.

    In any case, in software, a close equivalent is #MIT0 (no attribution) and #MPL2 (no state changes).

    @creativecommons

  7. @youronlyone Ok, I think I found what I'm looking for: #CCPlus. A particular CC license with additional permissions granted, or agreement, on top of.

    I want a license:
    1. that is #ShareAlike / #Copyleft
    2. but without the Attribution requirement
    3. and without the State Changes requirement
    4. and is applicable to every derivative

    Under CCPlus:
    1. License the work under #CCBYSA first
    2. Then state the additional permissions, like #NoAttribution and #NoStateChanges

    However, I don't think #4 is posssible? I think it is contradictory, since the license is CC-BY-SA and the “Plus” is not, it's only a waiver of additional rights. But, then again, it is also a separate agreement, so, shouldn't it be possible if #4 is stated?

    See: wiki.creativecommons.org/wiki/

    n.b. This is for non-software, or #literature, works. There are situations where I personally don't think an attribution is needed, and stating changes is too much. But, it is beneficial for the community that any derivative are under the same #license.

    In any case, in software, a close equivalent is #MIT0 (no attribution) and #MPL2 (no state changes).

    @creativecommons

  8. @youronlyone Ok, I think I found what I'm looking for: #CCPlus. A particular CC license with additional permissions granted, or agreement, on top of.

    I want a license:
    1. that is #ShareAlike / #Copyleft
    2. but without the Attribution requirement
    3. and without the State Changes requirement
    4. and is applicable to every derivative

    Under CCPlus:
    1. License the work under #CCBYSA first
    2. Then state the additional permissions, like #NoAttribution and #NoStateChanges

    However, I don't think #4 is posssible? I think it is contradictory, since the license is CC-BY-SA and the “Plus” is not, it's only a waiver of additional rights. But, then again, it is also a separate agreement, so, shouldn't it be possible if #4 is stated?

    See: wiki.creativecommons.org/wiki/

    n.b. This is for non-software, or #literature, works. There are situations where I personally don't think an attribution is needed, and stating changes is too much. But, it is beneficial for the community that any derivative are under the same #license.

    In any case, in software, a close equivalent is #MIT0 (no attribution) and #MPL2 (no state changes).

    @creativecommons