Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Define application #2

Open
addyosmani opened this issue Jul 9, 2013 · 36 comments
Open

Define application #2

addyosmani opened this issue Jul 9, 2013 · 36 comments

Comments

@addyosmani
Copy link
Member

We will soon put together the draft list of features TasteApp will implement as part of #1.

The time has come for us decide on what the practical application using these features is going to be :)

Some of the ideas suggested:

  • RSS reader
  • GitHub API client (maybe GitHub projects or chat app)
  • Contact manager
  • Simple social network client
  • Any other ideas?

My personal current preference would be the RSS reader idea with a dedicated backend. Dedicated means we have no reliance on API limits or services going up, down or away.

@passy
Copy link
Member

passy commented Jul 9, 2013

+1 on RSS reader. Here are some notes on OSS implementations and APIs: https://docs.google.com/document/d/1plq3yROJxSaiu6nOj2H5cwiEn-HbVVrBuHHq6rGrO94/edit?usp=sharing

@addyosmani
Copy link
Member Author

Very useful list. Thanks @passy!

@ghost
Copy link

ghost commented Jul 9, 2013

GitHub API client can give more information about the framework.

@paulmillr
Copy link

i’ll probably ask once again: what’s wrong with forum for GitHub projects based on own API — http://ost.io? just hadn’t seen any direct negative responses to that

@addyosmani
Copy link
Member Author

It's a completely valid question :) Two things:

API limits: I've been heavily using the GitHub API of late and ran into a number of issues with API rate limiting - have you had this issue at all @paulmillr? . As you probably know when you're unauthenticated your limits are fairly low and authenticated it's more around the 5000 request point. This should be fine if we end up not using multiple widgets per view consuming data but if we do, it can get used up quickly (at least it did in my case).

Relying on at third-party API: It's mostly just me, but I have concerns with using third-party APIs which might be subject to change or disappearing at some point in the future. With GitHub the latter is less likely, but I can imagine an API V4 or V5 requiring a number of changes per implementation on our end which might not be easy to get in place. Imagine trying to do this across 20 or 30 apps.

That said, these reservations are my own and we can of course still consider doing a GitHub projects based app using the API. Just making sure concerns are logged :)

@paulmillr
Copy link

@addyosmani for example, http://ost.io caches everything (avatars, user ids etc) and makes API calls to GitHub API only on initial log in and repo sync. So, this should not be a concern at all when backend does caching.

The important point is that the third-party API will not be really third-party. If the main server will shut down, anyone will be able to get it working again on his server just in hours since it is open-source. We will just need to update DNS.

@donaldpipowitch
Copy link

+1 for any app with a dedicated backend (- the RSS reader would be fine). It should demonstrate authentication and authorization (e.g. creating an account, remove an account, forget my password function...) and shouldn't use a 3rd party API for this. (imo)

@jeremychone
Copy link

I did quite a bit of these type of applications internally to train my developers, and the one that resonate the most are:

  1. Task Manager
  2. Contact manager

While task manager seems to be a boring choice, it does resonate very well with developers, could run only on local (no server) and with server, and offer enough depth to have any capability we want to have (CRUD, Routing, Nested structure, ...).

Here are the ones that I think would be a more challenging fit:

a) RSS Reader: I think it might be too content/browsing centric, and not enough CRUD capabilities.

b) GitHub API Client (chat): Could be too limited in term of CRUD functionality, and will be hard for people to run on their local. Also, it add a all other level of integration API which might be outside of the scope of what need to be demonstrated.

@callmehiphop
Copy link

A lot of my professional experience has related to the automotive industry and I thought it would be cool to create a "Build Your Own" type app. Pretty much everytime I've worked on one, a month later I had wished I'd used {{latest and greatest}} instead.

Sonic BYO example

Ideally it would allow for complete customization of a vehicle: color, trim, accessories, options, viewing angles, etc. You could have the ability to pick between different models, save certain configurations and do side-by-side comparisons for saved configurations. Could even go so far as social integration to share a configuration.

