Tumgik
#do not name your child foo bar
phrootsnacks · 7 months
Text
beautiful programming names to name your child
Ruby
Java
Rust
Elif
Array
Boolean
Pointer
Byte
Linked list
Foo Bar
child
parent
string
return
OOP
Julia
3K notes · View notes
purpletutor · 3 years
Text
Python and its learning advantages.
Guido Van Rossum the Inventor of the computer language, “Python” ,when began implementing Python as a programming language back in the late 1980s at Centrum Wiskunde & Informatica (CWI) in the Netherlands came up with an interesting tale .
This had to do with why was the programming language named after a reptile, Guido back in those days always read the published scripts from “Monty Python’s Flying Circus”, a BBC comedy series from the 1970s.
Van Rossum thought he needed a name that was short, unique, and slightly mysterious, so, he decided to call the language, Python.
That is how a name of a reptile was given to a computer language. Unlike the name the language is not dangerous rather it is one of the easiest programming language and can be made further easy by learning basic coding.
Surprisingly today when young minds of 6 -7 years old kids can get a hold of it I am sure that even you, and I can, but let’s first know a bit about Python before we set forth to this enriching learning experience.
• Python is an interpreted, object-oriented, high-level programming language with dynamic semantics.
• Its high-level built in data structures, combined with dynamic typing and dynamic binding, make it very attractive for Rapid Application Development, as well as for use as a scripting, or glue language to connect existing components together.
• Python’s simple, easy to learn syntax emphasizes readability and therefore reduces the cost of program maintenance.
• Python supports modules and packages, which encourages program modularity and code reuse.
• The Python interpreter and the extensive standard library are available in source or binary form without charge for all major platforms, and can be freely distributed.
Often, programmers fall in love with Python because of the increased productivity it provides. Since there is no compilation step, the edit-test-debug cycle is incredibly fast.
Debugging Python programs is easy, a bug or bad input will never cause a segmentation fault. Instead, when the interpreter discovers an error, it raises an exception. When the program doesn’t catch the exception, the interpreter prints a stack trace.
A source level debugger allows inspection of local and global variables, evaluation of arbitrary expressions, setting breakpoints, stepping through the code a line at a time, and so on.
The debugger is written in Python itself, testifying to Python’s introspective power. On the other hand, often the quickest way to debug a program is to add few print statements to the source and the fast edit-test-debug cycle makes this simple approach very effective.
Keeping Python fun to use is an important goal of Python’s developers. It reflects in the language’s name, a tribute to the British comedy group Monty Python.
On occasions, they are playful approaches to tutorials and reference materials, such as referring to spam and eggs instead of the standard foo and bar.
Python is used by hundreds of thousands of programmers and is used in many places. Sometimes only Python code is used for a program, but most of the time it is used to do simple jobs while another programming language is used to do more complicated tasks.
Although has anyone ever wondered how small children can code and run commands on python. The answer to this lies in the amount of sources we have .If one wishes to learn and there are multiple ways that the young generation has been offered with.
Among the many sources to choose from, PurpleTutor an Ed-tech company can help the child fulfil his /her dreams .Becoming a programmer in the future will not seem only a dream . What we as a team promise is interesting and interactive live online coding classes with the child facilitated by certified computer science teachers.
We teach coding to the young budding generation(Age 6-16). If you wish to witness yourself how this experience can be fruitful for your child in being future ready and for you to be a responsible parent. Book a slot for your child with our https://study.purpletutor.com/signup?source=TW and get to know more about us from our website https://purpletutor.com/about/
Tumblr media
33 notes · View notes
sims2squared · 2 years
Text
Rotation 1 - Brandi Broke & Kids
The Broke family is like my benchmark for noticing differences from the previous times I've played them. Every tim I restart the save file they get along differently! On this go round, they appear to get along pretty well most of the time and they are actually a very sweet little family. In my last save file most of them hated each other. lol I spent most of the time with the Broke family at home... because it was just too hard to get everyone's needs up to get them out the door. lol Sound familiar to anyone with kids (I don't have 'em, but I used to babysit when I was a teen, so I'm familiar with this issue)? Even with staying at home for the most part, with the Broke's there was PLENTY going on... from colds to a tonsillectomy, from Skip's ghost trying to seduce Brandi to Skip's ghost terrifying his children, to not being able to keep the house clean or the needs up, birthdays, earthquakes.... you name it. lol And now I have to weed 89 screenshots (I was too busy with them to remember to take more!) down to 10...
Tumblr media
So we may as well start off with Skip back from the dead and attempting to seduce Brandi while she was delusional from a cold & fever....
Tumblr media
Little Beau also aged up to a child. He's shy and introverted this time around (in my last PH save he got randomized traits that made him a little hellion!). Spends a lot of the time quietly helping out his mom by picking up dishes, mopping up messes, and taking out the trash.
Tumblr media
Twins Sharla & Kashton popped out of their bassinets! They are... pretty adorable, but also a complete whirlwind of crazy.
Tumblr media Tumblr media
Both Dustin and Beau are pretty helpful with keeping the twins entertained. Dustin plays with them a lot, and Beau is good for a shy hug or a chat.
Tumblr media
Dustin is still dating Angela, but I have noticed their relationship bars declining a little almost every time they hang out... Dustin mostly invites her over when Mom is out of the house.
Tumblr media
During this rotation Dustin graduated from high school (barely - he had a D grade and it was slipping) on his birthday. Immediately after ageing to young adult he required emergency surgery for tonsillitis. I love that with the education mod (I think) there is a high school graduation ceremony that the whole family can attend! I didn't know that was a thing (I'm terrible about reading mod descriptions, tbh), so I was very pleasantly surprised!!
Tumblr media
Poor Beau nearly froze to death at one point! Winter is a key ingredient in the recipe for popsicle-sims. Luckily, Beau was already on his way inside. Related note: I keep telling my sims not to take off their winter clothes when they preform an action outside, but they just won't listen! Why put on your cold weather clothes for the walk to whatever they are doing outside, just to take off the cold weather clothes to do the thing they are doing outside??? My google-foo is failing me on this silly behaviour too, ugh.
Tumblr media
Brandi briefly had a job in the culinary field, but got fired for catering a party on her own... behind her bosses' back. She got some extra cash, made friends with Judith Ward, and became a minor celebrity though so she wasn't mad about it. I'm not sure she was thinking ahead on that one.
Tumblr media
Skip's ghost may have tried to seduce a delusional Brandi at the beginning of the rotation, but most of the time he's pretty scary. He doesn't have the nicest personality... At one point he was terrorizing poor Beau and an earthquake happened! I wish I had caught a better photo as I don't think I've ever seen a sim quite that scared! The poor kid was just cowering and screaming. Better Ghosts has basically won my "Best Fun Mod" award. I just can't get over how great it is. Lights flickering, haunting wails, sims actually afraid of the ghosts... it's so great!! And I think that puts me at the 10 photo limit, so I'll leave this here. Playing the Broke family was very fun in this rotation! I was so busy with them and they had a lot of memorable moments!! If you are interested in playing this save file for yourself, you can! It's packed full of fun features (like 170 clubs, for starters) and your favourite TS2 sims! Get more information about it on my google drive.
2 notes · View notes
Text
Survey #381
“don’t try to be the one person who has stayed just to say they never left me”
Do you feel bored with your life? Always. Do you miss anyone who was mean to you in the past? I sometimes miss Colleen, but I know it's for the better that we no longer associate with each other. What’s the most weight you’ve ever gained from a medication? I don't know, but a fuck of a lot. Thanks, Abilify. Have you ever been suicidal? Yes. Do you pray? If yes, to whom? No. What do you miss about high school? Memories with Jason. What do you miss the most about college? Socializing. What was the best date you’ve ever been on? A triple date to an arcade w/ Jason and friends. What’s the last great song you discovered? The most recent one? I don't know, really. Do you feel free to post how you feel on Facebook? Yeah. Don't like what I post, delete me. Have you ever done cocaine? Yikes, no thanks. Do you think you’ll ever get married? Do you want to? I sometimes wonder if I ever will. I'm scared of just continuing to be an unemployed leech that is doing nothing significant with her life, in which case it's like, why even be with me romantically. I feel like such a dead end street. I want to get married someday. Who do you care about the most? When it comes down to it, probably my mom. Have you ever made out on a couch? Yeah. Would you ever get gauged ears? I want small gauges, actually. When it comes to clothing, are you the conservative type? Yes, because I hate my body and don't want others to see it. Do you enjoy eating? I wish I didn't. Have you ever ridden in a race car? No. Do you go out of your way to impress the opposite gender? No. Do you enjoy history? Not really, no. It bores me. Are you a pajama person or do you stay dressed all day? I'm just about always in my pjs. Do you value looks or personality more? Personality is way more important. Have you ever changed religions? Yeah. Born Roman Catholic, converted to Christianity when I further understood the differences, then I went to how I am now: I believe in something(s), but I don't quite know what. I wouldn't call myself a Neo-Pagan, but it's what I relate most to. Would you ever wear fake eyelashes? I would for like, my wedding. Foo fighters vs. Red Hot Chili Peppers: I'm actually not a big fan of either. Are you a fan of the SAW movies? I don't really watch them. Do you ever forget how old your siblings are? My two immediate sisters, I'm sometimes a year off. All my others, yes. :x Mountain Dew or Sprite? Mountain Dew, of course. I really don't like Sprite now, which is ironic because as a kid, it was my favorite soda. Could you ever give yourself a shot? Yeah. Have you ever worked as a cashier? That was one of my duties when I worked at a dollar store. If you are on birth control that allows you take pills and skip your period, how often do you opt to skip it? How come? My birth control doesn't allow me to skip, but rather, it regulates it. Is there a book series where you loved the first book, but for some reason the other books in the series just didn’t measure up? I can't say that, no, as most series I just kinda fell out of, like The Hunger Games. LOVED the first book, started the second, and even though I was enjoying it, I just stopped for some reason? Are there any stores/restaurants that you would like to shop/eat at, but there aren’t any located near enough to you? Haha yeah, like lots of west coast fast food places like Jack n' the Box or however it's formatted. If you were told by a professional that you were unable to become pregnant, how would that affect you? Is there something important to you about conceiving a biological child rather than adoption? And finally, if you even want to have children, would you choose adoption or surrogacy or would you go on childless? I don't even want kids, so honestly, I'd be stoked if I learned I was infertile. Wouldn't need to worry about the chance of getting pregnant and facing an abortion dilemma. Is there something that you did not used to take seriously, that you either now take seriously or wish that you had in the past (e.g., a relationship that you miss, your education, etc.)? Hm. I don't know. Are there any subjects that you are interested in so much that you would read whole books or academic journals about them? Meerkats, especially. I will read EVERY scientific article about them I find. Are you physically affectionate with your friends? I'm a hugger. When you were in middle school and high school, did you witness a lot of bullying? How did the teachers react to name-calling or violence? Not really, thankfully. Are any of your friends/relatives actually impressive artists or writers? Are you willing to share an example of their work? Yeah. I have a cousin who's really good at drawing, and my sister is a wonderful cake decorator. Do you drink more apple or orange juice? Orange. Could you forgive your best friend for sleeping with your gf/bf? My hypothetical bf/gf, no. Would you ever donate blood? I have before, and I would again if I knew I was hydrated enough and the opportunity was right there. Would you rather drink coffee or tea? Ugh, neither. Do you get easily embarrassed? YES. How long was your longest make out? TMI alert, like all night. If the person who hurt you most said they’re sorry would you believe them? I honestly don't know. Do you have sensitive skin? Very. What color is your mum's car? White. Do you live in an apartment? No. Do you have a pet fish? Nope. Are you happy with your eye color? I wish they were a more sapphire blue. Solid soap bar or liquid body wash? Absolutely liquid body wash. What color do you want your dream car to be? Baby pink. *-* Do you have more then one favorite band? I say I do, but at the same time I know Ozzy Osbourne will ALWAYS be #1. Do you prefer being single or in a relationship? In a relationship. But it's absolutely not something I'm about to force just for the sake of being in one. Would you be really upset if Facebook ceased to exist tomorrow? Nah. Have you or would you try shark meat? No to both. Do you know anyone that's pescatarian? No. Someone I watch on YouTube is, though. Are you shy or over confident around your crushes? Super shy. Do you think the govt. has a cure for cancer, but is hiding it from public? Hell, I think it's very well possible, but I lean more towards for financial hoarding, they simply don't further pursue potential cures that are discovered. I mean, just THINK about all the "future cures" you've read or heard about. It's fucking outrageous. It's all to fuel the medical industry. Okay, tin hat coming off. Last time you drank a diet soda? A very long time ago, because diet soda gives me a massive headache. Was your ex born in America? Only one wasn't. Name your favorite type of music and why. Metal. I for one just like the sound, and I find it very therapeutic when I'm especially mad or sad. Even when I'm in a good mood, I just enjoy it. I also feel that a lot of metal songs tell interesting stories and/or have very poetic lyrics. Do you own or have you read, or thought of reading any self-help books? I haven't, but I've considered it. Can you breakdance? Definitely not. Have you ever read a book and not understood it? If so which one? Yes. We were assigned this one war novel in middle school that was FUCKING AWFUL, like I was checked out the whole time. I don't remember its name or anything. Have you ever watched a movie and not understood it? If so which one? Yes; the Warcraft movie I mentioned in a recent survey. Orcs and their fucking deep-ass voice that I couldn't understand. Do you blowdry your hair? No. Tell me about your dream last night. Omfgggggg y'all. So, there's one invert pet that I've never understood the keeping appeal of, and that's giant centipedes. Their bites are notoriously excruciating, and they are just SO goddamn fast. Well, for some godforsaken reason, I wanted one as a pet. Got one, and it immediately got loose. Guess who wanted to shit herself lmao. Centipedes are very cool, but only from a distance, ya feel? Have you ever stayed in a fancy high-class rich hotel? No. Have you ever stayed in a rent-by-the-hour motel? I don't think so. Describe the worst fight you’ve ever been in whether physical or verbal. I'm not entirely sure about my *worst*, but I know it was with Mom. We've had a few. Have you heated any food in your microwave today? Yeah, a shrimp alfredo Lean Cuisine bowl. Do you own any items of clothing with cartoon characters on them? Yes. Have you ever played Animal Crossing? No, it doesn't seem like my kinda game. Do you own anything (e.g jewelry, accessories) with your initial on it? Yes, but none of which I personally bought because I don't really like them. Do you own any cats or dogs? What are their names? I have a cat named Roman. <3 Have you added any books to your shelves lately? Which? No. Have you bought any new cosmetics or toiletries lately? Which? No. Do your pets have a specific type of food that they prefer? Roman will eat whatever cat food he's given, while Venus, like your average ball python, is a picky eater. Like when I first got her, she wouldn't eat for almost a year because I just couldn't find a method through which she'd accept food. Now she consistently takes frozen/thawed small rats that have actually sat in warm water (versus doing it by hand under running water), and she generally won't strike it unless it's offered to her by tongs, but not dangling by the tail. Picky, picky miss thang. What's your favourite variety of apple? I'm not very particular about flavor so long as the apple is crisp. I canNOT do soft apples. Which of your physical features do you receive the most compliments about? My hair.
2 notes · View notes
alystayr · 3 years
Text
Playlist musicale 2021 (1/2)
Liste des chansons (playlist 2021 - part. 1)
Mise à jour : 30 juin 2021
playlist 2020 (part.2), playlist 2020 (part. 1)
playlist 2019 (part.2), playlist 2019 (part. 1)
playlist 2018 (part. 2), playlist 2018 (part. 1)
playlist 2017 (part. 2), playlist 2017 (part. 1)
playlist 2016 (part. 2), playlist 2016 (part. 1)
playlist 2015
0-9 #
A
AC/DC - Demon Fire (2020)
Bryan Adams - Summer Of '69 (1985)
Alabama Shakes - Hold On (2012)
America - A horse with no name (1971)
Angèle - Balance Ton Quoi (2018)
Archive - Fool (2002)
Jean-Louis Aubert - Bien Sûr (2019)
Asaf Avidan - Different Pulses (2012)
B
George Baker - Little Green Bag (from Reservoir Dogs) (1969)
Band Of Horses - No One's Gonna Love You (2007)
The Beatles - Strawberry Fields Forever (1967)
Jeff Beck (feat. Imogen Heap) - Blanket (2007)
Bee Gees - Stayin' Alive (from  Saturday Night Fever) (1977)
Chuck Berry - Darlin' (2017)
The Black Keys (cover John Lee Hooker) - Crawling Kingsnake (2021)
Black Pistol Fire - Morning Star (2016)
Black Pumas - Colors (2019)
Black Rebel Motorcycle Club - What Ever Happened To My Rock And Roll (2001)
Black Sabbath - God Is Dead? (2013)
Blind Melon - No Rain (1992)
Blondie - Heart Of Glass (1978)
The Blue Stones - Black Holes (Solid Ground) (2015)
The Blues Mystery - Back to the Dirty Town (2013)
Blues Traveler - Run-Around (1995)
Blur (Feat. Phil Daniels) - Parklife (1994)
David Bowie - Survive (1999)
Jacques Brel - La chanson des vieux amants (1967)
Brigitte - Battez-Vous (2010)
C
Francis Cabrel - Peuple des fontaines (2020)
J.J. Cale - Durango (1997)
CAN - Vitamin C (1972)
Cats on trees - Sirens call (2013)
Nick Cave & The Bad Seeds - Distant Sky (2016)
Tracy Chapman - Give Me One Reason (1995)
Joe Cocker (cover Randy Newman) - You Can Leave Your Hat On (from  9½ Weeks) (1986/1972)
CocoRosie - Did Me Wrong (2020)
Cœur de pirate (feat. Loud)   - Dans la nuit (2018)
Leonard Cohen - Hey, That's No Way to Say Goodbye (1967)
The Cranberries - Animal Instinct (1999)
Creedence Clearwater Revival - Fortunate Son (1969)
Sheryl Crow - If It Makes You Happy (1996)
D
Eddy de Pretto - Bateaux-Mouches (2020)
Lana Del Rey - Chemtrails Over The Country Club (2021)
Depeche Mode - Freelove (2001)
Détroit - Null And Void (2013)
Dinosaur Jr - Freak Scene (1988)
Dire Straits - Expresso Love (1980)
E
Eels - Earth To Dora (2020)
Eminem  (feat. Anderson .Paak)   - Lock It Up (2020)
Endless Boogie - The Artemus Ward (2013)
F
Piers Faccini - Foghorn Calling (2021)
Mylène Farmer - Fuck them all (2005)
Léo Ferré – Les anarchistes (1969)
Feu! Chatterton - Monde Nouveau (2021)
Foo Fighters - Walk (2011)
Maxime Le Forestier - Saltimbanque (1975)
Foster The People - Sit Next to Me (2017)
Franz Ferdinand - Michael (2004)
Fugees - Ready or Not (1996)
G
Peter Gabriel - Mercy Street (1986)
Serge Gainsbourg - Requiem Pour Un Con (1968)
France Gall - Evidemment (1987)
Genesis - Invisible Touch (1986)
Girls in Hawaii - Found in the Ground (2002)
Goldfrapp - Ooh La La (2005)
Jean-Jacques Goldman - Comme toi (1982)
Grand Corps Malade & Louane - Derrière le brouillard (2020)
Juliette Greco - Le p'tit bal perdu (1961)
Greta Van Fleet - Age of Machine (2020)
Guns N' Roses - Sweet Child O' Mine (1987)
H
Bill Haley & His Comets - Rock Around The Clock (1954)
PJ Harvey - Dress (1992)
Murray Head - Say It Ain't So Joe (1975)
Heartless Bastards - Revolution (2020)
Bernard Herrmann - Taxi Driver (theme) (1976)
The Hives - Hate to Say I Told You So (2000)
The Hollies - Long Cool Woman (In a Black Dress) (1971)
Hollywood Undead (feat. Hyro The Hero) - Comin' Thru The Stereo (2021)
Romain Humeau - Echos (2020)
I
IDLES - Mr. Motivator (2020)
Interpol - Stella Was A Diver (2002)
Iron Maiden - Hallowed Be Thy Name (1982)
J
Michael Jackson - Black or White (1991)
The Jesus And Mary Chain (Feat. Hope Sandoval) -   Sometimes Always (1994)
Quincy Jones - Soul Bossa Nova (1962)
K
Kaleo - Backbone (2020)
Kansas - Dust in the Wind (1977)
The Killers - Caution (2020)
The Kills - The Search For Cherry Red (2020)
Kings Of Leon - The Bandit (2021)
Kiss - Heaven's On Fire (1984)
Lenny Kravitz - Are You Gonna Go My Way (1993)
Kyo - Le Graal (2014)
L
Led Zeppelin - Since I've Been Loving You (1970)
Liars - Sekwar (2021)
Limp Bizkit (Feat. Lil Wayne) - Ready To Go (2013)
Louise Attaque - La plume (2000)
M
Mad Season - Wake Up (1995)
Manu Chao – Clandestino (1998)
Laura Marling - What He Wrote (2010)
Memphis Slim - Born With The Blues (1972)
Metronomy - Walking In The Dark (2019)
Mickey 3D - La mort du peuple (2005)
Steve Miller Band - Jet Airliner (1977)
The Mission - Wasteland (1986)
Moby - Why Does My Heart Feel So Bad? (1999)
Mogwai - It's What I Want To Do, Mum (2021)
Moondog - New Amsterdam (1997)
Morcheeba - Sweet L.A. (2018)
Motörhead - Till The End (2015)
Jason Mraz - I'm Yours (2005)
Muse - Supermassive Black Hole (2006)
N
Nine Inch Nails - The Fragile (1999)
Nirvana - All Apologies (1993)
Noir Désir - Aux sombres héros de l'amer (1989)
Claude Nougaro (cover Chico Buarque) - Tu verras (1978)
O
Oasis - D'You Know What I Mean? (1997)
Of Montreal - The Past Is A Grotesque Animal (2007)
The Offspring - Why Don't You Get A Job? (1998)
P
Panaviscope – Sham (2020)
Pigalle - Dans La Salle Du Bar-Tabac De La Rue Des Martyrs (1990)
Pink Floyd - Us And Them (1973)
The Police - Synchronicity II (1983)
Pomme (cover Mylène Farmer) - Désenchantée (2020/1991)
Iggy Pop - Dirty Little Virus (2020)
Portishead - Chase The Tear (2009)
Portugal. The Man - Feel It Still (2017)
The Pretty Reckless - My Bones (2021)
Q
Queen - The Miracle (1989)
Queens of the Stone Age - Go With The Flow (2002)
R
The Raconteurs – Broken Boy Soldier (2006)
Rammstein - Du Hast (1997)
Chris Rea - The Blue Cafe (1998)
Red Hot Chili Peppers - Suck My Kiss (1992)
Lou Reed (cover The Drifters)  - This Magic Moment (1995/1960)
R.E.M. - What's The Frequency, Kenneth? (1994)
Renaud - Mistral gagnant (1985)
Rival Sons - Too Bad (2019)
The Rolling Stones - Star Star (1973)
Royal Blood - Typhoons (2021)
David Lee Roth - Just Like Paradise (1987)
La Rue Ketanou - Le Capitaine de la Barrique (2014)
Olivia Ruiz - De Toi A Moi (2003)
S
Santana (cover  Fleetwood Mac) - Black Magic Woman (1970)
Shocking Blue - Venus (1969)
Simple Minds - Mandela Day (1989)
The Sisters of Mercy - Emma (1987)
Slayer - Raining Blood (1986)
Sasha Sloan (feat. Sam Hunt) - when was it over? (2020)
The Smashing Pumpkins - Disarm (1993)
Patti Smith - Rock N Roll Nigger (1978)
The Smiths - Barbarism Begins at Home (1985)
Sonny & The Sunsets  - Too Young to Burn (2009)
Regina Spektor - One Little Soldier (from Scandale) (2019)
Spoon - The Way We Get By (2002)
Bruce Springsteen & The E Street Band - Backstreets (1975)
St. Vincent - Los Ageless (2017)
Stereophonics - Bust This Town (2019)
Sub Urban - Cradles (2021)
Superbus - Mes Défauts (2010)
James Supercave - Better Strange (2016)
Taylor Swift (feat. Bon Iver) – Exile (2020)
System Of A Down - Spiders (1998)
T
Téléphone - Au coeur de la nuit (1980)
Têtes Raides - Tam Tam (2007)
Charles Trenet - Je chante (1937)
Tool - Schism (2001)
Tina Turner - The Best (1989)
U
U2 - Angel Of Harlem (1988)
V
Van Morrison - Country Fair (1974)
Laurent Voulzy - Rockollection (1977)
W
Tom Waits - Wrong Side Of The Road (1978)
Weezer - Beverly Hills (2005)
The White Stripes - Hotel Yorba (2001)
Amy Winehouse - Fuck Me Pumps (2003)
Woodkid - In Your Likeness (2020)
Wovenhand - Crook and Flail (2016)
Shannon Wright - Division (2017)
X
Y
Yeah Yeah Yeahs - Heads Will Roll (2009)
Yes - Roundabout (1971)
Z
2 notes · View notes
shochmonster · 4 years
Text
84 Questions
original: https://fuckyeahsurveys.tumblr.com/post/61049002526/84-questions
Put your music player of choice on shuffle and list the first 10 songs Guns of Brixton - The Clash Holiday in Cambodia - Dead Kennedys  Chainsaw - Nick Jonas California - Joni Mitchell Make It Wit Chu - Queens of the Stone Age This Woman’s Work - Kate Bush The Bad Thing - Arctic Monkeys Between the Bars - Eliot Smith Drown - The Smashing Pumpkins Different People - No Doubt
If you could spend a week anywhere in the world, where would it be and why? Would you take anyone with you? I’d take @duoloopo to the UK. I’d like to see places other than London.
What is your preferred writing implement? (eg. Blue pen, pencil, green pen)  I use my iPad stylus the most, but I have this heavy mechanical pencil I really like for drawing. 
Favourite month and why? October. I just love the fall vibe. 
Do you have connections to any celebrities (even minor)? List them. I went to undergraduate school with Rebecca Sugar. We used to ride the bus between NYC and DC together on holidays. 
Name 3 items you could pick up from where you are. Can of seltzer, pencil case, stack of bills
What brand logo is closest to you currently? REAL Skateboards
Do you ever play board games or other non-computer games? Got any favourites? I love Small World and Munchkin. 
A musical artist you love that isn’t well known Laura Stevenson and the Cans
A musical artist you love that is well known Red Hot Chili Peppers
What is your desktop background currently? Thomas Barrow on the beach in the Season 4 Christmas Special
Last person you talked to, and through what you talked to them @duomaxwell02 with my face :O 
First colour name you can think of that isn’t in the rainbow White
What timekeeping devices are in the room you are currently in? Two wall clocks, though one is very old and doesn’t wind anymore. I also have a clock @duoloopo ‘s dad made for me. It’s on the piano. 
What kind of headphones do you use? JBL Bluetooth, noise canceling 
What musical artists have you seen perform live? Foo Fighters (3x), Incubus (3x), Red Hot Chili Peppers, Smashing Pumpkins, Beastie Boys, Audioslave, Justin Timberlake, Troy Sivan, Arctic Monkeys, The Rolling Stones, Eric Clapton, Queen (but with Roger Daughtry, not Freddy... for obvious reasons.). Probably a whole bunch of others I’m blanking on. 
Does virginity matter to you? Not really. 
What gaming consoles do you or your family own? PS4, PS2, PS1, XBox 360, N64, Gamecube, Wii, NES, SNES, various Gameboys, Nintendo DS, PSP
What pets do you have? What are their names? Two cats, Hemingway and Renji
What’s the best job you’ve ever had? I like freelance art gigs the best. As for ‘normal people jobs’, I once was a sign painter for Whole Foods. That was pretty fun, minus the work drama. 
What’s the worst job you’ve ever had? Food service. 
What magazines do you read, if any? I’ll pick up Time once in a while
Inspiration behind your URL? My classic original URL was LinkWorshiper and had been since AIM first existed. I picked it because Zelda was the first fandom I ever joined. Now I’ve changed all my handles (except on AO3) to reflect my actual name, as my literary agent thinks it’s more professional. 
Inspiration behind your blog title? Mean Girls. I always chuckle imagining Thomas and Jimmy as some Edwardian version of the Plastics. 
Favourite item of clothing? My Downton livery waistcoat. And the stiff bosomed shirt and collars I have to go with it. 
Are you friends with any exes? Nah. By the time I felt comfortable enough to possibly try, I also didn’t care enough to. 
Name at least one book you loved as a child. His Dark Materials (the trilogy by Philip Pullman). I still love them and am jazzed that he’s writing more these days. 
What’s your native language? If that language has distinct regional variations, which variation? (eg. AU English, US English) US English, mostly a northeastern dialect/accent
What email service do you use? Gmail
Is there anything hanging on the walls of the room you are currently in? So much stuff. I have a mood board full of Downtons stuff over my desk, various DA posters and memorabilia, plus some artwork I’ve done, and some of my JC Leyendecker collection. The aforementioned wall clocks, a San Francisco cable car bell, Sailor Moon and a few other little knickknacks, like my hamsa. To name a few lol. 
What’s your favourite number, and why? 212 because it’s Manhattan’s area code and also because it used to be the notation for one of my favorite ships in an old fandom. 
Earliest moment in your life you can remember? Sitting under the table and looking at my grandma, who was wearing a Cruella Deville dress she’d knit herself. Like, it had the actual Disney character on it. Pretty cool to a little guy, I guess!
What did you have for dinner yesterday? Quesadilla 
How often do you brush your teeth? Whenever they feel gross
What’s your favourite candy/chocolate? Lately, I’ve been into Junior Mints. 
Have you had other blogs on Tumblr? Do you have any other blogs currently? This blog used to have my old handle, linkworshiper. I did a small Whole Foods blog when I worked with them, but it never went anywhere. 
If you were suddenly really hungry, what would you choose to eat? Sushi
What fandoms would you consider yourself a part of? Downton Abbey, though lately I’ve been crazy busy and not as active as I once was. Casually still poking at old fandoms like Zelda and Gundam Wing to name a few. 
If you could study anything, what would it be? More art education can’t hurt. Maybe some formal history education. 
Do you use anything on your lips? (eg. Chapstick, gloss, balm, lipstick) Chapstick 
How would you describe your sense of humour? Seinfeld 
What things annoy you more than anything else? Mouth noises
What kind of position are you in at the moment? Sitting
Do you wear much jewellery? Nope
Who is the leader of your country, currently? Any other levels of government with leaders? (State, region, province, county, district, municipality, etc) Three supposedly equal branches of government, currently being run into the ground by a clown 
Last 3 blogs on your dashboard, not including any of your own @halcyondaze @mab1905 @lavender-hued-melancholy
What do you carry your money in? I try to never carry cash, but I carry a small wallet 
Do you enjoy driving? Why or why not? I like it but sometimes it feels like a chore, especially during a commute. @duoloopo thinks I’m a shit driver so she tries to drive whenever she can, which has pluses and minuses. 
Longest drive you have ever been on? Savannah GA to San Francisco, CA in a UHaul
Furthest away from home you have ever been? Germany 
How many times have you moved house? God, I don’t even know. More than ten. 
What is on the floor of the room you’re currently in, not including furniture? Cat toys, unused canvases
How many devices do you own which can access the internet? Phone, computer, iPad, various game consoles 
Is there is anything that is guaranteed to always make you happy? Thomas and Jimmy <3 <3 
Is there anything that always makes you sad? Thinking too hard about being a failure
What programs do you currently have open? I just rebooted, so only Chrome, Spotify and Photoshop
What do you associate the colour red with? This line in the Kate Bush Song Blue Symphony, which goes, ‘I associate love with red, the color of my heart when she’s dead.’ 
Last strong smell you can remember smelling? The Greek food I ordered in for dinner
Last healthy thing you ate? Roasted veggies
Do you drink tea or coffee, and how much per day? I prefer tea, and I drink coffee for energy, though sometimes I think it just makes me crash harder. 
What do you associate the colour blue with? The sky
How long is the closest ruler you can find? 12 inches
What colour pants/skirt/etc are you currently wearing? Dark blue
When was the last time you drank water? About a minute ago
How often do you clear your browser history? Rarely
Do you believe nude photos can be artistic, rather than erotic? Yes
Ever written fanfiction for anything? Oh God, yes. You can still find it under Link Worshiper on AO3, though some of my ‘classics’ have been removed since I turned them into original manuscripts 
Last formal event you attended My cousin’s wedding
If you had to move your birthday to another date, which one would you choose and why? Maybe inch my birth year up just by two so that I’d stop being called a damn millennial. At my age, I really just don’t relate to the generation even though technicalities make me a part of it. 
Would you prefer to be at a beach or in the countryside? Beach
Roughly how many people live in your town? 52,000
Do you know anyone with the same birthday as you? Leonard Nimoy :D 
Favourite place to shop? Can be a certain store or a place where there are multiple stores I haven’t really gone shopping since the pandemic. Right now, it feels like the only place to buy anything is Amazon XD
Do you have a smartphone? What kind? If you don’t, do you want one? Samsung. It’s not a Galaxy but is a new model and a fraction of the price. 
What is your least favourite colour, and why? I don’t think I dislike any colors honestly. 
How do you spell grey/gray? Grey. I’ve got too many British online associates to ever go back. 
Go to your dashboard and describe the image shown in the radar section (below the “Find blogs” link) It’s Umbrella Academy fanart of Klaus. He’s in black and white with this hands over his eyes and the background is red. It’s very graphic. 
What difference is there between how many followers you have, and the number of blogs you follow? 736
How many posts do you have? 8,859
How many posts have you liked? I can’t find the stat D: 
Do you post mainly reblogs, or your own content? Mainly reblogs but I pepper in my own content when I can. Lately, I haven’t had time to do as much fanart though, and I kind of feel like it’s not worth bothering to post my original stuff. Nobody follows my blog for that. 
Do you track any tags? No. 
What time is it currently? 7:33 PM CMT
Is there anything you should be doing right now? Waking up @duoloopo. TIME TO JUMP ON THE BED. 
tagging, if they feel like it: @abbys-little-whippersnapper​ @bumblebarrow​ @irrationalgame​ @downtoncat​ @mab1905​ @duoloopo​
and everyone who I’ve forgotten
11 notes · View notes
thotyssey · 6 years
Text
On Point With: Mocha Lite
Tumblr media
As most people who have followed NYC drag in the past decade can attest, here is one of the city’s most talented and provocative queens. Whether she’s giving you a crushing ballad or a smashing series of high energy dance moves, she is always--fascinatingly--equal parts drama and kiki. Brooklyn Pride is happy to have her this year, and Thotyssey is happy to get her for this (long overdue) minute!
Thotyssey: Miss Mocha, hello! Thanks for chatting today, how are you doing?
Mocha Lite: Hello! Doing better... very well, actually.
Glad to hear it! It’s a beautiful day, but we’re almost to the point of Unbearable Drag Weather! Will that be a bad situation for you, or is it easy to handle at this point?
Haha! It's definitely not easy--I lost an eyebrow just last night. Every summer I do my share of complaining, but I remember somehow that I survived last summer... so I power through.
Tumblr media
[Photo: Katelyn Baron]
How long have you been a working queen in New York City?
Just under ten years, I believe.
Here is a wonderfully vague and broad question: what is the key to longevity in this business, when most queens kind of disappear after two or three years?
I can't say I know, exactly. But I'd say, first you have to want it... and want it even when it hurts. I've been through many phases, but nothing is more successful for me than focusing on my strengths. That, and I just having an inborn love for the stage. It's kind of all I know!
And few can do it better. So you are an exquisite, multiracial native Long Islander. Were dancing, performing, fashion etc. also always part of your identity?
I’ve been performing as long as I can remember: community theater and the arts are always where all my passion has gone. Drag is really a great way to do it all.
A lot of times when I see you on the stage, it really does look like you are acting out the lyrics and / or playing characters. Does your headspace go into another realm when you're performing?
Well, I guess! It's the most fun part of drag for me-- besides making people smile. Allowing myself permission to commit one hundred percent to a feeling onstage in front of a group of strangers is [intoxicating] and thrilling. So sometimes I do need to really disappear, as it were. It really does depend on the nature of the the number, really.
Tumblr media
You and Misty Meaner have been partners on and off stage for quite some time. Was it a situation where one of you discovered drag first and the other was like, "I wanna do this too?”
Haha, absolutely not! We both had an interest in the art form--getting to see amazing queens on Fire Island is where we started to see that there is, in fact, a world that took it seriously. And we really wanted to be a part of it. We definitely began together, and grew together.
Where were some of the venues you two started performing in?
Around that time, I did a lot of going out just to be notified--as is the beginning of most drag adventures. But I had some great opportunities at The Ice Palace, with Logan Hardcore and Ariel Sinclair. Also, some great places around Long Island that aren't around anymore, before I moved to Brooklyn.
Tumblr media
You and Misty were basically there in Brooklyn from the beginning. What was going on in that scene when you two first started doing shows there?
Not a whole lot, to be honest. I was working mostly in Hell’s Kitchen when I first came out here. Sugarland and Metropolitan were the the most popular watering holes at the time... but Sugarland is where I really got to watch the beginnings of the crazy scene we know today.
The drag landscape that came out of ther was a little less polished then what was happening in Manhattan, a lot more “anything goes” and art-driven. Did you find yourself more comfortable in Brooklyn than in the more Broadway-influenced HK scene?
Nope, I'm comfortable anywhere there's a stage. I mean, there are some obvious differences between the drag of Brooklyn and Manhattan, but there are even bigger differences between me and some of my fellow BK girls. We are all different! That's only one of the coolest things about drag.
“Misty and Mocha” were basically the only drag couple in the city for a while, and that was considered really odd and novel to a lot of people at the time. But since then, drag couples have become much more common. Wouldn't it seem obvious that the best person to understand what it’s like to live a drag queen life is another drag queen?
To me, that does seem obvious. And I would say it's definitely a plus, having someone who gets how hard it can be. We've been together for a long time, and like any relationship issues exist. Drag has never been one of them.
Tumblr media
Misty has a drag child now, Sassy Frass Meaner! And Princess Bitch can be considered your own drag daughter. What's the best way to be a drag parent? Princess is of my coven, a sister witch--also Lilith LeFae, and Catrina Lovelace. The idea of drag parenting is daunting to me; that kind of pressure makes me nervous. I would say guidance is definitely golden with drag, though. I've had a lot of very incredible queens teach me some really incredible things. The best way to be a drag parent, I'd say, is just to be friends, really--share information, and do your best to help each other.
Besides Lovegun, TNT was another major hub of BK nighltife where you had shows that has since closed. Do you miss those two spots, or is it more like "that's the past, time to move on?"
Any queer space shutting down will always make me sad, and I'll miss them both. TNT was definitely a very special place for me, and many others, I loved that place, and kicked ass on that stage for a few years.
youtube
And then there was Boots & Saddle. You and Misty had a long-running show there, then parted with the venue on bad terms, but ultimately mended fences with the owner. You even resumed doing a show there for those last few months before Boots abruptly closed. Would you go back there to do a gig when the place reopens under a new name and management, if that opportunity presents itself?
Sure, why not--if they'd want us! Although a lot of people lost jobs when they closed. I'd have no problem getting in the back of the line, so to speak.
Y'all are very busy now with gigs as it is. On Tuesdays and Fridays you give shows at Macri Park in Brooklyn. Do you usually have the same crowds on both nights, or are they two very different cultures?
The shows differ in style, and structure. Like you said earlier, Sassy Frass Meaner is Misty's daughter, so she is very often with us [on Tuesdays, along with] the incredible Devo Monique. But I love meeting new queens, and having them at either show.
Tumblr media
Queerpong at Phoenix on Thursdays is your longest running gig now.
Yes Queerpong has been with us for five drunken years--it's amazing, I can barely believe it! We started the party because where we are from on Long Island, beer pong is a standard--but often hetero-dominated--[game]. So we just wanted a very gay twist on the whole vibe, and it's been so great. 
 And have you and Misty ever played against each other?
