Monday, October 26, 2020

Corporate Branded Negro

    I've been Black all of my life.  And today, I can say without any hesitation, is the most dangerous time to be black I've ever seen.

    I would say a dog whistle has been blown but it's actually the sound of a steam whistle and that sound tells me that I'm not safe. 

    Now this is not some theoretical nonsense about how I don't feel safe.  I'm a New Yorker.  Feelings are not my part in parcel.  I'm not safe.  I know I'm not safe.  Because I've experienced it.  

     I live on the Upper East Side of Manhattan.  Yes, that Manhattan.  I'm not talking about small town Georgia here or a backward suburb of Florida.  I'm talking about New York City where Tom Collichio doesn't just appear on Top Chef but appears in his restaurant fifteen minutes away.  I'm talking about the New York where two towers were razed and six more were raised in their place.  I'm talking about a city where I've seen a rat will fight a dog.  And win.  

     My city is an urban hydra which doesn't die, it endures and adapts.  And curiously enough, it's children,  it's citizens, particularly it's native born sons and daughters, are the same.  One time I was driving through a small town in North Carolina in the early hours of the morning and I saw  a neon sign lit up bright that said "Bagel Land!  Boiled Hand Rolled Bagels Made Fresh Every Morning at 5 AM!".  It was 4:30.  My only thought: Those are my people.

     And as a child of the hydra I can tell you for the first time I don't feel safe.  In this recent environment I have gone to restaurants, seen people sitting and been told, we're closed.  The only difference between me and the patrons, I looked like the coffee, and they the cream.  I thought Jim Crow was dead.  To my chagrin he simply calls himself James now and spells his last name with an E.

     I have been riding in a shared ride, pre-pandemic, and been punched in the face repeatedly for requesting to be left alone.  I have been attacked by multiple people and sneered at outside my own door by government officials suspicious, in a society where black is assumed to mean poor, how I could afford to live there?  Surely I had traveled there to cause trouble.

    And yet, a curious thing happened to me the other day.  I was going to work out at my gym, Planet Fitness.  Yes, I could afford Equinox but there are many brown people there and a brown staff and I enjoy brown spaces.  But PF is in Spanish Harlem so I have to travel there.  On this particular day I took an Electric Citibike.  As I stopped at a red light I noticed the hard suspicious stare of the NYPD.  I could feel it.  I've felt it before.  It's a predator's stare.  Now I refuse to think of myself as prey but I know when something is hunting me.  All humans do. It's in the DNA.  And I was being observed for signs of fear.

    And then just like that it let up.  The razor's edge in the air suddenly let up and it became light again.  And I became confused.  Happy.  But confused.  Why?  Why did this happen?  Why did they not continue to silently pressure me until the flow of traffic forced them forward?

    It happened again three days later.  Silent threat followed by a sudden click and then normalcy, an immediate lifting of menace, and once again all being right with the world.

    Then I looked at my clothing and it dawned on me.  It wasn't my Fly Knit Nikes or my Addidas Warm Ups.  It was my Lululemon Track jacket.  

    I wish I could tell my fellow Negros that Lululemon will keep you safe.  But it won't.  But a corporate logo will.

    A few years ago my company, flush with profits, gave everyone a choice of gifts: a jacket, a bag, or a wallet.  (Who would pick the wallet?)  I picked the jacket.  It was sleek and sharp and fitting. Think Kenneth Cole meets SpaceX.  But I never knew the most important part on it was the little corporate logo.

    I was safe, not because I was doing nothing wrong, not because I was a citizen, but because I was a corporately branded Negro. 

    This brand said "taxpayer". This brand said "this Negro belongs to somebody". Worst yet,  this brand said "if you hurt him people will notice, people who matter will notice".

    I was thrown into a twilight zone.  I was safe.  But was I safe because I was 'owned'?  Was I safe, and free from harrassment because I was part of a group?  No.  I was safe because I was part of a protected class.  

    Like babies in Japan black full time Corporate Americans are rare and necessary.  Not only do we provide valuable work product but we are a buffer between the Upper Management and the Politicians.  95% of the time we are left to do our jobs and are held to the same standard as everyone else.  But we all understand that 5% of the time we may be called upon to be diversity incarnate.   "Hey Curtis, can we use your picture on this website?"  I always reply 'Yes".  It's part of the game.  As Avon says, "It's either play or get played."

    We don't live in a perfect world.  I'm a Child of the Hydra. I understood that when I was seven.  But I never thought that my employers logo would actually keep me safe.

    I was always curious.  I hear stories all the time about Black people killed in an extra-judicial fashion.  And these stories are always followed up with this narrative about the perfect black person.  Victim Jenkins was an athlete, entering college, played football, loved staying in shape, didn't drink, didn't do drugs, never had, was cared for by his community,  had a girlfriend of years (they were engaged!), attended church, volunteered, and when he shat his fecal matter was speckled in gold leaf.

    But I'm not perfect.  I drink.  I have a sharp tongue.  I can be arrogant.  I laugh loudly.  I post questionable things on social media.  I sleep with random women, engaged women, married women.  I challenge racism where I see it in real time.  I challenge Patriots fans where I see them in real time.  I'm a mathematically enabled coder with a flair for conversation and a devil-may-care attitude. I can be contrarian. I can also be charming.  Stylistically I'm not Harry Belafonte.  I'm substance free Bobby Brown.

    I'm not the perfect black person because I'm not perfect.  My faults are multitude.  I often wondered what would happen if I were killed.  Would they find my treasure chest of flaws and blame me? Then I wore my jacket.  Thank God I have a corporate logo to protect me.  Thank God a corporate citizen in good standing vouches for me.  I used to feel like 3/5ths of a man.  Thank God my company gave me a 40% raise.

    Excuse me now.  I'm going to call my little brother.  I'm scared for him.  He has the same personality as me.  He laughs like me.  He talks like me.  He lives like me.  But he works for Wendy's.  God, I'm so scared.  On second thought, let me call a friend from my company.  Maybe we have a couple of extra jackets.

