Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Tech youth should be learning the ability to problem solve and use logic before even programming because it is the true real life skill for tech: seeing a problem and being able to fix it with whatever tools you have available to you. That mindset is useful in programming because you are given basic tools(syntax) but from there you have to build and design your project on your own.
- Individually ask about dream jobs, talk about the concept of it and how tech fits in, and how this course will seek to help everyone in the room achieve that goal.
- Note: College will (theoretical vs practical) make you better at being able to learn these things, but most places of higher education don't actually teach you these things, which is a strong reason for why it's hard to find good development talent. CS departments focus mostly on theory and really deep, low-level (explain this word) stuff like processor affinity, processes and threads, compiler design, tons of algorithms.. etc
- Top tech skills to be hired for in today's age, which would drastically improve learning capacity and comprehension:
- 1. Programming and app development.
- Quick intro ideas:
- It's hard to find good talent. Companies today look for experience to handle the scale and demand that their businesses run on, which is why so many people today try to boost their resumes by working on and showing off their own cool individual projects (show examples), as well as trying to land their first internships (which grades are important for). Companies care not only about skill but application, communication, a positive and determined attitude - someone who it'd be fun to work with (especially for more big name companies). Think of it from the perspective of a CEO of a tech firm who needs more manpower - what would you look for?
- In depth ideas:
- - Talk about programming languages, what they are, which ones are good for what applications (e.g. C++ for games and computational speed, java for android dev, python or ruby for web dev, etc)
- - Talk about libraries and frameworks and APIs in a general sense and then introduce examples (flask, rails)
- - Different kind of applications: Web apps, mobile apps, native vs web hosted..
- 2. How do I make something cool?
- Quick intro ideas:
- Anyone can go online, copy and paste code and make a hello world phone app. Beautiful and popular apps are characterized by sophisticated user experience design and a working knowledge of what goes on behind the scenes.
- What's front-end? What's back-end? What kind of stuff is associated with each?
- What technologies do I pick to build the various aspects of my applications? Introduce model-controller-view software methodology tactic. Explain the VERY IMPORTANT concept of modularity (all parts are independent of the others)
- In depth ideas:
- - Databases: SQL, noSQL. Introduce examples of each and how they work
- - Controller: What language and what framework do I build in? What's good for what? Capabilities of each, etc
- - Views: What user interface do I hook up my back end with?
- - Talk about tech interview questions and basic intro to theory of data structures
- Note: Make school, Lean gap -> check out these curricula model it and scale it to our level.
- 3. Webdev, databases, networking, big data, internet of things
- Overview: What exactly happens when I type in google.com into the search bar? 3 hour vs 5 min, looking for depth
- Explain how a user on a phone can request for data, which layers it goes through and how those relate to what the developers built. This will make it clear how to develop something real life even better.
- After reviewing the concept behind webdev, talk about database design and scaling. Then how networks allow us to actually make this routing and communication between so many different entities possible. Assign network reading or something. Talk about exciting big data (google, fb) and the idea of everything being a tech device in the future.
- Interactive things to do:
- 1. Go through the process of building a simple website. localhost tests
- 2. Do some graphics design and video editing, show some example tools.
- 3. Introduce concepts of artificial intelligence in the design of automated processes and robots, and how probability is tied into that (it's all stats/prob), machine learning, deep thinking, data mining, bit coins, super fun adventure time using commands
- 4. Programming basics. go through cool features of python, same features that exist in every language, data structs
- 5. Version control: put all your code on github! Walk them through a git tutorial, very powerful tool. How do I work on a team? How do so many people work on the same piece of code? It'll be clear after this.
- 6. Build a simple database with like mongoDB or some similar technology, show them the shell and how it works. Parse?
- 7. Game design. Introduce the game loop and show examples of games and snippets of code from each game (Minecraft, League of Legends, etc)
- Notable ideas:
- - Project management is a great skill to have. Good project managers need a mix of business and technology acumen along with the ability to bridge the gap between business and tech people, who often speak different languages.
- - Tech support.. Just know what the heck's going on
- - A security expert is necessary everywhere
- - Experts on business analytics and specific tools for such analytics (google analytics, etc) are well needed
- - Have highschool students (Shivam) talk about experiences.
- - Send professionals at least 5-10 yrs ahead to speak for incentive (in industry).
Advertisement
Add Comment
Please, Sign In to add comment