SlideShare une entreprise Scribd logo
1  sur  112
Télécharger pour lire hors ligne
how
  uses
     ild
           github
            zach holman
to bu
to
    how
  uses
   build    x
           github
how github
   uses github
to build github
how
   uses github
to build
how
   uses github
to build
how your company
   uses github
to build your product
@holman
we work
asynchronously
WORKING ASYNCHRONOUSLY:
YOU CAN DO SHIT WITHOUT NEEDING TO
PULL ME OUT OF THE ZONE™.
NO MEETINGS • NO DEADLINES • NO MANAGERS
CHATROOMS
NO PRESENCE NEEDED

         LOG ALL THE THINGS
             EVERYONE ON THE SAME PAGE

TIME FLEXIBILITY
WORK WHEN YOU WANT TO WORK
HOW GITHUB WORKS
zachholman.com/posts/how-github-works
OKAY LET’S TALK ABOUT
PULL REQUESTS + BRANCHING
                   ISSUES
        OAUTH AS IDENTITY
           HOOKS & HUBOT
                  SECRETS
pull requests
       +   branching
Y’all got some weird branches.
master
     deploy-62
            deploy-63
                        deploy-63b
 ?                               deploy-
REPOSITORY

ʘ‿ʘ                       ಠ_ಠ
TRUSTED                  SHITTY
DEVELOPERS           DEVELOPERS

                 FORK FORK FORK
Keep your branches simple.
How GitHub does branching:
MASTER

BRANCH
Everyone can push, everyone can deploy.
Frees up your time from
micromanaging someone else’s code.
Master is always deployable.
Master is always deployable. We deploy
10-40 times a day.
If you’re nervous, deploy to staging.
Or deploy a branch. Or deploy to a subset
of our production boxes.

           TWITTER-DRIVEN DEVELOPMENT
       CHECK TWITTER, SEE IF YOU BONED A DEPLOY
Keep your branches simple.
ಠ_ಠ
What about code quality?
REQUESTS
PULL

       OOH! FUTUR
                 ISTIC!
Pull Requests are our code review.
DISCUSSIONS DISCUSSIONS DISCUSSIONS DISCUS
DISCUSSIONS DISCUSSIONS DISCUSSIONS DISCUS
DISCUSSIONS DISCUSSIONS DISCUSSIONS DISCUS
DISCUSSIONS DISCUSSIONS DISCUSSIONS DISCUS
DISCUSSIONS DISCUSSIONS DISCUSSIONS DISCUS
 WHAT
 ARE  PULL REQUESTS?
DISCUSSIONS DISCUSSIONS DISCUSSIONS DISCUS
DISCUSSIONS DISCUSSIONS DISCUSSIONS DISCUS
DISCUSSIONS DISCUSSIONS DISCUSSIONS DISCUS
DISCUSSIONS DISCUSSIONS DISCUSSIONS DISCUS
CODE DISCUSSION
          FEATURE DISCUSSION
         STRATEGY DISCUSSION

A PULL REQUEST IS A DISCUSSION
CODE DISCUSSION
 FEATURE DISCUSSION
STRATEGY DISCUSSION
STRATEGY DISCUSSION
 FEATURE DISCUSSION
    CODE DISCUSSION

                  REFERENCE ISSUES
                  REVIEW CODE DIFFS
                  WRITE CODE COMMENTS
ALL
             ON
                      A BR
STRATEGY DISCUSSION
 FEATURE DISCUSSION
    CODE DISCUSSION
                          ANC
                             H
                  REFERENCE ISSUES
                  REVIEW CODE DIFFS
                  WRITE CODE COMMENTS
TITLE OF THE PULL REQUEST

DESCRIPTION
COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT
COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT
COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT
COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT
    DISCUSS DISCUSS DISCUSS DISCUSS DISCUSS
    DISCUSS DISCUSS DISCUSS DISCUSS DISCUSS
COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT
talk about changes
           show all commits
                 show specific code changes
MASTER

BRANCH
MASTER
         PULL REQUEST
BRANCH
BIG S
                         ECRE
                             T #1
PULL REQUESTS:
YOU DON’T NEED
TO FORK ANYTHING.
4
WHY PULL REQUESTS ARE RAD:




                             REASONS
WHY PULL REQUESTS ARE RAD: ASYNCHRONOUS



          No meetings.
WHY PULL REQUESTS ARE RAD: NOTIFICATIONS



    Email is your interface.
WHY PULL REQUESTS ARE RAD: ACCESSIBLE

   Designers can evolve mockups
       and entire workflows.
    Non-technical staff can add
         their two cents.