Sunday on Monday

 Sunday on Monday


The quiet whir of a fan

Badly cared for feet on soft hardwood floors

The sound of meetings happening with out me

 Bliss

 The only pressure on me is my go-go mind saying "Orange Juice"

It's whimsical yet demanding and still carefree

 Oh, day off how I've longed for thee

 They put me through the wringer last week

I snapped at them

"Stop.  I'm at my breaking point.  Actually just past it.  As you can tell I just broke. Enough."

 And that was enough.  

My Sunday spilled into Monday

But that's fine.  My Fridays have been spilling into my Saturdays as of late.

The quiet demand of Microsofts Products right there on my menu bar

Menu bar

Sounds like something you want to eat

But this you don't

Stop man-child-lover-whimsically intelligent-friend

Enough

Today is Monday topped with Sunday

And it's delicious

Tuesday, September 8, 2020

Where I'm @ and What I'm going to Do Next

So, here's where we are.

 

I could be shooting content right now and building that.  But I don't know.  I feel like I'm a bit old for that game.  Rather I feel like building ECS was a stepping stone.  It was a stepping stone to really learning how to build something as opposed to the build itself.  To put it frankly the destination was the journey.  Now I could start building a name for myself by using that platform to build content around it and I feel like it could be smart but I'm not really interested in entertaining people.

 To be honest, I've been thinking about what Peter Thiel said.  What he said was that competition was for suckers.  I'd be in direct competition with Eventbrite and Ticketmaster and why the hell would I want to do that.  Irt seems stupid to me.  Especially when I can take the skills that I've learned and start building something really fantastic.

 

Right now I'm learning about CSS from a production standpoint, including scss and the BEM model, things I didn't even come close to knowing before.  Also, I'm learning about responsive design.  I should be done learning about those things shortly.  Then I'm probably going to take the rest of the year and perfect those skills.  


After that I'm torn.  I really should be getting into web security in a big way.  And implementing web security in a production environment.  The only production environment I have is ECS.  


Maybe this is all of a piece.  Maybe I should be using my time now to actually build content. And then using that to drive traffic. And then redesigning the site and building content around it in order to drive traffic.  I don't know. I need to do a Pros/Cons Analysis.  


But I think I should do one episode or maybe five of the Curtis Sumpter Half Hour Comedy Hour.  And just do it and get it out there and see what happens. At least then I'll be able to maybe drive some traffic and build a test bed for this idea there as opposed to doing it from scratch.  But maybe I first learn this CSS stuff.  Finish this.  Build three projects.  And then build the CSHHCH Volume 1.  And then do some more CSS.  Then Volume 2.  Then more CSS and then Volume 3.  That should at least drive some platform adoption and allow me to continue to use this as a test bed for experimentation.


I think that's a good idea.


So let's go with that first.

 

Plan: Finish these videos and two beginner projects on frontendmentor.io.  Then put out one volume of the CSHHCH.  Then finish three more projects on frontendmentor.io.  Then put out one more volume of CSHHCH and continue to list shows from the TTC and Eastville.  Then do three more projects.  Then release volume 3 of CSHHCH.  Then do four more projects on frontendmentor.io.  Then release volume 4 of CSHHCH.  Then finish frontendmentor.io and redesign ECS.  Then release volume 5.  Then finish the book on Linux and read the book on Kali Linux hacking.

