liv: alternating calligraphed and modern letters (letters)
[personal profile] liv
Three topics about learning I'd like some advice on:

  • How do you learn from videos, especially taking notes? My current online course, which I'm really enjoying, has videos as well as texts. In theory I approve of this because people who aren't 40+ hyperlexics generally prefer and learn better from videos. But for me personally, it's a slog. It took me about 6 hours to take notes on a 2-hour documentary this week, including a lot of going back over it to get accurate quotes. That's not really sustainable, quite aside from the fact that I'm frustrated by how much less information is conveyed in 2 hours of video that I would read in that time period.

    [personal profile] jack suggested I should try using two computers, one to screen the video and one to type and take notes, rather than tabbing between the video and my notes all the time. That seems excessive, but maybe it's the right answer.

  • I'm trying to teach myself Arabic. Does anyone have any good resources? I'm completely frustrated with the beta course on Duolingo; it's possible it may improve someday but right now it's too far from ready. There's a really good deck on Memrise, How to read Arabic which is logically organized and has a real human pronouncing all the words clearly. I still need more practice to get fluent at actually reading. But I also want to move on beyond just matching symbols to sounds and learn the language as a language. I think I have a leg-up because I know Hebrew, a reasonably closely related Semitic language.

    I am looking for: an explanation of grammar, not just something that teaches inductively by looking at lots of examples. I get the impression Arabic is moderately complicated and also I just prefer learning rules as well as working bottom-up. Some kind of resource to practise really simple sentences, perhaps a video with very simplified language and maybe even subtitles. Or a book aimed at young children first learning to read. It doesn't need to be gamified particularly, but a series of exercises that I can work through so I get practice at applying rules and skills starting from really easy and building up. I wouldn't at all mind getting a textbook, but if there's anything free of cost online that's also great.

    I'm probably more interested in Modern Standard Arabic but I have no objections to picking up some Classical or using resources aimed at building Qur'an fluency. I do want to be a bit careful to avoid either intruding on something that isn't really meant for non-Muslims, or on the other hand anything with a lot of nationalist or fundamentalist propaganda mixed in with the language learning.

    The remaining two points are to do with programming and I'm not sure I even know enough to know what I'm asking for, so helping me to formulate the question would be a good start.

  • I want to learn how to do servers. I described this as a basic intro to sysadminning but I'm not sure it's quite that. But to be able to set up my email and web hosting properly rather than just ignorantly copying code with no idea what it does. And just having a clue about how different computers in different physical locations talk to each other, and maybe a very basic grasp of security stuff.

    [personal profile] cjwatson suggested maybe I need some Unix programming, and I think that might be part of what I'm looking for, but mostly I want to understand principles. Otherwise I end up learning a lot of syntax for commands, but still having no idea where or in what context I'm supposed to type those commands.

    Anyway I can't find courses that teach it, it all seems to be about programming languages. Which is also something I want to learn about, but I have plenty of options for learning how to code, so that's not what I'm asking about here.

  • Partners' kid is excited about "programming a game". And it seems like most of what he means by that is creating interactive fiction, he has some really cool descriptions of the story he wants the player to experience. I don't know if there is any kind of system that exists to allow complete beginners to put together elements to tell a story (not just text, indeed ideally not primarily text, mostly graphics). I wonder if maybe Twine is the answer? Anyone have any experience? He has some knowledge of Scratch and some of Minecraft, but I think there's too big a gap between what he can imagine and what he can implement in those environments.

    Several of his adults are professional programmers so they're teaching him actual coding. But I wonder if there's a tool for creating something that might be approximately playable, without having to spend several years learning foundational skills first? Or possibly a way that an adult can relatively quickly implement some of his designs, other than actually coding an entire game? I mean, maybe not, maybe that's an unreasonable thing to hope for. But maybe someone knows of something that might be relevant?
  • (no subject)

    Date: 2019-09-12 05:14 am (UTC)
    siderea: (Default)
    From: [personal profile] siderea
    I'll be interested to see what you turn up about system administration, because I could probably use a good primer myself.

    Some things I know you will need to learn:

    1) You're going to need to learn how to run/manage the operating system of a server. Presumably some flavor of linux. You may find – I did – that this information is easier to learn for a specific flavor of linux. Speaking of learning linux is a little bit like speaking of "learning romance languages"; most pedagogy is organized around learning one at a time, though after you've learned one or two, generalizing to the rest is pretty easy. I have a Debian linux server, so that's what I looked into, and found some nice resources I should spend more time with. And expect to soon.

    2) Programming and system administration have a particularly intertwined relationship in the unix/linux world, because:

    • The unix command-line commands, themselves, work like tinker-toys: you can concatenate them up into meaningful expressions that are basically little programs. For example: The expression ls means "list out the files in a directory"; the expression grep means "find all lines that match this example". The expression "|" (called "pipe") means take the output of this command and make it the input of that command, so ls | grep '.html' means "get the list of files in this directory and return only those with '.html' in their names." The expression ";" means "and then next do"; the expression ls this; ls that will result in the directory listing for this followed by the directory listing for that. And there are other ways to cause commands to interact. So you can see how you can start building long complex chains of expression. And this isn't "programming", in the sense of making a document that you store and run; this is conversational code, expressing yourself to the computer at the prompt.

    • Certain unix command-line commands are, themselves, programmable in weird and powerful ways. sed and awk are two famous examples. I never remember how they work, and always have to look them up. There are others; there are conventional programming languages that allow themselves to be called this way, and some other things, like the insane email client I use.

    • You can write programs that function as command line commands and interact with the above. If you write a little program in perl called myprogram.pl and put it in your bin directory as is traditional, you could then say at the prompt ls | ~/bin/myprogram.pl.

    • You can capture any of the above into programs, which are called "shell scripts" (also there is something called "aliases", which are like particularly simple shell scripts.)

    Upshot: basic interaction with unix/linux servers, at the command line, entails some degree of speaking conversational unix/linux to the computer, which is done in something that looks a lot like a programming language, but! Which is actually a whole bunch of programming languages.

    3) If you're going to want to run interesting services on your server, yourself (not a foregone conclusion; most mere mortals just configure their email that someone else runs, because running an email server is Hard these days) you will need to learn the specifics of whatever applications you're running.

    4) And that will probably entail some amount of learning how computers talk to one another, which is protocols. This might be something you only need the rough outlines of to get done what you want. Like, I have a studious ignorance of how TCP/IP actually works and it has slowed me down not at all so far. OTOH, if you actually get interested in that, more power to you. And to do interesting things with webpages or email, you might actually have to know a bit more about how HTTP or SMTP works.

    5) You may need to learn how to compile things from source, because that's how the applications you want to run are distributed. This is kind of considered part of "how to program" because compiling is a things programers do to programs.

    6) Somewhere along the line, if you're doing a lot of work at the command line, you're probably going to need to learn vi. Or maybe emacs. These are text editors for commandline unix/linux systems. You use these to edit files. And they are full of their own quirky commands. (emacs, in particular, is famous for being/having its own language embedded within it, hence the joke, "emacs isn't a bad operating system, but it needs a better text editor".)

    That's just off the top of my head.
    Edited (AUGH! Unbalanced parens! I die of shame.) Date: 2019-09-12 05:17 am (UTC)

    Soundbite

    Miscellaneous. Eclectic. Random. Perhaps markedly literate, or at least suffering from the compulsion to read any text that presents itself, including cereal boxes.

    Page Summary

    Top topics

    December 2025

    S M T W T F S
     123456
    78910111213
    14151617181920
    21222324252627
    282930 31   

    Expand Cut Tags

    No cut tags

    Subscription Filters