Many times. She often wins, she's really good!
This season, you're also hosting a RuPaul’s Drag Race viewing party right before Queerpong. So... I guess Eureka's gonna win this thing, right?
Maybe! She's pretty hardcore. I'm definitely a fan of hers.
Tumblr media
Regarding this whole “Azealia Banks versus RuPaul, versus Monet, versus all Drag Race, versus all gays” business: should we be purging Azealia from our music libraries even though ”Anna Wintour” is such a bop?
I mean, who knows? If you want to go that far, that's fine I guess. Think of it this way: I'm not sure we'd love a lot of artists the way we do today if social media were even a decade older than it is. We have, in ways, lost track of how to pick battles. 
That being said, I perform a lot of Banks. I expect to hear things from people, but I don't really care. I perform Biggie Smalls too, but they throw dollars at his sexist and violent lyrics, and at me, for years (to clarify, I'm not comparing their work).  I'm just saying, beloved artists sometimes say and do wild things. It's up to you to discern what's really worth your time.
On a Lite-r note (gag), you and Misty recently started hosting a Saturday night party at the Boiler Room in the East Village. You're probably the first queens to do a show in that neighborhood bar in, well, maybe ever? How's that going?
It's fun! The staff is so nice. But it's still the beginning, and we're just getting to know the crowd... but so far I love it!
Tumblr media
And this is cool: you will be performing as a solo act for the Brooklyn Ball  at Littlefield on Brooklyn Pride Saturday, June 9th! It has a cute theme: the “strawberry social” from To Wong Foo. How do you think that's gonna go?
I had a rehearsal today, and I'm getting things here and there together. I'm feeling confident it's going to be really fun!
Tumblr media
Congratulations on you and Misty being nominated again for Nightlife Legend Hall of Fame at the Brooklyn Nightlife Awards! This has gotta be your year, right?
Yes! Fingers crossed! Thank you very, very much. It's exciting to be nominated, and I'm even more excited to pick out what to wear!  It's going to be a crazy weekend.
Tumblr media
What else is on the horizon for you?
Well our Pride party at The Boiler Room is coming up! All my events this month are gonna be great--I mean, it's PRIDE!
Happy Pride! Okay, last question: since you and Misty have basically done them all (well, probably not Christina and Demi's “Fall In Line” yet, but will anyone?)... what is the best drag duet lip sync number to do?
I’d have to say in the spirit of Pride, “Happy Days / Get Happy” by Barbra Streisand and Judy Garland. It's a perfect syncopation of positively-motivated, pleasant sounds, arranged in a way that is fun to learn and perform and guaranteed to please!
My troubles are forgotten! Thanks, Mocha!
Tumblr media
Mocha Lite co-hosts shows with Misty Meaner at Macri Park (Tuesdays and Fridays, 11pm), Phoenix Bar (Thursdays, 10pm) and the Boiler Room (Saturdays, midnight). Check Thotyssey’s calendar for Mocha’s full schedule of upcoming gigs, and follow her on Facebook, Instagram and Twitter.
On Point Archives
2 notes · View notes
t-baba · 4 years
Photo
Tumblr media
The 30 CSS Selectors You Must Memorize
Learn CSS: The Complete Guide
We've built a complete guide to help you learn CSS, whether you're just getting started with the basics or you want to explore more advanced CSS.
CSS Selectors
So you learned the base id, class, and descendant selectors—and then called it a day? If so, you're missing out on an enormous level of flexibility. You owe it to yourself to commit these advanced CSS and CSS3 selectors to memory.
Basic Selectors
1. *
* { margin: 0; padding: 0; }
Let's knock the obvious ones out, for the beginners, before we move onto the more advanced selectors.
The star symbol will target every single element on the page. Many developers will use this trick to zero out the margins and padding. While this is certainly fine for quick tests, I'd advise you to never use this in production code. It adds too much weight on the browser, and is unnecessary.
The * can also be used with child selectors.
#container * { border: 1px solid black; }
This will target every single element that is a child of the #container div. Again, try not to use this technique very much, if ever.
2. #X
#container { width: 960px; margin: auto; }
Prefixing the hash symbol to a selector allows us to target by id. This is easily the most common usage, however be cautious when using id selectors.
Ask yourself: do I absolutely need to apply an id to this element in order to target it?
id selectors are rigid and don't allow for reuse. If possible, first try to use a tag name, one of the new HTML5 elements, or even a pseudo-class.
3. .X
.error { color: red; }
This is a class selector. The difference between ids and classes is that, with the latter, you can target multiple elements. Use classes when you want your styling to apply to a group of elements. Alternatively, use ids to find a needle-in-a-haystack, and style only that specific element.
4. X
a { color: red; } ul { margin-left: 0; }
What if you want to target all elements on a page, according to their type, rather than an id or classname? Keep it simple, and use a type selector. If you need to target all unordered lists, use ul {}.
Live Demo of Basic Selectors
Combinator Selectors
5. X Y
li a { text-decoration: none; }
The next most common selector is the descendant selector. When you need to be more specific with your selectors, you use these. For example, what if, rather than targeting allanchor tags, you only need to target the anchors which are within an unordered list? This is specifically when you'd use a descendant selector.
Pro-tip: If your selector looks like X Y Z A B.error, you're doing it wrong. Always ask yourself if it's absolutely necessary to apply all of that weight.
6. X + Y
ul + p { color: red; }
This is referred to as an adjacent selector. It will select only the element that is immediately preceded by the former element. In this case, only the first paragraph after each ul will have red text.
7. X > Y
div#container > ul { border: 1px solid black; }
The difference between the standard X Y and X > Y is that the latter will only select direct children. For example, consider the following markup.
<div id="container"> <ul> <li> List Item <ul> <li> Child </li> </ul> </li> <li> List Item </li> <li> List Item </li> <li> List Item </li> </ul> </div>
A selector of #container > ul will only target the uls which are direct children of the div with an id of container. It will not target, for instance, the ul that is a child of the first li.
For this reason, there are performance benefits in using the child combinator. In fact, it's recommended particularly when working with JavaScript-based CSS selector engines.
8. X ~ Y
ul ~ p { color: red; }
This sibling combinator is similar to X + Y, however, it's less strict. While an adjacent selector (ul + p) will only select the first element that is immediately preceded by the former selector, this one is more generalized. It will select, referring to our example above, any p elements, as long as they follow a ul.
Live Demo of Combinator Selectors
Attribute Selectors
9. X[title]
a[title] { color: green; }
Referred to as an attributes selector, in our example above, this will only select the anchor tags that have a title attribute. Anchor tags which do not will not receive this particular styling. But, what if you need to be more specific? Check out the next example!
10. X[href="foo"]
a[href="https://code.tutsplus.com"] { color: #83b348; /* Envato green */ }
The snippet above will style all anchor tags which link to https://code.tutsplus.com; they'll receive our branded green color. All other anchor tags will remain unaffected.
Note that we're wrapping the value in quotes. Remember to also do this when using a JavaScript CSS selector engine. When possible, always use CSS3 selectors over unofficial methods.
This works well, though, it's a bit rigid. What if the link does indeed direct to Envato Tuts+, but, maybe, the path is code.tutsplus.com rather than the full URL? In those cases we can use a bit of the regular expressions syntax.
11. X[href*="foo"]
a[href*="tutsplus"] { color: #83b348; /* Envato green */ }
There we go; that's what we need. The star designates that the proceeding value must appear somewhere in the attribute's value. That way, this covers tutsplus.com, code.tutsplus.com, and even webdesign.tutsplus.com.
Keep in mind that this is a broad statement. What if the anchor tag linked to some non-Envato site with the string tutsplus in the URL? When you need to be more specific, use ^ and $, to reference the beginning and end of a string, respectively.
12. X[href^="http"]
a[href^="http"] { background: url(path/to/external/icon.png) no-repeat; padding-left: 10px; }
Ever wonder how some websites are able to display a little icon next to the links which are external? I'm sure you've seen these before; they're nice reminders that the link will direct you to an entirely different website.
This is a cinch with the carat symbol. It's most commonly used in regular expressions to designate the beginning of a string. If we want to target all anchor tags that have a href which begins with http, we could use a selector similar to the snippet shown above.
Notice that we're not searching for https://; that's unnecessary, and doesn't account for the URLs that begin with https://.
Now, what if we wanted to instead style all anchors which link to, say, a photo? In those cases, let's search for the end of the string.
13. X[href$=".jpg"]
a[href$=".jpg"] { color: red; }
Again, we use a regular expressions symbol, $, to refer to the end of a string. In this case, we're searching for all anchors which link to an image—or at least a URL that ends with .jpg. Keep in mind that this won't capture GIF and PNG images.
14. X[data-*="foo"]
a[data-filetype="image"] { color: red; }
How do we compensate for all of the various image types? Well, we could create multiple selectors, such as:
a[href$=".jpg"], a[href$=".jpeg"], a[href$=".png"], a[href$=".gif"] { color: red; }
But, that's a pain, and is inefficient. Another possible solution is to use custom attributes. What if we added our own data-filetype attribute to each anchor that links to an image?
<a href="path/to/image.jpg" data-filetype="image"> Image Link </a>
Then, with that hook in place, we can use a standard attributes selector to target only those anchors.
a[data-filetype="image"] { color: red; }
15. X[foo~="bar"]
a[data-info~="external"] { color: red; } a[data-info~="image"] { border: 1px solid black; }
Here's a special one that'll impress your friends. Not too many people know about this trick. The tilde (~) symbol allows us to target an attribute which has a space-separated list of values.
Going along with our custom attribute from number fifteen, above, we could create a data-info attribute, which can receive a space-separated list of anything we need to make note of. In this case, we'll make note of external links and links to images—just for the example.
"<a href="path/to/image.jpg" data-info="external image"> Click Me, Fool </a>
With that markup in place, now we can target any tags that have either of those values, by using the ~ attributes selector trick.
/* Target data-info attr that contains the value "external" */ a[data-info~="external"] { color: red; } /* And which contain the value "image" */ a[data-info~="image"] { border: 1px solid black; }
Pretty nifty, huh?
Live Demo of Attribute Selectors
Pseudo Selectors
16. X:visited and X:link
a:link { color: red; } a:visited { color: purple; }
We use the :link pseudo-class to target all anchors tags which have yet to be clicked on.
Alternatively, we also have the :visited pseudo class, which, as you'd expect, allows us to apply specific styling to only the anchor tags on the page which have been clicked on, or "visited".
17. X:checked
input[type=radio]:checked { border: 1px solid black; }
This pseudo class will only target a user interface element that has been checked—like a radio button, or checkbox. It's as simple as that.
18. X:after
The before and after pseudo classes are great. Every day, it seems, people are finding new and creative ways to use them effectively. They simply generate content around the selected element.
Many were first introduced to these classes when they encountered the clear-fix hack.
.clearfix:after { content: ""; display: block; clear: both; visibility: hidden; font-size: 0; height: 0; } .clearfix { *display: inline-block; _height: 1%; }
This hack uses the :after pseudo class to append a space after the element, and then clear it. It's an excellent trick to have in your tool bag, particularly in the cases when the overflow: hidden; method isn't possible.
For another creative use of this, refer to my quick tip on creating shadows.
According to the CSS3 Selectors specification, you should technically use the pseudo element syntax of two colons ::. However, to remain compatible, the user-agent will accept a single colon usage as well. 
19. X:hover
div:hover { background: #e3e3e3; }
Oh come on. You know this one. The official term for this is "user action pseudo class". It sounds confusing, but it really isn't. Want to apply specific styling when a user hovers over an element? This will get the job done!
Keep in mind that older version of Internet Explorer don't respond when the :hover pseudo class is applied to anything other than an anchor tag.
You'll most often use this selector when applying, for example, a border-bottom to anchor tags, when hovered over.
a:hover { border-bottom: 1px solid black; }
Pro-tip: border-bottom: 1px solid black; looks better than text-decoration: underline;.
20. X:not(selector)
div:not(#container) { color: blue; }
The negation pseudo class is particularly helpful. Let's say I want to select all divs, except for the one which has an id of container. The snippet above will handle that task perfectly.
Or, if I wanted to select every single element (not advised) except for paragraph tags, we could do:
*:not(p) { color: green; }
21. X::pseudoElement
p::first-line { font-weight: bold; font-size: 1.2em; }
We can use pseudo elements (designated by ::) to style fragments of an element, such as the first line, or the first letter. Keep in mind that these must be applied to block-level elements in order to take effect.
A pseudo-element is composed of two colons: ::
Target the First Letter of a Paragraph
p::first-letter { float: left; font-size: 2em; font-weight: bold; font-family: cursive; padding-right: 2px; }
This snippet is an abstraction that will find all paragraphs on the page, and then sub-target only the first letter of that element.
This is most often used to create newspaper-like styling for the first letter of an article.
Target the First Line of a Paragraph
p::first-line { font-weight: bold; font-size: 1.2em; }
Similarly, the ::first-line pseudo element will, as expected, style the first line of the element only.
"For compatibility with existing style sheets, user agents must also accept the previous one-colon notation for pseudo-elements introduced in CSS levels 1 and 2 (namely, :first-line, :first-letter, :before and :after). This compatibility is not allowed for the new pseudo-elements introduced in this specification."—W3C Selectors Specs
Live Demo of Pseudo Selectors
Nth Child and Type Selectors
22. X:nth-child(n)
li:nth-child(3) { color: red; }
Remember the days when we had no way to target specific elements in a stack? The nth-child pseudo class solves that!
Please note that nth-child accepts an integer as a parameter, however, this is not zero-based. If you wish to target the second list item, use li:nth-child(2).
We can even use this to select a variable set of children. For example, we could do li:nth-child(4n) to select every fourth list item.
23. X:nth-last-child(n)
li:nth-last-child(2) { color: red; }
What if you had a huge list of items in a ul, and only needed to access, say, the third to the last item? Rather than doing li:nth-child(397), you could instead use the nth-last-child pseudo class.
This technique works almost identically from number sixteen above, however, the difference is that it begins at the end of the collection, and works its way back.
24. X:nth-of-type(n)
ul:nth-of-type(3) { border: 1px solid black; }
There will be times when, rather than selecting a child, you instead need to select according to the type of element.
Imagine markup that contains five unordered lists. If you wanted to style only the third ul, and didn't have a unique id to hook into, you could use the nth-of-type(n) pseudo class. In the snippet above, only the third ul will have a border around it.
25. X:nth-last-of-type(n)
ul:nth-last-of-type(3) { border: 1px solid black; }
And yes, to remain consistent, we can also use nth-last-of-type to begin at the end of the selectors list, and work our way back to target the desired element.
26. X:first-child
ul li:first-child { border-top: none; }
This structural pseudo class allows us to target only the first child of the element's parent. You'll often use this to remove borders from the first and last list items.
For example, let's say you have a list of rows, and each one has a border-top and a border-bottom. Well, with that arrangement, the first and last item in that set will look a bit odd.
Many designers apply classes of first and last to compensate for this. Instead, you can use these pseudo classes.
27. X:last-child
ul > li:last-child { color: green; }
The opposite of first-child, last-child will target the last item of the element's parent.
last-child Selector Example
Let's build a simple example to demonstrate one possible use of these classes. We'll create a styled list item.
<ul> <li> List Item </li> <li> List Item </li> <li> List Item </li> </ul>
For the markup, there's nothing special: just a simple list.
Here's the CSS:
ul { width: 200px; background: #292929; color: white; list-style: none; padding-left: 0; } li { padding: 10px; border-bottom: 1px solid black; border-top: 1px solid #3c3c3c; }
This styling will set a background, remove the browser default padding on the ul, and apply borders to each li to provide a bit of depth.
To add depth to your lists, apply a border-bottom to each li that is a shade or two darker than the li's background color. Next, apply a border-top which is a couple shades lighter.
The only problem, as shown in the image above, is that a border will be applied to the very top and bottom of the unordered list - which looks odd. Let's use the :first-child and :last-child pseudo classes to fix this.
li:first-child { border-top: none; } li:last-child { border-bottom: none; }
There we go; that fixes it!
28. X:only-child
div p:only-child { color: red; }
Truthfully, you probably won't find yourself using the only-child pseudo class too often. Nonetheless, it's available, should you need it.
It allows you to target elements which are the only child of its parent. For example, referencing the snippet above, only the paragraph that is the only child of the div will be colored, red.
Let's assume the following markup.
<div><p> My paragraph here. </p></div> <div> <p> Two paragraphs total. </p> <p> Two paragraphs total. </p> </div>
In this case, the second div's paragraphs will not be targeted; only the first div. As soon as you apply more than one child to an element, the only-child pseudo class ceases to take effect.
29. X:only-of-type
li:only-of-type { font-weight: bold; }
This structural pseudo class can be used in some clever ways. It will target elements that do not have any siblings within its parent container. As an example, let's target all uls, which have only a single list item.
First, ask yourself how you would accomplish this task? You could do ul li, but, this would target all list items. The only solution is to use only-of-type.
ul > li:only-of-type { font-weight: bold; }
30. X:first-of-type
The first-of-type pseudo class allows you to select the first siblings of its type.
A Test
To better understand this, let's have a test. Copy the following mark-up into your code editor:
<div> <p> My paragraph here. </p> <ul> <li> List Item 1 </li> <li> List Item 2 </li> </ul> <ul> <li> List Item 3 </li> <li> List Item 4 </li> </ul> </div>
Now, without reading further, try to figure out how to target only "List Item 2". When you've figured it out (or given up), read on.
Solution 1
There are a variety of ways to solve this test. We'll review a handful of them. Let's begin by using first-of-type.
ul:first-of-type > li:nth-child(2) { font-weight: bold; }
This snippet essentially says, to find the first unordered list on the page, then find only the immediate children, which are list items. Next, filter that down to only the second list item in that set.
Solution 2
Another option is to use the adjacent selector.
p + ul li:last-child { font-weight: bold; }
In this scenario, we find the ul that immediately proceeds the p tag, and then find the very last child of the element.
Solution 3
We can be as obnoxious or as playful as we want with these selectors.
ul:first-of-type li:nth-last-child(1) { font-weight: bold; }
This time, we grab the first ul on the page, and then find the very first list item, but starting from the bottom! 
Live Demo of Nth Child and Type Selectors
Conclusion
If you're compensating for older browsers, like Internet Explorer 6, you still need to be careful when using these newer selectors. But, please don't let that deter you from learning these. You'd be doing a huge disservice to yourself. Be sure to refer here for a browser-compatibility list. Alternatively, you can use Dean Edward's excellent IE9.js script to bring support for these selectors to older browsers.
Secondly, when working with JavaScript libraries, like the popular jQuery, always try to use these native CSS3 selectors over the library's custom methods/selectors, when possible. It'll make your code faster, as the selector engine can use the browser's native parsing, rather than its own.
It’s great that you’re spending time learning web design fundamentals, but if you need a quick solution, one of our ready-to-use CSS templates might be a good option. We also have a few premium CSS items for you to consider.
CSS3
12 Elegant CSS Pricing Tables for Your Latest Web Project
Monty Shokeen
Bootstrap 4
18 Best Bootstrap 4 Plugins
Monty Shokeen
by Jeffrey Way via Envato Tuts+ Code https://ift.tt/3cugNpH
0 notes
mbaljeetsingh · 4 years
Text
Performance Best Practices: How to Run and Monitor Express.js in Production
What is the most important feature an Express.js application can have? Maybe using sockets for real-time chats or GraphQL instead of REST APIs? Come on, tell me. What’s the most amazing, sexy, and hyped feature you have in your Express.js application?
Want to guess what mine is? Optimal performance with minimal downtime. If your users can't use your application, what's the point of fancy features?
In the past four years, I've learned that performant Express.js applications need to do four things well:
Ensure minimal downtime
Have predictable resource usage
Scale effectively based on load
Increase developer productivity by minimizing time spent on troubleshooting and debugging
In the past, I've talked a lot about how to improve Node.js performance and related key metrics you have to monitor. There are several bad practices in Node.js you should avoid, such as blocking the thread and creating memory leaks, but also how to boost the performance of your application with the cluster module, PM2, Nginx and Redis.
The first step is to go back to basics and build up knowledge about the tool you are using. In our case the tool is JavaScript. Lastly, I'll cover how to add structured logging and using metrics to pinpoint performance issues in Express.js applications like memory leaks.
In a previous article, I explained how to monitor Node.js applications with five different open-source tools. They may not have full-blown features like the Sematext Express.js monitoring integration, Datadog, or New Relic, but keep in mind they’re open-source products and can hold their own just fine.
In this article, I want to cover my experience from the last four years, mainly the best practices you should stick to, but also the bad things you should throw out right away. After reading this article you'll learn what you need to do to make sure you have a performant Express.js application with minimal downtime.
In short, you'll learn about:
My goal for you is to use this to embrace Express.js best practices and a DevOps mindset. You want to have the best possible performance with minimal downtime and ensure high developer productivity. The goal is to solve issues quickly if they occur and trust me, they always do.
Let's go back to basics, and talk a bit about Express.js.
How to Structure Express.js Applications
Having an intuitive file structure will play a huge role in making your life easier. You will have an easier time adding new features as well as refactoring technical debt.
The approach I stick to looks like this:
src/ config/ - configuration files controllers/ - routes with provider functions as callback functions providers/ - business logic for controller routes services/ - common business logic used in the provider functions models/ - database models routes.js - load all routes db.js - load all models app.js - load all of the above test/ unit/ - unit tests integration/ - integration tests server.js - load the app.js file and listen on a port (cluster.js) - load the app.js file and create a cluster that listens on a port test.js - main test file that will run all test cases under the test/ directory
With this setup you can limit the file size to around 100 lines, making code reviews and troubleshooting much less of a nightmare. Have you ever had to review a pull request where every file has more than 500 lines of code? Guess what, it's not fun.
There's a little thing I like to call separation of concerns. You don't want to create clusterfucks of logic in a single file. Separate concerns into their dedicated files. That way you can limit the context switching that happens when reading a single file. It's also very useful when merging to master often because it's much less prone to cause merge conflicts.
To enforce rules like this across your team you can also set up a linter to tell you when you go over a set limit of lines in a file, as well as if a single line is above 100 characters long. One of my favorite settings, by the way.
How to Improve Express.js Performance and Reliability
Express.js has a few well-known best practices you should adhere to. Below are a few I think are the most important.
Set NODE_ENV=production
Here's a quick hint to improve performance. Would you believe that only by setting the NODE_ENV environment variable to production will make your Express.js application three times faster!
In the terminal you can set it with:
export NODE_ENV=production
Or, when running your server.js file you can add like this:
NODE_ENV=production node server.js
Enable Gzip Compression
Moving on, another important setting is to enable Gzip compression. First, install the compression npm package:
npm i compression
Then add this snippet below to your code:
const compression = require('compression') const express = require('express') const app = express() app.use(compression())
If you're using a reverse proxy with Nginx, you can enable it at that level instead. That's covered in the Enabling Gzip Compression with Nginx section a bit further down.
Always Use Asynchronous Functions
The last thing you want to do is to block the thread of execution. Never use synchronous functions! Like, seriously, don't. I mean it.
What you should do instead is use Promises or Async/Await functions. If you by any chance only have access to sync functions you can easily wrap them in an Async function that will execute it outside of the main thread.
(async () => { const foo = () => { ...some sync code return val } async const asyncWrapper = (syncFun) => { const val = syncFun() return val } // the value will be returned outside of the main thread of execution const val = await asyncWrapper(foo) })()
If you really can't avoid using a synchronous function then you can run them on a separate thread. To avoid blocking the main thread and bogging down your CPU you can create child processes or forks to handle CPU intensive tasks.
An example would be that you have a web server that handles incoming requests. To avoid blocking this thread, you can spawn a child process to handle a CPU intensive task. Pretty cool. I explained this in more detail here.
Make Sure To Do Logging Correctly
To unify logs across your Express.js application, instead of using console.log(), you should use a logging agent to structure and collect logs in a central location.
You can use any SaaS log management tool as the central location, like Sematext, Logz.io, Datadog, and many more. Think of it like a bucket where you keep logs so you can search and filter them later, but also get alerted about error logs and exceptions.
I'm part of the integrations team here at Sematext, building open-source agents for Node.js. I put together this tiny open-source Express.js agent to collect logs. It can also collect metrics, but about that a bit further down. The agent is based on Winston and Morgan. It tracks API request traffic with a middleware. This will give you per-route logs and data right away, which is crucial to track performance.
Note: Express.js middleware functions are functions that have access to the request object (req), the response object (res), and the next middleware function in the application’s request-response cycle. The next middleware function is commonly denoted by a variable named next. - from Using middleware, expressjs.com
Here's how to add the logger and the middleware:
const { stLogger, stHttpLoggerMiddleware } = require('sematext-agent-express') // At the top of your routes add the stHttpLoggerMiddleware to send API logs to Sematext const express = require('express') const app = express() app.use(stHttpLoggerMiddleware) // Use the stLogger to send all types of logs directly to Sematext app.get('/api', (req, res, next) => { stLogger.info('An info log.') stLogger.debug('A debug log.') stLogger.warn('A warning log.') stLogger.error('An error log.') res.status(200).send('Hello World.') })
Prior to requiring this agent you need to configure Sematext tokens as environment variables. In the dotenv section below, you will read more about configuring environment variables.
Here's a quick preview of what you can get.
Tumblr media
Handle Errors and Exceptions Properly
When using Async/Await in your code, it's a best practice to rely on try-catch statements to handle errors and exceptions, while also using the unified Express logger to send the error log to a central location so you can use it to troubleshoot the issue with a stack trace.
async function foo() { try { const baz = await bar() return baz } catch (err) { stLogger.error('Function \'bar\' threw an exception.', err); } }
It's also a best practice to configure a catch-all error middleware at the bottom of your routes.js file.
function errorHandler(err, req, res, next) { stLogger.error('Catch-All error handler.', err) res.status(err.status || 500).send(err.message) } router.use(errorHandler) module.exports = router
This will catch any error that gets thrown in your controllers. Another last step you can do is to add listeners on the process itself.
process.on('uncaughtException', (err) => { stLogger.error('Uncaught exception', err) throw err }) process.on('unhandledRejection', (err) => { stLogger.error('unhandled rejection', err) })
With these tiny snippets you'll cover all the needed precautions for handling Express errors and log collection. You now have a solid base where you don't have to worry about losing track of errors and logs. From here you can set up alerts in the Sematext Logs UI and get notified through Slack or E-mail, which is configured by default. Don't let your customers tell you your application is broken, know before they do.
Watch Out For Memory Leaks
You can't catch errors before they happen. Some issues don't have root causes in exceptions breaking your application. They are silent and like memory leaks, they creep up on you when you least expect it. I explained how to avoid memory leaks in one of my previous tutorials. What it all boils down to is to preempt any possibility of getting memory leaks.
Noticing memory leaks is easier than you might think. If your process memory keeps growing steadily, while not periodically being reduced by garbage collection, you most likely have a memory leak. Ideally, you’d want to focus on preventing memory leaks rather than troubleshooting and debugging them. If you come across a memory leak in your application, it’s horribly difficult to track down the root cause.
This is why you need to look into metrics about process and heap memory.
Adding a metrics collector to your Express.js application, that will gather and store all key metrics in a central location where you can later slice and dice the data to get to the root cause of when a memory leak happened, and most importantly, why it happened.
By importing a monitoring agent from the Sematext Agent Express module I mentioned above, you can enable the metric collector to store and visualize all the data in the Sematext Monitoring UI.
Tumblr media
Here's the kicker, it's only one line of code. Add this snippet in your app.js file.
const { stMonitor, stLogger, stHttpLoggerMiddleware } = require('sematext-agent-express') stMonitor.start() // run the .start method on the stMonitor // At the top of your routes add the stHttpLoggerMiddleware to send API logs to Sematext const express = require('express') const app = express() app.use(stHttpLoggerMiddleware) ...
With this you'll get access to several dashboards giving you key insight into everything going on with your Express.js application. You can filter and group the data to visualize processes, memory, CPU usage and HTTP requests and responses. But, what you should do right away is configure alerts to notify you when the process memory starts growing steadily without any increase in the request rate.
Moving on from Express.js-specific hints and best practices, let's talk a bit about JavaScript and how to use the language itself in a more optimized and solid way.
How to Set Up Your JavaScript Environment
JavaScript is neither object-oriented or functional. Rather, it's a bit of both. I'm quite biased towards using as many functional paradigms in my code as possible. However, one surpasses all others. Using pure functions.
Pure Functions
As the name suggests, pure functions are functions that do not mutate the outer state. They take parameters, do something with them, and return a value.
Every single time you run them they will behave the same and return a value. This concept of throwing away state mutations and only relying on pure functions is something that has simplified my life to an enormous extent.
Instead of using var or let only use const, and rely on pure functions to create new objects instead of mutating existing objects. This ties into using higher-order functions in JavaScript, like .map(), .reduce(), .filter(), and many more.
How to practice writing functional code? Throw out every variable declaration except for const. Now try writing a controller.
Object Parameters
JavaScript is a weakly typed language, and it can show its ugly head when dealing with function arguments. A function call can be passed one, none, or as many parameters as you want, even though the function declaration has a fixed number of arguments defined. What's even worse is that the order of the parameters are fixed and there is no way to enforce their names so you know what is getting passed along.
It's absolute lunacy! All of it, freaking crazy! Why is there no way to enforce this? But, you can solve it somewhat by using objects as function parameters.
const foo = ({ param1, param2, param3 }) => { if (!(param1 && param2 && param3)) { throw Error('Invalid parameters in function: foo.') } const sum = param1 + param2 + param3 return sum } foo({ param1: 5, param2: 345, param3: 98 }) foo({ param2: 45, param3: 57, param1: 81 }) // <== the same
All of these function calls will work identically. You can enforce the names of the parameters and you're not bound by order, making it much easier to manage.
Freaking write tests, seriously!
Do you know what's the best way to document your code, keep track of features and dependencies, increase community awareness, gain contributors, increase performance, increase developer productivity, have a nicer life, attract investors, raise a seed round, make millions selling your startup!?.... wait that got out of hand.
Yes, you guessed it, writing tests is the answer.
Let's get back on track. Write tests based on the features you want to build. Then write the feature. You will have a clear picture of what you want to build. During this process you will automatically start thinking about all the edge cases you would usually never consider.
Trust me, TDD works.
How to get started? Use something simple like Mocha and Chai. Mocha is a testing framework, while Chai is an assertion library.
Install the npm packages with:
npm i mocha chai
Let's test the foo function from above. In your main test.js file add this snippet of code:
const chai = require('chai') const expect = chai.expect const foo = require('./src/foo') describe('foo', function () { it('should be a function', function () { expect(foo).to.be.a('function') }) it('should take one parameter', function () { expect( foo.bind(null, { param1: 5, param2: 345, param3: 98 })) .to.not.throw(Error) }) it('should throw error if the parameter is missing', function () { expect(foo.bind(null, {})).to.throw(Error) }) it('should throw error if the parameter does not have 3 values', function () { expect(foo.bind(null, { param1: 4, param2: 1 })).to.throw(Error) }) it('should return the sum of three values', function () { expect(foo({ param1: 1, param2: 2, param3: 3 })).to.equal(6) }) })
Add this to your scripts section in the package.json:
"scripts": { "test": "mocha" }
Now you can run the tests by running a single command in your terminal:
npm test
The output will be:
> [email protected] test /path/to/your/expressjs/project > mocha foo ✓ should be a function ✓ should take one parameter ✓ should throw error if the parameter is missing ✓ should throw error if the parameter does not have 3 values ✓ should return the sum of three values 5 passing (6ms)
Writing tests gives you a feeling of clarity. And it feels freaking awesome! I feel better already.
With this out of my system I'm ready for DevOps topics. Let's move on to some automation and configuration.
Apart from the things you can do in the code, like you saw above, some things need to be configured in your environment and server setup. Starting from the basics, you need an easy way to manage environment variables, you also need to make sure your Express.js application restarts automatically in case it crashes.
You also want to configure a reverse proxy and load balancer to expose your application, cache requests, and load balance traffic across multiple worker processes. The most important step in maintaining high performance is to add a metrics collector so you can visualize data across time and troubleshoot issues whenever they occur.
Managing Environment Variables in Node.js with dotenv
Dotenv is an npm module that lets you load environment variables easily into any Node.js application by using a file.
In the root of your project create a .env file. Here you'll add any environment variables you need.
NODE_ENV=production DEBUG=false LOGS_TOKEN=xxx-yyy-zzz MONITORING_TOKEN=xxx-yyy-zzz INFRA_TOKEN=xxx-yyy-zzz ...
Loading this file is super simple. In your app.js file require dotenv at the top before anything else.
// dotenv at the top require('dotenv').config() // require any agents const { stLogger, stHttpLoggerMiddleware } = require('sematext-agent-express') // require express and instantiate the app const express = require('express') const app = express() app.use(stHttpLoggerMiddleware) ...
Dotenv will load a file named .env by default. If you want to have multiple dotenv files, here's how you can configure them.
Make Sure the Application Restarts Automatically With Systemd or PM2
JavaScript is a scripting language, obviously, the name says so. What does this mean? When you start your server.js file by running node server.js it will run the script as a process. However, if it fails, the process exits and there's nothing telling it to restart.
Here's where using Systemd or PM2 comes into play. Either one works fine, but the Node.js maintainers urge us to use Systemd.
Ensure Application Restarts with Systemd
In short, Systemd is part of the building blocks of Linux operating systems. It runs and manages system processes. What you want is to run your Node.js process as a system service so it can recover from crashes.
Here's how you do it. On your VM or server, create a new file under /lib/systemd/system/ called app.service.
# /lib/systemd/system/fooapp.service [Unit] Description=Node.js as a system service. Documentation=https://example.com After=network.target [Service] Type=simple User=ubuntu ExecStart=/usr/bin/node /path/to/your/express/project/server.js Restart=on-failure [Install] WantedBy=multi-user.target
The two important lines in this file are ExecStart and Restart. The ExecStart says that the /usr/bin/node binary will start your server.js file. Make sure to add an absolute path to your server.js file. The Restart=on-failure makes sure to restart the application if it crashes. Exactly what you're looking for.
Once you save the fooapp.service file, reload your daemon and start the script.
systemctl daemon-reload systemctl start fooapp systemctl enable fooapp systemctl status fooapp
The status command will show you the application is running as a system service. The enable command makes sure it starts on boot. That was easier than you thought, am I right?
Ensure Application Restarts with PM2
PM2 has been around for a few years. They utilize a custom-built script that manages and runs your server.js file. It is simpler to set up, but comes with the overhead of having another Node.js process that acts as a Master process, like a manager, for your Express.js application processes.
First you need to install PM2:
npm i -g pm2
Then you start your application by running this command in the root directory of your Express.js project:
pm2 start server.js -i max
The -i max flag will make sure to start the application in cluster-mode, spawning as many workers as there are CPU cores on the server.
Mentioning cluster-mode is the perfect segue into the next section about load balancing and reverse proxies and caching.
Enable Load Balancing and Reverse Proxies
Load balancing can be done with both the Node.js cluster module or with Nginx. I'll show you my preferred setup, which is also what the peeps over at Node.js think is the right way to go.
Load Balancing with the Cluster Module
The built-in cluster module in Node.js lets you spawn worker processes that will serve your application. It's based on the child_process implementation and, luckily for us, is very easy to set up if you have a basic Express.js application.
You only really need to add one more file. Create a file called cluster.js and paste this snippet of code into it:
const cluster = require('cluster') const numCPUs = require('os').cpus().length const app = require('./src/app') const port = process.env.PORT || 3000 const masterProcess = () => Array.from(Array(numCPUs)).map(cluster.fork) const childProcess = () => app.listen(port) if (cluster.isMaster) { masterProcess() } else { childProcess() } cluster.on('exit', () => cluster.fork())
Let's break down what's happening here. When you start the cluster.js file with node cluster.js the cluster module will detect that it is running as a master process. In that case it invokes the masterProcess() function. The masterProcess() function counts how many CPU cores the server has and invokes the cluster.fork() function that many times. Once the cluster.fork() function is invoked the cluster module will detect it is running as a child process and invoke the childProcess() function, which then tells the Express.js server to .listen() on a port. All these processes are running on the same port. It's possible due to something called an IPC connection. Read more about that here.
The cluster.on('exit') event listener will restart a worker process if it fails.
With this setup you can now edit the ExecStart field in the fooapp.service Systemd service file to run the cluster.js file instead.
Replace:
ExecStart=/usr/bin/node /path/to/your/express/project/server.js
With:
ExecStart=/usr/bin/node /path/to/your/express/project/cluster.js
Reload the Systemd daemon and restart the fooapp.service:
systemctl daemon-reload systemctl restart fooapp
There you have it. You've added load balancing to your Express.js application. Now it will scale across all the CPUs on your server.
However, this will only work for a single-server setup. If you want to have multiple servers, you need Nginx.
Adding a Reverse Proxy with Nginx
One of the primal laws of running Node.js applications is to never expose them on port 80 or 443. You should always use a reverse proxy to direct traffic to your application. Nginx is the most common tool you use with Node.js to achieve this. It's a web server that can act as both a reverse proxy and load balancer.
Installing Nginx is rather straightforward, for Ubuntu it would look like this:
apt update apt install nginx
Make sure to check the Nginx installation instructions if you're using another operating system.
Nginx should start right away, but just in case make sure to check:
systemctl status nginx [Output] nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled) Active: active (running) since Fri 2018-04-20 16:08:19 UTC; 3 days ago Docs: man:nginx(8) Main PID: 2369 (nginx) Tasks: 2 (limit: 1153) CGroup: /system.slice/nginx.service ├─2369 nginx: master process /usr/sbin/nginx -g daemon on; master_process on; └─2380 nginx: worker process
If it is not started, go ahead and run this command to start it.
systemctl start nginx
Once you have Nginx running, you need to edit the configuration to enable a reverse proxy. You can find the Nginx configuration file in the /etc/nginx/ directory. The main configuration file is called nginx.conf, while there are additional snippets in the etc/nginx/sites-available/ directory. The default server configuration is found here and is named default.
To just enable a reverse proxy, open up the default configuration file and edit it so it looks like this:
server { listen 80; location / { proxy_pass http://localhost:3000; # change the port if needed } }
Save the file and restart the Nginx service.
systemctl restart nginx
This configuration will route all traffic hitting port 80 to your Express.js application.
Load Balancing with Nginx
If you want to take it a step further, and enable load balancing, here's how to do it.
Now, edit the main nginx.conf file:
http { upstream fooapp { server localhost:3000; server domain2; server domain3; ... } ... }
Adding this upstream section will create a server group that will load balance traffic across all the servers you specify.
You also need to edit the default configuration file to point the reverse proxy to this upstream.
server { listen 80; location / { proxy_pass http://fooapp; } }
Save the files and restart the Nginx service once again.
systemctl restart nginx
Enabling Caching with Nginx
Caching is important to reduce response times for API endpoints, and resources that don't change very often.
Once again edit the nginx.conf file, and add this line:
http { proxy_cache_path /data/nginx/cache levels=1:2 keys_zone=STATIC:10m inactive=24h max_size=1g; ... }
Open up the default configuration file again. Add these lines of code as well:
server { listen 80; location / { proxy_pass http://fooapp; proxy_set_header Host $host; proxy_buffering on; proxy_cache STATIC; proxy_cache_valid 200 1d; proxy_cache_use_stale error timeout invalid_header updating http_500 http_502 http_503 http_504; } }
Save both files and restart the Nginx service once again.
Enabling Gzip Compression with Nginx
To improve performance even more, go ahead and enable Gzip. In the server block of your Nginx configuration file add these lines:
server { gzip on; gzip_types text/plain application/xml; gzip_proxied no-cache no-store private expired auth; gzip_min_length 1000; ... }
If you want to check out more configuration options about Gzip compression in Nginx, check this out.
Enabling Caching with Redis
Redis in an in-memory data store, which is often used as a cache.
Installing it on Ubuntu is rather simple:
apt update apt install redis-server
This will download and install Redis and its dependencies. There is one important configuration change to make in the Redis configuration file that was generated during the installation.
Open up the /etc/redis/redis.conf file. You have to change one line from:
supervised no
To:
supervised systemd
That’s the only change you need to make to the Redis configuration file at this point, so save and close it when you are finished. Then, restart the Redis service to reflect the changes you made to the configuration file:
systemctl restart redis systemctl status redis [Output] ● redis-server.service - Advanced key-value store Loaded: loaded (/lib/systemd/system/redis-server.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2018-06-27 18:48:52 UTC; 12s ago Docs: http://redis.io/documentation, man:redis-server(1) Process: 2421 ExecStop=/bin/kill -s TERM $MAINPID (code=exited, status=0/SUCCESS) Process: 2424 ExecStart=/usr/bin/redis-server /etc/redis/redis.conf (code=exited, status=0/SUCCESS) Main PID: 2445 (redis-server) Tasks: 4 (limit: 4704) CGroup: /system.slice/redis-server.service └─2445 /usr/bin/redis-server 127.0.0.1:6379
Next you install the redis npm module to access Redis from your application.
npm i redis
Now you can require it in your application and start caching request responses. Let me show you an example:
const express = require('express') const app = express() const redis = require('redis') const redisClient = redis.createClient(6379) async function getSomethingFromDatabase (req, res, next) { try { const { id } = req.params; const data = await database.query() // Set data to Redis redisClient.setex(id, 3600, JSON.stringify(data)) res.status(200).send(data) } catch (err) { console.error(err) res.status(500) } } function cache (req, res, next) { const { id } = req.params redisClient.get(id, (err, data) => { if (err) { return res.status(500).send(err) } // If data exists return the cached value if (data != null) { return res.status(200).send(data) } // If data does not exist, proceed to the getSomethingFromDatabase function next() }) } app.get('/data/:id', cache, getSomethingFromDatabase) app.listen(3000, () => console.log(`Server running on Port ${port}`))
This piece of code will cache the response from the database as a JSON string in the Redis cache for 3600 seconds. You can change this based on your own needs.
With this, you've configured key settings to improve performance. But, you've also introduced additional possible points of failure. What if Nginx crashes or Redis overloads your disk space? How do you troubleshoot that?
Enable VM/Server-Wide Monitoring and Logging
Ideally, you'd configure an Infrastructure Agent on your VM or server to gather metrics and logs and send them to a central location. That way you can keep track of all infrastructure metrics like CPU, memory, disk usage, processes, etc.
This way you can keep an eye on your whole infrastructure, including CPU, memory and disk usage, as well as all the separate processes while running your application in cluster-mode.
Tumblr media
But, we do need to know what's going on with Nginx first. You can configure the stub_status to show Nginx metrics, but that doesn't really give you any actionable insight. But, you can install an Nginx Integration and get insight into Nginx metrics alongside your Express.js Integration in Sematext Cloud.
Why is monitoring Nginx important? Nginx is the entry point to your application. If it fails, your whole application fails. Your Node.js instance can be fine, but Nginx stops responding and your website goes down. You'll have no clue it's down because the Express.js application is still running without any issues.
You have to keep an eye on all the points of failure in your system. That's why having proper alerting in place is so crucial. If you want to learn more about alerting you can read this.
Same goes for Redis. To keep an eye on it, check out ways to monitor Redis, here or here.
That wraps up the DevOps tools and best practices you should stick to. What a ride that was! If you want to delve deeper into learning about DevOps and tooling, check out this guide my co-worker wrote.
Wrapping Up
It took me the better part of four years to start using proper tooling and adhering to best practices. In the end, I just want to point out the most important part of your application is to be available and performant. Otherwise, you won't see any users stick around. If they can't use your application, what's the point?
The idea behind this article was to cover best practices you should stick to, but also the bad practices to stay away from.
You've learned many new things in this Express.js tutorial. From optimizing Express.js itself, creating an intuitive project structure and optimizing for performance to learning about JavaScript best practices and test-driven development. You've also learned about error handling, logging and monitoring.
After all this, you can say with certainty that you've had an introduction to DevOps culture. What does that mean? Well, making sure to write reliable and performant software with test coverage, while maintaining the best possible developer productivity. That's how we as engineers continue loving our job. Otherwise, it's all mayhem.
Hope you all enjoyed reading this as much as I enjoyed writing it. If you liked it, feel free to hit the share button so more people will see this tutorial. Until next time, be curious and have fun.
via freeCodeCamp.org https://ift.tt/2y98uzT
0 notes
coldovyle · 7 years
Text
About me A-Z tag game
 Thank you very much to @xandwhy​ and @xmarksthexyloto​ for the tags ;)
A - Age: 16 B - Biggest fear: Biggest... I have that generic fear of rejection I suppose, but also I’m pretty scared of heights C - Current time: 22:24 D - Drink you last had: Red Bull ;) E - Everyday starts with: coffee and music  F - Favourite song: A tie between Violet Hill and Up&Up, both by Coldplay. Honourable mention to It’s Time by Imagine Dragons. G - Ghosts: I don’t really believe in them. I - In love with: Many things. I’m in love with my friends, this excellent holiday I’m having, music, art, coffee, all the inspirational figures in my life, and with life in general to be honest. K - Killed someone: Not that I can remember :P L - Last time you cried: I think I cried earlier today lmao but they were tears of laughter bc me and my mates were having a pillow fight at my house and I was beating the everloving shit out of them, affectionately of course M - Middle name: My middle name is Pinto (typical Portuguese name..), and I plan on adding Coldy as a middle name one day since it’s been my nickname for a very long time N - Number of siblings: None ;_; I’m an only child O - One wish: My biggest wish right now is to get into the university I want to go to when the time comes, which will be in about 2 years’ time... P - Person you last called/texted: one of those aforementioned friends who was at my house, his name’s Akwasi and he’s a brilliant guy but also a top notch asshole ;) Q - Question you are always asked: “how did you get so good at drawing?” (the answer is: over 8 years of practice) and “what do you want to be when you’re older?” (the answer is: i don’t know for sure, but something in the field of chemistry) R - Religion: I’m sort of between agnostic and atheist, although my family is Catholic and they raised me in that faith but I’ve never really been religious myself. I do have a lot of respect for religious people though since they can bring a great sense of community and love to the world ^^ S - Song you last sang: The Pretender by Foo Fighters T - Time you woke up today: about 8:35 U - Underwear color: Black V - Vacation destination: I’m not picky but I’d love to go to Canada actually, the cities and natural beauty there seem amazing W - Worst habit: Picking at cuts and stuff, I’m terrible with that. I used to bite my nails which was a habit I’ve had literally all my life but I finally kicked it earlier this year =D X - Xrays you had: I don’t remember it but when I was younger I broke my arm and had to have an X ray for that Y - Your favourite food: toss up between a million things... im a big fan of pizza, peri peri chicken, texas bbq sauce flavoured pringles, chocolate and vanilla ice cream, bacon, lion chocolate bars (underrated!!!!), mangoes, coffee, and yeah this list could go on forever I just love food Z - Zodiac sign: Sagittarius
Tagging: @thesinnohunderground @bennersgoober @reychonne and anyone else who sees this and thinks it’s cool and wants to give it a shot just say I tagged you ;)
7 notes · View notes
Text
Someone like me.  A Sherlock VDay Challenge
Tumblr media
*Found gif on google search*
For @prettyxlittlexwriter ‘s Sherlock Vday Challenge Day #8! 
Prompt: “You sure know how to show someone a good time.”
Teen!Sherlock x Original Female Character 
Word Count: 2296
Mycroft sends Sherlock to yet another rehab but maybe this one won’t be a complete waste of time.
The knock at the door came right on time but Sherlock didn’t want to move. He’d been to two other places just like this one over the years and every time the drugs were completely out of his system being stuck in a place like this was more hell than help, but Mycroft didn’t want to hear that. He was going places, the smart one rising through the ranks of the intelligence community and countless other government positions. He didn’t care to listen anymore.
You are going to sober up and then you’re going to stop acting like a child. You are better than this!
Sherlock pushed up against the mattress, too firm for his taste, and the world spun just enough to flip his stomach. He gagged as he sat up then shook it off. He stared at another blue wall, must be a common theme among the rehabilitation community but he was grateful for the lack of the pointless ‘hang in there’ poster. He wondered if the decorator had known the possible message it could send to a person going through withdrawal, it wasn’t the encouragement they hoped for. Hey, you feel like you’re dying? Why not hang in there?
That group session leader was a joke too. Maybe he should talk to Mycroft about getting his money back for that one. It obviously didn’t work and that place was terrible, like some kind of sick idea to keep kids hooked. Maybe he should look into that place when he got out.
He didn’t bother to change out of his sleep clothes, just pulled on the robe they provided and shoved his feet into the slippers. He stared at the small bathroom bag Mycroft gave him and heard his brother’s voice, for goodness sake, I know you don’t give a damn but you could at least keep your breath from becoming toxic.
“Just like me, right Mycroft?” He snatched the bag off the small desk by his bed and shuffled out of the room. Other kids were walking through the hall, that was maybe too clean, in different states of withdrawal or waking up. He could name each addiction just by looking at them before he even thought about it. It was a gift or a curse, sometimes it just depended on the day, but right now he was using it to distract himself from the strong, sterile odor that was trying to coax the bile from his stomach. Mycroft said the substance abuse before his brain was completely formed would only increase the odds of being addicted for the rest of his life and could lead to mental issues but he was already a walking mental issue so who cared?
I care, Sherlock.
Sherlock shook his head roughly and growled to erase his brother’s voice in his head. Two boys nearby shrank away from him. He rolled his eyes and continued to the bathroom. He didn’t care about making friends and maybe if they were afraid of him they wouldn’t try to engage him in asinine conversation.
He quickly dealt with his morning duties of hygiene and took his bag back to his room before heading to the dining hall so he could grab whatever edible pieces of crappy breakfast available. He was surprised when he walked into the large room that felt more like a university’s dining hall. Mycroft had taken him to a few trying to get him to see the possibilities but all he saw were more places to fail him.
He strolled up to the breakfast bar that had plenty of options that didn’t look like mass produced slop. Fresh breakfast foods filled the hot dishes. His stomach growled and he grabbed a few pieces of hot bacon along with some eggs.
“Is this all organic? You know my father says I should only put top quality fuel in this body. He’s very picky.”
Sherlock glanced over at the girl at the end of the counter who was clearly flirting with the worker standing on the other side. She looked his way with a wink.
“Sorry, love, I guess you’ll just have to live with whatever it is. I don’t make it.” The worker snapped but it didn’t have the edge he expected.
“My father paid quite a bit of money for my lovely stay here, I’m sure there’s something you could do for me.” She placed her hands on the counter between them, her arms pressed against her chest as she leaned in. The man did as most men do, at least the ones that don’t know when they’re being played.
“Like I said, this is it.” His voice had lowered and wasn’t quite so confident anymore as his eyes dilated at the sight in front of him. The man was failing miserably.
Sherlock turned and walked away finding a table near the small television in the corner. He flicked through the stations until he found a news channel. If he was lucky, the media might just give him something to occupy his mind.
“I’m sure there are more entertaining stations. Who watches the news anymore?”
With a quick glance from his peripheral vision, the flirty girl was sauntering up to his table with an apple in one hand. Apparently, her play hadn’t worked. “Sorry, your game doesn’t work on me.”
“Oh sugar, you’re not my type. I’m bored, thought maybe we could find something interesting.”
Sherlock ignored her as the anchorwoman spoke of a murder investigation underway in High Wickham.
“Oh, look at you. True crime fan or…” she took the seat beside him and he continued to watch the tv.
Her perfume was light but the subtle hints surprised him, it was vintage not like the popular brand of fragrances today. He could almost think of the name but wasn’t positive and it pissed him off. He made a mental note, more research into fragrances.
“No, you wear safety goggles often, nimble hands but I bet they’re softer than they look. Sciences… not earth, though, laboratory. I don’t often find smart ones here.” She took a bite of her apple maybe expecting him to acknowledge her assessment. “Mummy and daddy don’t pay you enough attention so you cry out with… marijuana?” He snapped his head her way and she smirked, “oh no, naughty, naughty. Something harder… morphine or cocaine?”
His eyes widened just slightly before he closed it off just like Mycroft and looked her over. Glossy raven hair, fine smooth skin yet covered with expensive makeup, soft hands but one of her fake nails was gone and the natural nail had been bitten down to the quick, the rest were likely the same. She had money and even though she liked to use her body to get things she was wearing long sleeves, most likely to cover the injection marks, maybe scars on her forearms she didn’t want anyone to know about. She held secrets, many secrets. Cocaine was always a favorite among those that could afford it. “Are you sure you’re not projecting onto me? Cocaine is your drug of choice.”
She narrowed her eyes watching him for a moment then she threw back her head and laughed. Her laugh had a whimsical quality that was strange in these surroundings. He wondered if it was crafted to entice, to draw in, and capture her prey. When she finally drew a breath and looked back at him, she had tears in her eyes and wiped them away. “I’ve never met someone like me, at least not in a place like this.” Her eyes danced, she was enjoying herself or making it seem like it. “So what are you trying to distract yourself from?”
“I’m sorry?”
She rolled her eyes and leaned forward but she didn’t jut out her chest like she had done with the kitchen aid. “We’re all here because we either got bored and needed a distraction or life is shitty and needed an escape. You are far too clever to use drugs as an escape, so what exactly are you distracting yourself from? Mummy or daddy left the picture and you need to work harder to get somewhere? You obviously care enough to keep up appearances for someone, your nails may be buffed but they’ve been bitten far too long to hide. Older sibling perhaps? You don’t strike me as a mummy’s boy.”
He watched her taken aback by her ability. He had never met anyone like her either. “Brother. He put me in here to dry out. My parents don’t know because it would hurt them or so my brother says. I know how to hide my occasional use and it’s not for distraction, it helps my thinking, sometimes my brain is faster than I can keep up with. I’ll find the right dose soon enough.”
“Chemist.”
He smiled, “you’re fascinating.”
“Lorraine, back away. No fraternizing.” The kitchen aid had stepped out from behind the breakfast bar.
She rolled her eyes and leaned in pressing her cheek against his then whispered in his ear. “Maybe this stay won’t be so bad after all.”
“Hey!”
She sprung up to her full height which wasn’t much but she made it seem taller. “It’s Lori! I’ve told you before you need to play nice. I don’t like the jealous types. This is just my friend.”
She glanced back at him and raised her brow. “Sherlock,” He supplied.
She grinned at the kitchen aid propping her hand on her hip as she pushed it out, “Sherlock is a much more interesting name than Mark. Do you suppose that says something about you or your mother?”
He cleared his throat and fixed his shirt as he stepped back behind the counter.
She sat back down and looked at the television. “Please don’t tell me you’re actually interested in this nonsense?”
“Of course it’s nonsense, these idiots that call themselves detectives can’t even use their eyes to see their suspect is the least likely culprit.”
She threw a glance his way before watching as the footage rolled again showing the suspect being escorted into Scotland yard. “It says he’s the brother. Most crimes of passion are committed by a family member.”
“Taking statistics out of it, look at him? The front door was locked and none of the neighbors heard anything after the argument. No slamming doors, no running steps. So the killer left and probably came from the fire escape. Look at that man and tell me you don’t think he’d make noise on a metal fire escape?”
She shrugged, “I wouldn’t say he looked very light footed. That’s it?”
He pointed at the screen. “His hands. He’s got carpal tunnel at least, probably arthritis too. Not someone who could smother you with his bare hands, let alone with such force that would break bones in the face and leave fingertip bruises around his nose, mouth, and hairline. That man probably had no alibi and was the last to see his brother alive.” He rolled his eyes, “idiots. They never actually do any observing! It’s infuriating.”
She smirked, “you seem to have some experience with this.”
He glanced at her then looked down at his plate and pushed some leftover egg around. “Sort of.” She raised her brow and leaned closer. He glanced up and continued without really knowing why, “it was years ago, a boy in perfect health drowned in a pool. I tried to get them to see the problem but they didn’t care about a fact that didn’t line up with their conclusion.”
She scooted her chair closer and took his hand flipping it over to see his palm. She bent her head over his palm, brushing her pointer finger along the lines in his hand. “Hmm… you are destined for great things. I think I would very much like to be your friend.”
Sherlock pulled his gaze from what she was doing with his hand and was drawn into hazel eyes. A soft smile warmed her features but there was no hint of teasing. “My friend?”
She giggled, “of course. You really think anyone else in this god awful place would be more interesting than me?”
His brow furrowed, “I don’t understand why you want to be friends with me.”
She grinned, “because I like interesting things. They distract me from my shitty life.”
“I have a hard time believing…” He froze as his observations clattered back to the forefront of his mind and something she said bounced around, most crimes of passion are committed by a family member. It was the slight change in her tone that spoke volumes.
She leaned back in her chair, “you’d be surprised.” She turned to watch the television but he didn’t need to see her eyes to tell she was hiding more than a look. “Money isn’t everything. I know you figured that much out, but it doesn’t shield you from all the world’s horrors.”
“No, it certainly does not.”
The newswoman went on to the next story and Lori spun around in her chair, her features slipped back into the girl that first sat down beside him. The facade she showed the world. “Well, you sure know how to show someone a good time. I need to be off before my first meeting with whatever shrink they have lined up for me.” She sprung up from the seat and sauntered toward the door.
Sherlock followed her progress across the floor and when she glanced over her shoulder and caught his gaze, she gave him a wink. “Until then,” She sang with a wave.
Until when? He wanted to reply but just stuck up his hand awkwardly. He had to admit she was right about one thing, maybe this place wouldn’t be half bad.
This way to part two. 
38 notes · View notes
lovemesomesurveys · 3 years
Text
Have you met somebody that you want to spend the rest of your life with? I actually thought maybe I had with Ty at one point. Who was your closest friend when you were 7 years old? In my experience at that age I feel like everyone changed friends day to day and pretty much played with everyone. I see... Do you still speak to that person? I have a few people from elementary school on my Facebook. We don’t talk, but we interact on each other’s posts here and there or at the very least I see what they’ve been up to. Who was the last male you talked to? Does he have facial hair? My brother and no he currently doesn’t. How many times does the letter 'R' occur in your full name? Twice.
Is there anyone you love, whose name starts with 'S'? Yeah. What colour is your TV remote? Black and gray. When was the last time you went to a wedding? Who got married? A few years ago I attended a wedding for a friend of a friend. Name a band you like, that starts with the 2nd letter of your name. Third Eye Blind. Have you ever dressed up as a Disney character? Which one? I was Alice one year for Halloween. Have you ever played chess? If so, are you good at it? I’ve attempted to, but just didn’t get the hang of it and didn’t care enough to keep trying. If I wanted to buy you a chocolate bar, what kind should I NOT get? Something with coconut. Of all your close friends, who have you known the longest? I don’t have any friends. Do you own anything that has an image of a butterfly on it? I think so. Has anyone told you recently that they miss you? No. What was the last song you heard, that made you feel emotional? I don’t remember. What colour are the socks you're currently wearing? They’re cream and pink with Piglet on them. How many friends do you have whose name starts with the letter 'R'? -- How many vowels are there in your first name? There’s 4. When was the last time you took a selfie? It’s been quite awhile. Name someone you know who has curly hair. My mom. Have you ever worn orange eye-shadow? Nope. Name a song that reminds you of someone close to you. The acoustic version of “Everlong” by Foo Fighters. Has anyone ever walked out of your life with no explanation? Yes. Do you know anyone else with the same first name as you? I do. Think back to 10 years ago. What TV show(s) were you into? True Blood, Being Human, Awkward... those are just a few that come to mind at the moment, but there’s several more. When was the last time you used a compact mirror? I don’t recall. Do you have a favourite T-shirt? What colour is it? All my graphic tees. As a child, did you ever have any scented gel pens or markers? Yeah, I loved those. Name an alcoholic beverage that you dislike. All of them. I don’t drink. Do you own anything that previously belonged to someone else? Yeah. Who is the 8th contact in your phone? How did you meet them? I’m not checking. Is there anyone who sends you messages to say good morning/night? Nope. Can you recall the last time you were on a dancefloor? I went to a club once to give it a try with some friends, I think back in like 2011, and it definitely was not my thing. Have you ever let someone go, and then regretted it? Yes. Do you own any colour changing mood jewellery? Nope.
2 notes · View notes
haribokart · 5 years
Text
Haribokart’s Rock Band song list .38 Special - Caught Up In You 3 Doors Down - Here Without You, It’s Not My Time, Kryptonite, When You're Young, When I'm Gone 30 Seconds to Mars - Attack, Closer To The Edge, The Kill, Kings and Queens, This Is War 311 - Amber, Down 4 Non-Blondes - What’s Up? 5 Seconds Of Summer - She Looks So Perfect The 88 - Sons and Daughters A-Ha - Take On Me Abnormality - Visions AC/DC - Back in Black (Live), Dirty Deeds Done Cheap (Live), Fire Your Guns (Live), For Those About To Rock (Live), Heatseeker (Live), Hell Ain’t A Bad Place To Be (Live), Hells Bells (Live), High Voltage (Live), Highway To Hell (Live), The Jack (Live), Jailbreak (Live), Let There Be Rock (Live), Moneytalks (Live), Shoot To Thrill (Live), T.N.T (Live), Thunderstruck (Live), Whole Lotta Rosie (Live), You Shook Me All Night Long (Live) Ace of Base - The Sign The Acro-Brats – Day Late Dollar Short, Hair Trigger Aerosmith - Cryin, Dream On (Live), Dude Looks Like A Lady, I Don’t Want To Miss A Thing, Sweet Emotion, Toys In The Attic, Train Kept Rollin, Walk This Way AFI - Girl’s Not Grey, Miss Murder Alabama Shakes - Don't Wanna Fight Alanis Morissette - Head Over Feet, Ironic, You Oughta Know Alice Cooper - Poison, School's Out (Live) Alice In Chains - Man In The Box Alien Ant Farm - Smooth Criminal All American Rejects - Dirty Little Secret, Gives You Hell, Move Along, Swing Swing All Time Low - Weightless The Allman Brothers Band - Jessica, Ramblin’ Man Alphabeat - Fascination Amy Winehouse - Rehab Anarchy Club - Blood Doll, Collide, Get Clean Andy Grammar - Honey I’m Good Angels & Airwaves - It Hurts Animal Flag - Sink Anthrax - Caught in a Mosh Arctic Horror - Black Seas Arctic Monkeys - Arabella, R U Mine? Assuming We Survive - Open Water At The Drive In - One Armed Scissor Authority Zero - No Regrets The Automatic - Monster Avenged Sevenfold - Afterlife, Almost Easy, Beast and the Harlot, Hail To The King Average White Band - Pick Up The Pieces Avicii - Wake Me Up Avril Lavigne - Complicated, My Happy Ending B-52's - Rock Lobster, Love Shack, Roam Bad Company - Shooting Star Bang Camaro - Blood Red Rock, Night Lies, Pleasure Bang on a Can All-Stars – Shadowbang (Head) The Bangles - Walk Like An Egyptian Barely March - Thinking Emoji Barenaked Ladies - One Week Bastille - Pompeii The Beach Boys - Good Vibrations (Live) Bearstronaut - Shadow Beastie Boys - Make Some Noise, Sabotage, So What’cha Want Beck - Dreams, E-Pro Bee Gees - Jive Talkin, Night Fever, Staying Alive, Tragedy, You Should Be Dancing Belinda Carlisle - Heaven Is A Place On Earth Benjamin Booker - Violent Shiver Bent Knee - These Hands The Bergamot - Forgot About Tomorrow Between the Buried and Me - Prequel To The Sequel Big & Rich - Save a Horse (Ride a Cowboy) Big Country - In A Big Country Bikini Kill - Rebel Girl Billy Idol - Mony Mony, Rebel Yell, White Wedding Billy Joel - It's Still Rock And Roll To Me, My Life, Only The Good Die Young, Piano Man, She’s Always A Woman, Uptown Girl, We Didn’t Start The Fire Billy Squier - Lonely Is The Night Black Beach - No Place For Me ThevBlack Cheers - (You’re) Breakin’ Up The Black Eyed Peas - I Gotta Feeling The Black Keys - Fever, Gold On The Ceiling, Howlin' For You, Lonely Boy Blind Melon - No Rain Blink-182 - Adam's Song, Aliens Exist, All The Small Things, Down, Feeling This, First Date, I Miss You, The Rock Show, What’s My Age Again Blondie - Call Me, Hanging On The Telephone, Heart of Glass, One Way Or Another, Rapture Blue Oyster Cult - Don’t Fear The Reaper Blue Swede - Hooked On A Feeling Blur - Beetlebum, Song 2, There's No Other Way BoB ft. Hayley Williams - Airplanes Bob Dylan - Tangled Up In Blue Bob Marley - Could You Be Loved, Get Up Stand Up, I Shot The Sheriff, Is This Love, Jamming, No Woman No Cry, One Love Bon Jovi - Bad Medicine, Blaze Of Glory, It's My Life, Livin On A Prayer, Wanted Dead Or Alive, You Give Love A Bad Name Bonnie Tyler - Total Eclipse Of The Heart Boston - Foreplay/Long Time, More Than A Feeling, Peace Of Mind The Both - Milwaukee Boys Like Girls – The Great Escape, Thunder Brad Paisley - Start A Band Brandi Carlile - Mainstream Kid Breaking Wheel - Shoulder To The Plow Bring Me the Horizon - Happy Song, Throne The Bronx - False Alarm Bruno Mars - 24K Magic, Grenade, Just The Way You Are, Locked Out Of Heaven, Marry You, Treasure Bryan Adams - Summer Of 69 Buffalo Springfield - For What It's Worth Bush - Comedown Busted - Thunderbirds Are Go! Buzzcocks - Ever Fallen In Love BØRNS - Electric Love The Cab - Bounce Caesers - Jerk It Out Cake - I Will Survive, Short Skirt/Long Jacket Capital Cities - Safe and Sound Carl Douglas - Kung Fu Fighting Carly Ray Jepsen - Call Me Maybe Carrie Underwood - All American Girl, Before He Cheats, Blown Away, Cowboy Casanova, Good Girl The Cars - Just What I Needed The Chainsmokers - Closer (ft. Halsey) Charlie Puth - Attention Cheap Trick - Hello There, I Want You to Want Me (Live) Chely Wright - Single White Female The Chemical Brothers - Let Forever Be The Chevelles - Get It On Chicago - 25 or 6 to 4, If You Leave Me Now Chuck Berry - Johnny B. Goode Chumbawumba - Tubthumping The Clash - I Fought The Law, London Calling, Rock The Casbah, Should I Stay Or Should I Go Cobra Starship - You Make Me Feel The Cocktail Slippers - Give It To Me Cohered And Cambria - Welcome Home Cold War Kids - First Coldplay - A Sky Full Of Stars, Adventure Of A Lifetime, Clocks, Every Teardrop Is A Waterfall, Fix You, Hymn For The Weekend, The Scientist, Viva La Vida, Yellow The Coral - Dreaming Of You Counting Crows - Accidentally In Love, Mr Jones The Cranberries - Dreams, Linger, Ode To My Family, Zombie Creaturos - History Repeats Creedence Clearwater Revival - Bad Moon Rising, Fortunate Son, I Heard It Through the Grapevine Crooked X - Nightmare The Cult - She Sells Sanctuary Culture Club - Do You Really Want To Hurt Me, Karma Chameleon The Cure - Friday I’m In Love, Just Like Heaven Cutting Crew - I Just Died In Your Arms Tonight Cyndi Lauper - Girls Just Want To Have Fun, Time After Time Daft Punk - Get Lucky Dance for the Dying – Thug Love Dark Wheels - V-Bomb The Darkness - I Believe In A Thing Called Love Dashboard Confessional - Hands Down Daughtry - It's Not Over David Bowie - Fame, Heroes, Lets Dance, Modern Love, Space Oddity, Suffragette City, Ziggy Stardust Dead Sara - Mona Lisa Dealership - Database Corrupted Death Of The Cool - Can’t Let Go Deep Blue Something - Breakfast At Tiffanies Deep Purple - Highway Star, Smoke On The Water Def Leppard - Foolin, Photograph, Pour Some Sugar On Me (Live) Deftones - My Own Summer Del Amitri - Roll To Me Demi Lovato - Sorry Not Sorry Depeche Mode - Personal Jesus Devo - Girl U Want, Uncontrollable Urge, Whip It Dexys Midnight Runners - Come On Eileen Dinosaur Jr - Feel The Pain Dio - Rainbow in the Dark Dire Straights - Walk Of Life Disturbed - Down With The Sickness, Indestructable, Prayer, The Sound Of Silence DNCE - Cake By The Ocean Dolly Spartans - I Hear the Dead Don McClean - American Pie The Donnas - New Kid In School The Doobie Brothers - China Grove, Listen To The Music, Long Train Runnin The Doors - Break On Through, Light My Fire, People Are Strange, Riders On The Storm, Touch Me Dover - King George Dream Theatre - Metropolis Part 1, Panic Attack Duck & Cover - Knock Em Down Duran Duran - Girls On Film, Hungry Like The Wolf, Rio, The Reflex Dutch ReBelle - RudeBoys Eagle-Eye Cherry - Save Tonight Earth, Wind & Fire - September Echo and the Bunnymen - The Killing Moon Ed Sheeran - Shape of You, Sing Eddie Japan - Albert The Eiffels - Body Like That Electric Six - Gay Bar Elle King - Ex’s & Oh’s Ellie Goulding - On My Mind Elton John - The Bitch is Back, Crocodile Rock, Don't Let the Sun Go Down on Me, I’m Still Standing, Saturday Night's Alright For Fighting Elvis Costello - Pump It Up Elvis Presley - Suspicious Minds EMF - Unbelievable Endereverafter - I Wanna Be Your Man Erasure - A Little Respect Eric Cartman - Lady Gaga's Poker Face Europe - The Final Countdown Evanescence - Bring Me To Life, Call Me When You’re Sober, Everybody's Fool, Going Under, Weight Of The World Everlife - Real Wild Child Extreme - More Than Words Faith No More - Epic, Midlife Crisis Fall Out Boy - A Little Less Sixteen Candles, Centuries, Dance Dance, Dead On Arrival, Irresistible, I Don’t Care, My Songs Know What You Did In The Dark, Sugar We're Going Down, This Ain’t A Scene It’s An Arms Race, Thnks Fr Th Mmrs Filter - Hey man nice shot Fine Young Cannibals - She Drives Me Crazy The Flaming Lips - Yoshimi battles The Pink Robots Fleetwood Mac - Don’t Stop, Dreams, Gold Dust Woman, Go Your Own Way, Landslide, Rhiannon, You Make Loving Fun Flobots - Handlebars Florence and the Machine - Dog Days Are Over Flyleaf - I’m So Sick Fly by Midnight - Vinyl Foghat - Slow Ride Foo Fighters - All My Life, Best Of You, Breakout, DOA, Everlong, Learn To Fly, Monkey Wrench, My Hero, The Feast And The Famine, The Pretender, Times Like These Foreigner - Cold As Ice, Feels Like The First Time, I Want To Know What Love Is, Waiting For A Girl Like You Foster the People – Don't Stop (Color on the Walls), Helena Beat, Pumped Up Kicks Frank Turner - I Still Believe Frankie Goes To Hollywood - Relax Franz Ferdinand - Do You Want To, Take Me Out Fratelies - Creeping up the Backstairs, Henrietta Free - All Right Now Freezepop – Brainpower, Doppelgänger Fun. - Some Nights, We Are Young Garbage - I Think I’m Paranoid, Stupid Girl, Why do you Love Me Gary Clark Jr - Ain’t Messin ‘Round Gavin DeGraw - I Don’t Want to Be Generation X - Dancing with Myself George Thorogood - Bad To The Bone The Ghost Hounds - Ashes to Fire Gin Blossoms - Follow You Down, Hey Jealousy Glados - Still Alive Go-Go’s - Our Lips Are Sealed, We Got The Beat Goddamn Draculas - Bethany Golden Earring - Radar Love Goo Goo Dolls - Iris Good Charlotte - The Anthem, Girls & Boys, Lifestyles Of The Rich & Famous Gorillaz - Clint Eastwood, Feel Good Inc The Grateful Dead - Alabama Getaway Graveyard BBQ – Cheat on the Church Green Day - 21st Century Breakdown, 21 Guns, American Eulogy, American Idiot, Are We The Waiting/St Jimmy, Basket Case, Before The Lobotomy, Boulevard Of Broken Dreams, Brain Stew/Jaded, Burnout, Christian's Inferno, Chump, Coming Clean, East Jesus Nowhere, Emenius Sleepus, Extraordinary Girl, F.O.D, Geek Stink Breath, Give Me Novacaine/She’s A Rebel, Good Riddance (Time Of Your Life), Having A Blast, Hitching A Ride, Holiday, Homecoming, Horseshoes And Handgrenades, In The End, Jesus Of Suburbia, Know Your Enemy, Last Night On Earth, Last of the American Girls, Letterbomb, Longview, Minority, Murder City, Nice Guys Finish Last, Peacemaker, Pulling Teeth, Restless Heart Syndrome, Sassafras Roots, See The Light, She, Song Of The Century, The Static Age, Viva La Gloria, Wake Me Up When September Ends, Warning, Welcome To Paradise, Whatsername, When I Come Around, !Viva La Gloria! Grouplove - Tongue Tied The Guess Who - American Woman Guns N Roses - Shackler’s Revenge Gym Class Heroes - Stereo Hearts H.I.M. - Killing Loneliness Hailstorm - I Miss The Misery Hall and Oates - I Can't Go For That, Maneater, You Make My Dreams Heart - Alone, Barracuda, Kick It Out Heaven’s Basement - I Am Electric The Hives - Main Offender, Tick Tick Boom Hole - Celebrity Skin Hollywood Undead - Young Honest Bob - I Get By, Soy Bomb Hoobastank – Crawling In The Dark Hot Chelle Rae - Tonight Tonight Hozier- Take Me To Church Huey Lewis and the News - The Power of Love The Human League - Don’t You Want Me HUNNY - Shy Hypernova - Viva La Resistance Ida Maria - Oh My God Iggy Pop - Lust For Life, The Passenger Imagine Dragons - I Bet My Life, Radioactive, Thunder In The Valley Below - Bloodhands Incubus - Dig, Drive Interpol - PDA INXS - Need You Tonight The Isley Brothers - Shout The J.Gelis Band - Centrefold Jack White - Lazaretto The Jackson 5 - ABC, I Want You Back The Jam - Going Underground, Town Called Malice James Brown - Get Up, I Got You, Super Bad Pts. 1 & 2 Jane's Addiction - Been caught Stealing, Mountain Song Janis Joplin - Piece of my Heart Jason Derulo - Want To Want Me Jason Mraz - I'm Yours Jeff Allen - Recession Jeff Williams ft Casey Lee Williams - This Will Be The Day Jefferson Airplane - Somebody To Love Jet - Are You Gonna Be My Girl Jethro Tull - Aqualung Jimi Hendrix - All Along The Watchtower, Crosstown Traffic, Foxey Lady, Fire Jimmy Eat World - The Middle, Pain, Sweetness Joan Jett - Bad Reputation, I Love Rock N' Roll Jocelyn & Chris Arndt - Shame Joe Jackson - Is she really going out with him? John & Yoko - Happy Xmas John Lennon - How Do You Sleep?, Imagine, Jealous Guy Johnny Blazes And The Pretty Boys - Cold Clear Light Johnny Cash - I Walk the Line, Ring of Fire Josh Turner - Would You Go With Me Joy Division - Love Will Tear Us Apart Juanes - Me Enamora Judas Priest - Halls Of Valhalla, Painkiller, You’ve Got Another Thing Coming Juli - Perfekte Welle Julie Rhodes - Hurry Up (& Wait For You) Justin Bieber - Boyfriend, Love Yourself, Sorry, What Do You Mean? Kaiser Chiefs - I Predict A Riot, Ruby Kansas - Carry On Wayward Son Kasabian - Club Foot, Shoot The Runner Katrina And The Waves - Walking On Sunshine Kelly Clarkson - Heartbeat Song, Miss Independent, Stronger Kenny Loggins - Danger Zone, Footloose The Killers - All These Things That I've Done, Mr Brightside, Smile Like You Mean It, Somebody Told Me, When You Were Young Kings of Leon - Crawl, Molly’s Chambers, Sex On Fire, Use Somebody Kiss - Detroit Rock City The Knack - My Sharona The Konks - 29 Fingers The Kooks - Naive Kool and the Gang - Celebration, Jungle Boogie Korn - Word Up KSM - Distracted KT Tunstell - Suddenly I See Kutless - The Feeling L7 - Pretend We’re Dead La Roux - Bulletproof Lacuna Coil - Our Truth Lady Antebellum - Lookin For A Good Time, Need You Now, Perfect Day Lady Gaga - Applause, Bad Romance, Born This Way, Edge of Glory, Just Dance, Lovegame, Monster, Paparazzi, Poker Face Laura Bell Bundy - Rebound LEN - Steal My Sunshine The Len Price 3 - If I ain’t got You Lenny Kravitz - Are You Gonna Go My Way Lesley Roy - I’m Gone, I’m Going The Libyans - Welcome To The Neighbourhood Lightning Bolt - Dream Genie Lights Resolve - Dreaming Of Love Limp Bizkit - My Way Linkin Park - Breaking the Habit, Crawling, In The End, Numb, One Step Closer, Somewhere I Belong, What I’ve Done Lit - My Own Worst Enemy Little Big Town - Little White Church Little Fish - Am I Crazy Littlefoot - Casablanca Live - All Over You Liz Phair - Rock Me LMFAO - Party Rock Anthem Lorde - Royals Lostprophets - Rooftops Lucinda Williams - Can’t Let Go Lucius - Turn It Around Lush - De-Luxe Lynyrd Skynyrd - Free Bird, Simple Man, Sweet Home Alabama (Live), That Smell, Tuesday's Gone Macklemore - Can’t Hold Us MAGIC! - Rude The Main Drag – A Jagged Gorgeous Winter, How We’d Look on Paper Mana - Oye Mi Amor Marilyn Manson - The Beautiful People Mark Ronson Ft. Bruno Mars - Uptown Funk Maroon 5 - Little Of Your Time, Makes Me Wonder, Misery, Moves Like Jagger, One More Night, This Love, Wake Up Call, Won’t Go Home Without You Mastodon - Colony Of Birchmen Maximo Park - Girls Who Play Guitars Megadeath - Peace Sells Meghan Trainor - All About That Bass Men at Work - Down Under Metric - Combat Baby MGMT - Kids Michael Christmas - Cross That Line The Mighty Mighty Bosstones - The Impression That I Get, Where’d You Go? Miley Cyrus - 7 Things, Can’t Be Tamed, Fly On The Wall, See You Again, Start All Over Miranda Cosgrove - Headphones On Miranda Lambert - Gunpowder and Lead Modest Mouse - Float On Molly Hatchet - Flirting With Disaster The Monkees - Last Train To Clarksville Montell Jordan - This Is How We Do It Morrissey - Irish Blood English Heart The Mother Hips - Time We Had Motley Crue - Saints of Los Angeles Motorhead - Ace Of Spades Mountain - Mississippi Queen Mr Big - To Be With You The Muffs - Kids In America, Outer Space Mumford & Sons - I Will Wait, The Wolf Muse - Hysteria My Chemical Romance - Famous Last Words, I’m Not Okay (I Promise), Sing, Teenagers, Welcome To The Black Parade Naked Eyes - Always Something There to Remind Me Natalie Imbruglia - Torn Natasha Bedingfield - Unwritten Nazareth - Love Hurts The Neighbourhood - Sweater Weather Neko Case - People Got A Lotta Nerve Nemes - Black Streak Neon Trees - 1983, Animal, Everybody Talks, Sins Of My Youth New Order - Blue Monday Newfane - I Recognise The New Pornographers - Electric Version Nickelback - How You Remind Me, Photograph, Rockstar, Someday Nicki Minaj - Starships Night Ranger - Sister Christian Nightmare Air - Who’s Your Lover Nine Inch Nails - The Hand That Feeds, The Perfect Drug Nirvana - Come As You Are (Live), Drain You, In Bloom, Smells Like Teen Spirit, Something In The Way No Doubt - Don’t Speak, Hella Good, Hey Baby, It’s My Life, Just A Girl, Underneath It All No Small Children - Radio Norman Greenbaum - Spirit In The Sky Oasis - Champagne Supernova, Don’t Look Back In Anger, Live Forever, Rock 'n' Roll Star, Supersonic (Live), Wonderwall Of Monsters And Men - Little Talks The Offspring - All I Want, Come Out And Play, Days Go By, Gone Away, Pretty Fly For A White Guy, Self Esteem, The Kids Aren’t Alright Oh Honey - Sugar, You Ok Go - Here It Goes Again, Shooting The Moon OMI - Cheerleader One Direction - Best Song Ever, Drag Me Down, Story of My Life, What Makes You Beautiful One Night Only - Just For Tonight Onerepublic - Counting Stars, Stop And Stare Opiate for the Masses - Burn You Down Orianthi - According To You Otis Redding - Sitting On The Dock Of The Bay The Outfield - Your Love Outkast - Hey Ya! The Outlaws - Green Grass And High Tides Owl City - Fireflies Ozzy Osbourne - Crazy Train, Miracle Man P!nk - Funhouse, Get The Party Started, Please Don’t Leave Me, Raise Your Glass, So What, Sober, Who Knew P.O.D. - Alive, Youth of the Nation Panic At The Disco - I Write Sins Not Tragedies, Nine In The Afternoon, She's a Handsome Woman Papa Roach - Last Resort, Time Is Running Out Paramore - Ain’t It Fun, Brick By Boring Brick, CrushCrushCrush, Ignorance, Misery Business, Pressure, Still Into You, The Only Exception, That’s What You Get Parlour Bells - Never Let ‘Em Hold Ya Back Parks - Sweater Weather Party Bois - True Confessional Pat Benatar - Fire and Ice, Heartbreaker, Hit Me With Your Best Shot, Invincible, Love Is A Battlefield, Promises In The Dark, Shadows of the Night, We Belong Paul McCartney - Band On The Run, Jet (Live), Maybe I’m Amazed Pearl Jam - Alive Permaband - Killing is just a means, Wrecking Machine Peter Cetera - Glory of Love Petty Morals - Mean Girls Pharrell Williams - Happy Pheonix - Lasso Phish - Llama, Wilson (Live) Pixies - Monkey Gone to Heaven, Wave Of Mutilation, Where Is My Mind? Poison - Every Rose Has It’s Thorn, Nothin' but a Good Time The Police - Don't Stand So Close To Me, Every Breath You Take, Every Little Thing She Does Is Magic, Message In A Bottle, Next To You, Roxanne, Walking On The Moon Poni Hoax - Antibodies Portugal. The Man - Feel It Still Preachervan - Love That Hurts Presidents Of The United States Of America - Lump The Pretenders - Brass In Pocket Pretty Girls Make Graves - Something Bigger, Something Brighter The Pretty Reckless - Follow Me Down, Heaven Knows The Primitives - Crash Primus - Jerry Was A Race Car Driver Procol Harum - A Whiter Shade of Pale The Protomen - Light Up The Night Puddle of Mud - Blurry, Control, She Hates Me Queen - Another One Bites The Dust, Bicycle Race, Bohemian Rhapsody, Crazy Little Thing Called Love, Don't Stop Me Now, Fat Bottomed Girls, Hammer to Fall, I Want It All, I Want To Break Free, Killer Queen, One Vision, Play the Game, Radio Ga Ga, Somebody To Love, The Show Must Go On, Under Pressure, We Are The Champions, We Will Rock You, You're My Best Friend Queens Of The Stone Age - Go With The Flow, My God Is The Sun, No One Knows, 3’s & 7’s, In My Head Ram Jam - Black Betty R.E.M - It’s The End Of The World As We Know It, Losing My Religion, Man On The Moon, Orange Crush, The One I Love The Raconteurs - Steady As She Goes Radiohead - Creep, Karma Police Rage Against The Machine - Killing In The Name Of, Testify Rammstein - Du Hast Ramones - Blitzkrieg Bop, I Wanna Be Sedated Rascal Flatts - Life Is A Highway, Me and my Gang, Summer Nights Ratt - Round And Round The Raveonettes - Last Dance Ray Parker Jr - Ghostbusters Razorlight - Stumble And Fall The Red Chord - Hour Of Rats Red Hot Chilli Peppers - By The Way, Californication, Dani California, Give It Away, Scar Tissue, Snow ((Hey Oh)), Under The Bridge, REO Speedwagon - Keep On Loving You The Replacements - Alex Chilton Rick Astley - Never Gonna Give You Up Rick Derringer - Rock And Roll Hooch Koo Rick James - Super Freak Rilo Kiley - Portions for Foxes Rise Against - Give It All Riverboat Gamblers - Don't Bury Me Robert Palmer - Bad Case of Loving You Robin Thicke - Blurred Lines The Rolling Stones - Gimme Shelter Roxette - The Look Roy Orbison - Only The Lonely, Pretty Woman, You Got It Ruby Rose Fox - Pain Killer, Sky Diver Rufus - Tell Me Something Good Rupert Holmes - Escape (The Pina Colada song) Rush - A Passage To Bangkok, The Trees, Tom Sawyer Saint Raymond - Young Blood Santana - Smooth Sara Evans - Suds In The Bucket Savage Garden - I want you Save Ferris - Come On Eileen Scandal - The Warrior Scorpions - No One Like You Seether - Fake It Semi-Precious Weapons - Magnetic Baby Semisonic - Closing Time Shaimus - Like A Fool Shania Twain - Any Man Of Mine, Party For Two, That Don’t Impress Me Much Shawn Mendes - Stitches, Treat You Better Sheryl Crow - All I Wanna Do Ships Have Sailed - Let’s Just Dance Sia - Chandelier, Cheap Thrills (ft. Sean Paul), The Greatest (ft. Kendrick Lamar) Silvergun Pickups - Lazy Eye Simon & Garfunkel - The Sounds Of Silence Simple Minds - Don’t You (Forget About Me) Sister Sledge - We Are Family Siouxsie And The Banshees - Cities In Dust Skillit - Feel Invincible Slipknot - Before I Forget Slydigs - Light The Fuse Smash Mouth - All Star, Can't Get Enough Of You Baby, Walking On The Sun, Why Can't We Be Friends? Smashing Pumpkins - Cherub Rock, Today, Zero The Smiths - Stop Me, This Charming Man Snoop Dogg - Beautiful, Drop It Like It's Hot, Who Am I - What’s My Name, Sensual Seduction, Tha Shiznit Snow Patrol - Take Back The City Social Distortion - I Was Wrong Soft Cell - Tainted Love Sonic Youth - Teen Age Riot Soul Remnants - Dead Black Soundgarden - Black Hole Sun, Superunknown The Sounds - Living In America Spacehog - In The Meantime Speck - Conventional Lover Spin Doctors - Little Miss Can’t Be Wrong, Two Princes Spinal Tap - Short And Sweet Spirit Kid - To My Romeo Squeeze - Cool For Cats, Tempted St. Vincent - Birth In Reverse Staind - It's Been A While, So Far Away Stan Bush - The Touch Starship - We Built This City Steely Dan - Bodhisattva Stephen And The Colberts - Charlene The Sterns - Supreme Girl Steve Harley & Cockney Rebel - Make Me Smile (Come Up And See Me) Steve Miller Band - Fly Like An Eagle, The Joker, Rock’n Me, Space Cowboy Steve Pardo - Super Beat Sports Big Baos Battle Stevie Nicks - Edge Of Seventeen, Stand Back Stevie Wonder - Higher Ground, I Wish, Living For The City, Sir Duke, Superstition STL GLD - Good Stone Temple Pilots - Plush, Vaseline The Stooges - I Wanna Be Your Dog The Strokes - Reptillia Sublime - Santeria, What I Got, Wrong Way Sugar Ray - Every Morning Sugarland - Settlin Sum 41 - Fat Lip, In Too Deep Supergrass - Grace, Sun Hits The Sky Survivor - Eye Of The Tiger Sweet - Ballroom Blitz Swingin' Utters - This Bastard's Life Symbion Project – Exploited & Exposed System of a Down - Aerials, Chop Suey, Spiders T-Rex - 20th Century Boy, Children Of The Revolution, Ride A White Swan Talking Heads - Burning Down The House, Psycho Killer Taking Back Sunday - Liar, Makedamnsure, What It Feels Like To Be A Ghost Tears for Fears - Everybody Wants To Rule The World, Head over Heels, Shout Tegan and Sarah - The Con Tenacious D - Master Exploder, Rise Of The Fenix, Tribute Testament - Souls Of Black That Handsome Devil - Rob The Prez-O-Dent Them Crooked Vultures - Dead End Friends Thenewno2 - Crazy Tuesday Thin Lizzy - The Boys Are Back in Town (Live), Jailbreak (Live) Three Days Grace - I Hate Everything About You, Never Too Late Third Eye Blind - Semi-Charmed Life Tickle Me Pink - The Time Is Wrong Tigerman WOAH - Alone Time Tijuana Sweetheart - Pistol Whipped, Seven tiLLie - Save Yourself Timmy & The Lords Of The Underworld - Timmy & The Lords Of The Underworld Tokio Hotel - Humanoid Tom Petty - Free Fallin Tommy Tutone - 867-5309/Jenny Toto - Africa, Hold The Line, Rosanna Train - Drops of Jupiter Travis McCoy - Billionaire Tribe - Outside Twenty One Pilots - Heathens, Ride, Stressed Out Twisted Sister - I Wanna Rock, We're Not Gonna Take It U2 - Cedarwood Road, Desire, I Will Follow, One, Pride (In The Name Of Love), Vertigo UB40 - Red Red Wine Underoath - Desperate Times Vampire Weekend - A-Punk Van Halen - Ain't Talkin' 'Bout Love, Panama Van Morrison - Brown Eyed Girl Vance Joy - Riptide Vanilla Ice - Ice Ice Baby The Vapors - Turning Japanese Vesuvius - Promised Land The Vines - Get Free Walk The Moon - Different Colours, Shut Up and Dance WAR - Low Rider The Warning - Free Falling, Survive The Warning Shots - Closer Closer Warrant - Cherry Pie Warren Zevon - Werewolves Of London We Are the Fallen - Bury Me Alive We The Kings - Check Yes Juliet The Weeknd - Can’t Feel My Face, The Hills, Starboy Weezer - A Little Respect, Beverly Hills, Buddy Holly, El Scorcho, Hash Pipe, Island in the Sun, King of The World, My Name Is Jonas, Say It Ain’t So, (If You're Wondering If I Want You To) I Want You To When Particles Collide - Constant Disaster White Denim - At Night In Dreams The White Stripes - Seven Nation Army, The Hardest Button To Button Whitesnake - Here I Go Again Whitney Houston - I Wanna Dance With Somebody Wild Cherry - Play That Funky Music Wilson Phillips - Hold On The Who - Baba O’riley, Behind Blue Eyes, I Can See For Miles, My Generation (Live), Pinball Wizard, The Seeker, Who Are You, Won’t Get Fooled Again Willie Nelson - On the Road Again Wolfmother - Woman Worshipper - Black Corridor X - Los Angeles X Ambassadors - Renegades X Japan - I.V Yeah Yeah Yeahs - Maps Yes - Owner Of A Lonely Heart, Roundabout Young the Giant - My Body The Zombies - She’s Not There The Zutons - Valerie
1 note · View note
sheilalmartinia · 6 years
Text
How to Use the Plugin Organizer to Speed Up Your WordPress Site
After WordPress hosting, plugins are the second biggest reason that can cause your WordPress site to be slow. Often times this can be mitigated by either disabling the plugin or stop it from loading in areas where you don’t need them. In this article, we will show you how to use the Plugin Organizer to speed up your WordPress site.
How WordPress Plugins Affect Your Website Speed?
One of the most frequently asked questions that we get is how many WordPress plugins are too many? The two things that concerns most users are WordPress security and how plugins may affect speed and performance?
All good WordPress plugins are coded in a way that they are only loaded on your website when needed. You can see our infographic on how WordPress actually loads plugins (behind the scenes).
WordPress doesn’t load inactive plugins which means they don’t affect your website’s performance. However, it does load all active plugins which then run their code when needed.
Now sometimes plugin authors cannot anticipate when and where you will use their plugin features on your website. In that case, they may load their code whether or not you need it. If the plugins are loading JavaScript and CSS files, then this may increase your website’s page load time.
How WordPress Plugin Organizer Can Speed Up Your Site
Depending on the plugins that you’re using, there may be some that you only need on specific pages, posts, or post types. Some plugins you may only need in the WordPress admin area, so they shouldn’t load on the front-end of the website.
WordPress Plugin Organizer allows you to do the following things:
Selectively enable or disable plugins based on URL
Enable or disable plugins for user roles
Enable or disable plugins based on post types
Rearrange the order in which plugins are loaded
Disable plugins and only load them when needed
Basically, it gives you the ability to fine-tune your website performance.
That being said, let’s take a look at how to use the Plugin Organizer to speed up WordPress.
Using WordPress Plugin Organizer to Manage Active WordPress Plugins
First, thing you need to do is install and activate the Plugin Organizer plugin. For more details, see our step by step guide on how to install a WordPress plugin.
Important: Plugin organizer is a very powerful plugin. Reordering or disabling plugins can cause conflicts and unexpected behavior which could make your site inaccessible. We recommend that you create a complete WordPress backup before disabling or reordering any plugins.
Once you are ready, you need to head over to the Plugin Organizer » Settings page to configure your settings.
There are several options on this page, and we will look at each option, what it does, and which ones you should turn on.
Fuzzy URL Matching
This option allows you to enable/disable plugins on child URL. This means that settings will affect http://example.com/sample-page/ and all subsequent URLs under it. For example, http://example.com/sample-page/child-page1/ and http://example.com/sample-page/child-page2/.
Ignore URL Protocol
This option is turned off by default. It allows the plugin organizer to ignore http and https part of plugin URLs. This is particularly helpful if you have SSL enabled on your WordPress site.
Ignore URL Arguments
This option allows you to ignore URL arguments. For example, http://example.com/page/?foo=1&bar=2 is a URL with arguments. Turning on this option is only helpful on URLs with arguments. You should leave it OFF in most cases.
Only allow network admins to change plugin load order?
If you are running a WordPress multisite network, then turning on this option will only allow Network Administrator to rearrange plugin order. We highly recommend that you turn this on if you have a WordPress multisite network.
Custom Post Type Support
This option allows you to select the post types where you want to enable/disable plugins. This option is particularly useful if you have plugins that you only need for specific post types.
Auto Trailing Slash
This option adds or removes the trailing slash at the end of plugin filter URLs based on your WordPress permalink settings.
Selective Plugin Loading
This option allows you to selectively load plugins even if they are disabled in plugin settings. You need to turn on this feature if you want to enable or disable plugins on individual content types.
To properly use this option, you need to add a must use plugin or mu-plugin in WordPress. MU plugins can be added to any WordPress site, and they are activated by default. The plugin will try to create an MU plugin itself, but if it fails then you will need to create it. We will show you how to do that later in this article.
Selective Mobile Plugin Loading
This option allows you to selectively enable or disable plugins on mobile browsers.
Selective Admin Plugin Loading
You can turn on this option if you want certain plugins to only load inside the WordPress admin area.
Disable Plugins By Role
This option allows you to disable plugin by user roles. You can turn on this option and then select user roles that you want to use in the next box.
Don’t forget to click on the save settings button to store your changes.
Creating an MU Plugin for Plugin Organizer
Plugin Organizer needs an MU plugin to work properly. The plugin will try to automatically add it to your website, but if it fails then you will have to create it yourself.
To find out whether the plugin has successfully created the MU plugin. You need to visit Plugins » Installed Plugins page. You will see a new link labeled Must-Use, clicking on it will show you the installed MU plugins on your site.
If you don’t see the plugin or Must-Use plugins link, then this means that the plugin organizer failed to create the file, and you will need to manually do it yourself.
First, you need to connect to your website using an FTP client or File Manager app in cPanel.
Next, Go to the /wp-content/mu-plugins/ folder. If you don’t have a mu-plugins folder in your /wp-content/ folder, then you need to create one.
After that you need to go to /wp-content/plugins/plugin-organizer/lib/ folder and download the file called ‘PluginOrganizerMU.class.php’ to your computer.
Next, you need to go to the /wp-content/mu-plugins/ folder and upload the file from your computer.
The Plugin Organizer can now you use this file to properly manage your plugins efficiently. You can go ahead and continue with plugin settings.
Set up Global Plugin Options
Plugin Organizer allows you to activate plugins but keep them disabled. To set up which plugins remain active and which plugins are disabled, you need to go to the Plugin Organizer » Global Plugins page.
You will see your installed plugin on the left. Active plugins will be highlighted and displayed on top. If you want to disable a plugin, then you can simply drag and drop it to the Disable column.
This will disable the plugins without deactivating them.
You can re-enable the plugin you disabled for individual post types, single post or page items, individual URLs, from different pages in the plugin settings. We will walk you through each of them later in this article.
Enable or Disable Plugins on Search Results Page
To disable or enable certain plugins on search results, you will need to visit the Plugin Organizer » Search Results page.
On this screen, you need to simply select a plugin from the left column and drop it to the disable column. You will notice that the disable column has different boxes. You will need to click on the box where you want to disable the plugin. For example, adding a plugin to ‘Disabled Standard’ box will disable the plugin for all users on all pages.
If you previously set a plugin to be disabled globally, and you want it to be loaded on search results page, then you can simply drag and drop it from disabled plugins column back to available plugins.
Selectively Enable / Disable Plugins for Custom Post Types
To control which plugins work on certain post types, you need to visit Plugin Organizer » Post Type Plugins page.
First, you will select the post type where you want to apply the changes. After that, you can drag and drop plugins from available items column to the disable column.
You can also enable a plugin that you have disabled in Global Plugins page by dragging it from the Disabled column to the available items.
Group Plugins and Change Plugin Load Order
By default, WordPress loads your current active plugin files alphabetically. This alphabetical order may sometimes cause conflicts if you have plugins depending on each other’s code.
For example, if you have a plugin file apple.php which relies on functions in another plugin called zebra.php, then you may need the zebra.php file to load first so that apple.php works properly.
Plugin Organizer allows you to manually change the plugin order and group plugins. However, be very careful as this could make your website inaccessible.
To rearrange the plugin load order, you need to visit Plugin Organizer » Group and Order Plugins page.
The plugin organizer will display your plugins in default alphabetical order, and you can rearrange the order by simple drag and drop.
You can also group plugins together by selecting ‘Create new group’ from the drop down menu at the top. Next, you need to enter a name for the group and select the plugins you want to add in it.
Once you are done with the group, click on the Submit button to continue. Plugin organizer will now create a plugin group for you.
Now if you go to the Plugins page, then you will see a new link named after your group name. When you click on it, you will see all the plugins inside that group.
Creating Plugin Filters with Plugin Organizer
Plugin Organizer allows you to enable or disable plugin based on URL. To do that you need to create Plugin Filters. These filters will allow you to enable or disable plugins that match specific URLs.
First you need to go to the Plugin Organizer » Plugin Filters page and click on ‘Add Plugin Filter’ link.
This will bring you tothe add new plugin filter page. You will need to provide a name for your plugin filter and then add permalinks (URLs) that you want to be affected by this filter.
You can add multiple URLs by clicking the Add Permalink button.
Under the settings section, you can choose whether this filter will also affect child URLs of permalinks you have added. You can leave the priority field blank.
After that, scroll down to the ‘Plugins’ section. Here you can drag and drop plugins from the available items to Disabled boxes.
Similarly, you can also drag and drop a plugin from the disabled column to available items to make a plugin load when this filter is matched.
Additionally, you can save this filter inside a filter group. Filter groups are like categories. Their purpose is to help you sort similar plugin filters together.
Once you are done, click on the publish button to make this plugin filter active. It will start working as soon as you click on the publish button.
Enable or Disable a Plugin on a Single Post or Page
Plugin Organizer also allows you to load or disable plugins on a single post, page, or custom post type item. First you need to make sure that you have enabled the post type support on Plugin Organizer » Settings page.
Next, go ahead and edit the post, page, or custom post type you want to change. On the post edit screen, scroll down to the ‘Plugin Organizer’ section.
You will see the plugin organizer settings with your plugins. You can drag and drop plugins to disable them or drag disabled plugins to available items to make them active.
Don’t forget to click on the save changes or update button to store your changes.
Troubleshooting Plugin Organizer Issues
Plugin Organizer plugin is used to change the default behavior of WordPress plugins on your website. Your settings may cause unexpected results including fatal errors, syntax errors, or white screen of death.
A quick way to resolve those issues is by deactivating all your WordPress plugins via FTP. This will deactivate plugin organizer as well.
To uninstall Plugin Organizer, simply delete the plugin from the plugins page. This will not only delete the plugin itself, but it will also delete all plugin settings. You can then reinstall the plugin if you want.
For most errors, see our comprehensive list of most common WordPress errors and how to fix them. If the error you are seeing is not listed, then try our step by step WordPress troubleshooting guide to find the cause of the error and possible solutions.
We hope this article helped you efficiently use WordPress plugin organizer to speed up your WordPress site. If you want to just install best of the best plugins, then see our list of must have WordPress plugins for all websites.
If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.
The post How to Use the Plugin Organizer to Speed Up Your WordPress Site appeared first on WPBeginner.
from WPBeginner http://www.wpbeginner.com/plugins/how-to-use-the-plugin-organizer-to-speed-up-your-wordpress-site/
0 notes
Text
Shop.
A develop data (default name: build.ninja) provides a checklist of rules-- short names for longer commands, like how to run the compiler-- together with a listing of develop declarations saying how you can build documents making use of the rules-- which rule to apply to which inputs to produce which outputs. We have nowy targ info actually placed it in advance of the others that permit nowy targ info divides because, even though a lot of have comparable nowy targ info Aid to Purchase ISA prices, Nationwide likewise has an alright rate on its simple access ISA which pays 0.5% (0.75% with its Flexclusive nowy targ info ISA for those with a 'Flex' current account). Strong wood floors are made from a selection of timber types, usually tough timbers, that will certainly stand up to everyday use. When you are nowy targ in a edit-compile cycle you want it to be as quick as feasible-- you desire the develop system to do the minimum job needed to figure out exactly what needs to be built immediately. In my view no-one must begin a new residence structure task without this level of information. nowy Targ info Most DEVELOP documents seem little greater than a collection of affirmations of construct policies; certainly, the declarative style is strongly encouraged when writing BUILD data. A fine example would certainly be sprinters that utilize a heavy sled or resistance bands to improve their starting time off the blocks. Sur une base de 100 factors de statistics, j' ai testé toutes les répartitions à savoir: nowy targ info 25/75, 50/50 et 75/25 en habi/cruau respectivement. It made good sense for them to get a residence nowy targ info as opposed to remaining to lease," Mr. Lewis said in an e-mail confirming the acquisition. TO build upper body muscular tissue fast, you have to understand that your body isn't really perfectly balanced, so if you raise a weights you are truly allowing the stronger side do even more work. With all the new kinds of carpet on the marketplace when it comes to buying carpet it can be a little a frustrating job. Anybody can get one, as long as you're a newbie purchaser or strategy to be in the future as well as frankly even if you've just a hint you might purchase a residence, it deserves starting it off. Buy Bitcoin with credit history or debit card or make use of one of greater than 20 other repayment choices offered such as bank transfers or cash. Declarations like construct foo bar are a set of space-separated tokens that finish at the newline. Most of the functionality of this build script is easily refactorable right into common dependences, so our develop script isn't really rather as intimidating as this summaries! To obtain C/C++ header dependencies (or other construct reliance that works in a comparable means) proper Ninja has some extra capability. As a matter of fact, the possibilities are that unless you are reasonably difficult as well as well ready headed you will eventually go out of the stores with several bags, including an absoluter bargain that you have no idea if you'll ever use, a few items that were really much as well pricey, and something essentially along the lines of the item you actually came searching for. I was truly near purchasing an utilized Porsche Boxster from a car dealership but was concerned about upkeep and insurance expenses. In other instances, the name is substantial: for _ _ and binary examination guidelines, as an example, the rule name identifies the name of the executable generated by the develop. This is the measurement that most professionals will take when recommending you on finished values as well as it seems reasonable therefore to make use of the exact same for your preliminary advice on develop costs. To finish the BUiLD program you require 100 CLiCs (factors), which you could make by participating in a series of activities selected by you! The last study below will be examining how a Cargo collection connect to a system collection and also exactly how the build manuscript is leveraged to sustain this usage situation. Si jamais, avec beaucoup de chance, un rayon de soleil pointait le spell de child nez, foncez vous installer sur la nouvelle terrasse de la area Thorigny: Le Wood! If the family members is little or this is the first significant building project, choosing a small houseboat to develop would be best. High building criteria need new houses to stick to rigorous guidelines for electric insulation as well as fire security in addition to modern-day locks on all windows and doors, alarms as well as entryphones for some developments. For simpleness's benefit, think of Ethereum like an extra advanced as well as innovative Bitcoin backed as well as used by major corporations as a result of its technical advancements as well as clear pathway to constructing a decentralized internet. Therefore, researching your alternatives is not just important, it's necessary if you intend to acquire an original one. As mentioned above in the output style, each develop manuscript can create an arbitrary set of metadata in the form of key-value sets. This need to complete our example of developing some C code from a Freight package using the construct manuscript itself. Microsoft is building its very own take on Apple's universal clipboard, however this set functions across even more systems. The store is accessible from outside the Abbey and you do not require a ticket to shop with us. We are positioned at the site visitor exit at the West Towers, in Broad Sanctuary.
0 notes
wwinchesterww-blog · 7 years
Text
Things you may not have known about HTML & CSS
CSS em unit
Originally, the CSS em unit was derived from the width of the capital letter M, which is where its name came from. I remind myself I first read this in a CSS book a while ago, not sure about the book’s name but you can check the Wikipedia page for more on this topic.
HTML5 tags
The HTML5 structural elements are a practical implementation of naming searches among CSS class and id selectors found in the wild at that time. I first read about how the currently HTML5 tags were born while digging into Introducing HTML5 By Bruce Lawson and Remy Sharp.
Minimal valid web page
With the HTML5 arrival, you’d only need to define the doctype and title in order to create a new valid web page. So, theoretically, no html, head or body tags are needed for that. This is happening because browsers assume them anyway, just check browsers’ debuggers with the code below:
<!doctype HTML> <title>Bazinga</title>
CSS specificity
It takes 256 chained CSS class selectors in order to beat an id specificity. When Chris Coyier made this example, there has been a lot of discussion on this topic. Ryan Seddon wrote some thoughts about this too.
Also, on topic, an interesting fact is that there is no maximum length for a class name or id in CSS.
Colors
Peru and Tomato are actually both valid CSS color names. Also, the hex #badA55color is not so badass, it’s actually sort of lime :)
Also, when using the HTML deprecated bgcolor attribute, a bloody red color is rendered. Mathias mentioned it in his video as being the blood of Chuck Norris’s enemies. Pure coincidence… or not :)
Read the Stack Overflow discussion to find out why does HTML think “chucknorris” is a color.
CSS can be #funny
Check the following CSS lines to put a smile on your face:
#universe:before { content: ""; } .ninja { visibility: hidden; } .kids-these-days { -webkit-perspective: none; } .work:after{ content:"Beer!"; }
Also, you may want to check CSSHumor on Twitter for more.
CSS px != Device px
The “px” unit in CSS doesn’t really have anything to do with screen pixels, despite the poorly chosen name. You need to take deep breath and take your time to read more here and here.
No (more) CSS4
It seems that there is no such thing as CSS4 after all. Also, CSS3 is everything after CSS2.1, it’s all about modules. Tab Atkins wrote in detail about why there is no such thing as CSS4.
How to tell if a site’s using HTML5 #funny
Try it on Internet Explorer.
Did it work?
No?
It’s HTML5.
HTTP request
The fastest HTTP request is the one not made.
This is not HTML & CSS related but I like this line a lot. Everytime I work on a project and try to optimize the number of HTTP requests, this pops up into my mind. I guess I first saw it while reading on of Steve Souders’ posts.
::before & ::after pseudo elements
Until a few days ago, Firefox was the only one that supported transitions and animations for CSS pseudo elements like ::before and ::after. That’s a great feature and the good news for 2013 is that WebKit now supports that too. You can now open Google Chrome Canary and see them in action.
When you drop IE6 and IE7…
IE6 does not play an important role anymore, so with that in mind, now it’s perfectly OK to use:
Multiple CSS class selectors (e.g. .foo.bar)
Attribute selectors (e.g. E[foo])
Fixed positioning
Immediate child selector (e.g. .foo > .bar)
Read more about this matter here and if IE7 isn’t on your supported browsers list as well, you may want to use the shortest clearfix ever.
Costly CSS properties
Usually, CSS properties aren’t expensive at all, but when it comes about browser painting, you should be aware that some of the following can affect the way your page renders:
position:fixed
background-position: fixed
border-radius
background-size
box-shadow
gradients
That’s it!
https://catalin.red/things-you-may-not-have-known-about-html-css/
0 notes