Giter VIP home page Giter VIP logo

installfest's People

Contributors

bmaddy avatar brian-dawn avatar crkoehnen avatar elenam avatar ellipsoid avatar futuro avatar gdallen avatar meta-meta avatar peterschwarz avatar skoestler avatar tcushman avatar tmarble avatar

Stargazers

 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

installfest's Issues

Prepare a 15 minute intro to programming

The purpose of this talk is answer the questions...

  • What is programming? (will use a cooking example)
  • What is functional programming?
  • What is open source software?
  • Why Clojure?

Ideally this is a verbal roadmap to the workshop much as the #25 diagram is a visual roadmap.

This talk should lead into

  • prepare a 15 minute intro to git #23
  • possibly resolve Add intro to clojure syntax #12

Who can bring backup laptops?

Please comment here if you can bring a backup laptop.

If possible add:

  • CPU, RAM specs
  • OS and version
  • Did you install all the things yet?

Prepare a 15 minute intro to git

We've observed that students struggle with git.

It's worth spending 15 minutes at the top of the workshop to explain the basic concepts of git -- what and why we're using git (and why it's cool to collaborate on github).

The goal of this ticket is to prepare a presentation (slides?) and be ready to give it ClojureBridge.

We can point to conventional docs like:
https://git-scm.com/doc

And new edgy docs like:
http://ohshitgit.com/

Review ssh and github user account setup

In our TA meeting folks agreed it is a good thing for students to setup a real github account and ssh-key. IIRC heroku makes a passwordless ssh-key by default (maybe that's ok?) We'll still need instructions on adding that to github settings (i.e. where in the heck is

The older docs are here:
https://github.com/clojurebridge-minneapolis/installfest/blob/experimental/docs/setup_new_ssh.md
https://github.com/clojurebridge-minneapolis/installfest/blob/experimental/docs/setup_new_github.md

Update and streamline installfest docs

The goal of this ticket is to end up with an updated docs/setup.md which is short, sweet and accurate.

As such this is sort of a META ticket as it will be the culmination of closing a bunch of other issues.
However we can and should document ideas, plans, etc. here in the comments.

At a minimum we should at what we have, what is in the "experimental" version:
https://github.com/clojurebridge-minneapolis/installfest/blob/experimental/docs/setup_new.md

As well is see how Austin has forked our stuff (and yes, we want to collaborate with them and
eventually push our new stuff upstream to ClojureBridge globally).
https://github.com/AustinClojure/workshop-docs

Review/harmonize navigation

At the meeting futuro was talking about readthedocs.. but I'm afraid that will be a huge pain to keep updated. Let's try to just use markdown for now.

The goal of this ticket is to ensure all of our pages have somewhat sane and recognizable navigation links. The basic idea is PREV, TOP, NEXT sort of like:
https://github.com/clojurebridge-minneapolis/installfest/blob/experimental/docs/setup_new_github.md

But consistently on the top (and/or) bottom of the page.. and, ideally, on one line... maybe using unicode arrow characters?
http://www.fileformat.info/info/unicode/category/So/list.htm

This prolly should be done AFTER #8 is resolved

fork/pair down koans

After running through the koans a couple times myself and a couple TAs were discussing cutting out symbols/quotes/lists/sets and some of the redundant koans.

This would leave us more time to spend on other T2 projects.

FUTURE: Parking lot for next steps

Comment here on how we could make ClojureBridge better.

We already have ideas on

  • Deploying on Raspberry Pi 3 (ideally with native Debian and OpenJDK)
  • Running our examples in the "cloud"
  • Running our examples from a LiveCD

Review ReadTheDocs and merge old and new setup docs

Overview

To really leverage the benefits of ReadTheDocs (or just compiling the documentation with Sphinx and hosting it somewhere else) we need merge the old setup documentation with the new setup documentation, and decide how we want to structure it all.

Major differences

The old documentation collects the steps based on OS whereas the new documentation collects the steps by what's actually going on. For example, the steps for setting up Heroku in the old docs exist in three places, one per OS, and in one place in the new documentation.

The old documentation is currently more complete, though somewhat out-dated -- it includes steps for installing Lightable, f.e. -- and it includes lots of pictures, which potentially reduces our work load.

My thoughts

Now that we have the ability to have a sidebar which gives us the context and overview of the steps we need to take, I think the old documentation makes more sense. From the perspective of a student, when I'm trying to figure out how to get everything set up for my OS I don't have to filter what I'm reading based on my OS, instead I'm able to read straight through the docs.

The downside of this approach is that potentially we have to replicate information, which is bad, but the installation paths are so different for each OS that we'd end up having slightly different instructions for each step anyways. Like, "Install Git" is completely different on each OS, so there's no overlapping instructions there.

Dogfood Track 1

The goal of this ticket is to walk through Track 1 like a student and ensure things are up-to-date and easy to understand.

Should we keep git branching?

File issues in Track 1 repo as needed

Nesting markdown in block quotes gives recommonmark trouble

From Page_5_More_code_changes.md in docs/track1/, line 518, the following snippet causes recommonmark to barf

> #### conj
> There are many ways to work with collections of values in Clojure.  One commonly used function is `conj`. The name is short for "conjoin". This function takes a collection and one or more item(s) to add to the collection. It then returns a _new_ collection without modifying the original collection.
>
> ```clojure
> (conj [:one :two] :three)
> => [:one :two :three]
>
> (conj [:one :two :three] :four :five)
> => [:one :two :three :four :five]
> ```

The error is

# Sphinx version: 1.4.8
# Python version: 3.5.2 (CPython)
# Docutils version: 0.12 release
# Jinja2 version: 2.8
# Last messages:
#   reading sources... [ 58%] setup_osx
#   reading sources... [ 62%] setup_ubuntu
#   reading sources... [ 65%] setup_win7
#   reading sources... [ 68%] setup_win8
#   reading sources... [ 72%] track1
#   reading sources... [ 75%] track1/Page_1_Intro_TOC
#   reading sources... [ 79%] track1/Page_2_Big_Picture
#   reading sources... [ 82%] track1/Page_3_Start_project
#   reading sources... [ 86%] track1/Page_4_Change_code
#   reading sources... [ 89%] track1/Page_5_More_code_changes
# Loaded extensions:
#   alabaster (0.7.9) from /home/user/.virt-envs/installfest/lib/python3.5/site-packages/alabaster/__init__.py
Traceback (most recent call last):
  File "/home/user/.virt-envs/installfest/lib/python3.5/site-packages/sphinx/cmdline.py", line 244, in main
    app.build(opts.force_all, filenames)
  File "/home/user/.virt-envs/installfest/lib/python3.5/site-packages/sphinx/application.py", line 297, in build
    self.builder.build_update()
  File "/home/user/.virt-envs/installfest/lib/python3.5/site-packages/sphinx/builders/__init__.py", line 251, in build_update
    'out of date' % len(to_build))
  File "/home/user/.virt-envs/installfest/lib/python3.5/site-packages/sphinx/builders/__init__.py", line 265, in build
    self.doctreedir, self.app))
  File "/home/user/.virt-envs/installfest/lib/python3.5/site-packages/sphinx/environment.py", line 569, in update
    self._read_serial(docnames, app)
  File "/home/user/.virt-envs/installfest/lib/python3.5/site-packages/sphinx/environment.py", line 589, in _read_serial
    self.read_doc(docname, app)
  File "/home/user/.virt-envs/installfest/lib/python3.5/site-packages/sphinx/environment.py", line 742, in read_doc
    pub.publish()
  File "/home/user/.virt-envs/installfest/lib/python3.5/site-packages/docutils/core.py", line 217, in publish
    self.settings)
  File "/home/user/.virt-envs/installfest/lib/python3.5/site-packages/sphinx/io.py", line 49, in read
    self.parse()
  File "/home/user/.virt-envs/installfest/lib/python3.5/site-packages/docutils/readers/__init__.py", line 78, in parse
    self.parser.parse(self.input, document)
  File "/home/user/.virt-envs/installfest/lib/python3.5/site-packages/recommonmark/parser.py", line 87, in parse
    self.convert_block(ast)
  File "/home/user/.virt-envs/installfest/lib/python3.5/site-packages/recommonmark/parser.py", line 49, in convert_block
    self.convert_blocks(block.children)
  File "/home/user/.virt-envs/installfest/lib/python3.5/site-packages/recommonmark/parser.py", line 45, in convert_blocks
    self.convert_block(block)
  File "/home/user/.virt-envs/installfest/lib/python3.5/site-packages/recommonmark/parser.py", line 55, in convert_block
    self.blockquote(block)
  File "/home/user/.virt-envs/installfest/lib/python3.5/site-packages/recommonmark/parser.py", line 139, in blockquote
    self.convert_blocks(block.children)
  File "/home/user/.virt-envs/installfest/lib/python3.5/site-packages/recommonmark/parser.py", line 45, in convert_blocks
    self.convert_block(block)
  File "/home/user/.virt-envs/installfest/lib/python3.5/site-packages/recommonmark/parser.py", line 51, in convert_block
    self.section(block)
  File "/home/user/.virt-envs/installfest/lib/python3.5/site-packages/recommonmark/parser.py", line 110, in section
    self.current_node.document.note_implicit_target(new_section, new_section)
AttributeError: 'NoneType' object has no attribute 'note_implicit_target'

I'm looking into whether we can maintain the current markdown and get this fixed upstream.

Consider adding ClojureScript to Track 2

Track 1 gets to make an app and put it on the internet.

Track 2 goes deep into Clojure idioms (via koans) and demonstrates concurrency (for those that are interested in The Chat Returns )

Maybe we should add a tutorial (say 1 hour)? on getting a first exposure to ClojureScript?
One idea might be to basically use figwheel to recreate the flappy bird demo:

We can also draw from:

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.