Learning how to code is a constant and productive challenge of wrapping your mind around new concepts, patterns, and possibilities. This means that just like any other skill, if you want to excel, you’ll need to practice! The idea of beginning your own projects may seem daunting, especially if your long-term goals are big, but the reality is that you don’t have to jump right into them. Read on for some smaller projects that will help you build your coding skills:

Create a mobile app

Being able to create interfaces that are friendly to mobile devices is a skill that is absolutely relevant to your field of study. HTML and CSS can be used to create interesting and appealing layouts that can be integrated into an Android or iOS app. When brainstorming for this project, feel free to start out with a basic concept, such as a countdown timer, recipe manager, or interactive to-do list.

Virtual pet simulator

For those who would like more cuteness in their life, building a virtual pet simulator is a great project to start out with. First, choose a creature you’d like to design, and then give your pet characteristics such as age, health, happiness, and a name. Another step toward making this project functional is to program your pet to have responses to stimuli. The more interactive you make your pet, the more fun this project will be!

Build a calculator

This is one of the most popular projects for beginners to try. It allows you to practice creating a layout, as well as implementing logic that reads the layout and processes information to produce a result. It’s a very simple project to start, but also provides a solid challenge in building your core skills.

Create a rock, paper, scissors game

This type of project requires you to account for both user input and random result generation, making it a great standard project to use for practice. It provides novice coders with the instant gratification of being able to play the game immediately after it is finished, which can go a long way in maintaining long-term inspiration.

Build a basic HTML5 website

This is a project that has the potential to be immensely educational. Creating a basic website requires you to combine your knowledge of basic design principles such as web hosting, file linking, and coding logic. This project could also be a great example of your work to put in your portfolio.
Learning to code requires you to build upon your skills regularly. The key to this is maintaining a regular flow of projects that challenge you to expand your knowledge and encourage you to believe that you have the power to learn as much about coding as you set your mind to!

The sudden circumstances that COVID-19 has created for businesses has required them to make changes quickly for the sake of their employees. One of these major changes is implementing remote work. While this type of work was already popular, its desirability has only increased in recent months, and for good reason. Here are a few reasons why you should consider continuing (or even beginning!) work from the comfort of your own home even after businesses begin returning to their offices:

Better work-life balance

Working from home really helps you be conscious of how many hours you dedicate to your job-related duties. If you’re known for overworking yourself, being home during the week will remind you of the other parts of your life that might want to make more time for. To make matters even better, many remote jobs offer the option of creating your own schedule, allowing you to more easily tend to the responsibilities of your personal life.

More job opportunities

Being a remote worker provides you with the ability to access professional opportunities across the country, not just the ones in your city. This can lead to better pay and benefits than what your local job market can provide. This benefit may be a bit difficult to reap while current travel restrictions are in place, since some remote positions require periodic business trips, but it will definitely be a great perk when circumstances begin to return to normal.

Less money spent

If you think about it, working in an office can add up a lot of extra expenses that you may not realize. Commuting to an office requires gas. The coffee you drink every morning costs money, and so do those breakfasts and lunches you may buy when you’re on-the-go every day. Working from home allows you to cut down on unnecessary expenses and will likely save you a lot of money in the long run.

A better workspace

While some employers may have restrictions on customizing your workspace in their building, you don’t need to worry about that when you create your own office. You can hang as many pictures of your loved ones as you want, as well as play music as loudly as you’d like. The ability to create your own comfortable office will allow you to relax and produce high-quality work.
While the pandemic has forced millions of workers to work remotely, there are many reasons apart from it to enjoy and continue this new trend. Go forth and discover all of the benefits and freedom it has to offer!

The pressure to produce more has become commonplace in most industries. Leading to less time to complete tasks and projects and more stress on workers. And since there isn’t a way to lengthen the day, not yet anyway, the key to getting your work done on time is efficiency. So, finding new methods to increase your productivity is vital in staying ahead in our modern busy world. Well, you’re in luck because we are going to provide four tech tips to make you a more efficient, productive worker.