There would be a couple of potential issues:

  1. We wouldn't be able to easily compare the code to existing apps on the web.
  2. This would require a great deal of data and assets. I'm willing to reach out to some of my previous employers to see if we could make use of their APIs, but it may be wiser to plan for the worst case scenario.

@addyosmani
Copy link
Member Author

Hey folks,

It's been a few months since we last revisited TasteApp and I'd love for us to get some momentum going on it again 💃 In order to get the project off the ground a few things need agreement upon:

  • The practical application idea. I personally now like us doing something along the lines of ost.io by @paulmillr as it does capture in spirit much of what we're after. It's a good app. I'd like us to be 100% agreed on what works well and what may need to be changed there though (e.g CS->JS source) though. Paul, do you think you'll have time in the next few months to help if we go down this path (addressing further features etc)? We have contacts at GitHub that can help bump up the API rate-limits so I'm less concerned of data being a bottleneck for these apps. @sindresorhus @passy @stephenplusplus thoughts here would be very much welcome.
  • Authoring the app specification. If we agree upon the app idea, we should get this started soon. It will require going through the ost.io implementation currently available and identifying how it addresses the desired features , what is left to be done, then walking through the behaviour of how any reference applications may similar implement the app. It will need to outline expectations of documentation, unit testing and so on as well.
  • Implementors. Assuming we go for something ost.io-like, we might be able to vouch on @paulmillr, I and a few others being able to help with a Backbone implementation. This leaves us needing to come up with a plan for the Angular and Ember apps (others can come later). We had toyed around with the idea of either using BountySource to get this started, KickStarter or community contributions. I would be tempted to say we should hold off on versions with other frameworks until they have at least one reference app they can use as a guide. This helped us in TodoMVC and over time assisted with firming up the specs too.

Thoughts?

@paulmillr
Copy link

do you think you'll have time in the next few months to help if we go down this path (addressing further features etc)

yes! i’m in. all in.

@sindresorhus
Copy link
Member

Yes to all this! It has dragged on way to looooooooooooooooooo...ooong. Maybe we should do an Hangout text or video to set some highlevel AI of what needs doing and go through the ost.io app.

@paulmillr
Copy link

maybe this friday or saturday? (i'm free any time tho)

@stephenplusplus
Copy link
Member

Video.

On Wednesday, October 30, 2013, Sindre Sorhus wrote:

Yes to all this! It has dragged on way to looooooooooooooooooo...ooong.
Maybe we should do an Hangout text or video to set some highlevel AI of
what needs doing and go through the ost.io app.


Reply to this email directly or view it on GitHubhttps://github.com//issues/2#issuecomment-27443050
.

@sindresorhus
Copy link
Member

Forgot that Hangouts just got support for gifs. I'd prefer gifs.

@addyosmani @passy @addyosmani @passy @addyosmani @passy

@passy
Copy link
Member

passy commented Nov 2, 2013

Hangout tomorrow would work for me, but Addy is still abroad in some crazy
timezone isn't he?
On Nov 1, 2013 11:53 PM, "Sindre Sorhus" notifications@github.com wrote:

Forgot that Hangouts just got support for gifs. I'd prefer gifs.

@addyosmani https://github.com/addyosmani @passyhttps://github.com/passy
@addyosmani https://github.com/addyosmani @passyhttps://github.com/passy
@addyosmani https://github.com/addyosmani @passyhttps://github.com/passy


Reply to this email directly or view it on GitHubhttps://github.com//issues/2#issuecomment-27609678
.

@addyosmani
Copy link
Member Author

Don't let me be a bottleneck :) I'm currently in an airport in Tokyo. Will
be back on land tomorrow. Can do Monday / anytime next week if we need to
wait, otherwise will catch-up on notes!

On Saturday, November 2, 2013, Pascal Hartig wrote:

Hangout tomorrow would work for me, but Addy is still abroad in some crazy
timezone isn't he?
On Nov 1, 2013 11:53 PM, "Sindre Sorhus" <notifications@github.com<javascript:_e({}, 'cvml', 'notifications@github.com');>>
wrote:

Forgot that Hangouts just got support for gifs. I'd prefer gifs.

@addyosmani https://github.com/addyosmani @passy<
https://github.com/passy>
@addyosmani https://github.com/addyosmani @passy<
https://github.com/passy>
@addyosmani https://github.com/addyosmani @passy<
https://github.com/passy>


Reply to this email directly or view it on GitHub<
https://github.com/tastejs/TasteApp/issues/2#issuecomment-27609678>
.


Reply to this email directly or view it on GitHubhttps://github.com//issues/2#issuecomment-27610521
.

Addy Osmani
Phone: +44 7771 334170

@sindresorhus
Copy link
Member

Would be nice to have everyone there. Tuesday 13:37 EDT?

@paulmillr
Copy link

Yes

@passy
Copy link
Member

passy commented Nov 2, 2013

Works for me. :)

