CS101 Bootcamp: Introduction to Computer Science & Software
What you'll learn
- Understand how computers work from inside out
- Understand basic concepts of software programming (in Java, Python, PHP)
- Fundamentals of databases, mobile apps and cloud computing
- Write basic software programs and applications
- No technical prerequisites for this course.
- I assume that you have used a computer and/or smartphones before, but I don't expect you to have any other technical knowledge.
My "CS101 Bootcamp: Introduction to Computer Science & Software" course aims to be a Computer Science and software programming introductory course / bootcamp for anyone with no technical background in Computer Science. If you've used a smartphone or computer in the past, that will be sufficient for you to take this 2-hour course, and explore the basics of Computer Science and software programming, as well as up-to-date topics and the latest technology trends in Computer Science.
If you are an absolute beginner to Computer Science, you will enjoy this course because:
- It teaches you the basics of Computer Science and Software Programming, and you can take it with zero technical or computer background.
- This beginner course has the basics of Computer Science (normally an entire semester or several months) packed into a 2-hour course. You can finish it in one day, or if you prefer to take one lesson of a few minutes per day, still be able to finish it within a week.
- Whether you plan to become a software programmer or engineer, or just learn the basics of Computer Science or Software Programming out of curiosity, this beginner's course will equip you with fundamental understanding of Computer Science concepts.
- The course is updated with the latest technology that you would expect to use in 2017, such as developing mobile apps, Big Data, cloud computing, and SQL and NoSQL databases, etc.
- The course has minimal exams / quizzes, so that you can focus on learning the material in 2 hours or so, and then decide for yourself whether you want to do more advanced programming courses.
Topics I teach in this course
- Basics of hardware:
- How processors (CPUs), memory, disk drives work
- The basics of desktop and laptop computers and portable electronics such as smartphones and tablets
- Basics of software
- How software is built. The basics of compilers, interpreters and assembly language.
- Popular programming languages
- CSS frameworks and the Bootstrap CSS framework
- Programming concepts in Java
- Introduction to the Java programming language
- Fundamentals of programming languages, such as variables, statements, functions, classes
- Additional programming concepts in Python programming language
- How Python differs from Java
- Why Python is popular, and Python programming constructs that help with data analysis or simple scripting
- Web servers: Apache, Tomcat, nginx
- Basics of PHP and Ruby programming languages
- Why PHP is popular
- Introduction to popular PHP packages / frameworks such as WordPress, Joomla, Drupal, etc
- Mobile app development
- iPhone, Android and other programming models
- Databases: SQL and NoSQL
- Sample SQL and NoSQL scripts
- Introduction to popular databases: MySQL, SQL server, MongoDB, etc.
- Big Data and data analysis
- Brief introduction to Hadoop
- Cloud computing
- IaaS, PaaS, SaaS
- Private, public and hybrid clouds
- Conclusion, and next steps to becoming a full programmer
Who this course is for:
- Anyone who wants to understand Computer Science and software programming, and perhaps learn to code.
- In this course, I aim to teach you enough basics about Computer Science and coding or programming, whether it be to satisfy your curiosity, or as a stepping stone to a career in Computer Science and software engineering.
I'm a freelance web developer who travels around the United States, working with large and small clients to build out their websites or software applications.
I've recently started invited to give guest lectures at various community colleges in areas I visit, and I've become passionate about using my skills to train others in the field of computer and software engineering.
I have a engineering degree from the University of Florida. Go Gators!