How to use algorithms to inspire students to explore the world around them!
How does SnapChat know how to put the ‘dog face’ filter perfectly on your face? How does Instagram allow you to add colour filters to your pictures? How does Facebook always seem to show you adverts of things you are interested in? All these things and much more are controlled by algorithms!
In today’s world, technology is an integral part of our lives. Our online presence is now more closely linked to the real world than ever before. Students regularly use social media applications as part of their daily lives; using this technology is second nature to most teenagers today. While most children strive to become expert users of software, computer science teachers are encouraging the future generation to become problem solvers promoting deeper thought into the creation of software, encouraging students to ask the question “How does that work?”
An algorithm is a step-by-step sequence of instructions used to solve a given problem. Within this article I have identified some awesome, exciting and inspiring ways algorithms are used within our modern world which, I hope, will help inspire the young, inquisitive minds within your own classroom!
SnapChat filters – These fun filters actually use some very powerful facial recognition algorithms to identify the position of your facial features such as eyes, nose and mouth. However, the software also identifies things such as the angle of head tilt and maps the filter to a 3D model of your face.
Computer game design – The computer game industry continues to grow in popularity, and offers a broad range of job opportunities including game designer, scriptwriter, artist / animator, programmer, producer and tester. Current estimates believe that 2017 will see the computer game industry grow to over $100 Billion US dollars. While game designers are constantly pushing the realism and graphical capabilities of games consoles such as the Xbox and PlayStation, 2016 saw mobile gaming overtake console and PC game sales for the first time. As such, the app development industry is full of opportunities for new designers and budding entrepreneurs!
Space exploration – For years we have been sending unmanned probes into the solar system. This wouldn’t be possible without the use of algorithms which allow the satellites to be controlled remotely. The rate of technology development in the space industry makes it one of the most cutting edge industries today. However, the fact that a modern day washing machine has more computer power than that used to get Apollo 11 to the moon back in the 1960s goes to show how far our technology has advanced.
Robots and the development of artificial intelligence – Artificial intelligence is arguably the most exciting field in robotics today. The robotics industry is huge and the search for the development of artificial intelligence continues to take great leaps forward. The key areas where robotic intelligence has made significant advancements recently include the areas of problem solving, social interaction and learning from historical performance. Check out the company Boston Dynamicsfor some amazing robots, particularly the ones that mimic animal movements! However, despite these impressive advancements, we are still well away from developing the type of artificial intelligence that is often depicted within the movies!
Recognition software – companies such as Facebook are going beyond facial recognition software, and are now analysing things such as posture, walk gait and body shape in order to recognise you within a photo or a video.
Drones – There has been an explosion in the interest in drone technology recently, many of which are now programmable through the use of your mobile phone or a simple remote. While some companies such as Amazon are researching the use of drones to perform tasks within the work place, others areas of drone development include competitive racing, pushing the responsiveness of the technology and the agility and speed of drones. Within the military, technology is focused on developing nano drones, mimicking the look of insects in order to collect intelligence without being detected.
Sport performance – Wearable technology is becoming increasingly part of elite sport performance. Within sports such as football and rugby, it is common to see players wearing GPS (Global Positioning System) software in order to take measurements of players speed and distance covered within a match. It can also record playing patterns and can indicate when a player is tiring and needs to be substituted. However, it is not just professionals who are using this type of technology. GPS watches and exercise monitors such as the Fit bit are more commonly available and allow anyone to monitor their exercise habits, regardless of their level of competition.
Weather forecasting – In Britain, we’re obsessed with the weather! Some of the most powerful computers in the UK are used to predict weather patterns, identifying the likelihood of dangerous storms and allowing people to evacuate areas at risk, helping to save lives.
Automated warehouses – Companies are more commonly using robotic systems to support workers within their warehouses. Huge companies such as Coca-Cola, Nike, Amazon, Fed-Ex and Ikea all used automated systems to identify when stock is low within its stores, collect the required stock from the correct location and load the required goods onto the correct transport for delivery. These automated systems and their algorithmic instructions help keep these big multinational companies running 24 hours a day.
Computerised vehicles – modern cars are packed full of computerised technology, giving us a more comfortable driving experience. Modern cars look more like the cockpit of a space ship, with integrated digital displays and touch screen technology being a now standard feature. However there is also performance based technology at play in order to improve the responsiveness of your car’s engine and manoeuvrability within difficult driving conditions. Cruise control settings identify the speed of the car in front and adjust your own car’s speed in accordance. All the while technology is striving to improve fuel efficiency rates, looking at alternatives energy systems such as electricity. Another exciting area of development is driverless car technology. Obviously the algorithms being used within this field needs to be some of the most robust and tested programming available as it is life critical software. However, if successful this technology could lead to more efficient methods of travel.
The above lists only a few of the exciting areas within our daily lives where technology is making significant and exciting advances. There are many more areas where programmers and engineers are making amazing advancements such as within the fields of medicine, exploration and transportation. With technological development advancing along an incremental growth line, there is not a more exciting time to get involved with programming!