18 votes

Would any Tilderino be interested in tutoring me in programming?

I could have post this on Reddit but in my experience, nothing really happens over there since things are too impersonal.

I realize that's not an enticing proposition for most people since programmers are usually busy people, but I figure I'd give it a shot. I believe many people that already interacted with me have some idea about my personality. Besides being a stickler for logic, I'm very flexible and eager to learn and make it a habit to force myself to admit when I am wrong. I had to abandon software engineering college because of financial concerns and this hurt me quite a bit, not just because of the content, but because of the social stimulus from my peers.

I already have some knowledge mostly in Python and basic C algorithms, from the basics until rudiments OOP. Math is not my strong suit, but I don't hate it either and I am very fond of logic (including philosophy). I'm also very good at Googling and reading documentation, so I wouldn't give you too much trouble.

I'm proficient in Linux/Unix (as an advanced user, not an administrator). I'm comfortable in the command line and an enthusiastic user of Emacs (but I can use whatever you want of course).

It doesn't even have to be Python, just anything you're comfortable teaching at a beginner level that works on a Mac (and later n a Linux Machine). And is also wouldn't have to be super intensive or frequent, being unemployed (hahaha) I can work around any schedule. I just need some human contact with a nice dude or dudette that cares about imparting knowledge.

My English is pretty good in writing and understanding but I do have a thick accent -- I believe it's understandable though.

I'm super shy and video is not a requirement, but it might be nice.

I'm also a slow learner and have ADHD, so you might need a little patience.

Anyway, here I am asking for help!

EDIT: dear Tilderinos, you're awesome and I love you all. I'm also aware of many if not most learning resources for self-didact beginners programmers on the internet -- especially if they use Python. The reason I'm posting this is that I am failing at learning by myself. I welcome ALL suggestions with great gratitude, but this is not the purpose of this thread.

EDIT2 VERY IMPORTANT!!! I’d be willing to teach Portuguese or anything else I happen to know in exchanging for the tutoring!!!!!!!