WHY PULL REQUESTS ARE RAD: HISTORICAL

Pull Requests can be experiments.

    Try something out, throw it
       away, retain a history.
GitHub’s Pull Requests
Realtime™ status.github.com real-time polling

       git (ssh): true
       git (http): true
       git (git://): true         SUDDENLY,
       downloads: true
       pages: true                a design
       svn: true
Realtime™ status.github.com real-time polling


      MIX YOUR DESIGNERS + DEVELOPERS
      POST SCREENSHOTS (AND .GIFs!)
CodeMirror syntax highlighting as you type
CodeMirror syntax highlighting as you type


    PULL REQUESTS ARE CHEAP AS HELL
    DON’T BE AFRAID TO TOSS IT ALL AWAY
Don’t be afraid to
try to (gently) break GitHub.




      {     8 months,
            couple hundred commits,
            dozens of mockups
Pull Requests are
about getting shit done
without wasting a lot of time.
Can your workflow be improved?
Do you really need all that process?
PULL
                              REQU
                                  EST
                                        RECA
                                            P



USE PULL REQUESTS MORE
SPEND LESS TIME AVOIDING SHIPPING
we have issues
where am i anyway
                 rich media things
more priorities priorities   wat
                                   redundant

just trolling us now
                                     estimates
            deadlines
Can you survive on
    SIMPLER
           tools?
Can you work faster on
         SIMPLER
                tools?
Can you work better on
         SIMPLER
                tools?
Merlin Mann
@hotdogsladies
on email priorities :
“   A priority is observed, not
    manufactured or assigned.

    Otherwise, it's necessarily not
    a priority.
“   Making something a BIG RED TOP TOP
    BIG HIGHEST #1 PRIORITY changes
    nothing but text styling.

    If it were really important, it'd
    already be done. Period.
PRIORITIES ESTIMATES
ASSIGNEES DEADLINES
Resist adding meta-work. It gets in
the way of doing real work. (The real
work will get done anyway.)
3We use Issues for three things.
shit, something is broken
hey, this could be cool
todo lists
Do you need more than that?
Think about it.
Most of the time, you don’t.
ISSU
                  ES R
                       ECAP

SIMPLETIME BUILDING
MEANS MORE
           TOOLS
YOUR PRODUCT
oauth as identity
RUBY IS    SO FAST


FUCK
   I LOVE IT
     SO MUCH
~/Development/SECRETARYOFLABOR
     was super hammered when I wrote this
                   single LABOR.RB web app
             self-referential symlink `what`
~/Development/unmarked_van
  an app that stalks people’s locations
                ~/Development/trace
                    real-time stats graphing
internal     ios licensing +    haystack




               30
talk videos     provisioning     exceptions


internal app                      collectd
distribution                      graphs

               INTERNAL APPS
continuous        internal        arbitrary
integration        twitter       data store
Outsiders are
 not welcome.
GitHub as Authentication
TEAMS, ORGANIZATIONS, AND USERS
GitHub as Authentication
USE OAUTH TO AUTHENTICATE USERS
github.com/atmos/sinatra_auth_github

    github_organization_access?('github')
    # => true
GitHub as Authentication
SECURITY • CONSISTENCY • COOLICTY
OAU
                          TH RE
                               CAP

DON’T REINVENT THE WHEEL
YOUR AUTHENTICATION CAN BE FREE
hooks & hubot
B OT                FIR EBOT

 U
                   M P
                 CA
H
O UR
       FR IENDLY
OVER 300 COMMANDS, LIKE...
• deploy every GitHub app
• run branch-level tests
• play music in the office
• tell us who is in the office
• dynamically build usage graphs
• send and receive text messages
• mustache every image posted in chat
• track who swears each day
• rank by twitter followers
• ...and way, way more
L J K
     O not open source.
    L is
Hubot
      github.com/github/hubot
bots          github: know your branch status
       Zach
       hubot what hasn’t been deployed?

       Hubot
       Zach: Here's what hasn't been deployed on master yet:
       https://github.com/github/github/compare/{sha}...master
bots          github: know your branch status
       Zach
       hubot what hasn’t been deployed on issues2?

       Hubot
       Zach: Here's what hasn't been deployed on issues2 yet:
       https://github.com/github/github/compare/{sha}...issues2
bots          github: know your branch status
       Zach
       hubot what hasn’t been deployed on issues2?

       Hubot
       Zach: Here's what hasn't been deployed on issues2 yet:
       https://github.com/github/github/compare/{sha}...issues2
bots          github: know your branch status
       Zach
       hubot what hasn’t been deployed on issues2?

       Hubot
       Zach: Here's what hasn't been deployed on issues2 yet:
       https://github.com/github/github/compare/{sha}...issues2
bots      github: know your branch status

https://github.com/site/sha
#=> 2c8c2e9932d0caceecd3ed8ee2adcda0ece3e564
bots          github: using the API
       Zach
       hubot what are the pulls on holman/boom?

       Hubot
       HTTParty should only be a soft dependency
       (master...jimmycuadra:soft-dependency) by jimmycuadra
       https://github.com/holman/boom/pull/46
       boom roulette (master...culvr:master) by culvr
       https://github.com/holman/boom/pull/43
bots          github: using the API
       Zach
       hubot how many issues did we close today for github/github?


       Hubot
       13 issues closed on github/github in the past 24 hours.
bots      github

What does your company do over and over again?
Can you automate that?
HUB
                        OT R
                             ECAP


HUBOT KNOWS WHERE YOU LIVE
DO NOT TRUST HIM
everyone has
    secrets
WE TUCK STUFF AWAY SOMETIMES. OOPS.
EMOJIFOR ACADEMICS, BRO
WORDS ARE


   :heart:               :+1:      :shipit:

  ...and so much more:   http://git.io/dmWZWg
SHORTCUTS ALL SLOW-LIKE
QUIT MAKING ME DO THINGS
   w      t       ?
IMAGES WITH PIXELS
EVERYTHING IS BETTER
![title](url)
DIFF+PATCH ME TEXT
GOD I HATE PIXELS JUST GIVE


                      .diff + .patch
                      after most URLs
FENCED CODE FENCES
IT’S LIKE CODE BUT WITH MORE

    require 'redcarpet'
    markdown = Redcarpet.new("Hello World!")
    puts markdown.to_html
FENCED CODE FENCES
IT’S LIKE CODE BUT WITH MORE
    ```ruby
    require 'redcarpet'
    markdown = Redcarpet.new("Hello World!")
    puts markdown.to_html
    ```
FENCED CODE FENCES
IT’S LIKE CODE BUT WITH MORE

    require 'redcarpet'
    markdown = Redcarpet.new("Hello World!")
    puts markdown.to_html
MENTIONS YOUR WORK
GET SOMEONE ELSE TO DO
              pull requests
  @username   issues
              commits
WHITESPACE
IT SUCKS

        ?w=1
         add

             to URLs
REPO REFERENCESAROUND
AROUND THE REPO, AROUND THE REPO,

   user/repo#issue
GIT.IO ANNOUNCEMENT
OFFICIAL LAUNCH
 https://github.com/holman/really-
  fucking-long-url-wtf-is-u-doing

             git.io/url
GIT.IO ANNOUNCEMENT
OFFICIAL LAUNCH


curl -i http://git.io -F 'url=#{url}' #{code}
                      http://git.io/nxVVig
THE
                        BIG R
                             ECAP

SIMPLE   BETTER   AWESOME
TOOLS + PROCESS = PRODUCT
thanks!
zach holman
zachholman.com/talks
twitter+github:   @holman

Contenu connexe

Similaire à Github github-github

Github for Serious Business Professional
Github for Serious Business ProfessionalGithub for Serious Business Professional
Github for Serious Business Professional
zwheller
 
How To Do Kick-Ass Software Development, by Sven Peters
How To Do Kick-Ass Software Development, by Sven PetersHow To Do Kick-Ass Software Development, by Sven Peters
How To Do Kick-Ass Software Development, by Sven Peters
ZeroTurnaround
 
Building an Open Source iOS app: lessons learned
Building an Open Source iOS app: lessons learnedBuilding an Open Source iOS app: lessons learned
Building an Open Source iOS app: lessons learned
Wojciech Koszek
 

Similaire à Github github-github (20)

Achieving Technical Excellence in Your Software Teams - from Devternity
Achieving Technical Excellence in Your Software Teams - from Devternity Achieving Technical Excellence in Your Software Teams - from Devternity
Achieving Technical Excellence in Your Software Teams - from Devternity
 
orlando-codecamp-meet-copilot-24-Feb-2024_pub.pptx
orlando-codecamp-meet-copilot-24-Feb-2024_pub.pptxorlando-codecamp-meet-copilot-24-Feb-2024_pub.pptx
orlando-codecamp-meet-copilot-24-Feb-2024_pub.pptx
 
Git 201
Git 201Git 201
Git 201
 
Github for Serious Business Professional
Github for Serious Business ProfessionalGithub for Serious Business Professional
Github for Serious Business Professional
 
The Junior Developer Survival Guide - GDI Ann Arbor 2/10/15
The Junior Developer Survival Guide -  GDI Ann Arbor 2/10/15The Junior Developer Survival Guide -  GDI Ann Arbor 2/10/15
The Junior Developer Survival Guide - GDI Ann Arbor 2/10/15
 
Be a Happier Developer with Git / Productive Team #gettinggitright
Be a Happier Developer with Git / Productive Team #gettinggitright Be a Happier Developer with Git / Productive Team #gettinggitright
Be a Happier Developer with Git / Productive Team #gettinggitright
 
Git workflows (Basics)
Git workflows (Basics)Git workflows (Basics)
Git workflows (Basics)
 
Inside GitHub with Chris Wanstrath
Inside GitHub with Chris WanstrathInside GitHub with Chris Wanstrath
Inside GitHub with Chris Wanstrath
 
Jr devsurvivalguide
Jr devsurvivalguideJr devsurvivalguide
Jr devsurvivalguide
 
api-driven-development.pdf
api-driven-development.pdfapi-driven-development.pdf
api-driven-development.pdf
 
Design and Evolution of cyber-dojo
Design and Evolution of cyber-dojoDesign and Evolution of cyber-dojo
Design and Evolution of cyber-dojo
 
GDSC NYCU | 如何建立自己的開源專案
 GDSC NYCU | 如何建立自己的開源專案 GDSC NYCU | 如何建立自己的開源專案
GDSC NYCU | 如何建立自己的開源專案
 
DevOps + MongoDB Realm Serverless Functions = 🤩
DevOps + MongoDB Realm Serverless Functions = 🤩DevOps + MongoDB Realm Serverless Functions = 🤩
DevOps + MongoDB Realm Serverless Functions = 🤩
 
How To Do Kick-Ass Software Development, by Sven Peters
How To Do Kick-Ass Software Development, by Sven PetersHow To Do Kick-Ass Software Development, by Sven Peters
How To Do Kick-Ass Software Development, by Sven Peters
 
DevOps + MongoDB Serverless = 
DevOps + MongoDB Serverless = DevOps + MongoDB Serverless = 
DevOps + MongoDB Serverless = 
 
Building an Open Source iOS app: lessons learned
Building an Open Source iOS app: lessons learnedBuilding an Open Source iOS app: lessons learned
Building an Open Source iOS app: lessons learned
 
What we can learn from hackers (about the definition of work)
What we can learn from hackers (about the definition of work)What we can learn from hackers (about the definition of work)
What we can learn from hackers (about the definition of work)
 
Free The Enterprise With Ruby & Master Your Own Domain
Free The Enterprise With Ruby & Master Your Own DomainFree The Enterprise With Ruby & Master Your Own Domain
Free The Enterprise With Ruby & Master Your Own Domain
 
Pentesting an unfriendly environment: bypassing (un)common defences and mate ...
Pentesting an unfriendly environment: bypassing (un)common defences and mate ...Pentesting an unfriendly environment: bypassing (un)common defences and mate ...
Pentesting an unfriendly environment: bypassing (un)common defences and mate ...
 
Community building lessons from Ansible
Community building lessons from AnsibleCommunity building lessons from Ansible
Community building lessons from Ansible
 

Plus de fusion2011

Plus de fusion2011 (16)

K1
K1K1
K1
 
1028 aoyama
1028 aoyama1028 aoyama
1028 aoyama
 
kpop
kpopkpop
kpop
 
Stat r 9_principal
Stat r 9_principalStat r 9_principal
Stat r 9_principal
 
Niko02
Niko02Niko02
Niko02
 
Niko01
Niko01Niko01
Niko01
 
Texconf11
Texconf11Texconf11
Texconf11
 
7417ff8622ed3f5b9f959a6b8108b77d
7417ff8622ed3f5b9f959a6b8108b77d7417ff8622ed3f5b9f959a6b8108b77d
7417ff8622ed3f5b9f959a6b8108b77d
 
Lee carter modified
Lee carter modifiedLee carter modified
Lee carter modified
 
110823 j1644 pr-rev3ml
110823 j1644 pr-rev3ml110823 j1644 pr-rev3ml
110823 j1644 pr-rev3ml
 
Tokushuu
TokushuuTokushuu
Tokushuu
 
Thurstone ex.png
Thurstone ex.pngThurstone ex.png
Thurstone ex.png
 
Chaki setup-nlp-seminar090930
Chaki setup-nlp-seminar090930Chaki setup-nlp-seminar090930
Chaki setup-nlp-seminar090930
 
How2mecab
How2mecabHow2mecab
How2mecab
 
Me cab
Me cabMe cab
Me cab
 
Test
TestTest
Test
 

Dernier

Escorts Service Basapura ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Basapura ☎ 7737669865☎ Book Your One night Stand (Bangalore)Escorts Service Basapura ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Basapura ☎ 7737669865☎ Book Your One night Stand (Bangalore)
amitlee9823
 
RT Nagar Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bang...
RT Nagar Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bang...RT Nagar Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bang...
RT Nagar Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bang...
amitlee9823
 
Whitefield Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Ba...
Whitefield Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Ba...Whitefield Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Ba...
Whitefield Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Ba...
amitlee9823
 
Design Inspiration for College by Slidesgo.pptx
Design Inspiration for College by Slidesgo.pptxDesign Inspiration for College by Slidesgo.pptx
Design Inspiration for College by Slidesgo.pptx
TusharBahuguna2
 
Peaches App development presentation deck
Peaches App development presentation deckPeaches App development presentation deck
Peaches App development presentation deck
tbatkhuu1
 
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...
kumaririma588
 
Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
amitlee9823
 
infant assessment fdbbdbdddinal ppt.pptx
infant assessment fdbbdbdddinal ppt.pptxinfant assessment fdbbdbdddinal ppt.pptx
infant assessment fdbbdbdddinal ppt.pptx
suhanimunjal27
 
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
instagramfab782445
 

Dernier (20)

Escorts Service Basapura ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Basapura ☎ 7737669865☎ Book Your One night Stand (Bangalore)Escorts Service Basapura ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Basapura ☎ 7737669865☎ Book Your One night Stand (Bangalore)
 
RT Nagar Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bang...
RT Nagar Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bang...RT Nagar Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bang...
RT Nagar Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bang...
 
Whitefield Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Ba...
Whitefield Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Ba...Whitefield Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Ba...
Whitefield Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Ba...
 
VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...
VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...
VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...
 
Q4-W4-SCIENCE-5 power point presentation
Q4-W4-SCIENCE-5 power point presentationQ4-W4-SCIENCE-5 power point presentation
Q4-W4-SCIENCE-5 power point presentation
 
VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...
VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...
VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...
 
Design Inspiration for College by Slidesgo.pptx
Design Inspiration for College by Slidesgo.pptxDesign Inspiration for College by Slidesgo.pptx
Design Inspiration for College by Slidesgo.pptx
 
Sector 105, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 105, Noida Call girls :8448380779 Model Escorts | 100% verifiedSector 105, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 105, Noida Call girls :8448380779 Model Escorts | 100% verified
 
Peaches App development presentation deck
Peaches App development presentation deckPeaches App development presentation deck
Peaches App development presentation deck
 
Sector 104, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 104, Noida Call girls :8448380779 Model Escorts | 100% verifiedSector 104, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 104, Noida Call girls :8448380779 Model Escorts | 100% verified
 
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...
 
Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
UI:UX Design and Empowerment Strategies for Underprivileged Transgender Indiv...
UI:UX Design and Empowerment Strategies for Underprivileged Transgender Indiv...UI:UX Design and Empowerment Strategies for Underprivileged Transgender Indiv...
UI:UX Design and Empowerment Strategies for Underprivileged Transgender Indiv...
 
infant assessment fdbbdbdddinal ppt.pptx
infant assessment fdbbdbdddinal ppt.pptxinfant assessment fdbbdbdddinal ppt.pptx
infant assessment fdbbdbdddinal ppt.pptx
 
SD_The MATATAG Curriculum Training Design.pptx
SD_The MATATAG Curriculum Training Design.pptxSD_The MATATAG Curriculum Training Design.pptx
SD_The MATATAG Curriculum Training Design.pptx
 
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
 
Booking open Available Pune Call Girls Kirkatwadi 6297143586 Call Hot Indian...
Booking open Available Pune Call Girls Kirkatwadi  6297143586 Call Hot Indian...Booking open Available Pune Call Girls Kirkatwadi  6297143586 Call Hot Indian...
Booking open Available Pune Call Girls Kirkatwadi 6297143586 Call Hot Indian...
 
Sweety Planet Packaging Design Process Book.pptx
Sweety Planet Packaging Design Process Book.pptxSweety Planet Packaging Design Process Book.pptx
Sweety Planet Packaging Design Process Book.pptx
 
call girls in Vasundhra (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝...
call girls in Vasundhra (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝...call girls in Vasundhra (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝...
call girls in Vasundhra (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝...
 

Github github-github