Logistics
Grading Policy
Schedule
Tools
Announcements
Assignments
Team Forming
Feedback
Peer Evaluation
Don't see the menu?
Project Management Tools:
Gantt Chart:
tom'splanner
teamgantt
Teamweek
gantter
Agile:
ZenHub
agile management integrated with GitHub
Trello
(with
agile extensions
)
Free online scrum tools
Asana
waffle.io
Google Keep
Ganttify
Communication:
LetsView
Device mirroring for Android, iOS, macOS, Windows, and TV/DLNA
slack
HipChat
groupme
group text messaging
XMind
brainstorming and charting tool
Codebase management:
github
UI and Rapid Prototyping Tools:
pttrns
trending mobile UI designs
Figma
(
resources
)
Marvel
Sketch
with
Craft
Principle
proto.io
Prezi
balsamiq
Adobe's
Fireworks
Mockingbird
axure
invision
D3
(Murray, S.,
D3 Tutorials
)
Flaticon
icon packs
The Noun Project
free icons
Development Tools:
UMich Software Prototyping Clinic
Wenderlich, R.,
Android, Swift, etc. tutorials
import.io
web data extraction
Postman
API testing
sonarqube
code quality
The Unlockr
unlock your device
Game engine:
Unreal Engine
Mobile Game Development
Unity
(
Mobile Development
tutorial)
Hajalie, A.,
Unity vs. Unreal Engine 4
, Apr. 2015
Augmented Reality:
Vuforia
AR toolkit for Unity, iOS, Windows 10 UWP, Android
Wikipedia's
List of augmented reality software
Blockchain:
corda
blockchain platform
Ray Wenderlich
has lots of tutorials for both iOS/Swift and Android/Kotlin and more
Android:
Android Developers
AZ Screen Recorder
DU Recorder
Android Studio
and
SDK Tools
Android Debug Bridge
(
installation
)
xdadevelopers
Android development and hacking forum
Volley
HTTP library
Google Maps Android APIs
and
Google Places API for Android
and
Current Place
Green, R.,
Getting Started in Android Game Development
, Nov. 2008
Get real user feedback with beta tests
Using Google Play to Distribute & Monetize
and
Google Play Setup
Kotlin:
Kotlin
Programming Language
Java:
mockito
Java unit testing
FindBugs
Java
PMD
finding duplicate code in Java
JMeter
Java performance testing
iOS/Swift:
Apple's
The Swift Programming Language
book
Swift Resources
Apple's
App Development with Swift
Hacking with Swift
cocoapods
a dependency manager for Swift and Objective-C Cocoa projects
Awesome iOS
useful frameworks and libraries
Developing iPad Apps
Apple,
Designing for Real-World Networks
Network Link Conditioner
simulates bad wireless connection
SwiftyJSON
Metal for Developers
TestFlight
for beta testing
AppStore
for app distribution
WebApp:
Mobile Framework:
Apache Cordova
Ionic
React Native
Javascript:
Mozilla Developer Network
JavaScript shells
jsFiddle
prototyping
Mocha> javascript testing
Jest
testing
Browserify
bundle up
require()
dependencies without node.js
Framework:
Sencha
(html5)
Zebra
(html5)
AngularJS
(javascript)
Bootstrap
(and
Bootstrap Editor and Builder
) (javascript)
SproutCore
(javascript)
Dojo Toolkit
(javascript)
DHTMLX
UI components (javascript)
JQuery
(javascript)
React
(javascript)
webix
(javascript)
ZinoUI
(javascript)
jQWidgets
(javascript)
Bower
package manager for the web
REST API:
Jersey
(Java)
unirest
(Java)
RESTeasy
(JBoss)
Swagger
(JSON)
Other tools:
npm
javascript package manager
JUnit
Java unit testing framework
PyUnit
python unit testing
Selenium
WebApp testing
Maven
automating build process
Backend:
Frameworks:
Getting started with Node.js
(javascript)
Express
a web framework for node.js
Flask
a microframework for Python
Django
a web framework for Python (with
Django REST
and
GeoDjango
) (python)
Cloud services:
Heroku
cloud hosting (
Dev Center
)
DigitalOcean
cloud hosting for developers
Linode
cloud hosting for developers
Google's
Firebase
realtime database and mobile solutions
Google App Engine
cloud hosting for developers
AWS
(
EC2
) cloud hosting
AWS (Lambda)
serverless compute
Amazon's
Aurora
MySQL-compatible database engine for Amazon Relational Database Service (RDS)
Solr
search engine
twilio
a cloud communications platform to programmatically make and receive phone calls and send and receive text messages using web service APIs
Spring
and
Spring Boot
(Java)
Data:
Google's
Protocol Buffers
for serializing structured data
MySQL
rdbms (
MySQL Workbench
a gui for db management)
phpMyAdmin
another MySQL admin tool
MySQLdb for Python
SQLAlchemy
Python SQL Toolkit and Object Relational Mapper
PostgresSQL
an open source object-relational database system (
tutorial
and use with Python API
Psycoopg2
)
Cassandra
for unstructured data (NoSQL)
CassandraUnit
Java Cassandra unit testing
Google Cloud Datastore
a NoSQL document database with automatic scaling
Hadoop
distributed computing, mapreduce
Web servers:
nginx
an HTTP and reverse proxy server, a mail proxy server, and a generic TCP/UDP proxy server
gunicorn
a Python WSGI HTTP Server for UNIX that is broadly compatible with various web frameworks, light on server resources, and fairly speedy
Apache's
Web server suite
Tomcat
Java server stuff
Payment:
venmo
Cartographic Data and Tools:
O'Donoghue, R.,
Using the Google Maps API to display mobile-friendly maps on all devices
, Feb. 2015
Google Maps
Google Maps APIs Styling Wizard
Leaflet
mobile-friendly interactive maps
OpenLayers
cesium
WebGL-based 3D globe
mapnik
(
wiki
)
OpenStreetMap
(
rendering
)
stamen
Apple's
MapKit