[#Script #Coding] A Day in the Life of freeCodeCamp U.S. Staff (A rare in-person meeting)

A Day in the Life of freeCodeCamp U.S. Staff (A rare in-person meeting)

By freeCodeCamp.org
Published: Mar 07, 2023


freeCodeCamp.org This web programming course from Harvard University picks up where CS50x leaves off. It dives more deeply into the design and implementation of web apps with Python, JavaScript, and SQL using frameworks like Django, React, and Bootstrap. Topics include database design, scalability, security, and user experience. You will learn how to write and use APIs, create interactive UIs, and leverage cloud services like GitHub and Heroku.

Slides, source code, and more at
https://cs50.harvard.edu/web/2020/

Brian Yu teaches this course.

Watch the original CS50x course: https://youtu.be/8mAITcNt710

    Course Contents

  • (00:00:29) Introduction
  • (00:02:42) Lecture 0: HTML, CSS
  • (02:06:14) Lecture 1: Git
  • (02:59:29) Lecture 2: Python
  • (04:07:10) Lecture 3: Django
  • (05:46:15) Lecture 4: SQL, Models, and Migrations
  • (07:40:21) Lecture 5: JavaScript
  • (09:31:46) Lecture 6: User Interfaces
  • (11:12:01) Lecture 7: Testing, CI/CD
  • (12:45:59) Lecture 8: Scalability and Security

Learn to code for free and get a developer job: https://www.freecodecamp.org

Read hundreds of articles on programming: https://freecodecamp.org/news

[#Script #Coding] Python Reinforcement Learning using OpenAI Gymnasium – Full Course

Python Reinforcement Learning using OpenAI Gymnasium – Full Course

By freeCodeCamp.org
Published: Mar 21, 2023


freeCodeCamp.org Learn the basics of reinforcement learning and how to implement it using Gymnasium (previously called OpenAI Gym). Gymnasium is an open source Python library originally created by OpenAI that provides a collection of pre-built environments for reinforcement learning agents. It provides a standard API to communicate between learning algorithms and environments, as well as a standard set of environments compliant with that API.

Reinforcement learning is an area of machine learning concerned with how intelligent agents ought to take actions in an environment in order to maximize the notion of cumulative reward.

Google Colab Notebook (full tutorial code): https://colab.research.google.com/drive/1oNxRpRnht2Ogu5Id76YLLg_hkmwy-yKy?usp=sharing

Gymnasium documentation: https://gymnasium.farama.org/

Course developed by @EverythingTechWithMustaf
Mustaf on LinkedIn: https://www.linkedin.com/in/mustafa-esoofally-aab0501ab/

    Contents

  • (0:00:00) Introduction
  • (0:04:19) Reinforcement Learning Basics (Agent and Environment)
  • ((0:12:15) Introduction to OpenAI Gymnasium
  • (0:14:59) Blackjack Rules and Implementation in Gymnasium
  • (0:18:27) Solving Blackjack
  • (0:19:46) Install and Import Libraries
  • (0:23:19) Observing the Environment
  • (0:27:55) Executing an Action in the Environment
  • (0:33:01) Understand and Implement Epsilon-greedy Strategy to Solve Blackjack
  • (0:42:28) Understand the Q-values
  • (0:47:29) Training the Agent to Play Blackjack
  • (0:57:10) Visualize the Training of Agent Playing Blackjack
  • (1:04:34) Summary of Solving Blackjack
  • (1:09:57) Solving Cartpole Using Deep-Q-Networks(DQN)
  • (2:29:29) Summary of Solving Cartpole
  • (2:34:07) Advanced Topics and Introduction to Multi-Agent Reinforcement Learning using Pettingzoo

Learn to code for free and get a developer job: https://www.freecodecamp.org

Read hundreds of articles on programming: https://freecodecamp.org/news

[#Script #Coding] Web Development with Python Tutorial – Flask & Dynamic Database-Driven Web Apps

Web Development with Python Tutorial – Flask & Dynamic Database-Driven Web Apps

By freeCodeCamp.org
Published: Feb 16, 2023


freeCodeCamp.org Learn how to develop Dynamic Database-Driven Web Apps with Python, Flask, and MySQL. This course is broken up into two parts. In part one, you will learn how to build and deploy a site using the Flask Python web framework. In part two, you will connect the Flask application from the first part to a cloud MySQL database and learn how to deploy a production-ready database-driven web application.

Aakash N S created this course.
Submit your project & earn a certificate: https://jovian.com/learn/web-development-with-python-and-flask
Check out Jovian’s YouTube channel: https://youtube.com/@jovianhq

Notes & references links:
Part 1: https://jovian.com/aakashns/web-development-with-python
Part 2: https://jovian.com/aakashns/database-driven-web-applications

    Contents

    • Part 1

    • (0:00:00) Introduction
    • (0:02:07) 1.1 Project Setup & Flask Basics
    • (0:22:25) 1.2 Building Web Pages using HTML
    • (0:40:57) 1.3 Styling with CSS & Bootstrap
    • (1:08:25) 1.4 Dynamic Data using Templates
    • (1:27:22) 1.5 Deploying to the Cloud with Render
    • (1:42:39) 1.6 Functional and Aesthetic Improvements
    • (1:58:44) 1.7 Summary & Future Work
    • Part 2

    • (2:04:19) Database-Driven Web Applications
    • (2:07:24) 2.1 Project Setup & Deployment
    • (2:21:44) 2.2 Cloud MySQL Database Setup
    • (2:36:20) 2.3 DB Connection with SQLAlchemy
    • (2:56:22) 2.4 Display DB Data on Web Page
    • (3:20:04) 2.5 Dynamic Database-Driven Pages
    • (3:49:23) 2.6 HTML Form for Applications
    • (4:15:37) 2.7 Saving Applications to DB
    • (4:26:23) 2.8 Summary & Future Work
    • (4:37:50) Conclusion

Learn to code for free and get a developer job: https://www.freecodecamp.org

Read hundreds of articles on programming: https://freecodecamp.org/news

And subscribe for new videos on technology every day: https://youtube.com/subscription_cent…

[#Script #Coding] Harvard CS50’s Web Programming with Python and JavaScript – Full University Course

Harvard CS50’s Web Programming with Python and JavaScript – Full University Course

By freeCodeCamp.org
Published: Mar 08, 2023


freeCodeCamp.org This web programming course from Harvard University picks up where CS50x leaves off. It dives more deeply into the design and implementation of web apps with Python, JavaScript, and SQL using frameworks like Django, React, and Bootstrap. Topics include database design, scalability, security, and user experience. You will learn how to write and use APIs, create interactive UIs, and leverage cloud services like GitHub and Heroku.

Slides, source code, and more at https://cs50.harvard.edu/web/2020/

Brian Yu teaches this course.

Watch the original CS50x course: https://youtu.be/8mAITcNt710

    Course Contents

  • (00:00:29) Introduction
  • (00:02:42) Lecture 0: HTML, CSS
  • (02:06:14) Lecture 1: Git
  • (02:59:29) Lecture 2: Python
  • (04:07:10) Lecture 3: Django
  • (05:46:15) Lecture 4: SQL, Models, and Migrations
  • (07:40:21) Lecture 5: JavaScript
  • (09:31:46) Lecture 6: User Interfaces
  • (11:12:01) Lecture 7: Testing, CI/CD
  • (12:45:59) Lecture 8: Scalability and Security

Learn to code for free and get a developer job: https://www.freecodecamp.org

Read hundreds of articles on programming: https://freecodecamp.org/news

And subscribe for new videos on technology every day: https://youtube.com/subscription_cent…

[#Script #Coding] Using map() in Python #shorts

Using map() in Python #shorts

By freeCodeCamp.org
Published: Jan 27, 2023


freeCodeCamp.org Master the HTTP networking protocol by completing over 80 coding exercises and quizzes in JavaScript. Once you’ve learned it all, we’ll build a real web crawler using Node.js to put all the concepts into practice.

HTTP is the backbone of the modern web, and in this course we’ll do a deep dive into all of the fundamentals you’ll need to know to master web networking. We’ll use the Fetch API to interact with a live RESTful server in order to connect the different components of a video game.

Code: https://github.com/bootdotdev/fcc-learn-http-assets

Follow this course interactively on Boot.dev: https://boot.dev/learn/learn-http

Lane Wagner created this course.
Boot.dev: https://boot.dev
Lane on Twitter: https://twitter.com/wagslane
Lane’s YouTube: https://www.youtube.com/@bootdotdev
New to JavaScript? Beginner course: https://boot.dev/learn/learn-javascript

    Contents

  • (0:00:00) Introduction
  • (0:03:32) Ch 1 – Why HTTP
  • (0:27:31) Ch 2 – DNS
  • (0:48:11) Ch 3 – URIs and URLs
  • (1:16:21) Ch 4 – Async JavaScript
  • (1:49:48) Ch 5 – Errors in JS
  • (2:04:54) Ch 6 – HTTP Headers
  • (2:21:04) Ch 7 – JSON
  • (2:41:09) Ch 8 – HTTP Methods
  • (3:17:01) Ch 9 – URL Paths
  • (3:36:33) Ch 10 – HTTPS security
  • (3:48:24) Proj – Setup Dev Environment
  • (3:51:28) Proj – Hello World
  • (3:56:29) Proj – Normalize URLs
  • (4:11:05) Proj – URLs from HTML
  • (4:27:49) Proj – The main.js file
  • (4:33:10) Proj – Using Fetch
  • (4:45:16) Proj – Recursively crawling the web
  • (4:55:33) Proj – Print an SEO report
  • (5:06:59) Proj – Conclusion
  • (5:08:04) Congratulations

Documentation used:
Fetch API: https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API
URL constructor: https://developer.mozilla.org/en-US/docs/Web/API/URL/URL
Fetch Response: https://developer.mozilla.org/en-US/docs/Web/API/Response


Learn to code for free and get a developer job: https://www.freecodecamp.org

Read hundreds of articles on programming: https://freecodecamp.org/news
Watch the full Python course: https://www.youtube.com/watch?v=eWRfhZUzrAc

[#Script #Coding] Python Game Development Project Using OOP – Minesweeper Tutorial (w/ Tkinter)

Python Game Development Project Using OOP – Minesweeper Tutorial (w/ Tkinter)

By freeCodeCamp.org
Published: Apr 18, 2022


freeCodeCamp.org In this course, you will improve your Python skills by coding a Minesweeper game using the tkinter library. The game is fully implemented using Object Oriented Programming.

Course from JimShapedCoding. Check out his channel: https://www.youtube.com/channel/…

Code: https://github.com/jimdevops19/MinesweeperGame

    Course Contents:

  • (0:00:00) Getting Started
  • (0:26:22) Creating Cells & Mines
  • (0:49:40) Minesweeper Algorithms
  • (1:36:29) Display Game data
  • (2:00:28) Finishing touches and playing the game

Learn to code for free and get a developer job: https://www.freecodecamp.org

Read hundreds of articles on programming: https://freecodecamp.org/news

And subscribe for new videos on technology every day: https://youtube.com/subscription_cent…

[READ MORE]

[#Script #Coding] Six Quick Python Projects

Six Quick Python Projects

By freeCodeCamp.org
Published: Mar 24, 2021


freeCodeCamp.org Improve your Python programming skills by coding six different Python projects. You will create a web scraping program, a bulk file re-namer, a weather program, a countdown timer, a password generator, and a QR code encoder / decoder.

Course developed by Code With Tomi. Check out his channel: https://www.youtube.com/c/CodeWithTomi

    Course Contents

  • (00:00) Intro
  • (00:37) Web Scraping Program
  • (13:53) Renaming Bulk Files
  • (24:54) Getting Weather Information
  • (33:12) Countdown Timer
  • (42:11) Password Generator
  • (53:12) QR Code With Python

[#Script #Coding] Kivy Course – Create Python Games and Mobile Apps

Kivy Course – Create Python Games and Mobile Apps

By freeCodeCamp.org
Published: May 12, 2021


freeCodeCamp.org In this Kivy tutorial, you will learn to create games and applications with Python for every platform (Windows, Mac, iOS, Android).

First, you will learn how to use the Kivy library. You will create graphical user interfaces with buttons, labels, and images. You will learn how to implement many kinds of layouts to create interfaces that can adapt to every screen size from desktop to mobile.

Then you will create a full game with Kivy and Python. The GALAXY project is a perspective game where you need to keep your spaceship on the track.

Course developed by Jonathan Roux. Check out his channel:
https://www.youtube.com/channel/UCvRp…

Source code and resources files: https://codewithjonathan.net/resource…
Try GALAXY on your mobile: http://onelink.to/6w47wy

    Course Contents
    Introduction

  • 0:00:00 Introduction
  • 0:02:03 The GUI libraries with Python (tkinter, QT, pygame…)
  • 0:02:44 The course curriculum
  • 0:03:37 Prerequisites
    Setup

  • 0:04:09 Project creation and installation of Kivy
  • 0:13:03 Download the resources files
    The Lab project | 1 – Layouts

  • 0:13:31 Introduction
  • 0:16:55 Button and Label
  • 0:23:51 BoxLayout
  • 0:30:49 Size_hint and Pos_hint
  • 0:37:18 What can we do with Kivy ?
  • 0:39:23 Embed a layout
  • 0:41:10 AnchorLayout
  • 0:45:36 GridLayout
  • 0:50:15 StackLayout
  • 0:59:30 ScrollView
  • 1:02:28 PageLayout
  • 1:05:05 Conclusion
  • 1:07:10 Layouts : a practical example
    The Lab project | 2 – Widgets

  • 1:08:58 Introduction
  • 1:10:39 Button click
  • 1:15:42 Exercise : Create a counter
  • 1:18:06 Custom font
  • 1:20:09 Toggle Button
  • 1:24:00 Exercise : Enable/disable the counter
  • 1:25:41 Disabled button
  • 1:27:52 Switch
  • 1:29:55 Slider
  • 1:32:13 Exercise : Display the value of the slider
  • 1:35:38 Exercise : Enable the slider
  • 1:37:34 Progress bar
  • 1:39:05 TextInput
  • 1:43:31 Images
  • 1:46:56 Create an application with multiple screens ?
    The Lab project | 3 – Canvas

  • 1:47:39 Introduction
  • 1:51:34 Rectangle and ellipse
  • 1:56:32 Line
  • 1:58:28 Exercise : Cross
  • 2:00:32 Lines (Circle, ellipse, rectangle) and colors
  • 2:04:15 Canvas from the code
  • 2:07:30 Move the rectangle
  • 2:10:41 Exercise : borders of the screen
  • 2:13:25 Ball and animation
  • 2:19:19 Exercise : Make the ball rebound
  • 2:23:05 Coordinates and RelativeLayout
  • 2:28:56 Exercise : Flag
    The Galaxy project | V1

  • 2:30:32 Introduction
  • 2:37:40 Project creation
  • 2:39:09 Perspective point
  • 2:44:35 Vertical lines
  • 2:55:11 Principle : Perspective transformation
  • 3:01:21 Perspective transformation
  • 3:11:34 Exercise : Re-center
  • 3:14:37 Horizontal lines
  • 3:21:52 Horizontal lines perspective
  • 3:28:33 Forward movement
  • 3:36:08 Delta time
  • 3:40:34 Exercise : Lateral movement
  • 3:44:01 Exercise : Key press
  • 3:47:58 Keyboard
    The Galaxy project | V2

  • 3:53:58 Introduction
  • 3:55:02 Structure our code
  • 3:57:41 Tiles and lines coordinates
  • 4:05:24 Exercise : Line Y from index
  • 4:07:26 Display a tile
  • 4:13:30 Move the tile
  • 4:16:22 Display several tiles
  • 4:20:36 Tiles : infinite generation
  • 4:28:10 Random land generation
  • 4:34:16 Exercise : Do not exit the land
  • 4:36:42 Exercise : Start with a straight line
  • 4:38:49 Exercise : Display the ship
  • 4:44:52 Exercise : Fix the game speed
  • 4:49:13 Collisions
    The Galaxy project | V3

  • 4:58:34 Introduction
  • 4:59:34 « Game over » state
  • 5:04:07 Create the menu
  • 5:08:32 Start of the game
  • 5:16:25 Restart the game
  • 5:19:45 Finalise the menu
  • 5:24:38 Exercise : Add the background image
  • 5:26:15 Exercise : Score
  • 5:31:11 Exercise : Add the sounds
  • 5:40:22 Conclusion

[#Script #Coding] Python API Development – Comprehensive Course for Beginners

Python API Development – Comprehensive Course for Beginners

By freeCodeCamp.org
Published: Nov 01, 2021


freeCodeCamp.org Learn Python API development in one of the most comprehensive courses ever on the topic. You will build a full-fledged API in Python using FastAPI. You will learn the fundamentals of API design including routes, serialization/deserialization, schema validation, and models. You will also learn about SQL, testing with pytest, and how to build out a CI/CD pipeline using GitHub actions.

Code: https://github.com/Sanjeev-Thiyagaraj…

Course from Sanjeev Thiyagarajan. Check out his channel: https://www.youtube.com/channel/UC2sY…

    Course Contents

  • 00:00 Intro
  • 06:33 Project Overview
  • 11:22 Mac Python Installation
  • 13:15 Mac VS Code install and setup
  • 16:37 Windows Python Installation
  • 18:30 Windows VS Code install and setup
  • 22:11 Python virtual Env Basics
  • 24:35 Virtual Env on windows
  • 28:56 Virtual Env on Mac
  • 34:17 Install dependencies w/ pip
  • 36:21 Starting FastAPI
  • 39:23 Path Operations
  • 53:22 Intro toman
  • 57:34 HTTP Requests
  • 1:07:29 Schema Validation with Pydantic
  • 1:22:45 CRUD Operations
  • 1:29:44 Storing in Array
  • 1:34:06 Creating
  • 1:38:15 Postman Collections & saving requests
  • 1:39:47 Retrieve One
  • 1:48:10 Path order Matters
  • 1:52:46 Changing response Status Codes
  • 2:01:49 Deleting
  • 2:10:31 Updating
  • 2:18:02 Automatic Documentation
  • 2:21:34 Python packages
  • 2:24:11 Database Intro
  • 2:28:54 Postgres Windows Install
  • 2:31:28 Postgres Mac Install
  • 2:34:26 Database Schema & Tables
  • 2:44:35 Managing Postgres with PgAdmin GUI
  • 3:12:10 Your first SQL Query
  • 3:19:43 Filter results with “where”
  • 3:22:55 SQL Operators
  • 3:26:38 IN
  • 3:28:07 Pattern matching with LIKE
  • 3:31:59 Ordering Results
  • 3:36:27 LIMIT & OFFSET
  • 3:39:21 Modifying Data
  • 3:53:48 Setup App Database
  • 3:58:21 Connecting to database w/ Python
  • 4:08:00 Database CRUD
  • 4:31:18 ORM intro
  • 4:35:33 SQLALCHEMY setup
  • 4:55:25 Adding CreatedAt Column
  • 5:00:59 Get All
  • 5:07:55 Create
  • 5:15:50 Get by ID
  • 5:19:50 Delete
  • 5:22:31 Update
  • 5:28:21 Pydantic vs ORM Models
  • 5:32:21 Pydantic Models Deep Dive
  • 5:38:57 Response Model
  • 5:50:08 Creating Users Table
  • 5:54:50 User Registration Path Operation
  • 6:03:27 Hashing Passwords
  • 6:08:49 Refractor Hashing Logic
  • 6:10:32 Get User by ID
  • 6:17:13 FastAPI Routers
  • 6:27:34 Router Prefix
  • 6:30:31 Router Tags
  • 6:32:49 JWT Token Basics
  • 6:47:03 Login Process
  • 7:00:44 Creating Token
  • 7:09:58 OAuth2 PasswordRequestForm
  • 7:13:23 Verify user is Logged In
  • 7:25:21 Fixing Bugs
  • 7:27:59 Protecting Routes
  • 7:36:17 Test Expired Token
  • 7:38:13 Fetching User in Protected Routes
  • 7:42:44 Postman advanced Features
  • 7:50:33 SQL Relationship Basics
  • 7:54:59 Postgres Foreign Keys
  • 8:07:20 SQLAlchemy Foreign Keys
  • 8:13:40 Update Schema to include User
  • 8:17:59 Assigning Owner id when creating new
  • 8:21:01 Delete and Update only your own
  • 8:27:48 Only Retrieving Logged in User’s
  • 8:33:37 Sqlalchemy Relationships
  • 8:38:32 Query Parameters
  • 8:50:46 Cleanup our main.py file
  • 8:53:53 Env Variables
  • 9:21:20 Vote/Like Theory
  • 9:26:36 Votes Table
  • 9:31:33 Votes Sqlalchemy
  • 9:34:11 Votes Route
  • 9:52:31 SQL Joins
  • 10:15:26 Joins in SqlAlchemy
  • 10:28:21 Get One with Joins
  • 10:30:18 What is a database migration tool
  • 10:33:45 Alembic Setup
  • 11:13:50 Disable SqlAlchemy create Engine
  • 11:14:28 What is CORS?
  • 11:23:38 Git PreReqs
  • 11:27:40 Git Install
  • 11:29:23 Github
  • 11:34:39 Heroku intro
  • 11:35:40 Create Heroku App
  • 11:40:21 Heroku procfile
  • 11:44:59 Adding a Postgres database
  • 11:48:42 Env Variables in Heroku
  • 11:58:59 Alembic migrations on Heroku Postgres instance
  • 12:02:52 Pushing changed to production
  • 12:05:04 Create an Ubuntu VM
  • 12:08:04 Update packages
  • 12:10:47 Install Python
  • 12:12:21 Install Postgres & setup password
  • 12:17:28 Postgres Config
  • 12:24:50 Create new user and setup python evironment
  • 12:34:06 Env Variables
  • 12:42:24 Alembic migrations on production database
  • 12:45:57 Gunicorn
  • 12:54:12 Creating a Systemd service
  • 13:04:45 NGINX
  • 13:10:45 Setting up Domain name
  • 13:15:19 SSL/HTTPS
  • 13:19:31 NGINX enable
  • 13:20:06 Firewall
  • 13:23:47 Pushing code changes to Production
  • 13:26:09 Dockerfile
  • 13:38:39 Docker Compose
  • 13:48:34 Postgres Container
  • 13:56:22 Bind Mounts
  • 14:03:39 Dockerhub
  • 14:08:08 Production vs Development
  • 14:14:51 Testing Intro
  • 14:17:19 Writing your first test
  • 14:30:22 The -s & -v flags
  • 14:31:44 Testing more functions
  • 14:35:29 Parametrize
  • 14:40:21 Testing Classes
  • 14:48:37 Fixtures
  • 14:55:40 Combining Fixtures + Parametrize
  • 14:59:13 Testing Exceptions
  • 15:06:07 FastAPI TestClient
  • 15:14:26 Pytest flags
  • 15:17:31 Test create user
  • 15:25:23 Setup testing database
  • 15:36:47 Create & destroy database after each test
  • 15:44:18 More Fixtures to handle database interaction
  • 15:50:35 Trailing slashes in path
  • 15:53:12 Fixture scope
  • 16:07:50 Test user fixture
  • 16:14:40 Test/validate token
  • 16:18:59 Conftest.py
  • 16:22:09 Testing
  • 17:34:15 CI/CD intro
  • 17:43:29 Github Actions
  • 17:49:32 Creating Jobs
  • 17:57:38 setup python/dependencies/pytest
  • 18:06:14 Env variables
  • 18:11:19 Github Secrets
  • 18:18:14 Testing database
  • 18:23:42 Building Docker images
  • 18:34:33 Deploy to heroku
  • 18:49:10 Failing tests in pipeline
  • 18:52:18 Deploy to Ubuntu

Learn to code for free and get a developer job: https://www.freecodecamp.org

Read hundreds of articles on programming: https://freecodecamp.org/news

And subscribe for new videos on technology every day: https://youtube.com/subscription_cent…


[#Script #Coding] Microservices with FastAPI – Full Course

Microservices with FastAPI – Full Course

By freeCodeCamp.org
Published: Mar 24, 2022


freeCodeCamp.org Learn how to create a simple Microservices app using Python FastAPI with React on the frontend. We will use RedisJSON as a Database and dispatch events with Redis Streams. RedisJSON is a NoSQL database just like MongoDB and Redis Streams is an Event Bus just like RabbitMQ or Apache Kafka.

Course from Scalable Scripts. Check out their channel: https://www.youtube.com/c/ScalableScripts

Code: https://github.com/scalablescripts/fa…

    Course Contents:

  • (00:00) Intro
  • (01:30) App Demo
  • (03:29) Inventory Microservice Setup
  • (05:46) Redis Cloud
  • (07:13) Connect to Redis Cloud
  • (09:04) Products CRUD
  • (20:05) Payment Microservice Setup
  • (25:40) Internal Http Requests
  • (30:54) Background Tasks
  • (36:50) Redis Streams
  • (58:34) Frontend

Proudly powered by WordPress
Creative Commons License
EricBrooks.Com® is licensed under a Creative Commons License.

Disclaimer: The views expressed herein are solely those of Eric Brooks. They do not necessarily reflect those of his employers, friends, contacts, family, or even his pets (though my cat, Puddy, seems to agree with me on many key issues.). In accordance to my terms of use, you hereby acknowledge my right to psychoanalyze you, practice accupuncture, and mock you incessantly with every visit. As the user, you also acknowledge that the author has been legally declared a "Problem Adult" by the Commonwealth of Pennsylvania, and is therefore not responsible for any of his actions. ALSO, the political views and products advertised on this site may/may not reflect the views of Puddy or myself, so please don't take them as an endorsement. We just need to eat.


Connect