Improved typing/keyboard shortcuts

Improving your typing speed and accuracy can make a big difference in your productivity. You may think you are a typing virtuoso, but even the slightest improvement can impact your output. Additionally, investing time to learn keyboard shortcuts will pay big productivity dividends. You’ll spend less time clicking and more time shortcutting your way to outstanding efficiency. Imagine if you will, putting together a proposal without looking at your keyboard and barely touching your mouse. Now that’s productivity.

Leverage the power of multiple monitors

Using only one monitor is so 20th century. According to a study conducted by NEC and the University of Utah, individuals using a two-monitor setup were 44 percent more productive than those using a single display. How about more than two monitors? That depends on your own personal needs. In most cases, two displays are sufficient.

Reduce distractions

As incredible technology is at increasing our productivity, the same cutting-edge machines tend to be great time wasters as well. Whether it’s the latest mobile game, or the temptation to see what’s happening on social media, distractions are everywhere. How can you navigate through this sea of diversions? First, put your phone away. Yes, smartphones are necessary for many occupations, but setting it aside for a time won’t lead to the end of the world. Also, consider avoiding social media while working. This includes watching videos of kittens and other hijinks. You’ll get more done, and you’ll still have plenty of time to watch your favorite YouTuber later.

Productivity Apps

If you want to produce more, and have fun, gamify your tasks. Productivity apps like Do It Now and Productivity Challenge Timer help you focus on the job at hand. Additionally, they provide a game-like user interface that motivates you to complete projects and stick to your goals. Seeing your progress will help you entertainingly stay on task. Being productive has never been so much fun.

Now that you are armed with these four useful tech tips, you’ll be more productive and maybe even have more fun. The best part, you don’t even need a time machine. Although that would be awesome.

Coding is an amazing ability — and it is becoming an increasingly important skill for all professionals to understand as we evolve into a digital world. Learning to code requires logic, creativity and (above all) a lot of patience. Whether you’re a novice or a pro coder, it’s important to stay inspired and remember why you began learning in the first place. Read on for our favorite motivational images for coders.

1. Coding offers job opportunities galore — and parents agree!

2. The late Stephen Hawking offered his wisdom on the importance of coding.

3. Unlocking new possibilities begins with the press of a button.

4. What will you create? The opportunities are endless and vary depending on your unique perspective — give the gift of your ideas to the world.

5. Although coding is heavily math-based, it also takes creativity to turn a vision into a reality.

6. Want to change the world? Code.

7. Taking an abstract thought from your mind and weaving it into a logical formula for the world to see is one of the many incredible abilities of a coder.

 

By Camille D., Age 17

This article will focus on a method data scientists and programmers use to make data easier to explore, visualize, and interpret data, called principal component analysis (PCA). The explanations in this article assume some background in linear algebra and statistics.

PCA is based on dimensionality reduction: “the process of reducing the number of random variables under consideration by obtaining a set of principal variables,” in other words, transforming a large dataset into a smaller one without extracting too much key information. This process is considered expensive for machine learning algorithms; a little accuracy must be traded for simplicity. Minimizing this cost is part of the job for PCA.

The first step of PCA is standardization, the process that is the least mathematically involved. Standardization takes care of the variances within the initial variables, specifically with regards to their ranges. For example, the value of one variable may lie within the range of 0 to 10, and the value of another within the range of 0 to 1. The variable whose possible value lies between 0 and 10 will carry a greater weight over the second variable, leading to biased results. Mathematically, this can be addressed by subtracting the dataset’s mean from the value of the variable and dividing this result by the set’s standard deviation.

After standardization is performed, the values of each variable will all be within the same range.

Note that standardization is different from normalization in descriptive statistics. Normalization rescales the values into a range from 0 to 1, while standardization rescales the dataset to have a mean of 0 and a standard deviation of 1. Normalization is performed with the following equation:

In almost any case, of course, this will yield a value smaller than 1.

The second step, covariance matrix computation, is where things unfortunately begin to get more complicated. We first must understand the definition of covariance: “a measure of how much two random variables vary together.”

 

