I definitely relate with the author a lot. I have ADHD and getting in the flow of programming feels like a monumental task that makes me feel extremely dumb. I think the issue is that there are too many low-quality programming resources, and the author should have asked for help. You won't have a personal mentor for free, but there are dozens of people in support channels to help you learn, all you have to do is ask.…
It's interesting you say that math is blindly following steps. I have the opposite experience, that math is an exploration of concepts and how they relate to each other - much like programming! Blindly following steps, whether in math, programming or anything else, does indeed sound unrewarding.
Coding Is Hard
81–90 of 170 posts
Re: Coding Is Hard
#82In my experience it’s not supposed to be that hard, unless you’re working at the cutting edge or on really hard problems. But from what you’ve written it seems like you’re struggling with basic stuff. Maybe you’re still lacking fundamentals? Seems like your strategy so far has been to grind tutorials and crash courses. They will make you feel like you’re learning a lot in a short time but in the end you’ll still not…
The author says he struggled with concepts that are “easy” or supposed to be. In my experience of coding since 6th grade and having been in the industry for quite some time, it’s difficult to say something is supposed to be “easy” or “hard”. The author doesn’t give many concrete examples so it’s possible he is just assuming certain things should be super easy… A lot of programmers I meet love to claim they don’t stru…
Bugs have been found in production binary search.
Skipping bubblesort, I think quicksort is easy to implement, if you know Hoare's fp insight (I remembered it, but had to check it was him). Making a version that is both efficient and correct may be harder for me... Similar for Boyer-Moore substring matching (I remembered their names!)
Re: Coding Is Hard
#83Earlier quoted context omitted.
The author says he struggled with concepts that are “easy” or supposed to be. In my experience of coding since 6th grade and having been in the industry for quite some time, it’s difficult to say something is supposed to be “easy” or “hard”. The author doesn’t give many concrete examples so it’s possible he is just assuming certain things should be super easy… A lot of programmers I meet love to claim they don’t stru…
Theory: "imposter syndrome" is simply seeing the truth. No one lives up to the social conception. Einstein needed help with mathematics. The realistic perspective is the curiosity of a scientist; the humility of a mortal. Knowing the premises does not automatically imply you know all the consequences... even though it "should". Bugs have been found in production binary search. Skipping bubblesort, I think quicksort i…
Could you please provide more information on this?
Re: Coding Is Hard
#84Turns out after you spend a decade solving problems and creating/maintaining products that “coding” is probably the least difficult part.
These days I’m relieved when a task involves just some rote coding rather than racking my brain stuck in a debugging breakpoint for 3 hours to change 5 lines of code to get it to work correctly.
Re: Coding Is Hard
#85Earlier quoted context omitted.
Theory: "imposter syndrome" is simply seeing the truth. No one lives up to the social conception. Einstein needed help with mathematics. The realistic perspective is the curiosity of a scientist; the humility of a mortal. Knowing the premises does not automatically imply you know all the consequences... even though it "should". Bugs have been found in production binary search. Skipping bubblesort, I think quicksort i…
> I think quicksort is easy to implement, if you know Hoare's fp insight Could you please provide more information on this?
You pick a number in the list, then put lesser numbers into a left-list, and greater into a right-list. Recurse.
It's very slow as intuitive, simple and elegant fp, because it's creating new lists like crazy; but a mutable, in-place version (e.g. in C) is super fast. Maybe the origin of the folklore "learn fp to be a better coder, not to code fp"? I don't think he expected it to be so good; he was just doing him. A very smart man.
Re: Coding Is Hard
#86Earlier quoted context omitted.
> It's at most a signal for whether or not they remember algorithms 101 or some leetcode exercise, but knowing that they do remember isn't really useful to me For bubble sort? Do you really think anyone should have to remember an algorithm to write a quadratic time sort? All you have to do is "compare and swap" and loop through until you are done, this is way easier than Fizzbuzz. This is only hard if you have a hard…
Every technical thing you know is informed by your practice in an area. There's a lot of roles where you don't even have to think about which algorithm is implemented behind your favorite sort method. If you work in a role like that for 10 years, bubble sort becomes "which one was that again"? Engineering is about solving valuable problems. Solving some of those problems requires obsessive control over (and selection…
GPs bubble sort was obviously just an example, effectiveness of the algorithm or wether there’s ever need for implementing it by hand is irrelevant.
Re: Coding Is Hard
#87Earlier quoted context omitted.
i feel very sad that this is a thing. in programming you should always have a feeling of absolute agency. there is no pile of crap deep enough you cant peek under. no bug you shouldn't be able to find, given enough time. the problem should be that maybe it doesn't make sense to so do in a given context, not that you couldn't choose to do that.
> there is no pile of crap deep enough you cant peek under. no bug you shouldn't be able to find, I mean, yea, technically? But when the codebase gets very big, it can become intractable to chase every issue down. > given enough time. Okay sure. One often isn't given enough time though, if it's for a job.
Re: Coding Is Hard
#88I believe that stuck feeling, the helpless head banging feeling, is your brain forming new connections and breaking old ones. In other words, learning. That’s where the experience points are. Accept the feeling of being dumb and the reality of being smart, mixed together, and you’re advancing for real.
Re: Coding Is Hard
#89> That's when I decided that I didn't need to go to college. I could just teach myself, for free, through all these online resources. > I went through all the tracks, from basic HTML (again) to JavaScript and even Ruby amd Python. And I was super proud of myself for doing just that. I then started this 2-day python crash course... > It's been 10 years since I first started learning how to code. And I still struggle w…
I still struggle after 15 years into programming, and I never published or finished anything because of "judgement anxiety". I waste days, weeks, months writing and rewriting code and then I decide to abandon it because "other developers are going to see how shitty of a developer I am and it'll jeopardize my reputation forever".
Re: Coding Is Hard
#90It's a mandatory class at CMU for anyone who gets near computers. They have like 2 or 3 versions of it, designed for different departments (with minor differences, in my view). The CMU undergraduate students were benefitting from this class since 1998. Now, usually abridged, versions are being taught at all major CS Departments.
There are several free versions of the class available online. Here is a Fall 2017 version, with video lectures [2]
[1] https://www.cs.cmu.edu/~213/
[2] http://www.cs.cmu.edu/afs/cs/academic/class/15213-f17/www/sc...