Resources


General Resources Text Editors Version Control Web Development Android iOS Java C#

Starting out?

New to programming? No problem! Hackathons are a great opportunity to learn new things.
Building projects is a great way to learn as you go. This page contains links to free stuff and resources to help HackOHI/O participants out, but it definitely doesn't end here. Use your favorite search engines to find new tools, tutorials, programming languages, and more - and if you ever get stuck or need suggestions, call a mentor!

If you're new to programming, we suggest building your own personal website first. It's a great way to get into development by getting you to create and publish your first real project - and it can serve as the start of a place for you to continue to try new things and experiment.

Free Stuff

There is a ton of free stuff out there for developers - especially students! Check out this list we've compiled together:

GitHub Student Developer Pack
A package of great developer tools, including Amazon Web Services credit, unlimited GitHub repositories, waived Strip transaction fees, and more.

Microsoft Imagine
Free Microsoft development tools for students.

Amazon Web Services
Amazon Web Services is a huge suite of cloud services, including hosting, computing, storage, networking, and more. They even provide a free tier to get you started.

ArcGIS
ArcGIS is a powerful cloud-based mapping platform. If you're interested in creating projects that utilize GIS and maps, ArcGIS is a great option. They even provide a free trial period for you to get started.

General Resources

There are a ton of free online resources to help you out with whatever you're working on. Here are a few comprehensive sites that provide all sorts of valuable help:

Stack Overflow
A question-and-answer site where people ask and answer programming questions.

Codeacademy
An interactive platform that provides free coding classes for 12 programming and markup languages.

Safari Books Online
Ohio State students have free access to a variety of eBooks on computer science.
If you're not an OSU student, check out your college's library - it may have something similar!

How2Hack by Cisco
Ready to ignite your apps with communications using Cisco Spark and Tropo?
Follow these steps and you’ll be up and running quickly

Text Editors

Before you even get started, you need a place to write code! A text editor is a piece of software that facilities the writing of code. Note that programs like Microsoft Word and Google Docs are word processors, not text editors!

There are a ton of text editors out there; over time, you gain exposure to more and more and acquire your favorites. Here's a list of some of the most popular you can try out:

Version Control

When you write code, you want an easy way to track changes and collaborate with others. Git is a version control tool that does just that. It keeps track of all the changes to each file, and keeps a running history over time. GitHub is a code hosting platform that works with Git to cleanly store and view projects online at GitHub.com. Check out this GitHub tutorial to learn the basics of GitHub and how to use it.

Web Development

Basic web development starts with three things: HTML, CSS, and JavaScript. HTML is a markup language where you define the elements that go into a page. CSS stands for "Cascading Style Sheets"; it gives you control to style, format, and position your HTML elements. JavaScript adds behavior to a page, such as working forms, dragging and dropping, animating things, and so on.

Getting Started
Codeacademy Tutorial: Make a Website
Codeacademy Tutorial: Make an Interactive Website

Resources
JavaScripting - Directory of JavaScript libraries, frameworks, and plugins.
   Bootstrap, one of the most popular HTML, CSS, and JS frameworks.
   Chart.js, a simple and customizable charting JavaScript library.

Android

Android is an open source mobile operating system, and the most widely used in the world. Android apps are written in Java.

Getting Started
Official setup guide and tutorial
Build your first app
Official Android Wear tutorial

Resources
Material Design - Google's design guidelines for apps.
Android Arsenal - Directory of Android libraries, tools, and apps.

iOS

iOS is Apple's popular mobile operating system.

Getting Started
Download Xcode, the official Apple IDE. You will need a Mac.
Apple's Official Tutorial

Resources
Apple's API Reference - Docs on Apple's libraries and tools available in Xcode.
Design Guides - Docs on designing apps on each of Apple's suites of devices.

Java

One of the world's most popular languages. Object-oriented.

Getting Started
Official setup guide and tutorial
Java Development Kit (JDK)

Resources
Java API
Tutorials, trials, and lessons

C#

Getting Started
Getting Started with C

Resources
C# Programming Guide
Tutorials and resources on Tutorials Point