WebsiteOne
A website for Agile Ventures - a platform for online collaboration and crowdsourced project development. Chat in https://agileventures.slack.com/messages/websiteone
The WebsiteOne team
-
Bryan Yap
(United Kingdom)
-
Sam Joseph
(United Kingdom)
-
Dima Sukhikh
(Germany)
-
Pete Boucher
(Spain)
-
Pavel Gimelberg
(Australia)
-
Daniel Mortensen
(United Kingdom)
-
Jeff Thomas
(United States)
-
Michael C
(United States)
-
Sushant Magoo
(India)
-
leopark647
(United States)
-
Mike Adeleke
(United States)
-
Mandeep Metharu
(United Kingdom)
-
Marian Mosley
(United States)
-
Sampriti Panda
(India)
-
Paul McCulloch
(United States)
-
Bill Walker
(United States)
-
David Corking
(United Kingdom)
-
André Mouton
(South Africa)
-
tkanatha
(Kenya)
-
bill auger
(United States)
-
Oliver Schafeld
(Germany)
-
sergios lenis
(Greece)
-
Anton Kupias
(Finland)
-
Christian
(United Kingdom)
-
john.p.bracegirdle
(United Kingdom)
-
Georgios Giannopoulos
(Greece)
-
Jim Remmell
(United States)
-
Mike Brown
(United States)
-
Vladimir Bukvic
(Serbia)
-
Thomas Wassum
(United States)
-
srikanth.kunkulagunta
(Germany)
-
Rafael George
(Dominican Republic)
-
Иван Бишевац
(Serbia)
-
email
(United Kingdom)
-
Aditya Tiwari
(India)
-
rob
(United Kingdom)
-
Nikita Avvakumov
(Estonia)
-
zamoramerida
(United States)
-
hugoestr
(United States)
-
David BF
(Spain)
-
Christopher Milne
(Canada)
-
Sly Blyahov
(Bulgaria)
-
Jacqueline Homan
(United States)
-
pawanhiworld
(India)
-
Jurij Koch
(Germany)
-
Craig Ferry
(United Kingdom)
-
Yaro Apletov
(Spain)
-
otengkwaku
(Ghana)
-
Farhat Nawaz
(United Kingdom)
-
Paulo Abreu
(Portugal)
-
Lucas Vasconcelos
(Brazil)
-
Amy Lightholder
(United States)
-
dxander
(United States)
-
Jonathan Yim
(Canada)
-
Gabriel Muñumel
(United Kingdom)
-
Ildus Sadykov
(Russia)
-
Bruno Interlandi
(Italy)
-
luveh.kerapf
(Mexico)
-
Michèle Garoche
(France)
-
erithair
(China)
-
Jason Robinson
(United States)
-
Thomas Ochman
(Sweden)
-
Norbert Szivós
(Hungary)
-
Joao Pereira
(United States)
-
Hakan Hekimgil
(Turkey)
-
Ed Keith
(United States)
-
georgedelson
(Nigeria)
-
Szymon Błaszczyński
(Poland)
-
Nick Holden
(United States)
-
Nick Christ
(United States)
-
Jeremy Monroe
(United States)
-
akurnya
(India)
-
dominic.n
(Canada)
-
Andres Alleva
(Argentina)
-
Rose Williams
(United States)
-
Scott Aloisio
(United States)
-
mstepni1
(United States)
-
Mark Fishkin
(United States)
-
Ryan Smith
(United States)
-
zhengyue0612
(United States)
-
William Hilska
(United States)
-
Ben Malecki
(United States)
-
yzheng43
(United States)
-
Akshay Vilekar
(India)
-
Pawel Ptaszynski
(Poland)
-
Algis B
(Republic of Lithuania)
-
Nikesh Ashar
(United Kingdom)
-
Nick Dyer
(United Kingdom)
-
evrimfeyyaz
(United Arab Emirates)
-
E. V. Orakwue
(United States)
-
rene paulokat
(Germany)
-
Michelle
(United States)
-
Raoul DIFFOUO
(South Africa)
-
scott.tj.yu
(Taiwan)
-
aaron.chock
(Costa Rica)
-
Piotr Kedzia
(Poland)
-
Alejandro Babio
(Argentina)
-
Zmago Devetak
(Slovenia)
-
simone.westphal
(Germany)
-
aaron ch
(Costa Rica)
-
Edwin Xico
(Guatemala)
-
Arber Qytyku Polis
(Albania)
-
Dmitry Basov
(Vietnam)
-
Kieran Moore
(Ireland)
-
Deepinder Singh Babbar
(Bahrain)
-
Joaquin Morcate
(Netherlands)
-
Vineet
(India)
-
Sameer Sherwani
(United States)
-
Kemal C.
(Bosnia and Herzegovina)
-
kcheema1
(United States)
-
madankapoor10
(India)
-
AHMED BOUSSIHMED
(Morocco)
-
vahinde.ganesh333
(India)
-
steven1l2
(United States)
-
istalter66
(United States)
-
rana shujaa
(Pakistan)
-
vicqs4real
(Nigeria)
-
ryu.monk
(United States)
-
dalupus
(United States)
-
Woziu
(Poland)
-
Lianpeng Zhang
(United States)
-
Hugo Campos
(Peru)
-
Tony Butler
(United Kingdom)
-
William GT
(United States)
-
David Perez
(United States)
-
Akanksha Lakhera
(India)
-
Grzegorz Bugała
(Poland)
-
meyian
(Ghana)
-
Puneet Singh
(India)
-
Farid Shahy
(Iran)
-
Zeng (Fred) Wang
(China)
-
micsylva005
(Nigeria)
-
simplejettrue
(United States)
-
hughes.mike.r
(United States)
-
andrescano
(United States)
-
Rajeev Hejib
(United Kingdom)
-
Garrett
(United States)
-
arpit.nigam
(United States)
-
Jacobo Ariza
(Spain)
-
setohe.09
(Colombia)
-
darkmattertreaty
(Kazakhstan)
-
Junyuan Xue
(United Kingdom)
-
Son Bui
(Vietnam)
-
Eduardo Herrera
(Panama)
-
chanchalsarwar
(Bangladesh)
-
Najibu Nsubuga
(United Kingdom)
-
Tawanda Chitsike
(Zimbabwe)
-
nxl1969
(United States)
-
Xoron Mirror
(Germany)
-
Joseph Wu
(Taiwan)
-
sagar.pednekar
(India)
-
israel
(United States)
-
Corey Morris
(United States)
-
Mikael DAUTREY
(France)
-
yadong.chu
(Germany)
-
zoebmithaiwala
(India)
-
cameron.ross
(United States)
-
Manos Fountoulakis
(United States)
-
Marco Prazeres
(Brazil)
-
leo424y
(Taiwan)
-
Mariel Lares Martiz
(Spain)
-
Jennifer Gordon
(United States)
-
Matt Lindsey
(United States)
-
Marouen Bousnina
(Tunisia)
-
Anar Babayev
(Sweden)
-
Federico Esparza
(United States)
-
marijanpuljiz82
(Bosnia and Herzegovina)
-
Gimi Qehaja
(United Kingdom)
-
markooasi
(Serbia)
-
waghmareharshal143
(India)
-
Zizo Ribeiro
(Canada)
-
kayn1
(Poland)
-
gcompagnoli
(Argentina)
-
wolowicz.krzysztof
(Poland)
-
brhnmydn
(Russia)
-
cfulltv
(Serbia)
-
Nisha Chauhan
(United States)
-
sadly.sisir
(Bangladesh)
-
Vu Nguyen
(United States)
-
Florestan Korp
(Netherlands)
-
pandyaparth9724
(India)
-
li enxiong
(China)
-
yakawada.sn
(Nigeria)
-
zsatish201
(India)
-
smarteye9626
(India)
-
danialz578
(Malaysia)
-
dewahac
(Luxembourg)
-
rahulnautiyal1871
(India)
-
aryankhanna4804
(India)
-
rahmalutz
(Uganda)
-
kiamakatirsm2015
(Philippines)
-
nani.vinod1987
(India)
-
j.nuric
(Bosnia and Herzegovina)
-
Lara Templemore-Walters
(South Africa)
-
vinith1234567
(India)
-
waleed.k47
(Indonesia)
-
kazamagardo24
(Philippines)
-
saddamshaikh430
(India)
-
blankelmar569
(Philippines)
-
ticenk58
(Indonesia)
-
mohitjain9076
(India)
-
armin.ha
(United States)
-
chumdanei16
(Cambodia)
-
solimananjudyann
(Philippines)
-
lamborghini1029384756
(Vietnam)
-
bnaman100
(India)
-
Alex
(Ukraine)
-
bairdriver
(United States)
-
jesvandudabs
(Philippines)
-
Paul Andrei
(Italy)
-
Praveen Dhawan
(India)
-
suvarchala983
(United States)
-
gerald2557
(United States)
-
ylowpe
(Myanmar)
-
dhruv6521
(India)
-
meshoxtahataha
(Saudi Arabia)
-
anania.kajembe
(Tanzania)
-
talhanawaz42
(Pakistan)
-
saumyawardhan1
(India)
-
4misuk
(Bangladesh)
-
abdullahiscool45
(Turkey)
-
sougatadas65
(India)
-
streetshint01
(Indonesia)
-
jatin.sk4
(India)
-
samikinggt00
(Egypt)
-
loaiabdalslam
(Egypt)
-
ammarbhatkar
(India)
-
mathanlal2017
(Pakistan)
-
Harshdeep Kanhai
(India)
-
fiazmohsin70
(Pakistan)
-
tiantianalvin
(Malaysia)
-
mykelhama1
(Nigeria)
-
jimsyl jane laspona
(Philippines)
-
Gary Brennan
(United Kingdom)
-
moniranidash
(Bangladesh)
-
Ben Blanchard
(United States)
-
Prajwal Gajurel
(Sri Lanka)
-
bisalpandey9
(Nepal)
-
lord_az_am
(Philippines)
-
harunamustapha253
(Nigeria)
-
gugamadi
(Brazil)
-
bjemkalgas
(Philippines)
-
Elliot Catalano
(United States)
-
Blank 01101 Zero
(Philippines)
-
Bill Fero
(United Kingdom)
-
Nicolas Vidal
(Argentina)
-
battlejakeyt
(Bosnia and Herzegovina)
-
khaledmamsam
(Egypt)
-
mariyagrg121
(Nepal)
-
akshaj2787
(India)
-
arjunagnihotri.chintels
(India)
-
gogamanvelishvili
(Georgia)
-
gomisterimici
(Albania)
-
shubhid765
(India)
-
Atul Kanswal
(India)
-
abhisulija2109
(India)
-
Modded Gamers
(United States)
-
dogukan320
(Turkey)
-
Stuart Duffy
(United Kingdom)
-
abebawmengstie48
(Ethiopia)
-
franko.rafol
(Philippines)
-
fahrinyanoh12
(Germany)
-
irewolehenry
(Nigeria)
-
Suman Saurabh
(India)
-
showta.0804
(India)
-
duaa.nabaa.96
(Lebanon)
-
muhammadalighuryani374
(Pakistan)
-
anasfandi3
(Turkey)
-
devilhemrom786
(India)
-
lesleyn020
(South Africa)
-
johndeveloper17
(United States)
-
Tim Kleier
(United States)
-
lokeshh.sharma
(India)
-
zvikomatiza
(Zimbabwe)
-
abdulhajue24
(India)
-
manteshgurav
(India)
-
t_n
(North Macedonia)
-
joehimes42
(United States)
-
poppa_nick
(United States)
-
Matthew Rider
(Germany)
-
StellaMaris Njage
(Kenya)
-
1eon
(United Kingdom)
-
Tassa Mehdi
(France)
-
vikasvr23
(India)
-
Elisabet Ramírez
(Spain)
-
forchetan01
(India)
-
venkatrkalvala
(United States)
-
mariozugaj
(Croatia)
-
gaurav.verma.1024
(India)
-
Karl Keller
(Germany)
-
leniquenoralez
(United States)
-
kimberley_tse
(Australia)
-
faith
(Kenya)
-
Dan Hemmingson
(United States)
-
El Mehdi LAIDOUNI
(Morocco)
-
Daksh Miglani
(India)
-
Stephen Wang
(United States)
-
mirek
(Poland)
-
komorowski.piotr.91
(Poland)
-
Andrei R
(Sweden)
-
Andrew L
(United States)
-
jantwiamoah
(Ghana)
-
h.gunes13
(Poland)
-
sebastian.cps
(Argentina)
-
clementdng
(United States)
-
Ng'ethe Maina
(Kenya)
-
sasitech18
(United Kingdom)
-
jbooling
(United States)
-
devops061
(United States)
-
msimoes_17
(Portugal)
-
joel.gonzalez01
(United States)
-
Riccardo Giomi
(Italy)
-
Ethan Strominger
(United States)
-
Emmanuel Kakaire
(Uganda)
-
alenux1
(Venezuela)
AgileVentures WebSiteOne
This Ruby on Rails app powers the AgileVentures main developer site, showing lists of active projects, members, upcoming events, past event recordings, as well as all the machinery for Premium membership payments.
Installation
See the Project Setup documentation
Usage
🚧 UNDER CONSTRUCTION 🚧
See the site How To documentation
Contributing
See our Contribution guidelines
History
in 2011, inspired by Dave Patterson and Armando Fox's UCBerkeley Software Engineering Massive Open Online Class (MOOC), Sam Joseph had the idea for a global online pairing community where everyone worked together to use the agile development methodology to deliver solutions to IT charities and non-profits. Thomas Ochman joined as project manager and led the development of the WebSiteOne codebase with Bryan Yap serving as technical lead. Initialy Sam was the notional "client", not getting involved in the tech development, and many different volunteers contributed code. During this phase the events, projects and user systems were developed. There was also a blog like articles system. Yaro Appletov led a tight integration with Google hangouts to allow recordable hangouts to be launched from the site and report back telemetry.
Later Raoul Diffou joined to take over as project manager as Thomas and Bryan had less and less time for the project. Sam took over the technical lead role in 2016 and also stared pairing with Raoul as project manager. Later in 2016 as Raoul had less and less time Sam became the sole project manager. During the course of 2016 Sam and long time AV contributor Michael revised the events framework, and replaced the articles system with a Premium payments framework intended to help ensure AV was sustainable into the future. In 2017 Google withdrew their Hangouts API breaking various functionality in the site. Sam and Lokesh Sharma replaced the API integration with manual updates, and Sam pulled in the agile-bot node microservice so that WSO now communicates directly with Slack to alert members about new online meetings and their recordings.
Approaches
- Agile Development
- We try to work from user stories in regular sprints, offer daily standups, and get regular feedback from end users. We try to reflect regularly on our process and experiment with incremental changes to how we get things done.
- Behaviour Driven Development (BDD)
- We use Cucumber and RSpec testing tools that describe the behaviours of the system and its units
- We try to work outside in, starting with acceptance tests, dropping to integration tests, then unit tests and then writing application code
- We do spike application code occasionally to work out what's going on, but then either throw away the spike, or make sure all our tests break before wrapping the application code in tests (by strategically or globally breaking things)
- Where possible we go for declarative over imperative scenarios in our acceptance tests, trying to boil down the high level features to be easily comprehensible in terms of user intention
- Domain Driven Design (DDD)
- Sometimes we switch to inside out, trying to adjust the underlying entity schema to better represent the domain model
- Self-documenting code
- We prefer executable documentation (tests) and relatively short methods where the method and variable names effectively document the code
Reading material
Walkthroughs
- An example of a simple interface change
- Here is the original user story
- Here is the original cucumber scenario
- We did not write a spec, as this would have involved a view spec which we don't feel add any value
- Here's the code that implemented the feature
🚧 UNDER CONSTRUCTION 🚧
- An example of a new feature involving a database change ...
- An example of a bug fix ...
Related documents
- Interesting stuff... (10) - created by Thomas Ochman almost 7 years ago
- Features request and design (27) - created by Thomas Ochman almost 7 years ago
- Sites - created by dewahac over 3 years ago
- maramingskin (1) - created by lord_az_am about 3 years ago
- edx - created by joel.gonzalez01 10 months ago
AV Website Rails TDD Mob - Tuesday, 5th Jan at 03:30pm (UTC)
Latest Project videos
Video | Host | Published |
---|---|---|
video unavailable ('Start Broadcast' not pressed, or Hangout/YouTube fail) | Ethan Strominger | 15:34 05/01 |
video unavailable ('Start Broadcast' not pressed, or Hangout/YouTube fail) | Matt Lindsey | 15:31 22/12 |
video unavailable ('Start Broadcast' not pressed, or Hangout/YouTube fail) | Matt Lindsey | 15:30 15/12 |
video unavailable ('Start Broadcast' not pressed, or Hangout/YouTube fail) | Matt Lindsey | 15:32 08/12 |
video unavailable ('Start Broadcast' not pressed, or Hangout/YouTube fail) | Matt Lindsey | 15:30 01/12 |
video unavailable ('Start Broadcast' not pressed, or Hangout/YouTube fail) | Matt Lindsey | 16:00 24/11 |
video unavailable ('Start Broadcast' not pressed, or Hangout/YouTube fail) | Matt Lindsey | 16:00 17/11 |
video unavailable ('Start Broadcast' not pressed, or Hangout/YouTube fail) | Riccardo Giomi | 16:00 10/11 |
video unavailable ('Start Broadcast' not pressed, or Hangout/YouTube fail) | Matt Lindsey | 17:33 09/11 |
video unavailable ('Start Broadcast' not pressed, or Hangout/YouTube fail) | Matt Lindsey | 18:39 03/11 |
Test Scrum - Sunday, 1st Nov at 12:45am (UTC) | Matt Lindsey | 00:48 01/11 |
video unavailable ('Start Broadcast' not pressed, or Hangout/YouTube fail) | Riccardo Giomi | 16:00 20/10 |
video unavailable ('Start Broadcast' not pressed, or Hangout/YouTube fail) | Mike Aono | 16:05 13/10 |
video unavailable ('Start Broadcast' not pressed, or Hangout/YouTube fail) | Riccardo Giomi | 16:01 29/09 |
video unavailable ('Start Broadcast' not pressed, or Hangout/YouTube fail) | Mike Aono | 16:00 22/09 |
video unavailable ('Start Broadcast' not pressed, or Hangout/YouTube fail) | Riccardo Giomi | 16:00 15/09 |
video unavailable ('Start Broadcast' not pressed, or Hangout/YouTube fail) | Mike Aono | 16:10 25/08 |
video unavailable ('Start Broadcast' not pressed, or Hangout/YouTube fail) | Riccardo Giomi | 17:31 19/08 |
video unavailable ('Start Broadcast' not pressed, or Hangout/YouTube fail) | Riccardo Giomi | 15:59 18/08 |
video unavailable ('Start Broadcast' not pressed, or Hangout/YouTube fail) | Riccardo Giomi | 17:29 12/08 |
video unavailable ('Start Broadcast' not pressed, or Hangout/YouTube fail) | Riccardo Giomi | 15:21 11/08 |
video unavailable ('Start Broadcast' not pressed, or Hangout/YouTube fail) | Riccardo Giomi | 15:00 11/08 |
video unavailable ('Start Broadcast' not pressed, or Hangout/YouTube fail) | Riccardo Giomi | 17:29 10/08 |
video unavailable ('Start Broadcast' not pressed, or Hangout/YouTube fail) | Riccardo Giomi | 17:30 05/08 |
video unavailable ('Start Broadcast' not pressed, or Hangout/YouTube fail) | Riccardo Giomi | 13:59 04/08 |
Stories are not supported for issue tracker type used by project WebsiteOne