forked from TeamDevDev/www.developerdevelopment.com
-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.qmd
90 lines (74 loc) · 4.58 KB
/
index.qmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
---
pagetitle: "Developer Development"
page-layout: article
title-block-style: default
title-block-banner: false
---
![**Developing developers so that they can develop better software!**](images/Developer-Development-Horizontal-Logo.svg){fig-align="center"}
## Introduction
Regardless of the role or the company or the project in which they find
themselves, a software engineer is always a *developing developer*. Like the
word "developer" in the above logo, developers always have a "missing piece" of
the "D" in their developer skills. Put in another way, all developers have a
professional skill that they have not yet honed, new technologies that they have
yet to explore, program features that they have not yet implemented, or
nefarious bugs that they have not yet found and fixed! Always working to
establish a confidence in their program's correctness, a developing developer
aims to engineer and ship high-quality software that is designed, documented,
tested, and maintained according to industry best practices.
## Schedule
With the goal of enabling effective developer development, this web site
features a sixteen-week schedule filled with activities that support the
development of your professional and technical capacities and walk you through
the implementation and release of two major software projects. Although this
site is best used by an on-campus learner in the [Department of Computer and
information Science](https://www.cis.allegheny.edu/) at [Allegheny
College](https://www.allegheny.edu/), the resources and projects are all
publicly available. For instance, the following provides a list of the three
textbooks that developing developers use to hone their professional and
technical skills during sixteen weeks of personal growth:
- [Software Engineering at Google](https://abseil.io/resources/swe-book)
(abbreviated on this site as **SE**): a compelling introduction to the processes
and tools used by software engineers at Google.
- [Fuzzing Book](https://www.fuzzingbook.org/) (abbreviated on this site as
**FB**): a savvy, code-focused introduction to the automated tools and
techniques for generating software tests.
- [Debugging Book](https://www.debuggingbook.org/) (abbreviated on this site as
**DB**): an interactive introduction to automated methods for finding programmer
errors and their causes.
As the developing developers in the on-campus course read twelve articles in
**SE**, nine articles in **FB**, and four articles in **DB**, they will
collaboratively write and publish that summarizes and contextualizes
the material and points towards a way in the lessons from these books can be
applied to two long-term software development projects.
Is this challenging? *Yep*! Will learners make mistakes along the way to
developing as a software developer? *Of course*! Are there many benefits to
being a developing developer? *Yes*! For instance, the participants of this
sixteen-week course will gain valuable perspectives and practical skills to
enhance their abilities as a software engineering while collaboratively
building and releasing two open-source tools.
## Adventure
Interested in getting started on a developer development adventure? Begin here:
- The [sixteen-week course schedule](./schedule/index.qmd) offers detailed
insights into each step that learners should take to help them to develop as
developers, including a list of reading assignment and descriptions of various
projects.
- The [course syllabus](./syllabus/index.qmd) introduces the course and its
learning objectives and explains how on-campus learners will be assessed by the
course instructor.
- The [developer development blog](./blog/index.qmd) includes executive
summaries of all of the key professional and technical insights that students
learned when actively engaging with the content in **SE**, **FB**, and **DB**.
The blog also contains reports from the design, implementation, testing,
documentation, and deployment of two software projects. Read more to watch us
develop as developers!
::: {.callout-note appearance="minimal" title="Developer Development Community"}
Interested in connecting with other like-minded developing developers? Please
join the [Developer Development Discord Server](https://discord.gg/aNfn8DNEMx)
and join the conversation! If you are an on-campus learning at Allegheny
College, you may also join the [Allegheny College Computer Science Discord
Server](https://discord.gg/CS2h9kXzX6). Finally, if you are an on-campus
learner, then you may schedule a meeting with the course instructor during
office hours by visiting the [Course Instructor's Appointment
Scheduler](https://www.gregorykapfhammer.com/schedule/).
:::