(That's 18:37 UTC if WolframAlpha didn't lie to me.)

@jeremychone
Copy link

I do not want to intrude, but if it is ok with everybody, I would love to
join as well.

I have been wanting to sample HTML5/Cloud app for a long time to share my
approach, and I have some bandwidth to work on it for the next few months.

I assume it will be over Google Hangout.

Jeremy,

On Sat, Nov 2, 2013 at 8:07 AM, Pascal Hartig notifications@github.comwrote:

Works for me. :)

(That's 18:37 UTC if WolframAlpha didn't lie to me.)


Reply to this email directly or view it on GitHubhttps://github.com//issues/2#issuecomment-27623743
.

Jeremy Chone
http://britesnow.com/
(415) 699 9912
Building Enterprise HTML5 Applications

@addyosmani
Copy link
Member Author

Works for me. Does anyone want to send out an invite? :)

@sindresorhus
Copy link
Member

Alright, sent out an invite ;)

Here's the Hangout link if anyone else would like to join:
https://plus.google.com/hangouts/_/calendar/c2luZHJlc29yaHVzQGdtYWlsLmNvbQ.eo1gh9shbnv5p8n1b58t2pfrus

@getsetbro
Copy link

If it is okay I'll jump on just to listen.

On Tue, Nov 5, 2013 at 5:41 AM, Sindre Sorhus notifications@github.comwrote:

Alright, sent out an invite ;)

Here's the Hangout link if anyone else would like to join:

https://plus.google.com/hangouts/_/calendar/c2luZHJlc29yaHVzQGdtYWlsLmNvbQ.eo1gh9shbnv5p8n1b58t2pfrus


Reply to this email directly or view it on GitHubhttps://github.com//issues/2#issuecomment-27766231
.

@sindresorhus
Copy link
Member

Sure

@sindresorhus
Copy link
Member

Thanks for a productive meeting guys.

Meeting notes: http://oksoclap.com/p/tasteapp

@addyosmani
Copy link
Member Author

👍 thanks so much for joining us. Appreciate you taking the notes, @sindresorhus!

@paulmillr
Copy link

Ost.io proposal: #4

@getsetbro
Copy link

Here is an old but good. MediaExplorer by Holly Schinsky
http://devgirl.org/files/MediaExplorer/#/
http://devgirl.org/2013/03/21/fun-with-angularjs/

On Tue, Nov 5, 2013 at 1:19 PM, Paul Miller notifications@github.com wrote:

Ost.io proposal: #4


Reply to this email directly or view it on GitHub.

@addyosmani
Copy link
Member Author

It's been a while since our last meeting to discuss the app idea we'd like to move ahead with. The choices we came down to were:

Perhaps we could meet again some time mid January to talk about this again?

@jeremychone
Copy link

Yes definitely.

Sorry all, I have been swamped and while I did some work, nothing worth
sending a formal update. However, let me use this opportunity to share the
work I have done.

