Skip to content

Commit 384bdcd

Browse files
committed
new macos and vuejs resources
1 parent 72436a8 commit 384bdcd

File tree

6 files changed

+100
-3
lines changed

6 files changed

+100
-3
lines changed

content/pages/01-introduction/04-python-2-or-3.markdown

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,11 @@ should upgrade as soon as possible.
135135

136136
* [How Dropbox rolled out one of the largest Python 3 migrations ever](https://blogs.dropbox.com/tech/2018/09/how-we-rolled-out-one-of-the-largest-python-3-migrations-ever/)
137137
explains how their transition began in 2015 and was successfully completed
138-
in 2018.
138+
in 2018. There is also a follow up post on
139+
[incrementally migrating over one million lines of code from Python 2 to Python 3](https://blogs.dropbox.com/tech/2019/02/incrementally-migrating-over-one-million-lines-of-code-from-python-2-to-python-3/)
140+
that has more details on how hack weeks were able to help make enough
141+
progress so the engineers could better estimate the scope of work when
142+
the transition from 2 to 3 became critical to their development toolchain.
139143

140144
* [Why Python 3?](http://whypy3.com/) randomly outputs valid reasons to
141145
use Python 3 over 2.x.

content/pages/03-data/08-django-orm.markdown

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,12 @@ that have been added throughout the project's history.
5151
* [Going Beyond Django ORM with Postgres](https://speakerdeck.com/craigkerstiens/going-beyond-django-orm-with-postgres)
5252
is specific to using PostgreSQL with Django.
5353

54+
* [How to view Django ORM SQL queries](https://mrcoles.com/how-view-django-orm-sql-queries/)
55+
along with
56+
[django-sql-explorer](https://github.com/groveco/django-sql-explorer)
57+
allow you to better understand the SQL code that is generated from the
58+
Django ORM.
59+
5460
* [Migrating a Django app from MySQL to PostgreSQL](http://www.calazan.com/migrating-django-app-from-mysql-to-postgresql/)
5561
is a quick look at how to move from MySQL to PostgreSQL. However, my guess
5662
is that any Django app that's been running for awhile on one
@@ -104,6 +110,10 @@ that have been added throughout the project's history.
104110
you can discover issues such as unexpected extra queries and problematic
105111
key relationships.
106112

113+
* [Full-text search in Django with PostgreSQL](https://www.paulox.net/2017/12/22/full-text-search-in-django-with-postgresql/)
114+
is a very detailed example that shows how to work specifically with
115+
a [PostgreSQL](/postgresql.html) backend.
116+
107117

108118
### Django migrations resources
109119
[Django migrations](https://docs.djangoproject.com/en/dev/topics/migrations/)
@@ -122,6 +132,10 @@ following resources should get you past the initial hurdles.
122132
explains why South was not directly integrated into Django, how migrations
123133
are built and shows how backwards migrations work.
124134

135+
* [Executing custom SQL in Django migrations](https://www.endpoint.com/blog/2016/09/17/executing-custom-sql-in-django-migration)
136+
examines how you can hook in straight SQL that will run during a Django
137+
migration.
138+
125139
* [Squashing and optimizing migrations in Django](http://www.rkblog.rk.edu.pl/w/p/squashing-and-optimizing-migrations-django/)
126140
shows a simple example with code for how to use the migrations integrated
127141
into Django 1.7.
@@ -140,3 +154,16 @@ following resources should get you past the initial hurdles.
140154
migrations to ensure data migrations work well throughout
141155
the lifecycle of your Django project.
142156

157+
* [Strategies for reducing memory usage in Django migrations](https://www.azavea.com/blog/2017/02/23/strategies-reducing-memory-usage-django-migrations/)
158+
shows the large memory usage problem that often occurs with Django
159+
migrations at scale and what you can do to mitigate the issue.
160+
161+
* [How to Create Django Data Migrations](https://simpleisbetterthancomplex.com/tutorial/2017/09/26/how-to-create-django-data-migrations.html)
162+
has a straightforward blog ORM modeling example to show how to perform
163+
data migration.
164+
165+
* [Keeping data integrity with Django migrations](https://cheesecakelabs.com/blog/keeping-data-integrity-django-migrations/)
166+
shows two table modification scenarios, one where a column needs to be
167+
added to an existing table, and another where a `Many-to-Many` field needs
168+
to be converted to a standard `ForeignKey` column while retaining all
169+
of the data.

content/pages/04-web-development/17-css.markdown

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -191,6 +191,10 @@ web application's design.
191191
simpler and cut down the massive bloat that can accumulate as you build
192192
your site as a first step to improving your performance.
193193

194+
* [A Guide To CSS Support In Browsers](https://www.smashingmagazine.com/2019/02/css-browser-support/)
195+
analyzes features versus bugs in different browser versions and how
196+
to test for support so that issues are less likely to hit your web app.
197+
194198
* [Third party CSS is not safe](https://jakearchibald.com/2018/third-party-css-is-not-safe/)
195199
is a good reminder that any code you did not write yourself, especially
196200
code served through 3rd party sources not under your control can contain

content/pages/04-web-development/25-vuejs.markdown

Lines changed: 40 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,19 +8,57 @@ meta: Learn about Vue.js and other JavaScript frameworks for web applications on
88

99

1010
# Vue.js
11-
[Vue.js](https://vuejs.org/) is a [JavaScript](/javascript.html) web
12-
application framework for building rich apps that run in web browsers.
11+
[Vue.js](https://vuejs.org/) ([source code](https://github.com/vuejs/vue))
12+
is a [JavaScript](/javascript.html) web application framework for building
13+
rich apps that run in web browsers.
1314

1415
<a href="https://vuejs.org/" style="border:none"><img src="/img/logos/vuejs-wide.png" width="100%" alt="Vue.js logo." class="shot"></a>
1516

1617
<div class="well see-also">Vue.js is an implementation of the <a href="/javascript.html">JavaScript frameworks</a> concept. Learn how these pieces fit together in the <a href="/web-development.html">web development</a> chapter or view the <a href="/table-of-contents.html">table of contents</a> for all topics.</div>
1718

1819

20+
### Vue.js-related projects
21+
* [flask-vue-spa](https://github.com/oleg-agapov/flask-vue-spa) is an example
22+
project with a [Flask](/flask.html) API on the backend and Vue on the front.
23+
24+
* [django-vue-template](https://github.com/ariera/django-vue-template) contains
25+
example code for a [Django](/django.html) backend.
26+
27+
* [vuepress](https://vuepress.vuejs.org/)
28+
([source code](https://github.com/vuejs/vuepress)) is a
29+
[static site generator](/static-site-generator.html) that uses Vue and
30+
[Markdown](/markdown.html) to create pre-rendered static HTML pages.
31+
32+
1933
### Vue.js resources
2034
* [A friendly introduction to Vue.js](https://appendto.com/2016/11/a-friendly-introduction-to-vue-js/)
2135
contains the code and brief explanations of what it's doing so you can
2236
learn to create your first Vue app.
2337

38+
* [Developing a Single Page App with Flask and Vue.js](https://testdriven.io/blog/developing-a-single-page-app-with-flask-and-vuejs/)
39+
walks through all of the environment configuration, project setup and
40+
coding you need to do to build a legitimate Vue.js application that
41+
uses a [Flask](/flask.html) API on the backend.
42+
43+
* The official
44+
[Vue.js getting started documentation](https://vuejs.org/v2/guide/)
45+
is fantastic and highly recommended as a top starting resource.
46+
47+
* [Replacing jQuery With Vue.js: No Build Step Necessary](https://www.smashingmagazine.com/2018/02/jquery-vue-javascript/)
48+
explains why you may want to replace existing jQuery code with Vue and how
49+
to do so with minimal steps, depending on the complexity of your applicationi
50+
code, of course!
51+
52+
* [Why we chose Vue.js](https://about.gitlab.com/2016/10/20/why-we-chose-vue/)
53+
covers GitLab's reasons for using this JavaScript framework over other
54+
options.
55+
56+
* The Vue.js publishes their own documentation page on how Vue
57+
[compares with other frameworks](https://vuejs.org/v2/guide/comparison.html).
58+
It is refreshing to see a straightforward technical analysis without the
59+
posturing that often comes from authors of one project discussing other work
60+
in the same space.
61+
2462
* [Building Modern Applications with Django and Vue.js](https://auth0.com/blog/building-modern-applications-with-django-and-vuejs/)
2563
combines [Django](/django.html),
2664
[Django REST Framework](/django-rest-framework-drf.html), Vue.js

content/pages/05-deployment/15-macos.markdown

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,3 +13,21 @@ within the Unix family tree that is developed by Apple and is often
1313
used for [developing Python applications](/learning-programming.html).
1414

1515

16+
### macOS Python resources
17+
* [Using Python on a Macintosh](https://docs.python.org/3/using/mac.html)
18+
explains how Python 2.7 is installed by default on Macs. You should
19+
start setting up your environment by installing Python 3 and then follow
20+
the instructions in the post to get a
21+
[development environment](/development-environment.html) configured.
22+
23+
* [Python Development Environment on macOS High Sierra](https://hackercodex.com/guide/python-development-environment-on-mac-osx/)
24+
takes the defualt macOS environment and gives you the step to configure
25+
everything for Python development.
26+
27+
* [How to Set Up Your Python Environment](https://www.davidculley.com/installing-python-on-a-mac/)
28+
is a data science-flavored configuration guide.
29+
30+
* [How to Use the Command Line for Apple macOS and Linux](https://www.taniarascia.com/how-to-use-the-command-line-for-apple-macos-and-linux/)
31+
explains the Terminal. If this guide is useful to you then you should
32+
also check out the [shells](/shells.html) and
33+
[Bash](/bourne-again-shell-bash.html) pages.

content/pages/05-deployment/32-configuration-management.markdown

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,12 @@ operations, such as querying the database from the Django manage.py shell.
4444
shows the differences between these two Python-powered tools.
4545

4646

47+
### Configuration management resources
48+
* [A quick guide to choosing infrastructure tools](https://www.oreilly.com/learning/a-quick-guide-to-choosing-infrastructure-tools)
49+
presents a high-level overview of the categories of tools you will need
50+
to perform infrastructure-as-code in an organization.
51+
52+
4753
## Ansible configuration management
4854
[Ansible](http://www.ansible.com/) is an open source configuration
4955
management and application deployment tool built in Python.

0 commit comments

Comments
 (0)