It may be difficult to ask a question that could be seen as stupid or obvious. That’s why we’ve put together 10 questions about programming, along with their answers, from the basics to more advanced. Have a read through them; we can (almost) guarantee you’ll learn something.
1. What is programming?
Programming, or coding as it’s sometimes called, is the process of creating software. Software is really a set of instructions that a computer needs to follow. Computer programming is a little like writing a recipe for your computer. Software comes in many forms, from games to apps on your phone, but all software is made up of lines of code.
When programmers create software, they follow a number of steps, including planning (this is called design or architecture), testing (checking whether the code works) and debugging (fixing source code).
2. What is a code editor?
A code editor is where you’re likely to write your code. You can’t write code using a word processor, because word processing software contains formatting. You could use a basic text editor, like notepad which comes pre-installed on most computers, but a code editor software package makes coding easier due to their handy features.
Here are three free code editors for different operating systems:
Notepad++ – a popular code editor for Windows.
DroidEdit – a free app for writing code on your Android phone or tablet.
TextWrangler – a code editor for Macs.
3. What is an Integrated Development Environment?
An Integrated Development Environment (IDE) is a step up from a code editor. Although an IDE includes a code editor, it also incorporates other tools to automate various tasks such as a debugger, various code libraries and a compiler (a software program that turns high-level code written by a programmer into a machine language or binary code). Many IDEs can support multiple computer languages, although you must check that the IDE you select is correct one for the language you are learning. Examples of IDEs include Microsoft Visual Studio, NetBeans and Eclipse.
4. What is a Software Development Kit?
A Software Development Kit (SDK) is a bundle of software tools that lets you create applications for specific platforms or frameworks – e.g. an app for an Android smartphone would use the Android SDK. SDKs can include an Integrated Development Environment, as well as libraries, tutorials and simple coding examples.
5. What happens on the back-end when I type a website into my browser?
Let’s say you type www.google.com into your browser, what happens then? Firstly, a request goes to Google’s remote server. Your browser then gets the response, interprets the code and displays the Google page.
The Google server (or remote server) is an API (Application Programming Interface) for your web browser (or client). Whenever you visit a website, your browser interacts with the remote server’s API. An API isn’t a remote server, however – it is the part of the server that receives requests and sends responses.
6. What’s the difference between the front-end and the back-end of a website?
Think about your house – the part of the house that others see, the yellow walls for example or the paintings you’ve hug up, equates to the front-end of the website. Now think about the parts of the house that are not immediately visible, the wiring and plumbing for example – that’s like the back-end of your website, where you’ll get your databases, APIs and server-side programming.
7. How do I deploy a website?
Here are four steps you need to follow:
- Choose a domain name – these are user-friendly addresses of websites. Search for available names on Whois.
- Find a web hosting company – this company stores your website on their server.
- Register your domain name – your web hosting company could probably help you with this.
- Upload your website onto the web hosting company’s server.
8. What is a Data Scientist?
A Data Scientist analyses data for actionable insights on anything from product development to customer retention to new business opportunities. The stages involved include:
- Framing the problem – e.g. Which customers are likely to buy a particular product?
- Collecting raw data to solve the problem
- Processing the data – including cleaning the data for errors, missing variables and corruption
- Exploring the data – looking for patterns, trends and correlations
- Communicating the results to various stakeholders
9. What is the difference between Artificial Intelligence and Machine Learning?
Both terms come up frequently when discussing Big Data, analytics and broader technological changes sweeping the world. In short, Artificial Intelligence (AI) is a broad concept of machines carrying out ‘smart’ tasks, whereas Machine Learning (ML) is an application of AI, where machines are given access to data and are then capable of learning for themselves.
10. And lastly, how can I become a programmer?
The good news is that 87% of developers are at least, in part, self-taught. Most have taught themselves a new language, framework, or tool outside of any formal education. Online education is more common (48,6%) than full-time face-to-face learning (10,5%), states the 2018 Stack Overflow Developer Survey.
Two online options include studying via a Massive Open Online Course (MOOC) – these are generally free and rely on video-based learning. However, the lack of support can leave one feeling stranded. Alternatively, think about an online coding bootcamp such as those offered by HyperionDev. Online bootcamps are structured, mentor-guided learning platforms that replicate the in-class experience. You should expect to devote between 5 to 30 hours per week to the course. Find out more about HyperionDev’s six-month Bootcamps in Web, Mobile or Software Development.
We hope you’ve enjoyed these 10 questions about programming and that you are now more familiar with a number of basic programming issues.