GithubHelp home page GithubHelp logo

nscodernight's Introduction

NSCoderNight

Welcome to the GitHub repository for the NSCoderNight website.

Branches

The master branch is for the files that are fed in to the Middleman static site generator framework by our Travis CI continuous build system. If you clone this repository or create your own branch, do it off of here.

The gh-pages branch is for the results of the static generation, and contains only the files for the actual website. This branch should be left alone.

Adding or Editing a Chapter

If you want to add a new chapter, or edit an existing chapter, please clone this repository (if you're not a contributor) or create a branch (if you are) and submit a pull request.

Chapter Files

Chapter files are located in the top-level [chapters](chapters) folder on the master branch.

Each chapter has its own file, whose name is a lowercase version of the chapter name, with dashes instead of spaces. For example: "san-francisco.yaml" for the San Francisco branch. Dashes also convert to dashes, so Raleigh-Durham corresponds to "raleigh-durham.yaml".

Chapter File Format

Here is a sample chapter file, called my-city.yaml.
---
name: My City
organizers:
  - name: Valerie Davies
    twitter: v_davies
  - name: Elon Deforest
    website: http://www.eforest.com
twitter: MyCity
website: http://nscodernightmycity.com
meetings:
  - name: West End
    start_time: '19:00'
    location: |
        <a href="http://www.yelp.com/biz/west-end-cafe">West End Cafe</a>
        125 Westerly Road
  - name: East End
	day: Every Tuesday
    start_time: 7:00 p.m.
    end_time: 10:00 p.m.
    location: |
        <a href="http://www.yelp.com/biz/east-end-cafe">East End Cafe</a>
        521 Easterly Road
province: MN
country: USA

Each chapter file must start with three dashes follow by a return.

The name field is required and, as described above, must correspond to the filename.

The organizers field describes the one or more organizers of your chapter. If there is no organizer, leave out the organizers field entirely.

Each organizer should have a name field and may have twitter, website, email, and phone fields. The Twitter, website, and email fields are turned into links. Email is not currently obfuscated in any way. Put each of these fields on their own line after the organizers line, indented 4 spaces. For the first field of an organizer, the third space should instead be a dash.

You can have as many organizers as you want, and they will be listed in the order they appear in this file.

The twitter and website fields are for the chapter as a whole, and are optional. If you have more than one URL for the chapter, you can instead use the websites field, like so:

websites:
	- http://website1.com
	- http://website2.org
	- http://website3.io

The meetings field describes the one or more meetings of your chapter, is, just like the organizers field describes multiple organizers. The format is the same.

The meeting name name field is optional. Don't use if your chapter has only one meeting; instead, use it to distinguish between multiple meetings.

The meeting day field is optional, but if it is missing, the text "Every Tuesday" will be used.

The meeting start_time and end_time fields are optional. If both are missing, "7:00 p.m." and "10:00 p.m." are used, respectively, for your meeting time.

If start_time is present but end_time is missing, then only the beginning time of your meeting will be displayed.

Also note, due to a peculiarity of our build system, if you use a time without a trailing "a.m." or "p.m.", such 19:00, you will need to put that text in single quotes or it will not be displayed incorrectly.

The meeting location field is the only multi-line value. The first line of such a multi-line value must be just a pipe character (|). Subsequent lines must be indented four more spaces.

Also by custom, the first line is the name of the establishment used for the meeting, and is a link to the location, either the establishment's website, or a Google maps link to the address. Subsequent lines are the rest of the address. You can leave off city and state if it's the same as the chapter.

The province and country fields are the geographical information for the chapter. Country is required and is used for the chapter categories in the chapter list. Therefore, please be consistent and use the same country name as other existing chapters, such as "USA". Province should only be included for the United States or other countries where there are many chapters. For the United States, it should be the two-letter state code.

Please look at the existing chapter files for reference. Feel free to email us or open a GitHub issue if you have any questions.

nscodernight's People

Contributors

alextall avatar ameliaboli avatar apontious avatar apontious-gl avatar armadsen avatar atomicbird avatar bewebste avatar bobspryn avatar cmkilger avatar mcritz avatar mrh-is avatar nscodernight avatar seanwolter avatar segiddins avatar yangmeyer avatar zeveisenberg avatar

Stargazers

 avatar

Watchers

 avatar  avatar

nscodernight's Issues

Add support for chapter arrays

I'd like to refactor the chapter information to allow for certain properties of a chapter to be arrays rather than single entries.

organizer: I'd like there to be an "organizers" array, with each element in the array being its own dictionary with "name", "twitter", and "website" keys.

meeting: I'd like there to be a "meeting" array, with each element in the array being its own dictionary with the following keys: "name", "day", "_meeting_time", and "location".

If you can change one or two sample chapters as needed to show what that format would look like, and enough logic code in the various templates to give me a good start on implementing the UI to handle it, I'd appreciate it.

SCSS needs refactoring

SCSS is more convoluted than necessary. modules should be single-purpose, readable, and decoupled.

Add inactive chapters?

I know of several chapters that used to exist but are currently on hiatus.

It might be nice to be able to represent that data on the website, perhaps as chapters in the list with a line through them.

Other people looking for a chapter in that city will no that one existed and where it met, and might be able to restart them.

Some inactive chapters AFAIK:

http://www.meetup.com/NSCoder-Night-Pasadena/
https://twitter.com/nsschaumburg
Houston: https://twitter.com/althefierce/status/604131729691926531

I don't consider this to be a high priority, but it would be nice.

Add automatic mapping of meeting locations

Instead of requiring the people who create the individual chapter entries to add their own mapping links to their meetings, we could try to take the address information and automatically generate a link to Google Maps or similar.

And if we have that information, we could show a worldwide map like http://cocoaheads.org does.

This is not a top priority, more of a nice to have. (And maybe we should wait till we get more chapters.)

Add old blog posts from Chris Hanson

I downloaded all the Chris Hanson blog posts before I replaced the old website contents with my own.

For historical reasons, I'd love to bring their content over to the new website., possibly even including the comments.

This is not a high priority, however.

Font is small and hard to read on phone.

"@apontious looks good! Although the font is kinda tiny on my phone. Reader view is great for blog but not there for location list?"

https://twitter.com/feorlen/status/607776617218187264

Per this website:

https://mathiasbynens.be/notes/safari-reader

the Safari Reader feature is enabled when Safari determines that the page's text is content-y enough to need the Reader feature. It's not something the site owner can turn on and turn off. And if the text is too list-y and doesn't have enough paragraphs of text, it won't turn on. Meaning it won't turn on for the Chapters list, or even individual chapter pages, which are much more like a list than like blog article.

What can we do?

I'd prefer not to increase the font size for smaller screen sizes. I think the size is already pretty big for computer screens. So I guess if I did decide to increase/lower sizes, I'd increase it for small screen sizes and decrease it for larger ones. But I'm still not sure what I'm going to do yet.

Localization

I would like to be able to display the website in Spanish as well as English, given the number of chapters in Spanish-speaking countries.

I would like to do this without making a lot of copied page files in our repository, such that any format change in the website has to be cut-and-pasted across multiple versions of the same file.

But the Middleman templates we use intersperse actual user-facing text content with formatting elements.

This page appears to describe how to make localizations work in Middleman:

https://middlemanapp.com/advanced/localization/

Looks doable.

Two major steps:

(1) Get Spanish text for all the English language text that's currently on the site, preferably including the blog posts. I believe I have at least one volunteer for this. Bonus points for a credible translation of "Socialize While You Serialize" :)
(2) Add infrastructure support for other languages.

Place chapter files by country/province

Currently, chapter files are named exactly according to their city, and are all in a single location.

This hasn't broken down yet, but will when we have chapters for, for example, two or more of the many cities in the U.S. named "Rochester" or "Paris". We won't be able to name them both rochester.yaml, because they'll conflict.

Given that we have a relatively low number of chapters at the moment, it's not a pressing need. But it'll be better to do this before we actually need it.

Add Code of Conduct information

I'd like to add Code of Conduct information to the nscodernight.com website.

Difficulties:

  • I don't know much about CoCs myself, though this one https://us.pycon.org/2015/about/code-of-conduct/ has been used by people I trust. I'd have to learn more about it.
  • The website is really just a website. No power to enforce a CoC. I think a good approach would be to publicize that the chapter I do directly organize, the NSCoderNight in San Francisco, and encourage others to also adopt it.
  • Even if the two previous difficulties are met, we're not a conference, we're an informal meeting in a coffee shop/etc. Even if we conduct ourselves a certain way, we can't control the rest of the nearby patrons. So that's something to consider.

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.