• Activity
  • Votes
  • Comments
  • New
  • All activity
  • Showing only topics in ~comp with the tag "learning". Back to normal view / Search all groups
    1. Should C be mandatory learning for career developers?

      The year is 2025. The C programming language is something like 50 years old now - a dinosaur within the fast-moving environment of software development. Dozens of new languages have cropped up...

      The year is 2025. The C programming language is something like 50 years old now - a dinosaur within the fast-moving environment of software development. Dozens of new languages have cropped up through the years, with languages like Rust and Go as prime contenders for systems-level programming. Bootstrapping a project in C these days will often raise eyebrows or encourage people to dismiss you out of hand. Personally, I've barely touched the language since I graduated.

      Now, with all that said: I still consider learning and understanding C to be key for having an integrated, in-depth understanding of how computers and programming really works. When I am getting a project up and running, I frequently end up running commands like "sudo apt install libopenssl-dev" without really giving it much thought about what's going on there. I know that it pulls some libraries onto my computer so that another program can use them, but without the requisite experience of building and compiliing a library then it's kind of difficult to understand what it's all about. I know that other languages will introduce this concept, but realistically everything is built to bind to C libraries.

      System libraries are only one instance of my argument though. To take a more general view, I would say that learning C helps you better understand computers and programming. It might be a pain to consider stuff like memory allocation and pointers on a regular basis, but I also think that not understanding these subjects can open up avenues for a poorly formed understanding about how computers work. Adding new layers of abstraction does not make the foundation less relevant, and I think that learning C is the best avenue toward an in-depth understanding of how computers actually work. This sort of baseline understanding, even if the language isn't used on a regular basis, goes a long way to improving one's skills as a developer. It also gives people the skills to apply their skills in a wide variety of contexts.

      I'm no expert, though: most of the programming I do is very high-level and abstracted from the machine (Python, Haskell, BASH). I'm sure there are plenty of folks here who are better qualified to chime in, so what do you think?

      39 votes
    2. How hard would it be to learn to code a Discord bot?

      I've got a notion to put some of my extra energy into learning to code. I'm familiar with EXTREME basics - I did some coding in BASIC and Python when I was younger ("Hello world" type stuff, and...

      I've got a notion to put some of my extra energy into learning to code. I'm familiar with EXTREME basics - I did some coding in BASIC and Python when I was younger ("Hello world" type stuff, and some futzing around with my Ti calculators programming capabilities) and while I had a pretty good knack for it I never developed it further.

      I'd like to use this as a chance to create something useful for me - a discord bot for my server. We have a handful of bots doing a few odds and ends, and I'd like to try and work something out to consolidate things. That's getting a bit ahead of myself though - initial scope would be simple: have the bot do a simple task like counting +rep points, or something silly like telling a joke.

      I don't really have any idea of where to start - what resources I need, what language to use, or really anything about how this all works. Any assistance at all would be welcome!


      To be clear - I want to learn to code, and specifically I want to learn in a way where it is immediately applicable and useful in a context I care about.

      20 votes
    3. Any good Youtube channels on learning Data Structures and Algorithms, especially the math part?

      Hello Tildes, I am currently taking DSA in college and struggling a lot with the math and algorithms. Recently had to solve Karatsuba questions and I don't even know what I wrote down on the...

      Hello Tildes,

      I am currently taking DSA in college and struggling a lot with the math and algorithms. Recently had to solve Karatsuba questions and I don't even know what I wrote down on the paper. I have been trying to look for videos on this and only really came away with a vague understanding.

      What I've noticed is that I struggle with solving the math part of the questions.

      For example: "Describe a divide and conquer algorithm to compute the square
      of an n-digit integer in O(n log3 5) time, by reducing to the squaring of five [n/3]-digit
      integers"

      I have zero clue how I am supposed to understand the latter half of the question. It makes no sense to me beyond I am supposed to be multiplying squared numbers. How do I even begin to turn this into an algorithm? What is the solution even supposed to look like?

      Needless to say, I've struggled with math my entire life and I've been trying for years to be decent with it, and I have nothing to show for it.

      So, do you have any recommendations that could simplify the math needed for DSA? Videos are preferred but I will textbook recommendations as well.

      Thank you, and have a good day!

      18 votes
    4. Recommendations to learn SQL?

      I read the AskReddit thread on "What costs less than $100 that changed your life?" (link unavailable since I'm at work) but someone responded "SQL" - jobs just open up that make a ton of money. I...

      I read the AskReddit thread on "What costs less than $100 that changed your life?" (link unavailable since I'm at work) but someone responded "SQL" - jobs just open up that make a ton of money.

      I did a cursory search on Indeed and holy moly they were right -- SQL jobs get easily 2x what I make now. I'm pretty good at Excel and that sort of thinking, so I was thinking I'd try taking a class.

      Do yall have any recommendations as to a good course to take in SQL, preferably online, preferably free or cheap? I'm willing to pay a bit if it'll mean I can make a lot more, but I'm currently not making a ton, haha.

      Any responses welcome, including ideas as to how to break into like, tech-oriented fields as well.

      9 votes
    5. Programming/software design practice?

      So, I've been going through Project Euler and solving problems as a way to brush up on my programming abilities, but it's mostly a math-focused set of problems. Which is cool..they're nice little...

      So, I've been going through Project Euler and solving problems as a way to brush up on my programming abilities, but it's mostly a math-focused set of problems. Which is cool..they're nice little puzzles that get the gears turning...

      BUT I'm wondering if anyone here has suggestions for a website/course that teaches software design in a piece-wise way. Like... each problem is a nugget of software design that builds off previous problems and eventually you're creating an entire application utilizing different algorithms/design patterns/data structures/etc.

      I'd appreciate any resources similar to that idea. Thanks!

      7 votes
    6. How do you go from "knowing" a programming language to actually making useful software?

      I'm in a bit of a rutt with my journey to learn how to write software, and I really have no idea where to go from here. I've taken a bunch of software engineering courses on edx.org, and I've done...

      I'm in a bit of a rutt with my journey to learn how to write software, and I really have no idea where to go from here. I've taken a bunch of software engineering courses on edx.org, and I've done a few personal projects with what I've learned, but I still don't know enough to be able to contribute to open source projects or make anything useful.

      TL;DR
      How can I learn to actually make things?

      28 votes
    7. Self-directed learners of programming, sysadmin topics and so on: what is your approach to material that is too advanced?

      First post: hello Tildeans! In fairness, the title question no doubt applies to those on traditional courses/paths too - such is software. Anyway -- in my experience, reading technical material...

      First post: hello Tildeans!

      In fairness, the title question no doubt applies to those on traditional courses/paths too - such is software.

      Anyway -- in my experience, reading technical material which is too advanced is without a doubt the most intellectually confusing, emotionally damaging, and personally rewarding part of learning about software development. How about you?

      I started basically from scratch last September without any knowledge about programming or Linux except a very brief stint in 2010. I'm a somewhat disorganised person (to say the least), and my learning habits have reflected that: I've followed my nose and impulse, reading pretty much whatever I've felt like. But I've ended up with a presumably ridiculous ratio of hours reading about code vs hours actually coding.

      I'm a lazy person, so I'd rather sit and struggle with something I am definitely not ready to understand than go sit in front of a REPL, working from the ABCs til I can do the A-Zs. But the longer I look into things, and the more I play, the more I realise how much coding is like an instrument -- you really do have to just sit down and practice your damn scales! My experiences also support the argument for that 'T-shape' style of mastery (learn one thing very well, then branch). 20-odd Project Euler problems in a week or two has taught me far more than several months half-reading or half-listening to online material.

      (Though, I think my 'inverse-T' approach simply has it's own set of trade-offs, rather than being plainly weaker, but that's for another discussion...)

      The most ridiculous thing about this field is that there is no end to things you've never heard of: and I hate not having heard of things. My usual style when getting into a new obsession is to read very widely, but it feels like this is at best wasted effort here, if not actively counter-productive. It takes just a few clicks through HackerNews (or say, a read of some of the comments on Systems Programming topics) to find a paragraph that is entirely impenetrable to me. Man, that pisses me off. I think maybe as an ego-defense thing, I've always tried to get a 'gist' of the conversation or topic, but I reckon now this probably just breeds half-formed misunderstandings at best (Alexander Pope, "a little learning is a dangerous thing" etc etc).

      Over the past couple months I've made far more visible progress than in any before, and I think a large part of that is learning how to admit when I am completely unable to access some sentences written in English, and how that's totally fine. My path is a lot clearer, and a visceral notion of sub-goals and stages of learning is a really nice thing to have. It's very relaxing to skim a blog post that goes completely over my head and think 'NBD'.

      So, what are your experiences? Blocked by hubris/a short attention span like me? Or perhaps the opposite problem - finding you could grasp way more than you gave yourself credit for, after sticking too long with what you already knew? (These questions definitely intersect with things like perfectionism and imposter syndrome.)

      I'm really curious to hear how you've dealt with things you feel you 'should' understand -- or how you manage the sheer volume of potentially-useful information out there (RSS, Pocket, something else?). Thanks for reading.

      14 votes
    8. Does anyone have tips or tricks for self studying / preparing to get a CCNA?

      Hey everyone, I've decided to start studying to get my CCNA. My books are showing up Monday and I'm really excited. I'm going to shoot for self studying and prep for the testing. I think I can do...

      Hey everyone, I've decided to start studying to get my CCNA. My books are showing up Monday and I'm really excited.

      I'm going to shoot for self studying and prep for the testing. I think I can do it as I've always thrived in a more self paced learning environment (I also have no money for the classes).

      I'm just wondering if anyone has any tips, supplemental material, etc they could recommend? What was hardest for you and what was easiest? What did you spend too much time studying and what didn't you spend enough time on?

      6 votes