First, a question for Addy, do you think we should just take the angular
app? or do something more/different. My current take is to do something a
little bit more and different.

Here are the current spec and first wireframe.

  1. Core objects and relationships: Project 1-* Task; Task - Label;
    Project 1-* Team; User - Team

  2. Privilege system: The application will show the beginning of a
    extensible priviledge system. At this point, we will just have privileges
    at the Team level, and constrain Teams to belong to one and only one
    project. When a user create a project, he will be automatically assigned to
    a default team "owner" for this project with all the privileges. Then, the
    owner can create subsequent teams with some privileges and add users to
    those teams.

  3. Routing: This application will support deep-linking/routing for the
    following screen: project, all sub-tabs of project, and task of a project,
    and team of a project. Format will be like
    #/project/[projectId]/[subTabName] for the subtabs, or
    #/project/[projectId]/task/[taskId] for a project task and similar for
    team.

  4. Table Sorting: The task table will be sortable (and should have a toggle
    show close -not shown in the wireframe below-).

  5. In place [cell] editing: One of the goal of the application is to show
    the benefit of an MVC model, and for this, the UI will allow the user to
    edit mostly anything on the screen and see the effect real time. So, all
    the table cell (beside the checkbox and ID) will be in place editable, and
    clicking on the "id" of a task will go to the task screen.

  6. Task screen as tabs: Another concept that this application will show is
    how custom the UI can be, especially in the deep-linking and screen
    management. For example, when opening a task, it will add another tab on
    the right of the "Tasks" tab with the task id (and first couple of words).
    In a later stage, task tabs will be pinable.

Here is the first wireframe screen.

[image: Inline image 2]

Feedback welcome, and looking forward to our next Hangout meeting.

Jeremy,

On Tue, Dec 31, 2013 at 12:33 PM, Addy Osmani notifications@github.comwrote:

It's been a while since our last meeting to discuss the app idea we'd like
to move ahead with. The choices we came down to were:

Perhaps we could meet again some time mid January to talk about this again?


Reply to this email directly or view it on GitHubhttps://github.com//issues/2#issuecomment-31410273
.

Jeremy Chone
http://britesnow.com/
(415) 699 9912
Building Enterprise HTML5 Applications

@paulmillr
Copy link

Let's meet this / next saturday.

@jeremychone
Copy link

Saturdays are tricky for me. I might be able to do it around 10am next sat.

On Fri, Jan 3, 2014 at 1:32 AM, Paul Miller notifications@github.comwrote:

Let's meet this / next saturday.


Reply to this email directly or view it on GitHubhttps://github.com//issues/2#issuecomment-31512739
.

Jeremy Chone
http://britesnow.com/
(415) 699 9912
Building Enterprise HTML5 Applications

@addyosmani
Copy link
Member Author

Would sometime during mon-fri this week or next work? Saturdays tend to be
a little tricky for me too.

On Monday, 6 January 2014 00:51:26, Jeremy Chone notifications@github.com
wrote:

Saturdays are tricky for me. I might be able to do it around 10am next
sat.

On Fri, Jan 3, 2014 at 1:32 AM, Paul Miller notifications@github.comwrote:

Let's meet this / next saturday.


Reply to this email directly or view it on GitHub<
https://github.com/tastejs/TasteApp/issues/2#issuecomment-31512739>
.

Jeremy Chone
http://britesnow.com/
(415) 699 9912
Building Enterprise HTML5 Applications

Reply to this email directly or view it on GitHubhttps://github.com//issues/2#issuecomment-31621116
.

@paulmillr
Copy link

absolutely, no problem

@imbhargav5
Copy link

I am thinking of building a mini Trello clone. Have the common-utils ready. Will keep you guys posted on the developments. I intend to cover these features. Currently working on a react-example.

  • Frontend Routing
  • Async api calls
  • Two-way data binding
  • Templating & partials
  • Cssnext

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

10 participants