Live data from Hacker News

Teach Yourself Computer Science

teachyourselfcs.com

181–190 of 273 posts

Re: Teach Yourself Computer Science

#181

One thing I'm always amazed by when casually talking to people about what I do is how they don't think they can do it. Many people think that software engineering and programming are some inscrutable thing. Sometimes I try to tell them that it is nothing special, it doesn't take a mega genius or math expert to do it. That the most important skill is just being able to solve real problems, soft skills and breaking pro…

Disagree. You need very good, structured, abstract thinking. Most people don't have that. Even many developers don't have that or aren't very good at it.

Re: Teach Yourself Computer Science

#182
I feel like the hardest part of modern software engineering is systems architecture. I've pretty easily picked up everything on this list that I've touched, but I still don't know how to organize systems. Is this just me? (if not, then I feel that this site misses the most important part of the discipline)

Re: Teach Yourself Computer Science

#183

One thing I'm always amazed by when casually talking to people about what I do is how they don't think they can do it. Many people think that software engineering and programming are some inscrutable thing. Sometimes I try to tell them that it is nothing special, it doesn't take a mega genius or math expert to do it. That the most important skill is just being able to solve real problems, soft skills and breaking pro…

There is a steep learning curve to go from scripting out some solutions, to understanding good design patterns for production quality code, and to run and deploy an application. I have a non-technical BA degree and it has taken me years to feel competent at building software, and every day I have to push myself to learn new things. And the learning is often "two steps forward, one step backwards." It's not for everyone.

> Rant done, it's just frustrating that people limit themselves like that.

"If I can do it, so can you" isn't a fair judgement. Everyone is different, and CS/programming has many complexities that not everyone is interested in putting in the time commitment to learn it.

For me, with time and experience it has become easier to put a solution together, but it still not easy work and many times I am mentally exhausted by the end of the day.

Re: Teach Yourself Computer Science

#184
post #182

I feel like the hardest part of modern software engineering is systems architecture. I've pretty easily picked up everything on this list that I've touched, but I still don't know how to organize systems . Is this just me? (if not, then I feel that this site misses the most important part of the discipline)

After my first prototype(s) of system I start reviewing design patterns with goal to identify how my prototype(s) are similar to various design patterns, then I start looking at opensource projects with similar design patterns, eventually I see the righteous path.

Re: Teach Yourself Computer Science

#185
post #180

One thing I'm always amazed by when casually talking to people about what I do is how they don't think they can do it. Many people think that software engineering and programming are some inscrutable thing. Sometimes I try to tell them that it is nothing special, it doesn't take a mega genius or math expert to do it. That the most important skill is just being able to solve real problems, soft skills and breaking pro…

> the most important skill is just being able to solve real problems, soft skills and breaking problems into parts. As well as the ability to self learn and research. Seeing a very non-technical friend of mine being completely immersed in games like "Factorio" and "Satisfactory" where the entire game is essentially just putting constantly more complex and valuable resources together in automated ways is fascinating t…

God, yes, all the wasted potential out there hurts my soul.

Re: Teach Yourself Computer Science

#186
post #182

I feel like the hardest part of modern software engineering is systems architecture. I've pretty easily picked up everything on this list that I've touched, but I still don't know how to organize systems . Is this just me? (if not, then I feel that this site misses the most important part of the discipline)

Because that is the the part of software engineering which needs the most experience and general knowledge. There is no way around it. After all you need to know the constraints around a system before even building it and that is only possible if you have seen it before. It can help to study others people work before starting a project in a similar domain.

Re: Teach Yourself Computer Science

#188

One thing I'm always amazed by when casually talking to people about what I do is how they don't think they can do it. Many people think that software engineering and programming are some inscrutable thing. Sometimes I try to tell them that it is nothing special, it doesn't take a mega genius or math expert to do it. That the most important skill is just being able to solve real problems, soft skills and breaking pro…

Realistically, the amount of time it would take to teach yourself CS is immense. It doesn't take genius, but it's a ton of work. So when people think "they can't do it" they might be right from a life/work/time standpoint. I know many people that have tried to get into it and it's extremely daunting.

To learn anything, on your own, self directed, is hard for any subject. I think programmers and devs underestimate the amount of time they spend on "getting good". It doesn't feel hard when you got into it in high school, got a 4 year degree, then spent 10 years in the industry. But if you're 26, working in real estate and have a significant other, it's a huge ask.

Re: Teach Yourself Computer Science

#190
post #32

Has anyone here learned a subject by going through one of these "teach yourself" lists? I've learned most of what I know about computers on my own, but it wasn't from following a list of textbooks. And when I've tried to follow a course like this for other subjects, despite my initial interest, I've found myself unable to make it through more than a couple chapters of the first textbook before running out of steam. B…

I have used similar lists to go from almost entirely self taught to having finished a half dozen CS and FP courses at my own pace. At one point in my life I was keeping up a GitHub streak every day by just pushing a couple exercise answers to a private repo. After a while, I really had to go looking to find challenging enough work to keep me engaged. Books with homework like SICP, FP in Scala, Let Over Lambda, Softwa…

There's an app you may enjoy called Loop Habit Tracker. I used it to keep track of streaks for things I couldn't as easily track through other means. Its pretty amazing how just seeing your streaks can be so effective in building habits.
Post reply on HN