commit 44e64fcbdb987c2c4a43e15d7720fb3b865b15ef Author: William Mantly Date: Fri Sep 22 10:02:55 2023 -0400 stuff diff --git a/1-schema-designer/README.md b/1-schema-designer/README.md new file mode 100644 index 0000000..9da79c1 --- /dev/null +++ b/1-schema-designer/README.md @@ -0,0 +1,58 @@ +## Schema Designer + +Time to learn about databases. Take a look at this [database schema designer](http://ondras.zarovi.cz/sql/demo/). We're going to design databases with it. Lots of them. +For this assignment, design databases that model the following relationships. Once you're done modeling them, take a screen shot of your schema and put it in the pics folder. Please name the pics to reflect which database they model. + +#### Snacks + +Usha downstairs needs some help with her database of snacks. + +A snack has a brand name, a type (ie. candy, cake), a price, and an available quantity. + +#### Family Tree + +Create a table / tables to hold your family tree. + +#### Students and Teachers + +Help a school organize their scheduling system. + +- A class has many students. +- A student has many classes. +- A teacher has many classes. +- A class can have many teachers. + +#### Employees + +A company's HR department needs to store their employee roster. + +Employees are identified by ssn, with salary and phone number as attributes. + +Departments are identified by department id, with name and budget as attributes. + +A department has many employees. + +#### Subreddit + +Model a reddit subreddit. Go on [reddit](http://www.reddit.com) and look at what data a subreddit holds. + +We know that users can perform the following actions: + +- Subscribe to a subreddit +- Submit a post +- Submit a comment +- Upvote or Downvote a post + +#### Art Gallery + +An art gallery needs to upgrade their systems. + +Galleries keep information about artists, their names (which are unique), birthplaces, age, and style of art. + +For each piece of artwork, the artist, the year it was made, its unique title, its type of art (e.g., painting, lithograph, sculpture, photograph), and its price must be stored. + +Pieces of artwork are also classified into groups of various kinds, for example, portraits, still lifes, works by Picasso, or works of the 19th century; a given piece may belong to more than one group. + +You don't have to model exactly this. Think about what your art gallery is going to sell and it's interaction with customers. + +Model what you think the database needs for the beginning of the business, and build the model so that it has room to grow into its future needs. diff --git a/1-schema-designer/pics/.gitkeep b/1-schema-designer/pics/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/2-querying-a-db/README.md b/2-querying-a-db/README.md new file mode 100644 index 0000000..211dfe3 --- /dev/null +++ b/2-querying-a-db/README.md @@ -0,0 +1,49 @@ +## Querying a SQL Database + +In this challenge you are given a SQL database with data inside. You will need to mine it for important information. + +Open it up in terminal by typing +```bash +$ sqlite3 sitemetrics.db +``` +To see the existing tables and columns, use the .schema command. Map this by hand or on SQL designer so you have a greater understanding of what we're working with. + +#### Answer the following questions in this file, with the results and the sql you wrote to get it. +------------- +##### How many people are from California? + + +##### Who has the most page views? How many do they have, and where are they from? + + +##### Who has the least page views? How many do they have and where are they from? + + +##### Who are the most recent visitors to the site?(at least 3) + + +##### Who was the first visitor? + + +##### Who has an email address with the domain 'horse.edu'? + + +##### How many people are from the city Graford? + + +##### What are the names of all the cities that start with the letter V, in alphabetical order? + + +##### What are the names and home cities for people searched for the word "drain"? + + +##### How many times was "trousers" a search term? + + +##### What were the search terms used by visitors who last visited on August 22 2014? + + +##### What was the most frequently used search term by people from Idaho? + + +##### What is the name of user 391, and what are his search terms? diff --git a/2-querying-a-db/sitemetrics.db b/2-querying-a-db/sitemetrics.db new file mode 100644 index 0000000..55c6316 Binary files /dev/null and b/2-querying-a-db/sitemetrics.db differ diff --git a/2-querying-a-db/test.py b/2-querying-a-db/test.py new file mode 100644 index 0000000..fb1e49a --- /dev/null +++ b/2-querying-a-db/test.py @@ -0,0 +1,3 @@ +import sqlite3 +conn = sqlite3.connect('sitemetrics.db') +c = conn.cursor() diff --git a/3-create-a-db-from-csv/README.md b/3-create-a-db-from-csv/README.md new file mode 100644 index 0000000..60d5eae --- /dev/null +++ b/3-create-a-db-from-csv/README.md @@ -0,0 +1,49 @@ +## Create a DB from CSV data + +In this challenge, you will be asked to import CSV data into a sqlite database. + +In the CSV file, you will find a person with a name, email, country of residence, and three phone numbers. + +Create a users table and a phone numbers table. The relation is that a user has many phone numbers. Create the schema in SQL designer and push it to this folder on Github. + +When you have done that, use Python's sqlite3 library to create the tables. + +#### SQLite 3 + +Take a look here at Python's sqlite driver [documentation](https://docs.python.org/3.4/library/sqlite3.html) + +You need to establish a database and a cursor object. +```py +import sqlite3 +conn = sqlite3.connect('mydb.db') +c = conn.cursor() +``` +To create a table: +```py +c.execute("CREATE TABLE 'users' ( +'id' INTEGER, +'name' VARCHAR, +'account' VARCHAR, +'balance' REAL, +PRIMARY KEY ('id') +)") +``` +To insert a row of data: +```py +c.execute("INSERT INTO users(name, account, balance) VALUES(?,?,?)", (name, account, balance)) +``` +**Note: ** You must specify the columns names otherwise sqlite3 will default to all columns. + +Sandbox! dir() and help() the cursor for all the methods possible. + +What does executemany do? + +What are your options for fetch? + +#### CSV + +Take a look at the CSV library for Python's [documentation](https://docs.python.org/3.4/library/csv.html) + +Sandbox some more with CSV. + +Import the file using Python's csv library and figure out how to write this data into the appropriate table and column in the db. diff --git a/3-create-a-db-from-csv/csvdata.db b/3-create-a-db-from-csv/csvdata.db new file mode 100644 index 0000000..e69de29 diff --git a/3-create-a-db-from-csv/employees.csv b/3-create-a-db-from-csv/employees.csv new file mode 100644 index 0000000..3720103 --- /dev/null +++ b/3-create-a-db-from-csv/employees.csv @@ -0,0 +1,501 @@ +name,cellphone,homephone,workphone,email,country +Spencer Calhoun,851-969-2083,866-063-3118,712-867-4248,tracey@basinbasket.com,Canada +Huey Chapman,989-055-9832,979-965-0313,133-023-2097,hubert.angelo@branch.info,Chad +Roxanne Olson,348-959-1920,185-898-0200,180-511-8464,jim.tom.calvin@nerve.edu,Latvia +Ramona Baird,448-118-6886,305-766-9752,225-083-0934,titus@respect.me,Niger +Marybeth Reed,210-629-0376,100-650-3326,135-488-4820,sonja.lila@monkeymonth.org,Virgin Islands +Dionne Alvarado,754-065-9836,537-553-2742,496-101-5509,matilda@size.com,Bermuda +Lowell Montes,492-632-1580,242-572-3002,858-851-8259,bobbie@leather.edu,Morocco +Martina Marquez,869-720-9886,439-699-8114,689-188-7146,jesse@andangle.info,Montserrat +Cornell Baird,114-319-1689,155-659-4598,260-914-9716,alphonse.randell@meatmedical.info,Afghanistan +Jannie Newton,193-857-4269,795-534-6183,398-401-4661,ollie@littleliving.com,Anguilla +Shannon Collier,295-036-5890,842-173-6261,355-435-6749,ollie.nickolas.maynard@birthbit.com,Honduras +Amos Landry,213-459-1778,984-938-1050,782-023-1762,hope@death.org,Poland +Lidia Ward,753-150-4771,413-405-0457,824-374-7177,wyatt.marquis@exchangeexistence.me,Palau +Colleen Dodson,696-260-2537,395-336-8703,166-202-6466,brant.wilton@sexshade.info,Togo +Bruno Herring,332-741-9103,231-196-7089,770-288-0684,wilford.sonny@inventioniron.com,Palestine +Young Grimes,374-574-9098,487-571-5797,945-490-2059,kimberley.shanna.helena@danger.edu,Taiwan +Odell Ray,935-980-0919,572-776-1678,589-388-7294,alvina.suzan@low.org,Philippines +Guadalupe Wells,472-062-2539,639-247-8341,274-467-5579,jon.ronnie@morningmother.org,French Polynesia +Maurice Tatum,565-926-7737,593-977-8301,602-420-7977,margret.dominique.socorro@thick.edu,Afghanistan +Thanh Forbes,624-164-6615,302-362-0629,444-131-4630,tiffany.carmen.rosa@comfort.org,Papua New Guinea +Chad Arroyo,452-364-3229,348-807-4897,256-508-4367,elnora@last.org,French Polynesia +Tanisha Bunch,202-553-9525,405-714-9328,355-154-6594,kenny.hubert.angelo@brushbucket.info,Falkland Islands +Karin Manning,909-320-6912,712-598-1139,761-444-9255,heidi.glenda.lydia@little.edu,Cambodia +Casey Hines,662-048-4141,321-120-4736,362-511-1215,jackie@teachingtendency.me,Macao +Allene Baxter,354-551-4862,866-941-8694,217-339-3435,diego.alexis@crycup.com,Virgin Islands +Lucien Archer,475-991-6298,841-095-2574,837-864-6685,janet.catherine.frances@value.org,Argentina +Lea Spencer,171-759-0369,338-206-6837,382-308-5232,janet.catherine@top.me,Mauritania +Douglas Hood,717-486-5409,142-771-2094,518-079-0431,agatha@windowwine.org,Honduras +Alberto Bacon,957-424-0402,789-492-6352,130-807-0760,raleigh@seedseem.com,Armenia +Desiree Wolf,334-773-0475,773-136-1998,339-959-9442,lawerence.abram.rashad@effect.org,Turkey +Darin Ramirez,873-127-9623,867-853-8066,876-630-1771,dottie@bed.me,Thailand +Carey Cabrera,574-333-4775,581-165-3532,860-689-7641,amanda.stephanie@curtaincurve.edu,British Indian Ocean +Laurence Wills,890-699-3170,135-135-9131,512-535-8693,stacey.carmen.wiley@smile.org,Somalia +Wendy Underwood,200-584-2845,319-562-0839,388-584-3780,augustine.young@greengrey.org,Nauru +Renita Mobley,441-349-5631,673-031-3555,362-996-9161,spencer.rodolfo.myron@possible.info,Kuwait +Marian Mcpherson,176-972-5764,465-115-1889,797-932-1634,horacio.brice@catcause.info,Korea +Aron Hamilton,575-425-6205,925-189-8997,648-974-3836,madeleine.mara@political.org,Malta +Demetrius Figueroa,813-250-8450,871-272-0203,520-657-4823,suzette.corine@over.org,France +Doyle Savage,606-531-0625,134-873-7732,319-625-2961,joan@attentionattraction.com,Estonia +Malinda Moyer,663-952-7160,246-726-3528,114-229-4749,sherrie.addie.francine@make.org,Bulgaria +Isiah Frye,134-049-0034,135-335-4433,605-221-8673,curt@instrumentinsurance.org,Faroe Islands +Leonardo Silva,219-323-6375,159-752-1411,933-094-5098,blaine.ernie@trueturn.info,Cambodia +Chelsea Doyle,804-772-7087,186-009-8684,287-025-1831,ariel.abdul.dusty@crush.org,Dominican Republic +Rickey Ferrell,841-803-9678,615-434-9940,617-075-3227,bess.iona@narrow.me,Bolivia +Oswaldo Chen,762-912-8346,513-067-0648,283-835-7076,fredric.bradly@rodroll.org,Liberia +Donn Elder,906-097-6441,773-165-4522,744-011-5714,karl@businessbut.info,Germany +Flora Davila,368-394-1360,391-752-7365,913-508-9365,chris@aboutaccount.com,Nicaragua +Karyn Ingram,243-691-0903,109-649-7575,521-884-1355,garland.miles@stomachstone.me,Cape Verde +Jillian James,149-302-6573,999-740-6466,835-592-7400,bettie.elisabeth@coalcoat.me,Namibia +Johnie Jacobs,202-411-7904,683-443-1615,340-948-6481,hanna.ariel.winona@support.org,Northern Mariana +Claire Moses,360-595-2944,494-305-5329,959-242-5109,haywood@bootbottle.me,Austria +Jane Fuentes,114-974-5866,730-734-3818,103-106-9460,randy@fowl.me,Tajikistan +Karrie Pickett,904-352-3083,339-115-6101,426-533-4838,tameka.saundra@relationreligion.edu,Nigeria +Len Ortega,325-829-8437,759-542-2771,876-965-0152,kieth.ivory@power.org,Zimbabwe +Celestine Winters,762-284-5270,203-331-6714,105-075-7901,dirk.branden@bedbee.com,Cambodia +Trey Mccoy,655-003-4270,102-839-3942,432-817-3476,brigitte.alyson@colourcomb.org,Falkland Islands +Junior Rubio,802-102-8753,523-701-2580,427-955-4354,marguerite.hattie@taste.org,Latvia +Rosalia Bartlett,355-007-2451,167-676-7613,870-858-6473,christen.athena.janel@boardboat.com,Saint Pierre +Celia Cooper,319-587-9672,829-921-1142,299-168-7216,sydney.deidra@soundsoup.org,Bermuda +Susan Navarro,511-720-5986,483-707-0116,535-735-6870,isabella@ship.com,Senegal +Hallie Martinez,157-118-1427,963-924-9089,952-149-5085,olin.foster.faustino@decisiondeep.com,San Marino +Claud Mercer,570-768-3327,868-033-1959,482-758-2593,lane.harris.cleo@dressdrink.info,Albania +Osvaldo Rowe,704-248-5141,854-787-9375,395-238-7286,damon.kelvin.rudy@because.org,Seychelles +Chas Coffey,985-409-8388,282-047-5755,700-329-4943,conrad.pat@knowledge.edu,Korea +Loyd Blankenship,636-321-1763,396-332-6613,864-442-0645,bianca.simone@simple.edu,Australia +Jan Rogers,759-764-9518,368-521-0290,302-596-4926,herman.maurice@qualityquestion.com,Nepal +Adrian Rivera,496-500-7648,372-857-3574,859-267-0783,joyce@everyexample.edu,Equatorial Guinea +Chauncey Buck,126-608-6719,690-202-9352,441-563-2907,camilla.abbie.rocio@division.com,Seychelles +Elissa Cherry,596-701-3651,564-547-0370,753-155-3208,jody@circleclean.edu,Cook Islands +Fredrick Reyna,815-665-4239,683-123-0543,255-031-2478,guadalupe.belinda.margarita@bandbase.me,Cook Islands +Trinidad Slater,801-644-3518,545-739-6023,216-295-3651,francesca.britney.kaitlin@landlanguage.edu,Vatican +Earnestine Hogan,323-629-8606,567-478-1496,976-107-6746,loyd.diego.alexis@shoe.com,Pitcairn +Melisa Barr,863-466-5971,184-158-8018,526-034-4915,annetta@tray.com,Pitcairn +Bobby Dyer,974-535-9877,667-943-1146,587-101-5631,marcelo.kory.augustus@bright.me,Wallis and Futuna +Theron Fernandez,395-209-5651,154-172-8289,961-551-4712,arden.neville@thumbthunder.org,Italy +Felipe Lozano,271-507-7039,143-157-4930,225-331-6104,mabel@why.com,Korea +Jesse William,527-831-2639,150-747-8117,504-695-2821,casandra.bridgett@librarylift.org,Indonesia +Haywood Aguirre,882-912-3775,685-870-1370,921-642-6610,bryan.tony.luis@heart.info,Iceland +Ahmad Manuel,694-603-7230,255-035-6042,334-670-6489,issac@oil.me,Cambodia +Cathrine Hunter,758-944-3180,392-165-2610,688-052-0133,lucien@copy.edu,Uzbekistan +Norma Dalton,119-578-0408,231-666-9820,820-395-2147,jody@between.org,Saint Lucia +Will Key,149-349-6537,843-159-0003,250-453-4345,antoine@general.com,El Salvador +Norman Buck,682-084-1216,123-081-2531,979-058-2642,victoria.edith@from.edu,Spain +Major Gentry,814-703-9229,454-224-9451,130-618-1275,fanny.janell.ines@senseseparate.com,United States +Leila Harper,267-998-9751,581-456-2653,839-215-8549,helene.fern.elva@cushiondamage.edu,Hong Kong +Trevor Leon,510-250-7160,210-017-3886,721-947-4734,isidro@society.edu,Marshall Islands +Jimmy Hendricks,368-806-6487,545-470-5319,882-386-4079,gertrude.lucy@range.org,Grenada +Charlene Simms,941-123-6182,184-635-4708,991-506-6282,armando@sadsafe.me,Monaco +Agnes Dotson,135-996-7359,508-780-3358,746-913-0204,vonda@almost.org,Nigeria +Theresa Walton,211-902-9670,131-006-4058,635-717-5571,colette.melva.lawanda@happy.info,Fiji +Marjorie Parker,911-699-5693,861-611-2189,660-202-0592,ophelia.valeria.nona@northnose.me,Thailand +Aldo Sosa,748-578-9011,183-376-6898,947-160-9558,nestor.hollis.stefan@snowso.edu,Kuwait +Alberta Todd,365-699-0091,600-495-5306,411-786-4776,florence.tracy@flat.org,Argentina +Caren Pope,635-155-3550,604-490-2628,138-040-4237,meredith.lynette@deaddear.com,Liberia +Charlie Shepherd,463-405-9871,613-035-5320,917-165-8423,libby.kathi@unit.org,Rwanda +Wendi Bridges,605-513-0179,246-374-3492,496-268-6506,theodore@directiondirty.com,Palau +Elijah Reyna,275-421-0870,389-302-5910,640-577-7483,clint.nicolas.laurence@some.me,Serbia +Seth Vance,697-896-5550,850-112-0813,119-526-6873,willa@touchtown.info,Equatorial Guinea +Refugio Guzman,611-810-0060,136-030-7018,120-544-5025,lily.robbie.shauna@spacespade.info,Afghanistan +Erna Rosario,555-364-0561,452-761-4267,614-552-4751,dirk.branden.adan@private.edu,United States +Terrell Kim,681-930-2684,401-724-0311,161-591-5412,jerome.floyd@male.info,Iran +Natalie Walsh,656-742-4002,392-237-7438,173-560-0642,noelle.letitia.kitty@sock.org,India +Loyd Stark,958-919-4201,687-929-2731,388-655-0673,roberto.clyde@flight.info,Virgin Islands +Drew Colon,422-568-9219,391-038-6082,159-089-3109,toni.misty@wood.me,Monaco +Reggie Forrest,606-678-5190,794-244-7109,562-736-8374,evangelina.rosanna@tiredto.me,Cook Islands +Santiago Hunter,412-542-0300,276-958-4316,534-035-0395,abdul.dusty@where.edu,Nicaragua +Anthony Lowery,150-299-4116,556-047-9322,169-941-1564,jeannette.pam.kelli@cheapcheese.me,French Guiana +Antonia Mayer,357-069-2222,196-318-4820,725-125-2888,patsy.hilda@treetrick.me,Japan +Marquita Pierce,915-332-4036,150-277-2012,637-545-8570,monty@rain.info,Austria +Paige Mckinney,576-574-4272,636-476-2997,154-754-5271,tera@yellow.com,France +Samual Stokes,846-928-1408,492-595-2720,168-804-8075,luis.mike@becausebed.me,Slovakia +Alfredo Slaughter,399-346-0447,104-712-7958,434-772-8860,tami@whipwhistle.info,Guinea +Johnnie Lowery,376-489-7892,824-194-6246,700-479-9399,marion.tracy@attention.me,Sudan +Rodrigo Pugh,720-929-4555,218-670-6228,900-702-1943,dionne@printprison.me,Heard Island +Guadalupe William,975-973-7284,671-907-2695,387-437-8008,tessa.berta.marva@mine.me,Micronesia +Trevor Davies,164-365-4388,519-576-0216,372-344-8120,summer@that.info,Puerto Rico +Alisa Sweet,452-702-1589,125-833-6615,879-906-0847,louella.leta@meatmedical.me,Equatorial Guinea +Ryan Hastings,928-317-4879,521-125-3438,163-140-2661,madge.kathie@boybrain.me,Cocos +Ginger Noble,849-434-5355,675-532-9200,226-969-8632,deloris.stacie@group.org,Grenada +Erik Forrest,517-821-5911,193-644-3891,402-204-9459,rubin.royal@forward.org,Martinique +Trevor Hays,605-195-8340,949-947-9611,583-582-7895,mindy.essie@harbour.org,Kyrgyzstan +Bruno Boyle,825-266-3404,634-812-9623,398-495-1056,martha@becausebed.org,Bulgaria +Deborah Davila,984-140-6756,431-991-7407,310-237-7207,allan@coughcountry.info,Kyrgyzstan +Charley Parks,961-706-0714,547-107-4777,865-982-0886,earl.jimmy@bell.com,Slovenia +Tana Godfrey,519-545-3605,231-899-1514,903-918-8042,ivette.christen@upuse.info,Gabon +Ellis Riddle,896-897-1925,572-762-0078,177-133-1476,rhoda.haley@relationreligion.info,Argentina +Armando Hays,642-629-3492,444-671-6431,974-779-9957,colleen.allison@other.edu,Iran +Nellie Fontenot,212-287-7459,184-094-4257,800-778-7134,rachel.marilyn@join.com,Cayman Islands +Lynda Pate,277-158-8059,266-330-5731,511-725-0848,isiah@carecarriage.info,American Samoa +Selma Jordan,191-862-1474,629-320-8770,423-136-7789,kitty@manager.me,Bulgaria +Matt Goss,777-968-5761,674-629-4997,314-061-2296,mikel@complex.com,Reunion +Ike Davenport,792-985-6735,914-609-7768,705-819-0005,nicholas.roy@quite.org,Martinique +Eddy Coffey,441-619-2777,340-282-5067,216-713-7949,nora@sleep.info,Georgia +Maynard Meadows,321-998-8251,860-923-3070,852-264-8796,darnell.randal.tommie@starstart.info,Uganda +Jon Frost,544-565-8148,824-429-9245,102-932-2238,shayne.nathanial.jordon@small.info,Seychelles +Hortencia Mcdowell,507-926-9858,995-364-4095,341-013-1283,elliot.darwin.ashley@number.com,Argentina +Pat Rosario,287-132-7310,692-944-9238,799-563-4222,deidra.monika.lashonda@changecheap.me,Tajikistan +Coleman Manuel,140-633-4120,822-553-7728,863-476-1147,marc.reginald@property.com,Colombia +Andrew Felix,471-589-6505,729-036-9725,778-686-5882,aldo.rubin@angle.org,Sao Tome and Princip +Elisa Richmond,590-662-5778,410-917-0907,697-718-7573,gary@twistumbrella.me,Belgium +Jessie Wagner,643-107-2868,706-727-1822,651-504-6114,christal@glassglove.edu,Macao +Katherine French,115-362-4744,750-721-7352,747-022-9077,lucien@hardharmony.me,Greece +Steve Mcallister,175-102-2062,378-144-2158,374-287-8476,earline.catalina.ava@will.info,Micronesia +Odis Villanueva,101-779-7065,882-958-8718,739-684-2735,sung@complex.org,Poland +Alec Foster,847-206-6920,661-012-5566,642-245-8404,virgil.andy.marshall@pot.com,Martinique +Rhett Love,548-523-4571,557-177-3284,543-588-5694,carmela.marisa.rosalind@throat.info,Burkina Faso +Lea Kelly,818-196-1228,624-363-8734,568-186-8397,pedro@solidsome.me,Samoa +Jannie Banks,950-221-8090,643-170-9312,795-535-2275,zoila.reta.reina@this.info,Guinea +Marianne Chase,945-351-6833,306-538-0465,997-174-7064,anderson.morton.jonas@downdrain.info,Korea +Lina Guy,916-614-9327,794-617-8257,147-315-8306,deanne.lilian.juliana@earearly.org,Cook Islands +Rick Rubio,660-597-7411,806-180-6491,876-212-1205,tanisha.katy.julianne@drivingdrop.me,Angola +Lolita Villarreal,494-443-7493,624-077-9612,217-669-0660,pilar@picturepig.com,Chile +Linwood Booth,598-963-0112,565-775-9792,382-922-9395,chrystal.lina@humourI.com,Puerto Rico +Stefanie Dunn,730-313-8968,547-741-2165,439-208-0778,ezekiel.chas.florentino@sticky.org,Grenada +Sharron Clayton,669-528-6193,476-102-8095,241-625-4307,sharlene.lesa.beverley@wax.edu,French Southern Terr +Alyson Rowe,830-560-8687,572-739-3369,566-401-9890,jackie.joey@rightring.me,Togo +Kieth Shepard,540-558-0648,684-093-2878,901-874-1318,sun.jacquline@sleep.info,Kazakhstan +Monroe Maynard,395-879-4497,485-228-5828,485-143-5229,rosanna.hallie@sister.info,Martinique +Retha Hogan,286-260-5437,857-852-0907,355-145-6606,oswaldo@bulb.me,Svalbard and Jan May +Fredrick Villanueva,844-574-6512,307-256-6720,840-325-3267,kelly@well.edu,Western Sahara +Dale Savage,191-151-2591,666-154-0239,944-473-2154,antonia.hope.ginger@smellsmile.org,Anguilla +Natasha Aguilar,890-443-8007,535-063-4072,775-021-2338,natalie@slope.edu,Faroe Islands +Shawn Douglas,178-823-2010,767-631-3740,149-763-1963,liliana@pin.org,Monaco +Geneva Pierson,130-780-6759,613-412-0166,776-735-1295,joey.nick@betweenbird.com,Malaysia +Cindi Howell,691-426-3392,870-223-4024,649-668-0750,georgia@wirewise.com,Reunion +Estella Joseph,965-777-4774,448-850-3293,104-069-1799,cristina@bright.me,Kazakhstan +Cornell Fisher,298-988-9711,870-189-0084,513-714-9891,krista.roxanne.angelica@as.info,Northern Mariana Isl +Jaqueline Garrison,375-008-2854,829-306-2850,169-379-0770,kip@train.org,Belarus +Bridget Horne,356-331-2521,935-505-7231,824-096-1250,gabriel@hearingheart.info,Syrian Arab Republic +Sadie Joyce,261-749-3367,327-077-6013,763-637-3317,frank.scott@manager.org,Tajikistan +Virgil Leonard,700-356-3211,336-660-2913,785-347-7256,elbert@cloth.com,Tunisia +Ma Ferrell,877-167-4966,422-544-6226,467-538-3284,lola.verna@school.edu,Nauru +Magdalena Berger,666-204-9200,622-183-7031,312-534-3308,shari.camille@otherout.info,Antigua and Barbuda +Alden Ryan,658-782-7138,222-106-3413,957-237-3943,preston.alton.archie@salt.me,Martinique +Bonnie Dickinson,934-308-8937,502-318-0260,744-990-0216,paris.otha.miquel@father.me,Papua New Guinea +Jaclyn Roth,234-409-3274,318-460-2847,172-735-4387,shawn.sallie@whilewhip.me,Virgin Islands, U.S. +Kathleen Everett,598-953-7724,497-601-0994,578-132-8148,mercedes.meredith@peacepen.me,Niger +Ilene Avila,589-484-5108,252-003-6699,327-075-5368,maria@arch.me,Macedonia +Abraham Malone,120-018-6727,276-295-2284,984-194-4329,bobby@cakecamera.com,Pitcairn +Araceli Mcdowell,665-446-8866,558-758-2548,399-200-6835,geraldine@chalkchance.me,Virgin Islands, Brit +Myrna Carpenter,521-848-1931,152-386-5091,292-074-1441,shaun@forwardfowl.me,Belgium +Louis Mckay,695-957-0352,690-216-2412,548-386-4177,paula@whistlewhite.info,Cyprus +Millard Shirley,558-596-7360,521-410-9190,645-378-3732,may.mindy@produceprofit.com,South Georgia and Th +Florence Campbell,914-721-8719,863-647-2723,819-279-8002,elroy.clemente.arden@soupsouth.edu,Slovenia +Rosella Adams,462-882-2422,828-576-4908,210-051-3251,landon@earearly.com,Korea, Republic of +Lakisha Harrison,920-866-0054,398-389-2101,210-566-7392,delbert@whipwhistle.com,French Polynesia +Meredith Deleon,694-638-7590,991-821-0259,892-983-1991,jaime.casey.alfredo@plough.me,Austria +Sang Fuller,849-915-4224,351-865-9271,678-671-1556,hugh@apparatus.me,Switzerland +Margot Lancaster,462-943-9726,828-127-9088,267-802-8120,harold.douglas@warmwash.edu,Equatorial Guinea +Marcus Hester,800-405-0119,434-646-1179,424-893-3967,buford@lowmachine.com,Switzerland +Bo Owens,351-889-7858,709-947-0345,415-429-1772,terrance.rene.eduardo@pointpoison.org,Sao Tome and Princip +Lloyd Burke,646-509-8425,536-350-4090,667-422-9463,nathaniel.rafael.leslie@chief.org,Tanzania, United Rep +Eugene Justice,987-987-7393,354-650-3973,159-013-7715,leila.cornelia@sticksticky.edu,Saint Vincent and Th +Stefan Greene,115-182-1207,934-819-8355,555-670-0058,ronnie@facefact.me,Estonia +Lola Mclaughlin,872-740-0052,107-762-8000,213-467-1355,vernon.roberto@peacepen.com,Iran, Islamic Republ +Walton Jarvis,615-736-4138,557-621-6898,826-044-5923,dewitt@simple.edu,Maldives +Raymundo Pierson,369-973-3844,196-156-6025,809-935-1650,tricia.laverne@thingthis.me,Burundi +Jillian Hart,437-433-2630,253-316-4147,852-131-7946,jeanne.vicki@wrong.me,Cook Islands +Francine Chambers,553-620-5412,806-435-4941,487-653-8873,angela@againagainst.me,Saint Lucia +Jennie Frye,986-911-0970,772-427-1543,360-657-3896,cathy.joann@form.com,Solomon Islands +Evangelina Barron,759-929-6517,555-680-1244,419-679-9735,kirsten.shana@leaf.me,Anguilla +Lamar Manuel,661-770-3141,439-322-8583,612-042-8602,basil@near.edu,Taiwan, Province of +Claudine Gibbons,600-089-3776,189-684-2594,873-070-6101,lilly.terrie.letha@foolish.me,Somalia +Ginger Potter,442-821-0936,549-026-5895,994-242-7916,danna@highhistory.com,Saint Kitts and Nevi +Charity Walsh,614-491-8301,676-953-5931,362-364-3736,ma.justina@line.me,Sri Lanka +Maritza Costa,167-102-3643,149-886-4612,515-436-7770,malcolm.rudolph.damon@talktall.org,Virgin Islands, U.S. +Dennis Parsons,836-690-7567,637-597-7783,333-236-5197,mitchel@musicnail.org,Chad +Derick Harmon,714-841-3896,615-940-6619,515-748-7980,levi@branch.org,Puerto Rico +Amado Helms,528-676-9594,336-373-2684,368-988-4542,craig.alan@ovenover.org,China +Janelle Blanton,784-520-6828,601-342-7548,756-929-0533,ophelia@chalk.me,Oman +Theodora Lowery,586-242-2703,479-067-0239,800-075-7272,lorenzo.omar@throughthrough.com,South Georgia and Th +Maritza Lutz,289-439-5501,524-039-0839,348-886-2805,zachary@complete.me,Anguilla +Morris Lugo,905-422-8105,274-133-7696,215-380-7180,loren.delbert@whistlewhite.edu,Tonga +Raymon Lynn,650-794-7601,146-807-7164,344-712-3389,dustin@tricktrouble.org,Cuba +Pansy White,772-838-5922,955-395-2183,310-034-2909,noe.vern.bobbie@storestory.edu,Egypt +Elvia Daniel,145-615-7484,915-542-6373,409-841-4554,jamie.neil.jessie@writingwrong.me,Rwanda +Giuseppe Pennington,771-705-3557,542-453-8014,514-463-6613,nettie@friend.org,Fiji +Pauline Maxwell,530-694-3356,314-893-7127,985-473-0863,lowell.gregg@milk.org,Belarus +Wilfred Hopkins,259-972-0037,647-603-6893,991-192-1973,gayle.della@news.edu,Aruba +Libby Chandler,103-116-9855,501-496-1742,467-554-3378,sergio.marion.tracy@hope.com,Greenland +Kristine Obrien,645-565-4183,649-309-1074,852-857-6306,taryn@near.edu,Iraq +Josef Wagner,384-320-9539,157-805-4579,497-647-9071,rocky@plateplay.com,Uganda +Wilda Plummer,451-752-7570,988-479-9818,661-732-0580,eddie@smash.com,Azerbaijan +Marybeth Guerrero,605-173-6399,131-290-5642,827-766-1887,louie.vicente@sweet.com,Luxembourg +Zachary Chase,895-549-9001,333-489-8260,825-236-2392,ofelia@chain.edu,Gabon +Lara Dillon,570-269-1007,166-413-7103,481-222-5964,hillary.amie@distance.edu,Uruguay +Kristina Randolph,723-565-2532,600-414-8276,853-046-4900,cassie.maude@usevalue.org,France +Boyd Howell,744-004-5139,546-844-2597,917-146-4150,cedric.lowell.gregg@bootbottle.me,Spain +Cari Munoz,668-425-4706,802-750-8525,996-806-2232,ingrid.iva.eugenia@second.org,Turkey +Brant French,258-268-8388,141-442-5734,179-216-0239,amalia.savannah.anastasia@surprise.me,Turks and Caicos Isl +Colleen Bates,684-473-6434,856-429-1565,747-352-5390,randolph.garry.geoffrey@songsort.org,Iran, Islamic Republ +Laura Roberson,733-965-9992,222-587-0920,585-993-1379,giovanni.garth@anyapparatus.edu,Denmark +Abe Valdez,590-562-7697,143-749-8457,751-647-6764,cheri.shelby.abigail@blowblue.me,Kiribati +Leota Whitney,425-067-2670,564-470-0988,373-158-8394,brandon.adam.harry@fictionfield.info,Colombia +Joni Jimenez,611-327-1893,543-950-5765,816-974-7316,rigoberto.alphonso.ty@blood.me,Svalbard and Jan May +Elton Peters,287-342-3445,780-264-0362,917-974-5686,eloy@tired.edu,Montserrat +Dewayne Bass,751-125-7348,498-284-4052,879-505-2746,antonia.wilber@planeplant.edu,Malta +Bess Pena,767-348-8105,228-778-1162,471-737-5179,diann@smokesmooth.edu,Cambodia +Olive Turner,859-561-0103,909-153-3223,638-085-5448,ilene.kris@materialmay.me,Uruguay +Hugh Shields,451-038-5139,653-296-5859,996-639-8691,stevie@growth.info,Saint Pierre and Miq +Tanisha Murphy,958-277-0265,588-821-5012,623-103-5377,solomon.scotty@monkey.org,Estonia +Oren Lozano,986-381-0647,203-047-0391,828-279-9635,lourdes@taketalk.org,United Kingdom +Hank Wilkinson,800-493-0661,352-300-3626,285-367-3270,tia.sharron.rae@notenow.info,Viet Nam +Joel David,743-716-1141,711-458-8776,741-229-9492,kelley@ovenover.me,Papua New Guinea +Cecelia Mahoney,518-301-8456,801-116-7169,909-520-1201,marcelo@test.edu,Kazakhstan +Gail Shannon,999-695-2049,280-486-8111,329-859-7246,ty@dodog.me,El Salvador +Michell Proctor,379-823-5054,635-984-9094,627-807-1192,tanner@rice.org,Saint Vincent and Th +Benito Downing,694-141-3070,115-006-0306,287-648-2866,mckinley.maximo.garfield@or.com,Russian Federation +Otto Massey,733-777-2149,238-771-6741,463-042-1383,carole.brandy@in.me,Marshall Islands +Jay Blackburn,784-933-2848,710-326-8184,717-467-8005,maria@shockshoe.com,Germany +Eldon Dean,413-460-2680,296-949-7574,711-526-8949,junior.freddy@agreement.info,Mexico +Cliff Simmons,698-739-7270,960-151-0475,602-004-6423,magdalena.ofelia.meagan@scale.info,Kiribati +Kristy Poole,908-516-6428,530-411-4339,164-983-8628,thad@moneymonkey.com,Guinea-bissau +Audrey Howard,883-549-5062,386-740-3608,254-488-8097,howard.eugene@credit.me,Cameroon +Harry Melendez,443-983-6708,220-874-7690,538-507-7605,andrew@paintpaper.info,Tunisia +Carissa Cannon,167-314-7307,903-721-1028,331-703-0787,tyler@theorythere.me,Nicaragua +Nora Perez,771-174-6269,261-741-5822,839-501-8018,edwin.don.eddie@event.info,Western Sahara +Darrell Griffin,742-503-1609,604-202-2483,816-716-5992,mable@sand.com,Hungary +Savannah Petty,946-103-5069,166-753-5587,631-026-4096,craig.alan@flightfloor.info,Finland +Dara Duran,876-489-8551,322-550-1282,492-177-9962,marybeth@son.org,French Southern Terr +Darius Mueller,593-259-9125,799-705-7754,249-436-0161,grady.phil@anyapparatus.org,Serbia and Montenegr +Marisela Gibson,735-500-9007,944-755-0374,905-332-6297,kisha.ellie.mellissa@southspace.edu,Saint Lucia +Wilhelmina Saunders,770-235-5508,448-974-5705,652-986-0985,rachael.chelsea@committee.info,Niger +Cindy John,928-095-7985,462-700-6369,769-520-0245,casandra@cup.me,Azerbaijan +Garry Dawson,904-168-4915,752-471-3625,309-019-8152,shawn@debtdecision.org,New Caledonia +Genaro Griggs,159-398-0028,207-777-0633,118-680-7214,hilario.bud@feeble.com,Malawi +Sierra Bridges,202-489-9641,641-433-4020,650-717-8247,randell.major.johnie@goodgovernment.info,Lebanon +Lottie Mayo,914-226-7706,632-128-0067,944-607-9172,david@again.com,Uganda +Lloyd Bradley,139-847-8231,673-704-0326,605-990-2584,agustin.murray.jamal@baby.info,Belize +Hector Barrett,216-111-2427,412-948-4344,755-235-9412,kitty.deann@wisewith.org,South Africa +Portia Rivers,729-802-0418,955-593-3594,201-221-4784,bernie.wilmer.joan@complexcondition.org,Singapore +Norberto Graves,663-778-4567,933-079-3085,194-093-5647,christi@come.com,Palau +Elmo Pollard,706-047-3940,692-766-2988,646-080-3750,krystle@star.org,French Southern Terr +Leonardo Osborne,534-319-3360,545-559-1357,437-253-7637,alison.yvette@reward.info,Latvia +Mandy Rice,965-195-4468,525-010-7212,214-921-0250,lillian@hospitalhour.me,Iran, Islamic Republ +Claud Lindsey,121-674-8739,499-397-2531,181-879-4390,gregory.joshua@specialsponge.com,Netherlands +Gerald Harrington,571-582-5727,362-797-9059,400-705-9753,brenton.yong.olin@collar.info,Switzerland +Rosanna Kimball,177-383-5048,100-113-0447,177-591-6265,jeffery.travis@comb.info,Uganda +Glen Daniel,217-105-8473,133-502-8331,822-034-5754,demarcus.cletus@hour.info,Albania +Araceli Rodriguez,174-946-6006,266-381-4521,148-446-7044,rex@fertilefiction.info,Kuwait +Alonzo Ayala,869-222-5991,869-493-8982,898-351-8254,muriel.marcella.elena@point.me,Cyprus +Garfield Meadows,606-215-4159,677-479-3049,324-343-0978,phil.cornelius@heathelp.edu,Barbados +Juanita King,873-328-3374,235-406-0377,970-005-3057,sally@fly.me,Switzerland +Malissa Mcknight,387-778-3102,421-927-2744,894-699-8546,greg.jorge@wax.org,Saint Pierre and Miq +Becky Valentine,925-709-6123,924-571-7156,728-141-0775,tabatha.serena.avis@light.me,Saint Vincent and Th +Bobbie Snider,281-522-9711,978-059-1829,797-576-3710,rosalind.charity@loose.info,Poland +Denny Mcghee,209-977-9360,441-893-6647,797-676-4758,george.kenneth@there.me,Bulgaria +Briana Contreras,780-457-5727,808-798-9092,328-332-8195,jodi.janie@use.edu,French Polynesia +Justin Gregg,515-832-1096,855-236-1168,793-621-2643,buddy.xavier@green.org,Panama +Sherry Eldridge,966-842-0044,655-508-3362,861-412-9911,krystle@maymeal.me,Nicaragua +Tera Wang,207-411-4351,437-936-0685,240-113-7414,naomi.carole@coalcoat.org,Micronesia +Bonnie Tate,183-053-7810,625-715-9429,118-463-9380,columbus@goatgold.me,Croatia +Irene Coleman,410-683-4320,612-270-8762,767-935-4104,rashad.king.emmitt@tongue.edu,Tunisia +Keven Glass,471-434-1131,436-959-9399,661-922-6729,bernardo.mauricio@wisewith.edu,Comoros +Howard Hendricks,545-169-0241,430-905-0679,364-562-8431,gay.clare@smashsmell.org,Tokelau +Keri Baird,816-872-0198,526-468-4245,759-867-1196,autumn.katharine.summer@much.edu,Belize +Rob Emerson,124-723-4604,388-598-4343,693-292-8272,bonnie.julia.ruby@narrownation.me,Maldives +Florence Broussard,191-194-7131,991-156-6491,310-458-3685,werner.theo@colour.me,Tuvalu +Alexander Crane,729-745-3676,195-482-2917,301-370-2561,cindy@ifill.com,Thailand +Garland Albert,132-317-4829,344-178-9388,868-260-0337,gerald.keith.samuel@future.info,Myanmar +Mai Elkins,929-220-4809,861-613-3446,543-180-4926,roxie@wallwar.me,Bangladesh +Angelia Salazar,145-679-7191,958-893-8862,700-173-1285,kris.isaiah.vaughn@harbour.com,Solomon Islands +Ivory Gore,654-789-6262,939-363-8058,666-535-3596,julio.kelly@stickystiff.edu,France +Joe Hubbard,875-562-6971,478-618-0806,323-064-5290,ned.sammie@brown.edu,Portugal +Luke Herbert,419-202-5841,459-911-6617,134-846-1794,refugio@versevery.me,Mauritius +Malcolm Goldstein,902-503-8868,276-978-8163,394-249-4498,adelina@religion.org,Iran, Islamic Republ +Dionne Berry,715-648-8310,893-749-9630,551-976-1788,dale@damagedanger.edu,Niue +Dara Nance,160-830-8208,967-802-3516,246-609-7629,mark@present.com,Finland +Clyde Carpenter,334-707-0484,325-731-5947,877-148-3842,vonda.pansy@companycomparison.info,Norway +Margie Page,696-763-8619,307-659-1198,374-680-7107,geoffrey@credit.me,Greece +Colby Blanchard,138-694-4386,777-773-6750,727-690-8189,selina@answerant.me,Denmark +Clarence Steward,615-394-3330,240-346-4515,711-310-8255,tessa@fatfather.com,Liechtenstein +Basil Stanton,574-252-2923,592-130-6755,804-437-5026,grant@horse.edu,Burkina Faso +Lydia Hartman,331-948-1468,628-877-8813,464-888-1133,young@quiet.com,Faroe Islands +Jillian Sharp,144-716-6200,607-016-8059,431-023-5005,rosa.cindy@back.edu,Estonia +Tommy William,977-695-1599,769-357-6439,749-838-3371,virginia@amusement.me,Timor-leste +Jannie Gonzales,616-993-5193,614-578-1197,962-668-6350,jayme.carmel@bed.edu,Macao +Markus Butler,714-516-0618,900-068-8454,446-971-1558,jeffery@bell.info,Slovenia +Mike Ortega,795-952-7856,585-489-3780,683-327-3026,rory.fabian.reggie@widewill.me,Solomon Islands +Joaquin Hurley,949-585-3369,780-594-2213,381-921-6368,beverley@cakecamera.edu,Morocco +Rosetta Barker,846-055-3334,238-321-6473,512-110-6476,helga.gilda@bagbalance.edu,Lebanon +Ebony Kirby,966-422-9854,677-686-3115,197-091-7938,saundra.hillary.amie@touch.org,Indonesia +Kristi Boggs,159-614-3115,505-383-1028,423-273-3039,marion.tracy.seth@ball.me,New Caledonia +Ross Chen,865-423-7634,135-999-4232,129-630-3604,dane.joesph.thurman@hope.org,Bahamas +Chandra Moss,801-014-7867,967-163-0782,793-089-9345,gladys.rita.dawn@unit.org,San Marino +Shirley Williamson,307-341-5084,982-296-4167,263-271-1097,helene.fern@increaseindustry.org,Ukraine +Sophia Booth,426-478-5279,750-803-1824,840-112-5026,felicia.sonia.miriam@in.info,Liechtenstein +Hassan Burton,386-455-1388,289-769-0452,540-352-3701,tammie.latasha@liftlight.info,Ecuador +Lincoln Reilly,680-769-2411,877-243-1720,566-263-1107,geraldo.lou@seeseed.info,Peru +Nathaniel Newton,991-910-4510,916-304-6924,538-860-3835,johnie.jarrett.brooks@powderpower.me,Lebanon +Jason Wilkerson,504-172-1664,324-681-6497,659-916-9189,raymon.rayford@moon.me,Bahrain +Donnell Carr,172-790-4051,756-742-9258,865-596-2698,faye@fruit.me,Turks and Caicos Isl +Jimmie Willis,986-806-0997,174-486-6100,459-406-1205,francis@levellibrary.me,Saint Kitts and Nevi +Cherie Wade,950-025-1705,602-137-8194,290-237-1353,lesa@seaseat.com,Mauritania +Sean Lugo,518-679-7116,103-060-5473,627-059-2328,quinn@dropdry.com,Dominica +Marvin Arrington,912-869-3066,915-213-4171,984-658-2259,carmel@whowhy.info,Uganda +Markus Newsome,412-315-4540,630-933-3147,508-984-2419,billie.dianne.tracey@numbernut.edu,Egypt +Cedric Whitfield,929-608-7043,980-063-2252,440-094-2887,raphael@edgeeducation.org,Hong Kong +Otha Vaughan,117-317-0477,456-959-6829,701-206-2694,christopher.daniel@rhythmrice.com,Turkmenistan +Catrina Bishop,701-775-1239,894-261-9186,590-024-3504,eugenia.christa@bag.me,United States +Raymond Cruz,929-787-5107,462-366-1775,377-477-2557,beth.jeanne@mine.org,Pakistan +Lorene Flynn,401-835-7350,929-358-5720,725-390-6477,deshawn.carrol.shayne@cardcare.info,Morocco +Janell Romero,949-408-1938,327-796-8318,959-475-1293,gonzalo.derick@copy.com,Madagascar +Estelle Avila,227-306-5697,750-239-6840,612-015-5998,kerry.abraham@blue.me,Falkland Islands (Ma +Florentino Callahan,284-498-4756,822-219-7007,136-593-0903,antone.waldo@meeting.com,Western Sahara +Dee Norman,553-357-7756,426-225-3561,118-177-5829,susie.olivia.flora@meetingmemory.com,Kuwait +Claudette Marks,247-839-1486,427-328-6362,110-004-6091,rod.quinton@bridge.info,Wallis and Futuna +Kate Barry,530-521-4804,519-283-9289,850-832-2633,isidro.truman@gun.edu,Kuwait +Edgardo Obrien,606-319-8802,259-674-8803,600-049-8764,tanisha.katy.julianne@hanginghappy.info,Bouvet Island +Carly Heath,586-971-1379,918-367-2173,740-837-7255,edgar.milton.raul@book.me,Cape Verde +Camille Finch,320-073-0887,754-868-2331,570-273-5423,pilar@publicpull.com,Seychelles +Cecile Obrien,364-627-5804,307-892-6240,987-741-3264,hassan.giuseppe.demarcus@business.org,Singapore +Dena Beach,259-530-0443,495-073-1411,108-039-9938,humberto@hole.info,Micronesia +Sophie Fuentes,872-302-4901,490-996-9056,595-101-3879,lino@natural.info,Slovakia +Misty Knight,224-589-6780,799-510-3535,915-157-7216,deshawn.carrol@who.com,Uganda +Dominic Bell,147-611-0373,410-746-0209,376-100-8699,tracie.marissa.karin@ownerpage.info,Jordan +Chi Cabrera,704-897-7213,738-326-5505,950-209-0146,sun.jacquline@suggestionsummer.me,Samoa +Deidre Jefferson,455-627-9619,332-843-9876,125-504-9700,christa.goldie@clothcloud.com,Algeria +Francesca Mcdowell,203-323-5322,643-141-0363,905-127-8134,sybil.abby.lara@woolword.info,Sri Lanka +Samual Casey,358-435-7288,865-028-7085,794-772-6150,ellen.elaine.marjorie@bent.info,Lithuania +Lara Holt,885-170-1818,826-732-1854,775-698-0942,chadwick.wilburn@before.org,Kuwait +Chasity Brady,428-392-2998,363-018-3748,856-895-2737,josefina.jeannie.miranda@mass.org,Faroe Islands +Marissa Williamson,288-492-7972,154-844-1752,602-863-4870,kelvin.rudy.preston@sail.me,Saint Helena +Nadia Cortez,914-599-4337,328-020-4693,729-134-1834,tania.tommie.esmeralda@crackcredit.org,Marshall Islands +Charles Foley,503-300-7342,126-938-9968,853-008-6934,melanie.loretta.yolanda@protest.org,Ecuador +Victoria Raymond,617-259-6220,943-481-0343,995-644-4034,earnestine.carmella.taylor@grip.edu,Norway +Tillie Mccann,233-912-6123,637-390-0328,709-747-4249,felicia.sonia.miriam@fat.me,Sweden +Omar Carver,296-905-1981,304-060-0778,164-241-0674,kimberly.deborah@almostamong.edu,Honduras +Sharron Mckenzie,245-608-6855,910-989-2289,934-584-5873,carmela.marisa.rosalind@snowso.edu,Reunion +Letha Salinas,354-887-7144,986-518-8655,910-698-7710,foster.faustino@flyfold.edu,Papua New Guinea +Louise Hubbard,377-995-2626,276-799-9155,695-407-8306,otis.shannon@quickquiet.edu,Tonga +Fred Santiago,645-154-5856,737-124-3924,522-649-8361,juanita@girl.info,Mauritius +Terrie Jennings,458-069-1928,329-949-3927,319-735-1439,leroy.francisco.marcus@matchmaterial.org,Taiwan, Province of +Helene Bradshaw,982-230-4216,807-427-0019,531-182-8082,isabell.ione.gisela@fishfixed.info,Colombia +Seymour Nicholson,457-139-6007,210-214-3766,480-531-6118,florentino.elroy@test.com,Mozambique +Rosemary Magee,549-374-3969,920-399-3122,343-310-8298,herminia@request.info,El Salvador +Ursula Morrison,275-494-2119,674-187-3996,713-900-4160,theodora.teresita@false.me,Australia +Nolan Medina,236-929-5190,888-137-9534,614-785-4143,mari@slow.me,Micronesia +Denice Downs,981-708-7102,280-482-9080,696-416-2743,terra.celina@mountainmouth.info,Saint Pierre and Miq +Jody Hickman,626-798-8678,324-531-7098,426-709-4699,nilda@unit.edu,Austria +Harry Bruce,645-495-6160,665-174-8590,170-861-2426,gordon.dean@be.info,Chad +Mandy Goldstein,883-308-8815,375-666-2931,870-250-9651,sammie.rusty@pain.edu,Netherlands +Avery Ryan,399-603-8094,828-100-1254,180-221-9272,tera.marilynn@pull.info,Russian Federation +Scotty Carr,477-192-7018,704-596-8515,371-884-2120,sang.deon@printprison.me,Lithuania +Bessie Ayala,503-324-2857,881-783-3762,681-866-3314,donald@breathbrick.me,Jordan +Karen King,878-682-1622,322-292-2682,723-119-0969,mauricio.hiram@again.org,Kenya +Suzette Bowers,488-206-9615,208-765-1201,393-642-8428,iola@wet.me,Belgium +Connie Long,292-244-5900,127-905-9913,589-129-2142,cathryn.lelia@soupsouth.org,Malaysia +Jade Velazquez,823-326-6879,334-994-5356,368-750-7515,mitzi.mari.georgette@rootrough.edu,Taiwan, Province of +Donovan Avery,981-043-1155,646-022-4218,812-641-6927,lindsay.geneva.guadalupe@purpose.edu,Jamaica +Lorie Kline,974-590-3775,195-685-4945,180-514-8714,aimee.rena@secretsecretary.edu,Latvia +Lorna Powers,973-576-8997,921-485-0460,801-110-9946,king.emmitt.daron@acid.info,Thailand +Leota Stephens,278-905-6666,724-295-5820,922-314-5984,alma@who.com,Nigeria +Fritz Crowe,661-529-6008,921-271-0621,750-191-2968,marty@goatgold.edu,Singapore +Terrell Franco,696-932-6151,339-615-6383,873-971-2493,jaime@greatgreen.edu,Turks and Caicos Isl +Dion Christopher,366-196-2060,893-618-9126,277-716-0064,abbie.rocio@prison.edu,Tonga +Reginald Hilton,687-532-0603,189-600-6081,324-017-9826,noble@onlyopen.edu,Bouvet Island +Hipolito Whitehead,313-837-3460,486-372-4338,786-079-4206,sterling.mickey.chase@leaf.me,Bosnia and Herzegovi +Letitia Brandt,687-583-6764,645-575-6846,412-372-0946,rosalinda.jordan.lilia@femalefertile.info,Australia +Orville Price,128-354-9345,966-248-8525,116-292-7424,virgina.retha@tradetrain.com,Northern Mariana Isl +Agatha Singleton,769-169-7251,590-974-5878,981-148-7208,ellie@past.edu,Andorra +Dana Hill,114-417-9769,780-247-0305,143-363-2186,nelson.guy.clayton@bandbase.edu,Greenland +Valarie Booker,335-340-5592,257-048-6139,850-114-6934,mallory.carlene@pipeplace.edu,Haiti +Minh Wells,226-260-4904,300-600-3763,989-447-0663,darrin.winston@solid.com,Morocco +Cristina Cherry,226-807-0898,195-050-6549,922-425-0822,damian.reuben@trade.info,Uruguay +Lucien Mcfadden,806-736-0450,131-180-0603,319-674-0187,rodrick@stomach.com,Brunei Darussalam +Bettie Spence,250-946-9007,828-000-8201,171-971-1794,florence.tracy.edna@education.me,Cambodia +John Roberts,548-023-0140,138-320-5508,651-815-4404,shelia.gayle@manmanager.org,Congo +Terrance Frost,131-513-9542,843-710-8772,640-111-8194,katie.kristen.vanessa@fire.info,Macao +Nicole Mcmahon,174-107-6255,635-871-7890,215-803-6883,lamar.rolando@drawer.info,Singapore +Felecia Costa,780-802-5430,342-242-0361,708-821-1025,ann.joyce.diane@distributio.com,Svalbard and Jan May +Chance Compton,226-098-4326,162-969-3375,750-194-6377,leslie.clara@garden.com,Uzbekistan +Kieth Hatfield,136-808-9424,193-198-2930,672-097-4340,vickie.mattie.terry@comparison.me,Cape Verde +Lee Ingram,858-637-8139,522-216-5592,544-400-0030,mae@happy.info,Tokelau +Mari Elliott,918-611-4160,301-103-9026,476-384-7515,madonna.larissa.vesta@personphysical.info,Philippines +Augustus Goldstein,796-264-0356,467-289-8067,414-720-2468,morgan.consuelo@wood.org,Haiti +Octavia Austin,973-548-2584,785-730-5508,881-904-9448,julian@measuremeat.info,French Guiana +Rusty Hickey,126-665-7898,908-500-1517,189-602-6202,elmer.brad@chemicalchest.com,Mayotte +Phyllis Grace,443-416-3809,750-648-4944,833-159-8507,sherry.sylvia@rodroll.org,Tunisia +Sang Harden,458-567-8963,257-329-3567,381-652-9359,avery.loyd@together.me,Saint Kitts and Nevi +Bridget Kimball,893-163-2295,892-387-4723,122-928-0343,marybeth@horn.edu,Malawi +Kristin Cleveland,227-349-8522,556-650-9886,956-221-7463,lamar@war.org,Moldova +Jay Ball,592-817-8850,629-007-8250,473-627-3650,rita.dawn@month.info,Mauritius +Frederic Sellers,894-347-3610,883-875-7430,458-760-3213,felton.ezequiel@cardcare.me,Hungary +Andy Hernandez,660-794-6942,762-032-4078,900-420-2578,jess.trent@brotherbrown.org,Bouvet Island +Boyd Holcomb,919-271-6731,653-305-0697,483-293-5666,lelia.casandra.bridgett@stopstore.org,Bahamas +Lucretia Lockhart,180-538-1327,252-086-6232,680-010-3804,refugio.dino.osvaldo@weightwell.edu,Honduras +Arthur Duncan,211-757-0162,415-290-0633,412-466-6339,jean.ira@automatic.com,Andorra +Humberto Dunbar,563-034-6002,920-359-1368,722-372-9164,brice@old.me,Romania +Alex Sheppard,112-755-4556,506-282-3384,648-708-3947,tiffani@suchsudden.me,Belarus +Mac Walls,129-566-6016,783-572-1879,827-406-9190,kenya.dollie@slopeslow.com,Brunei Darussalam +Graciela Petty,904-126-1118,430-660-7431,135-671-4597,jade.denice@winter.com,Myanmar +Consuelo Lowe,475-575-8967,475-397-5304,484-021-4865,lincoln.jame@marketmarried.info,Mexico +Forrest Emerson,642-420-0847,391-573-7470,454-791-9930,delma.chong@why.me,Marshall Islands +Zachary Holt,648-608-9697,526-789-3373,599-960-1185,mellisa.kimberlee.jasmin@cottoncough.me,Suriname +Eliza Ryan,824-128-9158,485-957-9095,577-556-2867,bonnie.julia.ruby@bee.me,Samoa +Rocco Case,270-028-3792,565-768-5082,341-909-8758,jessie@knotknowledge.info,Slovakia +Stacie Combs,474-666-3663,574-585-4072,706-540-6256,pat@painpaint.me,Ecuador +Scott Gore,627-033-5906,775-649-8945,348-027-0591,chet.bertram.markus@agreementair.org,Cambodia +Carol Wilkerson,492-276-9497,395-318-6832,246-736-2441,jamaal.dewitt@afteragain.com,Nigeria +Leah Hall,659-342-6265,340-244-1973,486-233-6194,kermit@straight.edu,Botswana +Bettye Ford,531-595-5671,912-781-5256,473-764-4133,julia.ruby.lois@seriousservant.edu,Cape Verde +Richard Hinton,282-862-1503,830-931-7064,458-080-4627,debora.cherie.polly@bitterblack.org,Korea +Burl Harrington,980-601-0320,469-481-5366,673-895-5631,val@almostamong.org,Andorra +Sonja Solomon,841-163-7709,585-934-1393,151-630-4191,ronny.stevie@view.info,Svalbard and Jan May +Saul Hughes,472-234-0467,715-102-7272,805-336-4086,carson.theron.raymundo@language.info,Cyprus +Ava Lee,262-660-4680,849-335-8035,143-140-2616,loren@nerve.com,Syrian Arab Republic +Jacob Beach,571-238-1179,577-134-9492,222-247-8523,teresita@separate.me,Greenland +Lottie Taylor,835-400-6170,580-596-9064,710-372-9895,haley.adela@cordcork.me,Palau +Dwayne Mcdaniel,407-991-0929,289-897-4056,121-198-0348,timmy.darrin@oldon.me,Palestinian Territor +Lacey Ray,546-183-7761,100-681-8760,376-164-1259,andreas.walton@sticksticky.info,Sudan +Ingrid Bradshaw,245-143-4436,460-324-5142,977-920-7488,wendy.victoria.edith@full.org,Syrian Arab Republic +Nick Keller,727-979-0792,110-677-0496,910-526-2508,katie@belief.org,Mexico +Mauro Kirk,336-790-0396,433-271-0209,997-685-3529,karl.cory@much.org,Brazil +James Francis,499-428-3521,445-732-4769,410-781-8871,claire.lindsey@thentheory.org,Philippines +Magdalena Coleman,595-684-5440,923-272-8963,160-605-1325,truman.delmar@dangerdark.me,Liberia +Gisela Lindsay,555-613-5828,903-692-4965,472-998-7006,dustin.pedro.derrick@growth.org,Myanmar +Crystal Alvarez,588-046-7767,651-782-5746,696-375-0551,dante@flat.com,Macao +Kathi Huber,142-301-1637,449-890-1092,998-197-4205,ivan@breadbreath.org,Timor-leste +Emilio Nunez,712-465-6698,222-937-6038,791-018-2635,iona@fight.edu,Djibouti +Susan Mayfield,189-602-7938,172-761-4021,382-083-8929,marylou.melisa.tabatha@smashsmell.me,Netherlands Antilles +Hannah Howe,510-226-7470,823-529-5829,285-187-0552,stephanie.carolyn.christine@fire.edu,Niger +Joseph Terrell,852-655-0978,959-466-1462,421-831-5266,retha@tendency.com,Slovakia +Kelly Herring,715-577-7149,151-693-6339,517-589-9364,claud.val.sherwood@whywide.me,Andorra +Beulah Hopper,128-095-1724,610-991-3767,216-344-1376,jeffrey@oil.info,Germany +Keisha Benson,866-633-7930,325-316-8059,690-224-6411,catherine.frances.ann@thick.me,Cape Verde +Stefan Hogan,372-922-1241,362-128-3991,168-049-9035,geraldo.lou@well.com,Namibia +Josephine Lynn,224-669-2609,418-175-3989,895-720-2507,krystle.iola@dressdrink.org,Kyrgyzstan +Candace Bradford,432-602-2487,850-169-2766,683-758-6890,owen.rufus.woodrow@group.info,Algeria +Leanne Weeks,601-796-5806,279-881-9272,113-228-6493,claire.lindsey@floorflower.edu,Northern Mariana Isl +Arnulfo Lindsay,894-142-2659,114-221-6882,153-630-7006,angie.inez.lynda@butter.info,Singapore +Alphonse Kirk,277-408-0315,866-413-1621,476-337-0856,elroy.clemente@placeplane.edu,Lebanon +Cherry Schneider,773-582-6057,721-738-6898,469-809-4916,jasmine@nonoise.me,Mozambique +Xavier Walton,755-577-0373,512-427-6309,132-712-5421,adelaide@angry.me,Uganda +Karla Richmond,797-674-1240,517-953-9041,916-969-0818,caitlin.ingrid.iva@army.org,Guyana +Lavern Bunch,633-334-0258,447-957-0405,424-054-4117,lenard.chauncey@mouthmove.org,Ireland +Alyce Stevenson,350-586-4712,529-112-4205,912-606-0183,bruno.issac@willwind.com,Liechtenstein +Debbie Olsen,470-224-6701,409-366-7672,772-738-6439,terri.gertrude.lucy@togethertomorrow.info,Ethiopia +Miriam Harrison,159-955-5935,310-894-4254,353-657-4907,pete@birth.edu,Malta +Hector Workman,352-153-1345,261-576-1734,617-301-1242,elvia.alyce.deirdre@receiptrecord.com,Argentina +Susanne Haynes,183-526-7926,486-905-3156,898-201-2655,deena.aurelia.josefa@feeling.org,Falkland Islands (Ma +Royce Hansen,311-262-5040,214-421-8636,440-525-1309,dianna@short.edu,Bermuda +Kayla Castillo,752-096-1048,996-128-8116,650-352-2344,rene@ifill.info,Samoa +Alexandra Bruce,385-667-9020,135-544-4886,268-950-3307,jaclyn.gracie@for.info,Senegal +Mauricio Dawson,212-285-5155,274-000-0087,801-167-1243,lenora@authorityautomatic.info,Pitcairn +Elbert Williamson,293-974-7684,420-039-4828,238-149-6049,devon.adolfo@knot.com,Zimbabwe +Claudio Carey,130-013-2537,255-074-3387,274-160-3350,hope.ginger@separate.com,Ecuador +Hilton Kirk,707-164-7745,460-082-7948,956-885-8888,shawn@firstfish.edu,Pakistan +Avis Castro,429-149-6325,453-861-1970,927-189-9848,jenna@library.com,Saint Vincent and Th +Elmer Reed,915-306-3819,138-884-3763,410-743-2832,casey@floorflower.me,Jamaica +Kara Haley,847-090-8165,944-492-6010,169-534-5178,david@copper.edu,Guam +Marlene Luna,113-047-0840,502-969-2447,483-965-9473,darron.buster@story.me,Azerbaijan +Lyman John,944-762-9326,948-345-1224,235-669-2311,ethel@pastepayment.com,Serbia and Montenegr +Duncan Sandoval,213-673-3389,172-814-4734,576-766-9940,wilson@goatgold.info,Korea +Arline Phillips,723-801-7674,237-060-7204,216-335-5299,roslyn@beautifulbecause.info,Swaziland +Norma Bush,665-127-5312,819-147-2040,263-277-9758,monica.esther.pauline@fertile.com,Mongolia +Bobby Minor,386-218-7220,675-305-5717,871-592-2465,dolly.sybil.abby@whistle.me,Cocos (Keeling) Isla +Lawanda Sloan,388-482-0450,727-284-0943,412-115-7389,charlie.valencia.roxanna@addition.com,Pakistan +Scotty Adams,278-625-8052,858-546-0346,873-344-3411,hugh.max.dwayne@rate.info,Virgin Islands, U.S. +Mable Richardson,311-025-9901,178-069-1994,798-036-0044,merlin@glass.edu,Iraq diff --git a/3-create-a-db-from-csv/sql.py b/3-create-a-db-from-csv/sql.py new file mode 100644 index 0000000..8fb73d0 --- /dev/null +++ b/3-create-a-db-from-csv/sql.py @@ -0,0 +1,12 @@ +import sqlite3 +import csv +conn = sqlite3.connect('csvdata.db') +c = conn.cursor() + +file = open('employees.csv') +headers = file.readline().strip().split(',') +out = [dict(zip(headers, line.strip().split(','))) for line in file] + + + +print(out) \ No newline at end of file diff --git a/4-mortgage-calculator/README.md b/4-mortgage-calculator/README.md new file mode 100644 index 0000000..01bc9dc --- /dev/null +++ b/4-mortgage-calculator/README.md @@ -0,0 +1,9 @@ +## Mortgage Calculator + +Make a mortgage calculator that returns your monthly payments based on the following mortgage equation: + + M = P( i/12( 1+i/12 )^n )/( ( 1+i/12 )^n - 1 ) + +Check out the assert test given. See if you can write two more 'assert' statements. + +Make a table that shows all of the monthly payments and the change in balance based on the payments diff --git a/4-mortgage-calculator/mortgage_calculator.py b/4-mortgage-calculator/mortgage_calculator.py new file mode 100644 index 0000000..c61df09 --- /dev/null +++ b/4-mortgage-calculator/mortgage_calculator.py @@ -0,0 +1,4 @@ +def mortgage_calculator(): + pass + +assert mortgage_calculator(100000, 0.05, 120) == 1060.66, str(mortgage_calculator(100000, 0.05, 120)) + " != 1060.67" diff --git a/5-loan-or-no-loan/README.md b/5-loan-or-no-loan/README.md new file mode 100644 index 0000000..6df02a0 --- /dev/null +++ b/5-loan-or-no-loan/README.md @@ -0,0 +1,16 @@ +## Loan or No Loan? + +Here is some people's last month bank statements. Query the database to answer the questions. Write methods to return all of the information to you. Don't do this manually, use the Python sqlite3 library.. + +* How many people are there in the database? +* What is each persons salary (return their name and salary)? +* What is each persons net income? +* How about their highest expense? +* What percent of their salary did they spend? +* What was the average price of their expenses (don't include salary)? +* How many expenses did each person have? +* How many things did each person buy in the first week of the month? How much money did they spend? +* How about in the last week? +* Print everything bought between $40 and $60. +* Using the mortgage calculator you built before (you may need to make some adjustments), how large of a house could each person afford on a 15 year mortgage at 4%, if they plan on saving $200 a month (assuming they keep their jobs and spend the same amount). +* Write the database to a csv. diff --git a/5-loan-or-no-loan/balance_sheets.sqlite3 b/5-loan-or-no-loan/balance_sheets.sqlite3 new file mode 100644 index 0000000..c48c33b Binary files /dev/null and b/5-loan-or-no-loan/balance_sheets.sqlite3 differ diff --git a/5-loan-or-no-loan/loan.py b/5-loan-or-no-loan/loan.py new file mode 100644 index 0000000..e69de29 diff --git a/6-bank-software/README.md b/6-bank-software/README.md new file mode 100644 index 0000000..237c164 --- /dev/null +++ b/6-bank-software/README.md @@ -0,0 +1,22 @@ +## Your Own Private Bank + + +Welcome back! In this challenge you'll be creating a rich Python terminal app emulating bank software. + +#### Step 1: Database + +Our DB schema for this challenge is simple. For now, we only need two tables - Users and accounts. A user can have many accounts. Users should have at minimum a username to log in to the app, a time when they were created, and a permissions level. An account should have a number and a balance. Design the schema in SQL designer if it helps you. + +There's a file called create_db.py - write your sql that creates the db in there to keep everything organized. + +#### Step 2: Our program models + +We need two different classes for users - a client, and a banker. A client should be able to view all their accounts, deposit and withdraw funds to and from their OWN accounts, and transfer money from their OWN accounts to another user account. A banker should be able to create accounts, deposit and withdraw funds from ANY user account, and transfer money between ANY two user accounts. A banker should not have any accounts (no co-mingling of funds) and a person should not see the superuser options that bankers have. How you want to design this is up to you. See [inheritance](http://www.jesshamrick.com/2011/05/18/an-introduction-to-classes-and-inheritance-in-python/) + +I also strongly recommend that you have another class (see [static methods](https://julien.danjou.info/blog/2013/guide-python-static-class-abstract-methods)) or a module that handles only reading and writing to the database. + +#### Step 3: Controller and Views + +Stick to the MVC pattern - No spaghetti code! Keep your code dry. There's a lot of user choice options which could be a lot of if/else statements - can you think of a better way? + +Present a nice clean interface to the user for the options they are allowed to perform. Some extra account details would be nice to display - some ideas are how long the user has been a member of the bank, which banker created their account, etc. diff --git a/6-bank-software/bank_controller.py b/6-bank-software/bank_controller.py new file mode 100644 index 0000000..655662e --- /dev/null +++ b/6-bank-software/bank_controller.py @@ -0,0 +1,2 @@ +import bank_models +import bank_views \ No newline at end of file diff --git a/6-bank-software/bank_models.py b/6-bank-software/bank_models.py new file mode 100644 index 0000000..730f789 --- /dev/null +++ b/6-bank-software/bank_models.py @@ -0,0 +1 @@ +import sqlite3 \ No newline at end of file diff --git a/6-bank-software/bank_schema.png b/6-bank-software/bank_schema.png new file mode 100644 index 0000000..fc0ed2d Binary files /dev/null and b/6-bank-software/bank_schema.png differ diff --git a/6-bank-software/bank_views.py b/6-bank-software/bank_views.py new file mode 100644 index 0000000..e69de29 diff --git a/6-bank-software/create_db.py b/6-bank-software/create_db.py new file mode 100644 index 0000000..2a60d30 --- /dev/null +++ b/6-bank-software/create_db.py @@ -0,0 +1,34 @@ +import sqlite3 +# import csv + +conn = sqlite3.connect('bank_schema.png') + +c = conn.cursor() + +# c.execute("""drop table users;""") +c.execute("""CREATE TABLE 'users' ( + id int, + name varchar, + username varchar, + date_created date, + permission int, + PRIMARY KEY (id) + )""") + +# c.execute("""drop table accounts;""") +c.execute("""CREATE TABLE 'accounts' ( + id int, + account_number int, + balance int, + user_id int, + PRIMARY KEY (id), + FOREIGN KEY (user_id) references users(id) + )""") + + +with open ('bank_schema.png', 'r') as bank_schema: + creader = csv.reader(bank_schema, delimiter = ',') + column_names = creader.__next__() + +conn.commit() +c.close() \ No newline at end of file diff --git a/7-optimizing-queries/README.md b/7-optimizing-queries/README.md new file mode 100644 index 0000000..44b1ac6 --- /dev/null +++ b/7-optimizing-queries/README.md @@ -0,0 +1,58 @@ +## Optimizing Queries and Data Comparisons + +This challenge will take what we already know about SQL and Python and add the necessary tools to optimize how we make queries and compare data. + +#### Setup + +In create_db.py, initialize and create a new database "schedules.db" and give it the necessary tables to hold the following: + +Students have a name, and a major. +Classes have a title, and a field of study. + +Major and field of study are the same, ie. Economics is a major and a field of study. + +Students have many classes. +Classes have many students. + +Write a seed_db() function that takes the existing data in create db and randomly fills the database with it. + + +#### Query + +Write a function shared_classes() in Python that takes two student names. It should return the classes they take together, if any. How you want to do this is open ended. + +What is the Big O time complexity of your algorithm for loading the students and comparing their classes? Write it down, and benchmark your code. + +#### First Optimization - the Index + +Read [how indexes work](http://www.programmerinterview.com/index.php/database-sql/what-is-an-index/) here. What type of data structure does sqlite3 use to hold indexes? + +Now, add an index to one or more of your tables on columns you think would be appropriate. + +Benchmark again - what is your speed now? + +#### Second Optimization - use a Set + +Are you comparing the data returned from the DB in Python? If so, you probably aren't using the right data type. We haven't covered Sets yet - read about them [here](https://docs.python.org/3.4/library/stdtypes.html#set) + +A set is very similar to a dictionary, only it does not store values. Only keys. The syntax is like so: +``` +{'Programming', 'Calculus', 'Literature'} +``` +Use sets to store the returned class data about both students and use set's built in methods to find the intersection if it exists. + +The Big O complexity of this operation is `O(len(x) * len(y))`. If you did the most simple comparison with arrays, it was probably `O(len(x) * len(y)**2)`. + +Read about sets. Why is this? Here's a [list](https://wiki.python.org/moin/TimeComplexity) of all Python datatype method's time complexity. + +#### Third Optimization - a better (longer!) Query + +Instead of doing all your comparisons on the Python side, can we pull the information straight out of the database with a more advanced query? + +Before you write the query to replace your original answers- let's write a new function that takes a Major and number of students, and returns classes where that number of students or more in that class have that major. + +Now, write your enhanced query to find the intersect without any Python data parsing. + +Benchmark this function against your first two. + +Sandbox!! You will want to get familiar with the following SQL commands: GROUP BY, HAVING, IN. diff --git a/7-optimizing-queries/classes.py b/7-optimizing-queries/classes.py new file mode 100644 index 0000000..b2b5784 --- /dev/null +++ b/7-optimizing-queries/classes.py @@ -0,0 +1,124 @@ +def classes(): + return ['Pharmacology for AT', + 'Human Nutrition', + 'Comp Networks & Security', + 'Principles of Counseling', + 'Intro to Human Com', + 'Mass Comm', + 'Public Relations', + 'Com Relations in Orgs', + 'Survey of Com Research', + 'Technology and Society', + 'Intro Comps & Office', + 'Intro to Microsoft Excel', + 'Intro to Microsoft Acces', + 'Computer Science II', + 'Computer Science II Lab', + 'Logic for Comp Scientist', + 'Comp NW Culture: Music', + 'Comp NW Social Systems', + 'Economic Life', + 'Principle Microeconomics', + 'The Global Economy', + 'Exceptionalities', + 'Continuation Prep Math', + 'Internship I', + 'Engineering Fundamentals', + 'Acad. Writing & Reading', + 'Research Writing', + 'Business Writing', + 'British Texts', + 'Post-Colonial Texts', + 'Technical Writing', + 'Intro to Poetry Writing', + 'Intro to Food Science', + 'Farm Business Management', + 'Food Plant San and HACCP', + 'Food Microbiology', + 'Food Chem and Analysis', + 'Food Laws and Regulation', + 'West. Civ. to 1500', + 'West & World since 1500', + 'Tech Based Ventures', + 'I&E Seminar Series', + 'Illustration', + 'E-Commerce Advertising', + 'Psychology of Sport', + 'Human Resources Mgt', + 'Internship in IS', + 'Principles of Marketing', + 'Music Listening', + 'Music in Western Culture', + 'Patho Across Lifespan', + 'Found of Research & EBP', + 'Transition Role Prof Nur', + 'Nur Role for Unlicensed', + 'Nursing', + 'Ldrship & Mngmt', + 'Colab Impv Pat Hlth Outc', + 'Honors Project Seminar', + 'Professional Devel II', + 'Professional Devel IV', + 'Integ Office Software', + 'Admin Office Management', + 'Self as Leader', + 'Leading Change', + 'Political Life', + 'International Politics', + 'Cyber Crime', + 'Topics Criminal Justice', + 'Intro to Psychology Lab', + 'Psych of Disabilities', + 'Childhood & Adolescence', + 'Psychology Men and Women', + 'Forensic Psychology', + 'Honors Pharmacology Res', + 'Drug & Alcohol Abuse', + 'Rehab Internship', + 'Educational Interpreting', + 'SLI Senior Capstone', + 'Intro to Sociology', + 'Grow/Change Urb Society', + 'Womens Studies', + 'Ethics in Engineering', + 'Adv Ergon', + 'Lean Proc Impr Engr', + 'Comp Networks & Security Lab', + 'Host Computer Security', + 'Information Security', + 'Adv. Comp. Networks', + 'CNL Theory and Practice', + 'Techniques of Counseling', + 'Stats Res for Counseling', + 'Group Background &Theory', + 'Asses & Eval in Counsel', + 'Marriage', + 'Coun Life-Span Develop', + 'Pro Orient Eth & Leg Iss', + 'Multicultural Counseling', + 'Prin & Prac of Schl Coun', + 'Human Sexuality Counsel', + 'Clin Assess in Cnl Prac', + 'Diagnosis Clin Cnl Prac', + 'Comp Sys & Structures', + 'Functional & Logic Prog.', + 'Information Retrieval', + 'Eco Applica Internet II', + 'Read & Lit II: Int Spec', + 'Teach in the Amer Ed Sys', + 'Action Research: Science', + 'Diagnosis and Assessment', + 'Pract I: Intervention', + 'Literacy Inquiry Project', + 'Ldrshp Schl Improvement', + 'Analysis of Teaching', + 'Tchr Ldr Masters Exit', + 'Data Driven Decisions', + 'Advanced Ed Measurement', + 'Bldg-Level Leadership', + 'Bldg Budget', + 'Principal Practicum', + 'Adv Tchr Ldr Seminar', + 'Pol & Soc Contexts', + 'Organizational Behavior', + 'Superintendent Practicum'] \ No newline at end of file diff --git a/7-optimizing-queries/create_db.py b/7-optimizing-queries/create_db.py new file mode 100644 index 0000000..870cc65 --- /dev/null +++ b/7-optimizing-queries/create_db.py @@ -0,0 +1,11 @@ +import sqlite3 +import classes +import majors +import random +from faker import Faker + +def create(): + pass + +def seed(): + pass \ No newline at end of file diff --git a/7-optimizing-queries/intersect.py b/7-optimizing-queries/intersect.py new file mode 100644 index 0000000..e69de29 diff --git a/7-optimizing-queries/majors.py b/7-optimizing-queries/majors.py new file mode 100644 index 0000000..a0ae0e2 --- /dev/null +++ b/7-optimizing-queries/majors.py @@ -0,0 +1,41 @@ +def majors(): + return ['Biology', + 'Chemistry', + 'Mathematics', + 'Political Science', + 'Psychology', + 'Social Sciences', + 'Social Work', + 'Sociology', + 'Speech Pathology', + 'Accounting', + 'Finance' , + 'Management', + 'Management Information Systems', + 'Marketing', + 'Family & Consumer Sciences', + 'Child & Family Studies', + 'Dietetics', + 'Retail Merchandising', + 'Art', + 'Ceramics', + 'Drawing', + 'Graphic Design', + 'Painting', + 'Photography', + 'Printmaking', + 'Sculpture', + 'New Media', + 'Mass Communication', + 'Music', + 'Composition', + 'Instrumental Performance', + 'Organ Performance', + 'Piano Pedagogy', + 'Piano Performance', + 'Vocal Performance', + 'Theatre', + 'Acting', + 'Directing', + 'Design and Technology', + 'Musical Theater'] \ No newline at end of file diff --git a/8-vigenere-cipher/README.md b/8-vigenere-cipher/README.md new file mode 100644 index 0000000..1ccd7c2 --- /dev/null +++ b/8-vigenere-cipher/README.md @@ -0,0 +1,38 @@ +## Vigenere Cipher + +#### Yeah crypto! + +Remember the Caesar cipher we did? Well we're moving up in the world. + +The [Vigenere cipher](http://en.wikipedia.org/wiki/Vigen%C3%A8re_cipher) was formulated in the 1400s and accomplished then using metal discs. + +While much more powerful cryptography exists and is used, the Vigenere cipher is still theoretically unbreakable. + +Here's a [video that explains it in depth](https://www.youtube.com/watch?v=9zASwVoshiM) + +The way it works is simple. You have a string to encrypt, and a key string. Moving one letter at a time simultaneously through both strings, raise the string to encrypt's character by the value of the key string's character, with A equal to 0, B equal to 1, and so on. When you reach the end of the key string, start again at the beginning. + +For example, say we want to encrypt "programmingrules" with the key string "ratchet", this is our result + + to_encrypt: programmingrules + key string: ratchetratchetra + resulting:: grhiyefdigiyyevs + +If you don't see it right away, look at the "a" characters. When a in ratchet occurs, the letter in the result is unchanged. When a is in string to encrypt, the resulting letter is equal to the character in the key string. + +The key is merely the word "ratchet" - as the program runs, the word is repeated to match the length of the string you wish to encrypt. This is what is demonstrated above. + + +#### Requirements + +Note that, like the caesar cipher, when we go past 'Z' we start again at 'A'. Leave spaces and symbols untouched and add them to your resulting string. We must also account for both uppercase and lowercase letters and leave them as the user input them. + +In Python, we use ord() to get the ASCII numeric value of a character and chr() to convert ASCII value back to a character. + +Using an MVC framework, make an app that any user can use. Give them a menu view that lets them choose to encrypt or decrypt, and takes the string and the key. Write the necessary functionality in your model in a vigenere class. There can be a lot here and your code can become a mess fast - stick to one method doing one thing. + +No need for any persistence here. + +Tie them together with the controller. + +# Let's go crypto! diff --git a/8-vigenere-cipher/vigenere_controller.py b/8-vigenere-cipher/vigenere_controller.py new file mode 100644 index 0000000..f2efad0 --- /dev/null +++ b/8-vigenere-cipher/vigenere_controller.py @@ -0,0 +1,6 @@ +import vigenere_views +import vigenere_models + +class Controller: + def __init__(self): + pass \ No newline at end of file diff --git a/8-vigenere-cipher/vigenere_models.py b/8-vigenere-cipher/vigenere_models.py new file mode 100644 index 0000000..9e1d155 --- /dev/null +++ b/8-vigenere-cipher/vigenere_models.py @@ -0,0 +1,3 @@ +class Vigenere: + def __init__(self): + pass \ No newline at end of file diff --git a/8-vigenere-cipher/vigenere_views.py b/8-vigenere-cipher/vigenere_views.py new file mode 100644 index 0000000..e69de29 diff --git a/README.md b/README.md new file mode 100644 index 0000000..a2502cf --- /dev/null +++ b/README.md @@ -0,0 +1,41 @@ +Week 3 Day 1 +============ + +Welcome back! + +Today we're going to be diving into databses. We'll explore the basics of database creation and design using real world examples. + +#### Resources + +[SQL Schema Designer](http://ondras.zarovi.cz/sql/demo/) + +[SQLite tutorial](http://zetcode.com/db/sqlite/) + +[Best practices for database design. There are more good things on this site](http://www.sqlwatchmen.com/blogs/jim/2011/03/28/best-practices-for-database-schema-design/) + +[10 common database design mistakes](https://www.simple-talk.com/sql/database-administration/ten-common-database-design-mistakes/) + +[An article about null values. The important part of this is that emptiness and null are not the same. You don't have to agree with what he says.](http://www.bennadel.com/blog/85-why-null-values-should-not-be-used-in-a-database-unless-required.htm) + +[High Scalability - A blog on scaling databases](http://highscalability.com/) + +[SQL Course](http://www.sqlcourse.com/) + +[SQL Course 2](http://www.sqlcourse2.com/) + + + + +Week 3 Day 2 +============ + + +Ready for some serious OOD, SQL, and algorithm challenges today? Grab a coffee and do some stretches. + +Thankfully, we'll use the [Model-View-Controller](https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller) structure to keep our code abstracted and organized - leaving more room in your brain for computation. + +#### Resources + +[Object Oriented Design](http://en.wikipedia.org/wiki/Object-oriented_design) +[SQL Quick Reference](http://www.w3schools.com/sql/sql_quickref.asp) +[Model-View-Controller](http://c2.com/cgi/wiki?ModelViewController)