Code Monkey home page Code Monkey logo

rosehack2022resources's Introduction

Rose Hack 2022 - Hacker Resources

Welcome to Rose Hack 2022! Here we've compiled some helptul guides and tutorials that you might find useful this weekend. If you have any further questions about anything here, you can request help from mentors from Slack. Happy hacking!

💻 terminal

The terminal on your computer is one of the most powerful resources you have when building a project. Terminal setups can be different for different operating systems; Once you get yours up and running you'll be pushing pixels in no time.

MacOS

  • XCode
    • an IDE (integrated development environment) created by Apple with a large variety of programming language support
    • an all-in-one package with a text editor, compiler, and build system
  • Homebrew
    • a package manager for macOS and Linux
    • allows you to easily install packages you might want to use that macOS or Linux didn't already come with

Windows

:octocat: GitHub/Git

  • Git
    • version control and file version management system
    • lets you maintain consistent versions of code
    • useful for collaborating on a potentially large code base with several people
  • GitHub
    • a web-based hosting service for version control using Git
    • offers all of the distributed version control and source code management functionality of Git as well as adding its own features
  • Git Commands - save, branch, checkout, track, upload, download, share, collaborate on, control versions of, revert, delete, nuke, etc.
  • Get free access to lots of powerful developer tood with the GitHub Student Developer Pack.
  • Forgot a Git command? Here's the GitHub's Git Cheat Sheet.
  • ReadMe Documents and Markdown
    • you're reading a README.md document right now! ReadMe documents contain information for the user about your software, tool, game, etc.
    • Markdown Cheat sheet

Text Editors/IDE's: Places to Edit Your Code

  1. Sublime Text 3 - light-weight, highly customizable, now has a companion app for git integration
  2. Visual Studio - integrated development environment, used to develop computer programs, as well as websites, web apps, web services and mobile apps, developed by Microsoft
  3. Visual Studio Code - light-weight, highly customizable source-code editor developed by Microsoft
  4. IntelliJ - optimized integrated environment for developing in Java, developed by JetBrains
  5. Android Studio - the official integrated development environment for Google's Android operating system
  6. XCode - optimized for building iOS apps, includes 10+ gigabytes of other useful general purpose languages/libraries/tools
  7. Atom - has plug-ins written in Node.js, embedded Git Control, developed by GitHub
  8. Vim - highly customizable, edit code without having to leave your terminal
  9. Emacs - extensible, customizable, self-documenting real-time display editor
  10. Arduino IDE - optimized for uploading code to Arduino microcontrollers

XYZ Domain Service

Video On XYZ Domain Service

Instructions on registering your free .xyz domain:

  1. Search for your .xyz domain, then “Go to checkout”
  2. Select a 1 year term
  3. Click “Next: Recommended Add-Ons” and choose any add-ons you’d like
  4. Click “Next: Information & Checkout” o Enter promo code: ROSEHACK20 new total is $0.00
  5. Enter your contact details
  6. Choose PayPal or Credit Card as preferred payment method
  7. Check ✓ the box next to “I agree to...”
  8. Click “Submit Order”

Package Managers (runs on any OS)

  • Pip
    • the recommended package manager/installer for the Python language
    • lets you quickly install and import libraries and packages to run in Python
  • npm
    • a package manager specifically for the JavaScript Language
    • the go to tool for getting packages for Node.JS

General Purpose Programming Languages

  1. C++ - object-oriented, allows for low level data manipulation
  2. C# - intended to modernize paradigms set up by C++ and C, object-oriented
  3. Python - high level, emphasizes code readability
  4. Java - heavily class-based and object-oriented
  5. JavaScript - high level, the dominant programming language of the web

Web Development

Starting Out

  1. HTML - the "content" of a web page
  2. CSS - dictates the style and character of a web page
  3. JavaScript - high level, the dominant programming language of the web, makes webpages dynamic

More Advanced Stuff

Back-End Development: code that connects the web-page to a database, manages user connections, and powers the web application itself

Common Back-End Frameworks/Tools

  • JavaScript
    • Node.JS - JavaScript run-time environment that executes JavaScript code outside of a browser
    • Express - web application framework for Node.js, designed for building web applications and APIs
  • Python
    • Flask - micro web framework written in Python, easy to pick up
    • Django - model-view-template oriented, highly customizable (citrushack.com was built with this!)
    • .NET - a software framework optimized for building any kind application for Windows, developed by Microsoft

Front-End Development: the practice of converting data to graphical interface for user to view and interact with data through digital interaction using HTML, CSS and JavaScript

Common Front-End Frameworks/Tools (used in conjunction with vanilla HTML/CSS/JavaScript)

  • HTML/CSS/JS
    • Bootstrap - CSS/JS library that makes responsiveness between mobile and desktop web pages easy
    • Semantic UI - quickly build web pages with sleek, modern, and dynamically designed elements
    • Font Awesome - font and icon toolkit for simple yet effective icons and typography
    • jQuery - JavaScript library designed to simplify HTML DOM tree traversal and manipulation
  • pure JavaScript (all of which are extremely powerful and robust)
    • AngularJS - structural framework for dynamic web apps, good for single-page applications, maintained by Google
    • ReactJS - JavaScript library for building user interfaces, 'reacts' to user and dynamically changes the content of a web page, maintained by FaceBook
    • VueJS - open-source JavaScript library for building dynamic user interfaces, easy to pick up

Hardware Hacking

Arduino IDE

Virtual/Augmented Reality

Unity

  • a real-time 3D development platform
  • drag and drop static assets into your 3D scene
  • code dynamic elements events and elements using the C# language

Oculus - Unity SDK

  • the official software development kit for Oculus Rift hardware within Unity

VRTK - The All In One Virtual Reality Tool Kit for Unity

  • comes with integrated GearVR and OculusVR SDKs
  • prebuilt libraries for locomotion, object-interaction, clipping, and more

Mobile Development

React Native

  • build mobile apps in a React JS integrated environment
  • good for both Android and iOS applications

Swift

  • for iOS app development
  • Xcode is the proprietary development environment

Java

  • for Android app development
  • Android Studio is the recommended development environment

Flutter

  • an open-source mobile application development framework
  • good for both Android and iOS applications

rosehack2022resources's People

Contributors

sulaiman-ahmed avatar

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.