Giter VIP home page Giter VIP logo

teach.github.com's Introduction

We've Moved

The teach.github.com GitHub and Git materials have moved to training.github.com. All of our open source education is now easier to discover all in one location.

Contributions

All commits within this repository were preserved during the move and maintain attribution for our wonderful community's contribution to the repo.

Getting Involved

If you have something to offer, head over to the repository to open an Issue or create a Pull Request.

teach.github.com's People

Contributors

aalbagarcia avatar acusti avatar afeld avatar anaisbetts avatar barrbrain avatar benbalter avatar bootstraponline avatar brntbeer avatar davelab6 avatar devkmsg avatar devnulled avatar githubteacher avatar grdryn avatar jasoncostello avatar johndbritton avatar jordanmccullough avatar jroll avatar karthik avatar lornajane avatar mgriffin avatar pborreli avatar peterbell avatar pwaller avatar randomecho avatar robinsloan avatar shayfrendt avatar tekkub avatar tlberglund avatar virtualandy avatar wfarr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

teach.github.com's Issues

Add slides for slimmed-down Foundations talk

The Foundations deck is well-suited for a half-day class on Git/GitHub, but I (and others) have been doing 40-ish minute versions of the same thing, where the full deck becomes a burden. Basically, a walk-though, without expecting that the attendees will be following along on their own machines.

I've created a branch that removes many of the configuration-related steps, but it could use some trimming within each chapter. The diagram-only deck (#220) serves this purpose somewhat, but I still like having the headings for each section ("Commits", "Branches", etc.)

The main technical issue is that I don't know how to make a new HydeSlide deck that only removes some of the content from each "chapter". If it makes sense for me to simply maintain a fork, that's fine too.

Also, it could probably use a different name... "Git and GitHub: The Whirlwind Tour"? "Up and Running"? "GitHub Init"?

/cc @ChrisLundquist @jordanmccullough

Internationalization?

Is there any plan to internationalize all the contents?

Will be great to make available this wonderful contents to anybody in the world.

Order logic on Class Notes list

Is there an order being used on the List of Class Notes display? Or is it just a quirk of the generator?

The first five on the list:

  • 2013-02-21 • GNM Private Advanced Class
  • 2013-01-10 • Online Git Advanced Class
  • 2012-10-31 • Git and GitHub Foundations Online
  • 2013-02-11 • GitHub Foundations
  • 2013-02-18 • Git and GitHub Foundations Online

The dates are a little all over the place.

Update Branding from "Teach" to "Teaching"

@jsncostello did a wonderful job of laterally updating GitHub:Teach to GitHub Teach with the new Apex font in #121. As a follow on tune-up, I'd like the phrase to read "GitHub Teaching" to fix with "GitHub Learning" and "GitHub Training".

@jsncostello Would it be possible to have you help us generate and swap the logo to "GitHub Teaching"?

Teaching Materials categories (Collapsing the Training sites into fewer properties)

When visiting the site looking for resources, I can't help feeling that the List separation isn't meaningful. For example, the difference between "List of Presentations" and "List of Slides" isn't clear.

I wonder if a tagging/filtering system might be more useful than these distinctions? http://teachyourselftocode.com/ is a good example of using tags to allow visitors to drill down to the type of resources they are looking for. The things I would want to filter on are:

  • Intended audience
    • Teachers vs. students
    • Experience level
  • Cost
  • Topic (Git, GitHub, etc.)
  • Format?
    • Slides, tutorial, scheduled class, etc.

Possible ImpressJS conversion problem

There's been a bunch of merging this afternoon (some of which I've done), and in testing another open PR, I noticed this on many pages:

image

The text speaks the truth. That file is now under _includes/hydeslides/revealjs/notes, and does not have an equivalent version under _includes/hydeslides/impressjs/. @jordanmccullough, are we missing an important merge?

Should we use {{page.title}} in layouts instead of having title as content

Currently we have #A Title For This Slide in a given .md file, but the title is also stored in the front matter as well.

If we used the variable of {{page.title}} instead of keeping it in the content, this would allow more flexibility of the {{content}} and where we place it. This is especially useful for changing content to work along side of examples.

How do I delete an issue?

