Tools & Resources for Improving your Backend Development Skills
Coding on the backend will seem complicated at first – but if you stick with it you’ll grow accustomed to the process. This post covers a series of free webapps and resources for coders who want to improve their backend web development skillset. Beginners and experts alike can walk away with a newfound appreciation for coding and code management. Just be sure to keep practicing and never run away from a challenge.
Free Online Tutorials
Naturally the first place to get started would be learning from free tutorials. These guides are written by professional developers with the hopes of teaching others how to write good code. Tutorial subjects range from database management to API development among many other areas.
Google is your best friend here. If you want to learn how to build something in a particular language try searching for a tutorial. There are thousands of articles written about PHP, Ruby on Rails, .NET, and Python which cover the basics of website development.
One of my favorite resources would be the Tuts+ Code blog. You’ll find a lot of posts written on specific languages and even some about CMS engines like WordPress. Free tutorials explain how to write code step-by-step which is very helpful for new developers.
As you get more experienced you can start looking into more complicated subjects. Developers are often more than happy to share their research and this is why free tutorials are so useful. Here’s a small collection of resources for locating more tutorials:
When the going gets tough you’re likely to get frustrated and throw in the towel. Programming is hard work. It takes serious commitment and years of practice to perfect your understanding of web application development.
But throughout this learning process you will bump into problems which seem unsolvable. When you’re working alone there’s rarely anyone else you can ask to look over your code. In this case you should rely on communities of developers to help you out.
The community which should prove immensely useful is Stack Overflow. This is a free online forum of programmers who help other programmers with their problems. You can signup with an e-mail or connect directly via your Google account.
Once you’re into the site you can try searching for your problem in the search bar. This doesn’t always yield the best results, and you might instead try searching Google.
You can search for related keywords to your problem coupled with the phrase site:stackoverflow.com to limit results only to Stack Overflow. This is my go-to method for solving bugs or fixing issues with my own source code.
But if worst comes to worst you can always just open up a new thread. Click the “Ask Question” button and write a detailed title+description of the problem. You’ll typically get a response within 2-3 days. If nobody can help then you might try posting on a more niche community like Rails Forums or PHP Builder.
Free Code Fiddles
Most developers are familiar with online code fiddles. This moniker originates from JSFiddle which is a free HTML/CSS/JS code editor.
But nowadays you can find a fiddle for almost every language.
The free PHP Fiddle webapp is a very nifty program. You can run PHP commands for free in your web browser and even save them to the website. If you sign up for an account you’ll be able to edit these fiddles at a later date and share them with others. It can be a little buggy since the site is relatively new, but it looks great and the code IDE is beautiful.
Looking over the homepage for Ruby Fiddle you may notice that it’s a bit more simplified. You’re given a syntax editor right away with the option of writing some Ruby code. When you’ve completed you can either run the program or save it for future editing. By saving your code it’ll create a simple auto-generated URL which can be accessed from any computer.
Although .NET is a less popular language among web developers it still does maintain usage on Microsoft Servers which support the language. As such, .NET Fiddle is perhaps one of the cleanest and most well-designed fiddles online.
You can get started writing .NET code and immediately see how it renders in the browser. You have the option to change .NET’s language from C#, Visual Basic, or even F#. This is one of the few backend fiddles which has an “autorun” feature, which means it’ll auto-update as soon as you make any changes. .NET developers should absolutely keep this site bookmarked for cloud editing and code snippet testing.
Python Fiddle is a minimalist page with a somewhat lanky design. However it does include all the traditional features you’d expect like saving your fiddles to a personal account for sharing online. This site even has the option to import .py files from elsewhere online. Although this looks like a simple website, it’s actually very powerful and quite useful to those who want to practice Python without compiling & installing the language locally.
SQL Fiddle is an interesting web application for testing your SQL commands. This fiddle doesn’t actually create databases but it can be used to create schemas for a database. This will help when programming over any type of DB from MySQL to Oracle or MS SQL.
Finally I’d like to share one of the best online cloud editors for general web development. Cloud9 offers a free account where developers can test everything they have to offer. This includes a small amount of free server space where you can run programs in various languages(PHP, Rails, Node.js, etc).
If you choose to pay for Cloud9 services you get a lot more server space and improved server features. The site can actually behave like a cloud hosting solution and online editor for live websites. C9 is generally meant for more advanced programmers but if you’re feeling froggy try signing up for the free account and give it a test run.
Plugins & Code Libraries
Free open source code is the icing on top of the modern web development cake. Open source code can be used in any type of web project and can be edited to fit your own purposes. GitHub is the big database of code libraries where you can find almost anything.
Developers take the time to write special libraries for specific purposes – this code can be reused to save them time and help others, too. These libraries can hasten the development process for registration fields, handling file uploads, sessions, cookies, practically anything you can imagine.
Rails developers should check out Ruby Gems which is a website cataloging the best gems for Ruby. These gems can be installed into your web project so their classes/methods may be called from any file.
While searching online I also found Awesome PHP which is a GitHub repo of PHP libraries. The page lists everything in a categorized table of contents. You’ll find libs for routing, passwords, API development, e-mail, basically anything you could imagine.
If you’re not familiar with using libraries then be sure to find a tutorial online which explains their purpose. Libraries are included and used in a similar manner across all languages, but the syntax is very different. A PHP library is written differently than a Rails gem.
Each of these resources should be used relative to your skill level. Brand new programmers need to learn the basics of variables and language syntax. More intermediate programmers should push themselves to start creating applications like databases, login forms, and shopping carts. But no matter what your experience just keep pushing yourself forward. Over time you will see improvement and might even surprise yourself with how much you’ve learned.