How to Learn to Code: THE INTERMEDIATE STAGE [2018]
Learning to code can be fun and easy starting out, then hitting that intermediate stage turns it into a world of difficulty and annoyance.
In the video above I go into topics that you can look into, once you’ve finished those beginner courses. Below I’ve even added some direct resources you can use.
Follow your interests.
Practice and Pre-made Resources
There’s an endless amount of practice resources on the internet, you’ll just have to dig through to see what you like best.
- Reddit Daily Programmer
- HackerRank
- Github Community Projects with Solutions
- Learn by Doing: The 8 Best Interactive Coding Websites
- Coderbyte Challenges
Data Structures
Data Structures are also an abstract idea when learning to code, and they can be created in multiple languages.
APIs
APIs allow you to plug in to some of your favorite websites and applications and grab data from it to use in your own programs. I’ll link a few popular APIs below.
- How to Use APIs: A Painless Introduction + Tutorials
- Spotify Web API (mentioned in the video)
- OpenWeatherMap API (to pull weather data from)
Object-Oriented Programming
This is a pretty abstract idea, that multiple languages are based off (Java, Python, Ruby, C++, and more). It turns out that many beginner courses don’t actually take advantage building objects in object oriented languages. Instead, they first teach you variables, loops, if-statements, etc… s it make sense. Now is the best time to practice 🙂
Due to the very abstractness of it, the resources I list may not cover everything.
For more specific tutorials on how to create them, try searching “How to make objects in [insert_language]
Community
- web_design subreddit
- webdev subreddit
- javascript subreddit
- python subreddit
- artificial intelligence subreddit
I think you get the point. If you’re interested in a specific field, or learning a specific language, chances are there’s a community/subreddit for it.
Git
Version control. The tool you would use to create a better workflow as you code, especially if you’re coding with others (imagine how hectic that can get). Luckily Git is a technology that let’s you keep track of your software’s version, and work separately when working among other coders.
Tech Stacks
So I didn’t go into detail in the video because I felt it would confuse you. A technology stack is simply all the languages, frameworks and software used to create a product. For example, let’s look at the technology stack for a website called AngelList.
If you asked someone what language AngelList is made in - they would probably answer Ruby, but truth is - there are so many more technologies involved as you can see in that list.
So, if you want to mimic or create a similar website, you would want to go in and look at the Rails framework, learn JQuery etc…
There’s also a lot of common Stacks. For ages, most of most of the internet used the LAMP (Linux, Apache, MySQL, PHP) stack, but now the MEAN (MongoDB, Express.js, Angular.js, Node.js) stack is becoming more common.
Share your journey
Make a blog and teach others along the way. If you're learning web development, why not make the website yourself with Wordpress or Github Pages?
Addition Ideas (don’t feel overwhelmed, there is no wrong path)
- Learn functional programming. Languages like Scheme. It’s a completely different style of coding. Disclaimer: it might not have much application use to you right now, but will open up your mind to a new perspective.
- Develop an Alexa Skill. They’re becoming quite popular.
- Learn something new on Udacity that is more specific than just a programming language (artificial intelligence, REACT Developer, Python automation, natural language processing, virtual reality)
I hope I could help relieve some of your stress as you finish those beginner courses. There's a lot to learn, and it's going to be an exciting journey for all of you!
<3 you Steem.
▶️ DTube
▶️ IPFS
Awesome video, Brad. Really appreciate the tips and links here. I'm an old-school programmer who's a bit lost with the new trends so I still often feel like a programming newbie.
Your metaphors are crazy lol, but perfect in describing those moments when you really don't know what's going on or what to do next.
Awesome, Great tips to build experience for beginners.
RESTEEM
Hi bradmitchell,
LEARN MORE: Join Curie on Discord chat and check the pinned notes (pushpin icon, upper right) for Curie Whitepaper, FAQ and most recent guidelines.
Congratulations @bradmitchell! You have completed some achievement on Steemit and have been rewarded with new badge(s) :
Award for the number of upvotes received
Click on the badge to view your Board of Honor.
If you no longer want to receive notifications, reply to this comment with the word
STOP
To support your work, I also upvoted your post!
Do not miss the last post from @steemitboard!
Participate in the SteemitBoard World Cup Contest!
Collect World Cup badges and win free SBD
Support the Gold Sponsors of the contest: @good-karma and @lukestokes
Great post! I do recommend Harvard CS50 to those who wanted to start learning programming from scratch. It helps a lot especially understanding how the programming fundamentally works.