What if somebody told you that you can double your annual salary by learning how to code? Then you go home and do research online and notice Coding Dojo offers a fourteen-week course that teaches how to code. If you could double your salary by going back to school for fourteen weeks, wouldn't you? I know I would. Coding Dojo found that 56.5% of its graduates earned less than $35,000 before enrolling. After completing the 14-week course, graduates make an average of $72,221. Mila Wilkinson, 28, said of Coding Dojo, "You're put in an environment that, for a lot of people, is unknown. It was just an intense learning environment, but I loved it because you're surrounded by people who want to learn the same things as you."
Self Driving cars, or autonomous vehicles, have the capability to sense its environment and navigate without human control. They use GPS, computer vision, odometry, radar, and lidar to detect their surroundings. Autonomous vehicles are able to navigate past, in between, or around cars on the road through control systems that analyze sensory data surrounding them. These vehicles are so popular right now because of all the potential advantages they could provide. Among the possible benefits is the potential reduction of traffic collisions caused by human errors. Other advantages include no age parameters for driving, higher speed limits, smoother rides, less traffic, and it could reduce car theft with the use of voice and fingerprint lock. In order to trust self-driving cars to transport us, we must understand how they operate.
Professor Sebastian Thrun, from Stanford University, guides the Google self-driving car project, and claims the heart of the self-driving car is the laser range finder mounted on the roof of the car. The Velodyne 64-beam laser is allows the car to map its surroundings by producing a 3D map of the surrounding environment. The car's control system uses the Velodyne laser to respect traffic laws and avoid obstacles by integrating the measurements from the laser with high resolution maps of the world to produce data models of the area its driving in. Self-driving cars also have radars on each side on the car, cameras to detect light traffic and pedestrians, and a GPS that determines where the car is going. Tesla recently launched their self-driving ability in their cars and for the most part it's been a success, except for one major accident that still ended up determining it wasn't the self-driving system's fault. I believe this is an important technology for the future that incorporates a lot of computer science programming and coding into these self-driving control systems.
The technology behind 3D-printing is becoming more and more popular. Researchers at MIT and the Interdisciplinary Center Herzliya in Israel are working together to improve how time-consuming 3D-printing customization is for beginners. CAD, or computer aided design, applications help first time users customize their product more easily and effectively. These CAD applications convert CAD files into visual models that users can use to design products simply by using the system's operations, and by moving virtual sliders in the application. In high school I used a CAD application called Autodesk that made customizing very simple. You would just draw your image and type in the dimensions, then all you would have to do is print it to the 3D printer. I was able to produce a plastic water bottle.
MIT Researchers and the IDC Herzliya are collaborating to create a CAD system designed for beginners who have no construction. Their goal is to create a system that allows beginners to customize any product using virtual design so they can 3D print it and use it. They named the system "Fab Forms". "Fab Forms" software allows users to design with many different shapes and lines that have a wide range of values for the dimensions of each shape. Then the software calculates the geometries of the design and stores them in a database for the 3D printer. To make sure the dimensions and geometries of the designers' product is correct, the system runs any test chosen by the designer and the new results are stored in the database. Even for an experienced user, the time and effort it takes to construct a product to a specific design could take hundreds of hours. "Fab Forms" cuts down the time it takes to design the product by distributing all the different tasks among the servers in the cloud of the system. Lastly, the system generates a user interface, where all the customization happens. The interface displays what the 3D model of your product looks like as you customize, and has sliders which show the different dimensions of the products design. It's crazy to think about how much programming and coding goes into developing a CAD system this advanced.
Here is video describing the process of the system "Fab Forms":
In the EU CARDIOPROOF project, researchers have developed software that allows a computer simulation to observe and analyze parts of a child's heart. When children are diagnosed with a heart defect or disease they must go through a series of exhausting examinations. Then after the examinations they experience the awful treatments and interventions they need to survive. Fraunhofer researchers have worked to together to develop a computer simulation that simulates the effects an intervention or treatment has on a child's heart. The simulation helps determine whether or not the treatment is a necessity, in case a child doesn't need to experience the pain of a long term intervention or operation. The simulation analyzes blood flow and pressure in vessels.
The computer simulation uses an MRI scanner to take images of the patient's heart. These images allow doctors to analyze the heart's blood flow and the shape and size of the blood vessels. The software in the simulation then calculates the blood flow and pressure in vessels before and after the simulation. Their observations determine what treatments and interventions a child may or may not need. It will save many children from experiencing unnecessary treatment and surgery. Also, parents will save money from all the unnecessary health costs they would have without the simulation. Results show the software reduces the number of complications and follow up treatments a child has to experience. Its great to see the impact computer science has on health, especially the health of children.
Have you ever played the first Super Mario Brothers? Those who have all know the frustration and anger that comes from repeatedly losing a level. If it makes you feel any better, computer scientists have found that beating a level in Super Mario Brothers is the equivalent to solving some of the hardest problems in computer science. In computer science problems that are this hard are called "NP" problems, "P" problems are easy. Computer Scientists and Mathematicians often converse about solving the general statement that P does not equal NP. If P doesn't equal NP then there is no fast, easy way to solve hard problems. So if P does equal NP that would mean we could solve hard problems a lot faster, and easier.
MIT scientists have been doing research that shows solving a level in Super Mario Brothers is as hard as completing some of the hardest problems in the complexity space PSPACE. PSPACE is the complexity class higher than NP, meaning their even more difficult. Like NP, PSPACE contains challenging problems that take a lot of time and effort to solve compared to P problems . Figuring out how to complete a difficult level of “Super Mario Brothers” takes a long time for beginners and even experienced players who have already completed it. This is because of the difficulty of navigating the level and getting through each checkpoint. Even with the solution to the level it still takes a lot of time to beat it. It's almost unbelievable that such a simple, old game is as difficult as some of the most complex problems in computer science.