Clients are the devices used to access websites. Servers are the computers that host the websites. For example, the device you are using to view this site is the client, and the remote device where the code is stored is the server. It's important to be aware of the challenges each domain presents. Frontend code focuses on the interface and is concerned with the user's experience. It can run on phones, computers, different browsers, all of which may be slightly different in subtle ways. Developers who write frontend code should be aware of these differences and know how to handle potential issues. Backend development can present a different set of challenges. This might involve the website's business logic, like publishing a social post so that it shows up in a friend's feed. Or maybe you want to automate the process of gathering information, like posting the latest price of BitCoin to your website. A well-rounded developer will be familiar with solutions for both clients and servers.