this post was submitted on 27 Mar 2024
94 points (94.3% liked)

Asklemmy

43810 readers
1 users here now

A loosely moderated place to ask open-ended questions

Search asklemmy πŸ”

If your post meets the following criteria, it's welcome here!

  1. Open-ended question
  2. Not offensive: at this point, we do not have the bandwidth to moderate overtly political discussions. Assume best intent and be excellent to each other.
  3. Not regarding using or support for Lemmy: context, see the list of support communities and tools for finding communities below
  4. Not ad nauseam inducing: please make sure it is a question that would be new to most members
  5. An actual topic of discussion

Looking for support?

Looking for a community?

~Icon~ ~by~ ~@Double_A@discuss.tchncs.de~

founded 6 years ago
MODERATORS
 

I mean like awareness that, just under the surface, there are deep explorations waiting for the right time and place to emerge; things you've set aside or placed on the back burner but will tackle eventually/many you already have tackled.

Are you deeply self aware of these interests like some kind of list? If so, are these interests deeply connected in your mind to your past explorations and interests like some kind of road map or branching tree structure of thought?

you are viewing a single comment's thread
view the rest of the comments
[–] ICastFist@programming.dev 4 points 1 year ago (4 children)

I have a number of interests that I'm not actively, or even lazily, pursuing right now, mostly because I'm already filled up with way too much stuff that I'm into and not really looking into properly.

Many are directly related to programming. x86-64 and RISC-V Assembly, understanding the dark arts of how graphics programming works (this video does an excellent introduction to the kinds of calculations done for 3D scenes), the bare minimum to make USB bootable "operating systems", properly understanding Justine's "actually portable executables" and replicating them with a different language like Nim or V (she's a real programming genius), getting into game and software cracking (all I know is that you need a disassembler first, then most of the work is renaming stuff into human readability and organizing the code)... All of this just related to programming! I know that the 3D stuff is what I think about most often, given my 3D printing shenanigans and fiddling with Blender.

Related to my 3D printing, I keep looking into, then leaving for later, ways to make proper silicone molds, or 3D print reusable molds in order to create large quantities of tiles for square or hex games, plus modular terrain features. Printing them is easy, creating molds not so much. My limited experience with trying to press 3D printed shapes on a dough had less than ideal results, mostly due to the dough sticking to the damn print, even after applying oil and vaseline all over it. Might try applying varnish to the print before applying vaseline and try again sometime in the future.

I also think frequently think about stuff like making bricks out of molten plastic mixed with sand. This thing is easy in theory: no need to separate the many different types of plastic, just shred it all, dump in a big cauldron, heat it up to 200ΒΊ Celsius, mix in some sand, press the resulting paste into the desired form or mold, wait for it to cool. The problem is that I can't quite figure a way to make it work without spending 10k USD in heavy equipment. Then I think whether I should directly contact the local recycling center and ask whether they know someone who does these bricks, or if I should start a business with that, the latter option being super risky given my lack of funds for such a venture.

[–] DrJenkem@lemmy.blugatch.tube 3 points 1 year ago* (last edited 1 year ago) (1 children)

Regarding the assembly and cracking stuff, I've actually taught myself that (not RISC-V, but x86, arm, and a little mips and PPC). The way I did it, was largely practice by doing. Specifically, I tried to almost every weekend put some time into competing in CTFs. Focus on the reversing challenges, look for writeups on similar challenges, fail, and once the CTF has ended, read the writeups and try solving again. Rinse and repeat, each weekend you'll slowly get better and better.

Additionally, start messing around with an assembly debugger. For me, being able to step through instruction by instruction and watch as the values of the registers change, made everything sort of click. Start with making your own program in c, then debug the assembly, and pay attention to how your c code got converted to assembly.

There's also some decent books out there, I like NoStarch (there's a malware book and also hacking: the art of exploitation, the malware book is more reverse engineering, but both should be decent starting points for assembly).

Btw, picoctf is a good starter one that is hosted year round.

[–] borari@lemmy.dbzer0.com 2 points 1 year ago

The way I did it, was largely practice by doing.

For me, being able to step through instruction by instruction and watch as the values of the registers change, made everything sort of click.

This is exactly how assembly and reversing started to make sense for me as well. I just had to dive in for the words I was reading to start really making any sense.

I also agree on CTFs being a great entry point to getting those reps in. If you're up for a challenge the Mandiant Flare-On CTF is a doozy. All the old CTF binaries are still up on the Flare-On site for anyone to grab and work through. The CTF is usually in the fall, September-ish I think? Definitely before Thanksgiving in the US, and the SANS Holiday Hack stuff.

load more comments (2 replies)