Giter VIP home page Giter VIP logo

startupdatatrends's Introduction

This project has been archived as of August 2023.

Startup Data Trends

This repo contains the code that was written to build http://startupdatatrends.com, a visual browser of startup data from AngelList (http://angel.com.)

The repo was built on top of Backbone-boilerplate by @tbranyen (https://github.com/tbranyen/backbone-boilerplate)

See the Bocoup blog for more information about the application (http://weblog.bocoup.com)

If you have any questions or comments, contact @iros here or: irene at bocoup dot com.

Setting up dev environment

Run npm install from your application root.

Build

The application is built using grunt. Run grunt build to build the source, and grunt dev during development to watch files and recompile on changes.

Server

Run with grunt connect. It will run on port 8082

startupdatatrends's People

Contributors

ajpiano avatar boazsender avatar iros avatar mariestaver avatar rwaldron avatar tbranyen avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

startupdatatrends's Issues

loading forever

I tried to see information for Ontario, Canada, but it keeps loading and never shows the results. Is it a problem, or Ontario was not included in the code?

In any case, great idea and initiative!

Client side caching of search results

We can probably safely localStorage the search results for queries for anywhere between an hour and a day, and it would drastically improve the responsiveness of the application and cut down on network traffic. Consider the case of when the user deletes a particular tag, which triggers a search which they obviously just did earlier but re-requests all the data.

dev server should print "running" message

When running...

sudo node dev

from the command line, after entering a password, a blank line is printed. There should be a message printed that indicates a successfully running server

Add GoSquared Tracking Code

Paste this code into the bottom of the page before the closing tag:

<script type="text/javascript"> var GoSquared={}; GoSquared.acct = "GSN-444768-M"; (function(w){ function gs(){ w._gstc_lt=+(new Date); var d=document; var g = d.createElement("script"); g.type = "text/javascript"; g.async = true; g.src = "//d1l6p2sc9645hc.cloudfront.net/tracker.js"; var s = d.getElementsByTagName("script")[0]; s.parentNode.insertBefore(g, s); } w.addEventListener?w.addEventListener("load",gs,false):w.attachEvent("onload",gs); })(window); </script>

would be nice to slice the data by time period

It's great to be able to get valuations by vertical and geographic market but it would be very useful if you could also slice by time period so you could be sure data was accurate for the most recent period (e.g. six months)

Meta: Unscoped DOM queries violate encapsulation

This is meant more as a discussion for now, but I'm of the mind that global DOM queries are completely out of place when you're writing "modular" client side apps like this. Doing $(".queries .like .this") lets views (or really, an arbitrary code anywhere) completely dig into the guts of other views and spreads state all around modules. I ran into this type of problem when working on #18, when $(".about .loading") was being slid down in the search module, but slid up (and down sometimes too) in the base module.

This type of cross-module messaging is much better addressed using pub/sub (mixing Backbone.Events into modules).

Search UX

I'm just wondering why there are two search inputs instead of just one "omnibox" (for lack of a better term)

Mismatched startup/detail pain

If you do a search, and then immediately click on a startup, and then click on screenshots, they are not there, which is fine, but then if you click on another startup before it is done loading, you get the wrong detail pain (far right pain) for the startup you are looking at.

Footer occludes final startup

When there are enough search results to reach the bottom of the page, the final result renders partially beneath the footer:

occlusion example

Taken in Chromium 18 in Linux.

This also occurs to a lesser extent in Opera 11 in Windows 7. This does not appear to be an issue in the following browsers (on Windows):

  • Chrome 16
  • Firefox 5
  • Safari 5.1

...although it's still a bit close:
almost occlusion example

Taken in Chrome 16 in Windows 7.

I was unable to verify in IE8 or Firefox 3 since the design doesn't seem to support those browsers for other reasons.

Lint errors

I'm somewhat tied up with Kibits, so for now the best I can do is a dump from JSHint...

$ jshint base.js 
base.js: line 62, col 34, Missing semicolon.

1 error

$ jshint example.js 

$ jshint search.js 
search.js: line 3, col 29, Expected an assignment or function call and instead saw an expression.
search.js: line 4, col 39, Expected an assignment or function call and instead saw an expression.
search.js: line 55, col 10, Missing semicolon.
search.js: line 74, col 8, Missing semicolon.

4 errors

$ jshint startup.js 
startup.js: line 3, col 31, Expected an assignment or function call and instead saw an expression.
startup.js: line 4, col 41, Expected an assignment or function call and instead saw an expression.
startup.js: line 31, col 22, Missing semicolon.
startup.js: line 61, col 49, Expected an assignment or function call and instead saw an expression.
startup.js: line 76, col 36, Expected an assignment or function call and instead saw an expression.
startup.js: line 81, col 18, 'i' is already defined.
startup.js: line 165, col 34, Missing semicolon.
startup.js: line 167, col 11, Don't make functions within a loop.
startup.js: line 166, col 12, Missing semicolon.
startup.js: line 169, col 8, Missing semicolon.
startup.js: line 382, col 31, Missing semicolon.

11 errors

$ jshint utils.js 
utils.js: line 8, col 13, 'val' is already defined.
utils.js: line 12, col 21, Missing radix parameter.
utils.js: line 47, col 41, Expected an assignment or function call and instead saw an expression.

3 errors

Improve vertical jumpiness near top of application

I started to address this with #18, but there are still quirks that could be worked out. The "About" screen has too much padding at the top, because the div.inner is still occupying space even when it's empty. This, coupled with the "↓ Start your search by searching for a location, a specific market, or both!" text, means that every "fresh' search leads to both columns jumping up vertically, and then the columns jumping back down when there are no active tags being searched.

The top of the contents of the left and right container should align at the top, always, and the indicative help text should probably be hidden with visibility:hidden; or a similar technique that means the space doesn't go away when the text does.

show me the money

The StartupData Trends tool is awesome! I was trying out some of my own jsonp calls and they are working fine, but I don't see how you got the dollar amounts raised. Maybe it's a question for Angellist, but which json call did you use to get dollars? Thanks in advance!

Error running "node dev"

As per the readme.

$ node dev

node.js:201
        throw e; // process.nextTick error, or 'error' event on first tick
              ^
Error: listen EACCES
    at errnoException (net.js:614:11)
    at Array.0 (net.js:689:28)
    at EventEmitter._tickCallback (node.js:192:40)

UX + Search Results could be greatly improved

For search: Give the user more options up front. What about a list of buttons that lets the user quickly drill down by location, industry, stage, or seeking?

For results: Show more data divided up into divs so you don't have to click a million times to compare stats across startups?

Incidentally, I am working on this, and am considering forking StartupDataTrends with an integrated version of it. Let me know what you think.

http://dev.startupgrid.net

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.