/tech/ - Technology

Brought to you by archive.org

Posting mode: Reply

Check to confirm you're not a robot
Drawing x size canvas

Remember to follow the rules

Max file size: 350.00 MB

Max files: 5

Max message length: 4096

Manage Board | Moderate Thread

Return | Catalog | Bottom

Expand All Images

Learning Anonymous 10/02/2017 (Mon) 02:15:57 [Preview] No. 11454
How did/does everyone continue their learning endeavours? I think most of us are self-taught and autodidacts around here, but there might be some formally taught.

I recently found the joy of academic websites by professors. The first is a nice computer security basics for the stack and how to exploit it by Wenliang Du of Syracuse New York: http://www.cis.syr.edu/~wedu/education/buffer_overflow.html

If you mess around with the URL, you can traverse different directories and see more resources by him and his department. Of not is this page where he has labs and videos for OS sec and exploitation: http://www.cis.syr.edu/~wedu/education/

I've found myself greatly under-educated to understand some of the more advanced issues like injection and return-to-libc, but that is being remedied after I found MIT's open courseware: https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/

There's a lot of courses with guidelines to learn specific topics that could be useful to patch up the holes in someone's knowledge. I know there isn't enough time in most of our lives, unless you're set and have the time which I would be jealous of, so it's imprudent to go at learning everything. I know I've skimmed the CS basics (6.00SC) to brush up what being a self-taught "coder" has left me wanting. A deeper look into recursion and algorithm times was cool, but I don't think it would be useful for anything at the current moment, so I've put it off into a "rainy day" tab to go back to whenever I don't have enough brain power to focus on pressing tasks, but don't want to waste the time on entertainment or idle tasks. Most of the undergraduate classes I believe have video lectures, which can be nice to just play on a mobile device and passively absorb too.

I found both links only by chance and using a proxy from a different country (American networks don't show edu sites as often?), but I can reproduce it on Google using "'TOPIC OF INTEREST' site:*.edu" where single quotes is just a string literal of interest and site portion specifics to return all sites that are .edu domains only.

It'd be best if you could share only things that were personally useful to you and how. There is too much stuff floating around and too little time to waste on personally verifying them.

On a more personal note, if anyone has sources for vulnerability research (exploitation development, assembly code auditing, etc.) I'd be grateful.

sage sage 10/02/2017 (Mon) 02:19:11 [Preview] No. 11457 del
Excuse my terrible formatting and extra picture.

Anonymous 10/02/2017 (Mon) 03:14:18 [Preview] No. 11458 del
I took a programming class in college, but that is the extent of my formal education in /tech/ type subjects.

Later on, I learned Perl because I wanted to solve a math problem I saw in a science magazine. A computer wasn't necessary to solve it, but I didn't have the mathematical maturity to do it "the right way", so I had to brute force it instead. Thus, Perl. I used this tutorial: https://users.cs.cf.ac.uk/Dave.Marshall/PERL/

Most of my learning has been dictated by expediency. I don't think I've ever said to myself "I'm going to learn Python today." Rather, I have something I want to do, or a problem I want to solve, or something I want to automate, so I try to figure out from there how to go about getting it done.

When it involves learning timeless concepts, e.g. different types of algorithms or data structures, I'll often try to find a good book on the subject.

When it involves learning a new programming language, if the language itself is still in development, I shy away from using books, as they rapidly become outdated. In that case, I look for tutorials online that appear to still be maintained, or are part of the official project. But after having learned how to program in general, it's often more efficient to just refer to the documentation for the language (if it's good) and code examples. I never followed a Python tutorial or course, for example. I already knew Perl, so I just read the Python docs to figure out how to do what I wanted to do.

MOOCs and self-paced learning courses (the materials, anyway) of the sort offered by MIT could be a great resource for the right kind of person, but I don't have the discipline to do those.

Lecture-type videos can be good for somethings. I really don't care for screencast-type videos, however. I think those must be hard to do well.

So, for me, I tend to have a goal or task in mind, then I work backwards from that, figuring out what I need to do in order to reach that goal, then depending on what those things are, I look to different types of resources as appropriate. Might not work for everybody. Works okay for me.

>On a more personal note, if anyone has sources for vulnerability research (exploitation development, assembly code auditing, etc.) I'd be grateful.
The attached book is fun.

Anonymous 10/02/2017 (Mon) 18:27:00 [Preview] No. 11480 del
>"the right way"
I remember in the 600SC course, the professor (Guttag) mentions that brute forcing is usually the "right" way to do maths problems in programming languages. I don't remember his reasoning but I think it was because all maths problems are just a bunch of smaller pieces glued together and you can break down and can be characterized as such in your programs, instead of the "elegant" but confusing one-liner.
>"expedency" + "self-paced" + "lecture" + "task"
I am the same. I've been trying the MOOCs and to build up a "foundation" but I feel bored out of my mind and whenever I try to learn something that's not immediately useful, I just glaze over the information. I know it's my ADD and I'm being subborn about it, but I'll have to work through the fact that I don't need to know everything to face a problem, even if it might be reckless. However, some topics don't lend well to being learned "as you go," and don't have texts as readily available as broader topics.
>"Violent Python"
I had the book saved from a bunch of torrents and repos I downloaded, but I decided against keeping it because, like many of the books I had downloaded, it focused too much on specific tools and cases, instead of the replicable theories behind the attacks.

Top | Return | Catalog | Post a reply