Programming something entirely new can be a fun and challenging experience. For many, it’s a career that both pays well and gives the individual the opportunity to do something meaningful for others. At other times, trying to get the job done isn’t a smooth process. While there’s a sense that developers will always know how to fix issues or address certain problems, there are times when they’re stumped and need help. “The biggest woe developers face: not knowing what we're doing,” Art Gillespie, director of engineering at Udacity, which offers online programming classes, said in an interview. “The funny thing about being a software engineer is the unavoidable fact that, most of the time, your expertise and experience is irrelevant to what you’re working on. That thing you have to accomplish today requires some library or algorithm or language or technique that you just don't know. Yet. 'Woe' doesn't do it justice.” Considering all that, it’s perhaps no surprise that a slew of resources have cropped up on the Web to offer developers help in their times of need. Whether it’s a simple question or a detailed one, the following resources have helped Gillespie and others quickly get answers and solutions to some of the most vexing programming woes:
As Gillespie noted, it’s not always easy for software engineers to admit that they don’t necessarily know what they’re doing in every case. That’s where Code Academy comes in. Code Academy is a service for budding developers (or those who already know what they’re doing and want to beef up their skills) to learn coding basics across a range of languages. While Code Academy likely won’t help the seasoned expert who is intimately familiar with Rails, SQL, and other languages, it could assist those who need to improve to their basic skills or want to learn a new language they haven’t yet tried out. In any case, it’s worth having a Code Academy account and calling on it whenever it comes time to learn something new.
Stack Overflow has proven a savior for countless developers over the years. Structured as a community that allows developers and others to share what they’ve learned, Stack Overflow is a go-to resource for thousands of tech pros. Stack Overflow also allows developers to post their own code, ask questions, help resolve other developers’ issues, and more.
GitHub is a repository for programming projects, as well as a wide range of information on software development. Many developers find GitHub a good place for getting solid tips on building and maintaining their projects. As Gillespie pointed out, GitHub can save developers time, since its users regularly post solutions to what seems like millions of problems. Also, the thought of thousands of people struggling with the same issues will “make you feel better about your struggles,” he added.
Code.org pitches its service toward kids and wet-behind-the-ears beginners, but it’s also useful for more experienced developers who want to quickly pick up on the basics of a new language. From there, those developers can head over to GitHub and other sites for more advanced advice and resources. For beginners just learning the very basics of programming, Code.org allows them to go through lessons at their own pace, which is a definite plus.