HNHacker News
TopNewBestAskShowJobs

SCLeo

652 karma · joined December 4, 2018

submissionscomments
SCLeo··on Minecraft Wiki has decided to leave Fandom
In all seriousness, what fuck is going on in Fandom? It has soooo much ads!

I just turned off my ad blocker and literally only 21% of the page is content and the remaining is ads. After 2 seconds, it got replaced by a full screen ad. What? How? What are the people at fandom thinking? This is completely unusable without adblockers!

Don't believe me, here are the screenshots I just took: https://imgur.com/a/sNg3IlJ

SCLeo··on Petition to stop France from forcing browsers like Firefox to censor websites
I am actually not sure if this is satire, but in case it is not, I don't think Firefox is in the position to boycott France, when Google Chrome exists, and is very likely to comply with the new law.
SCLeo··on Ten years of “Go: The good, the bad, and the meh”
Honestly, I'm incredibly frustrated with this issue; it's just pure idiocy. Commenting out a part of the code and observing the effects is such a simple and useful debugging technique, yet this "feature" of Go prevents you from doing so effectively.

What's even more frustrating is that when you search for solutions, you come across two kinds of (pardon my language) completely brain-dead responses:

First, there are those who argue that unused variables/imports lead to bugs and worse performance in production, so they should always be fixed. But that's completely beside the point; I've never seen anyone argue that allowing unused variables is good for production. It's always been about facilitating the development process and debugging. Yes, I am aware now there are unused variables, but please just let me see what does removing this part of the code do.

Secondly, people suggest using a dummy function like UNUSED or a blank variable _ to solve the problem. But again, these suggestions miss the mark entirely. Changing variable names or adding UNUSED calls to "disable" the rule is even worse than what we've been doing to temporarily "circumvent" the rule, which is simply commenting out the declarations, test, and undo afterwards. Not only it involves more effort, but more crucially, you might actually forgot to revert those changes and leave in unused variables.

Frankly, I believe this is just a bad design decision, and it seems like the Go team is stubbornly doubling down on this mistake due to ego.

(Sorry, I just have a very strong opinion on this topic, and I am deeply frustrated when the tools I am using think they know better than I do and are adamantly wrong.)

SCLeo··on “Fractureiser” malware in popular Minecraft mods and modpacks
> Anti-sandbox tricks

> Something not commonly seen in JVM malware that is present here is a class titled VMEscape. It checks if its in a sandboxed windows environment by checking if the current user is WDAGUtilityAccount, which is part of the Windows Defender Application Guard. If this condition is met, an attempt to escape the sandbox system is made.

> The process is roughly as follows:

> - Start a repeating thread to run the following actions:

> - Create a temporary directory using Files.createTempDirectory(...)

> - Iterate over FileDescriptor entries in the system clipboard (Supposedly this will be accessing the contents of the host)

> - Create a shortcut that looks like the original file (using icons from SHELL32) but instead invokes the malware

> - Assings this shortcut to the clipboard, overwriting the original file reference

> Thus, if a user copies a file and goes to paste it elsewhere they will instead paste a shortcut that looks like their intended file, but actually runs the malware.

This is just evil.

SCLeo··on Replit's new Code LLM: Open Source, 77% smaller than Codex, trained in 1 week
I agree. Maybe it interpreted it as return the numbers that are more than 10 in the given array of even numbers.

For example, if the instruction says "return person objects that are at least 20 years old", it might be more reasonable to generate:

array.filter(item => item.age >= 20)

as oppose to

array.filter(item => (item instanceof Person) && (item.age >= 20))

SCLeo··on Microsoft broke a Chrome feature to promote Edge
Another example is mpv. It also handles a very significant amount of extensions. Maybe unpopular opinion, but I actually like how even batch scripts are able to register default apps for file extensions.
SCLeo··on The dark side of the Mac App Store
I really don't get the argument that desktops don't need to be secure. I have my password manager (yes it is encrypted, but can be bypassed by a keylogger) and my ssh private keys on my desktop.
SCLeo··on Layout 2013 and Layout 2020
Also, IIRC, in the early days, the purpose of rust was to create Servo.
SCLeo··on SQL:2023 is finished: Here is what's new
Honestly, this really confuses me. On the surface, it seems what you said is true. How can a programming language that emulates natural language be good?

However, in practice, SQL is surprisingly easy to write and expressive. I do prefer using ORMs for simpler queries because of intellisense and typing, but for complex queries, SQL is just better. I really don't understand why.

SCLeo··on Catch-23: The New C Standard Sets the World on Fire
If I am not wrong, one major security bug that C programs usually face is buffer overflow, which is an undefined behavior.
SCLeo··on Show HN: Lunette – A word processor designed around writing, not formatting
> And what do we do with our ideas when they arise? Well, we scroll to the bottom of the document and jot them down, copy and paste them, rearrange them, and hope we'll remember to come back to them.

