diff --git a/api/src/main/kotlin/dev/msfjarvis/claw/api/LobstersApi.kt b/api/src/main/kotlin/dev/msfjarvis/claw/api/LobstersApi.kt index 78f10a55..6c16be32 100644 --- a/api/src/main/kotlin/dev/msfjarvis/claw/api/LobstersApi.kt +++ b/api/src/main/kotlin/dev/msfjarvis/claw/api/LobstersApi.kt @@ -9,7 +9,6 @@ package dev.msfjarvis.claw.api import com.slack.eithernet.ApiResult import dev.msfjarvis.claw.model.LobstersPost import dev.msfjarvis.claw.model.LobstersPostDetails -import dev.msfjarvis.claw.model.Tags import dev.msfjarvis.claw.model.User import retrofit2.http.GET import retrofit2.http.Path @@ -30,12 +29,6 @@ interface LobstersApi { @GET("u/{username}.json") suspend fun getUser(@Path("username") username: String): ApiResult - @GET("t/{tags}.json") - suspend fun getPostsByTags( - @Path("tags") tag: Tags, - @Query("page") page: Int, - ): ApiResult, Unit> - companion object { const val BASE_URL = "https://lobste.rs" } diff --git a/api/src/test/kotlin/dev/msfjarvis/claw/api/ApiTest.kt b/api/src/test/kotlin/dev/msfjarvis/claw/api/ApiTest.kt index 57070758..5e18d1fd 100644 --- a/api/src/test/kotlin/dev/msfjarvis/claw/api/ApiTest.kt +++ b/api/src/test/kotlin/dev/msfjarvis/claw/api/ApiTest.kt @@ -11,7 +11,6 @@ import com.slack.eithernet.ApiResult.Success import com.slack.eithernet.test.newEitherNetController import dev.msfjarvis.claw.model.LobstersPost import dev.msfjarvis.claw.model.LobstersPostDetails -import dev.msfjarvis.claw.model.Tags import dev.msfjarvis.claw.model.User import dev.msfjarvis.claw.util.TestUtils.assertIs import kotlinx.coroutines.test.runTest @@ -50,25 +49,4 @@ class ApiTest { assertIs>(user) assertThat(user.value.username).isEqualTo("msfjarvis") } - - @Test - fun `get posts by single tag`() = runTest { - val tags = Tags() - tags.addTag("meta") - val posts = api.getPostsByTags(tags, 1) - assertIs>>(posts) - assertThat(posts.value).hasSize(25) - assertThat(posts.value[0].tags).contains("meta") - } - - @Test - fun `get posts by multiple tags`() = runTest { - val tags = Tags() - tags.addTag("programming") - tags.addTag("rust") - val posts = api.getPostsByTags(tags, 1) - assertIs>>(posts) - assertThat(posts.value).hasSize(25) - assertThat(posts.value[0].tags).containsAnyOf("programming", "rust") - } } diff --git a/api/src/test/kotlin/dev/msfjarvis/claw/api/ApiWrapper.kt b/api/src/test/kotlin/dev/msfjarvis/claw/api/ApiWrapper.kt index 0e2c833c..f58f20c1 100644 --- a/api/src/test/kotlin/dev/msfjarvis/claw/api/ApiWrapper.kt +++ b/api/src/test/kotlin/dev/msfjarvis/claw/api/ApiWrapper.kt @@ -6,13 +6,11 @@ */ package dev.msfjarvis.claw.api -import com.slack.eithernet.ApiResult.Companion.httpFailure import com.slack.eithernet.ApiResult.Companion.success import com.slack.eithernet.test.EitherNetController import com.slack.eithernet.test.enqueue import dev.msfjarvis.claw.model.LobstersPost import dev.msfjarvis.claw.model.LobstersPostDetails -import dev.msfjarvis.claw.model.Tags import dev.msfjarvis.claw.model.User import dev.msfjarvis.claw.util.TestUtils.getResource import kotlinx.serialization.ExperimentalSerializationApi @@ -29,19 +27,6 @@ class ApiWrapper(controller: EitherNetController) { private val postDetails: LobstersPostDetails = json.decodeFromString(getResource("post_details_tdfoqh.json")) private val user: User = json.decodeFromString(getResource("msfjarvis.json")) - private val metaPosts: List = json.decodeFromString(getResource("meta.json")) - private val programmingRustPosts: List = - json.decodeFromString(getResource("programming_rust.json")) - private val getPostsBody = { args: Array -> - val tags = args[0] as Tags - if ("meta" in tags) { - success(metaPosts) - } else if ("programming" in tags && "rust" in tags) { - success(programmingRustPosts) - } else { - httpFailure(400) - } - } val api = controller.api @@ -50,7 +35,5 @@ class ApiWrapper(controller: EitherNetController) { controller.enqueue(LobstersApi::getHottestPosts) { success(hottest) } controller.enqueue(LobstersApi::getPostDetails) { success(postDetails) } controller.enqueue(LobstersApi::getUser) { success(user) } - controller.enqueue(LobstersApi::getPostsByTags, getPostsBody) - controller.enqueue(LobstersApi::getPostsByTags, getPostsBody) } } diff --git a/api/src/test/resources/meta.json b/api/src/test/resources/meta.json deleted file mode 100644 index a01866f0..00000000 --- a/api/src/test/resources/meta.json +++ /dev/null @@ -1 +0,0 @@ -[{"short_id":"zbuc2b","short_id_url":"https://lobste.rs/s/zbuc2b","created_at":"2023-02-04T17:01:25.000-06:00","title":"Check for working https before allowing submitting link","url":"","score":5,"flags":0,"comment_count":48,"description":"\u003cp\u003eHttps has been for several years now the dominant protocol on the web, and people have had many years to adopt it. To encourage good security practice, Lobsters should check for a working https connection before allowing a link submission to succeed. For example,\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eIf the link is http, not https,\u003c/li\u003e\n\u003cli\u003eOr if it is https but a connection attempt to the endpoint fails with a TLS error (e.g. cert expired or secure algorithms not supported),\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn these cases Lobsters should reject the submission.\u003c/p\u003e\n","description_plain":"Https has been for several years now the dominant protocol on the web, and people have had many years to adopt it. To encourage good security practice, Lobsters should check for a working https connection before allowing a link submission to succeed. For example,\r\n\r\n- If the link is http, not https,\r\n- Or if it is https but a connection attempt to the endpoint fails with a TLS error (e.g. cert expired or secure algorithms not supported),\r\n\r\nIn these cases Lobsters should reject the submission.","comments_url":"https://lobste.rs/s/zbuc2b/check_for_working_https_before_allowing","submitter_user":{"username":"yawaramin","created_at":"2017-01-22T00:02:18.000-06:00","is_admin":false,"about":"","is_moderator":false,"karma":1265,"avatar_url":"/avatars/yawaramin-100.png","invited_by_user":"awal"},"tags":["meta"]},{"short_id":"e64sja","short_id_url":"https://lobste.rs/s/e64sja","created_at":"2023-01-10T18:17:48.000-06:00","title":"Proposal for a \"social\" tag","url":"","score":6,"flags":0,"comment_count":4,"description":"\u003cp\u003eStuff like “what are you doing this week” and “what are you doing this weekend” could fit under this tag. Other things like “what are you favorite x,y,z” as well. The \u003ccode\u003erant\u003c/code\u003e and \u003ccode\u003eask\u003c/code\u003e tags could be retired. Can also cover opinion pieces.\u003ccode\u003esocial\u003c/code\u003e tagged posts should probably also have negative weight. This way lobste.rs can remain tech-focused but also appeal to some of our humanity.\u003c/p\u003e\n\u003cp\u003eThis is a catalyst to see if anyone else desires something similar. No way is the above a perfect model that satisfies usefulness of such a tag.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://lobste.rs/s/tjlmjr/what_was_best_cs_paper_you_read_2022#c_wtntvx\" rel=\"ugc\"\u003ehttps://lobste.rs/s/tjlmjr/what_was_best_cs_paper_you_read_2022#c_wtntvx\u003c/a\u003e struck me and I decided to immediately see what people think about such a tag.\u003c/p\u003e\n","description_plain":"Stuff like \"what are you doing this week\" and \"what are you doing this weekend\" could fit under this tag. Other things like \"what are you favorite x,y,z\" as well. The `rant` and `ask` tags could be retired. Can also cover opinion pieces.`social` tagged posts should probably also have negative weight. This way lobste.rs can remain tech-focused but also appeal to some of our humanity.\r\n\r\nThis is a catalyst to see if anyone else desires something similar. No way is the above a perfect model that satisfies usefulness of such a tag.\r\n\r\nhttps://lobste.rs/s/tjlmjr/what_was_best_cs_paper_you_read_2022#c_wtntvx struck me and I decided to immediately see what people think about such a tag.","comments_url":"https://lobste.rs/s/e64sja/proposal_for_social_tag","submitter_user":{"username":"LenFalken","created_at":"2016-03-07T10:51:31.000-06:00","is_admin":false,"about":"","is_moderator":false,"karma":2634,"avatar_url":"/avatars/LenFalken-100.png","invited_by_user":"ngoldbaum"},"tags":["meta"]},{"short_id":"mqgzpm","short_id_url":"https://lobste.rs/s/mqgzpm","created_at":"2023-01-09T11:53:51.000-06:00","title":"Gravatar updates","url":"","score":2,"flags":0,"comment_count":1,"description":"\u003cp\u003eI have recently added the email address I use for gravatar to the one I registered at Lobste.rs. However, upon clicking “Expire cache” and waiting many days, my lobste.rs profile picture has still not been updated,\u003c/p\u003e\n\u003cp\u003eAny help would be appreciated\u003c/p\u003e\n","description_plain":"I have recently added the email address I use for gravatar to the one I registered at Lobste.rs. However, upon clicking \"Expire cache\" and waiting many days, my lobste.rs profile picture has still not been updated,\r\n\r\nAny help would be appreciated","comments_url":"https://lobste.rs/s/mqgzpm/gravatar_updates","submitter_user":{"username":"deavmi","created_at":"2018-06-30T15:27:34.000-05:00","is_admin":false,"about":"I’m Tristan B. Kildaire (or deavmi on the Internet) and I’m a computer programmer. I love tinkering around with all the bits of software that my computer runs but typically more on the low-level sides of things. I’m really interested in how operating systems work as a whole and their components such as kernels, networking stacks, linking-loaders, IPC, paging, virtual memory, file-systems and the list goes on. There’s so much to learn from understanding these complex systems and each aspect of them never leaves me bored!\r\n\r\nYou could call me a language enthusiast, from the design to the implementation. I always want to know how things work and I’ve even spent time reading the source code for some language runtimes to get a better understanding. If I am feeling creative then I try write my own or write something in Forth! I love building networks too - I have an interest in setting up inter-networks with routing protocols, assigning numbers and setting up tunnels in order to build a huge network that I can play around on. When I’m not using other peoples' protocols I am busy writing my own to see what I can cobble out to itch my scratch on trying interesting concepts out.\r\n\r\nI like a good glass of red wine and cheese. I have an avid enjoyment for music from the 70s and the 80s and have rather interesting political views (nothing to be alarmed of) but most importantly I like to help others learn and put a smile on their face.","is_moderator":false,"karma":142,"avatar_url":"/avatars/deavmi-100.png","invited_by_user":"duclare","github_username":"deavmi","keybase_signatures":[{"kb_username":"tristankildaire","sig_hash":"4397ec164f1a65b7fd0803bc85cd0b12d06cb2606c2ae0a27795dd90e98e219c0f"}]},"tags":["meta"]},{"short_id":"0q8v2t","short_id_url":"https://lobste.rs/s/0q8v2t","created_at":"2022-12-23T06:57:15.000-06:00","title":"Happy Holidays, Crustaceans","url":"","score":56,"flags":1,"comment_count":16,"description":"\u003cp\u003eEnjoy your time off.\nI wish you all a good time and hope you’ll find a few moments to rest, enjoy and reflect. :)\u003c/p\u003e\n\u003cp\u003eP.S: A bit earlier this year, as apparently some people already got the Friday off? Outrageous!\u003c/p\u003e\n","description_plain":"Enjoy your time off.\r\nI wish you all a good time and hope you’ll find a few moments to rest, enjoy and reflect. :)\r\n\r\nP.S: A bit earlier this year, as apparently some people already got the Friday off? Outrageous!","comments_url":"https://lobste.rs/s/0q8v2t/happy_holidays_crustaceans","submitter_user":{"username":"freddyb","created_at":"2017-02-02T09:12:16.000-06:00","is_admin":false,"about":"I like browser security and web security. Both at work (for Mozilla from Berlin, Germany) and for fun.","is_moderator":false,"karma":9831,"avatar_url":"/avatars/freddyb-100.png","invited_by_user":"stas","keybase_signatures":[{"kb_username":"freddyb","sig_hash":"550e2f5b27d4b5d558c02dfb2b23a628e90635183c93f993eeea4e16b20c51150f"}]},"tags":["meta"]},{"short_id":"4cpqwv","short_id_url":"https://lobste.rs/s/4cpqwv","created_at":"2022-11-24T06:36:56.000-06:00","title":"Tag proposal: fediverse","url":"","score":116,"flags":0,"comment_count":39,"description":"\u003cp\u003eWith the increased interest in the \u003ca href=\"https://en.wikipedia.org/wiki/Fediverse\" rel=\"ugc\"\u003eFediverse\u003c/a\u003e (encompassing applications using ActivityPub, Diaspora and others), I believe the time has come for a dedicated tag.\u003c/p\u003e\n\u003cp\u003eThis will enable users to filter these stories, especially as they tend to shade into cultural/ideological discussions rather than purely technical.\u003c/p\u003e\n\u003cp\u003eStories from the last 7 days:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/yjgxsm/honk_into_activitypub\" rel=\"ugc\"\u003eHonk into ActivityPub\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/f59yfr/installing_mastodon_inside_freebsd_jail\" rel=\"ugc\"\u003eInstalling Mastodon inside a FreeBSD jail\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/ei8kfs/which_legibility_comes_at_price_on\" rel=\"ugc\"\u003ein which legibility comes at a price [on the fediverse]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/retmfy/rapidblock_project\" rel=\"ugc\"\u003eThe RapidBlock Project\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/9uvaqs/towards_end_end_encryption_for_direct\" rel=\"ugc\"\u003eTowards End-to-End Encryption for Direct Messages in the Fediverse \u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/lfyi9e/self_hosting_gotosocial_on_nixos\" rel=\"ugc\"\u003eSelf-hosting GoToSocial on NixOS\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/bdyq17/should_lobsters_profiles_include\" rel=\"ugc\"\u003eShould Lobsters profiles include a/multiple Fediverse links?\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/juznrz/tracking_mastodon_user_numbers_over_time\" rel=\"ugc\"\u003eTracking Mastodon user numbers over time with a bucket of tricks\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/4yyai6/what_are_your_favorite_mastodon\" rel=\"ugc\"\u003eWhat are your favorite Mastodon technology/programming community servers\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/r4u62z/scaling_mastodon_face_exodus\" rel=\"ugc\"\u003eScaling Mastodon in the Face of an Exodus\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/9w29so/fediverse_could_be_awesome_if_we_don_t\" rel=\"ugc\"\u003eThe Fediverse Could Be Awesome (if we don’t screw it up)\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n","description_plain":"With the increased interest in the [Fediverse](https://en.wikipedia.org/wiki/Fediverse) (encompassing applications using ActivityPub, Diaspora and others), I believe the time has come for a dedicated tag.\r\n\r\nThis will enable users to filter these stories, especially as they tend to shade into cultural/ideological discussions rather than purely technical. \r\n\r\nStories from the last 7 days:\r\n\r\n* [Honk into ActivityPub](https://lobste.rs/s/yjgxsm/honk_into_activitypub)\r\n* [Installing Mastodon inside a FreeBSD jail](https://lobste.rs/s/f59yfr/installing_mastodon_inside_freebsd_jail)\r\n* [in which legibility comes at a price [on the fediverse]](https://lobste.rs/s/ei8kfs/which_legibility_comes_at_price_on)\r\n* [The RapidBlock Project](https://lobste.rs/s/retmfy/rapidblock_project)\r\n* [Towards End-to-End Encryption for Direct Messages in the Fediverse ](https://lobste.rs/s/9uvaqs/towards_end_end_encryption_for_direct)\r\n* [Self-hosting GoToSocial on NixOS](https://lobste.rs/s/lfyi9e/self_hosting_gotosocial_on_nixos)\r\n* [Should Lobsters profiles include a/multiple Fediverse links?](https://lobste.rs/s/bdyq17/should_lobsters_profiles_include)\r\n* [Tracking Mastodon user numbers over time with a bucket of tricks](https://lobste.rs/s/juznrz/tracking_mastodon_user_numbers_over_time)\r\n* [What are your favorite Mastodon technology/programming community servers](https://lobste.rs/s/4yyai6/what_are_your_favorite_mastodon)\r\n* [Scaling Mastodon in the Face of an Exodus](https://lobste.rs/s/r4u62z/scaling_mastodon_face_exodus)\r\n* [The Fediverse Could Be Awesome (if we don’t screw it up)](https://lobste.rs/s/9w29so/fediverse_could_be_awesome_if_we_don_t)","comments_url":"https://lobste.rs/s/4cpqwv/tag_proposal_fediverse","submitter_user":{"username":"gerikson","created_at":"2017-01-13T03:16:10.000-06:00","is_admin":false,"about":"https://gerikson.com/hnlo/\r\n\r\n@gerikson@mastodon.social\r\n","is_moderator":false,"karma":14261,"avatar_url":"/avatars/gerikson-100.png","invited_by_user":"varjag","github_username":"gustafe"},"tags":["meta"]},{"short_id":"usfrje","short_id_url":"https://lobste.rs/s/usfrje","created_at":"2022-11-23T17:01:13.000-06:00","title":"Out of curiosity, why is Lobste.rs using \"noreferrer\" on links?","url":"","score":10,"flags":0,"comment_count":7,"description":"\u003cp\u003eI know what the technical meaning of “noreferrer” is; however, I’m wondering what’s the reasoning of using that param on external links here? For example, is it due to some sort of SPAM prevention/mitigation?\u003c/p\u003e\n","description_plain":"I know what the technical meaning of \"noreferrer\" is; however, I'm wondering what's the reasoning of using that param on external links here? For example, is it due to some sort of SPAM prevention/mitigation?","comments_url":"https://lobste.rs/s/usfrje/out_curiosity_why_is_lobste_rs_using","submitter_user":{"username":"stanbright","created_at":"2022-02-17T19:05:43.000-06:00","is_admin":false,"about":"Founder of [SaaSHub](https://www.saashub.com) \u0026 [LibHunt](https://www.libhunt.com). Having more ideas than time. Ruby on Rails veteran. 🥑👉🍞 p.s. Sweet dreams are made of hard work. Who am I to disagree?","is_moderator":false,"karma":157,"avatar_url":"/avatars/stanbright-100.png","invited_by_user":"chrisseaton"},"tags":["meta"]},{"short_id":"bdyq17","short_id_url":"https://lobste.rs/s/bdyq17","created_at":"2022-11-20T06:09:04.000-06:00","title":"Should Lobsters profiles include a/multiple Fediverse links?","url":"","score":67,"flags":0,"comment_count":32,"description":"\u003cp\u003eCurrently there’s 4 Fediverse topics on the front page. This suggests there is good interest in these platforms. Currently the Lobsters user profiles have but two proprietary, closed-source, centralized social network platforms: Twitter and GitHub. I think it may be desired by many users to have the option of including one’s Fediverse profile links as well.\u003c/p\u003e\n","description_plain":"Currently there's 4 Fediverse topics on the front page. This suggests there is good interest in these platforms. Currently the Lobsters user profiles have but two proprietary, closed-source, centralized social network platforms: Twitter and GitHub. I think it may be desired by many users to have the option of including one's Fediverse profile links as well.","comments_url":"https://lobste.rs/s/bdyq17/should_lobsters_profiles_include","submitter_user":{"username":"toastal","created_at":"2021-07-12T04:15:50.000-05:00","is_admin":false,"about":"a disciple of functional programming\r\n\r\nStop using Microsoft products; say _NO_ to neo-EEE including WSL, GitHub, Sponsors, Copilot, VS Code, Codespaces, Azure, npm, Teams","is_moderator":false,"karma":1632,"avatar_url":"/avatars/toastal-100.png","invited_by_user":"gerikson","github_username":"toastal","twitter_username":"toastal","keybase_signatures":[{"kb_username":"toastal","sig_hash":"be4ea8b4b314c4342e5dd97f1d845cc8586de0b0ec40ab4cd872f31071eab6030f"}]},"tags":["meta"]},{"short_id":"nacbiq","short_id_url":"https://lobste.rs/s/nacbiq","created_at":"2022-11-08T01:02:07.000-06:00","title":"Is the logout endpoint broken?","url":"","score":5,"flags":0,"comment_count":5,"description":"\u003cp\u003eI can’t find a way to log out of Lobsters.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://lobste.rs/logout\" rel=\"ugc\"\u003ehttps://lobste.rs/logout\u003c/a\u003e gives me a 404.\u003c/p\u003e\n\u003cp\u003eAdditionally, when I try to submit this story with only the “ask” tag, I get this error:\u003c/p\u003e\n\u003cp\u003e1 error prohibited this story from being saved. There were the problems with the following fields: Must have at least one non-media (PDF, video) tag. If no tags apply to your content, it probably doesn’t belong here.\u003c/p\u003e\n\u003cp\u003eSo I added “programming”.\u003c/p\u003e\n","description_plain":"I can't find a way to log out of Lobsters.\r\n\r\nhttps://lobste.rs/logout gives me a 404.\r\n\r\nAdditionally, when I try to submit this story with only the \"ask\" tag, I get this error:\r\n\r\n1 error prohibited this story from being saved. There were the problems with the following fields: Must have at least one non-media (PDF, video) tag. If no tags apply to your content, it probably doesn't belong here.\r\n\r\nSo I added \"programming\".","comments_url":"https://lobste.rs/s/nacbiq/is_logout_endpoint_broken","submitter_user":{"username":"no_gravity","created_at":"2015-02-02T12:38:26.000-06:00","is_admin":false,"about":"I build online tools. Serial entrepreneur. Like to meet like-minded people.","is_moderator":false,"karma":820,"avatar_url":"/avatars/no_gravity-100.png","invited_by_user":"SomeKittens"},"tags":["ask","meta"]},{"short_id":"wxrsqk","short_id_url":"https://lobste.rs/s/wxrsqk","created_at":"2022-11-06T16:11:50.000-06:00","title":"Is social media off-topic?","url":"","score":25,"flags":2,"comment_count":38,"description":"\u003cp\u003eI’m a (relatively) new user here, so I’d like to hear from users who have been around for a while (or mods). There have been a few recent posts about (or on) social media, which were not removed, but were both flagged and upvoted by a significant number of users:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/wrvq9v/are_you_still_active_any_social_media\" rel=\"ugc\"\u003eAre you still active in any social media platforms?\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/imvlwv/stop_writing_twitter_threads\" rel=\"ugc\"\u003eStop writing Twitter threads\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/rp1x4f/three_things_like_about_fediverse\" rel=\"ugc\"\u003eThree things to like about the Fediverse\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor what it’s worth, I did enjoy reading both of these threads—but I also recognize that the culture of lobste.rs is formed primarily from users who have been around much longer than I have. If these posts are indeed off-topic, should they be removed? If they are on-topic, should a new tag (\u003ccode\u003esocial-media\u003c/code\u003e) be added? Given that a large amount of users are flagging these stories, there is a strong case for wanting to filter them out. A disclaimer would probably need to be added (similar to \u003ccode\u003emerkle-trees\u003c/code\u003e), stating something along the lines of non-technical discussions on social media or general business news of social media is not allowed.\u003c/p\u003e\n\u003cp\u003eI double-checked the \u003ca href=\"https://lobste.rs/about\" rel=\"ugc\"\u003eabout page\u003c/a\u003e, and although many things are explicitly off-topic, social media is not mentioned:\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eentrepreneurship, management, news about companies that employ a lot of programmers, investing, world events, anthropology, self-help, personal productivity systems, last-resort customer service requests via public shaming, “I wanted to see what this site’s amazing users think about this off-topic thing”, and defining the single morally correct economic and political system for the entire world when we can’t even settle tabs vs. spaces.\u003c/p\u003e\n\u003c/blockquote\u003e\n","description_plain":"I'm a (relatively) new user here, so I'd like to hear from users who have been around for a while (or mods). There have been a few recent posts about (or on) social media, which were not removed, but were both flagged and upvoted by a significant number of users:\r\n\r\n- [Are you still active in any social media platforms?](https://lobste.rs/s/wrvq9v/are_you_still_active_any_social_media)\r\n- [Stop writing Twitter threads](https://lobste.rs/s/imvlwv/stop_writing_twitter_threads)\r\n- [Three things to like about the Fediverse](https://lobste.rs/s/rp1x4f/three_things_like_about_fediverse)\r\n\r\nFor what it's worth, I did enjoy reading both of these threads---but I also recognize that the culture of lobste.rs is formed primarily from users who have been around much longer than I have. If these posts are indeed off-topic, should they be removed? If they are on-topic, should a new tag (`social-media`) be added? Given that a large amount of users are flagging these stories, there is a strong case for wanting to filter them out. A disclaimer would probably need to be added (similar to `merkle-trees`), stating something along the lines of non-technical discussions on social media or general business news of social media is not allowed.\r\n\r\nI double-checked the [about page](https://lobste.rs/about), and although many things are explicitly off-topic, social media is not mentioned: \r\n\u003e entrepreneurship, management, news about companies that employ a lot of programmers, investing, world events, anthropology, self-help, personal productivity systems, last-resort customer service requests via public shaming, \"I wanted to see what this site's amazing users think about this off-topic thing\", and defining the single morally correct economic and political system for the entire world when we can't even settle tabs vs. spaces.","comments_url":"https://lobste.rs/s/wxrsqk/is_social_media_off_topic","submitter_user":{"username":"cafebeef","created_at":"2022-07-21T22:32:01.000-05:00","is_admin":false,"about":"","is_moderator":false,"karma":152,"avatar_url":"/avatars/cafebeef-100.png","invited_by_user":"cocoafleck"},"tags":["ask","meta"]},{"short_id":"tdfoqh","short_id_url":"https://lobste.rs/s/tdfoqh","created_at":"2022-07-22T12:06:59.000-05:00","title":"Ranking comments by sum of replies' scores","url":"","score":18,"flags":0,"comment_count":10,"description":"\u003cp\u003eThere are often cases where comments with a poor score (say, 1 point), invite high-quality replies that receive many upvotes.\u003c/p\u003e\n\u003cp\u003eThese threads are not shown at the top of the story’s comments page because their “root comment” has a low score.\u003c/p\u003e\n\u003cp\u003eAn example, as of 2022-07-22 17:00 UTC, is \u003ca href=\"https://lobste.rs/s/ekvqcf/random_wallpaper_with_just_bash_systemd#c_vop9bt\" rel=\"ugc\"\u003ehttps://lobste.rs/s/ekvqcf/random_wallpaper_with_just_bash_systemd#c_vop9bt\u003c/a\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ethe root comment has 1 point,\u003c/li\u003e\n\u003cli\u003ethe first reply has 12 points,\u003c/li\u003e\n\u003cli\u003eand, in total, 18 points have been accumulated by all the replies with score \u0026gt; 1 point.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eBecause the root comment has only 1 point, it remains at the bottom of the page, bringing down with itself also the good comment with 12 points and all the other upvoted comments.\u003c/p\u003e\n\u003cp\u003eCould an alternative ranking system be put in place, where the threads and subthreads are not sorted by the score of their root comment, but by the \u003cem\u003esum of all the scores of their children\u003c/em\u003e?\u003c/p\u003e\n\u003cp\u003e(Maybe taking into account only children with \u003ccode\u003e\u0026gt;1\u003c/code\u003e point, to avoid giving importance to superficial back-and-forth discussions.)\u003c/p\u003e\n","description_plain":"There are often cases where comments with a poor score (say, 1 point), invite high-quality replies that receive many upvotes.\r\n\r\nThese threads are not shown at the top of the story's comments page because their \"root comment\" has a low score.\r\n\r\nAn example, as of 2022-07-22 17:00 UTC, is \u003chttps://lobste.rs/s/ekvqcf/random_wallpaper_with_just_bash_systemd#c_vop9bt\u003e:\r\n* the root comment has 1 point,\r\n* the first reply has 12 points,\r\n* and, in total, 18 points have been accumulated by all the replies with score \u003e 1 point.\r\n\r\nBecause the root comment has only 1 point, it remains at the bottom of the page, bringing down with itself also the good comment with 12 points and all the other upvoted comments.\r\n\r\nCould an alternative ranking system be put in place, where the threads and subthreads are not sorted by the score of their root comment, but by the _sum of all the scores of their children_?\r\n\r\n(Maybe taking into account only children with `\u003e1` point, to avoid giving importance to superficial back-and-forth discussions.)","comments_url":"https://lobste.rs/s/tdfoqh/ranking_comments_by_sum_replies_scores","submitter_user":{"username":"gioele","created_at":"2018-04-25T11:31:25.000-05:00","is_admin":false,"about":"https://gioele.io","is_moderator":false,"karma":636,"avatar_url":"/avatars/gioele-100.png","invited_by_user":"pushcx"},"tags":["meta"]},{"short_id":"xf0h8j","short_id_url":"https://lobste.rs/s/xf0h8j","created_at":"2022-05-28T02:47:43.000-05:00","title":"Tag suggestion: `sqlite`","url":"","score":56,"flags":0,"comment_count":18,"description":"\u003cp\u003eFree-text search for \u003ccode\u003esqlite\u003c/code\u003e reveals nearly 1,000 entries. It tends to be cross-cutting topic, with stories ranging from web development, to systems, to mobile, etc and it might not always be in the title, so a tag would be useful here.\u003c/p\u003e\n\u003cp\u003eJust a handful of stories within the last two weeks:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/fki4tj/architecture_notes_datasette\" rel=\"ugc\"\u003eArchitecture Notes: Datasette\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/tkkdci/rqlite_distributed_sqlite_v7_5_0_trading\" rel=\"ugc\"\u003erqlite – distributed SQLite: v7.5.0 trading durability for higher write performance\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/4ac485/temporary_tables_sqlite\" rel=\"ugc\"\u003eTemporary tables in SQLite\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/en6f23/json_virtual_columns_sqlite\" rel=\"ugc\"\u003eJSON and virtual columns in SQLite\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/klejws/performance_tests_for_bulk_insert_into\" rel=\"ugc\"\u003ePerformance tests for bulk insert into SQLite memory database in Go\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/k9hzrj/db_browser_for_sqlite\" rel=\"ugc\"\u003eDB Browser for SQLite\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThere’s always been a lot of interest in sqlite and this seems to be picking up recently. Compare to topics like \u003ccode\u003ezig\u003c/code\u003e, \u003ccode\u003eswift\u003c/code\u003e, and \u003ccode\u003ekotlin\u003c/code\u003e which have a few hundred hits each, an \u003ccode\u003esqlite\u003c/code\u003e tag seems to be warranted.\u003c/p\u003e\n","description_plain":"Free-text search for `sqlite` reveals nearly 1,000 entries. It tends to be cross-cutting topic, with stories ranging from web development, to systems, to mobile, etc and it might not always be in the title, so a tag would be useful here.\r\n\r\nJust a handful of stories within the last two weeks:\r\n\r\n* [Architecture Notes: Datasette](https://lobste.rs/s/fki4tj/architecture_notes_datasette)\r\n* [rqlite – distributed SQLite: v7.5.0 trading durability for higher write performance](https://lobste.rs/s/tkkdci/rqlite_distributed_sqlite_v7_5_0_trading)\r\n* [Temporary tables in SQLite](https://lobste.rs/s/4ac485/temporary_tables_sqlite)\r\n* [JSON and virtual columns in SQLite](https://lobste.rs/s/en6f23/json_virtual_columns_sqlite)\r\n* [Performance tests for bulk insert into SQLite memory database in Go](https://lobste.rs/s/klejws/performance_tests_for_bulk_insert_into)\r\n* [DB Browser for SQLite](https://lobste.rs/s/k9hzrj/db_browser_for_sqlite)\r\n\r\nThere's always been a lot of interest in sqlite and this seems to be picking up recently. Compare to topics like `zig`, `swift`, and `kotlin` which have a few hundred hits each, an `sqlite` tag seems to be warranted.","comments_url":"https://lobste.rs/s/xf0h8j/tag_suggestion_sqlite","submitter_user":{"username":"hashemi","created_at":"2017-02-16T05:09:25.000-06:00","is_admin":false,"about":"","is_moderator":false,"karma":543,"avatar_url":"/avatars/hashemi-100.png","invited_by_user":"Flisk","github_username":"hashemi","twitter_username":"ahmadh"},"tags":["meta"]},{"short_id":"hfqnsy","short_id_url":"https://lobste.rs/s/hfqnsy","created_at":"2022-05-10T18:01:38.000-05:00","title":"Suggestion: 'humour' tag","url":"","score":13,"flags":0,"comment_count":15,"description":"\u003cp\u003eRecent post ‘\u003ca href=\"https://lobste.rs/s/tgyd8r/if_programming_languages_were_futurama\" rel=\"ugc\"\u003eIf programming languages were futurama characters\u003c/a\u003e’ was tagged ‘satire’. It does not seem to be satirising anything, though; probably, ‘satire’ was only applied because it was humorous. This seems to indicate an unsatisfied need.\u003c/p\u003e\n","description_plain":"Recent post '[If programming languages were futurama characters](https://lobste.rs/s/tgyd8r/if_programming_languages_were_futurama)' was tagged 'satire'. It does not seem to be satirising anything, though; probably, 'satire' was only applied because it was humorous. This seems to indicate an unsatisfied need.","comments_url":"https://lobste.rs/s/hfqnsy/suggestion_humour_tag","submitter_user":{"username":"Moonchild","created_at":"2018-04-01T12:28:59.000-05:00","is_admin":false,"about":"","is_moderator":false,"karma":2487,"avatar_url":"/avatars/Moonchild-100.png","invited_by_user":"pushcx"},"tags":["meta"]},{"short_id":"ajnpnf","short_id_url":"https://lobste.rs/s/ajnpnf","created_at":"2022-05-02T23:56:48.000-05:00","title":"Tag suggestion: kotlin","url":"","score":41,"flags":0,"comment_count":8,"description":"\u003cp\u003eKotlin doesn’t get a ton of discussion here, but there’s a steady trickle of Kotlin-related submissions. Most of them are tagged \u003ccode\u003ejava\u003c/code\u003e right now even when they’re about running Kotlin on non-JVM platforms.\u003c/p\u003e\n\u003cp\u003eExample submissions that could have used the tag:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/1mq3p2/kotlin_asynchronous_framework_ktor_2_0\" rel=\"ugc\"\u003ehttps://lobste.rs/s/1mq3p2/kotlin_asynchronous_framework_ktor_2_0\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/bfwgny/what_s_new_kotlin_1_6_0\" rel=\"ugc\"\u003ehttps://lobste.rs/s/bfwgny/what_s_new_kotlin_1_6_0\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/vbqyop/compose_multiplatform_1_0_is_going_live\" rel=\"ugc\"\u003ehttps://lobste.rs/s/vbqyop/compose_multiplatform_1_0_is_going_live\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/pyovsx/writing_unadulterated_services_with\" rel=\"ugc\"\u003ehttps://lobste.rs/s/pyovsx/writing_unadulterated_services_with\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/57bky5/ten_years_kotlin\" rel=\"ugc\"\u003ehttps://lobste.rs/s/57bky5/ten_years_kotlin\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAdding a tag for Kotlin will allow people who are interested in Java but not other JVM languages to filter it out. There is precedent for splitting other JVM languages out from under \u003ccode\u003ejava\u003c/code\u003e: we already have \u003ccode\u003eclojure\u003c/code\u003e and \u003ccode\u003escala\u003c/code\u003e tags.\u003c/p\u003e\n","description_plain":"Kotlin doesn't get a ton of discussion here, but there's a steady trickle of Kotlin-related submissions. Most of them are tagged `java` right now even when they're about running Kotlin on non-JVM platforms.\r\n\r\nExample submissions that could have used the tag:\r\n\r\n* https://lobste.rs/s/1mq3p2/kotlin_asynchronous_framework_ktor_2_0\r\n* https://lobste.rs/s/bfwgny/what_s_new_kotlin_1_6_0\r\n* https://lobste.rs/s/vbqyop/compose_multiplatform_1_0_is_going_live\r\n* https://lobste.rs/s/pyovsx/writing_unadulterated_services_with\r\n* https://lobste.rs/s/57bky5/ten_years_kotlin\r\n\r\nAdding a tag for Kotlin will allow people who are interested in Java but not other JVM languages to filter it out. There is precedent for splitting other JVM languages out from under `java`: we already have `clojure` and `scala` tags.","comments_url":"https://lobste.rs/s/ajnpnf/tag_suggestion_kotlin","submitter_user":{"username":"koreth","created_at":"2019-06-29T12:22:47.000-05:00","is_admin":false,"about":"","is_moderator":false,"karma":1440,"avatar_url":"/avatars/koreth-100.png","invited_by_user":"ash"},"tags":["kotlin","meta"]},{"short_id":"ke51rx","short_id_url":"https://lobste.rs/s/ke51rx","created_at":"2022-04-25T07:30:42.000-05:00","title":"Reminder: you can `suggest` titles and tags","url":"","score":40,"flags":0,"comment_count":1,"description":"\u003cp\u003eThis is a friendly reminder that users above a certain karma level (currently 10) can use the \u003ccode\u003esuggest\u003c/code\u003e link under each submission to provide input to titles and tags.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eadd a publication year to a submission\u003c/li\u003e\n\u003cli\u003eremove blog cruft like titles\u003c/li\u003e\n\u003cli\u003ecorrect capitalization and spelling\u003c/li\u003e\n\u003cli\u003eremove or add tags\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIf enough users do this the change will be automatically applied and noted in the \u003ca href=\"https://lobste.rs/moderations?moderator=%28Users%29\u0026amp;what%5Bstories%5D=stories\u0026amp;what%5Btags%5D=tags\" rel=\"ugc\"\u003emod log\u003c/a\u003e.\u003c/p\u003e\n","description_plain":"This is a friendly reminder that users above a certain karma level (currently 10) can use the `suggest` link under each submission to provide input to titles and tags.\r\n\r\n* add a publication year to a submission\r\n* remove blog cruft like titles\r\n* correct capitalization and spelling \r\n* remove or add tags\r\n\r\nIf enough users do this the change will be automatically applied and noted in the [mod log](https://lobste.rs/moderations?moderator=%28Users%29\u0026what%5Bstories%5D=stories\u0026what%5Btags%5D=tags).","comments_url":"https://lobste.rs/s/ke51rx/reminder_you_can_suggest_titles_tags","submitter_user":{"username":"gerikson","created_at":"2017-01-13T03:16:10.000-06:00","is_admin":false,"about":"https://gerikson.com/hnlo/\r\n\r\n@gerikson@mastodon.social\r\n","is_moderator":false,"karma":14261,"avatar_url":"/avatars/gerikson-100.png","invited_by_user":"varjag","github_username":"gustafe"},"tags":["meta"]},{"short_id":"fwjofs","short_id_url":"https://lobste.rs/s/fwjofs","created_at":"2022-04-24T12:06:16.000-05:00","title":"There should be a tag for “shell”","url":"","score":93,"flags":0,"comment_count":27,"description":"\u003cp\u003eThe question of shell scripting (Is it always a bad idea? How to do it well?) comes up a lot. There should be a tag for it.\u003c/p\u003e\n","description_plain":"The question of shell scripting (Is it always a bad idea? How to do it well?) comes up a lot. There should be a tag for it.","comments_url":"https://lobste.rs/s/fwjofs/there_should_be_tag_for_shell","submitter_user":{"username":"carlmjohnson","created_at":"2021-07-19T11:55:18.000-05:00","is_admin":false,"about":"Carl M. Johnson is a philosopher and programmer, currently employed as the Director of Technology for Spotlight PA.","is_moderator":false,"karma":7955,"avatar_url":"/avatars/carlmjohnson-100.png","invited_by_user":"peterbourgon","github_username":"carlmjohnson","twitter_username":"carlmjohnson"},"tags":["meta"]},{"short_id":"khlfpk","short_id_url":"https://lobste.rs/s/khlfpk","created_at":"2022-03-29T16:42:48.000-05:00","title":"Do the lobste.rs admins need help reviewing PRs?","url":"","score":10,"flags":0,"comment_count":2,"description":"\u003cp\u003eNot asking for any particular reason, I just know it’s a chore to keep the site running. Let us know if there’s a way we can help out!\u003c/p\u003e\n","description_plain":"Not asking for any particular reason, I just know it's a chore to keep the site running. Let us know if there's a way we can help out!","comments_url":"https://lobste.rs/s/khlfpk/do_lobste_rs_admins_need_help_reviewing","submitter_user":{"username":"briankung","created_at":"2017-04-03T00:20:29.000-05:00","is_admin":false,"about":"","is_moderator":false,"karma":1878,"avatar_url":"/avatars/briankung-100.png","invited_by_user":"gsylvie"},"tags":["meta","programming"]},{"short_id":"zl2a1r","short_id_url":"https://lobste.rs/s/zl2a1r","created_at":"2022-03-05T09:45:02.000-06:00","title":"Is this link working for other folks?","url":"https://lobste.rs/s/gexvzn/problem_keeping_track_hardlinks_as_you","score":1,"flags":0,"comment_count":5,"description":"\u003cp\u003eI posted a comment on this story earlier today. Later I found that my /threads page is blank, and looking into that it appears this page is now blank for me too. I suspect the two are related. There doesn’t appear to be any admin events related to it though.\u003c/p\u003e\n","description_plain":"I posted a comment on this story earlier today. Later I found that my /threads page is blank, and looking into that it appears this page is now blank for me too. I suspect the two are related. There doesn’t appear to be any admin events related to it though.","comments_url":"https://lobste.rs/s/zl2a1r/is_this_link_working_for_other_folks","submitter_user":{"username":"stig","created_at":"2014-01-16T11:53:22.000-06:00","is_admin":false,"about":"Multilingual software developer. Author of SBJson. Husband. Dad. Feminist. Guitarist. Remote work enthusiast. ","is_moderator":false,"karma":2502,"avatar_url":"/avatars/stig-100.png","invited_by_user":"kellogh","github_username":"stig"},"tags":["ask","meta"]},{"short_id":"o8yuz9","short_id_url":"https://lobste.rs/s/o8yuz9","created_at":"2022-03-02T06:44:22.000-06:00","title":"A society tag?","url":"","score":10,"flags":1,"comment_count":23,"description":"\u003cp\u003eShould we have a tag “society” for writing about the broader impact of computers on society? Generally these kind of stories receive a fair number of upvotes before being removed as off-topic (which in fairness they strictly are right now)?\u003c/p\u003e\n","description_plain":"Should we have a tag “society” for writing about the broader impact of computers on society? Generally these kind of stories receive a fair number of upvotes before being removed as off-topic (which in fairness they strictly are right now)?","comments_url":"https://lobste.rs/s/o8yuz9/society_tag","submitter_user":{"username":"Student","created_at":"2018-06-14T20:43:25.000-05:00","is_admin":false,"about":"I’m a data engineer and engineering management consultant. ","is_moderator":false,"karma":1976,"avatar_url":"/avatars/Student-100.png","invited_by_user":"alynpost"},"tags":["meta"]},{"short_id":"0kje8d","short_id_url":"https://lobste.rs/s/0kje8d","created_at":"2022-02-28T06:57:35.000-06:00","title":"Can comments \"disappear\" from lobste.rs?","url":"","score":10,"flags":0,"comment_count":11,"description":"\u003cp\u003eThis morning I saw a pretty inflammatory comment on one of the top stories on the front page. When I wanted to take a good look at it now, I couldn’t find it. Moderation log doesn’t contain anything.\u003c/p\u003e\n\u003cp\u003eI was pretty convinced that on lobste.rs comments can’t be removed without leaving mark they got removed, it that some new development?\u003c/p\u003e\n","description_plain":"This morning I saw a pretty inflammatory comment on one of the top stories on the front page. When I wanted to take a good look at it now, I couldn't find it. Moderation log doesn't contain anything.\r\n\r\nI was pretty convinced that on lobste.rs comments can't be removed without leaving mark they got removed, it that some new development?","comments_url":"https://lobste.rs/s/0kje8d/can_comments_disappear_from_lobste_rs","submitter_user":{"username":"knl","created_at":"2017-07-21T07:12:24.000-05:00","is_admin":false,"about":"Senior software engineer specialized in distributed systems and low latency, high frequency trading infrastructure.","is_moderator":false,"karma":6205,"avatar_url":"/avatars/knl-100.png","invited_by_user":"james","github_username":"knl","keybase_signatures":[{"kb_username":"knl","sig_hash":"cb1fe17fead6d360f9abca902132b2407ee736f1a243f615ad9757dfe8d17e3b0f"}]},"tags":["meta"]},{"short_id":"neqyqw","short_id_url":"https://lobste.rs/s/neqyqw","created_at":"2022-01-13T21:06:56.000-06:00","title":"Add \"AR/VR\" Tag","url":"","score":14,"flags":0,"comment_count":4,"description":"\u003cp\u003eI’d like to suggest the addition of an \u003ccode\u003eAR/VR\u003c/code\u003e tag as a further specialization of graphics for augmented reality (AR) and virtual reality (VR).\u003c/p\u003e\n\u003cp\u003eStories that would benefit from it:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/kz1ejv/how_i_vtuber\" rel=\"ugc\"\u003eHow I VTuber\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://nautil.us/issue/32/space/these-tricks-make-virtual-reality-feel-real\" rel=\"ugc\"\u003eThese Tricks Make Virtual Reality Feel Real\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/npofl0/my_vr_hell_on_nixos\" rel=\"ugc\"\u003eMy VR Hell on NixOS\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/umkq0r/yoha_practical_hand_tracking_engine\" rel=\"ugc\"\u003eYoHa: A Practical Hand Tracking Engine \u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eI’m a little torn on this, but I’m curious what people think. I feel like the tag identifies a pretty clear cluster of technologies and programs, and it’d be helpful to act as a crystallization point for more submissions in that direction.\u003c/p\u003e\n","description_plain":"I'd like to suggest the addition of an `AR/VR` tag as a further specialization of graphics for augmented reality (AR) and virtual reality (VR).\r\n\r\nStories that would benefit from it:\r\n\r\n* [How I VTuber](https://lobste.rs/s/kz1ejv/how_i_vtuber)\r\n* [These Tricks Make Virtual Reality Feel Real](https://nautil.us/issue/32/space/these-tricks-make-virtual-reality-feel-real)\r\n* [My VR Hell on NixOS](https://lobste.rs/s/npofl0/my_vr_hell_on_nixos)\r\n* [YoHa: A Practical Hand Tracking Engine ](https://lobste.rs/s/umkq0r/yoha_practical_hand_tracking_engine)\r\n\r\nI'm a little torn on this, but I'm curious what people think. I feel like the tag identifies a pretty clear cluster of technologies and programs, and it'd be helpful to act as a crystallization point for more submissions in that direction.","comments_url":"https://lobste.rs/s/neqyqw/add_ar_vr_tag","submitter_user":{"username":"friendlysock","created_at":"2014-02-20T00:43:41.000-06:00","is_admin":false,"about":"*Literally* full of ants.\r\n\r\nFriendly engineer and human being.\r\n\r\nStrong opinions held weakly, sometimes weekly.\r\n\r\n\u003e Gentrification is the process by which nebulous threats are pacified and alchemised into money. \r\n","is_moderator":false,"karma":39428,"avatar_url":"/avatars/friendlysock-100.png","invited_by_user":"MasonJar"},"tags":["meta"]},{"short_id":"xkrrzs","short_id_url":"https://lobste.rs/s/xkrrzs","created_at":"2021-12-24T10:20:50.000-06:00","title":"Happy Holidays, Crustaceans","url":"","score":70,"flags":7,"comment_count":14,"description":"\u003cp\u003eEnjoy your time off - be it religious or secular. I hope you’ll find a few moments to rest, enjoy and reflect. :)\u003c/p\u003e\n","description_plain":"Enjoy your time off - be it religious or secular. I hope you’ll find a few moments to rest, enjoy and reflect. :)","comments_url":"https://lobste.rs/s/xkrrzs/happy_holidays_crustaceans","submitter_user":{"username":"freddyb","created_at":"2017-02-02T09:12:16.000-06:00","is_admin":false,"about":"I like browser security and web security. Both at work (for Mozilla from Berlin, Germany) and for fun.","is_moderator":false,"karma":9831,"avatar_url":"/avatars/freddyb-100.png","invited_by_user":"stas","keybase_signatures":[{"kb_username":"freddyb","sig_hash":"550e2f5b27d4b5d558c02dfb2b23a628e90635183c93f993eeea4e16b20c51150f"}]},"tags":["meta"]},{"short_id":"ugprwi","short_id_url":"https://lobste.rs/s/ugprwi","created_at":"2021-12-08T05:04:38.000-06:00","title":"What does it take to get a new tag accepted?","url":"","score":73,"flags":0,"comment_count":26,"description":"\u003cp\u003eThis post is in response to the proposal to add “nix” as a tag: \u003ca href=\"https://lobste.rs/s/bv2nje/tag_suggestion_nix\" rel=\"ugc\"\u003ehttps://lobste.rs/s/bv2nje/tag_suggestion_nix\u003c/a\u003e. That post was highly upvoted and many people have expressed interest to have the tag – from both sides.\u003c/p\u003e\n\u003cp\u003eHowever, there was absolutely no response from moderators nor pushcx. That leaves us in a state of limbo: will we get this tag, or not? If not, why not?\u003c/p\u003e\n\u003cp\u003eTo repeat the question I had on the topic: given that there were several other submissions for this tag and all had quite a lot of interest: what should have we done better? What was/is missing to get this tag (or any other tag)? Should more people vote? Should the proposal include something more? Please help us learn :)\u003c/p\u003e\n","description_plain":"This post is in response to the proposal to add \"nix\" as a tag: https://lobste.rs/s/bv2nje/tag_suggestion_nix. That post was highly upvoted and many people have expressed interest to have the tag -- from both sides.\r\n\r\nHowever, there was absolutely no response from moderators nor pushcx. That leaves us in a state of limbo: will we get this tag, or not? If not, why not?\r\n\r\nTo repeat the question I had on the topic: given that there were several other submissions for this tag and all had quite a lot of interest: what should have we done better? What was/is missing to get this tag (or any other tag)? Should more people vote? Should the proposal include something more? Please help us learn :)","comments_url":"https://lobste.rs/s/ugprwi/what_does_it_take_get_new_tag_accepted","submitter_user":{"username":"knl","created_at":"2017-07-21T07:12:24.000-05:00","is_admin":false,"about":"Senior software engineer specialized in distributed systems and low latency, high frequency trading infrastructure.","is_moderator":false,"karma":6205,"avatar_url":"/avatars/knl-100.png","invited_by_user":"james","github_username":"knl","keybase_signatures":[{"kb_username":"knl","sig_hash":"cb1fe17fead6d360f9abca902132b2407ee736f1a243f615ad9757dfe8d17e3b0f"}]},"tags":["meta"]},{"short_id":"bv2nje","short_id_url":"https://lobste.rs/s/bv2nje","created_at":"2021-12-03T06:39:31.000-06:00","title":"tag suggestion: nix","url":"","score":215,"flags":0,"comment_count":43,"description":"\u003cp\u003eI would like to propose a new tag \u003ccode\u003enix\u003c/code\u003e that covers the package manager as well as the distribution NixOS. Lately we have had a steady stream of popular articles about \u003ccode\u003enix\u003c/code\u003e. These were tagged with \u003ccode\u003elinux\u003c/code\u003e or the even broader \u003ccode\u003eunix\u003c/code\u003e tag. To be able to filter them out, it would be nice to have that tag.\u003c/p\u003e\n\u003cp\u003eRecent stories that are about nix:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/npofl0/my_vr_hell_on_nixos\" rel=\"ugc\"\u003ehttps://lobste.rs/s/npofl0/my_vr_hell_on_nixos\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/ypwgwp/tvix_we_are_rewriting_nix\" rel=\"ugc\"\u003ehttps://lobste.rs/s/ypwgwp/tvix_we_are_rewriting_nix\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/tppcqo/nixos_21_11_released\" rel=\"ugc\"\u003ehttps://lobste.rs/s/tppcqo/nixos_21_11_released\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/65xymz/will_nix_overtake_docker\" rel=\"ugc\"\u003ehttps://lobste.rs/s/65xymz/will_nix_overtake_docker\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/mu95rt/my_homelab_nas_on_nixos\" rel=\"ugc\"\u003ehttps://lobste.rs/s/mu95rt/my_homelab_nas_on_nixos\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/xi9jcs/nixos_headless_home_assistant_vm\" rel=\"ugc\"\u003ehttps://lobste.rs/s/xi9jcs/nixos_headless_home_assistant_vm\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/weg73v/remote_encrypted_zfs_storage_server_with\" rel=\"ugc\"\u003ehttps://lobste.rs/s/weg73v/remote_encrypted_zfs_storage_server_with\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lobste.rs/s/lf069i/nix_template_make_creating_nix\" rel=\"ugc\"\u003ehttps://lobste.rs/s/lf069i/nix_template_make_creating_nix\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThese are just from the last 10 days. It is clear that there is an interest in \u003ccode\u003enix\u003c/code\u003e. lobste.rs has tags for things that barely get used (like \u003ccode\u003eelm\u003c/code\u003e or \u003ccode\u003edragonflybsd\u003c/code\u003e), so I think we have passed the threshold for adding a new tag for \u003ccode\u003enix\u003c/code\u003e\u003c/p\u003e\n","description_plain":"I would like to propose a new tag `nix` that covers the package manager as well as the distribution NixOS. Lately we have had a steady stream of popular articles about `nix`. These were tagged with `linux` or the even broader `unix` tag. To be able to filter them out, it would be nice to have that tag. \r\n\r\nRecent stories that are about nix:\r\n\r\n- https://lobste.rs/s/npofl0/my_vr_hell_on_nixos\r\n- https://lobste.rs/s/ypwgwp/tvix_we_are_rewriting_nix\r\n- https://lobste.rs/s/tppcqo/nixos_21_11_released\r\n- https://lobste.rs/s/65xymz/will_nix_overtake_docker\r\n- https://lobste.rs/s/mu95rt/my_homelab_nas_on_nixos\r\n- https://lobste.rs/s/xi9jcs/nixos_headless_home_assistant_vm\r\n- https://lobste.rs/s/weg73v/remote_encrypted_zfs_storage_server_with\r\n- https://lobste.rs/s/lf069i/nix_template_make_creating_nix\r\n\r\nThese are just from the last 10 days. It is clear that there is an interest in `nix`. lobste.rs has tags for things that barely get used (like `elm` or `dragonflybsd`), so I think we have passed the threshold for adding a new tag for `nix`","comments_url":"https://lobste.rs/s/bv2nje/tag_suggestion_nix","submitter_user":{"username":"fs111","created_at":"2017-01-04T07:51:28.000-06:00","is_admin":false,"about":"","is_moderator":false,"karma":4891,"avatar_url":"/avatars/fs111-100.png","invited_by_user":"drdoom","github_username":"fs111","twitter_username":"fs111"},"tags":["meta","nix"]},{"short_id":"0buyl4","short_id_url":"https://lobste.rs/s/0buyl4","created_at":"2021-10-19T10:39:32.000-05:00","title":"Proper use of the author checkbox","url":"","score":15,"flags":0,"comment_count":10,"description":"\u003cp\u003eI frequently run against an issue when submitting stories from Ferrous Systems here: I think there’s an ambiguity around the use of the author field and I have the gut feeling there’s different information needs here.\u003c/p\u003e\n\u003cp\u003eAs an example, this story is written by Jorge, not me: \u003ca href=\"https://lobste.rs/s/f2uvgf/structuring_testing_debugging\" rel=\"ugc\"\u003ehttps://lobste.rs/s/f2uvgf/structuring_testing_debugging\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eStrictly speaking, I am not the author - so if the author field is \u003cem\u003ejust\u003c/em\u003e there to mark the author in the replies, I should not check it.\u003c/p\u003e\n\u003cp\u003eBut I am a managing employee/owner of that company. So I’d like to disclose that - even though I think the content is relevant for this platform and interesting - I have an interest in it being posted here. I am not ashamed of doing so, \u003cstrong\u003ebut\u003c/strong\u003e it feels bad to not to be open about this - it enables readers to give feedback on that front. This is crucial, as I e.g. do not just submit every post here.\u003c/p\u003e\n\u003cp\u003eThe submission guidelines are no help here and probably be extended.\u003c/p\u003e\n\u003cp\u003eI see multiple possible solutions here:\u003c/p\u003e\n\u003col\u003e\n\u003cli\u003eThis is fine and needs no action and the author field should not be checked\u003c/li\u003e\n\u003cli\u003eThis is fine and needs no action and the author field should be checked\u003c/li\u003e\n\u003cli\u003eThis could be disclosed in the text field becomes part of the submission guidelines\u003c/li\u003e\n\u003cli\u003eAdding an additional field that gives precisely that information to people\u003c/li\u003e\n\u003cli\u003e? Maybe others\u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003eI know that there’s people who’d prefer if this case just wouldn’t exist :). Yet, I believe disclosure is the best way to deal with this situation - it enables us to actively work against e.g. people who use lobste.rs as a content spreader only.\u003c/p\u003e\n\u003cp\u003eFWIW, I’m willing to send patches if e.g. the moderators here have a favourite.\u003c/p\u003e\n\u003cp\u003e[x] I am the author of this text ;)\u003c/p\u003e\n","description_plain":"I frequently run against an issue when submitting stories from Ferrous Systems here: I think there's an ambiguity around the use of the author field and I have the gut feeling there's different information needs here.\r\n\r\nAs an example, this story is written by Jorge, not me: https://lobste.rs/s/f2uvgf/structuring_testing_debugging\r\n\r\nStrictly speaking, I am not the author - so if the author field is _just_ there to mark the author in the replies, I should not check it. \r\n\r\nBut I am a managing employee/owner of that company. So I'd like to disclose that - even though I think the content is relevant for this platform and interesting - I have an interest in it being posted here. I am not ashamed of doing so, **but** it feels bad to not to be open about this - it enables readers to give feedback on that front. This is crucial, as I e.g. do not just submit every post here.\r\n\r\nThe submission guidelines are no help here and probably be extended.\r\n\r\nI see multiple possible solutions here:\r\n1) This is fine and needs no action and the author field should not be checked\r\n2) This is fine and needs no action and the author field should be checked\r\n3) This could be disclosed in the text field becomes part of the submission guidelines\r\n4) Adding an additional field that gives precisely that information to people\r\n5) ? Maybe others\r\n\r\nI know that there's people who'd prefer if this case just wouldn't exist :). Yet, I believe disclosure is the best way to deal with this situation - it enables us to actively work against e.g. people who use lobste.rs as a content spreader only.\r\n\r\nFWIW, I'm willing to send patches if e.g. the moderators here have a favourite.\r\n\r\n[x] I am the author of this text ;)","comments_url":"https://lobste.rs/s/0buyl4/proper_use_author_checkbox","submitter_user":{"username":"skade","created_at":"2014-04-17T11:13:09.000-05:00","is_admin":false,"about":"","is_moderator":false,"karma":9603,"avatar_url":"/avatars/skade-100.png","invited_by_user":"vesan"},"tags":["meta"]},{"short_id":"3ebwng","short_id_url":"https://lobste.rs/s/3ebwng","created_at":"2021-10-06T15:25:08.000-05:00","title":"I really don't like the lobste.rs dark theme. Please create a way to disable","url":"","score":23,"flags":2,"comment_count":11,"description":"\u003cp\u003eMod edit: No text, just the feature request in the title.\u003c/p\u003e\n","description_plain":"Mod edit: No text, just the feature request in the title.","comments_url":"https://lobste.rs/s/3ebwng/i_really_don_t_like_lobste_rs_dark_theme","submitter_user":{"username":"lynndylanhurley","created_at":"2017-07-21T12:02:26.000-05:00","is_admin":false,"about":"","is_moderator":false,"karma":37,"avatar_url":"/avatars/lynndylanhurley-100.png","invited_by_user":"stefantalpalaru"},"tags":["meta"]}] \ No newline at end of file diff --git a/api/src/test/resources/programming_rust.json b/api/src/test/resources/programming_rust.json deleted file mode 100644 index a8838ccf..00000000 --- a/api/src/test/resources/programming_rust.json +++ /dev/null @@ -1 +0,0 @@ -[{"short_id":"dikmbr","short_id_url":"https://lobste.rs/s/dikmbr","created_at":"2023-02-10T08:17:20.000-06:00","title":"What are you doing this weekend?","url":"","score":10,"flags":0,"comment_count":18,"description":"\u003cp\u003eFeel free to tell what you plan on doing this weekend and even ask for help or feedback.\u003c/p\u003e\n\u003cp\u003ePlease keep in mind it’s more than OK to do nothing at all too!\u003c/p\u003e\n","description_plain":"Feel free to tell what you plan on doing this weekend and even ask for help or feedback.\r\n\r\nPlease keep in mind it’s more than OK to do nothing at all too!","comments_url":"https://lobste.rs/s/dikmbr/what_are_you_doing_this_weekend","submitter_user":{"username":"caius","created_at":"2014-05-13T06:58:30.000-05:00","is_admin":false,"about":"Compulsive Geek, Ale Connoisseur, Occasionally Responsible Adult.","is_moderator":false,"karma":8573,"avatar_url":"/avatars/caius-100.png","invited_by_user":"lauris","github_username":"caius","twitter_username":"Caius"},"tags":["ask","programming"]},{"short_id":"tnvk82","short_id_url":"https://lobste.rs/s/tnvk82","created_at":"2023-02-10T03:05:09.000-06:00","title":"orlp/glidesort: A Rust implementation of Glidesort, my stable adaptive quicksort/mergesort hybrid sorting algorithm","url":"https://github.com/orlp/glidesort/tree/a9bac7f27179d7d2d97ab6fdebbd42dd6477de3d","score":5,"flags":0,"comment_count":2,"description":"","description_plain":"","comments_url":"https://lobste.rs/s/tnvk82/orlp_glidesort_rust_implementation","submitter_user":{"username":"5d22b","created_at":"2022-07-28T00:02:54.000-05:00","is_admin":false,"about":"","is_moderator":false,"karma":155,"avatar_url":"/avatars/5d22b-100.png","invited_by_user":"est31"},"tags":["compsci","rust"]},{"short_id":"70sorb","short_id_url":"https://lobste.rs/s/70sorb","created_at":"2023-02-09T17:30:50.000-06:00","title":"Build something productive in less than 100 Lines of Code","url":"https://github.com/josharsh/100LinesOfCode","score":3,"flags":0,"comment_count":3,"description":"","description_plain":"","comments_url":"https://lobste.rs/s/70sorb/build_something_productive_less_than_100","submitter_user":{"username":"hwayne","created_at":"2016-12-01T13:09:45.000-06:00","is_admin":false,"about":"I'm a programmer in the Chicago area. I like writing about weird programming techniques. Outside of programming I'm an avid juggler and chocolatier.","is_moderator":false,"karma":25587,"avatar_url":"/avatars/hwayne-100.png","invited_by_user":"flyingfisch","github_username":"hwayne","twitter_username":"Hillelogram"},"tags":["programming"]},{"short_id":"g3rhqr","short_id_url":"https://lobste.rs/s/g3rhqr","created_at":"2023-02-09T13:09:42.000-06:00","title":"Create bilingual books yourself","url":"https://maximullaris.com/bilingual_books.html","score":5,"flags":5,"comment_count":5,"description":"","description_plain":"","comments_url":"https://lobste.rs/s/g3rhqr/create_bilingual_books_yourself","submitter_user":{"username":"xonix","created_at":"2021-09-21T05:23:26.000-05:00","is_admin":false,"about":"","is_moderator":false,"karma":88,"avatar_url":"/avatars/xonix-100.png","invited_by_user":"benhoyt","github_username":"xonixx"},"tags":["education","programming"]},{"short_id":"knrjzs","short_id_url":"https://lobste.rs/s/knrjzs","created_at":"2023-02-08T11:37:06.000-06:00","title":"Why does 0.1 + 0.2 = 0.30000000000000004?","url":"https://jvns.ca/blog/2023/02/08/why-does-0-1-plus-0-2-equal-0-30000000000000004/","score":33,"flags":0,"comment_count":28,"description":"","description_plain":"","comments_url":"https://lobste.rs/s/knrjzs/why_does_0_1_0_2_0_30000000000000004","submitter_user":{"username":"eBPF","created_at":"2023-01-25T09:58:16.000-06:00","is_admin":false,"about":"[ersei.net](https://ersei.net)","is_moderator":false,"karma":82,"avatar_url":"/avatars/eBPF-100.png","invited_by_user":"oats"},"tags":["math","programming"]},{"short_id":"sufwry","short_id_url":"https://lobste.rs/s/sufwry","created_at":"2023-02-08T07:22:58.000-06:00","title":"Rustler - Using Rust crates in Elixir","url":"https://mainmatter.com/blog/2023/02/01/using-rust-crates-in-elixir/","score":16,"flags":0,"comment_count":6,"description":"","description_plain":"","comments_url":"https://lobste.rs/s/sufwry/rustler_using_rust_crates_elixir","submitter_user":{"username":"yonkeltron","created_at":"2018-07-09T19:03:57.000-05:00","is_admin":false,"about":"https://twitter.com/yonkeltron","is_moderator":false,"karma":2662,"avatar_url":"/avatars/yonkeltron-100.png","invited_by_user":"rocx","github_username":"yonkeltron","twitter_username":"yonkeltron"},"tags":["elixir","rust"]},{"short_id":"t7idnt","short_id_url":"https://lobste.rs/s/t7idnt","created_at":"2023-02-08T02:35:59.000-06:00","title":"Sub-single-instruction Peano to machine integer conversion","url":"https://ocamlpro.com/blog/2023_01_23_Pea_No_Op/","score":12,"flags":0,"comment_count":1,"description":"","description_plain":"","comments_url":"https://lobste.rs/s/t7idnt/sub_single_instruction_peano_machine","submitter_user":{"username":"krtab","created_at":"2019-05-13T03:44:20.000-05:00","is_admin":false,"about":"","is_moderator":false,"karma":280,"avatar_url":"/avatars/krtab-100.png","invited_by_user":"goodger"},"tags":["rust"]},{"short_id":"htoqsj","short_id_url":"https://lobste.rs/s/htoqsj","created_at":"2023-02-07T21:04:49.000-06:00","title":"Rustproofing Linux (Part 1/4 Leaking Addresses)","url":"https://research.nccgroup.com/2023/02/06/rustproofing-linux-part-1-4-leaking-addresses/","score":10,"flags":0,"comment_count":0,"description":"","description_plain":"","comments_url":"https://lobste.rs/s/htoqsj/rustproofing_linux_part_1_4_leaking","submitter_user":{"username":"fro","created_at":"2016-04-13T15:27:31.000-05:00","is_admin":false,"about":"","is_moderator":false,"karma":1675,"avatar_url":"/avatars/fro-100.png","invited_by_user":"xero"},"tags":["linux","rust","security"]},{"short_id":"ktyp2q","short_id_url":"https://lobste.rs/s/ktyp2q","created_at":"2023-02-07T19:17:01.000-06:00","title":"Improving incremental test times in Rust","url":"https://blog.waleedkhan.name/rust-incremental-test-times/","score":7,"flags":0,"comment_count":7,"description":"","description_plain":"","comments_url":"https://lobste.rs/s/ktyp2q/improving_incremental_test_times_rust","submitter_user":{"username":"arxanas","created_at":"2021-10-14T16:24:40.000-05:00","is_admin":false,"about":"I'm a software engineer who works on scalable developer tooling.","is_moderator":false,"karma":190,"avatar_url":"/avatars/arxanas-100.png","invited_by_user":"355E3B","github_username":"arxanas","twitter_username":"arxanas"},"tags":["rust","testing"]},{"short_id":"rvnd9e","short_id_url":"https://lobste.rs/s/rvnd9e","created_at":"2023-02-07T18:39:02.000-06:00","title":"Aurae: Distributed Runtime - Fosdem 2023","url":"https://m.youtube.com/watch?v=5a277u4j6fU","score":10,"flags":0,"comment_count":1,"description":"","description_plain":"","comments_url":"https://lobste.rs/s/rvnd9e/aurae_distributed_runtime_fosdem_2023","submitter_user":{"username":"kellogh","created_at":"2014-01-08T17:10:46.000-06:00","is_admin":false,"about":"","is_moderator":false,"karma":2145,"avatar_url":"/avatars/kellogh-100.png","invited_by_user":"qbit","github_username":"tkellogg","twitter_username":"kellogh"},"tags":["distributed","rust","video"]},{"short_id":"aqnjd5","short_id_url":"https://lobste.rs/s/aqnjd5","created_at":"2023-02-07T15:07:06.000-06:00","title":"Sniffnet: comfortably monitor your network traffic - New Release v1.1.0","url":"https://github.com/GyulyVGC/sniffnet/releases/tag/v1.1.0","score":6,"flags":0,"comment_count":0,"description":"","description_plain":"","comments_url":"https://lobste.rs/s/aqnjd5/sniffnet_comfortably_monitor_your","submitter_user":{"username":"GyulyVGC","created_at":"2022-11-23T12:23:31.000-06:00","is_admin":false,"about":"Computer engineering student from Italy","is_moderator":false,"karma":13,"avatar_url":"/avatars/GyulyVGC-100.png","invited_by_user":"xcombelle"},"tags":["networking","release","rust"]},{"short_id":"t4ssxd","short_id_url":"https://lobste.rs/s/t4ssxd","created_at":"2023-02-07T14:07:00.000-06:00","title":"Speeding up Rust semver-checking by over 2000x","url":"https://predr.ag/blog/speeding-up-rust-semver-checking-by-over-2000x/","score":32,"flags":0,"comment_count":12,"description":"","description_plain":"","comments_url":"https://lobste.rs/s/t4ssxd/speeding_up_rust_semver_checking_by_over","submitter_user":{"username":"predrag","created_at":"2022-08-30T12:00:46.000-05:00","is_admin":false,"about":"Principal Eng @ Kensho\r\n\r\nTwitter: https://twitter.com/PredragGruevski\r\n\r\nBlog: https://predr.ag/blog/\r\n\r\nTalks: https://predr.ag/talks/\r\n\r\nCurrent most exciting projects:\r\n- https://github.com/obi1kenobi/trustfall\r\n- https://github.com/obi1kenobi/cargo-semver-check","is_moderator":false,"karma":164,"avatar_url":"/avatars/predrag-100.png","invited_by_user":"hwayne","github_username":"obi1kenobi"},"tags":["databases","rust"]},{"short_id":"u2rvqe","short_id_url":"https://lobste.rs/s/u2rvqe","created_at":"2023-02-07T12:46:20.000-06:00","title":"What's the difference between references and pointers in Rust?","url":"https://ntietz.com/blog/rust-references-vs-pointers/","score":8,"flags":0,"comment_count":7,"description":"","description_plain":"","comments_url":"https://lobste.rs/s/u2rvqe/what_s_difference_between_references","submitter_user":{"username":"raymii","created_at":"2013-11-20T11:58:43.000-06:00","is_admin":false,"about":"🐋\r\nhttps://raymii.org","is_moderator":false,"karma":19571,"avatar_url":"/avatars/raymii-100.png","invited_by_user":"journeysquid"},"tags":["rust"]},{"short_id":"vyb9rm","short_id_url":"https://lobste.rs/s/vyb9rm","created_at":"2023-02-07T08:53:40.000-06:00","title":"Stack graphs: Name resolution at scale","url":"https://dcreager.net/publications/016-stack-graphs/stack-graphs.pdf","score":9,"flags":0,"comment_count":8,"description":"\u003cp\u003eA new academic paper describing \u003cem\u003estack graphs\u003c/em\u003e, which is the framework powering Precise Code Navigation at GitHub.\u003c/p\u003e\n","description_plain":"A new academic paper describing _stack graphs_, which is the framework powering Precise Code Navigation at GitHub.","comments_url":"https://lobste.rs/s/vyb9rm/stack_graphs_name_resolution_at_scale","submitter_user":{"username":"dcreager","created_at":"2021-12-10T11:19:15.000-06:00","is_admin":false,"about":"Managing the Semantic Code team at GitHub.","is_moderator":false,"karma":19,"avatar_url":"/avatars/dcreager-100.png","invited_by_user":"hwayne","github_username":"dcreager","twitter_username":"dcreager"},"tags":["compsci","pdf","programming"]},{"short_id":"2hiuo1","short_id_url":"https://lobste.rs/s/2hiuo1","created_at":"2023-02-06T20:43:32.000-06:00","title":"It’s imperative","url":"http://blog.syncpup.com/posts/its-imperative.html","score":2,"flags":1,"comment_count":0,"description":"","description_plain":"","comments_url":"https://lobste.rs/s/2hiuo1/it_s_imperative","submitter_user":{"username":"nato","created_at":"2016-08-18T19:48:12.000-05:00","is_admin":false,"about":"","is_moderator":false,"karma":775,"avatar_url":"/avatars/nato-100.png","invited_by_user":"pushcx"},"tags":["programming"]},{"short_id":"jhyhos","short_id_url":"https://lobste.rs/s/jhyhos","created_at":"2023-02-06T19:28:10.000-06:00","title":"Rust Magazine","url":"https://rustmagazine.org/","score":3,"flags":0,"comment_count":0,"description":"","description_plain":"","comments_url":"https://lobste.rs/s/jhyhos/rust_magazine","submitter_user":{"username":"khaos","created_at":"2022-11-16T08:20:26.000-06:00","is_admin":false,"about":"","is_moderator":false,"karma":20,"avatar_url":"/avatars/khaos-100.png","invited_by_user":"sunng"},"tags":["rust"]},{"short_id":"vc8tmx","short_id_url":"https://lobste.rs/s/vc8tmx","created_at":"2023-02-06T14:53:39.000-06:00","title":"I wish Asciidoc was more popular","url":"https://pdx.su/blog/2023-02-05-asciidoc-and-markdown/","score":28,"flags":0,"comment_count":33,"description":"","description_plain":"","comments_url":"https://lobste.rs/s/vc8tmx/i_wish_asciidoc_was_more_popular","submitter_user":{"username":"matklad","created_at":"2019-07-02T07:23:10.000-05:00","is_admin":false,"about":"Working on IDE support for the Rust language.\r\n\r\nhttps://github.com/matklad","is_moderator":false,"karma":4715,"avatar_url":"/avatars/matklad-100.png","invited_by_user":"skade","github_username":"matklad"},"tags":["programming"]},{"short_id":"rpchmh","short_id_url":"https://lobste.rs/s/rpchmh","created_at":"2023-02-06T09:22:11.000-06:00","title":"It is becoming difficult for me to be productive in Python","url":"https://avi.im/blag/2023/refactoring-python/","score":55,"flags":0,"comment_count":88,"description":"","description_plain":"","comments_url":"https://lobste.rs/s/rpchmh/it_is_becoming_difficult_for_me_be","submitter_user":{"username":"av","created_at":"2015-03-22T08:27:17.000-05:00","is_admin":false,"about":"Python Enthusiast.","is_moderator":false,"karma":10573,"avatar_url":"/avatars/av-100.png","invited_by_user":"kshn"},"tags":["programming","python"]},{"short_id":"rw1osk","short_id_url":"https://lobste.rs/s/rw1osk","created_at":"2023-02-06T05:26:13.000-06:00","title":"What are you doing this week?","url":"","score":6,"flags":0,"comment_count":11,"description":"\u003cp\u003eWhat are you doing this week? Feel free to share!\u003c/p\u003e\n\u003cp\u003eKeep in mind it’s OK to do nothing at all, too.\u003c/p\u003e\n","description_plain":"What are you doing this week? Feel free to share!\r\n\r\nKeep in mind it’s OK to do nothing at all, too.","comments_url":"https://lobste.rs/s/rw1osk/what_are_you_doing_this_week","submitter_user":{"username":"caius","created_at":"2014-05-13T06:58:30.000-05:00","is_admin":false,"about":"Compulsive Geek, Ale Connoisseur, Occasionally Responsible Adult.","is_moderator":false,"karma":8573,"avatar_url":"/avatars/caius-100.png","invited_by_user":"lauris","github_username":"caius","twitter_username":"Caius"},"tags":["ask","programming"]},{"short_id":"swkp6b","short_id_url":"https://lobste.rs/s/swkp6b","created_at":"2023-02-06T01:29:50.000-06:00","title":"Binary to text encoding -- state of the art and missed opportunities","url":"https://notes.volution.ro/v1/2023/02/notes/0a9aaa3a/","score":6,"flags":0,"comment_count":4,"description":"","description_plain":"","comments_url":"https://lobste.rs/s/swkp6b/binary_text_encoding_state_art_missed","submitter_user":{"username":"ciprian_craciun","created_at":"2022-02-14T13:47:43.000-06:00","is_admin":false,"about":"IT enthusiast, from programming to operating systems, from networking to cryptography, from cloud to hardware, from Erlang to Java.","is_moderator":false,"karma":685,"avatar_url":"/avatars/ciprian_craciun-100.png","invited_by_user":"syn-ack"},"tags":["programming"]},{"short_id":"ocadne","short_id_url":"https://lobste.rs/s/ocadne","created_at":"2023-02-05T21:16:25.000-06:00","title":"Announcing Masonry 0.1, and my vision for Rust UI","url":"https://poignardazur.github.io//2023/02/02/masonry-01-and-my-vision-for-rust-ui/","score":29,"flags":0,"comment_count":1,"description":"","description_plain":"","comments_url":"https://lobste.rs/s/ocadne/announcing_masonry_0_1_my_vision_for_rust","submitter_user":{"username":"bglw","created_at":"2022-07-20T19:40:39.000-05:00","is_admin":false,"about":"Working in the world of static web development, with a particular interest in editor workflows, developer experience, and tools made in Rust. ","is_moderator":false,"karma":64,"avatar_url":"/avatars/bglw-100.png","invited_by_user":"pushcx","github_username":"bglw"},"tags":["rust"]},{"short_id":"jexsmk","short_id_url":"https://lobste.rs/s/jexsmk","created_at":"2023-02-05T16:18:52.000-06:00","title":"smol_world: Compact garbage-collected heap and JSON-like object model","url":"https://github.com/snej/smol_world","score":22,"flags":0,"comment_count":16,"description":"","description_plain":"","comments_url":"https://lobste.rs/s/jexsmk/smol_world_compact_garbage_collected","submitter_user":{"username":"snej","created_at":"2020-01-26T19:05:30.000-06:00","is_admin":false,"about":"Mobile Architect at Couchbase. Apple veteran, 1991-2007 (iChat, Safari, Java, OpenDoc, AppleScript.)\r\nBragging rights: I came up with the speech bubbles that most chat GUIs use nowadays.\r\nIn my spare time I play guitar and buy synthesizers.","is_moderator":false,"karma":7677,"avatar_url":"/avatars/snej-100.png","invited_by_user":"bbrks","github_username":"snej"},"tags":["c++","programming","show"]},{"short_id":"7lpwis","short_id_url":"https://lobste.rs/s/7lpwis","created_at":"2023-02-04T16:21:40.000-06:00","title":"Lisa Source Code: Understanding Clascal","url":"http://eschatologist.net/blog/?p=314","score":8,"flags":0,"comment_count":2,"description":"","description_plain":"","comments_url":"https://lobste.rs/s/7lpwis/lisa_source_code_understanding_clascal","submitter_user":{"username":"calvin","created_at":"2014-07-01T06:47:13.000-05:00","is_admin":false,"about":"Soon we will all have special names... names designed to make the cathode ray tube resonate.\r\n\r\nDavid Chisnall stan account.","is_moderator":false,"karma":95352,"avatar_url":"/avatars/calvin-100.png","invited_by_user":"nbyouri","github_username":"NattyNarwhal"},"tags":["historical","programming"]},{"short_id":"wn58fj","short_id_url":"https://lobste.rs/s/wn58fj","created_at":"2023-02-03T23:24:01.000-06:00","title":"Servo 2023 Roadmap","url":"https://servo.org/blog/2023/02/03/servo-2023-roadmap/","score":33,"flags":0,"comment_count":4,"description":"","description_plain":"","comments_url":"https://lobste.rs/s/wn58fj/servo_2023_roadmap","submitter_user":{"username":"jado","created_at":"2019-08-06T03:14:15.000-05:00","is_admin":false,"about":"Software Engineer, CompSci Grad Student (researching ML)\r\n\r\nloves plt, compilers, ml, rust\r\n\r\n[Website](https://jadon.io) | [GitHub](https://github.com/phase) | [LinkedIn](https://www.linkedin.com/in/jado/)","is_moderator":false,"karma":1191,"avatar_url":"/avatars/jado-100.png","invited_by_user":"BruceM","github_username":"phase"},"tags":["browsers","rust"]},{"short_id":"wk4i9r","short_id_url":"https://lobste.rs/s/wk4i9r","created_at":"2023-02-03T06:55:09.000-06:00","title":"Scryer Prolog","url":"https://www.scryer.pl","score":16,"flags":0,"comment_count":10,"description":"","description_plain":"","comments_url":"https://lobste.rs/s/wk4i9r/scryer_prolog","submitter_user":{"username":"aarroyoc","created_at":"2020-01-25T16:27:21.000-06:00","is_admin":false,"about":"Illuminati developer. I talk mostly about Prolog, Mercury, Logtalk and logic programming in general","is_moderator":false,"karma":618,"avatar_url":"/avatars/aarroyoc-100.png","invited_by_user":"zxtx","github_username":"aarroyoc","twitter_username":"aarroyoca"},"tags":["programming"]}] \ No newline at end of file diff --git a/model/src/main/kotlin/dev/msfjarvis/claw/model/Tags.kt b/model/src/main/kotlin/dev/msfjarvis/claw/model/Tags.kt deleted file mode 100644 index 922821f4..00000000 --- a/model/src/main/kotlin/dev/msfjarvis/claw/model/Tags.kt +++ /dev/null @@ -1,27 +0,0 @@ -/* - * Copyright © 2023 Harsh Shandilya. - * Use of this source code is governed by an MIT-style - * license that can be found in the LICENSE file or at - * https://opensource.org/licenses/MIT. - */ -package dev.msfjarvis.claw.model - -class Tags { - private val tags = arrayListOf() - - fun addTag(tag: String) { - tags.add(tag) - } - - fun removeTag(tag: String) { - tags.remove(tag) - } - - operator fun contains(tag: String): Boolean { - return tag in tags - } - - override fun toString(): String { - return tags.joinToString(",") - } -}