Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Full Stack Software Engineering for Beginners
Search
Kojo Idrissa
December 20, 2016
Programming
1
130
Full Stack Software Engineering for Beginners
Presented at PyHouston 2016-12;
https://www.meetup.com/python-14/events/drtltlyvqbbc/
Kojo Idrissa
December 20, 2016
Tweet
Share
More Decks by Kojo Idrissa
See All by Kojo Idrissa
A Jr. Developer’s Guide to Software Engineering
kojoidrissa
0
350
Privilege Arbitrage: Making Your Culture More Inclusive
kojoidrissa
0
43
Using Privilege Arbitrage to Increase Inclusion
kojoidrissa
0
130
PyTexas 2015: Building a More Inclusive Python Community Culture
kojoidrissa
0
46
DjangoCon US 2015: Practicing Inclusion
kojoidrissa
0
54
DISCUSSING PRACTICAL INCLUSIVITY
kojoidrissa
0
60
Other Decks in Programming
See All in Programming
Open source software: how to live long and go far
gaelvaroquaux
0
620
Software Architecture
hschwentner
6
2.1k
Conform を推す - Advocating for Conform
mizoguchicoji
3
680
Compose でデザインと実装の差異を減らすための取り組み
oidy
1
300
Immutable ActiveRecord
megane42
0
130
How mixi2 Uses TiDB for SNS Scalability and Performance
kanmo
29
11k
Kanzawa.rbのLT大会を支える技術の裏側を変更する Ruby on Rails + Litestream 編
muryoimpl
0
220
Amazon Q Developer Proで効率化するAPI開発入門
seike460
PRO
0
110
Pulsar2 を雰囲気で使ってみよう
anoken
0
230
自分ひとりから始められる生産性向上の取り組み #でぃーぷらすオオサカ
irof
8
2.6k
CI改善もDatadogとともに
taumu
0
110
データの整合性を保つ非同期処理アーキテクチャパターン / Async Architecture Patterns
mokuo
41
15k
Featured
See All Featured
RailsConf 2023
tenderlove
29
1k
Done Done
chrislema
182
16k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Testing 201, or: Great Expectations
jmmastey
41
7.2k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
99
18k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
20
2.4k
Code Review Best Practice
trishagee
66
17k
Facilitating Awesome Meetings
lara
51
6.2k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Optimizing for Happiness
mojombo
376
70k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
630
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
132
33k
Transcript
Full Stack Software Engineering for Beginners 0 0 1-22 -2-0
1
Introduction/Premise • Programming vs Software Engineering • Pro Software Development
vs Personal Projects • Coding with a team vs working solo 2
Version Control (Git) • Why? • Protect yourself from mistakes
• Enable yourself to take chances & try new things • Learning to work w/ a team 3
Version Control (Git) • When? • 10 or more lines
of working code that you're scared to change because it might break 4
Version Control (Git) • What/How? • Basic feature branch/ merge
workflow 5
Version Control (Git) • Reference • Pro Git Chapters 1-3
• https://git-scm.com/book/ en/v2 6
Documentation • In Code vs About Code? • Start w/
In Code 7
Documentation • Why? • Help your future self • Help
your teammates help you • Avoid that form of technical debt 8
Documentation • When? • Writing code using a new technique
• Writing functions, especially if they call other functions 9
Documentation • How? • Docstrings for functions (minimums) • What
the function does • What it takes as input (include data type) • What it produces as output (include data type) 10
Documentation • Next Step? • Learn about Sphinx 11
Testing & TDD • Testing vs "PURE" TDD • Why?
• Tests protect you from future changes breaking things • TDD: "write tests first" forces you to think before you type 12
Testing & TDD • When? • As soon as possible
• Art + Science: experience helps 13
Testing & TDD • How? • New coders: Python unittest
and doctests • Experienced coders: pytest 14
Testing & TDD • Next Step? • New coders: pytest
• Experienced coders: Continuous Integration 15
Other • Dependency Management & Deployment • Containers • DjangoCon
2016 Day 2 Lightning Talks Joe Cronyn • VMs • Virtual Env 16
Other • Development Environment • CLI vs. GUI • Linux/Unix/Windows/OS
X 17
Questions/Comments? • @Transtion on Twitter • At this meetup most
of the time 18