I write erotic novels as a hobby. I legit thought no one else does this (putting random unorganized ideas at the bottom of the document). I am genuinely pleased to know I am not the only one.

SCLeo··on How to start a React Project in 2023
It is also not just JavaScript, but also with current AI technologies, which arguably, change even faster than JavaScript. You see, fast changing technology does not imply the underlying tech is bad, but rather there are unexplored new ideas and there are enough interested people ready to dive right in. Yes, it is exhausting to follow. Yes, it is frustrating when the floor shifts underneath you. However, dismissing a tech just because it is fast changing is not a good altitude.
SCLeo··on Typst, a new markup-based typesetting system, is now open source
So far, my favorite thing about it is matching parentheses scale automatically. No more \left(\right) nonsenses.
SCLeo··on Microsoft lays off one of its responsible AI teams
Optimized via gradient-free methods.
SCLeo··on Llama.cpp: Port of Facebook's LLaMA model in C/C++, with Apple Silicon support
This is just inference. The core at most ML library is the auto differentiation capability. It will be extremely tedious if you are to calculate the gradients manually. Or, if you implemented your own AD, then it is effectively a minified version of a ML library.
SCLeo··on Don't believe ChatGPT – we do not offer a "phone lookup" service
I think the key thing is for the AI company to actually let the user know that this is a language model, and the information it spits out should not be trusted. Obviously, Microsoft is not going to do that as they are trying to market the new bing as a information search engine.
SCLeo··on Ambient: The Multiplayer Game Engine
I really don't want to be dismissive, but you really should not put a Mac on the front page of a game engine.
SCLeo··on Launch HN: Moonrepo (YC W23) – Open-source build system
Why? Why YAML? Why? YAML is absolutely terrible!

Aside from the classic `country_code: NO`, the other day I ran into issues with scientific notations. Now, guess, which of the following are strings, and which are numbers:

- 1e+10

- 1.e+10

- 1.0e10

SCLeo··on Civilization 7 Is in Development
Actually, if you play Stellaris, there is a mod called StarNet AI, which uses weights that are considered "meta". From my very limited personal experience (I got destroyed), it is not really fun to play an AI that uses very good strategies as it eliminates all previously viable, but not optimal playstyles.

Also, it feels _really_ good when you get to a new ship tier faster than your neighbors. The reverse is, however, very frustrating, as you are forced to play catch.

SCLeo··on Modern SPAs without bundlers, CDNs, or Node.js
Wow! What a coincidence! I literally have something extremely similar which I called `$e`. I think one crucial thing you did not mention is that this conforms to the signature of jsxFactory, meaning if you run some kind of transpiler that supports jsx, you can literally do:

parent.append(<p>Hello</p>);

(Mine has slightly more functionalities, such as allowing passing in styles as a object, auto concatenate array of strings for class names, etc.)

SCLeo··on Modern SPAs without bundlers, CDNs, or Node.js
I think the issue might be the name "tree shaking". People from outside of the JavaScript just don't understand what it means, and how important it is. Maybe we should have just called it "dead code elimination". (I think there is some subtle difference but my memory is failing me).
SCLeo··on The new Bing will happily give you citations for a pile of nonsense
It is useful for actual language related tasks, such as paraphrasing or making the content of an email flow better. However, for anything else, it is mostly hit & miss.
SCLeo··on Tesla recalls 360k vehicles, says full self-driving beta may cause crashes
Once they are there, can't you just recall them back with OTA updates?
SCLeo··on Rust went from side project to world’s fastest growing language
For their entire 'lifetime.
SCLeo··on Microsoft announces new Bing and Edge browser powered by upgraded ChatGPT AI
OT, I actually wrote a short erotic novel completely in the format of their search history.
SCLeo··on Broider: Pixel Art CSS Borders
Thank you, you made me smile. :)
SCLeo··on GitHub Sponsors will stop supporting PayPal
I also use PayPal a lot. It is more convenient since I don't have to find my credit card to enter the digits manually. It is also easier to change payment methods with PayPal.
SCLeo··on Having friends in HR is fine, but HR is not your friend
> HR aren’t evil, they’re just doing a job

I am not trying to say HR is evil but this line of reasoning makes literally no sense.

Whether someone is just doing the job has absolutely nothing to do with if the job they are doing is evil. "They are just doing their jobs" should never be used to justify anyone's actions. For brevity, I will skip all the war crime analogies that everyone can think of.

SCLeo··on Pomsky – A portable, modern regular expression language
I think the number ranges functionality is pretty handy. In addition, I also like how it supports comments. (However, I do think if the regex grows to needing comments, it is probably too complex.)
SCLeo··on SQLite's Automatic Indexes
Maybe I am missing something but I think O(N * N) is the correct complexity for a nested loop implementation. If you believe that is wrong, can you explain a bit more?
← PreviousPage 2 of 7Next →