A comparison between the software development practices: invidual developers vs development teams. Presentation for IT students at Kaunas University of Technology in Lithuania
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
Working in teams vs working individually
1. Working in Teams
vs Working Individually
Laurynas Antanavičius
Product Manager @ Data Dog
2014.11.05
2. ABOUT US
• Custom web development and support
• Cloud-based application and software development
• B2B, B2C eCommerce solutions
• Specialised in PHP
• Over 35 developers
• Wide base of clients: UK, US, UAE, Canada, Luxembourgh,
France…
3. OUR TEAM
• Crypto-Currency exchange / Forex market
• 6 members in the development team
• Agile - Scrum, TDD, CI, CD
• PHP & GO
• Focus on performance & quality
6. "If software development was really a science,
you could apply the scientific method to it.
If it was really engineering, then you could apply
known engineering techniques.
If software development was a matter of
producing models, then you could spend your
money developing models."
7. "However, it is none of those.
Software development is a "game", a game of
speed and cooperation within your team, in
competition against other teams.
It is a game against time, and a game for mind-
share.
You should spend your money to win that game.”
- Alistair Cockburn
15. "Do you know anyone that bought the video game
Halo, or Myst, then proceeded to open the box and
read the manual before playing the game?
Whoa there guys, we can't play the game yet, we
gotta read these instructions first! “
- Jeff Atwood, cofounder of Stackexchange
16. It's ok, as long as there is a tutorial level.
Nobody reads the manual
18. “The driver enters the code and thinks tactically
about how to complete the current task,
explaining his or her thoughts out loud as
appropriate while typing.”
Peer programming
19. “The observer or navigator—following the automobile
analogy more closely—reviews each line of code as it
is typed in, and acts as a safety net for the driver. The
observer is also thinking strategically about future
problems that will need to be addressed, and makes
suggestions to the driver.”
Peer programming
22. Just ask for help!
Everyone is willing to help you only time
is limited
23. Think about it, Google it, then
Ask anyone and they will help you.
24. Weak on:
Consistency / Discipline / Following instructions
Strong on:
Looking around / Taking initiative / Copying /
Modifying / Communicating
People are “Active Devices”
25. “The primary goal is increasing software quality, this
peer-oriented feedback also helps with knowledge
exchange within the organization and offers
coaching that can help the careers of the
presenters.”
Patterson, David. “Engineering Long-Lasting
Software: An Agile Approach Using SaaS and
Cloud Computing"
Code reviews / Workshops
26. What do we do in code reviews?
We review code! Fresh new features before adding them to
the main branch
27. And to find stuff like this:
// Magic. Do not touch.
// drunk, fix later
// I'm sorry.
return 1; # returns 1
// I am not sure if we need this, but too scared to
delete.
28.
29. "You might say the secret of the game,
then, is learning how to play the game
so that everyone is having fun."
45. “In the information age, the barriers just aren’t there.
The barriers are self-imposed.
If you want to set off and go develop some grand new
thing, you don’t need millions of dollars of capitalization.
You need enough pizza and Diet Coke to stick in your
refrigerator, a cheap PC to work on, and the dedication to
go through with it.
We slept on floors. We waded across rivers.”
- John Carmack
46. Where John was sitting in a cubicle by himself in
Mesquite, Texas for 80 hours a week painstakingly
inventing all this stuff from first principles, on hardware
that was barely capable, you have a supercomputer in
your pocket, another supercomputer on your desk,
and two dozen open source frameworks and libraries
that can do 90% of the work for you.
You have GitHub, Wikipedia, Stack Overflow, and the
whole of the Internet.
47. Programming is like sex:
One mistake and you have to support it
for the rest of your life.