I accidentally posted an issue twice, because when I submitted it the first time, I got a 404 page. How do I delete one of the issues?

Invalid filename characters (e.g. ?) stop contribs from Windows users

There are some slides in the following with question marks (?) in the filename:

  • presentations/_posts/api/
  • presentations/_posts/foundations/why-git-vcs

They look like they're part of the slide titles, which means it's tied there.

If you're on Windows and wanted to clone or pull the repo, you're going to see Git tell you you have some files that need deleting, which you can't stash, and probably don't want to commit.

This is only really an issue if you're working from Windows as the OS farts out when it sees these special characters.

Revise Presentations' Diagram Visual Style

Per @jglovier's suggestion for a flatter and more visually distinct way of showing the active diagram component.

This may require additional real-world projector tests to ensure contrast ratios are sufficient for the gray to appear in various viewing conditions.

screen shot 2013-09-23 at 12 55 55 pm

Two To Do sections in HydeSlides README

At the bottom of the README you have the following sections:

  • To Do
  • Theming
  • To Do

Is having two To Do sections deliberate? One is a bracket styled checkbox list, the other is a normal list.

List of topics on the homepage is too long and breaks the design.

That would be awesome, and preserve the UI's beautifully designed structure. A button under there that we can route to a view page that dynamically lists all topics would be super.

-Matthew


On Monday, September 17, 2012 at 8:43 AM, [email protected] wrote:

Hey guys!

So the Topics list on index.md is getting pretty heavy. Do you think we can limit that particular list to about 10 and then I can add a 'View All Topics' button beneath that can link to a page like topics.md? That'll give us a lot more room to make that list scannable without losing the blog or breaking the container.


cc: @ShepBook

"Version" and Data Storage Tree Diagram

The Foundations deck would benefit from a diagram showing a row-column structure of commit "versions" and how full copies of files are stored per commit.

screen shot 2013-11-19 at 9 24 23 am

Please switch away from the NC licensing

Please switch away from the NC licensing; it means I can't use these materials in training events, even ones where I'm not paid directly for the event but that are under my company branding. That's because CC says

You may not exercise any of the rights granted to You in Section 3 above in any manner that is primarily intended for or directed toward commercial advantage or private monetary compensation.

Running even zero price events with a company brand is 'commercial advantage'.

The homepage at http://teach.github.com/ says this license was chosen,

to aid schools, universities, user groups, hackathons, corporate lunch-and-learns and other educational outlets in teaching Git and GitHub

But many schools are for-profit businesses, many hackathons do private monetary compensation to organizers, and using these works in corporate lunch-and-learns is clearly for the 'commercial advantage' of the corporation.

Category for link to www.cursodegit.com

In http://www.cursodegit.com we organize Git and GitHub courses for freelance developers, companies and organizations in Spain. I would like to include a couple of sections with links and short descriptions of the courses we are organizing in the courses category, if you think they can be included there. If not, which category do you suggest?

Cheers,

Alfonso

Verbatim vs summarised chat transcripts in class notes

Of the class notes that do include a chat transcript, some are as-is dumps from the chat. Others are somewhat a collection of questions and answers, gathered like oatmeal and laid down onto the bowl in their pairings.

Is there a preference one way or the other on the format, if a transcript is included?

Does the transcript need to be a verbatim account of what was typed, or can it be an overview of the talking points and questions raised during the session?

Check content of "Git-ing away from SVN"

@virtualandy's written an excellent starting Gist at https://gist.github.com/3725230.

It relates to Issue #1 from @devnulled.


Git-ing away from SVN

If you like using Subversion, that's awesome. We won't fault you for it (a lot). If SVN isn't enough and you'd like to migrate to Git, we want to help you through it.

Maybe this starts with a few questions at work. Change is hard, even in software, and Git usually causes enough consternation that a few typical questions arise. We'll try to answer those, too.

Why switch

Also known as "What's the justification", the "Why" question is common in a well established team. You're already using something - maybe it works but gets corrupted every once in a while, or is hard to administer - and introducing Git is feared because the folks in charge are afraid it's only going to get worse. And someone has to appease the folks writing the checks, too.

We've seen this phrased the following ways (if you have any additional examples, submit a pull request).

