[00:14:53] Ah, our Commons guy šŸ™‚ [00:15:06] I'm on my way to bed thanks šŸ˜„ [00:16:01] šŸ‘ [07:11:46] [1/2] autism miraheze (someone sugested miraheze celebrate autism week) [07:11:46] [2/2] https://cdn.discordapp.com/attachments/615786602454581249/1249259631486701578/image.png?ex=6666a732&is=666555b2&hm=0ec9fb7e0b98a4a95f8d4b38f6ebeddbddc25f6e44afdfec10dc09cae5a82629& [07:19:13] this is amazing šŸ˜„ [08:56:47] Let me continue in this channel [08:58:34] So just 10 days ago when I was requesting a bank for international remittance, being asked to produce materials that "shows up purposes of your foreign exchange", I sent them with fake documents, and I criticized the Chinese dictatorship on the invoice [09:00:47] [1/2] So this is the invoice picture I sent to them (original is complete copy) [09:00:47] [2/2] https://cdn.discordapp.com/attachments/615786602454581249/1249287064856559636/image.png?ex=6666c0be&is=66656f3e&hm=0185ab9366c2a38b8eaff62b852d3041a9170492f97dd98889a0cc8131aaffc1& [09:01:09] https://cdn.discordapp.com/attachments/615786602454581249/1249287134653714432/image.png?ex=6666c0cf&is=66656f4f&hm=4e73f51a23246e094bd743d9fcc6d9deb750d1f439fdf84aced638a2b00afb84& [09:01:23] And this is the context I criticized the government [09:01:33] https://cdn.discordapp.com/attachments/615786602454581249/1249287259749089280/image.png?ex=6666c0ed&is=66656f6d&hm=a1700cb6015b1fe75b6b6aab2a60aa577daf3daeccf52c0ed6a2b7f783aecaa3& [09:04:21] Those foolish people did not noticed any signals of unusual, but just proceeded with my transaction after confirming this is not fraudulent activityšŸ¤£ [09:05:15] With stating "upon moderation, the remittance is compliant" on the confirmation documentšŸ¤£ [09:05:23] I applaud attempts to enact change in crappy places but I do hope you pick your battles carefully [09:05:35] it will do nobody any good for you to be persecuted and disabled over some dumb form [09:05:51] I have taken careful evaluation which lead to this decision [09:06:04] I wish you success then [09:06:11] Thank you [09:06:31] Visa interview is under appointment I hope I will be able to evacuate soon [12:32:03] @suzuneu honest question why do you use rust for things like Waki bot [12:32:15] because i love rust [12:32:57] Any specific reason(Iā€™m a heavy pythonista somewhat considering trying it for something like a cli to process large files) [12:33:05] Possibly more from that [12:33:41] Rust is memory-safe and statically typed for safe coding [12:34:39] (I mostly understand what that means) [12:34:49] I learned Rust because I used to make a Discord Bot in TypeScript, but it ate a lot of memory, so I decided to move on to something else [12:35:08] The majority of my rust knowledge comes from watching No Boilerplate [12:35:59] I learned rust in The Rust Book [12:36:39] In fact, once you get used to it, it's a breeze [12:37:28] Type and JavaScript is something Iā€™ll probably have to learn at some point in my life [12:38:27] (WRAnGLer and other MW gadgets are developed by TypeScript because by other language is impossible) [12:38:44] TypeScript is also good [12:39:39] Iā€™m going to start a web dev project using python for the backend since thatā€™s what I and my colleagues know [12:39:56] Plus Django comes with enough batteries included I may keep my sanity [12:40:25] With OOUI or in general [12:41:11] I found an OOUI TypeScript typedef somewhere, so I used it [12:41:47] What would using it in vanilla JS look like [12:42:25] I think it can be used, but VSCode will not complete it because there is no type definition [12:43:18] https://tenor.com/view/suicide-kms-gif-4481206 [12:43:21] No autocomplete [12:44:04] How much overhead does type script add [12:44:39] If the strict option is enabled, all function definitions must have a type definition [12:44:55] The others are rather reasoned and complementary [12:46:41] The separation of files(why did that autocomplete to girls) is just normal sense not a TS thing ja? [12:47:35] yea, it is ugly to cram code into one file, even in JavaScript [12:48:46] I learned that lesson with one of the first serious projects I did in coding a while ago [12:50:41] how to hunted down by the MSS speedrun [12:50:48] Although mine capped somewhere around 1000 lines [12:54:44] Considering you run bots the size of MIQ makes sense, so learning rust was a necessity of circumstance and you still use it because you like it and from what I hear itā€™s far less error prone ja? [12:56:32] [1/2] As a matter of fact, how error-prone a programmer is depends on how lazy they are [12:56:33] [2/2] If you make error handling a hassle and use a lot of unwrap() methods that ignore and expand any errors you will get runtime errors (and this is rather true for me lol) [12:57:07] Memory-related errors are unlikely to occur [12:58:51] No wonder my code is garbage [13:07:49] What was the learning curve [13:08:48] I played hooky in class and put together Rust so I could learn it in about a month [13:09:21] Hm? [13:17:07] Anyways thanks this has been insightful:) [13:17:51] Iā€™ll probably dip my toes if I have a project where I want to make it run quickly or if I want to make a CLI since I donā€™t know any other compiled languages [13:18:03] Was considering go in that regard but rust seems more versatile [13:20:19] Changes are Iā€™ll likely ask the only other mediawiki person I know who does rust(Legoktm, made mwbot-rs I believe) just to get varying view points [14:00:01] You use mwbot-rs for Waki bot righrV [14:27:36] Yes [14:27:53] https://github.com/waki285/Miraheze-Waki285-Bot [14:28:01] (note that my code is shitty) [14:29:23] One of the files had a entire Egyptian sideways pyramid [14:29:25] Multiple [14:29:28] Was funny to look at [14:30:04] Hey if you feel bad about your code let me know Iā€™ll learn rust and share my code with you [14:30:07] Youā€™ll feel much better [14:31:48] src/tasks/meta/list_extensions.rs has a bog pyramid lol [14:32:50] Commonality in functions would make it a little better [14:34:40] Thatā€™s the one [14:34:56] A little? [14:36:36] [1/2] ChatGPT refactored my pyramid [14:36:37] [2/2] https://cdn.discordapp.com/attachments/615786602454581249/1249371576919658578/Screenshot_2024-06-09-23-35-59-592_com.android.chrome-edit.jpg?ex=66670f74&is=6665bdf4&hm=574a6acde795859a23c26839dbe53990de9a98535c864051d79261ba6bb112d6& [14:37:18] ā€œRefactoredā€ aye? [14:39:37] How does this even work lmao. The rust syntax makes it hard to understand whatā€™s being called [14:43:21] [1/4] This uses a lot of if let syntax. This is when a variable is in a specified "state" (I don't know what to call this), it is extracted and made into a variable. [14:43:22] [2/4] For example, Rust has a utility type called Result. This Result represents the result of an operation that may fail, and can be in Ok or Err state. [14:43:22] [3/4] if let Ok(result) = variable {} [14:43:22] [4/4] then assign a variable inside variable to result if it succeeds [14:44:28] [1/6] ```rs [14:44:28] [2/6] let miraheze = reqwest:get("https://miraheze.org").await; // this possibly fail [14:44:28] [3/6] if let Ok(miraheze_success) = miraheze { [14:44:28] [4/6] dbg!(miraheze_success); [14:44:29] [5/6] } [14:44:29] [6/6] ``` [14:45:04] So basically saying the a variable to the value of this result, assuming it didnā€™t explode [14:45:18] yep [14:45:57] Hm [14:46:04] If it is Err, it is safe because it is not executed (because this is if) (on the contrary, unwrap is dangerous) [14:47:11] So the line for if let Some(k) = extract_string_literal(key) sets the variable k to the result of some passed through extract assuming it donā€™t error? Is that right? [14:48:25] If the value of key is a variable that is not known to be a string, and extract_string_literal is an Option type, then yes. [14:49:12] Hm? [14:49:41] Wait I missed that thereā€™s a key variable in the loop already [14:50:15] Hm, where does the `Some()` come from( [14:51:53] Some is a Rust built-in Option type, with Some and None. (Unlike Result, this refers to a time when it is unknown whether or not data exists) [14:52:58] Oh. So it sets k to the maybe-result of extract_string_literal(key [14:54:41] yes [14:56:40] [1/8] There is also a match syntax [14:56:41] [2/8] ```rs [14:56:41] [3/8] let unknown_var = Some("test"); [14:56:41] [4/8] match (unknown_var) => { [14:56:41] [5/8] Some(content) => println!("The variable is {}", content), [14:56:42] [6/8] None => println("no content") [14:56:42] [7/8] } [14:56:42] [8/8] ``` [14:57:26] Interesting [15:37:47] What did you mean? [15:50:50] mss is like chinese version of cia [15:51:47] China do having their investigation departments, spans across various entities [15:53:21] For example Ministry of Public Security and Ministry of National Security are in responsibilities of collecting data the country needs, but MNS is dedicated to investigations in relation of serve national security violations [15:53:38] While MPS focus on prosecuting people more [16:14:09] ok [18:04:32] Yes [18:04:43] They're not so intelligent as you may have expected [18:55:32] @brandon.wm https://discord.com/channels/407504499280707585/903395171981459507/1249435274895691888 check the F1 Calendar [18:55:52] ......am I really planning around F1 races now? [18:56:05] Yes [18:56:21] If you wanna have me and @rodejong show [18:56:33] I'd plan it around qualifying too [18:57:08] June 19 fine? [18:57:09] Friday, Saturda and Sunday for me are off limits if F1 is on [18:57:35] https://www.formula1.com/en/racing/2024.html [18:57:44] ^ [18:57:51] That's a Wednesday so yes [18:57:57] But do it after 4 UK time [18:59:06] Best day for me is Wednesday or Thursday [19:01:23] We may just do a when2meet [19:01:38] prioritizing active talkers [19:16:12] Hi [19:16:32] [1/2] This might sound stupid but uh [19:16:32] [2/2] How do i check an image license:moonch: [19:21:28] On Miraheze or the internet? [19:21:51] Internet [19:22:21] If you canā€™t find normal default to all righrs reserved [19:22:25] it depends on the site [19:22:45] Mmmm [19:33:37] if image is commercial property like album cover it is most likely copyrighted [19:34:31] if it's your own screenshot in some game, that's gonna be something else, cus you made the screenshot [19:34:46] fan wikis usually go w/ fair use [19:35:07] cus it lets use copyrighted images, under certain criteria [20:12:11] Im looking for some figure pic but I seem to be unable to find the one i been looking for thats fall under the CC category :moonch: [20:12:18] Miraheze? [20:14:11] Go to the images page and see if thereā€™s license [20:20:57] if you're able to find the image on Wikimedia Commons, you can just use it on Miraheze wiki w/o reupload even [21:11:19] What kind of image are you looking for? [21:13:30] [1/3] Please read our Copyright Policy (https://meta.miraheze.org/wiki/Copyright_Policy) ā”€ As most content is copyrighted keep the Rule of thumb in mind, that when no license is mentioned on a website, the content and images are fully protected and not allowed to be reused. [21:13:30] [2/3] Otherwise click on the image, and see if any info on the license is given. [21:13:31] [3/3] Most likely you find Copyright info on the Terms of Service/Terms of Use [21:13:56] Fair use exists [21:24:04] [1/3] Fair use is a legal doctrine that allows for the limited use of copyrighted material without permission from the copyright owner for purposes such as criticism, commentary, news reporting, teaching, scholarship, or research. However, fair use is subject to limitations, including considerations of the purpose and character of the use, the nature of the copyrighted work, the amount an [21:24:05] [2/3] d substantiality of the portion used, and the effect of the use on the potential market for the original work. [21:24:05] [3/3] Copyright law establishes the legal framework for creators to protect their original works from unauthorized use or reproduction, thereby restricting the scope of fair use. [21:45:35] exactly where that line is drawn as I understand it comes down to case law and that line is generally battled when a takedown request is stubbornly not followed for whatever reason [21:45:48] in the case of a wiki I would find 'typical' use of images absolutely exceptional to become an issue [22:37:52] What happened with European politics? [22:38:00] It seems the world has exploded in the past few hours. [22:38:32] ilr [23:01:28] @suzuneu fyi im dipping my toes on coding rust rn to avoid studying šŸ‘ [23:01:58] (using rust by example) [23:03:53] Im liking this compiler [23:04:16] my bingeing of no boilerplate set high expectations of this thing [23:04:26] Weā€™ll see if it reaches [23:04:59] if I get the hang of it i do have one project idea to try with rust [23:29:38] It's 1933 again [23:30:20] AfD, RN, Fidesz-KDNP, FdI šŸ˜© [23:30:36] once again en ingles por favor [23:31:23] Alternative for Germany, French National Front, Brothers of Italy šŸ˜© [23:33:08] EU needs Communism [23:33:17] um [23:33:23] I don't think that's accurate [23:39:25] [1/2] I think they're referring to this: [23:39:25] [2/2] https://www.skynews.com.au/world-news/european-union-sees-massive-swing-to-the-right-as-french-president-emmanuel-macron-calls-snap-election-in-response/news-story/370647a93004c19f82e880a9dae78be0