Giter Club home page Giter Club logo

chicagoapprenticeships's People

Contributors

davidwkaiser avatar dependabot[bot] avatar jmmastey avatar taylorod avatar villanuv avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

Forkers

villanuv taylorod

chicagoapprenticeships's Issues

stop parsing `apprenticeships.json` on every page load

I don't remember how to memoize data in Sinatra between requests, but right now we're reading from the filesystem every single time the page is loaded. That's... stupid. We'd get some performance increases by just memoizing this value.

Add some content pages

  • Inside "why apprenticeship" page?
  • What do most apprenticeships look like?
  • A page for folks coming from bootcamps
  • Link to individual apprenticeships (so you can share)
  • Move content from "junior, intern or apprentice" article?

provide a way to link directly to one apprenticeship

Since the http://chicagoapprenticeships site tends to have more concrete information about any given apprenticeship than the company's own hiring page, I'd like to be able to link people directly to a given apprenticeship.

A link might look something like http://chicagoapprenticeships.com/#launchpad, and when a user visited that link, that apprenticeship should be shown in a more focused way (not just alongside the other entries).

Questions / Concerns:

  1. How can users grab the link? This may need to come after #1 so we can provide a new button.
  2. Speaking of which, can we add some kind of social sharing button?
  3. What should the entry look like while "inflated"? A modal is probably the smartest answer to this question.
  4. Does it work cleanly on mobile?

convert apprenticeship tiles away from <a> elements

It's nice that they're large click targets right now, but at the same time that has been a huge limiting factor for putting further links into the apprentice data. Here's what I think:

  1. Convert the <a> elements to <div> elements. I haven't tried this yet, but I think I recall the code for the masonry library or the CSS being dependent on the element type, so this may either be trivial, or a shit-show.
  2. Add some new target for clicking. Either we could make the logos clickable, or we could add a button at the bottom of the cards. My concern with the latter is that the cards are already so tall.
  3. Fix the existing data so that links can be handled gracefully. It may be necessary to run the JSON through a markdown parser, as I'd strongly prefer not to store HTML directly in apprenticeships.json.

do some SEO

Use seomoz to assess the site and see where there's an opportunity to drive more traffic to the site. Although people tend to share the link themselves, it'd be nice to see it show up in search results under "chicago apprenticeship".

Known issues:

  • Need to combat broken links
  • Need to add some inner content pages (such as an explainer for why you should have an apprenticeship).
  • Need to double-check unfurling, and whether there are any deal-killers on Google's site tools.
  • The existing META tags are garbage.

figure out how to assess existing programs for quality

I've heard grumblings from employees that the Enova apprenticeship is starting to fall apart. Truth be told, I'm not sure how to tell whether a program is ongoing when the company

  1. Continues to advertise it because it's great for their image, but
  2. Sometimes drags their feet for an indeterminate amount of time

JellyVision had a program, but I can't tell if it's ongoing and add them, because Dan Rumney hasn't really been forthcoming with details.

What we need:

  1. Some external measure of quality that we can look at, such as Glassdoor or FairyGodBoss. Is there some way to meaningfully extract which companies are just frat-house offices full of dudebros? Or which are exploiting their apprentices?
  2. A hard line on the reasons to exclude a program.

Reassess which information is valuable about an apprenticeship

Having dug around people's apprenticeships a bit now, I think there may be a chance for some smarter arrangement of the dataset. For instance, everyone reports having a "mentor program", but I don't think this is meaningful feedback for learners.

What we need:

  1. Assess existing fields to see if they're usefully reported, or if there's another arrangement of the data that actually makes sense.
  2. Find new fields that might be useful. I need some feedback from apprentices or candidates on what turned them onto (or off of) a given program. The negative sides (no benefits, e.g.) are incredibly important, but will probably also require some smoothing over when discussing with apprenticeships that do poorly for their learners.
  3. What the hell do we do with application period? How do we instruct apprentices meaningfully on how to figure out if it's time to apply?

Note: We've already neglected to add some programs based on e.g. requiring a CS degree. Are there other disqualifiers?

outreach to non-Rails community

I'm positive that there are software apprenticeships outside the Rails community, but the dataset is incredibly anemic on that front. It's also true that the Rails community (at least for small companies) is biased towards Rails.

Still, who can we find inside the community to break into that space and either advertise to those folks, or at least unbury the ones who are already doing a program.

This is an incredibly non-actionable TODO :|

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.