Looks to be in the works which makes me very happy. If you use nightly, make sure browser.tabs.groups.enabled in about:config is enabled
Looks to be in the works which makes me very happy. If you use nightly, make sure browser.tabs.groups.enabled in about:config is enabled
Very similar to mine. Although for me the ball was white and rolled right
I thought it was interesting I could only see the arm, probably because I wouldn’t be able to picture the full body
Something i didnt know for a long time (even though its mentioned in the book pretty sure) is that enum discriminants work like functions
#[derive(Debug, PartialEq, Eq)]
enum Foo {
Bar(i32),
}
let x: Vec<_> = [1, 2, 3]
.into_iter()
.map(Foo::Bar)
.collect();
assert_eq!(
x,
vec![Foo::Bar(1), Foo::Bar(2), Foo::Bar(3)]
);
Not too crazy but its something that blew my mind when i first saw it
Arch is the only person who has been in my house for the last week and i have no clue how he is going about it and he has no clue how it is affecting him or how he feels and how it is affected me
i’m tricking the nintendo switch into thinking my computer is a bluetooth pro controller. I’m using a crate called bluer which exposes bindings to the BlueZ stack and it’s been great to use.
I got to the point where it pairs the controller and hits B to exit. However it doesnt seem to accept any more button presses after that… :) So I have some ways to go.
I’ve also needed a project where I can challenge myself with the basics of async without it being overwhelming, and I think this hits the sweet spot. It’s my first time using tokio spawn, join, and select in a real project!
My reasons were more hardware related. When I was a bit younger my parents gave me a netbook which had 32 GB of storage, and Windows used almost all of it. I wanted to do creative projects in my free time, but I couldn’t install programs or save any of my work. I would often restart to clear log files and gain a bit more working storage, which was extremely annoying because it took like 5 mins for the computer to finally settle down and be usable.
I eventually got a 32GB flash drive which helped a lot, but it was not enough. With 4GB ram I could only have about 3 browser tabs open, and not all the programs I wanted could be run off the flash drive. It was still resource management hell.
Somehow, some way, I learned about Linux. I got a 128GB microSD, put Mint on it. It truly set me free. I could install the software I wanted, I could make the things I wanted to make, I could open more programs at once, and I could do it all without unbearable lag. I never looked back since.
fish. I think it has most things i want out of the box, so it should be simpler and snappier than my zsh setup. it’s just that zsh hasnt bothered me enough to try it yet.
also nushell, im interested in the idea of manipulating structured data instead of unstructured text
I noticed it and placed a few pixels :D
Here’s one on the claw
You might be okay with this:
macro_rules! span {
($line:expr, $column:expr) => {
Span {
line: $line,
column: $column,
file_path: None,
}
};
($line:expr, $column:expr, $file_path:literal) => {
Span {
line: $line,
column: $column,
file_path: Some($file_path.to_string()),
}
};
($line:expr, $column:expr, $file_path:expr) => {
Span {
line: $line,
column: $column,
file_path: $file_path,
}
};
}
However, sometimes I don’t want to pass in the file path directly but through a variable that is Option<String>.
Essentially I took this to mean str
literals will be auto wrapped in Some
, but anything else is expected to be Option<String>
Another optimization:
More progress on the Finite Projective Plane (incidence matrix) generation from last week. There already exists an algorithm to generate boards of order p+1 where p is prime. It is stateless, so with CUDA we can generate huge boards in seconds since all you need is the x, y position and board size. 258x258 under 3s!
However, p+1 isn’t the only sequence. It seems by our observations that the fermat numbers also generate valid boards, using our “naïve” algorithm.
Unfortunately 3x3, 5x5, and 17x17 might not contain all the nuggets of generality to find a nice algorithm like the p+1, so we’re gonna generate the next up: 257x257. We’ve been improving the naïve algorithm since it is too slow. (The resulting image would be 65793x65793)
true
elements would be using row and column indexes. This is okay because of the constraint which limits how many true
elements can be in a row/column
slice::contains
, use slice::binary_search(...).is_ok()
Next steps:
Apparently generating “Finite Projective Planes”. For context on how I got here, I went camping with my family and brought the game Spot It. My brother was analyzing it and came up with the same type of pattern.
When we got home he made a python script to generate these boards, but it was quite slow, so he half joked asking me to rewrite it in Rust.
I kinda struggled a bit since I didn’t fully understand what it was doing. Near the end I even got a segfault using safe code😃! (i was spawning a thread with a large stack size, and allocating huge slices on its stack, rather than you know… boxing the slice Lol.) When I finally got it working, it ended up being in the ballpark of a 23x speedup. Not bad for changing the language choice!
There’s lots of room for improvement left for sure. The algorithm could benefit with some running statistics about cols/rows and the algorithm itself is quite naïve and could maybe be improved too :P
If they aren’t equal, there should be a number in between that separates them. Between 0.1 and 0.2 i can come up with 0.15. Between 0.1 and 0.15 is 0.125. You can keep going, but if the numbers are equal, there is nothing in between. There’s no gap between 0.1 and 0.1, so they are equal.
What number comes between 0.999… and 1?
(I used to think it was imprecise representations too, but this is how it made sense to me :)
Imagine they have an internal tool to check if the hash exists in their database, something like
"SELECT user FROM downloads WHERE hash = '" + hash + "';"
You set the pdf hash to be 1'; DROP TABLE books;--
they scan it, and it effectively deletes their entire business lmfaoo.
Another idea might be to duplicate the PDF many times and insert bogus metadata for each. Then submit requests saying that you found an illegal distribution of the PDF. If their process isn’t automated it would waste a lot of time on their part to find the culprit Lol
I think it’s more interesting to think of how to weaponize their own hash rather than deleting it
I was thinking that the user intentionally chose their distro, because of the Ubuntu character.
Cool, more free stuff
Arch, you want more free stuff faster
Not again!
Debian, you want to set and forget, so any updates that do come up are still a nuisance
/dev/sdX
is a file, and both dd
, cat
can read files in full. You can even try something like zstd
to compress it too.
One of the nice things about dd
though is you can see the progress with --status=progress
I think it is so that the subvolume can be mounted with different options. You can of course have a mixed layout which might be more convenient, so that say root and home subvolumes mount with the same options, but swap mounts with different options. And the top level never gets mounted at all.
toplevel (not mounted)
+-- @ (subvolume mounted on /)
+-- home (subvolume, looks like a folder, same mount options as @)
+-- usr (folder, gets snapshotted by @)
+-- ...
+-- @swap (subvolume with different options, mounted on /swap)
I set mine up with a purely flat layout so I haven’t verified this is true, but it sounds reasonable.
Here’s the documentation I was looking at:
Screenshot woulda been better just so everyone sees the same thing lol. I wasn’t sure what it would look like because on browser it highlighted some things green, and on Voyager it seems to highlight 4+ space indented as gray. No clue what is going on there :D
vim with :set virtualedit=all
gets pretty close being able to “paint” text anywhere… unfortunately i was on my phone and didn’t think to use it
o Windows 10
|
o Linux Mint
|
|\__
| \
| o Manjaro KDE
| |
o Fedora KDE
| |\__
| | \
x | o Windows 11
| o Windows 11 + Arch Linux
| |
o Arch Linux
| |
| |
| o Windows 11 + Debian KDE
| |
hopefully it renders well on your client :D
General Release