See all the things coding can accomplish
The demand for people with coding know-how exceeds the number of people who understand the languages that power technology. Coding All-in-One For Dummies gives you an ideal place to start when you're ready to add this valuable asset to your professional repertoire. Whether you need to learn how coding works to build a web page or an application or see how coding drives the data revolution, this resource introduces the languages and processes you'll need to know.
Peek inside to quickly learn the basics of simple web languages, then move on to start thinking like a professional coder and using languages that power big applications. Take a look inside for the steps to get started with updating a website, creating the next great mobile app, or exploring the world of data science. Whether you're looking for a complete beginner's guide or a trusted resource for when you encounter problems with coding, there's something for you!
• Create code for the web
• Get the tools to create a mobile app
• Discover languages that power data science
• See the future of coding with machine learning tools
With the demand for skilled coders at an all-time high, Coding All-in-One For Dummies is here to propel coding newbies to the ranks of professional programmers.
Author(s): Nikhil Abraham, Andy Harris, Eva Holland, Joris Meys, Luca Massaron, Chris Minnick, John Paul Mueller, Andrie de Vries
Series: For Dummies
Edition: 1
Publisher: John Wiley & Sons, Inc.
Year: 2017
Language: English
Pages: 755
City: Hoboken
Title Page
Copyright Page
Table of Contents
Introduction
About This Book
Foolish Assumptions
Icons Used in This Book
Beyond the Book
Where to Go from Here
Book 1 Getting Started with Coding
Chapter 1 What Is Coding?
Defining What Code Is
Following instructions
Writing code with some Angry Birds
Understanding What Coding Can Do for You
Eating the world with software
Coding on the job
Scratching your own itch (and becoming rich and famous)
Surveying the Types of Programming Languages
Comparing low-level and high-level programming languages
Contrasting compiled code and interpreted code
Programming for the web
Taking a Tour of a Web App Built with Code
Defining the app’s purpose and scope
Standing on the shoulders of giants
Chapter 2 Programming for the Web
Displaying Web Pages on Your Desktop and Mobile Device
Hacking your favorite news website
Understanding how the World Wide Web works
Watching out for your front end and back end
Defining web and mobile applications
Coding Web Applications
Starting with HTML, CSS, and JavaScript
Adding logic with Python, Ruby, or PHP
Coding Mobile Applications
Building mobile web apps
Building native mobile apps
Chapter 3 Becoming a Programmer
Writing Code Using a Process
Researching what you want to build
Designing your app
Coding your app
Debugging your code
Picking Tools for the Job
Working offline
Working online with Codecademy.com
Book 2 Career Building with Coding
Chapter 1 Exploring Coding Career Paths
Augmenting Your Existing Job
Creative design
Content and editorial
Human resources
Product management
Sales and marketing
Legal
Finding a New Coding Job
Front-end web development
Back-end web development
Mobile application development
Data analysis
Chapter 2 Exploring Undergraduate and Graduate Degrees
Getting a College Degree
College computer science curriculum
Doing extracurricular activities
Two-year versus four-year school
Enrolling in an Advanced Degree Program
Graduate school computer science curriculum
Performing research
Interning to Build Credibility
Types of internship programs
Securing an internship
Chapter 3 Training on the Job
Taking a Work Project to the Next Level
Learning on the Job and after Work
Training on the job
Learning after work
Freelancing to Build Confidence and Skills
Transitioning to a New Role
Assessing your current role
Networking with developers
Identifying roles that match your interest and skills
Chapter 4 Coding Career Myths
Educational Myths
You must be good at math
You must have studied engineering
You can learn coding in a few weeks
You need a great idea to start coding
Ruby is better than Python
Career Myths
Only college graduates receive coding offers
You must have experience
Tech companies don’t hire women or minorities
The highest paying coding jobs are in San Francisco
Your previous experience isn’t relevant
Book 3 Basic Web Coding
Chapter 1 Exploring Basic HTML
What Does HTML Do?
Understanding HTML Structure
Identifying elements
Featuring your best attribute
Standing head, title, and body above the rest
Getting Familiar with Common HTML Tasks and Tags
Writing headlines
Organizing text in paragraphs
Linking to your (heart’s) content
Adding images
Styling Me Pretty
Highlighting with bold, italics, underline, and strikethrough
Raising and lowering text with superscript and subscript
Building Your First Website Using HTML
Chapter 2 Getting More Out of HTML
Organizing Content on the Page
Listing Data
Creating ordered and unordered lists
Nesting lists
Putting Data in Tables
Basic table structuring
Stretching table columns and rows
Aligning tables and cells
Filling Out Forms
Understanding how forms work
Creating basic forms
Practicing More with HTML
Chapter 3 Getting Stylish with CSS
What Does CSS Do?
CSS Structure
Choosing the element to style
My property has value
Hacking the CSS on your favorite website
Common CSS Tasks and Selectors
Font gymnastics: Size, color, style, family, and decoration
Customizing links
Adding background images and styling foreground images
Styling Me Pretty
Adding CSS to your HTML
Building your first web page
Chapter 4 Next Steps with CSS
Styling (More) Elements on Your Page
Styling lists
Designing tables
Selecting Elements to Style
Styling specific elements
Naming HTML elements
Aligning and Laying Out Your Elements
Organizing data on the page
Shaping the div
Understanding the box model
Positioning the boxes
Writing More Advanced CSS
Chapter 5 Building Floating Page Layouts
Creating a Basic Two-Column Design
Designing the page
Building the HTML
Using temporary background colors
Setting up the floating columns
Tuning up the borders
Advantages of a fluid layout
Using semantic tags
Building a Three-Column Design
Styling the three-column page
Problems with the floating layout
Specifying a min-height
Using height and overflow
Building a Fixed-Width Layout
Setting up the HTML
Fixing the width with CSS
Building a Centered Fixed-Width Layout
Making a surrogate body with an all div
How the jello layout works
Limitations of the jello layout
Chapter 6 Using Alternative Positioning
Working with Absolute Positioning
Setting up the HTML
Adding position guidelines
Making absolute positioning work
Managing z-index
Handling depth
Working with z-index
Building a Page Layout with Absolute Positioning
Overview of absolute layout
Writing the HTML
Adding the CSS
Creating a More Flexible Layout
Designing with percentages
Building the layout
Exploring Other Types of Positioning
Creating a fixed menu system
Setting up the HTML
Setting the CSS values
Flexible Box Layout Model
Creating a flexible box layout
Viewing a flexible box layout
. . . And now for a little reality
Book 4 Advanced Web Coding
Chapter 1 Working Faster with Twitter Bootstrap
Figuring Out What Bootstrap Does
Installing Bootstrap
Understanding the Layout Options
Lining up on the grid system
Dragging and dropping to a website
Using predefined templates
Adapting layout for mobile, tablet, and desktop
Coding Basic Web Page Elements
Designing buttons
Navigating with toolbars
Adding icons
Build the Airbnb Home Page
Chapter 2 Adding in JavaScript
What Does JavaScript Do?
Understanding JavaScript Structure
Using semicolons, quotes, parentheses, and braces
Coding Common JavaScript Tasks
Storing data with variables
Making decisions with if-else statements
Working with string and number methods
Alerting users and prompting them for input
Naming code with functions
Adding JavaScript to the web page
Writing Your First JavaScript Program
Working with APIs
What do APIs do?
Scraping data without an API
Researching and choosing an API
Using JavaScript Libraries
jQuery
D3.js
Chapter 3 Understanding Callbacks and Closures
What Are Callbacks?
Passing functions as arguments
Writing functions with callbacks
Using named callback functions
Understanding Closures
Using Closures
Chapter 4 Embracing AJAX and JSON
Working behind the Scenes with AJAX
AJAX examples
Viewing AJAX in action
Using the XMLHttpRequest object
Working with the same-origin policy
Using CORS, the silver bullet for AJAX requests
Putting Objects in Motion with JSON
Chapter 5 jQuery
Writing More and Doing Less
Getting Started with jQuery
The jQuery Object
Is Your Document Ready?
Using jQuery Selectors
Changing Things with jQuery
Getting and setting attributes
Changing CSS
Manipulating elements in the DOM
Events
Using on() to attach events
Detaching with off()
Binding to events that don’t exist yet
Other event methods
Effects
Basic effects
Fading effects
Sliding effects
Setting arguments for animation methods
Custom effects with animate()
Playing with jQuery animations
AJAX
Using the ajax() method
Shorthand AJAX methods
Book 5 Creating Web Applications
Chapter 1 Building Your Own App
Building a Location-Based Offer App
Understanding the situation
Plotting your next steps
Following an App Development Process
Planning Your First Web Application
Exploring the Overall Process
Meeting the People Who Bring a Web App to Life
Creating with designers
Coding with front- and back-end developers
Managing with product managers
Testing with quality assurance
Chapter 2 Researching Your First Web Application
Dividing the App into Steps
Finding your app’s functionality
Finding your app’s functionality: My version
Finding your app’s form
Finding your app’s form: The McDuck’s Offer App design
Identifying Research Sources
Researching the Steps in the McDuck’s Offer App
Choosing a Solution for Each Step
Chapter 3 Coding and Debugging Your First Web Application
Getting Ready to Code
Coding Your First Web Application
Development environment
Prewritten code
Coding steps for you to follow
Debugging Your App
Book 6 Selecting Data Analysis Tools
Chapter 1 Wrapping Your Head around Python
What Does Python Do?
Defining Python Structure
Understanding the Zen of Python
Styling and spacing
Coding Common Python Tasks and Commands
Defining data types and variables
Computing simple and advanced math
Using strings and special characters
Deciding with conditionals: if, elif, else
Input and output
Shaping Your Strings
Dot notation with upper(), lower(), capitalize(), and strip()
String formatting with %
Building a Simple Tip Calculator Using Python
Chapter 2 Installing a Python Distribution
Choosing a Python Distribution with Machine Learning in Mind
Getting Continuum Analytics Anaconda
Getting Enthought Canopy Express
Getting Python(x,y)
Getting WinPython
Installing Python on Linux
Installing Python on Mac OS X
Installing Python on Windows
Downloading the Data Sets and Example Code
Using Jupyter Notebook
Defining the code repository
Understanding the data sets used in this book
Chapter 3 Working with Real Data
Uploading, Streaming, and Sampling Data
Uploading small amounts of data into memory
Streaming large amounts of data into memory
Sampling data
Accessing Data in Structured Flat-File Form
Reading from a text file
Reading CSV delimited format
Reading Excel and other Microsoft Office files
Sending Data in Unstructured File Form
Managing Data from Relational Databases
Interacting with Data from NoSQL Databases
Accessing Data from the Web
Book 7 Evaluating Data
Chapter 1 Conditioning Your Data
Juggling between NumPy and pandas
Knowing when to use NumPy
Knowing when to use pandas
Validating Your Data
Figuring out what’s in your data
Removing duplicates
Creating a data map and data plan
Manipulating Categorical Variables
Creating categorical variables
Renaming levels
Combining levels
Dealing with Dates in Your Data
Formatting date and time values
Using the right time transformation
Dealing with Missing Data
Finding the missing data
Encoding missingness
Imputing missing data
Slicing and Dicing: Filtering and Selecting Data
Slicing rows
Slicing columns
Dicing
Concatenating and Transforming
Adding new cases and variables
Removing data
Sorting and shuffling
Aggregating Data at Any Level
Chapter 2 Shaping Data
Working with HTML Pages
Parsing XML and HTML
Using XPath for data extraction
Working with Raw Text
Dealing with Unicode
Stemming and removing stop words
Introducing regular expressions
Using the Bag of Words Model and Beyond
Understanding the bag of words model
Working with n-grams
Implementing TF-IDF transformations
Working with Graph Data
Understanding the adjacency matrix
Using NetworkX basics
Chapter 3 Getting a Crash Course in MatPlotLib
Starting with a Graph
Defining the plot
Drawing multiple lines and plots
Saving your work
Setting the Axis, Ticks, Grids
Getting the axes
Formatting the axes
Adding grids
Defining the Line Appearance
Working with line styles
Using colors
Adding markers
Using Labels, Annotations, and Legends
Adding labels
Annotating the chart
Creating a legend
Chapter 4 Visualizing the Data
Choosing the Right Graph
Showing parts of a whole with pie charts
Creating comparisons with bar charts
Showing distributions using histograms
Depicting groups using boxplots
Seeing data patterns using scatterplots
Creating Advanced Scatterplots
Depicting groups
Showing correlations
Plotting Time Series
Representing time on axes
Plotting trends over time
Plotting Geographical Data
Visualizing Graphs
Developing undirected graphs
Developing directed graphs
Chapter 5 Exploring Data Analysis
The EDA Approach
Defining Descriptive Statistics for Numeric Data
Measuring central tendency
Measuring variance and range
Working with percentiles
Defining measures of normality
Counting for Categorical Data
Understanding frequencies
Creating contingency tables
Creating Applied Visualization for EDA
Inspecting boxplots
Performing t-tests after boxplots
Observing parallel coordinates
Graphing distributions
Plotting scatterplots
Understanding Correlation
Using covariance and correlation
Using nonparametric correlation
Considering chi-square for tables
Modifying Data Distributions
Using the normal distribution
Creating a z-score standardization
Transforming other notable distributions
Chapter 6 Exploring Four Simple and Effective Algorithms
Guessing the Number: Linear Regression
Defining the family of linear models
Using more variables
Understanding limitations and problems
Moving to Logistic Regression
Applying logistic regression
Considering when classes are more
Making Things as Simple as Naïve Bayes
Finding out that Naïve Bayes isn’t so naïve
Predicting text classifications
Learning Lazily with Nearest Neighbors
Predicting after observing neighbors
Choosing your k parameter wisely
Book 8 Essentials of Machine Learning
Chapter 1 Introducing How Machines Learn
Getting the Real Story about AI
Moving beyond the hype
Dreaming of electric sheep
Overcoming AI fantasies
Considering the relationship between AI and machine learning
Considering AI and machine learning specifications
Defining the divide between art and engineering
Learning in the Age of Big Data
Defining big data
Considering the sources of big data
Specifying the role of statistics in machine learning
Understanding the role of algorithms
Defining what training means
Chapter 2 Demystifying the Math behind Machine Learning
Working with Data
Creating a matrix
Understanding basic operations
Performing matrix multiplication
Glancing at advanced matrix operations
Using vectorization effectively
Exploring the World of Probabilities
Operating on probabilities
Conditioning chance by Bayes’ theorem
Describing the Use of Statistics
Chapter 3 Descending the Right Curve
Interpreting Learning as Optimization
Supervised learning
Unsupervised learning
Reinforcement learning
The learning process
Exploring Cost Functions
Descending the Error Curve
Updating by Mini-Batch and Online
Chapter 4 Validating Machine Learning
Checking Out-of-Sample Errors
Looking for generalization
Getting to Know the Limits of Bias
Keeping Model Complexity in Mind
Keeping Solutions Balanced
Depicting learning curves
Training, Validating, and Testing
Resorting to Cross-Validation
Looking for Alternatives in Validation
Optimizing Cross-Validation Choices
Exploring the space of hyper-parameters
Avoiding Sample Bias and Leakage Traps
Watching out for snooping
Book 9 Applying Machine Learning
Chapter 1 Starting with Simple Learners
Discovering the Incredible Perceptron
Falling short of a miracle
Touching the nonseparability limit
Growing Greedy Classification Trees
Predicting outcomes by splitting data
Pruning overgrown trees
Taking a Probabilistic Turn
Understanding Naïve Bayes
Estimating response with Naïve Bayes
Chapter 2 Leveraging Similarity
Measuring Similarity between Vectors
Understanding similarity
Computing distances for learning
Using Distances to Locate Clusters
Checking assumptions and expectations
Inspecting the gears of the algorithm
Tuning the K-Means Algorithm
Experimenting K-means reliability
Experimenting with how centroids converge
Searching for Classification by k-Nearest Neighbors
Leveraging the Correct K Parameter
Understanding the k parameter
Experimenting with a flexible algorithm
Chapter 3 Hitting Complexity with Neural Networks
Learning and Imitating from Nature
Going forth with feed-forward
Going even deeper down the rabbit hole
Getting back with backpropagation
Struggling with Overfitting
Understanding the problem
Opening the black box
Introducing Deep Learning
Chapter 4 Resorting to Ensembles of Learners
Leveraging Decision Trees
Growing a forest of trees
Understanding the importance measures
Working with Almost Random Guesses
Bagging predictors with Adaboost
Boosting Smart Predictors
Meeting again with gradient descent
Averaging Different Predictors
Chapter 5 Real-World Applications
Classifying Images
Working with a set of images
Extracting visual features
Recognizing faces using eigenfaces
Classifying images
Scoring Opinions and Sentiments
Introducing natural language processing
Understanding how machines read
Processing and enhancing text
Scraping textual data sets from the web
Handling problems with raw text
Using Scoring and Classification
Performing classification tasks
Analyzing reviews from e-commerce
Recommending Products and Movies
Realizing the revolution
Downloading rating data
Trudging through the MovieLens data set
Navigating through anonymous web data
Encountering the limits of rating data
Leveraging SVD
Index
EULA