**Covariance differs from correlation in that correlation describes how strongly two variables are related, while covariance indicates the extent to which two random variables change with one another. The values of covariance lie between -∞ and ∞, while the values of correlation lie between -1 and 1. Correlations can be obtained only when the data is standardized.

Covariance matrix computation aims to investigate how the variables in the input dataset are related to one another. This is important because it helps detect redundant information that may come from a high correlation between two elements. We compute a covariance matrix to determine these correlations. The covariance matrix is an nn matrix, where nis the number of dimensions, that has entries of all possible covariances within the dataset. For example, for a two dimensional dataset with entries x, y, the covariance matrix is as follows:

A couple notes:

  • Cov(x,x)=Var(x), or the variance of the initial variable.
  • The Cov()operator is commutative, so Cov(x,y)=Cov(y,x), so the upper and lower triangular portions of the matrix are equal.

 

The covariance matrix is simply an organization that lists the correlations between all possible pairs of variables. The sign of the value of the covariance is what tells us about the correlations between elements. If the covariance is positive, then the two variables are directly correlated. If the covariance is negative, the relationship between the two variables is an inverse correlation.

The next step in PCA is actually identifying the principal components by computing the eigenvectors and eigenvalues of the covariance matrix. However many principal components are produced from the dataset should be equal to the amount of dimensions in the set. Principal components are “combinations” or “mixtures” of the initial variables, and are constructed such that each of them are uncorrelated and as much information from the variability initial variables as possible is stored in the first component, and the succeeding components account for the remaining information, as shown in the example plot below for an 8-dimensional dataset:

This form helps significantly with dimensionality reduction because it eliminates components with little to no information while still retaining the information that describes the key relationships within the data. Consider the dataset below:

The direction first principal component line represents the direction of the highest variability in the data. Since the variability is the largest in the first component, the information captured by the first component is also the largest. It’s the line in which the projection of the points onto the line is the most spread out. This line maximizes the average of the squared distances from the projected points to the origin. The direction of the second principal component line should be orthogonal in order for the principal components to be completely uncorrelated.

We continue to calculate principal components n times, where n is the original number of values in the dataset.

Going back to eigenvectors and eigenvalues, here are a couple preliminary notes about eigenvectors and eigenvalues:

  • Every eigenvector has its own corresponding eigenvalue.
  • The number of eigenvectors and corresponding eigenvalues is equal to the number of dimensions/variables in the data.
  • For a tutorial on how to calculate the eigenvalues and eigenvectors of a matrix: https://www.scss.tcd.ie/~dahyotr/CS1BA1/SolutionEigen.pdf.

 

The eigenvectors of the covariance matrix give the directions of the principal component axes, and the eigenvalues are coefficients for the eigenvectors, and give the scalar amount of variance within each PC. The PCs in order of significance can be obtained by ranking the eigenvalues for each eigenvector from highest to lowest. To get the percentages of the variance carried by each PC, divide each of eigenvalue by the sum of all eigenvalues.

Next, we have to determine whether we want to keep some of the lesser components (the ones with low eigenvalues). We form a matrix called the feature vector with the eigenvectors of the components we do keep. This demonstrates the concept of dimensionality reduction since we are subtracting from the initial amount of principal components we had, which is equal to the dimension of the original dataset.

Lastly, we use our feature vector to restructure our dataset in a sense. We want to put our data in terms of the axes given by the principal components instead of the original axes. We can do this pretty easily by multiplying the transpose of the feature vector by the transpose of the original dataset.

 

Video games. If you are an avid gamer yourself, then you know the excitement and joy that comes with playing your favorite game. In fact, many gamers decide they love the interactive entertainment so much that they not only want to play — they want to create! Video game programming and design can be an incredible outlet for bringing both coding and creativity to life, while providing a source of entertainment that truly helps people. Yes, you read that correctly — video games can help people. Read on to learn how.

Improves brain function

