With Black Enterprise’s Driving Innovation Hackathon starting on Saturday, the anticipation was in the air. And since the event is all about encouraging diversity in the programming community, we wanted to get some professional opinions on the matter.
So we asked a few of our Hackathon judges to weigh in on the current situation in the tech community, and how they see people going from curious about programming to hardcore developers.
Answering questions for us is Malcolm Jones of Adobe, Mary Pryor of Urban Socialista, social media guru Mike Street, and Silicon Harlem’s Eric Hamilton, all of whom will be attending the Driving Innovation Hackathon this weekend.
What’s one thing everyone interested in programming should know?
Mike Street: Programming is FUN and helps turn you into a problem solver. Yes, it takes LONG hours and you have to really get into it, but once you have this skill set you can really open up a lot of new doors for yourself. So start learning ASAP! Visit sites like Code Academy and start learning the basics. Then find a project you can work on and get real world experience.
Malcolm Jones: Programming is a lot of fun, but it also requires great deal of dedication to honing your craft. Often times things will work/break for seemling “unknown” reasons. You have to be prepared for late nights hacking away. However, when you finally get it working, the feeling is unlike any other.
Eric Hamilton: It’s about having a natural curiosity about how things work that drives you to be a great software developer.
What should you avoid when trying to learn coding? What are the pitfalls and time sinks that will make you unproductive?
Malcolm: Don’t try to do too much in one sitting. Make small reachable goals. Get it working, refactor your code to make it better, then move on to a new feature. Don’t bite off more than you can chew. Try to do something that someone has already done first. Next try to do it better than them. Finally, try your own thing once you feel ready.
Mary Pryor: Avoid things that are too good to be true. Learning how to code without any technical background is a challenge but very rewarding and you should make sure that whatever you invest in as a learning platform has a record of results.
Eric: When learning to code avoid relying on someone to teach you the latest technology. I started building websites in 1994 and I’ve never taken a web development class. The iPhone was released in 2007. One might ask the question “How did developers learn to code for the iPhone when there were no books or classes available at the time?” Those earlier developers were never taught, they were self taught. They downloaded the iPhone SDK (software development kit) and taught themselves. It’s okay to take a crash course, but to be most effective, the student should have a passion project ready to start working on immediately.
Mike: Don’t get frustrated! Coding can be very hard but you have to learn how to be patient and how to uncover errors in your code. The more your practice the better you’ll get. But getting frustrated will lead to you not completing projects. Keep at it and always ask for help when you get stuck.
While everyone is focusing on coding as a skill, how do you think we can improve the underlying skills like mathematics, science, and critical thinking?
Mike: We have to really highlight and reward those taking up those fields of study. STEM is a hot buzz word but we still have a long way to get into getting our kids further into STEM programs. People like Neil deGrasse Tyson are helping to make science and mathematics fun and accessible and inspiring a new generation to enter into these fields of practice.
Mary: We need to get back to driving institutions and school into making these items prerequisite to students before they hit college. Math and science are important to focus on and everyone should try to brush up on this as a part of continuing education throughout their lives and careers.
Eric: We’ve got this wonderful think called the internet. The world’s information is readily available and most would rather use it to see what Kim Kardashian and Kanye West are up to. One can learn about anything and everything from Google.
How important is a college degree or certification when learning how to program and getting into the coding field?
Mike: A college degree is important but so is experience. I strongly encourage everyone to get a degree but to ALSO work on real world projects show that you can work and solve problems for real businesses.
Mary: A college degree can stand out on paper, but everything I learned about coding was self-taught, and not through college.
Do you have an inspiration or idol in the programming community?
Mike: I have to shout out (Hackathon Judge) Kyle Wanamaker from Black’s in Tech and a lead programmer a Tumblr! He’s one of the coolest guys I know and his drive and love for this space is an inspiration.
How can a small business owner use coding to improve their business or start a new one?
Malcolm: Small business owner can save THOUSANDS of dollars simply by learning what it takes to maintain a website etc. Often times, you need to contract out this work and pay someone large sums of money per hour to fix something that might take simply 20 mins to fix.
Mike: Small business owners can use coding to streamline their processes and make their businesses more efficient. For examples, small businesses could explore using MongoDB, a Non-SQL database system, to help streamline backend processes and store files in the cloud allowing them to save time and money.
Who SHOULDN’T learn how to program?
Malcolm: People who don’t like challenges. People who don’t like creating things. People who are in it just for a paycheck. You need to be in it for the experience and the journey of making something from scratch.
Eric: People with no burning curiosity need not apply. Non self starters need not apply.
Mary: Anyone that’s lazy and scared to try something new. To put it bluntly code is not for the fearful at heart. It will definitely change and aide in how you think of the world and work that you produce.