Thursday, August 27, 2020

Marketing Experiments 2: Door Hangers

 Tonight I hung about 400 door hangers in the Bushwick section of Brooklyn.  Everything up to Seneca is largely Hispanic and everything past Seneca is Eastern European and Chinese.  Ridgewood is Eastern European and Chinese.  Before Seneca is Hispanic.  I think a All Spanish show would do very well there.  Maybe Pedro Gonzalez, Melissa Diaz, Aida Rodriguez, and the Owner of the V-Spot (I forget his name), David Estrada.  The split was roughly 50/50 (I hung 50% in the Hispanic part of the neighborhood and 50% in the EE/Chinese part).  

Expectations: I'd expect the expectations here to be quite low to be honest. This is largely a white show, very Williamsberg-ish and the area isn't that white.  Even with no Hits it would be a success because just mapping the area is giving me a solid look into the neighborhood.

Another Thought:  There are lots of businesses around there.  If you did a All Spanish Show it would sell out but you should definitely do posters.

Bonuses:  There's a dope Hispanic Restaurant there that's beautiful and a great Mural that's very picturesque (barbers' clippers).

 

 

Thursday, January 23, 2020

ECS Marketing Ideas

1.  Curtis Sumpter Comedy Hour - give out cds at music events.  Check songkick.com :D :D :D
2.  Build Out: youchooze.com
3.  Facebook Marketing Once I sell 100 tickets

Friday, December 27, 2019

Thank You's

1.  Equilend - for being loyal
2.  StackOverflow - for helping me when I was truly stuck (and fuck those guys who downvoted my questions when I needed help)
3.  Mom. - because you're mom.  And you moved and married just because it was the best thing for your children and your family.  I know the sacrifice you made.

Tuesday, December 24, 2019

Send Email Address and Cell Phone Workflow

Confirm Email Address (Send):

1.  Send email to API/Lambda file
2.  Turn email address into SHA256 Hash
3.  Pull the email hash and the conf code hash
4.  Turn the email and conf code into a url
5.  Send the email with the url code
6.  Wire into webpage

Confirm Email Address (Receive):

1.  Get the link (API Parameters)
2.  Mark Promoter Email Confirmation as True
3.  Send email that says, email confirmed.
-- if the email and the cell phone number were confirmed send "Congrats.  Confirmed" email.
-- otherwise say, email is confirmed.  Please confirm cell number.
4.  Add Check for both emailConf and cellConf. If both True send email.  If false don't send email. (today - 1/8/2019)

Cell Phone Workflow:

1.  Build page that allows you to confirm cell number (Website)
(today - 1/13/2019) - In Progress -- 1/15/2020 Done
2.   Send code to the cell number (Lambda Function 1)
(today - 1/9/2019) - In Progress
3.  Enter cell phone number and conf. code (Lambda Function 2)
(today - 1/10/2019) - 1/15/2020 Done
4.  Afterward send confirmation email (tomorrow - 1/10/2019) - 1/15/2020 Done
5.  Build Cell Phone Confirmation Page (tomorrow - 1/10/2019) - 1/15/2020 Done
6.  Wire Cell Phone Confirmation Page (tomorrow - 1/10/2019) - 1/15/2020 Done
7.  Wire Attempt Logging Code -- Attach to Fail (tomorrow - 1/16/2020) - Actual 1/19/2020

Add Promoter Login Page:

1.  Wire Page - Actual 1/19/2020
2.  Build Lambda Object
  • Confirm password
  • Create hashed key (ip address + email address + time stamp) 
  • Place key into database with entrance time and exit time (Work Done) Done On: 2/4/2020
  • Place hash key into a cookie (not done yet and not tested yet) - (Next)
    Done On: 2/4/2020
  • Increment Wrong Logins (Work Done)
    Done On: 2/4/2020
  • Too Many Wrong Logins - Lock out (Work Done)
    Done On: 2/4/2020
  • Send Authentication Code (:D On same page) (Work Done)
    Done On: 2/4/2020
3.  Build Change Password Framework
4.  Wire Change Password Page
5.  Build Lambda Change Password Page
6.  Add API Page for Email link to click

Add Show Workflow (tomorrow - 1/10/2019)

1.  Add Venue + Add Showtime
  • Build HTML Framework
    • City (Drop Down)
    • Venue Names (Drop Down)
    • Show Time
      • Hours
      • Minutes
      • AM/PM
      • Timezone
    • Date Picker
    • Price
    • Comedians
    • Show Title
    • PayPal Payment Address