Scientific research has discovered that video games improve brain function. According to research published in Frontiers in Human Neuroscience, partaking in video games increases attentiveness in several different areas — including sustained attention. Additionally, the same study found that gamers are more efficient in general attention activities, which can positively impact one’s day-to-day life.

Relieves stress

You’ve had a long, stressful day at work or school and to you, nothing beats sitting down and playing Call of Duty or World of Warcraft. It’s vital in our modern society to have an outlet to destress, and video games are a perfect medium to let the problems of the real world melt away. A Dale TV survey showed that 55 percent of gamers agree with that assessment. Additionally, 47 percent of respondents in the same survey believe playing games positively affects their lives. That sounds like a win-win.

Opens a cool career path

If you decide to get into a career making amazing games, you may even inspire MORE people to seek a career making amazing games too — and the cycle of creativity continues on! It’s natural for those playing video games to wonder, “how do these games work?” That curiosity can lead to an amazing career in coding, and that’s just the beginning. When one decides to venture into the world of coding, a host of career opportunities opens. From software development to computer programming to business intelligence analysis, coding provides you the tools to opt for a rewarding career in just about any industry. To think, this can all begin from playing video games.

Promotes social skills

According to the American Psychological Association (APA), video games of all genres may positively affect children’s social skills in addition to boosting their learning and health. But beyond science, those of us in the know, understand that video games are a social event. You sign online and interact with others and even learn how to interact as a team.

Video games are great for entertainment but as we have just learned, they can also positively impact people’s lives. Whether it helps you relieve stress or leads to an amazing career, video games are incredible.

It’s time to say goodbye to frigid temperatures and blowing snow and welcome warm sunshine and tranquil breezes. Spring is the time of year that marks new beginnings, so it makes perfect sense to shake off the chill of winter and put your best foot forward. And can you really say you’re giving the world your best if your study area looks like it endured a blizzard or two over the past few months? We’re going to help you clean up your act and make your study area look as pristine as a freshly bloomed tulip.

Clean but don’t overwhelm yourself

If your study area isn’t too cluttered or untidy, this section doesn’t apply to you. However, if your home study area is an absolute disaster, please take note. When attempting to spring clean your study area, or anything else for that matter, don’t overwhelm yourself. Make a cleaning plan and take your time. If your spring-cleaning efforts encompass a day, or two, or even three don’t fret. Just get the job done right.

Declutter and organize

More clutter equals more distractions and when you’re trying to be serious about your work, distractions are your worst enemy. Remove the unnecessary trinkets and decorations that do nothing more than sway your focus and only add items that won’t act as the proverbial shiny object. Furthermore, get rid of piles of paperwork and books and organize them in a file cabinet or bookshelf. Try to have a system so you can find important papers. The toss to the side and forget them method will only serve to frustrate you in the future.

Clean

This is spring cleaning, after all, so the actual cleaning part does have to occur. While you are decluttering and organizing, break out the vacuum, broom and dust cloth. Before adding items back to your study area, make sure everything is tidy and dust free. Vacuum around (and under) your desk and try to deep clean. You want to welcome in this beautiful time of year with a beautiful study area.

Add some life and color

Although you don’t want too many distractions, you also don’t want your study nook to feel drab and boring. After you have completed your cleaning, decluttering and organizing efforts, add a bit of color with a painting or a vibrant vase of flowers. You want to set an upbeat mood before and during your study time. The quest for knowledge doesn’t have to dull and colorless.

Upgrade

If it fits into your budget, a new desk or computer can really give your study efforts a nice morale boost. You can also spruce up your study area without breaking the bank. A nice used bookshelf or cool vintage lamp can provide a new look on a budget. Just remember to keep your new and old equipment and furniture clean.

Maintain

Once everything is clean and ready to roll for countless successful study sessions, do your best to maintain. Set a weekly time to dust and vacuum. Additionally, consider continually organizing so the next time you decide to perform a deep clean, you won’t have nearly as much work. You’ll thank yourself.

A clean study area won’t guarantee an A+, but it can at least make your work more pleasurable. So, don’t be afraid to bring out your cleaning supplies and get to work. We’ll give you an A+ for effort.

