Differences between revisions 1 and 13 (spanning 12 versions)
Revision 1 as of 2016-03-21 15:45:16
Size: 3569
Editor: AaronDelaney
Comment:
Revision 13 as of 2016-04-25 16:02:13
Size: 7149
Editor: AaronDelaney
Comment: Add more info as required
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:
= Student Application =
Line 5: Line 4:
Line 6: Line 6:
  * '''Email''': aaron.delaney29@mail.dcu.ie
  * '''IRC Nick''': devoxel
  * '''GitHub''': [[devoxel|https://github.com/devoxel/]]
  * '''Webpage''': http://devoxel.net
 * '''Background''':
  I'm a dedicated self-taught programmer now studying Computational Problem Solving and Software Development in Dublin City University.
  
  I've quite a bit of web experience behind me, my Github lists a good bit of it. To summarize: lots of python experience, lots of web experience. Also one thing that's easy to miss on my github is the wand web-app spellchecker, which is in the 'cpssd/optionals/spellcheck' directory.
Line 15: Line 7:
  Unlisted is a web-based RSS Reader, that uses Materalize.css with a node.js webserver and a bunch of backend tools mostly written in Python, that I'm currently working on as a Semester 2 project with a talanted group at DCU.   * '''Email''': aaron.delaney29@mail.dcu.ie
  * '''IRC Nick''': devoxel
  * '''IRC''':
   * '''Nick''': devoxel
Line 17: Line 12:
 * '''Project title''': Make Debsources Mobile-friendly
 * '''Project details''':
 Debsources is an important resource in the Debian ecosystem. It provides an entry point to all the debian source code with useful features and API. Unfortunatly it doesn't have support mobiles in any sense. This project will fix this issue.
   * '''Channels''': #debian, #debian-debsources, #debian-soc, #debconf

  * '''Project Mailing List''': [[https://lists.alioth.debian.org/mailman/listinfo/qa-debsources|qa-debsources]]

  * '''Twitter''': https://twitter.com/devoxel
  * '''Github''': https://github.com/devoxel/
  * '''Blog''': http://devoxel.net
 * '''Location Information''':
  * '''Timezone''': UTC+0
  * '''Country''': Ireland
  * '''Studying:''': [[https://www101.dcu.ie/prospective/deginfo.php?classname=PSSD | Computational Problem Solving and Software Development in DCU]]
  * '''University''': https://en.wikipedia.org/wiki/Dublin_City_University

  * '''Where I'm staying''':
    Nenagh, Ireland [[http://www.openstreetmap.org/node/52260539 | Open Street Map]] [[https://en.wikipedia.org/wiki/Nenagh | Wikipedia]]
  * '''Local Free Software''': None, that I'm aware of :(
 * '''Planned Events''':
  * Debconf, hopefully!
  * [[https://fosdem.org/|FOSDEM 2017]]
 * '''Developer Information''':
  * '''Hardware''' Gaming Desktop, Tiny Asus eee Laptop
   * '''Operating Systems''':
    * Desktop is Windows/Debian dual boot, use Debian for development
    * Laptop is Arch Linux atm, may change over to Debian soon.
    * Use VirtualBox for virtualization
   * Using three 1080p monitors for desktop development
   * Android Samsung A5 (relevant to project)
  * '''Editor''': vim
  * '''Internet''':
   * Campus wifi when in college (until 22nd May)
   * No IPv6 support, unblocked.
   * Details of other wifi will be provided after move.
 * '''Project Build Tools'''
  * [[https://anonscm.debian.org/cgit/qa/debsources.git|Git]]
 * '''Needed Resources'''
  * Not applicable really, can run the site locally
 * '''Main Strengths''': Python, Javascript, HTML+CSS, Coffeescript, Golang, C++
 * '''Background''':
  I'm a dedicated self-taught programmer now studying Computational Problem Solving
  and Software Development in Dublin City University.<<BR>>
  I've quite a bit of web experience behind me, my Github has code samples of most of it.
  To summarize: lots of python, js, some coffee-script. Also one thing that's easy to miss on my github is the wand web-app spell-checker, which is in the 'cpssd/optionals/spellcheck' directory.<<BR>>
  Unlisted is a web-based RSS Reader, that uses a Materalize.css frontend with a
  Node.js web-server and a bunch of back-end tools mostly written in Python,
  that I'm currently working on as a Semester 2 project with a talented group at DCU.

 * '''Exams and other commitments''': All exams end before Community Bonding ends.

 * '''Other summer plans''': Apart from chill out with my friends in my spare time, got nothing!

 * '''Why Debian?''': I love open source and Debian has been a core part of my computing for years. It also seemed like a friendly community! Go Debian!

 * '''My previous Debian contributions''': As required by this application I submitted a patch to #783461 to the qa-debsources mailing list. Apart from that I've not contributed to Debian.

 * '''Are you applying for other projects in SoC''': Nope

 * '''Project title''': Improving Accessibility and front-end of Debsources
 * '''Project details''':
 Debsources is an important resource in the Debian ecosystem. It provides an entry point to all the Debian source code with useful features and API.
 Unfortunately it doesn't have support mobile in any sense. <<BR>>
  This project will fix these issues and add useful features such as patch editing.
Line 21: Line 74:
 First thing I'll implement is a mobile-compliant redesign of Debsources. I'll try to keep this light, I don't to have to import big libraries or anything. Then I'll implement a Single Page Application version of Debsources   Debsources first needs to made mobile compliant by using a response library like Bootstrap. Specifics will be decided on with help from the mentor. <<BR>>
  The next step is then to rework how the client does rendering using a client side rendering engine - such as Angular or React.<<BR>>
  The final part of the project is improving this page by adding features such as faster load times, a mobile patch, or extra navigational tools. <<BR>>
  This is to be done by either porting the application to a native mobile application in a maintainable way (for example by using phonegaps) or by using HTML5 features.<<BR>>
    The core issues behind the HTML5 version is things like file system access and offline caching are awkward -- but doable. Native application frameworks lighten this burden however by providing access to direct integration to mobile features. However making this port maintainable brings it's own issues.
Line 23: Line 80:
  Debsources is a very useful resource to all Debian developers and this project makes it more accessable than ever.
 * '''Deliverables''':
  * A redesigned Debsources webpage that renders well on mobile, with tests integrated into the Debsources test suite and good documentation
  * Research and figure out (with help from the mentors) whether to take Debsources to a native webapp or to implement a single page application
  * If a native phone application is decided on, implement a native applciation with features decided by midterm. Would feature a patch editor taking advantage of mobile APIs.
  * If a hybrid-SPA is decided on, implement a single page web application version of Debsources using client side rendering techniques like those seen in Angular.js or React
  * Regardless of which aspect of the project is decided on, the code should be well tested and maintainable.
 * '''Project schedule''':
  * '''Before 23rd May''': Have a good idea of where to take the project in regards to the SPA or native application.
  * '''Between 23rd May -> 14th June''': Implement the mobile compliant version of the site, including tests and documentation
  * '''Before Mid Term Evaluation''': Have a clear goal for either the application or single page application.
  * '''27th June-> 8th August''': Implement the native application or single page application.
 * '''Exams and other commitments''': Nope, but I'll let you know early if anything comes up.
 * '''Other summer plans''': Apart from chill out with my friends in my spare time, got nothing!
 * '''Why Debian?''': I love open source and Debian has been a core part of my computing for years. It also seemed like a friendly community based on the wiki.
 * '''My previous Debian contributions''': As required by this applciation I submitted a patch to #783461 to the qa-debsources mailing list. Apart from that I've not contributed to Debian.
 * '''Are you applying for other projects in SoC''': Doesn't look like it at this point no :)
  Debsources is a very useful resource to all Debian developers and this project makes it more accessible than ever: by improving Debsources usability from phones.
 * '''Deliverables''':
  * A redesigned Debsources webpage that renders well on mobile, with tests integrated into the Debsources test suite and good documentation.
  * Research and figure out (with help from the mentors) whether to take Debsources to a native webapp or to figure out how to implement the features inside the mobile browser.
  * Implement a native application, or in an SPA, that improves Debsources accessibility. <<BR>>
    This should include documentation and a test suite.<<BR>>
    Desirable features (one mandatory, rest optional) for either the native app or SPA:
   * Faster load times
   * A mobile patch editor
   * Offline support
   * Extra navigational tools for mobiles
 * '''Project schedule''':
  * '''Community Bonding Period (before 23rd May)''':
   * Have a good idea of where to take the project in regards the native application or hybrid single page application.
   * Get PGP key sorted
  * '''23rd May -> 1st June''': Prototype the mobile compliant version of the site to include a responsive layout. This does not include the client side rendering aspect of the project.
  * '''1st June -> 6th June''': Polish-up this responsive site including improving and fixing tests and documentation. Research the next aspect of the project: the client side rendering.
  * '''6th June -> 20th June''': Work on learning the client-side rendering framework while integrating with the API. Prototype and get early feedback on this new front-end.
  * '''20th June - 27th June''': Midterm evaluations!
  * '''28th June -> 11th July''': If working on the native application: start working on that integration and mobile specific features.. If not, add framework for the mobile HTML5 features
  * '''12th July -> 31st July''': Work on integrating these new features to Debsources.
  * '''1st August -> 15th August''': Finish up tests, documentation and finish up.

* '''Risks'''
 * Computer Failure
  * I leave no work on my computer, if I stop coding for a period I will usually commit an XXX commit that will be squashed later
  * If something happens to my desktop I can code on my laptop, or use a family members
  * Continuation will be quick, and mentors will be notified.
 * Internet Failure
  * Can tether
 * Electricity failure unlikely
  • Name: Aaron Delaney

  • Contact:

  • Location Information:

  • Planned Events:

  • Developer Information:

    • Hardware Gaming Desktop, Tiny Asus eee Laptop

      • Operating Systems:

        • Desktop is Windows/Debian dual boot, use Debian for development
        • Laptop is Arch Linux atm, may change over to Debian soon.
        • Use VirtualBox for virtualization

      • Using three 1080p monitors for desktop development
      • Android Samsung A5 (relevant to project)
    • Editor: vim

    • Internet:

      • Campus wifi when in college (until 22nd May)
      • No IPv6 support, unblocked.
      • Details of other wifi will be provided after move.
  • Project Build Tools

  • Needed Resources

    • Not applicable really, can run the site locally
  • Main Strengths: Python, Javascript, HTML+CSS, Coffeescript, Golang, C++

  • Background:

    • I'm a dedicated self-taught programmer now studying Computational Problem Solving

      and Software Development in Dublin City University.
      I've quite a bit of web experience behind me, my Github has code samples of most of it. To summarize: lots of python, js, some coffee-script. Also one thing that's easy to miss on my github is the wand web-app spell-checker, which is in the 'cpssd/optionals/spellcheck' directory.
      Unlisted is a web-based RSS Reader, that uses a Materalize.css frontend with a Node.js web-server and a bunch of back-end tools mostly written in Python, that I'm currently working on as a Semester 2 project with a talented group at DCU.

  • Exams and other commitments: All exams end before Community Bonding ends.

  • Other summer plans: Apart from chill out with my friends in my spare time, got nothing!

  • Why Debian?: I love open source and Debian has been a core part of my computing for years. It also seemed like a friendly community! Go Debian!

  • My previous Debian contributions: As required by this application I submitted a patch to #783461 to the qa-debsources mailing list. Apart from that I've not contributed to Debian.

  • Are you applying for other projects in SoC: Nope

  • Project title: Improving Accessibility and front-end of Debsources

  • Project details: Debsources is an important resource in the Debian ecosystem. It provides an entry point to all the Debian source code with useful features and API. Unfortunately it doesn't have support mobile in any sense.

    • This project will fix these issues and add useful features such as patch editing.
  • Synopsis:

    • Debsources first needs to made mobile compliant by using a response library like Bootstrap. Specifics will be decided on with help from the mentor.
      The next step is then to rework how the client does rendering using a client side rendering engine - such as Angular or React.
      The final part of the project is improving this page by adding features such as faster load times, a mobile patch, or extra navigational tools.
      This is to be done by either porting the application to a native mobile application in a maintainable way (for example by using phonegaps) or by using HTML5 features.

      • The core issues behind the HTML5 version is things like file system access and offline caching are awkward -- but doable. Native application frameworks lighten this burden however by providing access to direct integration to mobile features. However making this port maintainable brings it's own issues.
  • Benefits to Debian

    • Debsources is a very useful resource to all Debian developers and this project makes it more accessible than ever: by improving Debsources usability from phones.
  • Deliverables:

    • A redesigned Debsources webpage that renders well on mobile, with tests integrated into the Debsources test suite and good documentation.
    • Research and figure out (with help from the mentors) whether to take Debsources to a native webapp or to figure out how to implement the features inside the mobile browser.
    • Implement a native application, or in an SPA, that improves Debsources accessibility.

      • This should include documentation and a test suite.
        Desirable features (one mandatory, rest optional) for either the native app or SPA:

      • Faster load times
      • A mobile patch editor
      • Offline support
      • Extra navigational tools for mobiles
  • Project schedule:

    • Community Bonding Period (before 23rd May):

      • Have a good idea of where to take the project in regards the native application or hybrid single page application.
      • Get PGP key sorted
    • 23rd May -> 1st June: Prototype the mobile compliant version of the site to include a responsive layout. This does not include the client side rendering aspect of the project.

    • 1st June -> 6th June: Polish-up this responsive site including improving and fixing tests and documentation. Research the next aspect of the project: the client side rendering.

    • 6th June -> 20th June: Work on learning the client-side rendering framework while integrating with the API. Prototype and get early feedback on this new front-end.

    • 20th June - 27th June: Midterm evaluations!

    • 28th June -> 11th July: If working on the native application: start working on that integration and mobile specific features.. If not, add framework for the mobile HTML5 features

    • 12th July -> 31st July: Work on integrating these new features to Debsources.

    • 1st August -> 15th August: Finish up tests, documentation and finish up.

* Risks

  • Computer Failure
    • I leave no work on my computer, if I stop coding for a period I will usually commit an XXX commit that will be squashed later
    • If something happens to my desktop I can code on my laptop, or use a family members
    • Continuation will be quick, and mentors will be notified.
  • Internet Failure
    • Can tether
  • Electricity failure unlikely