Please provide justifications for the [using Git] (e.g. We should use XXX because..., and XXX is better than the others because ...)

Let's ask Git itself:

The Git feature that really makes it stand apart from nearly every other SCM out there is its branching model.

Git allows and encourages you to have multiple local branches that can be entirely independent of each other. The creation, merging, and deletion of those lines of development takes seconds.

In practical terms, branching may give your developers a stronger feeling of freedom. Create a branch, blow it away, merge it into master with the world's greatest feature, or submit a simple bug fix. It can all be done with branches and it's only a few clicks and key presses away. And you don't have to worry about being out of sync with the one golden master.

Notably, when you push to a remote repository, you do not have to push all of your branches. You can choose to share just one of your branches, a few of them, or all of them. This tends to free people to try new ideas without worrying about having to plan how and when they are going to merge it in or share it with others.

Git can 'free people' to be more productive, to experiment, to solve more problems. We like the sound of that.

MOAR Justifications

  1. Git is small and fast.
  2. Distributed version controls gives you lots of alternatives and workflow options. Not to mention multiple repositories, in case hard drives get lost or corrupted. Even though we all know that never happens.
  3. Free as in free. [Git uses a GPLv2 license], which gives you lots of options. And plenty of freedom. There are free to read books such as Pro Git, a massively popular and wonderful hosting solution in Github, tons of great resources and documentation and even free tools for using or hosting Git yourself.
  1.   Suggested workflows for use to use in the new system. (e.g. Managing multiple projects, managing and using common and third party libraries, and test data, simultaneously managing different development environments (Eclipse, Netbeans, Ant, etc), bringing code into classified environments, etc.
    

Possible systems to evaluate:
Git
Mercurial
Bazaar
Monotone
SVN (Must include how to ensure corruptions don’t happen; not just an early detection mechanism)
CVS
Perforce
ClearCase
Others….

References

Internal Hosting

We all wish we could use Github. If you're behind a firewall or in a restrictive environment, though, the public Internet site may not work.
Thankfully, Github offers an enterprise version that gives you the best of both worlds.

Here's a few other options:

  • one
  • two
  • three

Github the best place to share code with friends, co-workers, classmates, and complete strangers.

Training Material for GitHub Pages

Perhaps I just missed it, but would be awesome to see tutorials on how to use GitHub pages. Nothing crazy, but basic I have a markdown file, and I'd love for it to be displayed as pretty HTML sort of use cases.

Potential topics to cover:

  • How the URL structure works
  • How the gh-pages branch works
  • How to build a plain static site
  • How Jekyll / YML / Liquid works
    • Anything that you put in the gh-pages branch will be available (unless the folder starts with an underscore). This includes HTML, CSS, JSON, whatever.
    • Anything with YML front matter at the top will be run through Jekyll.
    • If you put within the YML front matter layout: default (or whatever) it will look for _layouts/default.html. _layouts/default.html can be anything you want, but should have {{ content }} someplace in it, which will be replaced with the content
    • You can make partials in the _includes folder. Just include them via {% include foo.html %}
    • Anything in the YML front matter can be used in the file at {{ page.foo }}
    • Anything in _config.yml can be used as {{ site.foo }}
    • Everything above is optional
  • How CNAMEs work

Again, perhaps it exists and I missed it, but would be awesome to have otherwise.

(cc @feomike)

Edit: Fleshed out Jekyll how to.

Slightly misleading information re. git-cherry-pick in Advanced slides

This is a bit of a nit pick, but @brntbeer said I should file it.

The GitHub Git Training Slides - Advanced linked to from the GitHub Training Slides page includes some misleading information related to cherry picking.

There's a slide with the following text:

> git cherry-pick a5b2ee
> Merge in just one commit (not an entire branch)

Using the word "merge" is a misnomer, because it implies that the SHA will not change (it will). I've found this causes confusion later on when folks try and compare two branches to see what needs to be merged, and the cherry-picked commit shows up.

It might be worth using the term "apply" instead of "merge", and explaining that this isn't actually merging.

It may also be worth talking about using 'git-merge --ours/--theirs` to resolve cherry-picking SHA change issue.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.