It’s no secret that having technical savvy can go a long way in furthering your career or helping you land a job. But do you know which skills can set you apart from the competition and improve your chances of being a superstar at work? You are about to discover four vital areas you need to master to become the envy of coworkers and the apple of your boss’s eye. You’ll even impress yourself.

Keyboard shortcuts

Your mouse can come in handy, but don’t let that little gadget get in the way of increased efficiency and productivity. It’s time to reduce your mouse habit and learn the secret most advanced computer users know, keyboard shortcuts are awesome. You probably already know shortcuts like Ctrl+C and Ctrl+V (well hopefully anyway) but there is a whole tech-savvy world filled with shortcuts you haven’t even imagined. Research and discover the plethora of keyboard shortcuts that will make your mouse almost seem unnecessary.

Coding

Even if you consider yourself a bit technologically challenged, you can learn how to code. It may seem intimidating but it’s not when you find the right teacher. An excellent coding school can set you on a path to learning the ins and outs of creating incredible apps and software. And if you’re not interested in discovering the next big thing in mobile applications, having at least a basic understanding of code can help you become a better business owner or employee.

Microsoft Office

Like it or not, most office workers will need to delve into the productivity staple known as MS Office. For instance: When your boss wants a stellar presentation on your newest project, what do you turn to? PowerPoint. Did your coworker just send you a file filled with raw data? It’s time to open Excel. Oh, and speaking of that email you received from your coworker, you probably used MS Outlook to open it. You don’t have to be an expert at Office, but in today’s working environment, having at least an intermediate grasp is vital. If you feel uncomfortable learning Office on your own, find an instructor or school that can help educate you on this important software solution.

Improved typing

In the past, typing was a nice skill to have, in our present day, it’s a must. But it’s a skill we tend to learn and then fail to hone as time passes by. Don’t allow this to occur. Improving your typing speed, and accuracy can skyrocket your productivity. Admit it, how many times have you backtracked because you made an error in your presentation or article? Maybe, you still need to look at your keyboard from time to time. There are classes, apps and even games that can break you free from mediocre typing and help you become a keyboard master.

With an investment in time, and a little effort, you can master these four vital skills. Just be forewarned, once you do, you’ll be in high demand. Hopefully you won’t forget the little people.

By Mira B., Age 14

Many people use social media apps such as Instagram or Snapchat, which have face filters for people to take and post pictures of themselves. But many people do not realize how these filters are created and the technology behind how they fit people’s faces almost perfectly. The mechanics behind face filters was originally created by a Ukrainian company called Looksery; they used the technology to photoshop faces during video chats. Snapchat bought their algorithm, called the Viola-Jones algorithm, and created the face filters seen in many social media apps today.

Creating face filters is more difficult than you may think, so I’ll break it down into five key steps:

The first step is face detection. The image is initially viewed in ones and zeros, so the algorithm scans the image, looking specifically for color patterns. This can include finding that the cheek is lighter than the eye or that the nose bridge is lighter than surrounding areas. After detecting these patterns, a face can be distinguished in the camera.

The second step is the landmark extraction. Using specific algorithms in a 2D image, facial features such as the chin, nose, forehead, etc are determined.

The third step is face alignment. The coordinates of landmarks on people’s faces are taken to properly fit the filter to a particular face.

The fourth step is 3D mesh. Using the 2D image, a 3D model of the user’s face is built to fit the filter animation to a specific face.

The last step is face tracking, which approximates and locates the 3D mask in real time. This allows the user to move their face without the filter disappearing or moving to an incorrect location.

Another way to think of these steps is to imagine a human body. The landmarks identified in a 2D image serve as the skeleton for the future mask. Similar to how bodies differ in shape, so do people’s face structures. Using face alignment, the filter matches with the coordinates of landmarks from a certain face. People’s skin makes them look the way they are and 3D mesh step is like aligning the skin to the skeleton. Similar to how bodies move while keeping the skeleton, skin and muscle together, face tracking follows the face to make sure the filter stays on the right coordinates.