1B.  Wire the page with Javascript 
  • Wire Venue Drop Down
  • Check Show Date
  • Check that the Show Date is More than five days away
  • Check the price of the show (Regex)
    • Check that the price is greater than 15 dollars
  • Check that Show Title is there
  • If Headliner box is checked then change the place holder
  • If the Feature box is checked then change the place holder
  • Check that PayPal email address
    • Check that PayPal email address is an address
    • Check that it's a valid PayPal email address (Can't be done)
  • Debug Javascript
  • Wire Submit Button 
    • Submit it to the DB.  
1C.  Write the Backend Piece
  • Write the data to a separate table (or set of tables)
  • Send the booker for that venue an email
    • I know this Promoter and I approve of this show
    • I know this Promoter and I don't approve of this show
    • I don't know this Promoter and  I approve of this show
    • I don't know this Promoter and I don't approve of this show
    • I know this Promoter, however, this show needs some changes
  • Send the appropriate email based on the response to the Promoter
  • Send the appropriate email to me for final approval
Add Show Editing Workflow 

1.  Add Venue + Add Showtime Changes
  • Build HTML Framework
    • Current Shows That Haven't Been Done Yet (Drop Down)
    • Venue Names (Text Field - Can't be changed -- the show must be cancelled)
    • Show Time
      • Hours
      • Minutes
      • AM/PM
      • Timezone
    • Date Picker
    • Price
    • Comedians
    • Show Title
    • Cancel Button (48 Hours in Advance and Booker Will Be Notified and Must Approve)
    • PayPal Payment Address
    • 2 Factor Code
    • ReCaptcha
2.  After all the stuff is entered send a confirmation email to the owner of the venue/booker

Tomorrow: 3/9/2020
3.  Once Authorized the show is confirmed.
4.  Add Email to Me to confirm show again before it appears on the site

Finish The Add Show Python Script

                #Step 1B: send an email to the site owner (me) ...
                #Step 1C: mark the show as booker approved
                #Step 1D: send the promoter an email and tell them the show is booker approved and is now awaiting site owner approval
                #Step 1E: send the booker the info that the show has been approved. (HTML)

                #Step 1F:  send an email to the site owner (me) ..
                #Step 1G:  mark the show as booker approved AND mark the show as unknown producer
                #Step 1H:  send the promoter an email and tell them the show is booker approved.  Also tell them they're an unknown
                #producer and to please introduce themselves to the booker and is now awaiting site owner approval
                #Step 1I:  write the booker and tell them the show wasn't approved and it's been marked as such and the booker has been
                #notified that they're unknown. (HTML)

                #Step 1J:  mark the show as diapproved
                #Step 1K:  send the promoter an email and tell them the show is NOT booker approved.
                #Step 1L: send the booker a message that it's been disapproved.

                #Step 1M:  mark the show as diapproved AND mark the show as unknown producer
                #Step 1N:  send the promoter an email and tell them the show is NOT booker approved AND that the booker doesn't
                #know them and to please introduce themselves to the booker.
                #Step 1O:  send the booker a message that it's been disapproved (HTML)

            #Step 2:  disable show and send a message that this show has been disabled to the booker and to the promoter.  Too old.

                #Step 2A:  send promoter email that his show was answered and disabled

                #Step 2B:  tell the booker that the show is too old and has been disabled.
                #Contact us if you want us to reinstate it. Email directly.  Send email message (HTML).

        #Step 1B: Send the booker a note that this code is in error and to contact the
        #promoter (HTML).
 


Add Edit Show Page:

Build Page
Build Call Data JS

Add Pay For Tickets Page

1. Design Page
2. Wire Framework
3. Build Lambda Object
4. Talk to PayPal (set up appointment for next week)

Security

Add HTTPS Security Provisions
Lock Down the Lambda Functions
Put all the JS Code into separate files 
Add Recaptcha v3 to main page (cut down on scraping) 
Encrypt SSL connection to PostgresDB

Test Roll Out

Take out all cors-everywhere references
Take out all raw keys and implement in Lambda Functions and Retest
Take out all references to local host (127.0.0.1:8000)
Add Policies that allow only for ElasticBeanstalk to access Lambda functions
Create test Lambda Functions to allow for local development 
Remove all Comments and Console Log
Create Test environment in django local structure

Fixes:

1.  Fix the Stand
2.  Fix NYCC to account for two locations
3.  Write LOL Scraper 

Business:

1.  Get ticket sales permissions
2.  Talk to PayPal
3.  Submit Permissions to Google