TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Ask HN: What you wish you'd known

13 pointsby markthethomasalmost 11 years ago
Compiling resources to share with developers who are just starting out or people interested in learning about programming and computer science.<p>So, the question would be:<p>What tools&#x2F;ideas&#x2F;articles&#x2F;books&#x2F;#{anything} do you wish you had known&#x2F;had&#x2F;been told etc. when you were first starting out?<p>Looking to distill all I can, so even a helpful maxim that changed how you think about programming could be really helpful.<p>Thanks all!

7 comments

productionQAalmost 11 years ago
Coming from someone who had no formal &quot;schooling&quot; in CS and really not a clue where to start, my biggest piece of advice is:<p>Literally read everything you can get your hands on. When you come across something you don&#x27;t understand, look it up, because 9&#x2F;10 times it leads you to something better than where you started.<p>I would now consider myself a fairly experienced amateur, although it took me much longer than expected to get up to speed. It took me a long time to get on the right track, if you will, and by that I mean getting a base understanding of programming in general and then on top of that, figuring out what exactly I should be learning and in what order to eventually pursue a career in Web-based Development&#x2F;Engineering.<p>I had no one close to me in the space that I could get advice from either. So I really am a raw use case.<p>That being said, I think what would have helped me the most is finding a resource that addressed all of my short comings:<p>- If I want a job, what is hot in the industry, where is it trending? (Answer: JS and Mobile)<p>- If I am interested in pursuing X, what is the first language I should take a look at, or at least some framework buzzwords (i.e. Web: Rails is&#x2F;was hot, APIs are driving the future, JS is very hot. So, Ruby, JS, maybe Python).<p>- Where should I look for go to resources &#x2F; where can I ask questions (SO, HN, etc.)<p>The biggest problem I ran into is that even after I slowing found the answers to these questions, I still didn&#x27;t know how to get started other than buying a book. However, I found that the majority of books don&#x27;t &quot;tell a story&quot; and the majority of online resources (blogs, etc.) are not geared towards absolute beginners.<p>I not only needed to understand the basic such as syntax, but I needed to understand how things fit together at a high level and the best way I found of doing so, was having a resource walk me through the baby steps of building a real-world application, from start to finish, tying in the larger picture as the end of each chapter.<p>I mean, you have to understand that someone who is brand new doesn&#x27;t even know how the backend and frontend relate to each other.<p>Basically, for beginners, even those resources that are &quot;targeted&quot; at beginners, assume too much.<p>I guess that is something to chew on, but what it comes down to is that I wish I had a resource that told the high level picture better and guided me in the right direction from day 1, as far as &quot;Where do I start if I want to learn web development, and why I am starting there?&quot; And give me a few good resources to get me going.
Jallalalmost 11 years ago
My comment will certainly not be helpful, but I think the best way to start is still to follow the most common advices you can find in a book or on the Internet. There are no shortcuts, especially when you&#x27;re an adult that cannot afford to spend as much time as a younger (because of work, family, etc).<p>To answer the question (the thing I wished I had known), I would advise you to start by learning anything that will help you for your whole career. It may be boring at first, but on the hindsight, it will be very rewarding.<p>To be more specific: - Learn to type on a keyboard. Really. I wish I had course about touch typing when I was younger (got to learn alone), and when I look around me, I notice many people still don&#x27;t know how to type.<p>- Learn Vi&#x2F;Vim. Same as above. Vim is spread everywhere, is powerful and the principles behind it are strong. Vi exists for nearly 30 years, and won&#x27;t disappear before a very long time.<p>- Learn to work on a Linux&#x2F;Unix&#x2F;BSD environment. Even if you do not use it on a daily basis.<p>- Start with a language well established (well, do not start with C++ though). Not because they are better, but they have stood the test of time, are likely to be still there for some years, and, more importantly, you&#x27;ll find quality resources&#x2F;books that will help you when you&#x27;ll stumble on a difficulty.<p>- Finish what you start. Already mentionned, but very important.<p>- Practice, practice and practice. There is no shortcut.
josephschmoealmost 11 years ago
First day:<p>Follow tutorials. Get something to compile.<p>First week:<p>Download an IDE, particularly a JetBrains product if you can. They&#x27;re really amazing, especially if you&#x27;re new to coding. Try to make something simple.<p>First month:<p>Find a friend who knows how to code. Ask for advice when you get stuck.<p>Second month: Master the debugger. Learn every single thing you can about how it works. Seriously. This will save you a ton of time in the long run. Learn absolutely everything about it, especially conditions, step into and watches.<p>After that: Write as many projects as you can - and complete them. If you&#x27;re having trouble with something, ask your friend how they might approach the problem. At this point, the biggest thing you need to learn is how to ask the right questions.
brandonmencalmost 11 years ago
Fully completed small projects trump unfinished grand designs.<p>Also: drop everything and read SICP.
techaddict009almost 11 years ago
I dont know if I should share this here or not. But will share as I got benefited a lot from it.<p>Lynda.com if you wish to start learning any kind of new programming language or using any famous software check out lynda.com for the tutorials. You may behind basic courses for the same there. Buy membership and learn out.
markthethomasalmost 11 years ago
Just to clarify, this isnt for me but for others. :)
porteralmost 11 years ago
It takes longer than you think.