Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

Development Tools

Where/what courses can I take to learn server configuration and Linux for software development?

I want to be a full-stack developer, and whenever I look at job postings I see that the ability to code is not nearly enough. Many employers also expect devs to be able to configure servers and be proficient with Linux. I work on a Linux machine and took a basic course on Bash but most of it didn't apply directly to web/software development. I am wondering where I can go or which courses I can take to get up to speed on the IT skills that employers usually look for. Thanks.

1 Answer

Treehouse has an "Introduction to the Terminal" course you may find useful, as it talks about how to use Linux on command line. However, if you are already using Linux, you may find it overly basic.

I also strongly recommend a book called "The Linux Command Line", that goes into much more information about how to use Linux. Incidentally, if you go to the website, the author has put the full text online.

Once you have the basics, probably the next thing to do is actually install a web server on your Linux box and create a simple website (or a more advanced website, if you are able to). There are lots of resources on the web for that.

Be sure and learn how to install things on Linux like whatever Programming language you are using for development, and any libraries you need. (For example, you might be using Python and Django, or Java and Spring, etc...)

Of course, learn how to install at least one database (probably mysql or PostgreSQL). Do some basic configurations, like creating a user, maybe creating a simple schema.

Actually see if you can deploy your website the way you might for a Production website. (In which case, you might be asked to provide a single file, and simple instructions for the Admin to follow.)

Lastly, it is becoming more and more common for people to deploy websites in the form of a docker container. You might want to go through the Docker course on Treehouse, and then see if you can deploy the websites you are learning to create with Docker.

Hope this helps!