Applications Of Your Growing Potential. What We’ve Been Doing We’ve been writing Java programs...

Post on 25-Dec-2015

212 views 0 download

Transcript of Applications Of Your Growing Potential. What We’ve Been Doing We’ve been writing Java programs...

ApplicationsOf Your Growing Potential

What We’ve Been Doing

• We’ve been writing Java programs

• In an IDE called Eclipse

• For desktop and laptop computers

But the World is Changing

• Desktops and Laptops are extremely important and where most serious computing takes place

• But there are other technologies to take advantage of:

Smartphones• First smartphone in 1971 by Paraskevakos

• PDAs and Blackberrys through the 90s/early 2000s

• Apple reveals first iPhone in 2007

• First Android phone comes out 2008

Mobile Apps

• A new opportunity for enterprising developers

• Creates a platform for everyone’s ideas

• Growing untapped potential

• As it stands now, Android/iPhone are your best targets

Android

• A mobile operating system developed by Google

• Many manufacturers make phones which run the Android OS

• Android apps are written in Java (woohoo!)

• Download Android SDK and ADT (eclipse plugin) for free!

• Publishing apps is relatively easy

iPhone

• Apple’s smartphone, runs iOS

• iPhone apps are written in Objective C

• Can be written with Xcode

• Have to pay $99/year and develop on a Mac (boo!)

• Apps are subject to a review process before publishing

Pros/ConsAndroid

Pros:- familiar language/IDE- developing is free- publishing is easy- majority of market share

Cons:- many different phones to support- typically less $/download

iOSPros:

- only 1 phone to support- typically more $/download

Cons: -new language/IDE- $99/yr- need a mac (kind of)- stricter publishing

Embedded Systems

• What if you have an idea which requires more than just a computer or a phone?

• What if you want a “smart” hammer which keeps track of how many strikes it makes?

• What if you want to make curtains which automatically close when it gets too sunny?

• Then you need Arduino

Arduino• A variety of low cost ($20 - $50) microcontrollers (simple computer)

• Uses a simple version of C/C++

• Has digital, analog, and serial input/output (I/O)

• Many “shields” available which extend the Arduino (wifi, Bluetooth, touch screen etc)

• Arduino with sensors, motors, and shields is pretty unstoppable:20 cool arduino projects

Sub-Disciplines of Computer Science

• We’ve spent the summer learning the basics of programming

• After you get the basics down there are many new areas to explore

• Here’s an overview of some of the big ones

Web Development• All different kinds of websites you can make

• HTML gets your text/pictures on your webpage (HTML5 does more…)

• CSS makes your page look pretty

• Javascript is a browser/client side scripting language

• PHP is a server side scripting language

• Go to w3schools.com all of this and more

Databases

• Organized collection of data

• Typically queried with some form of SQL

• Ability to create/query/maintain DB’s is extremely useful

• Allows websites, mobile apps, desktop apps to know the same things

• Making databases faster is huge research area

Graphics

• The rendering of 2D or 3D space to a screen

• Involves lots of math (geometry/linear algebra)

• Computationally heavy (often limited by speed of comp)

• Requires clever/efficient coding

• Applications in video games, movies, other visual mediaParticle Emitter

Robotics• A mix of engineering and computer science

• Creation and programming of autonomous machines

• Applications in manufacturing, retail, medicine, and more

• Math/physics heavyRobot Drone

And More…

• Computational Biology – analyzing biological data (i.e. DNA)• Systems – Improving Operating Systems/Programming Languages• Networks – Improving network protocols (i.e internet, data networks)• Computer Vision – Allow computers to understand images• Machine Learning – Allow computers to learn from data• Algorithms and Data Structures – Be clever, get faster• CS/Econ – Program trading strategies, make millions• CS/Neuroscience – Get the brain/computer to understand each other

The End is just the Beginning

• That’s the end of our lessons this summer

• If you enjoyed any part of what we did, don’t stop

• Take another class, code more on your own, keep at it

• Change the world!

Thank You!