<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/css" href="http://wiki.apidesign.org/skins/common/feed.css?116"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel>
		<title>Black hole - Revision history</title>
		<link>http://wiki.apidesign.org/index.php?title=Black_hole&amp;action=history</link>
		<description>Revision history for this page on the wiki</description>
		<language>en</language>
		<generator>MediaWiki 1.12.0rc1</generator>
		<lastBuildDate>Fri, 01 May 2026 21:43:19 GMT</lastBuildDate>
		<item>
			<title>JaroslavTulach at 12:37, 7 May 2019</title>
			<link>http://wiki.apidesign.org/index.php?title=Black_hole&amp;diff=9993&amp;oldid=prev</link>
			<description>&lt;p&gt;&lt;/p&gt;

			&lt;table style=&quot;background-color: white; color:black;&quot;&gt;
			&lt;col class='diff-marker' /&gt;
			&lt;col class='diff-content' /&gt;
			&lt;col class='diff-marker' /&gt;
			&lt;col class='diff-content' /&gt;
			&lt;tr&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;←Older revision&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Revision as of 12:37, 7 May 2019&lt;/td&gt;
			&lt;/tr&gt;
		&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;-&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;There is a significant difference between [[Blogs:JaroslavTulach:Theory:DiamondsVsStars|diamonds and stars]]. While diamonds are said to be forever, nobody considers stars eternal. As such the allegories are not the same. They are in fact quite different. If you get through the [[TheAPIBook|Practical API Design]] book to [[Evolving_the_API_Universe|chapter 15]] and [[End_Of_Life_Procedures|chapter 19]], you'll find out that if you have good support from runtime container, properly versioned &lt;del style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;APIs &lt;/del&gt;and you know how to allow co-existence of multiple versions of similar APIs, you can make your old APIs disappear, yet keep &lt;del style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;backward compatibility&lt;/del&gt;. Of course, this is not a common operation, just like &lt;del style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;stars &lt;/del&gt;do not burn out everyday. However, if you really need to, you can send your API (aka your star) towards a black hole and make it disappear there. Moreover, you can do it in a completely ''user driven'' way, where the speed of dying is driven by number of remaining users of the old API, e.g. observers of your star. This is all possible and the [[NetBeans]] project done that few times.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;There is a significant difference between [[Blogs:JaroslavTulach:Theory:DiamondsVsStars|diamonds and stars]]. While diamonds are said to be forever, nobody considers stars eternal. As such the allegories are not the same. They are in fact quite different. If you get through the [[TheAPIBook|Practical API Design]] book to [[Evolving_the_API_Universe|chapter 15]] and [[End_Of_Life_Procedures|chapter 19]], you'll find out that if you have &lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;good&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;]] &lt;/ins&gt;support from &lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;[[NetBeans Runtime Container|&lt;/ins&gt;runtime container&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;, &lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;[[Semantic versioning|&lt;/ins&gt;properly versioned&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;]] [[API]]s &lt;/ins&gt;and you know how to allow &lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;co-existence&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;]] &lt;/ins&gt;of multiple versions of similar APIs, you can make your old APIs disappear, yet keep &lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;[[BackwardCompatibility]]&lt;/ins&gt;. Of course, this is not a common operation, just like &lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;[[star]]s &lt;/ins&gt;do not burn out everyday. However, if you really need to, you can send your &lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;API&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;]] &lt;/ins&gt;(aka your &lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;star&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;) towards a &lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;black hole&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;]] &lt;/ins&gt;and make it disappear there. Moreover, you can do it in a completely ''user driven'' way, where the speed of dying is driven by number of remaining users of the old &lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;API&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;, e.g. observers of your star. This is all possible and the [[NetBeans]] project done that few times.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</description>
			<pubDate>Tue, 07 May 2019 12:37:10 GMT</pubDate>			<dc:creator>JaroslavTulach</dc:creator>			<comments>http://wiki.apidesign.org/wiki/Talk:Black_hole</comments>		</item>
		<item>
			<title>JaroslavTulach: New page: There is a significant difference between diamonds and stars. While diamonds are said to be forever, nobody considers stars eternal. As such...</title>
			<link>http://wiki.apidesign.org/index.php?title=Black_hole&amp;diff=9991&amp;oldid=prev</link>
			<description>&lt;p&gt;New page: There is a significant difference between &lt;a href=&quot;/wiki/Blogs:JaroslavTulach:Theory:DiamondsVsStars&quot; title=&quot;Blogs:JaroslavTulach:Theory:DiamondsVsStars&quot;&gt;diamonds and stars&lt;/a&gt;. While diamonds are said to be forever, nobody considers stars eternal. As such...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;There is a significant difference between [[Blogs:JaroslavTulach:Theory:DiamondsVsStars|diamonds and stars]]. While diamonds are said to be forever, nobody considers stars eternal. As such the allegories are not the same. They are in fact quite different. If you get through the [[TheAPIBook|Practical API Design]] book to [[Evolving_the_API_Universe|chapter 15]] and [[End_Of_Life_Procedures|chapter 19]], you'll find out that if you have good support from runtime container, properly versioned APIs and you know how to allow co-existence of multiple versions of similar APIs, you can make your old APIs disappear, yet keep backward compatibility. Of course, this is not a common operation, just like stars do not burn out everyday. However, if you really need to, you can send your API (aka your star) towards a black hole and make it disappear there. Moreover, you can do it in a completely ''user driven'' way, where the speed of dying is driven by number of remaining users of the old API, e.g. observers of your star. This is all possible and the [[NetBeans]] project done that few times.&lt;/div&gt;</description>
			<pubDate>Tue, 07 May 2019 12:33:33 GMT</pubDate>			<dc:creator>JaroslavTulach</dc:creator>			<comments>http://wiki.apidesign.org/wiki/Talk:Black_hole</comments>		</item>
	</channel>
</rss>