19 comments

  1. [8]
    3d12
    Link
    One of my favorite things to do when I'm poking through a new language, getting a feel for its constructs, is to hop over to https://projecteuler.net/ and start making my way through the problems...

    One of my favorite things to do when I'm poking through a new language, getting a feel for its constructs, is to hop over to https://projecteuler.net/ and start making my way through the problems there. I think I've solved the first five problems in 4-5 languages by now.

    While Project Euler on its face won't teach you more than the most basic loops and if-then's, you can make more out of the problems by pushing yourself outside of those boundaries. For example, instead of going back to the last lesson and copy-pasting code where you made a loop to figure out if a number is prime, turn that code into a function and try importing it instead. Or, instead of storing this long list of coordinate pairs as a 2D array, try creating a "coord" class and store them as an array of those objects. Since any given programming task can be accomplished 1,000 different ways, there's no "wrong" way to approach it.

    That said, the main thing that I got from your request was aimlessness. I can say (from personal experience if nothing else) that learning a programming language is all well and good; but without a goal behind it, it's more of an exercise in mental masturbation than anything. Not that that's inherently bad, it's one of my favorite pastimes in fact. Just making sure you level-set your expectations going in.

    9 votes
    1. [6]
      mrbig
      Link Parent
      Thank you very much for your response. I don't think I'm aimless, I want to work in a career that I love and have found fascinating since I was a kid, and that will also provide me financial...

      Thank you very much for your response. I don't think I'm aimless, I want to work in a career that I love and have found fascinating since I was a kid, and that will also provide me financial independence.

      Challenges like Euler are awesome, but I'm kinda realizing that I need some human contact too for that to work.

      And again: thanks!

      3 votes
      1. [4]
        3d12
        Link Parent
        I didn't mean any offense, or to imply that I think you're aimless. Only that your request is aimless. I see "I want to get into the software development industry" as roughly equivalent to "I want...

        I didn't mean any offense, or to imply that I think you're aimless. Only that your request is aimless. I see "I want to get into the software development industry" as roughly equivalent to "I want to get into the music industry" -- OK, so are you going to perform? Record? Produce? Manage a venue? Manage a band? Songwrite? Purchase a studio? It's just such a large industry that unless you focus on one specific aspect, you're inevitably going to get overwhelmed by trying to learn it all.

        Bringing the analogy around, the "software engineering industry" is similarly broad. Do you want to work on mainframe software, using programming languages most people couldn't be bothered to learn? Would you rather build front-ends for websites, using design fundamentals and reactive programming to achieve UI nirvana? You can get into the mysterious world of "full-stack" (don't even get me started on how useless of a term this is) for a company that needs automation tools written. You could learn a testing suite like ReadyAPI and learn how to program automated tests for API endpoints. There are so many things that just saying "I want to learn programming" doesn't tell anyone where your interests truly lie.

        To that end, do you have a specific job you're hoping to get in the software engineering industry? That could help a potential tutor with knowing what you would be most interested in learning specifically. And knowing what jobs are available locally for you in the industry can help shape those goals towards something tangible.

        7 votes
        1. [3]
          mrbig
          (edited )
          Link Parent
          Please, do ask! By doing that you help me to make it clear what really meant. I wanna be a professional IT person, and I believe the ability to write software will greatly help me in that goal....

          Please, do ask! By doing that you help me to make it clear what really meant. I wanna be a professional IT person, and I believe the ability to write software will greatly help me in that goal.

          I've liked computers since I was a kid but I was told that you could not mess with them unless you were really good at math. So I went to film school. Kind of a mistake. 20 years ago, C programming books were black magic. You truly needed to have a much higher aptitute for it. That is not the case anymore.

          If you wanna no what I want: I wanna work with Linux. I wanna manage infrastructure. Maybe work in security. I wanna make a Linux distribution that's actually a version of an electronic typewriter my dad had in the 90s, and I want it to be accessible to everyone. I want it to run in every shit netbook on earth, in text mode only. I want it to completely blocked anything that is not writing (for creative writing purposes), and still be useful. It also saves your data locally and in the cloud. Losing text is no fun! And it must boot in three seconds, that's unnegotiable. I wanna do awesome things that look old somehow. I wanna write a text adventure from scratch. I wanna teach unprivileged kids to program so they have a change in life. I wanna make a task manager specifically designed for people with ADHD (I have ADHD).

          On a more general answer, I wanna be on the backend. I don't wanna mess too much with design and CSS at all. I wanna be the guy that no one remembers he even exists because everything he does simply works.

          I also want to make money to help my family because I'm getting older and so are they.

          5 votes
          1. Micycle_the_Bichael
            Link Parent
            Hi!!! Infrastructure Engineer (for now, company restructure means I’ll keep the same tasks but probably be rebranded as a Site Reliability Engineer next year) here! If your passion is in...

            Hi!!! Infrastructure Engineer (for now, company restructure means I’ll keep the same tasks but probably be rebranded as a Site Reliability Engineer next year) here! If your passion is in infrastructure and Unix I can give a little advice. Outside of python and bash (and maaaaybeee Go depending on the company) , IMO you probably don’t need to focus on programming languages too too much. A lot more useful in my opinion will be things like Kubernetes, puppet/salt stack/chef, and/or ansible.

            2 votes
          2. stu2b50
            Link Parent
            Perhaps IT would also be a field worth consideration in that case?

            If you wanna no what I want: I wanna work with Linux. I wanna manage infrastructure. Maybe work in security.

            Perhaps IT would also be a field worth consideration in that case?

            1 vote
      2. MonkeyPants
        Link Parent
        Programming often involves self learning. The major programming languages historically change every decade or so. There are other options which involve much more human contact. You could get into...

        I'm kinda realizing that I need some human contact too for that to work.

        Programming often involves self learning. The major programming languages historically change every decade or so.

        There are other options which involve much more human contact. You could get into business operations, which is the implementation of business software. There are many people who have made a living off maintaining Salesforce.com systems or Workday systems. Salesforce.com in particular has a very human element to their training programs. Implementations involve both a functional and a technical aspect. The technical aspect might suit you more.

        1 vote
    2. Wulfsta
      (edited )
      Link Parent
      This is a great suggestion, whenever I learn a new language I usually go redo problems 2 to 20 or so (the first one takes about a minute to do by hand, so it's not particularly useful to code).

      This is a great suggestion, whenever I learn a new language I usually go redo problems 2 to 20 or so (the first one takes about a minute to do by hand, so it's not particularly useful to code).

  2. [3]
    Grzmot
    Link
    My first contact with programming was the book Automate the boring stuff with Python. I can really recommend it for the basics and it's directed at absolute beginners of programming. The book is...

    My first contact with programming was the book Automate the boring stuff with Python. I can really recommend it for the basics and it's directed at absolute beginners of programming.

    The book is fairly expensive (for a book) but it's worth the price, and if you can't afford it, well the digital high seas have everything.

    5 votes
    1. Whom
      Link Parent
      Don’t even need to pirate it for a digital copy, actually. It’s CC licensed and freely available here.

      Don’t even need to pirate it for a digital copy, actually. It’s CC licensed and freely available here.

      12 votes
    2. mrbig
      Link Parent
      That's a great book, thank you very much for the recommendation.

      That's a great book, thank you very much for the recommendation.

      1 vote
  3. [3]
    Apos
    (edited )
    Link
    If you want to hit me up, I can teach you some stuff. We can figure out what your goals are and work from there. I'm interested in Portuguese if you want to share that.

    If you want to hit me up, I can teach you some stuff. We can figure out what your goals are and work from there.

    I'm interested in Portuguese if you want to share that.

    3 votes
    1. [2]
      mrbig
      Link Parent
      That's awesome! Shoud I send you a private message?

      That's awesome! Shoud I send you a private message?

      1 vote
  4. ThatFanficGuy
    Link
    I'm not good at teaching, but I can give guidance when it comes to JS. If you take up JS, you can PM me with a problem or two, and we'll solve it together. The JS programming experience is not...

    I'm not good at teaching, but I can give guidance when it comes to JS. If you take up JS, you can PM me with a problem or two, and we'll solve it together. The JS programming experience is not usually tranferrable to other languages, but patterns are.

    3 votes
  5. [2]
    determinism
    Link
    I've seen both of these recommended for self-directed learning of security, cryptography, exploits. I haven't tried either of them. https://cryptopals.com/ https://exploit.education/

    I've seen both of these recommended for self-directed learning of security, cryptography, exploits. I haven't tried either of them.

    https://cryptopals.com/

    https://exploit.education/

    2 votes
    1. freddy
      Link Parent
      I knew of CryptoPals but hadn't heard of the later link. Thanks for sharing!

      I knew of CryptoPals but hadn't heard of the later link. Thanks for sharing!

  6. Pistos
    Link
    One way to learn (out of several ways you should make use of) is to put up some code for code review. You can use a site like github, gitlab, sourcehut, etc. I can offer to look at a few hundred...

    One way to learn (out of several ways you should make use of) is to put up some code for code review. You can use a site like github, gitlab, sourcehut, etc.

    I can offer to look at a few hundred lines of your code every couple weeks or so, and give you constructive feedback.

    2 votes
  7. jcdl
    Link
    A big thing I remember about being a beginner (and current) programmer is just not having the faintest clue how to diagnose and debug my programs. I’d be happy to help out and walk with you...

    A big thing I remember about being a beginner (and current) programmer is just not having the faintest clue how to diagnose and debug my programs. I’d be happy to help out and walk with you through your problems, narrow things down to their core issue, and analyse why it happened. So much of the friction I find comes from not knowing where to start, whether it’s staring at a blank text editor or an unhelpful error message (core dumped in C, is great example).

    I’m in the Eastern time zone. Shoot me an email at <my username>@fastmail.com if you’d like to connect. I’m a heavy Mac and Linux user. I also used to be a teaching assistant at a Canadian university. My biggest pleasure teaching there was amazing students with terminal shortcuts and showing them how fast things can be done that way, but it sounds like you’re comfortable already, which is great.

    1 vote