we meet many people who would like to train in web development and launch a new career but simply don’t know where to start. Should they learn to code? Get experience at a startup? Come up with an idea for their own business?
When you’re not in the tech scene, it can seem almost impenetrable, we should know. But in this post we’re here to tell you it’s really not so hard to get the skills you need to become a programmer if it’s something you really want to do. With the right support, motivation, knowledge and experience your career in tech is within arm’s reach.
In this post we’re going to discuss first what steps to take and in what order to take them when you’re first starting out, and then we’ll provide a list of excellent places you can learn to code to get that brand new career in motion.
Want to learn to code? Here you'll find what to learn, where and how to get your new career off to a flying start.
Don’t let Kate Ray’s hilarious post on TechCrunch put you off your dream of becoming a web developer, have a read of our five steps on how to learn to code and get into the tech scene.
1. Have A Goal
Decide what you want to create. Do you have an idea for the next big social network? Do you have an idea for a great app? A useful tool that you’ve always needed and not found anywhere? If you think there’s a need for it and it doesn’t already exist, you can be the one to create it. Your app might be something that your family / job / journey to work has inspired you to create. For example, top model and longtime coder Lyndsey Scott created an app for her ‘book’ - the portfolio of photographs, campaigns and experience that models take along to fashion castings to give casting directors an idea of what they’ve done before. The app is called iPort, which allows models to upload their ‘book’ or portfolio onto an iPad. She said:
‘I built that app because it was something I personally needed,’ she said. ‘My book always ends up looking terrible, the books fall apart, the pages are tearing, it’s dirty, and it’s a mess.’
If you’ve noticed a gap in the market or a need that hasn’t yet been met, that’s where your app or website could come in.
2. Learn To Code
Martin Ramsin our CTO and co-founder at CareerFoundry first learned to code usingCodecademy and from free tutorials. He found these online resources helped him with learning syntax but found the real difficulty occurred when he was trying to find out which tools to use, how to deploy, understand Git etc, in other words how to work as a web developer. Raffaela - CareerFoundry’s CEO and co-founder - and Martin founded CareerFoundry based on these observations as they realised that students need more than just tutorials to learn web development, they need the support and expertise of someone who has already been there. It is for this reason that our mentors are at the centre of everything we do. While you are learning to code it’s crucial to have someone you can ask direct questions to about the small, fiddling things to do with programming, but what’s also invaluable is having someone on-hand who can give you advice in your career, help you build a portfolio or find work. We put together a list of 20 ways you can learn to code, so have a read and find out which option is best for you. At the end of this post we'll also be reviewing the best online and offline schools for learning to code.
As David Shariff, Senior Engineer at Yahoo told us: "Don't settle for knowing a concept, roll your sleeves up and dig as deep as you can."
3. Google For Solutions
Someone once told me that when you’re learning how to program you really learn how to Google stuff like a pro. This is a key skill as a developer. All of the answers you need to any question you might have you will find online, but knowing HOW and WHERE to find them is the touch part. You need to learn exactly which search terms are going to get you the answers you need, whether you find them on GitHub orStackOverFlow or on some obscure forum. When you understand how to Google for things you’ll find learning code will be much faster. It is part of the learning process to get from problem to solution in as little time as possible - and when you are under pressure in a real, working environment this skill will be invaluable.
4. Copy Cool Things
Copy cool things you find on great websites like widgets, videos, parallax images etc. (do view source on a page). Add it to your code. Then try to understand what it is doing. This is a great way to learn any new skills and impress your friends by having something advanced to show at a relatively early stage in your learning. Websites like TryRuby are great for practicing what you’ve learnt directly in your browser without having to download any software.
5. Showcase Your Work
When you are pitching to do a job as a web developer you’re not asked to show your certificates, you’re asked to show what projects you have been part of creating already. This is why it’s really important to build up a portfolio of work - websites, apps, code, to show in your interview. You may also be asked technical questions in your interview, so it’s good to be prepared - read up on websites like StackOverFlow, ask questions on there and answer questions if you think you can. You’ll be building up a profile and reputation while you’re doing it. The best way to showcase your work to employers is to set up your Github page and show your projects from there.
What's the difference between programming languages?
Ruby
The whole point of Ruby was to be a coding language that is simple and easy to code. It was designed as a scripting language for building websites and mobile apps and is dynamic and object-orientated. Ruby powers the Ruby On Rails framework which is used on heaps of websites, including Groupon and GitHub. Ruby is considered a good starting language for beginners.
Java
Developed by Sun Microsystems Java is a class-based, object-oriented programming language. It's a super popular programming language, a standard for enterprise software, web-based content, games and mobile apps, as well as the Android operating system. The way Java is designed is so it can work across multiple software platforms, so a program written on Mac OS X can also run on Windows.
JavaScript
Netscape developed JavaScript as a client and server-side scripting language. It’s functional across a variety of web browsers and is considered essential for developing interactive or animated web functions. It is commonly used in game development and writing desktop applications.
CSS
Cascading Style Sheets (CSS) is a style sheet language used for describing the look and formatting of a document written in a markup language. The language can be applied to any kind of XML document, but is most often used to style web pages and user interfaces written in HTML and XHTML. CSS is a cornerstone specification of the web, and almost every web page use CSS style sheets to describe their presentation.
C++
C++ is an intermediate-level language with object-oriented programming features, originally designed to enhance the C language. C++ powers major software like Firefox,Winamp and Adobe programs. It's used to develop systems software, application software, high-performance server and client applications and video games.
Python
Python is a high-level, server-side scripting language for websites and mobile apps. It's considered to be a relatively straight forward language for beginners due to its readability and compact syntax, meaning developers can use fewer lines of code to express a concept than they would in other languages. It powers the web apps for Instagram, Pinterest and Rdio through its associated web framework, Django, and is used by Google, Yahoo! and NASA.
Where can I learn to code?
Now if you talk to any web developer they will assure you that they’ve been tinkering around on computers since they were in nappies, or even before. Maybe that’s true, but just because you haven’t doesn’t mean you can’t learn now. It’s easy to feel intimidated by technological language or jargon, but see it as a challenge and don’t feel disheartened; it is never too late to learn and there are a number of fantastic resources out there, both paid for and for free, to get you to where you want to be: working as a web developer. And the pay off will be worth it, for once you’re working freelance or in a small team as a programmer you’ll have the opportunity to create beautiful tools, apps and websites that impact on people’s lives. Quite an incentive, eh? But where do you start? Do you try to do it alone? Do you ask friends? Look online? Sign up to a course? The numerous options can be a mindfield to someone new to the industry. Here are just a few that might help make that decision a little easier for you.
Online schools
Well we weren’t going to leave ourselves off the list, were we?! Here at CareerFoundry we teach skills in Front and Back End Web Development for complete beginners. With the help of our expert mentors, students take daily classes, submit assignments and build a working portfolio they can submit to prospective employers upon completion. Once a week students take part in an hourly Skype chat with their mentor to go over any queries or questions they might have faced over the course of the week and resolve any technical issues. Our mentors are people who have been working as programmers for years in startups, conglomerates and freelance and bring to the table their experience in both programming and working as a web developer in the real world. By teaching this way we are educating our students not just in the nuts and bolts of coding but in how to get work in the field as well.
Treehouse, similarly to CareerFoundry, is an online education provider, which works by providing students who are learning to code with a rich library of over 600+ videos organized into specific learning tracks. To accompany these videos they have created interactive quizzes and code challenges to keep the students engaged. Treehouse provides classes in HTML, CSS, Javascript, User Experience, as well as Back-End development in Ruby, PHP, iPhone and Android applications. The videos are very well put together with classes taught by experts in each field and are engaging and entertaining to watch. The only downside is that students do not get personal interaction with the teachers, they just follow the instructions on the screen to complete tasks.
BLOC sells itself as an online bootcamp and, like CareerFoundry, uses mentors to boost student’s learning. Again, like at CareerFoundry, students video chat with their mentors and together create a schedule for their learning that fits in with the rest of their work, life or studies. Students also learn to code in real-time with a mentor through screen sharing. When a mentor is unavailable, students are able to access student advisors during ‘office hours’ who can help to tackle questions or queries about the course. BLOC is a great place for wannabe entrepreneurs to kick off their startup careers, with around 50% of the students currently on their books already with their own companies. With the use of games and badges students are kept motivated and by the end of the course students will have built as many as 8 apps which is a pretty impressive portfolio of work to show future employers. Prices range from $1000-1700/month depending on the course you take.
The best thing about learning to code with Codecademy is its console. This console combines the two most important aspects of learning to code: the text editor and the execution of a website. The console allows students to learn to work with real code and see how it performs immediately, giving them the chance to see straight away how their code functions in the real world. This is a step beyond learning from video tutorials as students are interacting directly with the code from day one. It also gives them a feel of how it would be to work as a programmer in a regular job.
Thinkful offers video lessons combined with challenges and active forums to keep students motivated while they learn to code. And what sets them apart from many other online options (apart from CareerFoundry!) is their mentors. Thinkful has created an online school where students not only learn to code using online resources, they also recieve support from an active community, including a dedicated mentor, and regular office hours. Similarly to CareerFoundry, Thinkful are among the new breed of online educators who are incorporating "blended learning" into their curriculum - online resources, tools, challengs and games with real life mentors to guide and instruct you as you go, to keep you focused, motivated and always moving forward in your learning.
Offline schools
General Assembly are the most well-known, offline, location-specific school for learning web development. With 8–12 week, part-time, evening and weekend programs students can learn a range of courses, with full time classes including product management, web development and user experience design. The schools also run one-off one or two day workshops for example, Programming for Non-Programmers Bootcamp or Understanding Google Analytics. Although GA has introduced online alternatives to their offline programs, which include live streaming of classes to build up your own video library, the offline courses require you to be in one of the cities where the schools are actually located. And, with only one in Europe (London) this could prove to be a logistical problem for many wannabe students.
As specialists in Ruby on Rails, Dev Bootcamp claimed in 2012 that 90% of its graduates (many with zero experience of coding before they started) were hired within two months of completing a course with them, with average starting salaries of over $80,000. The offline coding bootcamp has schools in San Fransisco and Boston and prices start around $12,200 for 9 weeks, and although the statistics look great, the location and price could be off-putting for many. Scholarships for women are also available.
Based in London, Makers Academy is a 12-week intensive study program that focuses on attracting only the top talent in the field. On completion of the course, students are introduced to prospective employers from London's top technology companies looking to hire junior developers. The very selective nature of the course could be off-putting to beginners - although the course does embrace those who don't know how to code but show potential - and the pricetag is certainly on the higher end of the scale at around £8,000 (including a non-refundable £800 deposit)for a 12-week fulltime course. Like Dev Bootcamp they do offer special scholarships for women to try to encourage more women into the field with a £500 discount.
So what's your next step? Do you need to get some experience at a startup, buckle down and learn to code, or start putting together a portfolio for future clients? Maybe you need to read some more about the subject, in which case, check out this interview with our web development mentor Edward, who can tell you all about how he works with his students, keeping them motivated while learning about Ruby on Rails. Or, if you think you're ready to start learning to code from experts in the field go to our web development course page and enroll now.