├── design-resources.md ├── community-resources.md ├── backend-resources.md ├── README.md ├── mobile-resources.md ├── general-resources.md ├── frontend-resources.md └── career-resources.md /design-resources.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /community-resources.md: -------------------------------------------------------------------------------- 1 | # International Organizations 2 | [Women Who Code International](https://www.womenwhocode.com/) 3 | 4 | # Local Organizations 5 | [Women Who Code NY]( ) -------------------------------------------------------------------------------- /backend-resources.md: -------------------------------------------------------------------------------- 1 | #Back-End Resources 2 | 3 | ## Java 4 | - http://codingbat.com/java 5 | - http://coderbyte.com/ 6 | - https://www.udemy.com/java-tutorial/ 7 | 8 | ## Python 9 | - http://www.codecademy.com/en/tracks/python 10 | 11 | ## Ruby 12 | - Why's (Poignant) Guide to Ruby: http://mislav.uniqpath.com/poignant-guide/ 13 | - RubyMonk https://rubymonk.com 14 | - Mr. Neighborly's Humble Little Ruby Book: http://humblelittlerubybook.com/book/html/index.html 15 | - Learn Ruby The Hard Way: http://learnrubythehardway.org/book/ 16 | 17 | ## More Advanced Ruby 18 | - The Ruby Bits lessons on Code School: https://www.codeschool.com/paths/ruby 19 | 20 | ## Rails: 21 | - Michael Hartl's Rails Tutorial: https://www.railstutorial.org -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Resources 2 | 3 | This is a list of learning resources put together for [Women Who Code NYC](http://www.meetup.com/WomenWhoCodeNYC/). 4 | 5 | ## Sections 6 | 7 | ### [General Resources](general-resources.md) 8 | Anything that isn't specifically front-end, back-end, or mobile such as learning how to use Git, programming lessons for beginners, etc. 9 | 10 | ### [Front-end Resources](frontend-resources.md) 11 | Front-end is typically anything that users can see and interact with. Includes design and development and a combination of HTML, CSS, and JavaScript. 12 | 13 | ### [Back-end Resources](backend-resources.md) 14 | Usually consists of a server, application, and database. The back-end stores information on a server and usually consists of languages like PHP, Ruby, Python, etc. 15 | 16 | ### [Mobile Resources](mobile-resources.md) 17 | Pretty self-explanatory, these resources are for development on mobile devices. 18 | 19 | ### [Job Hunting Resources](job-hunting-resources.md) 20 | Resume tips, algorithms and data structures for interviewing, what CS interviews look like, why you should try OSS, networking. Good luck! 21 | 22 | ## Contributing 23 | 24 | There are tons of resources out there to learn how to code. If you find better resources or feel one on this list no longer makes sense just [make a pull request](https://www.atlassian.com/git/tutorials/making-a-pull-request)! -------------------------------------------------------------------------------- /mobile-resources.md: -------------------------------------------------------------------------------- 1 | #Mobile Resources 2 | 3 | 4 | **iOS** 5 | To develop iOS apps, you'll need Xcode: https://developer.apple.com/xcode/downloads/ 6 | 7 | Start Developing iOS Apps Today: 8 | https://developer.apple.com/library/ios/referencelibrary/GettingStarted/RoadMapiOS/index.html#//apple_ref/doc/uid/TP40011343 9 | 10 | * iOS: Swift 11 | 1. Video: Building Your First Swift App https://developer.apple.com/swift/blog/?id=16 12 | 2. Introduction to Swift language video from Apple WWDC 2014: https://www.youtube.com/watch?v=A0C6L4XmrZ or https://developer.apple.com/videos/wwdc/2014/?include=402#402 13 | 3. Intermediate Swift video from Apple WWDC 2014: https://www.youtube.com/watch?v=W1s9ZjDkSN0 or https://developer.apple.com/videos/wwdc/2014/?include=403#403 14 | 4. Advanced Swift video from Apple WWDC 2014: https://www.youtube.com/watch?v=g44U1937o0g or https://developer.apple.com/videos/wwdc/2014/?include=404#404 15 | 5. Team Treehouse: https://teamtreehouse.com/tracks/ios-development-with-swift 16 | 17 | 18 | *iOS: Objective-C 19 | 20 | 1. Developing iOS 7 Apps for iPhone and iPad by Stanford: https://itunes.apple.com/us/course/developing-ios-7-apps-for/id733644550 21 | 2. Flatiron iOS pre-work: https://learn.co/join/ios-prework 22 | 3. Try Objective-C by Code School: https://www.codeschool.com/courses/try-objective-c 23 | 4. Objective-C Programming: The Big Nerd Ranch Guide (2nd Edition): http://www.amazon.com/Objective-C-Programming-Ranch-Guide-Guides/dp/032194206X/ref=sr_1_1?s=books&ie=UTF8&qid=1440459142&sr=1-1&keywords=objective+c&pebp=1440459145149&perid=0AX7W4FGDD464TBJAAYZ 24 | 5. iOS Programming: The Big Nerd Ranch Guide (4th Edition): http://www.amazon.com/iOS-Programming-Ranch-Edition-Guides/dp/0321942051 25 | 6. Team Treehouse: http://teamtreehouse.com/tracks/ios-development-with-objectivec 26 | 27 | 28 | 29 | --- 30 | 31 | **Android** 32 | To develop Android apps, you'll need Android Studio: https://developer.android.com/sdk/index.html 33 | 34 | 1. Google's "Getting Started" guide for Android Developers: https://developer.android.com/training/index.html 35 | 2. Udacity's Android Development for Beginners* (assumes no prior programming knowledge): https://www.udacity.com/course/android-development-for-beginners--ud837 36 | 3. Udacity's Developing Android Apps* (assumes at least 1 year of Object-Oriented programming experience): https://www.udacity.com/course/developing-android-apps--ud853 37 | 4. Team Treehouse Android Track: https://teamtreehouse.com/tracks/android-development 38 | 5. compile ‘android:best:1.1.1’(curated list of Android resources): https://medium.com/android-news/compile-android-best-1-0-0-5f8b470d0ad9#.p9xn5b6h1 39 | 6. AndroidWeekly (newsletter): http://androidweekly.net/ 40 | 41 | *Udacity course materials can be accessed for free without paying to enroll in the course. 42 | 43 | 44 | -------------------------------------------------------------------------------- /general-resources.md: -------------------------------------------------------------------------------- 1 | # General Resources 2 | 3 | Here are resources for coding-related tools and language-independent resources. 4 | 5 | ## Development 101 6 | - **Computer Science** 7 | - **[Computer Science 101](https://www.coursera.org/course/cs101) (Coursera)** - teaches the essential ideas of Computer Science for a zero-prior-experience audience. Introduces necessary jargon and explains computer terminology you'll need to know in order to program. 8 | 9 | - **Command Line** 10 | - **[Codecademy: Learn the Command Line](https://www.codecademy.com/en/courses/learn-the-command-line) - in browser instruction on learning Command Line/Teriminal 11 | - **Book: [Command Line Crash Course](http://cli.learncodethehardway.org/book/)** - teaches you the basics of command line, what it is and what commands you'll need. 12 | 13 | - **Linux Administration** 14 | - **[Introduction to Linux](https://www.edx.org/course/linuxfoundationx/linuxfoundationx-lfs101x-2-introduction-5386#.VFgiEvTF8ww) (edX)** - "Develop a good working knowledge of Linux using both the graphical interface and command line, covering the major Linux distribution families." 15 | 16 | ## Version Control 17 | - **Git** 18 | - **[Try Git](https://try.github.io/levels/1/challenges/1) (Code School)** - a 15 minute challenge that teaches you the basics of Git via in-browser command line. 19 | - **[Git-it](https://github.com/jlord/git-it) (jlord)** - A workshopper module for learning Git and GitHub. 20 | - **[Learn Git Branching](pcottle.github.io/learnGitBranching/) (pcottle)** - An interactive visual tutorial to learn & understand git by completing small challenges. Covers beginner through advanced techniques. Great for programmers of all levels! 21 | - **[WWCodeNYC GitGuide](https://github.com/WomenWhoCodeNYC/Algorithms/blob/master/gitGuide.md#gitguide) (sarahzinger)** - sarahzinger's step by step guide to forking, cloning, and making a pull request! Developed for the WWCodeNYC Algorithms Meetup. 22 | - **Video: [Git & GitHub](https://www.udacity.com/course/how-to-use-git-and-github--ud775) (Udacity)** - a super in-depth course on how to use command line Git and collaborating via GitHub. A little long, but visually teaches the concepts behind Git and GitHub step-by-step. 23 | - **Video: [Git For Ages 4 And Up]( http://www.youtube.com/watch?v=1ffBJ4sVUb4&t=6m45s) (YouTube)** - A very in-depth presentation that uses Tinkertoys to show what happens internally when you use the various Git commands. (May be a bit obtuse for beginners) 24 | 25 | ## **Open Source** 26 | - **Guides to Getting Started** 27 | - **[Getting Into Open Source for the First Time](http://www.nearform.com/nodecrunch/first-time-with-open-source/) (Dean McDonnell)** 28 | 29 | - **Find a Project** 30 | - **[OS4W](https://www.os4w.org/)** - a resource for connecting women to open source projects that welcome diversity in their contributors and have robust codes of conduct. Filter projects according to language or find a mentor or programming partner. 31 | - **[Hacktoberfest](https://hacktoberfest.digitalocean.com/) (DigitalOcean)** - a list of open source projects collected by DigitalOcean for their annual Hacktoberfest challenge. Projects marked by language. 32 | - **[Explore GitHub](https://github.com/explore) (GitHub)** - explore projects on GitHub. Scroll down and select "Trending repositoties" to see a list of trending open source projects in the GitHub community. 33 | - **[OpenHatch](https://openhatch.org/)** - a nonprofit dedicated to matching open source contributors with communities, projects, and education. 34 | - **[Code Montage](https://www.codemontage.com/)** - a nonprofit dedicated to empowering coders to improve their impact on the world and finding open source projects they care about. 35 | 36 | 37 | ## **Code Challenges, Practice, and Technical Interviews** 38 | - **[Typing.io](https://typing.io/)** - a typing tutor/trainer for programmers in JavaScript, Ruby, C, C++, Java, PHP, Perl, Haskell, Scala, and more. 39 | - **[Exercism.io](http://exercism.io)** - practice problems for learning to code with real world feedback from other people on the same assignments. 40 | - **[Code Wars](http://www.codewars.com)** - practice coding through challenges. 41 | - **[HackerRank](https://www.hackerrank.com/)** - practice coding challenges. 42 | - **[Project Euler](https://projecteuler.net/)** - "a series of challenging mathematical/computer programming problems that will require more than just mathematical insights to solve." 43 | - **[coderbyte](https://coderbyte.com/)** - "a web application built to help people practice their programming skills. The challenges range in difficulty and they can all be completed straight through our online application." 44 | - **[Programmer Interview](http://www.programmerinterview.com/)** - "helps programmers successfully prepare for technical interviews." 45 | - **[Interview Cake](https://www.interviewcake.com/)** - "a study tool that preps software engineering candidates for coding interviews." 46 | - **[CodinGame](https://www.codingame.com/home)** - "a coding platform where software developers from around the world can learn, improve and compete through fun online programming games." 47 | 48 | ## **Phone a Friend** 49 | - **[Code Buddies](http://hangouts.codebuddies.org)** - remote peer-to-peer organized study hangouts. Screensharing/sometimes-audio; no video sharing. 50 | 51 | ## **Resources Compiled by Others** 52 | - **[Free Programming Books: A List](https://github.com/vhf/free-programming-books)** 53 | - **[Code Newbie](http://www.codenewbie.org/learn)** - a list of sites and bootcamps that can help you learn. 54 | -------------------------------------------------------------------------------- /frontend-resources.md: -------------------------------------------------------------------------------- 1 | # Front-End Resources 2 | 3 | Join Women Who Code NYC for a [Front-end Study Group](http://www.meetup.com/WomenWhoCodeNYC/) meetup! 4 | 5 | If you're just starting off, learn HTML and CSS first - you'll need to be comfortable with both when you get to JavaScript. All resources are free unless otherwise specified. 6 | 7 | 8 | ## HTML & CSS 9 | 10 | - **For Beginners** 11 | - **[HTML & CSS](http://codecademy.com/tracks/web) (Codecademy)** - a great intro to HTML and CSS fundamentals, has exercises that work right in your browser. 12 | - **[Dash](https://dash.generalassemb.ly/) (General Assembly)** - similar to Codecademy, but project-based and takes you through HTML, CSS, and JavaScript - all in your browser. 13 | - **Video: [Intro to HTML/CSS: Making Webpages](https://www.khanacademy.org/computing/computer-programming/html-css) (Khan Academy)** - in-browser exercises. No sign-up required. 14 | - **Book: [Learn to Code HTML & CSS](http://learn.shayhowe.com/html-css/) (Shay Howe)** - online book that covers concepts in-depth while building a project/website. Covers the box model, positioning content, lists, media, forms, and more. 15 | 16 | - **Intermediate and Advanced Topics** 17 | - **[Learn CSS Layout](http://learnlayout.com/) (Learn Layout)** - all about layouts using CSS, has tons of helpful visual examples. 18 | - **[Visual Guide to CSS3 Flexbox](https://scotch.io/tutorials/a-visual-guide-to-css3-flexbox-properties) (scotch.io)** - current (as of Aug. 2015) flexbox properties. Also has a flexbox builder. 19 | - **Video: [Responsive Web Design Fundamentals](https://www.udacity.com/course/responsive-web-design-fundamentals--ud893) (Udacity)** - most exercises will be completed locally on your own computer. Create your own responsive web page that works well on any device. 20 | - **Video: [Responsive Images](https://www.udacity.com/course/responsive-images--ud882) (Udacity)** - local exercises. Learn how to work with images on the modern web, so that your images look great and load quickly on any device. 21 | 22 | - **Preprocessors** - help you write more powerful and organized CSS 23 | - **[How to Choose the Right CSS Preprocessor](http://blog.teamtreehouse.com/how-to-choose-the-right-css-preprocessor) (Team Treehouse)** 24 | - **[Sass](http://sass-lang.com/)** 25 | - **[The Sass Way](http://thesassway.com/)** - blog and site with useful Sass tricks and tutorials. 26 | - **[Less](http://lesscss.org/)** 27 | - **[Stylus](https://learnboost.github.io/stylus/)** 28 | 29 | - **HTML & CSS Frameworks** - great for creating functional prototypes or building pages quickly. 30 | - **[Bootstrap vs. Foundation](http://blog.teamtreehouse.com/use-bootstrap-or-foundation) (Team Treehouse)** - a quick article about the 2 most popular frameworks and which you should use. 31 | - **[Bootstrap](http://getbootstrap.com/)** 32 | - **[Foundation](http://foundation.zurb.com/)** 33 | 34 | 35 | ## JavaScript 36 | 37 | - **Vanilla JavaScript** 38 | - **[JavaScript Road Trip](https://www.codeschool.com/paths/javascript) (Code School)** - breaks down JavaScript and starts at the beginning for non-programmers (vars, data types, etc.). *`Requires subscription` after part 1, but it's a great intro if you've never done any programming before. 39 | - **[JavaScript Basics](http://teamtreehouse.com/library/javascript-basics) (Team Treehouse)** - Treehouse has tons of JavaScript courses from basics, to OOP, to jQuery, AJAX, Ember, etc. *`Requires subscription` or sign up for free with a [Queens Library](https://teamtreehouse.com/gateways/queens_library/signup) (QL card requires NYS address, not just Queens addresses) 40 | - **[Dash](https://dash.generalassemb.ly/) (General Assembly)** - see HTML/CSS section. 41 | - **Book: [Eloquent JavaScript](http://eloquentjavascript.net/) (Marijn Haverbeke)** - online book, step-by-step introductions to basic JavaScript. One of the most frequently recommended books for JavaScript. 42 | - **Project: [JavaScript and CSS3 Calculator](http://thecodeplayer.com/walkthrough/javascript-css3-calculator) (CodePlayer)** - watch this to see how to make a calculator from start to finish. 43 | - **Project: [Integer to Roman Numberals](http://learnstreet.com/cg/simple/project/integer_roman-javascript)** 44 | 45 | - **JavaScript Frameworks** 46 | - **[Learning JavaScript Design Patterns](http://addyosmani.com/resources/essentialjsdesignpatterns/book/)** - for advanced framework projects 47 | 48 | - **[jQuery](https://jquery.com/)** 49 | - **[jQuery](http://www.codecademy.com/tracks/jquery) (Codecademy)** - breaks down jQuery basics into understandable parts, works in-browser 50 | - **Video: [Try jQuery](http://try.jquery.com/) (Code School)** - some overlap with Codecademy but covers more topics like searching and traversing the DOM. 51 | 52 | - **[Angular](https://angularjs.org/)** 53 | - **Project: [PhoneCat Tutorial App](https://docs.angularjs.org/tutorial/) (AngularJS)** - official Angular tutorial, walks you through the construction of an Angular JS web app. 54 | - **[Learn Angular JS](https://www.codecademy.com/en/courses/learn-angularjs) (Codecademy)** - works in your browser, builds web apps using Angular JS 1.x. 55 | - **[Angular JS-Learning](https://github.com/jmcunningham/AngularJS-Learning) (jmcunningham)** - a bunch of links to blog posts, articles, videos, etc for learning Angular. 56 | - **[Create a TV Show Tracker using AngularJS, Node.js and MongoDB](http://sahatyalkabov.com/create-a-tv-show-tracker-using-angularjs-nodejs-and-mongodb/?utm_source=javascriptweekly&utm_medium=email)** - This tutorial will show you how to build a REST API with Express, authentication and signup process with Passport, create and retrieve data from MongoDB using Mongoose 57 | 58 | - **[Backbone](http://backbonejs.org/)** 59 | - **Project: [Build a Contacts Manager](http://code.tutsplus.com/tutorials/build-a-contacts-manager-using-backbonejs-part-1--net-24277) (Dan Wellman)** - "In this tutorial, we're going to look at building a fully functional contacts manager using Backbone.js, Underscore.js, and jQuery. We'll take a look at the basic components that make Backbone tick as well as some of the convenience methods exposed by Underscore." 60 | 61 | - **[Ember](http://emberjs.com/)** 62 | - **Project: [Guide to Building Your First Ember.js App](toptal.com/javascript/a-step-by-step-guide-to-building-your-first-ember-js-app) (Balint Erdi)** - "we’ll build a simple Ember application to catalog your music collection." Free screencast series from [Balint Erdi](http://balinterdi.com/). 63 | - **[Warming Up With Ember.js](https://www.codeschool.com/courses/warming-up-with-ember-js) (Code School)** - breaks down Ember and builds an application from scratch using Ember and Twitter Bootstrap. *`Requires subscription` after level 1. 64 | - **[Ember Weekly](http://emberweekly.com/)** - for the latest Ember news, articles, and tutorials. 65 | 66 | - **[React](http://facebook.github.io/react/)** 67 | - **Video: [React Fundamentals](https://egghead.io/series/react-fundamentals) (Egghead.io)** 68 | - **[React Flux](https://egghead.io/series/react-flux-architecture) (Egghead.io)** - learn practical, real-world React development. 69 | 70 | - **[Meteor](https://www.meteor.com/) (front-end and back-end platform)** 71 | - **[Meteor NY](http://www.meetup.com/Meteor-NY/)** - New York-based meetup 72 | 73 | - **[Famo.us](http://famo.us/)** 74 | - Famo.us is free, open source, Javascript Framework that helps create smooth, complex UIs for any screen. -------------------------------------------------------------------------------- /career-resources.md: -------------------------------------------------------------------------------- 1 | # Resume Advice 2 | 3 | - [A short slide show about CS resumes](http://www.cs.usfca.edu/~parrt/doc/resume.pdf) 4 | - [Building a Resume](https://www.reddit.com/r/resumes/wiki/faq#wiki_building_a_resume) 5 | - Consider using a json resume to conveniently present your resume as text, pdf, html etc. You can easily [generate json here](http://registry.jsonresume.org/) and use either the online editor or the command line tool to try out different themes. 6 | - [Get feedback on your resume here](reddit.com/r/resumes) 7 | - [Realities Of Your Industry 101, or, What Employers Want](http://www.kalzumeus.com/2011/10/28/dont-call-yourself-a-programmer/) 8 | 9 | # Interview Prep 10 | 11 | - **Algorithms** 12 | 13 | - [Binary Search](https://en.wikipedia.org/wiki/Binary_search_algorithm) 14 | - [Merge Sort](https://en.wikipedia.org/wiki/Merge_sort) 15 | - [Quick Sort](https://en.wikipedia.org/wiki/Quicksort) 16 | - [Dijkstras](https://en.wikipedia.org/wiki/Dijkstra%27s_algorithm) 17 | - [Tree Traversal](https://en.wikipedia.org/wiki/Tree_traversal) 18 | - [Depth First Search](https://en.wikipedia.org/wiki/Depth-first_search) 19 | - [Breadth First Search](https://en.wikipedia.org/wiki/Breadth-first_search) 20 | 21 | **For interview purposes you should be able to:** 22 | 23 | - Briefly describe how they work 24 | - Write a pseudocode version 25 | - Know when to use it 26 | - Know the running time and space complexity (Big O) 27 | - Be able to implement a working version 28 | - Be familiar with it's pro's and cons and optimizations, even if you can't implement them. eg: Quicksort can be improved by chosing the pivot at random, merge sort can be done back -and forth between two arrays in order to save space. 29 | 30 | 31 | - **Datastructures** 32 | 33 | - [Array](https://en.wikipedia.org/wiki/Array_data_structure) 34 | - [Linked List](https://en.wikipedia.org/wiki/Linked_list) 35 | - [Hash Table](https://en.wikipedia.org/wiki/Hash_table) 36 | - [Binary Tree](https://en.wikipedia.org/wiki/Binary_tree) 37 | - [Stack](https://en.wikipedia.org/wiki/Stack_(abstract_data_type)) 38 | - [Queue](https://en.wikipedia.org/wiki/Queue_(abstract_data_type)) 39 | - [Priority Queue](https://en.wikipedia.org/wiki/Priority_queue) 40 | - [Prefix Tree](https://en.wikipedia.org/wiki/Trie) 41 | - [Graph](https://en.wikipedia.org/wiki/Graph_(abstract_data_type)) 42 | 43 | **For interview purposes you should be able to:** 44 | 45 | - Briefly describe how they work 46 | - Write a pseudocode version 47 | - Know when to use it 48 | - Know the interface (eg: adding, removing, or finding elements) 49 | - Know the running time of the interface methods (Big O) 50 | - Know the underlying representation in memory (eg: a hash table stores values in an array) 51 | - Be able to implement a working version 52 | - Be familiar with it's pro's and cons and optimizations, even if you can't implement them. eg: Two ways to handle collisions when adding items to a hash table. 53 | 54 | **Whiteboarding** 55 | 56 | You may be asked to work through a coding problem on a whiteboard. Make sure you explain your thought process as you go and that your hand writing is legible. Practice at home on paper, or use whiteboard pens on a mirror. Remember to talk! 57 | 58 | **Pseudocode/coding without an editor** 59 | 60 | Some phone screens will involve pair coding on in a google doc or otherwise without your favourite editor. Make sure you can code simple functions without autocomplete! 61 | 62 | **[HackerRank](https://www.hackerrank.com/) type platforms** 63 | 64 | Some companies will give you a take home coding challenge, or phone screen using HackerRank or similar platforms. Get familiar with the interface and try working through some of the problems with a time limit. 65 | 66 | **Interview Structure** 67 | 68 | Interviews vary wildly, but most will involve some, or all of these steps: 69 | 70 | - **Phone screen with HR** for "fit" purposes and to tell you what the rest of the interview process looks like. 71 | - **Technical phone screen with an engineer.** May include pair coding online with or without an editor, questions like "what happens when you type "google.com" into your browser and hit enter?" or "What is the complexity of inserting an item into a hash table?" 72 | - **Take home coding challenge.** This might be "Write a couple of functions using our API in your own editor, taking as much time as you like." or "You have two hours to solve a coding challenge and tell us how you'd build Twitter." 73 | - **Onsite interview.** This may be a couple hours or a full day of whiteboarding, pair coding and "fit" questions in one on one or panel style interviews. 74 | 75 | **[Salary Negotiation](http://www.kalzumeus.com/2012/01/23/salary-negotiation/)** 76 | 77 | 78 | # Building Your Portfolio 79 | 80 | Make sure your code is somewhere potential employers can see it. If you're not on [GitHub](https://github.com) yet, sign up and [learn how to use it.](https://try.github.io/levels/1/challenges/1) If you're into web development, build a website that showcases some of your projects. If you haven't built much yet, try implimenting some of the algorithms mentioned above and pushing those to GitHub. 81 | 82 | **Contribute to Open Source** 83 | 84 | **Why?** 85 | - You'll learn version control 86 | - You'll show you can work well with others 87 | - You'll learn best practices for your language/ this project 88 | - You'll learn to navigate large code bases (hint: "find" and "git grep" are your new best friends.) 89 | - You'll meet engineers who work for that company you really want to work for 90 | - You'll get code review so you can continue to improve 91 | 92 | **How to Choose an OSS Project** 93 | 94 | When chosing an OSS project, you'll want something that: 95 | 96 | - Is actively maintained 97 | - Has a good developer community where you can ask questions 98 | - Has good code review practices 99 | - Has good documentation for beginners 100 | - Has sufficient testing that you won't worry about breaking the build every time you make a pull request! 101 | 102 | For projects that fulfill this criteria, and which are also out to do good in the world, check out [Code Montage.](https://www.codemontage.com/) 103 | 104 | If there is a company you particularly want to work at, check out their GitHub or company site to see if they have open source projects you can contribute to. 105 | 106 | **[Outreachy](https://www.gnome.org/outreachy/)** helps people from groups underrepresented in free and open source software get involved. They provide a supportive community for beginning to contribute any time throughout the year and offer focused internship opportunities twice a year with a number of free software organizations. 107 | 108 | **[Google Summer of Code](https://www.google-melange.com/gsoc/homepage/google/gsoc2015)** is similar to Outreachy in offerring paid internships for working on OSS, but requires that you are a full or part time college student, and is open to all, not just under represented groups. 109 | 110 | # Building Your Digital Presence 111 | 112 | # Networking 113 | 114 | Networking is the best way to get your foot in the door. If you did CS at college or in a boot camp, you can use your school's network to find a job. If you're self taught, you're going to have to build your own. Checkout the [WWCodeNYC Community Resources](https://github.com/WomenWhoCodeNYC/Resources/blob/master/community-resources.md) page to find a list of global and local organizations. 115 | - Ask your programmer friends and aquaintences if they know anyone that's hiring, or if they can forward you their recruiter spam. 116 | - Meetups are a good place to meet people, though many of the attendees may be just starting out and building their own networks. 117 | - Work on an open source project and get to know developers that way. 118 | 119 | # Where Do I Find a Job? 120 | **The Muse** 121 | 122 | **Power to Fly** 123 | 124 | **Hired** 125 | 126 | **Planted** 127 | 128 | **LinkedIn Jobs Board** 129 | 130 | **New York Foundation for the Arts** 131 | 132 | # Anonymous Thoughts on Jobs and Careers (Things Heard and Overheard) 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | --------------------------------------------------------------------------------