What Coding Class is Right for You?
While many coding schools concentrate on full-time bootcamp programs, at Noble Desktop you can take individual classes on a specific topic, or take multiple courses as part of a certificate program. This flexibility allows you to learn a particular skill you want, or get a well-rounded start in our certificate programs.
If you’re not sure if coding is right for you, try one of our starter courses. If you like it, continue taking additional classes and you can earn a certificate. Our modular approach to classes allows you flexibility for scheduling and what you’ll learn.
Front-End Web Dev Bootcamps
HTML & CSS
The foundation of all webpages is HTML & CSS. HTML marks up or labels content such as headings, paragraphs, lists, links, and more. CSS styles the content based on your markup. HTML & CSS are easier to learn because they are coding, not full-blown programming. HTML is the easiest because there’s less code and complexity. CSS takes a bit longer to master because there’s more to it and it has some concepts that need to be understood for things to work properly. CSS continues to get new features faster than HTML, with newer layout techniques such as flexbox and grid. CSS continues to develop to give developers more control over the layout and appearance of a webpage.
You can get started with the basics of HTML and CSS in only 3 hours in our Intro to HTML & CSS class. If you need to learn it more in depth, take our Web Development Level 1 class, or for the most comprehensive program take our Front-End Web Development Certificate.
How to Get Started
When learning HTML, CSS, etc., keep in mind that you are learning a language! Kids learning to speak their native language can understand you before they can speak, and when coding you’ll be able to look and understand code before you can know what to type in from scratch.
Practice makes perfect. To become a proficient coder keep the following in mind:
- Learn the codes and know what they do.
- Type those codes repeatedly to ingrain them into your memory.
- As you start coding you’ll need to reference the books you get in our classes, Google, etc. until eventually you’ve written that code enough times that you can remember it without having to look it up.
Noble Desktop’s front-end classes are a great way to learn to code. They come with step-by-step workbooks which you can reference later if you forget how to code something. You can practice by going over the exercises and once you know the code you can start using it to build your own pages.
Back-End Web Dev Bootcamps
The back-end of a website involves things that happen on a web server (a computer that runs the website). It usually involves a database for storing information such as products, prices, orders, social media posts, passwords, etc. Using a server-side coding language (such as PHP, Ruby, Node.js, etc.) you can process information in forms, create login/logout functionality, and much more.
This ability to accept user data is what creates the magical experience of websites like Instagram, YouTube, and Facebook. On the early internet, websites did not change much. You could view a restaurant menu or travel photos, but there was no reason to stay on a site after you’d seen it. The content was stagnant, and viewing was a lonely experience without interaction from other visitors to the site. Today, websites can captivate people for hours because there is always fresh content, comments from other users, and opportunities to interact. When users have their accounts, the experience can even be personalized to match their tastes. This kind of dynamic, engaging experience is the real value of a backend programming language.
WordPress & PHP
WordPress is a CMS (content management system). That means regular people (non-coders) can go in and update content such as text, images, etc. WordPress is the world’s most popular CMS, running over 30% of all websites. Behind the scenes, WordPress runs on PHP, a server-side language that has been around for a very long time.
Ruby on Rails
Ruby on Rails is very developer friendly. It’s powerful, yet the code is readable and intuitive. It lets programmers write code quickly and efficiently, which is why it’s popular with many companies such Airbnb, GitHub, and many others.
When Ruby on Rails emerged in the early 2000s, it delivered a karate-chop to the web development ecosystem. In contrast to the existing tools, which emphasized flexibility and generality, Ruby on Rails was laser-focused on being productive for web development. Instead of personalized configuration, Ruby on Rails holds everyone to the same strict conventions. These conventions function like a “shorthand” for code and allow experienced Ruby on Rails developers to create an amazing amount of functionality in a short amount of time. Other languages and frameworks have since adopted many of the principles that Ruby on Rails pioneered, but it remains an excellent specialized tool for web development.
The second advantage of Node.js is that it will happily support thousands of simultaneous connections. Node.js was designed during the modern internet era where 10,000 users could be interacting with a website at the same time, and its architecture is built to accommodate that. Like a waiter serving several tables at once, it can jump back and forth between users and satisfy all their demands in real-time. Other backends, designed for a simpler era, default to satisfying one user at a time and will struggle under heavy traffic unless they are augmented. This feature of Node.js, its “asynchronous” design, makes it more difficult to learn initially but much easier to scale up in the case of a popular website.
Python very popular and gaining momentum. That’s partially because you can use it for so many things: back-end web development, data science, automation, and more. Another reason people like Python is its short, readable code.
Python is a popular choice for backend programming because it is easy to read and versatile. The readable code makes the learning curve for Python friendlier than any other language. This emphasis on readability carries over to the tools built in Python, which also tend to be simpler to use than in competing languages. While readability has these short-term benefits for students of Python, it also has long-term ones. Teams of programmers have an easier time collaborating on each others code, finding bugs, and onboard new members.
When Python is used for a variety of tasks within a team—like web development, automation, and data analysis—it eliminates the extra work it would normally take to use multiple languages for these tasks. There is the obvious extra work of setting up and integrating tools from two separate languages, but there are also the time spent learning and enforcing best practices in two different languages. Just using Python eliminates both kinds of extra work. Using the same language across different functions also makes it easier for programmers to switch roles if the need arises.
Data Science Bootcamps
As massive and complicated data sets become increasingly common, specialized tools such as Python, SQL, and R have emerged to analyze, visualize, and transform that data. Python is one of the most common tools for working with data due to its open-source license, relative ease of use, and available third-party tools. Data scientists also use SQL to directly access and manipulate databases. R is a great programming language for those who need a more specialized tool focused on statistical analysis.
Python is quickly becoming the lingua franca of data. The reason for its booming popularity, in short, is that it is a versatile, open-source language that is fun to use. Up until recently, the tools for dealing with data formed a very fractured landscape. Each particular discipline had its preferred tool, which was usually proprietary. Economists tended toward STATA, machine learning researchers tended toward MATLAB, and physicists tended toward Mathematica. As collaboration over the internet has become easier, the passionate open source community around Python has caught up to these proprietary tools and surpassed them. Features that used to make these proprietary tools unique—advanced graphing capabilities or a shareable notebook format, for example—have all been incorporated into Python. Users from all kinds of quantitative disciplines have been migrating to Python, attracted by the appeal of an open-source tool that is more versatile and fun to use.
More and more professionals are being expected to use data in their decision-making, and learning SQL will mean you are ready. SQL lets you answer questions using a database, the ultimate system of record for most organizations. While spreadsheets can give you a partial snapshot of your organization’s data, with SQL you can get a complete view of your data in real-time. You will also learn how data is inserted and organized, so that you can better understand how your organization collects the data it has. This can give you valuable insight into whether important data is being lost, or if poorly organized data is slowing you down.
For statistical analysis, R has a set of tools that is unmatched in depth and sophistication. Statisticians and other academics have been contributing to R for over 25 years, guaranteeing that for any statistical technique you can think of there will be a high-quality tool ready and waiting. If you have a background in statistics, you may find R easier to use because the terminology will be consistent with your training. However, since R is a specialized tool for statistical analysis, you may want to consider a more general-purpose language like Python if your interests are broader.
iOS App Dev Bootcamps
In particular, it will help to be comfortable with object-oriented programming and reading API documentation. iOS development heavily involves building on top of code that Apple developers have written and using APIs that Apple provides. Unlike in other domains, a new iOS project will not start from a blank slate but will instead plug into a strict framework that allows your code to safely interact with the iPhone or iPad it runs on. Understanding how to fit into that framework is the biggest hurdle when starting with iOS development, and relies on your ability to read documentation and object-oriented code.
What Will You Learn?
The most important thing to coding is getting started. Once you get going you’ll see how you like it, how well you do, and what you enjoy most. That’s why we have individual classes that let you get started, many of which count toward a longer certificate program if you want to continue.
Not sure what type of coding is right for you? Just ask and we’ll help you decide which classes or certificate programs are best suited to your goals and abilities.