Repository: sparkbox/apprenticeships
Branch: main
Commit: fe9d59209307
Files: 10
Total size: 24.3 KB
Directory structure:
gitextract_t3atmn8s/
├── README.md
├── how.md
├── index.md
├── phases/
│ ├── 1-programming.md
│ ├── 2-frontend.md
│ └── 3-project.md
└── projects/
├── proj-browser-testing.md
├── proj-event-cards.md
├── proj-more-git.md
└── proj-sb-howto.md
================================================
FILE CONTENTS
================================================
================================================
FILE: README.md
================================================
**Disclaimer:** *This guide is under construction. We are slowly translating our Sparkbox apprenticeship content into a useful format here on GitHub.*
# Sparkbox Apprenticeship Guide
Sparkbox is a team that values education. We offer paid apprenticeships at our Dayton office because we love what we do, we want to help create new talent, and we genuinely care about the future of the web.
We hate the idea of keeping our apprenticeship program to ourselves, though. If you're not in our area, no problem! We're outlining our entire program here for you to do on your own - or to introduce to your team. If you're crazy about the idea of becoming a well-rounded web developer, yet aren't quite sure where to start, we think you've found just the right place to begin.
## Who This Is For
We build responsive, standards-compliant, content-focused, well-crafted, accessible, beautiful web sites and apps, and we're looking for other web geeks who want to do the same. Passion, character, and initiative are a requirement. A long resumé is not — as long as you care about the right things, we can help build your skillset.
This isn't for the faint of heart. Learning technical skillsets isn't easy work, and the curve can be steep. This curriculum is for the kind of people who are ready to pour themselves into it - eager to pick up everything they can. We're looking for folks interested in *web development* — frontend, backend, or anything code related.
## What You'll Be Doing
In the first months of your apprenticeship, you'll be exposed to the core technologies of our work and work flow. Everyone, regardless of job title, will be brought to an understanding of Sparkbox's convictions on the priority of content, value of design, semantic HTML, and mobile-first CSS.
We'll start with a philosophy of learning - we want you to get the most out of your education. Then you'll be exposed to programming languages, our Github-centric project management, our highly specialized frontend development workflow, our deployment processes, best practices for clean code and separation of concerns, and unit testing techniques.
### Apply
If you're [local][] to Dayton, Ohio (or want to be for 6 months), we invite you to take on a full-fledged apprenticeship in our office. We run the 6-month program once per year (typically, January through June). You'll get a seat right in the middle of our office, and hands-on training in a real web shop. Visit the [Sparkbox Apprenticeships website][] for more information and to apply.
Otherwise, this guide should provide you with everything you need to get started on your own.
Enough jabber. [Let's get going][].
[local]: https://maps.google.com/maps?q=123+Webster+St.,+Studio+2,+Dayton,+OH+45402&hl=en&sll=40.365277,-82.669252&sspn=4.53679,8.811035&hnear=123+Webster+St,+Dayton,+Montgomery,+Ohio+45402&t=m&z=16
[Sparkbox Apprenticeships website]: http://apprentices.seesparkbox.com/
[Let's get going]: index.md
================================================
FILE: how.md
================================================
[← Back to README](/README.md)
The Sparkbox Apprenticeship is comprised of a [curriculum](/index.md) supplemented by a regular schedule of: pairing with fulltime Sparkboxers, pairing with other apprentices, journal writing, and informal and formal reviews which include short presentations.
## Pairing
###With Sparkboxers###
Nothing can compare to sitting with full-time, professional developers to gain exposure to good technique and problem solving. Our apprentices are expected to pair at least twice a week, at least one hour at a time, with full-time Sparkboxers.
###With Other Apprentices###
Sometimes, figuring out a problem with another person—even if they don't have any more answers than you—can really benefit new learners. Sparkbox apprentices are encouraged to collaborate and pair with their fellow apprentices early and often, and pairing becomes essential as the apprenticeship progresses into group project work.
## Journal Writing
If for no other reason than to allow apprentices the opportunity to reflect on their experiences and catalog their progress, we ask our apprentices to journal once a week. Book reviews, thoughts, struggles, lessons learned, and feedback to Sparkbox are all encouraged.
## Reviews
### Formal Reviews
Roughly once a month, we hold formal reviews with Sparkbox apprentices. In these reviews, apprentices are given the opportunity to practice their presentation skills, speaking for a short time about a subject of their choice related to their recent learning. In these reviews, apprentices are given feedback on areas they can improve and areas they have already improved, and new goals are set.
At the end of each formal review, we mutually have the opportunity to determine if the apprenticeship should continue, not continue, or if Sparkbox would like to extend an offer for full-time employment.
### Informal Reviews
Informal reviews occur weekly. Sparkbox leadership sets aside portions of their week to give short checkpoint status meetings with apprentices, checking in on goals and the overall individual apprentice's experience.
================================================
FILE: index.md
================================================
[← Back to README](/README.md)
The Sparkbox Apprenticeship is loosely separated into three phases. Completing a phase provides a clear checkpoint for review, reflection, and closure.
### Phase 1 - *Source Control and Programming Basics*
Phase one explores the essential software toolset and uses them to establish proficiency regarding the foundations of software development through practical challenges.
[See the Phase 1 Curriculum →][]
### Phase 2 - *Frontend Development: Markup, Style, Interaction, and Preprocessing*
During Phase two, developers work with HTML and CSS to implement a product card layout.
[See the Phase 2 Curriculum →][]
### Phase 3 - *MVC Frameworks, Databases, and Personal Projects*
In Phase three, developers have the opportunity to put their newly acquired skills to good use building a working app via a fully agile process with project management, design, and even an internal "client."
[See the Phase 3 Curriculum →][]
### *Job Preparedness*
Sparkbox considers our apprenticeship the pathway to hiring inexperienced developers. While there is no guarantee, our goal for the apprenticeship is to prepare individuals for a development career at Sparkbox.
For those who are not a match or would like to find a position outside Sparkbox, we will make guidance and support available to all apprentices for interviews, resumes, cover letters, portfolio design, etc.
[See the Job Preparedness Curriculum →][]
[See the Phase 1 Curriculum →]: phases/1-programming.md
[See the Phase 2 Curriculum →]: phases/2-frontend.md
[See the Phase 3 Curriculum →]: phases/3-project.md
================================================
FILE: phases/1-programming.md
================================================
[← Back to Index](../index.md)
# Phase 1 - *Source Control and Programming Basics*
#### **Reading:**
Read these books and add a 100 - 200 word review to your weekly journal. This should be a brief summary with your biggest applicable takeaway.
* [Getting Real][], 37signals
* [Passionate Programmer][], Chad Fowler
* [Pragmatic Programmer][], Andrew Hunt & Dave Thomas
#### **Training:**
* Week 0: CLI & Command Line
* Week 1: Git at Sparkbox
* ♫ "Shunting trucks and hauling freight" ♫
* Week 2: Functional Programming
* Breaking a Problem Down by Breaking a Problem Down
* Reason Your Way to Fame and Fortune
* Week 3: Object Oriented Programming
* "Mr. Watson, come here. I want to see you." --A. Bell
* Cells: The Building Blocks of Life!
* Week 4: SOLID Principles
* You Can't Make All the Principles Happy All of the Time
* Use the Force
* Week 5: Testing
* "Weeks of programming can save you hours of planning"
* Test After: Show Correctness
* Test Before: Show Intention
* Test to Drive Design: Show Up On Time While Being Intentionally Correct
* Week 6: Introduce CLI Project
* Week 7: Design Patterns
* You Mean There's a Name for What I Did?
* Week 8: Evolving Your Design
* Dammit Jim, I'm a programmer not a philosopher...oh, wait
* [CodeSchool: Try Git][]
* [CodeSchool: Git Real][]
* [CodeSchool: Git Real 2][]
* [More Git][]: more Git practice
* [CodeSchool: Try Ruby][]
* [Ruby koans][]: let's start learning Ruby
* [CodeSchool: Ruby Bits 1][]
* [CodeSchool: Ruby Bits 2][]
* [CodeSchool: Testing with RSpec][]
* [Triangle Kata - Ruby][] *with test suite*
* [Game of Life Kata - Ruby][] *with test suite*
* Game of Life - Git: push your project to Github for review
* Game of Life - Review: code review your project with your technical director
* [Ruby Warriors][]
* Game of Life - Refactor: implement changes discussed in review
#### **Additional Resources:**
* [Explain Shell][]
* [From Zero to Hero with Dotfiles: Pt 1][]
* [From Zero to Hero with Dotfiles: Pt 2][]
* [40 Terminal Tips & Tricks][]
* [Git Cheat Sheet][]
* [Practical Object Oriented Programming in Ruby][] (“sb-bookshelf” in Dropbox)
* [Learn the Command Line the Hard Way][]
* [Learn Ruby the Hard Way][]
* [Why's Poignant Guide to Ruby][]
* [Apprenticeship Patterns][]
* Practical Vim ("sb-bookshelf" in Dropbox)
* [Treehouse][]
* [Learn Git Branching][]: Learn Git visually and interactively
* [Principles Wiki][]: Study software design principles
* [Learning JavaScript Design Patterns][]
[Getting Real]: http://gettingreal.37signals.com/
[Passionate Programmer]: http://www.amazon.com/The-Passionate-Programmer-Remarkable-Development/dp/1934356344
[Pragmatic Programmer]: https://www.amazon.com/Pragmatic-Programmer-Journeyman-Master/dp/020161622X
[CodeSchool: Try Git]: http://www.codeschool.com/courses/try-git
[CodeSchool: Git Real]: http://www.codeschool.com/courses/git-real
[CodeSchool: Git Real 2]: https://www.codeschool.com/courses/git-real-2
[More Git]: ../projects/proj-more-git.md
[CodeSchool: Try Ruby]: http://tryruby.org/
[Ruby koans]: http://rubykoans.com/
[CodeSchool: Ruby Bits 1]: http://www.codeschool.com/courses/ruby-bits
[CodeSchool: Ruby Bits 2]: http://www.codeschool.com/courses/ruby-bits-part-2
[CodeSchool: Testing with RSpec]: https://www.codeschool.com/courses/testing-with-rspec
[Triangle Kata - Ruby]: http://web.archive.org/web/20140119031248/http://onestepback.org/vital_testing/
[Game of Life Kata - Ruby]: https://github.com/garora/TDD-Katas#game-of-life-
[Ruby Warriors]: https://www.bloc.io/ruby-warrior/#/
[Explain Shell]: http://www.explainshell.com
[From Zero to Hero with Dotfiles: Pt 1]: http://code.tutsplus.com/tutorials/setting-up-a-mac-dev-machine-from-zero-to-hero-with-dotfiles--net-35449
[From Zero to Hero with Dotfiles: Pt 2]: http://code.tutsplus.com/tutorials/setting-up-a-mac-dev-machine-from-zero-to-hero-with-dotfiles-part-2--cms-23145
[40 Terminal Tips & Tricks]: http://computers.tutsplus.com/tutorials/40-terminal-tips-and-tricks-you-never-thought-you-needed--mac-51192
[Git Cheat Sheet]: https://services.github.com/on-demand/downloads/github-git-cheat-sheet.pdf
[Practical Object Oriented Programming in Ruby]: http://www.amazon.com/Practical-Object-Oriented-Design-Ruby-Addison-Wesley/dp/0321721330
[Learn the Command Line the Hard Way]: http://cli.learncodethehardway.org/book/
[Learn Ruby the Hard Way]: http://ruby.learncodethehardway.org/book/
[Why's Poignant Guide to Ruby]: http://cloud.github.com/downloads/mislav/poignant-guide/whys-poignant-guide-to-ruby.pdf
[Apprenticeship Patterns]: http://chimera.labs.oreilly.com/books/1234000001813/index.html
[Treehouse]: http://teamtreehouse.com/
[learn git branching]: https://learngitbranching.js.org/
[principles wiki]: http://www.principles-wiki.net/
[learning javascript design patterns]: https://addyosmani.com/resources/essentialjsdesignpatterns/book/
================================================
FILE: phases/2-frontend.md
================================================
[← Back to Index](../index.md)
# Phase 2 - *Frontend Development: Markup, Style, Interaction, and Preprocessing*
#### **Reading:**
Read these books add a 100 - 200 word review to your weekly journal. This should be a brief summary with your biggest applicable takeaway. For articles, a few sentences is fine.
* [A Dao of Web Design][], John Allsopp
* [HTML5 for Web Designers][], Jeremy Keith
* [CSS3 for Web Designers][], Dan Cederholm
* [Responsive Web Design][], Ethan Marcotte
* [Mobile First][], Luke Wroblewski
* [Atomic Design][], Brad Frost
* [BEM by Example][], Nathan Rambeck
#### **Training: [Frontend Project][]**
##### Week 0: Prep
* Set up a [CodePen][] profile.
* [Treehouse: Introduction to HTML and CSS][]
* [Treehouse: HTML Basics][]
* [Treehouse: Practice Semantic HTML][]
* [Treehouse: HTML Forms][]
* [Treehouse: Practice File Paths][]
##### Week 1: HTML
* [Treehouse: CSS Basics][]
* [Treehouse: Practice Media Queries][]
* [Treehouse: Practice CSS Selectors][]
##### Week 2: CSS
* Finish reading [Responsive Web Design][] by Ethan Marcotte
* [Treehouse: Responsive Layouts][]
* [Treehouse: CSS Grid][]
* [Treehouse: Practice Flexible CSS Grid Layout][]
* [Treehouse: Practice CSS Grid Columns, Rows, and Gaps][]
##### Week 3: Layout
* Finish [BEM by Example][] by Nathan Rambeck
* [Treehouse: SVG Basics][]
##### Week 4: BEM + SVG
* [Treehouse: Sass Basics][]
* [Treehouse: CSS to Sass][]
##### Week 5: Sass
* *Extra Credit: [FizzBuzz][] in CSS on [CodePen][]*
#### **Additional Resources:**
* [Design is a Job][], Mike Monteiro
* [Javascript Koans][]
* [CodeSchool: JavaScript Best Practices][]
* [Advanced JS Fundamentals by Mozilla Developer Network][]
* [HTTP: The Protocol Every Web Developer Must Know - Part 1][]
* [HTTP: The Protocol Every Web Developer Must Know - Part 2][]
* [A cartoon intro to DNS over HTTPS by Lin Clark][]
[A Dao of Web Design]: http://alistapart.com/article/dao
[HTML5 for Web Designers]: http://www.abookapart.com/products/html5-for-web-designers
[CSS3 for Web Designers]: http://www.abookapart.com/products/css3-for-web-designers
[Responsive Web Design]: http://www.abookapart.com/products/responsive-web-design
[Mobile First]: http://www.abookapart.com/products/mobile-first
[Atomic Design]: http://atomicdesign.bradfrost.com/table-of-contents/
[BEM by Example]: https://seesparkbox.com/foundry/bem_by_example
[Frontend Project]: ../projects/proj-event-cards.md
[CodePen]: https://codepen.io/
[FizzBuzz]: https://codingbat.com/doc/practice/fizzbuzz-code.html
[Treehouse: Introduction to HTML and CSS]: https://teamtreehouse.com/library/introduction-to-html-and-css
[Treehouse: HTML Basics]: https://teamtreehouse.com/library/html-basics-2
[Treehouse: SVG Basics]: https://teamtreehouse.com/library/svg-basics
[Treehouse: HTML Forms]: https://teamtreehouse.com/library/html-forms
[Treehouse: Practice File Paths]: https://teamtreehouse.com/library/practice-file-paths
[Treehouse: Practice Semantic HTML]: https://teamtreehouse.com/library/practice-semantic-html
[Treehouse: CSS Basics]: https://teamtreehouse.com/library/css-basics
[Treehouse: Practice Media Queries]: https://teamtreehouse.com/library/practice-media-queries
[Treehouse: Practice CSS Selectors]: https://teamtreehouse.com/library/practice-css-selectors
[Treehouse: Responsive Layouts]: https://teamtreehouse.com/library/responsive-layouts
[Treehouse: CSS Grid]: https://teamtreehouse.com/library/css-grid-layout (and next week)
[Treehouse: Practice Flexible CSS Grid Layout]: https://teamtreehouse.com/library/practice-flexible-css-grid-layout
[Treehouse: Practice CSS Grid Columns, Rows, and Gaps]: https://teamtreehouse.com/library/practice-css-grid-columns-rows-and-gaps
[Treehouse: Sass Basics]: https://teamtreehouse.com/library/sass-basics-2
[Treehouse: CSS to Sass]: https://teamtreehouse.com/library/css-to-sass
[Design is a Job]: http://www.abookapart.com/products/design-is-a-job
[Javascript Koans]: https://github.com/mrdavidlaing/javascript-koans
[CodeSchool: JavaScript Best Practices]: https://www.codeschool.com/courses/javascript-best-practices
[Advanced JS Fundamentals by Mozilla Developer Network]: https://github.com/mdn/advanced-js-fundamentals-ck
[HTTP: The Protocol Every Web Developer Must Know - Part 1]: https://code.tutsplus.com/tutorials/http-the-protocol-every-web-developer-must-know-part-1--net-31177
[HTTP: The Protocol Every Web Developer Must Know - Part 2]: https://code.tutsplus.com/tutorials/http-the-protocol-every-web-developer-must-know-part-2--net-31155
[A cartoon intro to DNS over HTTPS by Lin Clark]: https://hacks.mozilla.org/2018/05/a-cartoon-intro-to-dns-over-https/
================================================
FILE: phases/3-project.md
================================================
[← Back to Index](../index.md)
# Phase 3 - *MVC Frameworks, Databases, and Personal Projects*
#### **Reading:**
* [Exceptional Ruby][], Advi Grimm
* [The Rails 3 Way][], Obie Fernandez
#### **Training:**
* Intro to Rails and MVC (Model View Controller)
* [CodeSchool: Rails for Zombies 1 (Redux)][]
* [CodeSchool: Rails for Zombies 2][]
* [CodeSchool: Rails Testing for Zombies][]
* [CodeSchool: Rails Patterns][]
* Set up a rails application environment from scratch *(this will be done multiple times and potentially with a variety of requirements)*.
* Intro to database models
* Create a to-do app
* Apprentice Project: Kick off
* Apprentice Project: Work
* Apprentice Project: Launch :rocket:
#### **Additional Resources:**
* [Agile Web Development With Rails][]
* [Crafting Rails Applications][]
* [Rails Recipes][]
* [Rails Test Prescriptions][]
* [Udacity Client-Server Communication][]
[Exceptional Ruby]: http://exceptionalruby.com/
[The Rails 3 Way]: http://www.smile.amazon.com/Rails-Edition-Addison-Wesley-Professional-Series/dp/0321601661
[CodeSchool: Rails for Zombies 1 (Redux)]: http://www.codeschool.com/courses/rails-for-zombies-redux
[CodeSchool: Rails for Zombies 2]: http://www.codeschool.com/courses/rails-for-zombies-2
[CodeSchool: Rails Testing for Zombies]: http://www.codeschool.com/courses/rails-testing-for-zombies
[CodeSchool: Rails Patterns]: https://www.codeschool.com/courses/rails-4-patterns
[Crafting Rails Applications]: http://pragprog.com/book/jvrails/crafting-rails-applications
[Rails Recipes]: http://pragprog.com/book/fr_rr/rails-recipes
[Rails Test Prescriptions]: http://pragprog.com/book/nrtest/rails-test-prescriptions
[Agile Web Development With Rails]: http://pragprog.com/book/rails4/agile-web-development-with-rails-4
[Udacity Client-Server Communication]: https://www.udacity.com/course/client-server-communication--ud897
================================================
FILE: projects/proj-browser-testing.md
================================================
### Browser Testing
At Sparkbox, we don't have [Quality Assurance](https://en.wikipedia.org/wiki/Quality_assurance#Software_development), so we usually do our own browser testing.
#### Gold Level Support
In these browsers, behavior & design are strong representations of design intent. A user is able to access all content and functionality as described.
macOS
- Safari 9+ (latest subversion)
- Chrome (latest version)
- Firefox (latest version)
Windows
- IE 11+
- Chrome (latest version)
- Firefox (latest version)
- Edge 16
Mobile
- Safari 9+
- Android 6+
- Samsung Browser (latest version)
- Chrome (latest version)
#### Silver Level Support
In these browsers, behavior & design are acceptable, but may not be as originally intended. A user is still able to access all content and functionality as described.
- IE 10 on Windows
- Android 5+
- Safari 7+
#### Bronze Level Support
In these browsers, behavior & design may not be great, but the content doesn't appear "broken" to the user, either. All content is accessible, and functionality is as described. Additional testing may be required during implementation.
- IE 9 on Windows
- Android 4.4+
- Safari 6+
================================================
FILE: projects/proj-event-cards.md
================================================
[← Back to Index](../index.md)
# Frontend Mini Project - Event Cards
## Week 1 - HTML
Think of a really cool event: a concert, art show, festival, play, performance, meet-up, or anything else one may wish to attend. We want to get the word out about this awesome thing, so we are going to build some "digital flyers," or event cards.
What sort of information would you want to know? How about:
- Title of event or Band name
- Picture of the band or location
- Location of the event
- When it is
- Link to the website of the band, festival, or where you can buy tickets
We want to build these cards with the following in mind:
- A "Card" is a small piece of a website, not usually the whole page. We'll probably want to put multiple cards on the final page.
- Put things in the order that makes the most sense for HTML.
- Research semantic tags for each item; it is unlikely you'll be using `<div>` very often, but you may decide that it's the best choice some places.
- Creating [accessible elements may require additional attributes](https://www.w3.org/WAI/standards-guidelines/wcag/).
- Inline comments are helpful for reminding yourself why you made a decision you made.
- Focus on semantically strong, accessible Markup. Styles will come later, and if you do them now, we'll probably completely ignore them anyway.
Next week we will spend 5 minutes or so going over the HTML choices each of you have made. Try to do this individually (not as a group). Please do take advantage of office hours or pairing with developers!
## Week 2 - CSS
This week, you've been given a single event card to style with _vanilla_ CSS. Using the HTML you've already written (and adapted where necessary), try to get as close to the design as possible by next Thursday!
I really encourage you this week to make time to pair with Frontend Designers, as well as the rest of the frontend-focused team members mentioned before. Another awesome resource is [MDN](https://developer.mozilla.org/en-US/).
Next week we will spend 5 minutes or so going over the CSS choices each of you have made. Try to do this individually and not as a group.
## Week 3 - Layout
In addition to the individual card improvements we've asked you to do, your next task is to create a grid layout with your event cards. This layout should be [responsive](https://responsivedesign.is/), developed with a [mobile first](https://vimeo.com/38187066) frame of mind, and all content should be browser tested to the specifications in our [browser testing documentation](projects/proj-browser-testing.md).
*Note*: This is a big ask. It's not fun. It won't be perfect. You don't have the full resources of a design team. Do the best you can, but don't burn out. If there is interest, we can do a 'bug bash' together, to learn about the device wall and [BrowserStack](https://www.browserstack.com/start).
If you want bonus points, find an open source svg icon library you like for later use.
*Note*: For this task, we can utilize Codepen's native features to link pens together.
To include the HTML from another pen, add the pen url, surrounded by three brackets.
```html
[[[https://<url to your event card>]]]
```
You will also need to link to your pen as an external css resource by going to *Settings -> CSS - > Add External Stylesheets/Pens* and adding the URL of your card.
## Week 4 - BEM + IMG
Your homework this week is comprised of a few smaller tasks.
#### BEM
From this point forward, you'll be expected to use BEM for any CSS and HTML you write. Fork your Grids and refactor all of your classes to use BEM. Then, pair with one of our BEM devs to review your *finished* BEM.
#### SVG or `srcset`
Spend some time playing with images or SVGs. Fork and update your event card to use either an SVG icon (Next to your address or phone number is nice, or whatever you like) OR update your images to use `srcset`.
#### Personal Websites
It's about the time in your apprenticeship when you should be looking to find a permanent web development role (if you are interested in that sort of thing). In your [career prep sessions](../phases/x-job-prep.md), you've hopefully developed skills to help you improve your marketability. Spend some time reworking or redoing your personal websites, cleaning up your git profiles, etc. We're here to help, so pair! Remember to take advantage of pairing time not only with developers, but also with our wonderful Project Management, Content, and Design teams.
## Week 5 - Sass
Homework this week is short! Refactor your cards into Sass (SCSS).
Pair with one of our Sass devs during the next week or so to go over it. (I recommend messaging them _today_). *Note*: CSS is fully functional and semantically correct SCSS!
================================================
FILE: projects/proj-more-git.md
================================================
[← Back to Index](../index.md)
# Project: More Git
1. Make a .dotfiles repository and store relevant dotfiles that you'll make changes to inside of that repository (e.g. .bash_profile, .bashrc, .gitconfig, .gitignore).
2. Write a script which creates symlinks for any dotfiles that you've moved from your home directory.
4. Add customizations to your dotfiles as you see fit.
5. Push dotfiles directory to GitHub.
Additional reading on [dotfiles](http://dotfiles.github.io).
================================================
FILE: projects/proj-sb-howto.md
================================================
[← Back to Index](../index.md)
# Project: Sparkbox How-to
1. Read Sparkbox's "how_to" repo of best practices: <https://github.com/sparkbox/how_to>
2. After reading, clone it to your personal account, and make an edit adding/changing content to reflect something you've heard/learned since being here that you don't see in the list
3. Submit a pull request for review
gitextract_t3atmn8s/
├── README.md
├── how.md
├── index.md
├── phases/
│ ├── 1-programming.md
│ ├── 2-frontend.md
│ └── 3-project.md
└── projects/
├── proj-browser-testing.md
├── proj-event-cards.md
├── proj-more-git.md
└── proj-sb-howto.md
Condensed preview — 10 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (26K chars).
[
{
"path": "README.md",
"chars": 2963,
"preview": "**Disclaimer:** *This guide is under construction. We are slowly translating our Sparkbox apprenticeship content into a "
},
{
"path": "how.md",
"chars": 2099,
"preview": "[← Back to README](/README.md)\n\nThe Sparkbox Apprenticeship is comprised of a [curriculum](/index.md) supplemented by a "
},
{
"path": "index.md",
"chars": 1604,
"preview": "[← Back to README](/README.md)\n\nThe Sparkbox Apprenticeship is loosely separated into three phases. Completing a phase p"
},
{
"path": "phases/1-programming.md",
"chars": 4900,
"preview": "[← Back to Index](../index.md)\n\n# Phase 1 - *Source Control and Programming Basics*\n\n#### **Reading:**\nRead these books "
},
{
"path": "phases/2-frontend.md",
"chars": 4661,
"preview": "[← Back to Index](../index.md)\n\n# Phase 2 - *Frontend Development: Markup, Style, Interaction, and Preprocessing*\n\n#### "
},
{
"path": "phases/3-project.md",
"chars": 1882,
"preview": "[← Back to Index](../index.md)\n\n# Phase 3 - *MVC Frameworks, Databases, and Personal Projects*\n\n#### **Reading:**\n\n* [Ex"
},
{
"path": "projects/proj-browser-testing.md",
"chars": 1172,
"preview": "### Browser Testing\n\nAt Sparkbox, we don't have [Quality Assurance](https://en.wikipedia.org/wiki/Quality_assurance#Soft"
},
{
"path": "projects/proj-event-cards.md",
"chars": 4725,
"preview": "[← Back to Index](../index.md)\n\n# Frontend Mini Project - Event Cards\n\n## Week 1 - HTML\n\nThink of a really cool event: a"
},
{
"path": "projects/proj-more-git.md",
"chars": 478,
"preview": "[← Back to Index](../index.md)\n\n# Project: More Git\n\n1. Make a .dotfiles repository and store relevant dotfiles that you"
},
{
"path": "projects/proj-sb-howto.md",
"chars": 368,
"preview": "[← Back to Index](../index.md)\n\n# Project: Sparkbox How-to\n\n1. Read Sparkbox's \"how_to\" repo of best practices: <https:/"
}
]
About this extraction
This page contains the full source code of the sparkbox/apprenticeships GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 10 files (24.3 KB), approximately 6.3k tokens. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.
Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.