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
150
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
390
Privilege Arbitrage: Making Your Culture More Inclusive
kojoidrissa
0
50
Using Privilege Arbitrage to Increase Inclusion
kojoidrissa
0
130
PyTexas 2015: Building a More Inclusive Python Community Culture
kojoidrissa
0
53
DjangoCon US 2015: Practicing Inclusion
kojoidrissa
0
66
DISCUSSING PRACTICAL INCLUSIVITY
kojoidrissa
0
66
Other Decks in Programming
See All in Programming
AIエージェントでのJava開発がはかどるMCPをAIを使って開発してみた / java mcp for jjug
kishida
4
730
Phronetic Team with AI - Agile Japan 2025 closing
hiranabe
2
650
ゼロダウンタイムでミドルウェアの バージョンアップを実現した手法と課題
wind111
0
210
自動テストのアーキテクチャとその理由ー大規模ゲーム開発の場合ー
segadevtech
2
1k
なぜ強調表示できず ** が表示されるのか — Perlで始まったMarkdownの歴史と日本語文書における課題
kwahiro
12
7k
Module Harmony
petamoriken
2
480
レイトレZ世代に捧ぐ、今からレイトレを始めるための小径
ichi_raven
0
460
Flutterアプリ運用の現場で役立った監視Tips 5選
ostk0069
1
490
What's New in Web AI?
christianliebel
PRO
0
130
AI駆動開発ライフサイクル(AI-DLC)のホワイトペーパーを解説
swxhariu5
0
1.2k
歴史から学ぶ「Why PHP?」 PHPを書く理由を改めて理解する / Learning from History: “Why PHP?” Rediscovering the Reasons for Writing PHP
seike460
PRO
0
160
しっかり学ぶ java.lang.*
nagise
1
410
Featured
See All Featured
Code Reviewing Like a Champion
maltzj
527
40k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Being A Developer After 40
akosma
91
590k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Six Lessons from altMBA
skipperchong
29
4.1k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
GitHub's CSS Performance
jonrohan
1032
470k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
192
56k
Building Adaptive Systems
keathley
44
2.8k
A Modern Web Designer's Workflow
chriscoyier
697
190k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1k
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