Skip to content

Commit 175aaa6

Browse files
committed
Add part 5.
1 parent 5544845 commit 175aaa6

File tree

1 file changed

+243
-0
lines changed

1 file changed

+243
-0
lines changed

part-5.ipynb

+243
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,243 @@
1+
{
2+
"metadata": {
3+
"kernelspec": {
4+
"codemirror_mode": {
5+
"name": "ipython",
6+
"version": 2
7+
},
8+
"display_name": "IPython (Python 2)",
9+
"language": "python",
10+
"name": "python2"
11+
},
12+
"name": "",
13+
"signature": "sha256:d3073baa9f8a050a7ae6616386382b6e189019b47ce0a3205bb089be53c07e9c"
14+
},
15+
"nbformat": 3,
16+
"nbformat_minor": 0,
17+
"worksheets": [
18+
{
19+
"cells": [
20+
{
21+
"cell_type": "heading",
22+
"level": 1,
23+
"metadata": {},
24+
"source": [
25+
"Using third-party libraries"
26+
]
27+
},
28+
{
29+
"cell_type": "markdown",
30+
"metadata": {},
31+
"source": [
32+
"Great programmers don't write all their code themselves. \n",
33+
"\n",
34+
"In fact, they write as little as possible, reusing whatever they can."
35+
]
36+
},
37+
{
38+
"cell_type": "heading",
39+
"level": 2,
40+
"metadata": {},
41+
"source": [
42+
"Free and Open Source Software"
43+
]
44+
},
45+
{
46+
"cell_type": "markdown",
47+
"metadata": {},
48+
"source": [
49+
"There is a lot of FOSS Python code out there. It's a treasure trove for your projects:\n",
50+
"* Free to use, usually even commercially\n",
51+
"* Open source means you can study/modify the code and contribute back\n",
52+
"\n",
53+
"Usually maintained by volunteers, so:\n",
54+
"* When you use it, you're encouraged to contribute back\n",
55+
"* Be extra-friendly and nice to people who aren't getting paid to help you\n",
56+
"* If you use free Python libraries, consider creating free Python libraries too"
57+
]
58+
},
59+
{
60+
"cell_type": "heading",
61+
"level": 2,
62+
"metadata": {},
63+
"source": [
64+
"Where to Get Free Python Libraries"
65+
]
66+
},
67+
{
68+
"cell_type": "markdown",
69+
"metadata": {},
70+
"source": [
71+
"* When you installed Python, it came with a **standard library**\n",
72+
"* The Python Package Index has 50,000 free packages for you\n",
73+
"* GitHub search\n",
74+
"* Bitbucket search"
75+
]
76+
},
77+
{
78+
"cell_type": "heading",
79+
"level": 2,
80+
"metadata": {},
81+
"source": [
82+
"Python Package Index"
83+
]
84+
},
85+
{
86+
"cell_type": "markdown",
87+
"metadata": {},
88+
"source": [
89+
"Memorize this website URL and visit it every day:\n",
90+
"https://pypi.python.org\n",
91+
"\n",
92+
"(screenshot)\n",
93+
"\n",
94+
"Sometimes referred to as \"The Cheese Shop\" because of Monty Python\n",
95+
"\n",
96+
"(photo)"
97+
]
98+
},
99+
{
100+
"cell_type": "heading",
101+
"level": 2,
102+
"metadata": {},
103+
"source": [
104+
"Module vs. Package vs. Library"
105+
]
106+
},
107+
{
108+
"cell_type": "markdown",
109+
"metadata": {},
110+
"source": [
111+
"TODO"
112+
]
113+
},
114+
{
115+
"cell_type": "heading",
116+
"level": 2,
117+
"metadata": {},
118+
"source": [
119+
"Examples of Python Packages"
120+
]
121+
},
122+
{
123+
"cell_type": "markdown",
124+
"metadata": {},
125+
"source": [
126+
"Here, we:\n",
127+
"* Download package X from PyPI\n",
128+
"* Import and use a function from X\n",
129+
"\n",
130+
"TODO\n",
131+
"\n",
132+
"...\n",
133+
"\n",
134+
"...\n",
135+
"\n",
136+
"(10 min using a package)"
137+
]
138+
},
139+
{
140+
"cell_type": "markdown",
141+
"metadata": {},
142+
"source": [
143+
"What are GitHub, Gitlab, Bitbucket, Gitorious, Sourceforge, etc.?"
144+
]
145+
},
146+
{
147+
"cell_type": "markdown",
148+
"metadata": {},
149+
"source": [
150+
"TODO"
151+
]
152+
},
153+
{
154+
"cell_type": "heading",
155+
"level": 3,
156+
"metadata": {},
157+
"source": [
158+
"Example: Package X"
159+
]
160+
},
161+
{
162+
"cell_type": "markdown",
163+
"metadata": {},
164+
"source": [
165+
"(10 min using another package)\n",
166+
"\n",
167+
"* Show its PyPI listing\n",
168+
"* Show its GitHub repo\n",
169+
"* Click through and show its files and docs"
170+
]
171+
},
172+
{
173+
"cell_type": "heading",
174+
"level": 3,
175+
"metadata": {},
176+
"source": [
177+
"What is Version Control?"
178+
]
179+
},
180+
{
181+
"cell_type": "markdown",
182+
"metadata": {},
183+
"source": [
184+
"TODO"
185+
]
186+
},
187+
{
188+
"cell_type": "heading",
189+
"level": 3,
190+
"metadata": {},
191+
"source": [
192+
"DVCS and Collaboration"
193+
]
194+
},
195+
{
196+
"cell_type": "markdown",
197+
"metadata": {},
198+
"source": [
199+
"TODO"
200+
]
201+
},
202+
{
203+
"cell_type": "heading",
204+
"level": 2,
205+
"metadata": {},
206+
"source": [
207+
"What's in a Python Package?"
208+
]
209+
},
210+
{
211+
"cell_type": "markdown",
212+
"metadata": {},
213+
"source": [
214+
"TODO"
215+
]
216+
},
217+
{
218+
"cell_type": "heading",
219+
"level": 2,
220+
"metadata": {},
221+
"source": [
222+
"Using Third-Party Libraries in Projects"
223+
]
224+
},
225+
{
226+
"cell_type": "markdown",
227+
"metadata": {},
228+
"source": [
229+
"Keeping track of requirements\n",
230+
"\n",
231+
"Avoiding dependency conflicts"
232+
]
233+
},
234+
{
235+
"cell_type": "markdown",
236+
"metadata": {},
237+
"source": []
238+
}
239+
],
240+
"metadata": {}
241+
}
242+
]
243+
}

0 commit comments

Comments
 (0)