- Welcome to Startup Programming
- How to build a software product?
- Standing on the shoulders of giants - On software reuse and software composition (v4).
- A few of the past projects:
- Check Me In - continued to Microsoft's accelerator and then to create Screemo, a successful startup [Lessons learned].
- What2Wear
- AroundRoid
- StrEAT
- Good2Go
- UniZone
- FlyingBoard
- The Reporter
- SporTeam [on Google Play]
- Valto
- Choozie [on Google Play]
- EZ-Launch [on Google Play]
- Web development overview
- Cloud computing services - Code tutorials (of various platforms) for the example shown in class can be found in the tutorials section.
- UX – UI overview
- Team work, Source control (GitHub), and API's - [Run your project like it’s an open source project](run your project like it’s an open source project.pdf?raw=true) by Ian Bull
- Failing fast in Startup Programming by Arie Van Deursen
- Software Engineering at Magnet.me by Michael de Jong
- Talk by Cliff McCollum
Go to [recommended reading](recommended reading.md) section.
- Information on various cloud computing services [link]
- Google App Engine - Google App Engine is a Platform as a Service (PaaS) offering that lets you build and run applications on Google’s infrastructure.
- App Engine Shoutout (Python, Java) - "Hello World" for App Engine in Python (a bit outdated but with a few minor changes can work).
- App Engine with Python and Flask - If you prefer to work with Flask instead of the default webapp2 framework.
- Google Python Class Day - A basic tutorial for python by Nick Parlante. There are links to his exercises as well.
- PyCharm - A pretty good IDE for Python (free for students).
- Douglas Crockford's Javascript - Useful links for JavaScript. Watch the video courses (in the bottom of the page).
- jQuery - If you plan to use JavaScript in your application, you should consider using JQuery library.
- jQuery plugins - A few nice plugins for jQuery.
- JSDB - Database of JavaScript libraries, frameworks & plugins.
- Advanced JavaScript course - A nice collection of resources to learn JavaScript.
- Mailgun - Sending the first 10,000 emails every month is free.
- SendGrid - Sending the first 200 emails every day is free.
- Amazon SES - Pay as you go.
- Travis CI - Easy to use continuous integration tool (see tutorial).
- Coveralls - Coveralls works with popular continuous integration tools (such as Travis CI) to show test coverage history and statistics.
- What's in a Story - Simple way to describe user stories / requirements for your product (behavior-driven development).
- Cucumber - (Ruby) tool to support Behaviour-Driven Development.
- ionic - Open source front-end framework for developing hybrid mobile apps with HTML5 (for both iOS and Android).
- Android developers - Start here if you develop for android.
- Dashboards - This page provides information about the relative number of devices that share a certain characteristic, such as Android version or screen size.
- Developing Android Apps: Android Fundamentals - An online web course (on Udacity) teaching android development. The full course materials - all the videos, quizzes, and forums - are available for free for all students by selecting “View Courseware”.
- Device Art Generator - The device art generator enables you to quickly wrap app screenshots in real device artwork. This provides better visual context for your app screenshots on your website or in other promotional materials.
Note: Facebook API changes constantly and frequently. Please take that into account when using any kind of documentation, tutorials and when building your app.
- Creating Your First Facebook Application - How-to: Creating your first Facebook application
- Facebook and Google App Engine - How-To: Create a Facebook App with Google App Engine and Best Buy Remix
- Google Charts - Google chart tools are powerful, simple to use, and free. For example, it allows to dynamically generate QR codes.
These tools can help you create demo videos, and tutorial videos for your application. Use this demo video for inspiration.
On Windows OS:
- CamStudio - can capture your screen (and audio) and record it
- VirtualDub - if you need to compress or edit the video
On Ubuntu:
- RecordMyDesktop - can capture your screen
- WinFF - you can convert to other formats
- Avidemux - if you need to edit or compress the video
- Balsamiq - A web service (or desktop tool) for UI mockup sketching.
- Google API Explorer - A quick and easy way to see all available API's provided by Google.
- Build Podcast - A cool podcast about technology tools for design and development (each episode covers a different tool).
- Sublime Text - A recommended text editor/"light IDE", especially for web developers. Other good options are TextMate (only for Mac) or Atom by GitHub.
- A badass list of frontend development resources.
- Product Hunt shows new applications on a daily basis (Reddit-like interface). You can submit your own application.
- invision - Quickly transform your designs into beautiful, fully interactive prototypes complete with gestures, transitions & animations for web, iOS & Android (Free).
- proto.io - Mobile prototyping (15 days free trial).
- Parsing existing websites - This tool allows you to extract any content from the Web, and get it in various formats.
- Never write a web scraper again - A simple to use web scraper.