Wednesday, November 29, 2017

Startup Pitches And Decks

Jyve PitchBreakfast Pitch:

This is a 5 minute pitch by Jyve after graduating ICAT with a Q&A session afterwards.

Monotto 1Million Cups Pitch:

While this is not a five minute pitch, several teams that have continued after ICAT pitch to 1MC in order to practice presenting, get feedback from professionals, and find valuable connections.

This is a recommended pitch deck template for entrepreneurs seeking VC funding with Sequoia Capital.  While this template is meant for companies seeking funding, the structure is similar to pitches in ICAT.

Airbnb's pitch deck:

Tuesday, November 28, 2017

Adding QR Codes To Flyers

A popular and effective way to advertise your app is with flyers.  Some flyers simply have a description of your company and some text saying "download at".  However, many people may overlook your site simply because they don't feel like manually typing in your app's url or searching it on the App Store.  Luckily, there exists and alternative- QR codes.  It is possible to add a QR code that potential users can scan with their phones to visit your website.

QRCode Monkey offers a free QR code generator that lets your customize the color and style of your QR code link, as well as the ability to put a logo inside the code.  This lets your flyer catch the eye of users and make them more likely to download your app.

Here is an example of a QR code made with the website mentioned above.  Txtra is a company created in ICAT last semester.

Wednesday, November 8, 2017

3D Printing Your Ideas

Building physical prototypes of products used to be a very long and expensive process.  However, 3D printers allow people to make their ideas come to life much faster.

The first step to building your product is to use software to design your prototype.  Tinkercad is a free online software to design your 3D model.  After finishing your design, save the model as a .stl file.  This is a file type that stores you model for printing.

Next, install the software Cura.  This software uses the stl file from Tinkercad to talk to your 3D printer.  Inside Cura, you can load your model file.  You can also resize your model and select the nozzle size for printing.  The printer works by using a pen filled with melted plastic to draw your model, like a frosting gun but less tasty.  A large nozzle means the model is completed faster, but makes the final product look like it is made of spaghetti.  A smaller nozzle makes a much smoother product, but takes significantly longer to produce.
Inside Cura you can also get an estimate of production time, usually several hours.  If the number is large such as 20+ hours, your model is likely too large or solid, etc.

Lastly, you can save the Cura file to a flash drive.  Then, insert the drive into your 3D printer and wait for the model to be completed!

Wednesday, November 1, 2017

Software Architectures

Software architecture refers to the structure of a software system.  A system's structure is made of multiple components, such as a Database,  Client, or a Business Logic Layer.

3 Tier Architecture is often used in developing Web and Mobile Apps.
  • Presentation Tier:  This includes what users see when they open your app or site, often called the front-end.  For Mobile Apps, this tier is coded usually with Android Studio, Objective-C, Swift, or a hybrid app software.  For Web Apps, this layer could be made with Ruby, HTMLJava, C#, and others.

  • Application Tier: This tier is also called the Business Logic layer, and involves behind the scenes calculations that users can't see.  Complex algorithms are put on this layer, as your server can process these calculations much faster than an user's phone can.  This layer exists on your company's server, a place where you hold web pages, files, data, and algorithms.  Some servers and hosting sites include AWS, Godaddy, Firebase, and x10Hosting.

  • Data Tier: A database layer is a place where data about users is stored.  A server's database is similar to a big Excel page that communicates with the application tier to share data.  Some servers come with included databases such as MySQL.  Other database languages include SQL or MongoDB.

Wednesday, October 25, 2017

Frameworks And APIs

Most web and mobile apps today have complex features that are not included in the default capabilities.  Using just the basic iOS, Android, or web software, you can make a fun calculator or button clicking app.  But what if you want to add in a map, or a Facebook login, or even an artificial intelligence algorithm?  This is possible with something called an API, or Application Processing Interface.  An API lets you take components from other companies and put them inside your own product.

Here is a list of some popular APIs:
  • Google Maps: Well supported for Android and Web, some support for iOS.
  • Facebook: app login features, update status, etc.
  • Paypal: Used for in-app purchases. 
  • Stripe: New alternative to Paypal.
  • Watson: Artificial Intelligence, such as personality and tone predicting, text to speech, analytics, and more.
  • Google Analytics: free version gives basic, easy to use analytics. Includes an enterpise version for better insights.
 Many popular APIs are run by for profit corporations.  When you look at APIs to use, make sure to check out their pricing.  For profit APIs either charge a flat rate per month, or charge a small fee every time the API is accessed after a limit.

For most APIs, you will have to sign up for an account to get an API key, which lets you access the API (called an API call).  Some companies also ask you to download a Software Development Kit, or SDK, to install the API data.

Also, since APIs need access to a company's server, almost every API requires an internet connection. 
Related image

In addition to APIs, developers can also use tools called Libraries or Packages to add functionality to their apps that is not part of an app software's default  components.  Unlike APIs, libraries do not usually need an internet connection and are often open source (free).

Here are some popular frameworks and libraries:
  • Lottie: includes animations to give your app a polished look. 
  • Horizontal Calendar: a different type of calendar view for Android.
  • PDTSCalendarView: improves the calendar view for iOS.
  • TextFieldEffects: adds polished animations for text field interaction (iOS).
  • iRate: library for asking users to rate your app.
  • AmCharts: libraries for anything graphing related.  Great for any type of analytics page or platform. 
  • Proxitee: iOS tools for implementing geofencing and iBeacons inside an app.

Monday, October 2, 2017

Building A Good Landing Page

A landing page is a single paged website that advertises your app or platform.  A good looking landing page is key to attracting customers by showing off the features of your project.

Here are some examples of landing pages by local startups:

Jyve, (ICAT Spring 2015, Harbor Entrepreneurship Center Cohort 7), created using Twitter Bootstrap

Monotto, (ICAT Fall 2015), contracted to 3rd party

Hot Plot, (ICAT Spring 2017), created with Wix

Wisdom Mothers, (ICAT Spring 2017), created with Squarespace

Green Blox, (Harbor Entrepreneurship Cohort 8), created with Wix

Dynepic, Ionic, Google Analytics

Collective Force, (Harbor Entrepreneurship Cohort 8),  Wordpress

What's Your Secret Sauce, (Pitch Breakfast pitch),  Built with Page Cloud.

Monday, September 18, 2017

Choosing Your Programming Tools

For building your first iteration of my project, you must first choose a platform- Android, Web, or iOS.  This choice is determined by your potential customers.  Most b2b companies use web platforms, many college students use iOS, and so on.

Your second choice is choosing a language to program in. 
  • For iOS, you have 2 choices- Swift and Objective C. 
  • For Android Studio, native apps are built in Java.
  • Web Apps have a larger variety of languages.  C# and C++ are used by Microsoft.  Also, Node.js, HTML, Ruby on Rails, and even Python can also make web applications.
 You can also choose a hybrid, or cross- platform software to code projects.

Tuesday, January 31, 2017

ICAT Android Studio Programming

Android Studio is the industry-standard software for Android development.  Studio is Google's software, and uses Java to create apps.  It is the most popular because it has a much higher limit than AI2, as well as a larger community and 3rd party resources that you can put in your apps.

Today will show how to build a browser app, like Firefox or Chrome.  This is useful because browsers can be easily converted into hybrid apps, which are websites that are fitted to look like actual apps.  Last year, one of the ICAT teams used a Hybrid app to quickly convert their website into an app.

This project will also show the basic structure of Android projects, such as how to add objects, deal with layouts, and writing Java code.

Android Studio App Guide